/* リキッドレイアウト対応 */

:root {
	--inner-value: 1100;
	--inner: 1100px;
	--padding-pc: 25px;
	--padding-sp: 20px;
}

:root {
	--rem: 1rem / 16;
	--em: 1em / 16;
	--vw: 1440 * 100vw;
	--inner-percent: var(--inner-value) * 100%;
}

:root {
	--font-noto-sans: "Noto Sans JP", sans-serif;
	--font-sawarabi: "Sawarabi Gothic", sans-serif;
	--font-poppins: "Poppins", sans-serif;
	--fw-extraLight: 200;
	--fw-light: 300;
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-semibold: 600;
	--fw-bold: 700;
	--fw-extrabold: 800;
	--fw-black: 900;
	--leading-trim: calc((1em - 1lh) / 2);
}

:root {
	--color-white: #fff;
	--color-black: #000000;
	--color-green: #4c875e;
	--color-red: #d43333;
	--color-blue: #2266a5;
	--color-gray: #949595;
	--color-gray-e3e: #e3e3e3;
	--color-gray-b3b: #b3b3b3;
	--color-gray-6b6: #6b6b6b;
	--color-gray-6e6: #6e6e6e;
	--color-gray-5b5: #5b5b5b;
	--color-gray-f8f: #f8f8f8;
	--color-gray-7e7: #7e7e7e;
	--color-gray-cbc: #CBCBCB;
	--color-gray-d9d: #D9D9D9;
}

:root {
	--z-index-loader: 1000;
	--z-index-hamburger: 120;
	--z-index-drawer: 110;
	--z-index-cta: 100;
	--z-index-header: 99;
}

:root {
	--header-height: calc(120 * var(--rem));
	--scrollbar-width: 0;
}

@property --scrollbar {
	syntax: "<length>";
	initial-value: 0;
	inherits: true;
}

:root:has(:modal[open],
.is-scroll-lock,
.loader) {
	overflow: hidden;
	scrollbar-gutter: stable;
}

body {
	font-family: var(--font-noto-sans);
	color: var(--color-black);
	font-weight: var(--fw-medium);
	line-height: 1.5;
}

body.is-hidden {
	overflow: hidden;
}

html {
	font-size: 16px;
}

.inner {
	max-width: calc(var(--inner) + var(--padding-pc) * 2);
	margin-inline: auto;
	padding-inline: var(--padding-pc);
	width: 100%;
}

.inner.inner--lower {
	max-width: calc(var(--inner) + var(--padding-pc) * 2 - 0.75rem);
}

.layout-about-intro {
	margin-top: 12.1875rem;
}

.layout-bg {
	margin-top: 10.3125rem;
}

.layout-care {
	margin-top: 9rem;
}

.layout-case {
	margin-top: 9.5rem;
}

.layout-column {
	margin-top: 6.75rem;
}

.layout-commitment {
	margin-top: 16.125rem;
}

.layout-common {
	margin-top: 9.375rem;
}

.layout-construction-intro {
	margin-top: 6.25rem;
}

.layout-consultation {
	margin-top: 12.8125rem;
}

.layout-drawer {
	position: fixed;
	top: 0;
	right: 0;
	z-index: var(--z-index-drawer);
}

.layout-faq {
	margin-top: 5.75rem;
}

.layout-flow {
	margin-top: 8rem;
}

.layout-free-design {
	margin-top: 12.125rem;
}

.layout-guid-intro {
	margin-top: 9.5rem;
}

.layout-header {
	position: absolute;
	top: 3.1875rem;
	left: 0;
	right: 0;
	z-index: var(--z-index-header);
}

.layout-hearing {
	margin-top: 9.6875rem;
}

.layout-message {
	margin-top: 9.5rem;
}

.layout-name {
	margin-top: 5.125rem;
}

.layout-policy {
	margin-top: 10rem;
}

.layout-proceed {
	margin-top: 12rem;
}

.layout-profile {
	margin-top: 9.9375rem;
}

.layout-redesign {
	margin-top: -11.25rem;
}

.layout-renovation-case {
	margin-top: 8.5625rem;
}

.layout-renovation-commitment {
	margin-top: 16.5625rem;
}

.layout-renovation-faq {
	margin-top: 11.25rem;
}

.layout-renovation-hearing {
	margin-top: 9.75rem;
}

.layout-renovation-intro {
	margin-top: 6.25rem;
}

.layout-renovation-policy {
	margin-top: 10.5625rem;
}

.layout-renovation-proceed {
	margin-top: 15.4375rem;
}

.layout-renovation-voice {
	margin-top: 12.75rem;
}

.layout-service {
	margin-top: 12.5rem;
}

.layout-side-nav {
	position: fixed;
	top: 3.4375rem;
	right: 0;
	z-index: var(--z-index-cta);
}

.layout-start {
	margin-top: 12.6875rem;
}

.layout-step02 {
	margin-top: 11.625rem;
}

.layout-step03 {
	margin-top: 11.125rem;
}

.layout-step04 {
	margin-top: 10.625rem;
}

.layout-support-intro {
	margin-top: 12.25rem;
}

.layout-top-access {
	margin-top: 15.25rem;
}

.layout-top-case {
	margin-top: 17.25rem;
}

.layout-top-contact {
	margin-top: 15.625rem;
}

.layout-top-intro {
	margin-top: 10rem;
}

.layout-top-news {
	margin-top: 14.375rem;
}

.layout-top-pickup {
	margin-top: 8.125rem;
}

.layout-top-service {
	margin-top: 7.625rem;
}

.layout-top-voice {
	margin-top: 13rem;
}

.layout-voice {
	margin-top: 10rem;
}

.access {
	overflow-x: clip;
}

.access__container {
	background-color: var(--color-white);
	border-radius: 1.25rem;
	padding-block: 6.75rem 8.0625rem;
	position: relative;
}

.access__container::before {
	content: "";
	display: block;
	width: min(26.875vw, 24.1875rem);
	height: auto;
	aspect-ratio: 387/234;
	background-image: url("../images/company/access_deco01.png");
}

.access__container::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -1.3125rem;
	right: -2.5rem;
}

.access__contents {
	padding-inline: var(--padding-pc);
	max-width: 61.25rem;
	margin-inline: auto;
}

.access__list-wrap {
	margin-top: 3.375rem;
}

.archive-cats {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	row-gap: 0.625rem;
}

.archive-cats__row {
	padding-inline: min(4.4444444444vw, 4rem);
	display: flex;
	width: 100%;
	flex-wrap: nowrap;
	position: relative;
}

.archive-cats__row::after {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	background-color: var(--color-blue);
	bottom: 0px;
	left: 0;
}

.archive-cats__row + .archive-cats__row {
	margin-top: 1rem;
}

.archive-cats__item {
	position: relative;
	z-index: 1;
	flex: 0 0 auto;
}

.archive-cats__item a {
	display: flex;
	height: 4.5625rem;
	width: min(13.5416666667vw, 12.1875rem);
	align-items: center;
	justify-content: center;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	border-radius: 0.75rem 0.75rem 0 0;
	transition: color 0.3s, border 0.3s;
}

.archive-cats__item.is-active a {
	color: var(--color-blue);
	border: 2px solid currentColor;
	border-bottom: 2px solid var(--color-white);
	background-color: var(--color-white);
}

.archive-cats__item a:hover {
	color: var(--color-blue);
}

.archive-cats.archive-cats--topics .archive-cats__row::after {
	background-color: var(--color-red);
}

.archive-cats.archive-cats--topics .archive-cats__item a:hover {
	color: var(--color-red);
}

.archive-cats.archive-cats--topics .archive-cats__item.is-active a {
	color: var(--color-red);
	border-bottom: 2px solid var(--color-white);
}

.archives-item__img {
	width: 100%;
	border-radius: 1.25rem;
	overflow: hidden;
}

.archives-item__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 334/262;
	object-fit: cover;
	transition: scale 0.3s;
}

.archives-item__meta {
	margin-top: 1.625rem;
	display: flex;
	gap: 0.9375rem;
	align-items: center;
}

.archives-item__cat {
	padding-inline: 0.375rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--color-white);
	border-radius: 0.1875rem;
	height: -moz-fit-content;
	height: fit-content;
}

.archives-item__address,
.archives-item__title {
	font-weight: var(--fw-medium);
	font-size: 0.9375rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.archives-item__title {
	margin-top: 0.8125rem;
	font-size: 1rem;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.archives-item__date {
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0;
}

.archives-item--topics .archives-item__img {
	border-radius: 0.75rem;
}

.archives-item--topics .archives-item__img img {
	aspect-ratio: 334/262;
}

.archives-item--topics .archives-item__cat {
	background-color: var(--color-red);
}

.archives-item--topics .archives-item__meta {
	margin-top: 1.4375rem;
}

.archives-item--topics .archives-item__title {
	margin-top: 0.6875rem;
}

.archives-item--voice .archives-item__img {
	border-radius: 0;
	clip-path: polygon(0 0, 100% 10%, 100% 100%, 0% 100%);
}

.archives-item--voice:nth-child(2n) .archives-item__img,
.archives-item--voice:nth-child(2n+3) .archives-item__img {
	clip-path: polygon(0 10%, 100% 0, 100% 100%, 0% 100%);
}

.archives-item--voice:nth-child(3n) .archives-item__img,
.archives-item--voice:nth-child(3n+1) .archives-item__img {
	clip-path: polygon(0 0, 100% 10%, 100% 100%, 0% 100%);
}

.archives-item--voice .archives-item__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 334/310;
}

.archives-item--voice .archives-item__meta {
	margin-top: 1.25rem;
}

.archives-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(18.75rem, 1fr));
	gap: min(3.3333333333vw, 3rem);
}

.archives-list.archives-list--topics {
	-moz-column-gap: min(3.4722222222vw, 3.125rem);
	column-gap: min(3.4722222222vw, 3.125rem);
	row-gap: 3.75rem;
}

.archives-list.archives-list--voice {
	-moz-column-gap: min(3.4722222222vw, 3.125rem);
	column-gap: min(3.4722222222vw, 3.125rem);
	row-gap: 3.875rem;
}

.archives {
	padding-bottom: 9.375rem;
}

.archives__list {
	margin-top: 6.875rem;
}

.archives__pager {
	margin-top: 5rem;
}

.article-slider__img {
	overflow: hidden;
	border-radius: 1.375rem;
}

.article-slider__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 880/530;
	object-fit: cover;
}

.article-slider__pagination {
	display: flex;
	justify-content: center;
	gap: 0.875rem;
	margin-top: 1.4375rem;
}

.article-slider__pagination .swiper-pagination-bullet {
	margin: 0 !important;
	width: 10px;
	height: 10px;
	background-color: #8C8C8C;
	opacity: 0.5;
}

.article-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1;
}

.bg {
	padding-top: 9.875rem;
	padding-bottom: 14.5rem;
	background-image: url("../images/company/bg_common.png");
}

.bg {
	background-size: 100% 100%;
	background-position: right bottom;
	background-repeat: no-repeat;
}

.button {
	display: inline-block;
	width: 100%;
	max-width: 22rem;
	padding-block: 1.25rem;
	padding-inline: 2.25rem 3.75rem;
	background-color: var(--color-red);
	font-family: var(--font-sawarabi);
	font-size: 1.3125rem;
	line-height: 1.9047619048;
	letter-spacing: -0.05em;
	color: var(--color-white);
	font-weight: var(--fw-regular);
	border-radius: 0.6875rem;
	position: relative;
	text-align: center;
	border: 0.125rem solid transparent;
	transition: color 0.3s, background-color 0.3s, border 0.3s;
}

.button::after {
	content: "";
	position: absolute;
	width: 2.0625rem;
	height: auto;
	display: block;
	aspect-ratio: 1;
	top: 50%;
	right: 1.625rem;
	transform: translateY(-50%);
	background-image: url("../images/common/arrow01.png");
}

.button::after {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	filter: invert(100%);
	transition: filter 0.3s;
}

.button.button--md {
	max-width: 24.375rem;
}

.button.button--mail {
	background-color: var(--color-blue);
	max-width: 100%;
	display: flex;
	font-size: 1.5625rem;
	font-weight: var(--fw-bold);
	line-height: 1.6;
	letter-spacing: -0.04em;
	gap: 1.4375rem;
	align-items: center;
	height: 9.375rem;
	padding-inline: min(4.0277777778vw, 3.625rem) min(4.5833333333vw, 4.125rem);
}

.button.button--mail::before {
	content: "";
	width: 3.75rem;
	height: 3.375rem;
	flex-shrink: 0;
	background-image: url("../images/common/icon-mail.png");
}

.button.button--mail::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.button.button--mail::after {
	position: static;
	margin-left: auto;
	transform: none;
}

.button.button--line {
	background-color: var(--color-green);
	max-width: 100%;
	display: flex;
	font-size: 1.5625rem;
	font-weight: var(--fw-bold);
	line-height: 1.6;
	letter-spacing: -0.04em;
	gap: 1.4375rem;
	align-items: center;
	height: 9.375rem;
	padding-inline: min(4.5833333333vw, 4.125rem) min(2.7777777778vw, 2.5rem);
}

.button.button--line::before {
	content: "";
	width: 3.75rem;
	height: 3.375rem;
	flex-shrink: 0;
	background-image: url("../images/common/icon-buble.png");
}

.button.button--line::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.button.button--line::after {
	position: static;
	margin-left: auto;
	transform: none;
}

.care {
	padding-top: 18.375rem;
	background-image: url("../images/about/care_bg.png");
}

.care {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.care__head {
	margin-left: 6.875rem;
}

.care__text {
	margin-top: 1rem;
}

.cere__content {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	-moz-column-gap: min(2.7777777778vw, 2.5rem);
	column-gap: min(2.7777777778vw, 2.5rem);
	row-gap: 2.375rem;
	margin-top: 3.625rem;
}

.care__content-item {
	width: calc((100% - min(2.7777777778vw, 2.5rem) * 2) / 3);
}

.case-slider__slide {
	width: min(28.0555555556vw, 25.25rem);
	height: auto;
	aspect-ratio: 404/564;
	border-radius: 1.25rem;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-inline: min(0.8333333333vw, 0.75rem);
}

.case-slider__link {
	display: flex;
	height: 100%;
	padding: min(3.6111111111vw, 3.25rem) min(3.0555555556vw, 2.75rem);
	flex-direction: column;
	justify-content: end;
	position: relative;
	z-index: 1;
}

.case-slider__link::before {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(180deg, transparent 50%, var(--color-black) 100%);
	z-index: -1;
	opacity: 0.7;
	transition: opacity 0.3s;
}

.case-slider__title {
	font-size: 1.5625rem;
	font-weight: var(--fw-bold);
	line-height: 1.16;
	letter-spacing: -0.05em;
	color: var(--color-white);
}

.case-slider__text {
	color: var(--color-white);
	font-weight: var(--fw-regular);
	font-size: 0.9375rem;
	line-height: 1.9333333333;
	letter-spacing: -0.05em;
	margin-top: 0.75rem;
}

.case-slider__pagination.inner {
	margin-top: 6.5rem;
	max-width: 60vw;
	margin-left: 0;
}

.case-slider__prev,
.case-slider__next {
	display: none;
	width: 1.5625rem;
	height: auto;
	aspect-ratio: 25/72;
	background-image: url("../images/common/arrow03.png");
}

.case-slider__prev,
.case-slider__next {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: calc(50% - 9.375rem);
	z-index: 1;
	transform: translate(0, -100%);
	filter: grayscale(1) brightness(0) invert(1) contrast(1.2) drop-shadow(0 0 0.5rem var(--color-black));
}

.case-slider__prev {
	scale: -1 1;
}

.case-slider__next {
	left: auto;
	right: calc(50% - 9.375rem);
}

.case {
	padding-bottom: 10rem;
	background-image: url("../images/new-construction/case_bg.png");
}

.case {
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.case__title {
	margin-left: 6.875rem;
}

.case__text {
	margin-top: 0.625rem;
	margin-left: 6.875rem;
}

.case__slider {
	margin-top: 4.875rem;
	margin-inline: calc(50% - 50vw);
}

.case__link {
	position: relative;
	z-index: 1;
	margin-top: -3.25rem;
	text-align: right;
}

.column {
	padding-top: 15.9375rem;
	padding-bottom: 7.4375rem;
	overflow-x: clip;
	background-image: url("../images/support/column_bg.png");
}

.column {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.column__container {
	background-color: var(--color-white);
	border-radius: 1.25rem;
	padding-top: 8.75rem;
	padding-bottom: 6.6875rem;
	padding-inline: min(4.3055555556vw, 3.875rem);
	position: relative;
}

.column__container::before {
	content: "";
	display: block;
	width: 19rem;
	height: auto;
	aspect-ratio: 304/274;
	background-image: url("../images/support/column_deco01.png");
}

.column__container::before {
	background-size: contain;
	background-position: center top;
	background-repeat: no-repeat;
	position: absolute;
	top: -4.5625rem;
	right: calc(50% - min(48vw, 38.75rem));
}

.column__content {
	padding-inline: 2.25rem;
	margin-top: 3rem;
	display: flex;
	flex-direction: column;
	gap: 1.125rem;
}

.column__text,
.column__item {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.column__item {
	display: flex;
	gap: 1.125rem;
	align-items: center;
}

.column__item::before {
	content: "";
	width: 0.75rem;
	height: 0.75rem;
	background-color: var(--color-red);
	border-radius: 100vh;
	flex-shrink: 0;
}

.column__img {
	position: absolute;
}

.column__img img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.column__img.--01 {
	width: min(30.4861111111vw, 27.4375rem);
	top: 14.8125rem;
	right: calc(50% - min(50vw, 39.875rem));
}

.column__img.--02 {
	width: min(22.4305555556vw, 20.1875rem);
	top: 29.0625rem;
	right: calc(50% - min(38vw, 29.625rem));
}

.commitment-item {
	background-color: var(--color-gray-f8f);
	padding-block: 3.375rem 4.75rem;
	border-radius: 1.25rem;
}

.commitment-item__inner {
	padding-inline: 4.375rem;
}

.commitment-item__title {
	display: flex;
	gap: 1.25rem;
	align-items: center;
	font-size: 1.875rem;
	font-weight: var(--fw-bold);
	line-height: 1.7333333333;
	letter-spacing: -0.05em;
}

.commitment-item__title-num {
	display: flex;
	width: 4.9375rem;
	height: 4.9375rem;
	background-color: var(--color-red);
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: var(--color-white);
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 2rem;
	letter-spacing: -0.05em;
	line-height: 1;
	border-radius: 100vh;
	flex-shrink: 0;
}

.commitment-item__title-num::before {
	content: "Point";
	font-size: 1.125rem;
}

.commitment-item:nth-child(2) .commitment-item__title-num {
	background-color: var(--color-blue);
}

.commitment-item:nth-child(3) .commitment-item__title-num {
	background-color: var(--color-green);
}

.commitment-item__text {
	margin-top: 0.5rem;
}

.commitment-item__small {
	font-size: max(10px, 0.875rem);
	margin-top: 1.25rem;
	display: inline-block;
	color: var(--color-gray-7e7);
}

.commitment-item__link {
	margin-top: 4rem;
	text-align: center;
}

.commitment-item ul {
	margin-top: 0.875rem;
	padding-left: 1.125rem;
}

.commitment-item li {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8em;
	letter-spacing: -0.04em;
	display: flex;
	gap: 0.8125rem;
}

.commitment-item li::before {
	content: "";
	flex-shrink: 0;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 100vh;
	background-color: var(--color-red);
	margin-top: 0.4lh;
}

.commitment-item.commitment-item--renovation {
	padding-bottom: 3.75rem;
}

.commitment__title {
	margin-left: 6.875rem;
}

.commitment__content {
	margin-top: 3.3125rem;
}

.commitment__content-item + .commitment__content-item {
	margin-top: 2.9375rem;
}

.commitment__content-item {
	position: relative;
}

.commitment__content-item::before {
	content: "";
	height: auto;
	display: block;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.commitment__content-item:nth-child(1)::before {
	width: 5.8125rem;
	aspect-ratio: 93/142;
	background-image: url("../images/new-construction/commitment_deco01.png");
}

.commitment__content-item:nth-child(1)::before {
	top: -3.125rem;
	left: calc(50% - min(48vw, 37rem));
}

.commitment__content-item:nth-child(2)::before {
	width: 5.3125rem;
	aspect-ratio: 85/126;
	background-image: url("../images/new-construction/commitment_deco02.png");
}

.commitment__content-item:nth-child(2)::before {
	top: 3.6875rem;
	right: calc(50% - min(48vw, 36.4375rem));
}

.commitment__content-item:nth-child(3)::before {
	width: 8.6875rem;
	aspect-ratio: 139/157;
	background-image: url("../images/new-construction/commitment_deco03.png");
}

.commitment__content-item:nth-child(3)::before {
	bottom: -3.8125rem;
	left: calc(50% - min(48vw, 39.3125rem));
}

.commitment--renovation .commitment__content-item:nth-child(1)::before {
	width: 5.3125rem;
	aspect-ratio: 85/126;
	background-image: url("../images/new-construction/commitment_deco02.png");
}

.commitment--renovation .commitment__content-item:nth-child(1)::before {
	left: auto;
	top: -2.5rem;
	right: calc(50% - min(48vw, 32.4375rem));
}

.commitment--renovation .commitment__content-item:nth-child(2)::before {
	width: 5.8125rem;
	aspect-ratio: 93/142;
	background-image: url("../images/new-construction/commitment_deco01.png");
}

.commitment--renovation .commitment__content-item:nth-child(2)::before {
	top: 12.5rem;
	left: calc(50% - min(48vw, 38rem));
}

.commitment--renovation .commitment__content-item:nth-child(3)::before {
	top: 10.625rem;
	right: calc(50% - min(48vw, 36.75rem));
	left: auto;
}

.common {
	padding-top: 9.375rem;
	padding-bottom: 7.3125rem;
	background-image: url("../images/common/bg.png");
}

.common {
	background-size: 100% 120%;
	background-position: center;
	background-repeat: no-repeat;
}

.common__container {
	background-color: var(--color-white);
	padding-top: 5.5rem;
	padding-bottom: 6.875rem;
	border-radius: 1.875rem;
}

.common__contact,
.common__voice,
.common__works,
.common__topics {
	max-width: 58.125rem;
	padding-inline: var(--padding-pc);
	margin-inline: auto;
}

.common__contact {
	max-width: 58.4375rem;
}

.common__link {
	margin-top: 5rem;
	text-align: center;
}

.common__slider-wrap {
	margin-top: 5.625rem;
}

.common__slider-title {
	text-align: center;
	font-weight: var(--fw-bold);
	font-size: 2.5rem;
	line-height: 1.4;
	letter-spacing: -0.04em;
}

.common__slider {
	margin-top: 3.5rem;
}

.construction-intro {
	overflow-x: clip;
	background-image: url("../images/new-construction/intro_bg.png");
}

.construction-intro {
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding-bottom: 13.5625rem;
}

.construction-intro__contents {
	margin-top: 6.75rem;
	display: grid;
	grid-template-columns: 1fr;
}

.construction-intro__bubble {
	font-weight: var(--fw-bold);
	color: var(--color-white);
	font-size: clamp(1.75rem, 2.5vw, 2.25rem);
	line-height: 1.3888888889;
	letter-spacing: -0.05em;
	text-align: center;
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	width: -moz-fit-content;
	width: fit-content;
	position: relative;
}

.construction-intro__bubble::before {
	content: "";
	position: absolute;
	display: block;
	height: auto;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
}

.construction-intro__bubble:nth-child(1) {
	padding-top: min(2.9861111111vw, 2.6875rem);
	padding-bottom: min(5.9722222222vw, 5.375rem);
	padding-left: min(6.1111111111vw, 5.5rem);
	padding-right: min(6.8055555556vw, 6.125rem);
	background-image: url("../images/new-construction/intro_bubble01.png");
}

.construction-intro__bubble:nth-child(1)::before {
	width: clamp(11.25rem, 15.9722222222vw, 14.375rem);
	aspect-ratio: 234/240;
	background-image: url("../images/new-construction/intro_bubble-deco01.png");
}

.construction-intro__bubble:nth-child(1)::before {
	bottom: -6rem;
	right: 1.625rem;
}

.construction-intro__bubble:nth-child(2) {
	margin-top: -2.3125rem;
	padding-top: min(3.4027777778vw, 3.0625rem);
	padding-bottom: min(6.0416666667vw, 5.4375rem);
	padding-left: min(3.75vw, 3.375rem);
	padding-right: min(3.8194444444vw, 3.4375rem);
	justify-self: right;
	background-image: url("../images/new-construction/intro_bubble02.png");
}

.construction-intro__bubble:nth-child(2)::before {
	width: clamp(8.125rem, 10.4166666667vw, 9.375rem);
	aspect-ratio: 150/134;
	background-image: url("../images/new-construction/intro_bubble-deco02.png");
}

.construction-intro__bubble:nth-child(2)::before {
	bottom: -2.5rem;
	right: -3.375rem;
}

.construction-intro__bubble:nth-child(3) {
	margin-top: -3.1875rem;
	margin-left: 3.4375rem;
	padding-top: min(2.7777777778vw, 2.5rem);
	padding-bottom: min(6.1805555556vw, 5.5625rem);
	padding-left: min(5.4861111111vw, 4.9375rem);
	padding-right: min(7.1527777778vw, 6.4375rem);
	background-image: url("../images/new-construction/intro_bubble03.png");
}

.construction-intro__bubble:nth-child(3)::before {
	width: clamp(11.25rem, 15.9722222222vw, 14.375rem);
	aspect-ratio: 230/233;
	background-image: url("../images/new-construction/intro_bubble-deco03.png");
}

.construction-intro__bubble:nth-child(3)::before {
	top: 3.5625rem;
	left: max(-8.375rem, -9.3055555556vw);
}

.construction-intro__text {
	margin-top: 5.0625rem;
	font-weight: var(--fw-bold);
	font-size: 2.125rem;
	line-height: 2.0588235294;
	letter-spacing: -0.05em;
	text-shadow: 0 0 0.375rem var(--color-white), 0 0 0.75rem var(--color-white), 0 0 1.125rem var(--color-white), 0 0 1.5rem var(--color-white);
}

.construction-intro__text span {
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	border-bottom: 1px solid var(--color-red);
}

.construction-intro.construction-intro--renovation {
	padding-bottom: 10.125rem;
	background-image: url("../images/renovation/intro_bg.png");
}

.construction-intro.construction-intro--renovation .construction-intro__contents {
	margin-top: 6.375rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(1) {
	margin-right: 2.625rem;
	margin-left: auto;
	padding-top: min(2.7777777778vw, 2.5rem);
	padding-bottom: min(5.5555555556vw, 5rem);
	padding-left: min(4.6527777778vw, 4.1875rem);
	padding-right: min(4.6527777778vw, 4.1875rem);
	background-image: url("../images/renovation/intro_bubble01.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(1)::before {
	width: clamp(11.25rem, 19.0277777778vw, 17.125rem);
	aspect-ratio: 274/247;
	background-image: url("../images/renovation/intro_bubble-deco01.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(1)::before {
	bottom: -12.25rem;
	right: 1.5rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(2) {
	margin-top: 2.5rem;
	padding-top: min(2.9861111111vw, 2.6875rem);
	padding-bottom: min(5.9027777778vw, 5.3125rem);
	padding-left: min(3.75vw, 3.375rem);
	padding-right: min(4.6527777778vw, 4.1875rem);
	justify-self: left;
	margin-left: max(-5.4375rem, 50% - 48vw);
	background-image: url("../images/renovation/intro_bubble02.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(2)::before {
	width: clamp(8.125rem, 17.9166666667vw, 16.125rem);
	aspect-ratio: 258/237;
	background-image: url("../images/renovation/intro_bubble-deco02.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(2)::before {
	bottom: -11.875rem;
	left: 10.6875rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(3) {
	margin-top: 2.1875rem;
	margin-left: auto;
	margin-right: 43px;
	padding-top: min(2.7777777778vw, 2.5rem);
	padding-bottom: min(6.1805555556vw, 5.5625rem);
	padding-left: min(4.6527777778vw, 4.1875rem);
	padding-right: min(7.1527777778vw, 6.4375rem);
	background-image: url("../images/renovation/intro_bubble03.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(3)::before {
	width: clamp(11.25rem, 15.6944444444vw, 14.125rem);
	aspect-ratio: 226/250;
	background-image: url("../images/renovation/intro_bubble-deco03.png");
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(3)::before {
	top: 5.625rem;
	left: auto;
	right: max(-7.375rem, -8.1944444444vw);
}

.construction-intro.construction-intro--renovation .construction-intro__text {
	margin-top: 3.125rem;
}

.construction-intro.construction-intro--renovation .construction-intro__text span {
	display: inline;
}

.consultation-item {
	background-color: var(--color-gray-f8f);
	padding-block: 3.375rem;
	border-radius: 1.25rem;
}

.consultation-item__inner {
	padding-inline: min(3.2638888889vw, 2.9375rem);
}

.consultation-item__title {
	display: flex;
	font-weight: var(--fw-bold);
	font-size: 1.875rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	align-items: center;
	gap: 0.9375rem;
	white-space: nowrap;
}

.consultation-item__title span {
	display: flex;
	width: 4.9375rem;
	height: 4.9375rem;
	border-radius: 100vh;
	background-color: var(--color-red);
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: var(--color-white);
	justify-content: center;
	align-items: center;
	flex-direction: column;
	flex-shrink: 0;
}

.consultation-item__title span::before {
	content: "Case";
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1;
	letter-spacing: -0.04em;
}

.consultation-item__item {
	margin-top: 1.5625rem;
	background-color: var(--color-white);
	border-radius: 0.3125rem;
	padding: 1.25rem;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: -0.04em;
	text-align: center;
	position: relative;
}

.consultation-item__item::before,
.consultation-item__item::after {
	content: "";
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	position: absolute;
}

.consultation-item__item::before {
	border-radius: 0.3125rem 0 0 0;
	border-top: 1px solid var(--color-red);
	border-left: 1px solid var(--color-red);
	top: 0;
	left: 0;
}

.consultation-item__item::after {
	border-radius: 0 0 0.3125rem 0;
	border-bottom: 1px solid var(--color-red);
	border-right: 1px solid var(--color-red);
	bottom: 0;
	right: 0;
}

.consultation-item__item + .consultation-item__item {
	margin-top: 1rem;
}

.consultation-item__text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: 0;
	margin-top: 3.6875rem;
	position: relative;
}

.consultation-item__text::before {
	content: "";
	display: block;
	width: 4.375rem;
	height: 1.5rem;
	background-image: url("../images/common/arrow07.png");
}

.consultation-item__text::before {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	left: 50%;
	top: -0.9375rem;
	transform: translate(-50%, -100%);
}

.consultation-item:nth-child(2) .consultation-item__title span {
	background-color: var(--color-blue);
}

.consultation-item:nth-child(2) .consultation-item__item::before,
.consultation-item:nth-child(2) .consultation-item__item::after {
	border-color: var(--color-blue);
}

.consultation-item:nth-child(3) .consultation-item__title span {
	background-color: var(--color-green);
}

.consultation-item:nth-child(3) .consultation-item__item::before,
.consultation-item:nth-child(3) .consultation-item__item::after {
	border-color: var(--color-green);
}

.consultation-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3.25rem min(3.4722222222vw, 3.125rem);
}

.consultation {
	position: relative;
}

.consultation::before {
	content: "";
	display: block;
	width: 16.8125rem;
	height: auto;
	aspect-ratio: 269/268;
	position: absolute;
	top: -2rem;
	right: calc(50% - min(48vw, 37.5rem));
	background-image: url("../images/support/consultation_deco01.png");
}

.consultation::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.consultation__head {
	margin-left: 6.75rem;
}

.consultation__text {
	margin-top: 1rem;
}

.consultation__list {
	margin-top: 3.8125rem;
}

.contact {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: min(2.0833333333vw, 1.875rem);
}

.contact__item {
	aspect-ratio: 302/297;
	color: var(--color-white);
	position: relative;
	height: 100%;
	transition: translate 0.3s;
	border-radius: 0.875rem;
}

.contact__item:not(:last-child)::before {
	content: "";
	display: block;
	width: 2.0625rem;
	height: auto;
	aspect-ratio: 1;
	position: absolute;
	bottom: 1.6875rem;
	right: 2.1875rem;
	background-image: url("../images/common/arrow01.png");
}

.contact__item:not(:last-child)::before {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: invert(0%);
}

.contact__item:not(:nth-child(3))::before {
	filter: invert(100%);
}

.contact__item:nth-child(1) {
	background-color: var(--color-blue);
}

.contact__item:nth-child(2) {
	background-color: var(--color-green);
}

.contact__item:nth-child(3) {
	background-color: var(--color-white);
	color: var(--color-black);
	border: 1px solid currentColor;
}

.contact__item:nth-child(4) {
	background-color: var(--color-red);
	aspect-ratio: unset;
	grid-column: span 3;
}

.contact__link {
	display: block;
	opacity: 1;
	padding-block: 2.1875rem;
	padding-inline: min(3.4722222222vw, 3.125rem);
	height: 100%;
}

.contact__item:nth-child(4) .contact__link {
	display: flex;
	font-family: var(--font-poppins);
	font-weight: var(--fw-bold);
	font-size: 2.625rem;
	justify-content: center;
	align-items: center;
	padding-block: 3rem;
}

.contact__title {
	font-weight: var(--fw-bold);
	font-size: 1.5625rem;
	line-height: 1.6;
	letter-spacing: -0.05em;
	text-align: center;
	min-height: 2lh;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.contact__title span {
	display: block;
	background-color: var(--color-black);
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 1;
	padding-block: 0.5rem;
	padding-inline: 1rem;
	color: var(--color-white);
	border-radius: 100vh;
	margin-top: 0.5rem;
}

.contact.contact--md .contact__item:nth-child(4) .contact__link > span {
	display: none;
}

.contact__icon {
	display: block;
	margin-inline: auto;
	margin-top: 2.375rem;
	width: 5.4375rem;
	height: 4.8125rem;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.contact__item:nth-child(1) .contact__icon {
	position: relative;
	translate: -0.5rem -0.25rem;
}

.contact__item:nth-child(2) .contact__icon {
	position: relative;
	translate: 0.75rem -0.125rem;
}

.contact__item:nth-child(4) .contact__icon {
	width: 4.0625rem;
	height: 4.0625rem;
	margin-left: 2.0625rem;
	margin-right: 0;
	margin-top: 0;
}

.contact.contact--lg .contact__title {
	min-height: 2lh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact.contact--md {
	grid-template-columns: repeat(4, 1fr);
}

.contact.contact--md .contact__item {
	aspect-ratio: unset;
	padding: 0;
	border-radius: 0.3125rem;
}

.contact.contact--md .contact__item::before {
	display: none;
}

.contact.contact--md .contact__link {
	display: flex;
	flex-direction: row-reverse;
	padding: 1.25rem 1rem;
	align-items: center;
	justify-content: left;
	height: 100%;
}

.contact.contact--md .contact__item:nth-child(4) {
	grid-column: unset;
}

.contact.contact--md .contact__icon {
	translate: 0;
}

.contact.contact--md .contact__title {
	font-size: 1.125rem;
	text-align: left;
	margin-left: 0.75rem;
	line-height: 1.1111111111;
}

.contact.contact--md .contact__item:nth-child(4) .contact__link {
	display: flex;
	justify-content: center;
}

.contact.contact--md .contact__item:nth-child(1) .contact__title {
	margin-left: 0.4375rem;
}

.contact.contact--md .contact__item:nth-child(1) .contact__title > br {
	display: none;
}

.contact.contact--md .contact__item:nth-child(3) .contact__title {
	text-align: center;
}

.contact.contact--md .contact__title span {
	font-size: 11px;
}

.contact.contact--md .contact__icon {
	width: 2.5625rem;
	height: 2.375rem;
	margin: 0;
}

.contact--sub .contact__item {
	aspect-ratio: 302/261;
}

.contact--sub .contact__item:last-child::before {
	content: "";
	display: block;
	width: 2.0625rem;
	height: auto;
	aspect-ratio: 1;
	position: absolute;
	bottom: 1.6875rem;
	right: 2.1875rem;
	background-image: url("../images/common/arrow01.png");
}

.contact--sub .contact__item:last-child::before {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: invert(0%);
}

.copy {
	font-weight: var(--fw-bold);
	font-size: 3.625rem;
	line-height: 1.4655172414;
	letter-spacing: -0.05em;
}

.copy.copy--white {
	color: var(--color-white);
}

.custom-home {
	background-image: url("../images/new-construction/custom-home_bg.png");
}

.custom-home {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding-block: 18.25rem 10.625rem;
}

.custom-home__title,
.custom-home__text {
	margin-left: 6.5625rem;
}

.custom-home__contents {
	margin-top: 3.5625rem;
	background-color: var(--color-white);
	border-radius: 1.875rem;
	padding-inline: min(5vw, 4.5rem);
	position: relative;
	padding-bottom: 5.5rem;
}

.custom-home__contents::before {
	content: "";
	display: block;
	width: 11.875rem;
	height: auto;
	aspect-ratio: 190/299;
	background-image: url("../images/new-construction/custom-home_deco01.png");
}

.custom-home__contents::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 3.8125rem;
	left: 11.375rem;
	z-index: 1;
}

.custom-home__content-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	letter-spacing: -0.05em;
	color: var(--color-white);
	background-color: var(--color-green);
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	border-radius: 0 0 1.9375rem 1.9375rem;
	padding-block: 1.6875rem 1.875rem;
	padding-inline: 3.625rem;
}

.custom-home__container {
	display: contents;
}

.custom-home__content {
	margin-top: 3.9375rem;
	display: grid;
	grid-template-columns: auto 25.4375rem 1fr;
	position: relative;
}

.custom-home__content::before {
	content: "";
	display: block;
	width: 15.375rem;
	height: auto;
	aspect-ratio: 246/225;
	background-image: url("../images/new-construction/custom-home_deco02.png");
}

.custom-home__content::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	bottom: -10.0625rem;
	right: 12.375rem;
}

.custom-home__content-item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 7;
}

.custom-home__content-item:nth-child(1) {
	margin-right: min(3.3333333333vw, 3rem);
	margin-left: 0.9375rem;
}

.custom-home__item-title {
	font-weight: var(--fw-bold);
	font-size: 1.5rem;
	line-height: 3.7083333333;
	letter-spacing: -0.05em;
	align-self: center;
	justify-self: right;
}

.custom-home__table-title {
	padding-top: 1.625rem;
}

.custom-home__content-item:nth-child(2) {
	color: var(--color-white);
	background-color: var(--color-red);
	text-align: center;
	border-radius: 1.1875rem;
	box-shadow: 0 0 1.125rem color-mix(in srgb, var(--color-black) 13%, transparent);
}

.custom-home__content-item:nth-child(2) .custom-home__table-title {
	font-weight: var(--fw-bold);
	font-size: 3rem;
	line-height: 1.8541666667;
	letter-spacing: -0.05em;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text {
	font-weight: var(--fw-bold);
	font-size: 1.5rem;
	line-height: 1.3333333333;
	letter-spacing: -0.05em;
	padding-block: 1.875rem;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text:nth-child(2) {
	padding-top: 0;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text span {
	display: block;
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
}

.custom-home__table-text {
	min-height: calc(2lh + 3.75rem);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.custom-home__table-text:nth-child(n+3) {
	position: relative;
}

.custom-home__table-text:nth-child(n+3)::before {
	content: "";
	display: block;
	width: 17.125rem;
	height: 0.0625rem;
	background-color: var(--color-white);
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.custom-home__content-item:nth-child(3) .custom-home__table-text:nth-child(n+3)::before {
	background-color: var(--color-gray-cbc);
}

.custom-home__content-item:nth-child(3) {
	color: var(--color-gray-6b6);
	text-align: center;
	margin-left: min(3.2638888889vw, 2.9375rem);
}

.custom-home__content-item:nth-child(3) .custom-home__table-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	line-height: 1.8541666667;
	letter-spacing: -0.05em;
	align-self: center;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text {
	font-weight: var(--fw-bold);
	font-size: 1.125rem;
	line-height: 1.3333333333;
	letter-spacing: -0.05em;
	padding-block: 1.875rem;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text:nth-child(2) {
	padding-top: 0;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text span {
	display: block;
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	margin-bottom: 1.5rem;
}

.custom-home.custom-home--renovation {
	padding-top: 18.875rem;
	padding-bottom: 35.6875rem;
}

.custom-home.custom-home--renovation .custom-home__contents {
	margin-top: 3.9375rem;
}

.custom-home.custom-home--renovation .custom-home__contents::before {
	background-image: url("../images/renovation/renovation_deco01.png");
}

.custom-home.custom-home--renovation .custom-home__contents::before {
	width: min(21.0416666667vw, 18.9375rem);
	aspect-ratio: 303/183;
	top: 5.125rem;
	left: calc(50% - min(48vw, 38.75rem));
}

.custom-home.custom-home--renovation .custom-home__content::before {
	background-image: url("../images/renovation/renovation_deco02.png");
}

.custom-home.custom-home--renovation .custom-home__content::before {
	width: min(15.9722222222vw, 14.375rem);
	aspect-ratio: 230/291;
	right: calc(50% - min(48vw, 37.125rem));
	bottom: -15.625rem;
}

.drawer {
	padding-left: 1.25rem;
	width: 100%;
	display: none;
}

.drawer.is-open {
	display: block;
}

.drawer__container {
	background-color: #3c3c3c;
	color: var(--color-white);
	border-radius: 0 0 0 1.6875rem;
	max-width: 50rem;
	margin-left: auto;
	padding-block: 5rem 7.5rem;
}

.drawer__content {
	max-height: 70vh;
	overflow-y: auto;
}

.drawer__inner.drawer__inner {
	padding-inline: 2.5rem;
}

.drawer__contact-wrap {
	margin-top: 2.5rem;
}

.faq-item {
	padding-bottom: 2.375rem;
}

.faq-item:not(:last-child) {
	border-bottom: 1px solid var(--color-gray-6e6);
}

.faq-item__question,
.faq-item__answer {
	display: flex;
	align-items: center;
	gap: 1.9375rem;
	padding-right: 3rem;
}

.faq-item__question span,
.faq-item__answer span {
	font-family: var(--font-poppins);
	font-weight: var(--fw-regular);
	font-size: 3rem;
	line-height: 1;
	text-transform: uppercase;
	color: var(--color-green);
}

.faq-item__answer span {
	color: var(--color-red);
}

.faq-item__question {
	position: relative;
	font-weight: var(--fw-bold);
	font-size: 1.5rem;
	line-height: 1.3333333333;
	letter-spacing: -0.05em;
	color: var(--color-green);
}

.faq-item__question::before,
.faq-item__question::after {
	content: "";
	position: absolute;
	top: 1.75rem;
	right: 0.5rem;
	width: 2.375rem;
	height: 0.1875rem;
	background: var(--color-green);
	transition: 0.3s;
}

.faq-item__question::after {
	transform: rotate(90deg);
}

.faq-item__question.is-open::after {
	transform: rotate(0deg);
}

.faq-item__answer-wrap {
	display: none;
	margin-top: 1.5rem;
}

.faq-item__answer {
	font-size: 1.25rem;
	line-height: 1.7;
	letter-spacing: -0.05em;
}

.faq {
	padding-block: 12.5rem 6.4375rem;
	background-image: url("../images/new-construction/faq_bg.png");
}

.faq {
	background-size: 100% 100%;
	background-position: center top;
	background-repeat: no-repeat;
}

.faq__contents {
	background-color: var(--color-white);
	border-radius: 1.5rem;
	padding-block: 10.25rem 8.875rem;
	padding-inline: min(7.5vw, 6.75rem);
}

.faq__list {
	margin-top: 4rem;
}

.faq__item + .faq__item {
	margin-top: 3.25rem;
}

.faq.faq--about {
	padding-block: 12.125rem 0;
	background-position: center top -6.25rem;
	background-size: 100% 120%;
}

.faq.faq--about .faq__contents {
	padding-top: 4.5rem;
	padding-bottom: 5.5625rem;
	position: relative;
}

.faq.faq--about .faq__contents::before {
	content: "";
	display: block;
	width: 19rem;
	height: auto;
	aspect-ratio: 304/274;
	background-image: url("../images/about/faq_deco01.png");
}

.faq.faq--about .faq__contents::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -3.875rem;
	right: calc(50% - min(48vw, 32.5rem));
}

.faq.faq--renovation .faq__contents {
	position: relative;
	padding-top: 4.375rem;
}

.faq.faq--renovation .faq__contents::before {
	content: "";
	display: block;
	width: 20.625rem;
	height: auto;
	aspect-ratio: 330/162;
	background-image: url("../images/renovation/faq_deco01.png");
}

.faq.faq--renovation .faq__contents::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -3.875rem;
	right: calc(50% - min(48vw, 31.25rem));
}

.flow-list {
	border-radius: 1.25rem;
	background-color: var(--color-white);
	padding-block: 2.4375rem;
}

.flow-list:not(:last-child) {
	position: relative;
}

.flow-list:not(:last-child)::before {
	content: "";
	display: block;
	width: 0.375rem;
	height: auto;
	aspect-ratio: 6/42;
	background-image: url("../images/guide/flow_reader.png");
}

.flow-list:not(:last-child)::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translate(-50%, 1rem);
}

.flow-list__inner {
	padding-inline: min(4.5138888889vw, 4.0625rem);
	display: grid;
	grid-template-columns: 1fr min(23.6111111111vw, 21.25rem);
	grid-template-rows: auto 1fr;
	align-items: center;
	-moz-column-gap: 1.875rem;
	column-gap: 1.875rem;
}

.flow-list__img {
	grid-column: 2/3;
	grid-row: 1/3;
	border-radius: 0.9375rem;
	overflow: hidden;
}

.flow-list__img img {
	width: 100%;
}

.flow-list__title {
	font-weight: var(--fw-bold);
	font-size: 1.875rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	display: flex;
	gap: 1.0625rem;
	align-items: center;
}

.flow-list__title span {
	display: flex;
	width: 4.9375rem;
	height: 4.9375rem;
	border-radius: 100vh;
	background-color: var(--color-red);
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: var(--color-white);
	justify-content: center;
	align-items: center;
	flex-direction: column;
	flex-shrink: 0;
	gap: 0.125rem;
}

.flow-list__title span::before {
	content: "Step";
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1;
	letter-spacing: -0.04em;
}

.flow-list__text {
	grid-column: 1/2;
	align-self: start;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: -0.04em;
	margin-top: 0.875rem;
}

.flow-list__text span {
	color: var(--color-red);
}

.flow-list:nth-child(3n+2) .flow-list__title span {
	background-color: var(--color-blue);
}

.flow-list:nth-child(3n+3) .flow-list__title span {
	background-color: var(--color-green);
}

.flow {
	padding-top: 15.5rem;
	padding-bottom: 14.8125rem;
	background-image: url("../images/guide/flow_bg.png");
}

.flow {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}

.flow::before {
	content: "";
	display: block;
	width: min(20.3472222222vw, 18.3125rem);
	height: auto;
	aspect-ratio: 293/269;
	background-image: url("../images/guide/flow_deco01.png");
}

.flow::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -2rem;
	right: calc(50% - min(48vw, 39.4375rem));
}

.flow__head {
	margin-left: 6.0625rem;
}

.flow__head-text {
	margin-top: 0.5rem;
}

.flow__list {
	margin-top: 3rem;
}

.flow__list-item + .flow__list-item {
	margin-top: 4.5rem;
}

.footer {
	background-image: url("../images/common/bg_footer.png");
}

.footer {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding-inline: min(2.7777777778vw, 2.5rem);
	padding-bottom: 5.25rem;
}

.footer__container {
	background-color: #2a2a2a;
	border-radius: 2.1875rem;
	padding-block: 8.5rem 4.5rem;
	color: var(--color-white);
}

.footer__content {
	display: flex;
}

.footer__content:nth-child(2) {
	margin-top: 1.9375rem;
}

.footer__content:nth-child(3) {
	margin-top: 2.9375rem;
	justify-content: space-between;
	align-items: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.footer__name {
	width: 12.5rem;
	margin-inline: 1.6875rem;
}

.footer__name a {
	transition: translate 0.3s;
	position: relative;
	display: block;
}

.footer__name picture,
.footer__name img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 200/122;
	object-fit: contain;
}

.footer__address {
	font-size: 0.9375rem;
	line-height: 1.5882352941;
	letter-spacing: -0.05em;
	margin-top: 3.4375rem;
}

.footer__tel,
.footer__mail {
	display: block;
	transition: translate 0.3s;
}

.footer__tel {
	margin-top: -0.125rem;
}

.footer__mail {
	margin-top: -0.5rem;
}

.footer__nav-wrap {
	margin-left: auto;
}

.footer__policy,
.footer__instagram {
	display: flex;
	gap: 0.9375rem;
	align-items: center;
	transition: translate 0.3s;
	position: relative;
}

.footer__instagram {
	justify-self: right;
}

.footer__instagram::after {
	content: "";
	width: 2.75rem;
	height: 2.8125rem;
	display: inline-block;
	background-image: url("../images/common/icon_instagram.png");
}

.footer__instagram::after {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.footer__copy {
	display: block;
	margin-top: 3.5rem;
	text-align: center;
	font-weight: var(--fw-regular);
	font-size: 14px;
	letter-spacing: -0.05em;
	opacity: 0.5;
	grid-column: span 2;
}

body.archive .footer,
body.blog .footer,
.footer.footer--diagonal02 {
	background-image: url("../images/common/bg_footer-archive.png");
}

body.archive .footer,
body.blog .footer,
.footer.footer--diagonal02 {
	padding-top: 13.1875rem;
	background-size: cover;
	background-position: right top;
}

.footer.footer--diagonal {
	background-image: url("../images/common/bg_footer-diagonal.png");
}

.footer.footer--diagonal {
	padding-top: 13.1875rem;
	background-size: cover;
	background-position: left top;
	margin-top: 4.625rem;
}

.form-checkbox {
	display: grid;
	grid-template-columns: repeat(2, 21.875rem);
	gap: 0.875rem 2.625rem;
}

.form-checkbox input {
	display: none;
}

.form-checkbox input + span {
	cursor: pointer;
	display: inline-block;
	padding-left: 3.125rem;
	position: relative;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2;
	letter-spacing: 0.05em;
}

.form-checkbox input + span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: #fff;
	border: 1px solid #CBCBCB;
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 3px;
}

.form-checkbox input + span::after {
	content: "";
	margin-top: -0.125rem;
	position: absolute;
	top: 50%;
	left: 0.3125rem;
	transform: translateY(-50%) rotate(-45deg);
	display: block;
	width: 1.25rem;
	height: 0.75rem;
	border-bottom: 0.1875rem solid var(--color-red);
	border-left: 0.1875rem solid var(--color-red);
	transition: 0.3s;
	opacity: 0;
}

.form-checkbox input:checked + span::after {
	opacity: 1;
}

.form-input input {
	padding: 0.5rem 0.9375rem;
	width: 100%;
	font-size: 1.375rem;
	font-weight: var(--fw-medium);
	line-height: 2;
	letter-spacing: 0.05em;
	border-radius: 0.3125rem;
	border: 1px solid #CBCBCB;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: transparent;
	background-image: none;
}

.form-input input:focus {
	border: 1px solid #CBCBCB;
	box-shadow: none;
	outline: none;
}

.form-radio {
	display: flex;
	gap: 2.4375rem;
}

.form-radio input {
	display: none;
}

.form-radio input + span {
	padding-left: 2.375rem;
	position: relative;
	display: block;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2;
	letter-spacing: 0.05em;
	cursor: pointer;
}

.form-radio input + span::before {
	content: "";
	width: 1.75rem;
	height: 1.75rem;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: #fff;
	border: 1px solid #CBCBCB;
	border-radius: 50%;
}

.form-radio input + span::after {
	content: "";
	padding: 0.125rem;
	width: 1rem;
	height: 1rem;
	position: absolute;
	top: 50%;
	left: 0.375rem;
	transform: translateY(-50%);
	border: 1px solid transparent;
	border-radius: 50%;
	background: var(--color-red);
	opacity: 0;
	transition: 0.3s;
}

.form-radio input:checked + span::after {
	opacity: 1;
}

.form-select select {
	padding: 0.5rem 0.9375rem;
	width: 100%;
	font-size: 1.375rem;
	font-weight: var(--fw-medium);
	line-height: 2;
	letter-spacing: 0.05em;
	border-radius: 0.3125rem;
	border: 1px solid #CBCBCB;
	background-image: url(./../images/common/arrow06.png);
	background-repeat: no-repeat;
	background-size: 1.5625rem 1.125rem;
	background-position: right 1.5rem top 1.625rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}

.form-select select::-ms-expand {
	display: none;
}

.form-select select:focus {
	border: 1px solid #CBCBCB;
	box-shadow: none;
	outline: none;
}

.form-submit input {
	display: inline-block;
	width: 100%;
	max-width: 22rem;
	padding-block: 1.25rem;
	padding-inline: 2.25rem;
	background-color: var(--color-red);
	font-family: var(--font-sawarabi);
	font-size: 1.3125rem;
	line-height: 1.9047619048;
	letter-spacing: -0.05em;
	color: var(--color-white);
	font-weight: var(--fw-regular);
	border-radius: 0.6875rem;
	position: relative;
	text-align: center;
	border: 0.125rem solid transparent;
	transition: color 0.3s, background-color 0.3s, border 0.3s;
}

.form-submit input:hover,
.form-submit input:focus {
	outline: none;
}

.form-submit input::-moz-foucus-inner {
	padding: 0;
	border: none;
}

.form-textarea textarea {
	padding: 0.5rem 0.9375rem;
	width: 100%;
	height: 15rem;
	font-size: 1.375rem;
	font-weight: var(--fw-medium);
	line-height: 2;
	letter-spacing: 0.05em;
	border-radius: 0.3125rem;
	border: 1px solid #CBCBCB;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: transparent;
	background-image: none;
}

.form-textarea textarea:focus {
	border: 1px solid #CBCBCB;
	box-shadow: none;
	outline: none;
}

.form__wrap + .form__wrap {
	margin-top: 2.0625rem;
}

.form__label {
	font-size: 1.375rem;
	font-weight: var(--fw-medium);
	line-height: 2;
	letter-spacing: 0.05em;
}

.form__label .form__label-sm {
	display: inline-block;
	margin-left: 0.75rem;
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0.05em;
	color: #7D7D7D;
}

.form__label .form__label-required {
	display: inline-block;
	margin-left: 0.8125rem;
	font-weight: var(--fw-medium);
	font-size: 1.0625rem;
	line-height: 1.7;
	letter-spacing: -0.04em;
	padding-inline: 0.6875rem;
	border-radius: 0.375rem;
	color: var(--color-white);
	background-color: var(--color-red);
}

.form__input,
.form__select,
.form__radio,
.form__checkbox,
.form__textarea {
	margin-top: 0.8125rem;
}

.form__input,
.form__textarea {
	flex-grow: 1;
}

.form__submit {
	margin-top: 3.4375rem;
	text-align: center;
}

.form__privacy {
	margin-top: 4.375rem;
	text-align: center;
}

.form__privacy input {
	display: none;
}

.form__privacy input + span {
	cursor: pointer;
	display: inline-block;
	padding-left: 3.125rem;
	position: relative;
	font-weight: var(--fw-medium);
	font-size: 1.25rem;
	line-height: 2;
	letter-spacing: 0.05em;
}

.form__privacy input + span::before {
	content: "";
	position: absolute;
	top: 0.3125rem;
	left: 0;
	background: var(--color-white);
	border: 1px solid #CBCBCB;
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 0.1875rem;
}

.form__privacy input + span::after {
	content: "";
	margin-top: -0.125rem;
	position: absolute;
	top: 50%;
	left: 0.3125rem;
	transform: translateY(-50%) rotate(-45deg);
	display: block;
	width: 1.25rem;
	height: 0.75rem;
	border-bottom: 0.1875rem solid var(--color-red);
	border-left: 0.1875rem solid var(--color-red);
	transition: 0.3s;
	opacity: 0;
}

.form__privacy input + span a {
	text-decoration: underline;
}

.form__privacy input:checked + span::after {
	opacity: 1;
}

.free-design__title,
.free-design__text {
	margin-left: 6.875rem;
}

.free-design__text {
	margin-top: 0.625rem;
}

.free-design__flow {
	margin-top: 4.5rem;
	display: grid;
	grid-template-columns: repeat(4, min(16.4583333333vw, 14.8125rem));
	gap: 3.125rem;
	margin-inline: auto;
	width: -moz-fit-content;
	width: fit-content;
}

.free-design__frow-item {
	border: var(--color-gray-5b5) 1px solid;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	border-radius: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: end;
	align-items: center;
	padding-bottom: min(4.7222222222vw, 4.25rem);
	gap: 1.1875rem;
}

.free-design__frow-item:not(:first-child) {
	position: relative;
}

.free-design__frow-item:not(:first-child)::before {
	content: "";
	width: 1.5625rem;
	height: 4.5rem;
	display: block;
	background-image: url("../images/common/arrow03.png");
}

.free-design__frow-item:not(:first-child)::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: -1.5625rem;
	transform: translate(-50%, -50%);
}

.free-design__frow-item:nth-child(1) .free-design__flow-icon {
	width: min(5.4861111111vw, 4.9375rem);
}

.free-design__frow-item:nth-child(1) .free-design__flow-icon picture,
.free-design__frow-item:nth-child(1) .free-design__flow-icon img {
	width: 100%;
	height: auto;
	aspect-ratio: 79/75;
}

.free-design__frow-item:nth-child(2) .free-design__flow-icon {
	width: min(5.9027777778vw, 5.3125rem);
}

.free-design__frow-item:nth-child(2) .free-design__flow-icon picture,
.free-design__frow-item:nth-child(2) .free-design__flow-icon img {
	width: 100%;
	height: auto;
	aspect-ratio: 85/87;
}

.free-design__frow-item:nth-child(3) .free-design__flow-icon {
	width: min(4.8611111111vw, 4.375rem);
}

.free-design__frow-item:nth-child(3) .free-design__flow-icon picture,
.free-design__frow-item:nth-child(3) .free-design__flow-icon img {
	width: 100%;
	height: auto;
	aspect-ratio: 70/85;
}

.free-design__frow-item:nth-child(4) .free-design__flow-icon {
	width: min(4.7222222222vw, 4.25rem);
}

.free-design__frow-item:nth-child(4) .free-design__flow-icon picture,
.free-design__frow-item:nth-child(4) .free-design__flow-icon img {
	width: 100%;
	height: auto;
	aspect-ratio: 68/56;
}

.free-design__frow-text {
	font-weight: var(--fw-bold);
	color: var(--color-gray-6b6);
	line-height: 1.3333333333;
	letter-spacing: -0.05em;
	font-size: clamp(1.125rem, 1.6666666667vw, 1.5rem);
	position: relative;
}

.free-design__frow-text span {
	display: block;
	width: 100%;
	font-size: clamp(0.75rem, 1.1111111111vw, 1rem);
	position: absolute;
	text-align: center;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 100%);
}

.free-design.free-design--redesign .free-design__head {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.free-design.free-design--redesign .free-design__title {
	margin-left: 0;
	width: -moz-fit-content;
	width: fit-content;
}

.free-design.free-design--redesign .free-design__text {
	margin-left: 0;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 1.5rem;
}

.fv {
	padding-top: 10rem;
	position: relative;
}

.fv__inner.inner {
	display: grid;
	grid-template-columns: 1fr min(51.5277777778vw, 46.375rem);
	position: relative;
}

.fv__title {
	font-weight: var(--fw-bold);
	font-size: 5rem;
	line-height: 1.0625;
	letter-spacing: -0.04em;
	align-self: center;
	position: absolute;
	top: calc(50% - 0.25rem);
	left: calc(50% - min(48vw, 36.875rem));
	transform: translateY(-50%);
}

.fv--support .fv__title {
	font-size: 4.375rem;
	line-height: 1.26;
	letter-spacing: -0.04em;
	top: calc(50% + 0.75rem);
	left: calc(50% - min(48vw, 35.9375rem));
}

.fv.fv--construction .fv__title {
	position: relative;
	top: -2.3125rem;
	left: calc(50% - min(48vw, 12.375rem));
	letter-spacing: 0.01em;
	transform: translateY(0%);
}

.fv__title span {
	font-size: 2.5rem;
	display: block;
	letter-spacing: -0.05em;
}

.fv__img {
	grid-column: 2/3;
}

.fv__img picture,
.fv__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 742/450;
}

.fv__copy {
	position: absolute;
	top: 64%;
	left: 42%;
	width: min(27.0138888889vw, 24.3125rem);
	transform: translate(-50%, 0);
}

.fv__copy picture,
.fv__copy img {
	width: 100%;
	height: auto;
}

.fv.fv--works .fv__copy {
	width: 13.3125rem;
	top: 65%;
	left: 35%;
}

.fv.fv--topics .fv__copy {
	width: 12.1875rem;
	top: 66%;
	left: 34%;
}

.fv.fv--voice .fv__copy {
	width: 10.625rem;
	top: 67%;
	left: 33.2%;
}

.fv.fv--contact .fv__copy {
	width: 16.5625rem;
	top: 66%;
	left: 37%;
}

.fv.fv--company .fv__copy {
	width: 18.875rem;
	top: 59%;
	left: 32%;
}

.fv.fv--support .fv__copy {
	width: 29rem;
	top: 70%;
	left: 39.5%;
}

.fv.fv--guide .fv__copy {
	width: min(13.3333333333vw, 12rem);
	top: 44%;
	left: calc(50% - min(42vw, 35.125rem));
}

.fv.fv--guide .fv__title {
	top: calc(59% - 0.25rem);
	left: calc(50% - min(48vw, 34.375rem));
	transform: translateY(-50%);
}

.fv.fv--about .fv__copy {
	width: min(42.5vw, 38.25rem);
	top: 56%;
	left: 35%;
}

.fv.fv--renovation .fv__copy {
	width: min(24.0277777778vw, 21.625rem);
	top: 69%;
	left: 41%;
}

.guide-intro {
	position: relative;
}

.guide-intro::before {
	content: "";
	display: block;
	width: clamp(120px, 20.2083333333vw, 18.1875rem);
	height: auto;
	aspect-ratio: 291/143;
	background-image: url("../images/guide/guide-intro_deco.png");
}

.guide-intro::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -3.125rem;
	right: calc(50% - min(50vw, 42.3125rem));
}

.guide-intro__contents {
	display: grid;
	grid-template-columns: 1fr auto;
	margin-left: max(-10.625rem, 50% - 50vw);
	gap: min(7.4305555556vw, 6.6875rem);
	align-items: center;
}

.guide-intro_img img {
	width: 100%;
	height: auto;
}

.guide-intro__text {
	font-weight: var(--fw-medium);
	font-size: 1.375rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.guide-intro__text span {
	color: var(--color-red);
}

.guide-intro__link {
	margin-top: 2.9375rem;
}

.hamburger {
	background-color: var(--color-gray);
	position: relative;
}

.hamburger span {
	display: inline-block;
	width: 2rem;
	height: 0.0625rem;
	background-color: var(--color-white);
	position: absolute;
	left: 1.125rem;
	transition: opacity 0.3s, transform 0.3s;
}

.hamburger span:nth-child(1) {
	top: 0.9375rem;
}

.hamburger span:nth-child(2) {
	top: 50%;
	translate: 0 -50%;
	opacity: 1;
}

.hamburger span:nth-child(3) {
	bottom: 0.9375rem;
}

.hamburger.is-open span:nth-child(1) {
	transform: rotate(135deg);
	top: 50%;
}

.hamburger.is-open span:nth-child(2) {
	opacity: 0;
}

.hamburger.is-open span:nth-child(3) {
	bottom: auto;
	top: 50%;
	transform: rotate(-135deg);
}

.head-text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.header {
	height: 3.625rem;
}

.header__inner.inner {
	display: flex;
	padding-inline: min(4.5833333333vw, 4.125rem) clamp(5.1875rem, 11.8055555556vw, 10.625rem);
	max-width: 1440px;
	height: 100%;
}

.header__logo {
	width: min(23.0555555556vw, 20.75rem);
}

.header__logo a {
	display: inline-block;
	width: 100%;
	transition: translate 0.3s;
	position: relative;
	display: block;
}

.header__logo picture,
.header__logo img {
	width: 100%;
}

.header__nav-list {
	font-size: clamp(0.875rem, 1.1805555556vw, 1.0625rem);
	display: flex;
	margin-left: auto;
	width: 100%;
	max-width: clamp(37.5rem, 51.5277777778vw, 46.375rem);
	justify-content: space-between;
	height: 100%;
	font-weight: var(--fw-bold);
}

.header__nav-item,
.header__nav-item a {
	height: inherit;
}

.header__nav-item a {
	display: flex;
	align-items: center;
	opacity: 1;
	padding-top: 0.375rem;
	letter-spacing: -0.05em;
	transition: translate 0.3s;
}

.hearing {
	background-image: url("../images/new-construction/hearing_bg.png");
}

.hearing {
	background-size: 100% auto;
	background-position: center top;
	background-repeat: no-repeat;
	padding-top: 11.4375rem;
}

.hearing__bubbles {
	margin-top: 5.6875rem;
}

.hearing__bubble {
	font-size: 2rem;
	line-height: 1.53125;
	letter-spacing: -0.05em;
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	width: -moz-fit-content;
	width: fit-content;
	position: relative;
}

.hearing__bubble:nth-child(1) {
	margin-left: 1.25rem;
	background-image: url("../images/new-construction/hearing_bubble-bg01.png");
}

.hearing__bubble:nth-child(1) {
	padding-bottom: 6.25rem;
	padding-inline: 5.625rem 4.8125rem;
}

.hearing__bubble:nth-child(1)::before {
	content: "";
	width: 16.6875rem;
	height: auto;
	aspect-ratio: 267/294;
	display: block;
	position: absolute;
	bottom: -12.8125rem;
	left: 6.3125rem;
	background-image: url("../images/new-construction/hearing_deco01.png");
}

.hearing__bubble:nth-child(1)::before {
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.hearing__bubble:nth-child(2) {
	background-image: url("../images/new-construction/hearing_bubble-bg02.png");
}

.hearing__bubble:nth-child(2) {
	padding-bottom: 7.6875rem;
	padding-inline: 3.875rem 1.75rem;
	margin-left: auto;
	margin-top: -6.0625rem;
	text-align: center;
	position: relative;
	left: -1.25rem;
}

.hearing__bubble:nth-child(2)::before {
	content: "";
	width: 17.25rem;
	height: auto;
	aspect-ratio: 276/167;
	display: block;
	position: absolute;
	bottom: -6.25rem;
	right: 3.125rem;
	background-image: url("../images/new-construction/hearing_deco02.png");
}

.hearing__bubble:nth-child(2)::before {
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.hearing__content {
	margin-top: 12.9375rem;
	position: relative;
}

.hearing__caution {
	font-size: 3rem;
	font-weight: var(--fw-bold);
	text-align: center;
	color: var(--color-red);
	letter-spacing: -0.05em;
	position: relative;
	left: -2.625rem;
}

.hearing__caution::after {
	content: "";
	display: block;
	width: 26.0625rem;
	height: auto;
	aspect-ratio: 417/20;
	background-image: url("../images/new-construction/hearing_bubble-bg03.png");
}

.hearing__caution::after {
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
	margin-inline: auto;
	margin-top: 1.375rem;
}

.hearing__text {
	margin-top: 2.8125rem;
	font-size: 1.75rem;
	line-height: 1.7857142857;
	letter-spacing: -0.05em;
	text-align: center;
	position: relative;
	left: -1.6875rem;
}

.hearing__img {
	position: absolute;
}

.hearing__img.--01 {
	width: min(17.3611111111vw, 15.625rem);
	filter: drop-shadow(0 0 1.6875rem color-mix(in srgb, var(--color-black) 3%, transparent));
	z-index: 1;
	top: -0.625rem;
	left: calc(50% - min(48vw, 39.3125rem));
}

.hearing__img.--02 {
	width: min(18.75vw, 16.875rem);
	top: 6.5625rem;
	left: calc(50% - min(50vw, 46.875rem));
}

.hearing__img.--03 {
	width: min(26.875vw, 24.1875rem);
	top: -3.0625rem;
	right: calc(50% - min(50vw, 42.4375rem));
}

.hearing__img.--04 {
	width: min(13.6805555556vw, 12.3125rem);
	top: 7.875rem;
	right: calc(50% - min(48vw, 45rem));
	z-index: 1;
}

.hearing__img picture,
.hearing__img img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.hearing__cta {
	margin-top: 10.75rem;
}

.hearing.hearing--renovation {
	padding-top: 11rem;
}

.hearing.hearing--renovation .hearing__bubbles-wrap {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.hearing.hearing--renovation .hearing__bubbles {
	margin-top: 4.375rem;
	display: grid;
	grid-template-columns: auto auto 1fr;
	width: -moz-fit-content;
	width: fit-content;
	margin-left: -1.125rem;
	margin-right: -2.75rem;
	align-items: start;
}

.hearing.hearing--renovation .hearing__bubble {
	background-image: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column-reverse;
}

.hearing.hearing--renovation .hearing__bubble::before {
	position: static;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(1) {
	width: min(26.3888888889vw, 23.75rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(1)::before {
	margin-left: 2.375rem;
	width: min(16.9444444444vw, 15.25rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(2) {
	width: min(24.4444444444vw, 22rem);
	margin-left: 0.4375rem;
	margin-top: 6.5rem;
	left: 0;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(2)::before {
	background-image: url("../images/renovation/hearing_deco02.png");
}

.hearing.hearing--renovation .hearing__bubble:nth-child(2)::before {
	width: min(14.2361111111vw, 12.8125rem);
	aspect-ratio: 205/204;
	margin-left: 3.375rem;
	margin-top: 0;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(3) {
	width: min(27.6388888889vw, 24.875rem);
	margin-left: 1.6875rem;
	margin-top: 0.875rem;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(3)::before {
	background-image: url("../images/renovation/hearing_deco03.png");
}

.hearing.hearing--renovation .hearing__bubble:nth-child(3)::before {
	width: min(18.75vw, 16.875rem);
	aspect-ratio: 270/249;
	margin-left: 4.5rem;
	margin-top: 0.5rem;
	content: "";
	display: block;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.hearing.hearing--renovation .hearing__bubble img {
	width: 100%;
}

.hearing.hearing--renovation .hearing__content {
	margin-top: 6.25rem;
}

.hearing.hearing--renovation .hearing__text-area {
	translate: clamp(1.25rem, 6.25vw, 2.125rem);
}

.hearing.hearing--renovation .hearing__img.--01 {
	width: min(16.25vw, 14.625rem);
	filter: none;
	z-index: 1;
	top: -0.625rem;
	left: calc(50% - min(50vw, 46.875rem));
}

.hearing.hearing--renovation .hearing__img.--02 {
	width: min(26.875vw, 24.1875rem);
	top: 6.5625rem;
	left: calc(50% - min(47.5vw, 45.25rem));
}

.hearing.hearing--renovation .hearing__img.--03 {
	width: min(27.1527777778vw, 24.4375rem);
	top: -3.0625rem;
	right: calc(50% - min(50vw, 46.875rem));
	aspect-ratio: 391/271;
}

.hearing.hearing--renovation .hearing__img.--04 {
	width: min(16.6666666667vw, 15rem);
	top: 11.0625rem;
	right: calc(50% - min(45vw, 32.25rem));
	z-index: 1;
}

.hearing.hearing--renovation .hearing__cta {
	margin-top: 11rem;
}

.list {
	display: grid;
	grid-template-columns: 17rem 1fr;
	padding-bottom: 2.125rem;
	border-bottom: 1px solid #CBCBCB;
}

.list + .list {
	margin-top: 2.375rem;
}

.list__title {
	font-weight: var(--fw-bold);
	font-size: 1.625rem;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--color-red);
}

.list__item {
	font-weight: var(--fw-medium);
	font-size: 1.25rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.list__item ol {
	margin-bottom: 0.375rem;
}

.list__item li {
	display: flex;
	gap: 1.125rem;
	line-height: 2.2;
}

.list__item li::before {
	content: "";
	margin-top: 0.5lh;
	width: 0.75rem;
	height: 0.75rem;
	background-color: var(--color-red);
	border-radius: 100vh;
	position: relative;
	transform: translateY(-50%);
	flex-shrink: 0;
}

.list__map {
	margin-top: 0.9375rem;
	border-radius: 0.6875rem;
	overflow: hidden;
	width: 100%;
	height: auto;
	aspect-ratio: 570/183;
	max-width: 35.625rem;
}

.list__map iframe {
	width: 100%;
	height: 100%;
}

.list--blue .list__title {
	color: var(--color-blue);
}

.maintenance {
	padding-top: 14.375rem;
	padding-bottom: 11.5625rem;
	background-image: url("../images/support/maintenance_bg.png");
}

.maintenance {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}

.maintenance::before {
	content: "";
	display: block;
	width: 15.4375rem;
	height: auto;
	aspect-ratio: 247/316;
	position: absolute;
	top: 5.75rem;
	right: calc(50% - min(48vw, 34.25rem));
	background-image: url("../images/support/maintenance_deco01.png");
}

.maintenance::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.maintenance__title {
	margin-left: 6.25rem;
}

.maintenance__content {
	margin-top: 3.1875rem;
	background-color: var(--color-white);
	border-radius: 1.25rem;
	padding-block: 2.6875rem 3.0625rem;
}

.maintenance__content.kaku-motion {
	position: relative;
}

.maintenance__content.kaku-motion::before {
	content: "";
	display: block;
	width: 8rem;
	height: auto;
	aspect-ratio: 128/149;
	position: absolute;
	bottom: -0.5rem;
	right: 1.25rem;
	background-image: url("../images/support/maintenance_deco02.png");
}

.maintenance__content.kaku-motion::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.maintenance__content + .maintenance__content {
	margin-top: 2.375rem;
}

.maintenance__content-title {
	padding-block: 0.3125rem;
	padding-inline: 4.5625rem 5rem;
	font-weight: var(--fw-bold);
	font-size: 2.1875rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	color: var(--color-white);
	background-color: var(--color-red);
	border-radius: 0 100vh 100vh 0;
	display: inline-block;
}

.maintenance__content-title.maintenance__content-title--blue {
	background-color: var(--color-blue);
}

.maintenance__content-container {
	margin-top: 2.125rem;
	max-width: 63.5rem;
	padding-inline: var(--padding-pc);
	margin-inline: auto;
}

.maintenance__text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: -0.04em;
	font-size: 1rem;
}

.maintenance__list {
	margin-top: 1.1875rem;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: center;
}

.maintenance__list-title {
	display: flex;
	width: 7.75rem;
	height: 7.75rem;
	border-radius: 100vh;
	border: 1px solid #625C60;
	justify-content: center;
	align-items: center;
	color: var(--color-gray-6b6);
	font-weight: var(--fw-bold);
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0;
}

.maintenance__list-item {
	width: -moz-fit-content;
	width: fit-content;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	row-gap: 0.4375rem;
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
}

.maintenance__list-item p {
	padding-inline: 1.125rem;
	display: flex;
	gap: 0.8125rem;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: -0.04em;
	align-items: center;
}

.maintenance__list-item p::before {
	content: "";
	width: 0.5rem;
	height: 0.5rem;
	flex-shrink: 0;
	border-radius: 100vh;
	background-color: var(--color-red);
}

.maintenance__list-item p:last-child {
	justify-self: right;
}

.maintenance__list-item p:last-child::before {
	display: none;
}

.maintenance__list + .maintenance__text {
	margin-top: 1.1875rem;
}

.maintenance__concerns-list + .maintenance__text {
	margin-top: 1.8125rem;
}

.maintenance__concerns-list {
	width: -moz-fit-content;
	width: fit-content;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.875rem 1.4375rem;
}

.maintenance__concerns-item {
	width: 25.3125rem;
	background-color: var(--color-gray-f8f);
	padding-inline: 1.25rem;
	padding-block: 0.75rem;
	border-radius: 0.5625rem;
	text-align: center;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: -0.04em;
	position: relative;
}

.maintenance__concerns-item::before,
.maintenance__concerns-item::after {
	content: "";
	display: block;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.5625rem 0 0 0;
	position: absolute;
}

.maintenance__concerns-item::before {
	top: 0;
	left: 0;
	border-top: 1px solid var(--color-red);
	border-left: 1px solid var(--color-red);
}

.maintenance__concerns-item::after {
	border-radius: 0 0 0.5625rem 0;
	border-bottom: 1px solid var(--color-red);
	border-right: 1px solid var(--color-red);
	right: 0;
	bottom: 0;
}

.message {
	padding-bottom: 14.6875rem;
	background-image: url("../images/company/message_bg.png");
}

.message {
	background-size: 87.5vw 100%;
	background-position: right center;
	background-repeat: no-repeat;
}

.message__title {
	margin-left: 6.125rem;
}

.message__contents {
	margin-top: 7.125rem;
	display: grid;
	grid-template-columns: 1fr 34.625rem;
	gap: min(5.9722222222vw, 5.375rem);
	margin-left: max(-10.625rem, 50% - 50vw);
}

.message__content-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	line-height: 1.7;
	letter-spacing: -0.04em;
}

.message__textarea {
	margin-top: 0.5rem;
}

.message__text,
.message__signature span {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: 0;
}

.message__text {
	margin-top: 1.875rem;
}

.message__text + .message__text {
	margin-top: 1.25rem;
}

.message__signature {
	text-align: right;
	font-weight: var(--fw-medium);
	font-size: 1.375rem;
	line-height: 2.2;
	letter-spacing: 0.09em;
	margin-top: 1.6875rem;
}

.message__signature span {
	display: inline-block;
	margin-right: 1.625rem;
}

.message__img {
	width: 100%;
}

.message__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 630/532;
	object-fit: cover;
	object-position: right top;
}

.mv {
	display: grid;
	grid-template-columns: 5rem 1fr auto;
	position: relative;
	padding-top: 1.125rem;
	padding-right: 5rem;
	background-image: url("../images/top/mv_bg-top.png");
}

.mv {
	background-size: 49rem 26.75rem;
	background-position: right top;
	background-repeat: no-repeat;
	overflow-x: clip;
}

.mv::before {
	content: "";
	display: block;
	width: 89.375rem;
	height: 62.875rem;
	background-image: url("../images/top/mv_bg-bottom.png");
}

.mv::before {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 40.3125rem;
	left: 5rem;
	z-index: -1;
}

.mv__text {
	font-family: var(--font-sawarabi);
	font-size: 0.875rem;
	line-height: 2.8571428571;
	letter-spacing: 0.6em;
	position: absolute;
	grid-column: 1/2;
	top: min(51.5277777778vw, 46.375rem);
	left: -3.5625rem;
	rotate: 90deg;
	white-space: nowrap;
}

.mv__copy-wrap {
	grid-column: 2/3;
	position: relative;
	display: flex;
}

.mv__copy-decoration {
	position: absolute;
	z-index: 1;
}

.mv__copy-decoration picture,
.mv__copy-decoration img {
	width: 100%;
	height: auto;
	object-fit: contain;
}

.mv__copy-decoration:nth-child(2) {
	width: min(8.9583333333vw, 8.0625rem);
	top: 12.625rem;
	left: calc(50% - min(23vw, 15.9375rem));
}

.mv__copy-decoration:nth-child(3) {
	width: min(10.4166666667vw, 9.375rem);
	top: 14.5625rem;
	right: calc(50% - min(20vw, 17.6875rem));
}

.mv__copy-decoration:nth-child(4) {
	width: min(11.8055555556vw, 10.625rem);
	top: 23.1875rem;
	left: calc(50% - min(23vw, 18.75rem));
}

.mv__copy-decoration:nth-child(5) {
	width: min(5.0694444444vw, 4.5625rem);
	top: 36.375rem;
	right: calc(50% - min(18vw, 14.375rem));
}

.mv__copy-decoration:nth-child(6) {
	width: min(27.0138888889vw, 24.3125rem);
	top: 47.25rem;
	right: calc(50% - 23rem);
}

.mv__copy-decoration:nth-child(7) {
	width: min(14.9305555556vw, 13.4375rem);
	top: 44.6875rem;
	left: calc(50% - min(23vw, 18.75rem));
}

.mv__copy {
	margin-top: 12.875rem;
	font-size: 3.875rem;
	font-weight: var(--fw-bold);
	writing-mode: vertical-rl;
	letter-spacing: 0.08em;
	margin-block: auto;
	line-height: 1.5;
	position: relative;
	translate: 0.1875rem 0;
}

.mv__copy span {
	color: var(--color-gray);
}

.mv__gallery {
	width: -moz-min-content;
	width: min-content;
	grid-column: 3/4;
	display: grid;
	grid-template-columns: auto 1fr;
	-moz-column-gap: 2.5rem;
	column-gap: 2.5rem;
	position: relative;
	translate: 0.625rem 0;
}

.mv__gallery-img picture,
.mv__gallery-img img {
	width: 100%;
	height: auto;
	object-fit: contain;
}

.mv__gallery-img:nth-child(1) {
	grid-column: span 2;
	width: min(43.9583333333vw, 39.5625rem);
	justify-self: center;
	position: relative;
	translate: -0.625rem 0;
}

.mv__gallery-img:nth-child(2) {
	margin-top: 1.25rem;
	width: min(25.5555555556vw, 23rem);
}

.mv__gallery-img:nth-child(3) {
	margin-top: 1.875rem;
	width: min(20.1388888889vw, 18.125rem);
}

.mv__gallery-img:nth-child(4) {
	margin-top: 0.3125rem;
	grid-column: span 2;
	width: min(43.9583333333vw, 39.5625rem);
	justify-self: center;
	position: relative;
	translate: 0.5rem 0;
}

.name {
	padding-top: 11.8125rem;
	padding-bottom: 15.5625rem;
	background-image: url("../images/company/name_bg.png");
}

.name {
	background-size: 87.5vw 100%;
	background-position: left center;
	background-repeat: no-repeat;
}

.name__title {
	margin-left: 5.375rem;
}

.name__contents {
	display: grid;
	grid-template-columns: 38.125rem 1fr;
	margin-right: max(-10.625rem, 50% - 50vw);
	align-items: end;
	gap: min(2.1527777778vw, 1.9375rem);
	margin-top: clamp(-2.125rem, -18.7vw + 14.6875rem, 2.75rem);
}

.name__textarea {
	padding-bottom: 1.3125rem;
}

.name__content-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	line-height: 1.7;
	letter-spacing: -0.04em;
	color: var(--color-red);
}

.name__content-title span {
	font-weight: var(--fw-light);
	color: #818181;
	display: inline-block;
	margin-inline: 0.375rem;
}

.name__text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
	margin-top: 1.875rem;
}

.name__text span {
	color: var(--color-red);
}

.name__text + .name__text {
	margin-top: 1.25rem;
}

.name__img {
	width: 100%;
}

.name__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 630/532;
	object-fit: cover;
	object-position: right top;
}

.news-slider__slide.swiper-slide {
	width: 21.3125rem;
	margin-inline: min(1.3194444444vw, 1.1875rem);
}

.news-slider__link {
	display: block;
}

.news-slider__img {
	border-radius: 1.25rem;
	overflow: hidden;
}

.news-slider__img img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 334/262;
	transition: scale 0.3s;
	object-fit: cover;
}

.news-slider__link:hover .news-slider__img img {
	scale: 1.05;
}

.news-slider__date {
	font-family: var(--font-poppins);
	color: #afafaf;
	font-size: 1rem;
	line-height: 2.5;
	letter-spacing: -0.05em;
	margin-top: 0.6875rem;
	display: inline-block;
}

.news-slider__title {
	margin-top: -0.1875rem;
	font-size: 1.0625rem;
	line-height: 1.7647058824;
	letter-spacing: -0.05em;
}

.news-slider__next,
.news-slider__prev {
	position: absolute;
	display: block;
	width: 4.3125rem;
	height: auto;
	aspect-ratio: 1;
	background-image: url("../images/common/arrow02.png");
}

.news-slider__next,
.news-slider__prev {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 100;
	top: 24%;
	border-radius: 100vh;
	box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.44);
}

.news-slider__next {
	right: calc(50% - min(48vw, 37.5rem));
}

.news-slider__prev {
	left: calc(50% - min(48vw, 37.5rem));
	rotate: 180deg;
}

.pager .wp-pagenavi {
	display: flex;
	gap: 0.75rem;
	justify-content: center;
}

.pager a,
.pager span {
	display: flex;
	width: 3rem;
	height: 3rem;
	border: 1px solid var(--color-blue);
	border-radius: 100vw;
	justify-content: center;
	align-items: center;
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0;
	color: var(--color-blue);
	transition: background-color 0.3s, color 0.3s;
}

.pager .previouspostslink,
.pager .nextpostslink {
	margin-right: 0.875rem;
}

.pager .previouspostslink::before,
.pager .nextpostslink::before {
	content: "";
	display: block;
	width: 0.375rem;
	height: 0.75rem;
	-webkit-mask-image: url(../images/common/arrow04.svg);
	mask-image: url(../images/common/arrow04.svg);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: var(--color-blue);
}

.pager .nextpostslink {
	margin-left: 0.875rem;
	margin-right: 0;
	scale: -1 1;
}

.pager .current,
.pager a:hover {
	color: var(--color-white);
	background-color: var(--color-blue);
}

.pagination .swiper-pagination-bullet {
	margin: 0 !important;
	width: min(15.7638888889vw, 14.1875rem);
	border-radius: 0;
	background-color: var(--color-white);
	height: 0.25rem;
	opacity: 1;
	transition: background-color 0.3s;
}

.pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: var(--color-gray);
}

.pagination.case-slider__pagination .swiper-pagination-bullet {
	width: 25%;
}

.pagination.case-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #131313;
}

.pickup-slider__wrapper {
	gap: min(2.0833333333vw, 1.875rem);
}

.pickup-slider__slide {
	width: 37.5rem;
}

.pickup-slider__image {
	border-radius: 1.25rem;
	overflow: hidden;
}

.pickup-slider__image picture,
.pickup-slider__image img {
	width: 100%;
	height: auto;
	aspect-ratio: 334/262;
	object-fit: cover;
}

.pickup-slider__title.text {
	margin-top: 1rem;
}

.pickup-slider__pagination {
	margin-top: 1.5625rem;
}

.pickup-slider__pagination .swiper-pagination-bullet {
	margin: 0 !important;
	width: min(15.7638888889vw, 14.1875rem);
	border-radius: 0;
	background-color: var(--color-white);
	height: 0.25rem;
	opacity: 1;
	transition: background-color 0.3s;
}

.pickup-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: var(--color-gray);
}

.policy-item {
	display: flex;
	gap: min(4.8611111111vw, 4.375rem);
	margin-right: max(50% - 50vw, -10.625rem);
	position: relative;
}

.policy-item:nth-child(2n) {
	margin-left: max(50% - 50vw, -10.625rem);
	margin-right: 0;
	flex-direction: row-reverse;
	gap: min(6.8055555556vw, 6.125rem);
}

.policy-item:nth-child(3) {
	gap: min(2.7777777778vw, 2.5rem);
}

.policy-item:nth-child(2)::before,
.policy-item:nth-child(3)::before {
	content: "";
	height: auto;
	display: block;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.policy-item:nth-child(2)::before {
	width: 11.9375rem;
	aspect-ratio: 191/199;
	background-image: url("../images/new-construction/policy_deco02.png");
}

.policy-item:nth-child(2)::before {
	top: -5.375rem;
	left: calc(50% - min(48vw, 28.8125rem));
}

.policy-item:nth-child(3)::before {
	width: 8.0625rem;
	aspect-ratio: 129/150;
	background-image: url("../images/new-construction/policy_deco03.png");
}

.policy-item:nth-child(3)::before {
	top: -9.375rem;
	right: calc(50% - min(48vw, 18.75rem));
}

.policy-item__text-area {
	flex: 1;
	margin-top: 1.8125rem;
}

.policy-item__title {
	font-weight: var(--fw-bold);
	font-size: min(2.5vw, 2.25rem);
	line-height: 1.4444444444;
	letter-spacing: -0.05em;
}

.policy-item__text {
	margin-top: 1.375rem;
}

.policy-item__img {
	width: min(47.6388888889vw, 42.875rem);
}

.policy-item:nth-child(2) .policy-item__img {
	width: min(46.8055555556vw, 42.125rem);
}

.policy-item:nth-child(3) .policy-item__img {
	margin-top: 3.75rem;
}

.policy-item__img picture,
.policy-item__img img {
	width: 100%;
	height: auto;
	aspect-ratio: 707/400;
}

.policy-item:nth-child(2) .policy-item__img img {
	aspect-ratio: 673/400;
}

.policy-item ul {
	margin-top: 1rem;
}

.policy-item li {
	font-weight: var(--fw-bold);
	font-size: 1.125rem;
	line-height: 2.2222222222;
	letter-spacing: -0.05em;
	display: flex;
	gap: 0.8125rem;
}

.policy-item li::before {
	content: "";
	width: 1rem;
	height: 0.75rem;
	background-image: url("../images/common/icon_check.png");
}

.policy-item li::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	margin-top: 0.4lh;
}

.policy-item.policy-item--renovation .policy-item__img img {
	aspect-ratio: 669/424;
}

.policy-item.policy-item--renovation:nth-child(2)::before {
	width: 9.125rem;
	aspect-ratio: 129/150;
	background-image: url("../images/new-construction/policy_deco03.png");
}

.policy-item.policy-item--renovation:nth-child(2)::before {
	left: auto;
	top: -11.375rem;
	right: calc(50% - min(51vw, 45.9375rem));
}

.policy-item.policy-item--renovation:nth-child(3)::before {
	width: 13.8125rem;
	aspect-ratio: 191/199;
	background-image: url("../images/new-construction/policy_deco02.png");
}

.policy-item.policy-item--renovation:nth-child(3)::before {
	top: -14.8125rem;
	right: auto;
	left: calc(50% - min(51vw, 47.1875rem));
}

.policy-item.policy-item--renovation ul li {
	font-weight: var(--fw-medium);
}

.policy-item.policy-item--renovation ul li::before {
	background-image: none;
	width: 0.75rem;
	height: 0.75rem;
	border-radius: 100vh;
	background-color: var(--color-red);
}

.policy {
	padding-block: 15.625rem 18.75rem;
	background-image: url("../images/new-construction/policy_bg.png");
}

.policy {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}

.policy::before {
	content: "";
	display: block;
	width: 28rem;
	height: auto;
	aspect-ratio: 448/379;
	background-image: url("../images/new-construction/policy_deco01.png");
}

.policy::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -6.0625rem;
	right: calc(50% - min(48vw, 32.75rem));
}

.policy__title {
	margin-left: 6.9375rem;
}

.policy__content {
	margin-top: 2.25rem;
	display: flex;
	flex-direction: column;
}

.policy__content-item:nth-child(2) {
	margin-top: 12.25rem;
}

.policy__content-item:nth-child(3) {
	margin-top: 10.125rem;
}

.policy.policy--renovation::before {
	background-image: url("../images/renovation/policy_deco01.png");
}

.policy.policy--renovation::before {
	width: 20.1875rem;
	aspect-ratio: 323/327;
	top: -1.0625rem;
	right: calc(50% - min(48vw, 34.75rem));
}

.policy.policy--renovation .policy__content-item:nth-child(2) {
	margin-top: 8.8125rem;
}

.policy.policy--renovation .policy__content-item:nth-child(3) {
	margin-top: 8.8125rem;
}

.privacy-policy__text {
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.privacy-policy__text + .privacy-policy__text {
	margin-top: 0.5lh;
}

.privacy-policy__text strong {
	font-size: 1.125rem;
}

.privacy-policy__list {
	list-style-type: decimal;
	margin-top: 2.5rem;
	padding-left: 1em;
}

.privacy-policy__list-item {
	font-weight: var(--fw-bold);
	font-size: 1.25rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.privacy-policy__list-item + .privacy-policy__list-item {
	margin-top: 2.5rem;
}

.privacy-policy__list-item ol {
	list-style-type: decimal;
	padding-left: 1em;
}

.privacy-policy__list-item li {
	margin-top: 1rem;
	font-size: 1rem;
}

.proceed-item {
	background-color: var(--color-white);
	border: var(--color-gray-b3b) 1px solid;
	border-radius: 1rem;
	padding-block: 2rem;
	position: relative;
	padding-inline: 1rem;
}

.proceed-item::after {
	content: "";
	display: block;
	width: 1.5625rem;
	height: auto;
	aspect-ratio: 25/72;
	background-image: url("../images/common/arrow03.png");
}

.proceed-item::after {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	right: -3.125rem;
	transform: translate(0%, -50%);
}

.proceed-item:nth-child(3)::after,
.proceed-item:nth-child(5)::after {
	display: none;
}

.proceed-item__upper {
	display: contents;
}

.proceed-item__title {
	font-weight: var(--fw-bold);
	font-size: 1.5rem;
	line-height: 1.3333333333;
	letter-spacing: -0.05em;
	text-align: center;
}

.proceed-item__text {
	margin-top: 1rem;
	font-size: 1rem;
	line-height: 1.75;
	letter-spacing: -0.05em;
	padding-inline: 1rem;
}

.proceed-item__icon {
	height: 9.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.proceed-item i {
	display: inline-block;
}

.proceed-item:nth-child(1) i {
	width: 5.4375rem;
}

.proceed-item:nth-child(2) i {
	width: 7.3125rem;
}

.proceed-item:nth-child(3) i {
	width: 5.0625rem;
}

.proceed-item:nth-child(4) i {
	width: 5.0625rem;
}

.proceed-item:nth-child(5) i {
	width: 8rem;
}

.proceed-item__icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.proceed-item.proceed-item--care {
	padding-bottom: 1.4375rem;
	padding-inline: 1.375rem;
}

.proceed-item.proceed-item--care::after {
	display: none;
}

.proceed-item.proceed-item--care .proceed-item__icon {
	height: 9.0625rem;
}

.proceed-item.proceed-item--care .proceed-item__text {
	padding-inline: 0rem;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.proceed-item.proceed-item--care i {
	width: auto;
	height: 5.9375rem;
}

.proceed {
	padding-block: 18.6875rem 13.5625rem;
	background-image: url("../images/new-construction/proceed_bg.png");
}

.proceed {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.proceed__title {
	margin-left: 6.875rem;
}

.proceed__text {
	margin-left: 6.875rem;
	margin-top: 0.875rem;
}

.proceed__text span {
	color: var(--color-red);
}

.proceed__content {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	-moz-column-gap: min(5.8333333333vw, 5.25rem);
	column-gap: min(5.8333333333vw, 5.25rem);
	row-gap: 3.125rem;
	margin-top: 3.625rem;
}

.proceed__content-item {
	width: calc((100% - min(5.8333333333vw, 5.25rem) * 2) / 3);
}

.proceed.proceed--renovation {
	padding-bottom: 12.6875rem;
}

.proceed.proceed--renovation .proceed__content {
	margin-top: 3.25rem;
	row-gap: 2.5rem;
}

.proceed.proceed--renovation .proceed-item__title {
	margin-top: -0.5rem;
}

.proceed.proceed--renovation .proceed-item__text {
	padding: 0;
}

.proceed.proceed--renovation .proceed-item:nth-child(3) i {
	width: 6.6875rem;
}

.proceed.proceed--renovation .proceed-item:nth-child(4) i {
	width: 6.125rem;
}

.proceed.proceed--renovation .proceed-item::after {
	bottom: -11%;
}

.profile__container {
	background-color: var(--color-white);
	border-radius: 1.25rem;
	padding-block: 7.3125rem 8.0625rem;
	position: relative;
}

.profile__container::before {
	content: "";
	display: block;
	width: min(18.75vw, 16.875rem);
	height: auto;
	aspect-ratio: 270/249;
	background-image: url("../images/company/profile_deco01.png");
}

.profile__container::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -1.8125rem;
	right: 2.4375rem;
}

.profile__contents {
	padding-inline: var(--padding-pc);
	max-width: 61.25rem;
	margin-inline: auto;
}

.profile__list-wrap {
	margin-top: 3.0625rem;
}

.service__head {
	margin-left: 6.0625rem;
}

.service__head-text {
	margin-top: 0.5rem;
}

.service__container {
	margin-top: 2.9375rem;
	padding-top: 3.375rem;
	padding-bottom: 12.1875rem;
	background-image: url("../images/guide/service_bg01.png");
}

.service__container {
	background-size: min(87.4305555556vw, 78.6875rem) 100%;
	background-position: right center;
	background-repeat: no-repeat;
	position: relative;
}

.service__container::before {
	content: "";
	display: block;
	width: min(17.2222222222vw, 15.5rem);
	height: auto;
	aspect-ratio: 248/275;
	position: absolute;
	top: -0.875rem;
	right: calc(50% - min(48vw, 38.5rem));
	background-image: url("../images/guide/service_deco01.png");
}

.service__container::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.service__container + .service__container {
	margin-top: 1.125rem;
}

.service__contents-title {
	min-width: 22.875rem;
	font-weight: var(--fw-bold);
	font-size: 3.125rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	color: var(--color-white);
	background-color: var(--color-blue);
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	text-align: center;
	padding-block: 1rem;
	padding-inline: 1.9375rem;
	position: relative;
}

.service__contents-title::before {
	content: "";
	display: block;
	width: 1px;
	height: 2.75rem;
	background-color: inherit;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%, -0.5rem);
}

.service__contents-title::after {
	content: "";
	display: block;
	width: 1px;
	height: 0.5rem;
	background-color: var(--color-white);
	position: absolute;
	bottom: 0%;
	left: 50%;
	transform: translateX(-50%);
}

.service__content {
	margin-top: 2.9375rem;
	display: grid;
	grid-template-columns: 1fr 33.5rem;
	margin-left: max(-10.625rem, 50% - 50vw);
	gap: min(5.9027777778vw, 5.3125rem);
}

.service__content-wrap {
	align-self: center;
	transform: translateY(2.5rem);
}

.service__img img {
	width: 100%;
}

.service__content-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
}

.service__content-text {
	margin-top: 1.875rem;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.service__content-link {
	margin-top: 3rem;
}

.service__container:nth-child(3) {
	padding-top: 4.1875rem;
	background-image: url("../images/guide/service_bg02.png");
}

.service__container:nth-child(3) {
	background-position: left center;
}

.service__container:nth-child(3)::before {
	width: min(17.8472222222vw, 16.0625rem);
	aspect-ratio: 257/256;
	top: -1rem;
	left: calc(50% - min(48vw, 40.625rem));
	background-image: url("../images/guide/service_deco02.png");
}

.service__container:nth-child(3) .service__contents-title {
	background-color: var(--color-green);
	min-width: 26rem;
}

.service__container:nth-child(3) .service__content {
	grid-template-columns: 33.5rem 1fr;
	margin-left: 0;
	margin-right: max(-10.625rem, 50% - 50vw);
}

.side-nav__inner {
	padding-inline: min(1.5972222222vw, 1.4375rem) min(1.3888888889vw, 1.25rem);
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
}

.side-nav__inner a,
.side-nav__hamburger {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 4.375rem;
	height: 3.5625rem;
	border-radius: 0.375rem;
	opacity: 1;
	transition: translate 0.3s;
	position: relative;
	z-index: var(--z-index-hamburger);
}

.side-nav__tel {
	background-color: var(--color-red);
}

.side-nav__tel picture,
.side-nav__tel img {
	width: 1.875rem;
	height: auto;
	object-fit: contain;
}

.side-nav__link {
	border: solid 1px var(--color-black);
	background-color: var(--color-white);
	gap: 0.375rem;
	font-size: 0.75rem;
	letter-spacing: -0.05em;
	font-size: var(--fw-bold);
}

.side-nav__link picture,
.side-nav__link img {
	width: 1.625rem;
	height: auto;
	object-fit: contain;
}

.side-nav__link span {
	font-size: 0.75rem;
}

.side-nav__line {
	background-color: var(--color-green);
	gap: 0;
	font-size: 0.875rem;
	letter-spacing: -0.05em;
	font-size: var(--fw-bold);
	text-transform: uppercase;
	line-height: 1;
	color: var(--color-white);
}

.side-nav__line picture,
.side-nav__line img {
	width: 1.6875rem;
	height: auto;
	object-fit: contain;
}

.sitemap {
	display: flex;
	gap: min(7.4305555556vw, 6.6875rem);
}

.sitemap__list {
	list-style: square;
}

.sitemap__item + .sitemap__item {
	margin-top: 0.9375rem;
}

.sitemap__link {
	font-weight: var(--fw-bold);
	font-size: 1.25rem;
	line-height: 2;
	letter-spacing: -0.05em;
}

.sitemap__item ul {
	margin-top: 0.75rem;
}

.sitemap__item ul a {
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: -0.05em;
	padding-left: 1.5em;
}

.sitemap__item a {
	transition: translate 0.3s;
	position: relative;
	display: block;
}

.sitemap.sitemap--drawer .sitemap__list {
	list-style-position: inside;
}

.sitemap.sitemap--drawer .sitemap__link {
	font-size: 1.25rem;
	display: inline-block;
}

.sitemap.sitemap--drawer .sitemap__item ul a {
	font-size: 1rem;
	padding-left: 2.6875rem;
}

.start {
	padding-bottom: 14.9375rem;
}

.start__head {
	margin-left: 6.0625rem;
}

.start__head-text {
	margin-top: 0.5rem;
}

.start__content-wrap {
	margin-top: 7.8125rem;
}

.start__content-wrap + .start__content-wrap {
	margin-top: 8.75rem;
}

.start__content {
	display: grid;
	grid-template-columns: 31.875rem 1fr;
	margin-right: max(-10.625rem, 50% - 50vw);
	gap: min(6.0416666667vw, 5.4375rem);
	align-items: end;
}

.start__content-wrap:nth-child(3) .start__content {
	grid-template-columns: 1fr 32.5rem;
	margin-right: 0;
	margin-left: max(-10.625rem, 50% - 50vw);
}

.start__content-title {
	font-weight: var(--fw-bold);
	font-size: 2.25rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
}

.start__content-text {
	margin-top: 1.25rem;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.start__content-link {
	margin-top: 2.5rem;
}

.start__content-img img {
	width: 100%;
}

.start__content-img {
	position: relative;
}

.start__content-img::before {
	content: "";
	display: block;
	width: min(18.6111111111vw, 16.75rem);
	height: auto;
	aspect-ratio: 268/162;
	background-image: url("../images/guide/start_deco01.png");
}

.start__content-img::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -3.5625rem;
	left: -4.8125rem;
}

.start__content-wrap:nth-child(3) .start__content-img::before {
	width: min(13.5416666667vw, 12.1875rem);
	aspect-ratio: 195/216;
	background-image: url("../images/guide/start_deco02.png");
}

.start__content-wrap:nth-child(3) .start__content-img::before {
	top: -3.375rem;
	right: -1.875rem;
	left: auto;
}

.start__content-wrap:nth-child(4) .start__content-img::before {
	width: min(20.625vw, 18.5625rem);
	aspect-ratio: 297/147;
	background-image: url("../images/guide/start_deco03.png");
}

.start__content-wrap:nth-child(4) .start__content-img::before {
	top: -2.375rem;
	left: -3.4375rem;
}

.start__text-wrap {
	margin-top: 9.375rem;
}

.start__text {
	font-weight: var(--fw-bold);
	font-size: 1.8125rem;
	line-height: 1.5;
	letter-spacing: -0.05em;
	text-align: center;
}

.start__text span {
	display: inline-block;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--color-red);
}

.start__text span + span {
	margin-top: 1.8125rem;
}

.start__wrap-inner {
	position: relative;
}

.start__wrap-inner::before {
	content: "";
	display: block;
	width: min(15.9722222222vw, 14.375rem);
	height: auto;
	aspect-ratio: 230/270;
	background-image: url("../images/guide/start_deco04.png");
}

.start__wrap-inner::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: calc(50% - min(50vw, 40.3125rem));
}

.start__text {
	position: relative;
}

.start__text::before {
	content: "";
	display: block;
	width: min(15.5555555556vw, 14rem);
	height: auto;
	aspect-ratio: 224/238;
	background-image: url("../images/guide/start_deco05.png");
}

.start__text::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 1.25rem;
	right: calc(50% - min(49vw, 39.625rem));
}

.step {
	display: grid;
	grid-template-columns: 1fr 33.5rem;
	gap: min(6.5277777778vw, 5.875rem);
	margin-left: max(-10.625rem, 50% - 50vw);
}

.step__img:nth-child(1) {
	width: min(40.8333333333vw, 36.75rem);
}

.step__img:nth-child(2) {
	width: min(30.6944444444vw, 27.625rem);
	margin-left: auto;
	margin-top: -5.4375rem;
}

.step__img img {
	width: 100%;
}

.step__content {
	margin-top: 1.375rem;
}

.step__text {
	margin-top: 1.875rem;
}

.step__text + .step__text {
	margin-top: 1.25rem;
}

.step__link {
	margin-top: 3.625rem;
}

.step__link + .step__link {
	margin-top: 1.125rem;
}

.step.step--03 {
	padding-left: min(5.5555555556vw, 5rem);
	grid-template-columns: 33.5rem 1fr;
	gap: min(4.6527777778vw, 4.1875rem);
	margin-right: max(-10.625rem, 50% - 50vw);
	margin-left: 0;
}

.step--03 .step__img {
	width: 100%;
}

.step--03 .step__content {
	margin-top: 0.875rem;
}

.step--04 .step__content {
	margin-top: 1.25rem;
}

.step--04 .step {
	gap: min(6.5277777778vw, 5.875rem);
}

.step01 {
	padding-top: 10.4375rem;
	padding-bottom: 13.25rem;
	background-image: url("../images/about/step01_bg.png");
}

.step01 {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.step01__head-text {
	margin-top: 1.625rem;
}

.step01__container {
	background-color: var(--color-white);
	border-radius: 1.875rem;
	padding-block: 3.75rem 5.875rem;
}

.step01__container-inner {
	padding-inline: 3.625rem;
}

.step01__head-wrap {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-right: max(-9.625rem, 50% - 50vw);
	gap: min(2.7777777778vw, 2.5rem);
	align-items: center;
}

.step01__head-image img {
	width: 100%;
}

.step01__bubbles {
	margin-top: 3.75rem;
	display: grid;
	grid-template-columns: repeat(3, auto);
	max-width: 61.4375rem;
	margin-inline: auto;
}

.step01__bubble {
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	justify-content: start;
}

.step01__bubble::before {
	content: "";
	display: block;
	height: auto;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.step01__bubble:nth-child(1) {
	width: 19.375rem;
}

.step01__bubble:nth-child(1)::before {
	margin-top: 1.75rem;
	width: min(11.875vw, 10.6875rem);
	aspect-ratio: 171/173;
	background-image: url("../images/about/step01_deco01.png");
}

.step01__bubble:nth-child(2) {
	width: 18.8125rem;
	margin-left: 0.8125rem;
	margin-top: 5.3125rem;
}

.step01__bubble:nth-child(2)::before {
	margin-top: 0.125rem;
	width: min(10.9027777778vw, 9.8125rem);
	aspect-ratio: 157/174;
	translate: 1.25rem;
	background-image: url("../images/about/step01_deco02.png");
}

.step01__bubble:nth-child(3) {
	width: 20.8125rem;
	margin-left: 1.625rem;
	margin-top: 1.5rem;
}

.step01__bubble:nth-child(3)::before {
	margin-top: 0.8125rem;
	width: min(12.0833333333vw, 10.875rem);
	aspect-ratio: 174/160;
	translate: -1.75rem;
	background-image: url("../images/about/step01_deco03.png");
}

.step01__bubble img {
	width: 100%;
}

.step01__contents {
	margin-top: 1.9375rem;
	display: grid;
	grid-template-columns: 1fr auto;
	margin-left: max(-7.25rem, 50% - 50vw);
	gap: min(4.375vw, 3.9375rem);
	align-items: center;
	position: relative;
}

.step01__contents::before {
	content: "";
	display: block;
	height: auto;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 9.125rem;
	aspect-ratio: 146/170;
	background-image: url("../images/about/step01_deco04.png");
}

.step01__contents::before {
	position: absolute;
	bottom: -5rem;
	right: calc(50% - min(48vw, 40.1875rem));
}

.step01__content-img img {
	width: 100%;
}

.step01__content-text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.step01__links {
	margin-top: 3.6875rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem;
}

.step03 {
	padding-top: 14.875rem;
	padding-bottom: 10.875rem;
	background-image: url("../images/about/step03_bg.png");
}

.step03 {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.sub-contact__title {
	font-weight: var(--fw-bold);
	font-size: 2rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
	margin-bottom: 1.5rem;
}

.sub-contact__text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.sub-contact__text + .sub-contact__text {
	margin-top: 1lh;
}

.sub-contact__text a {
	text-transform: uppercase;
	font-weight: var(--fw-medium);
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	color: var(--color-green);
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding-bottom: 0.25rem;
	border-bottom: 1px solid currentColor;
	width: -moz-fit-content;
	width: fit-content;
}

.sub-contact__text a::before {
	content: "";
	width: 1.375rem;
	height: 1.5625rem;
	background-image: url("../images/common/arrow05.png");
}

.sub-contact__text a::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.sub-contact__form-wrap {
	margin-top: 4.25rem;
}

.sub-contact__link {
	margin-top: 5rem;
	text-align: center;
}

.support-intro {
	padding-bottom: 15rem;
	background-image: url("../images/support/support-intro_bg.png");
}

.support-intro {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.support-intro__inner.inner {
	position: relative;
}

.support-intro__inner.inner::before {
	content: "";
	display: block;
	width: 14.5rem;
	height: auto;
	aspect-ratio: 232/240;
	position: absolute;
	bottom: -6.5rem;
	left: calc(50% - min(48vw, 37.5rem));
	background-image: url("../images/support/support-intro_deco01.png");
}

.support-intro__inner.inner::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.support-intro__content-wrapper {
	position: relative;
}

.support-intro__content-wrapper::before {
	content: "";
	display: block;
	width: 14.375rem;
	height: auto;
	aspect-ratio: 230/233;
	position: absolute;
	bottom: -6.625rem;
	right: calc(50% - min(48vw, 34.625rem));
	background-image: url("../images/support/support-intro_deco02.png");
}

.support-intro__content-wrapper::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.support-intro__title {
	text-align: center;
	font-weight: var(--fw-bold);
	font-size: 2.9375rem;
	line-height: 1.5;
	letter-spacing: -0.04em;
	color: var(--color-blue);
}

.support-intro__text {
	margin-top: 3.1875rem;
	text-align: center;
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: -0.04em;
}

.support-intro__text + .support-intro__text {
	margin-top: 1.6875rem;
}

.support-intro.support-intro--about {
	padding-bottom: 17.5rem;
	background-image: url("../images/about/support-intro_bg.png");
}

.support-intro--about .support-intro__title {
	color: var(--color-green);
}

.support-intro--about .support-intro__inner.inner {
	position: relative;
}

.support-intro--about .support-intro__inner.inner::before {
	width: 18.625rem;
	aspect-ratio: 298/349;
	bottom: -11.5rem;
	left: calc(50% - min(48vw, 37.5rem));
	background-image: url("../images/about/support-intro_deco01.png");
}

.support-intro--about .support-intro__content-wrapper {
	position: relative;
}

.support-intro--about .support-intro__content-wrapper::before {
	width: 17.5625rem;
	aspect-ratio: 281/325;
	bottom: -12.625rem;
	right: calc(50% - min(48vw, 38.625rem));
	background-image: url("../images/about/support-intro_deco02.png");
}

.support-intro--about .support-intro__content-wrapper::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.text {
	font-size: 1.125rem;
	line-height: 2.3888888889;
	letter-spacing: -0.05em;
}

.text--white {
	color: var(--color-white);
}

.text.text--md {
	font-size: 1.875rem;
	line-height: 1.3333333333;
}

.text.commitment-item__text {
	line-height: 1.8333333333;
}

.title-square {
	font-weight: var(--color-black);
	font-size: 3.125rem;
	width: -moz-fit-content;
	width: fit-content;
	border: 1px solid var(--color-black);
	padding-block: 0.8125rem;
	padding-inline: 1.25rem;
	position: relative;
	margin-inline: auto;
}

.title-square::after {
	content: "";
	display: block;
	width: 1px;
	height: 2.9375rem;
	background-color: var(--color-black);
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(50%, 2rem);
}

.title {
	position: relative;
}

.title__md-text {
	font-weight: var(--fw-bold);
	font-size: 1.875rem;
	line-height: 2.9666666667;
	letter-spacing: -0.05em;
	margin-bottom: -2rem;
}

.title__ja {
	font-weight: var(--fw-bold);
	font-size: 3.125rem;
	line-height: 1.78;
	letter-spacing: -0.05em;
}

.title__image {
	position: absolute;
	overflow: hidden;
}

.title__image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #000;
	transform: translateX(-100%);
}

.title__image picture,
.title__image img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.title--pickup .title__image {
	width: 16.9375rem;
	top: -5.625rem;
	left: calc(50% - min(54vw, 48.125rem));
}

.title--case .title__image {
	width: 8.625rem;
	top: -3.1875rem;
	left: calc(50% - min(48vw, 43.75rem));
}

.title--voice .title__image {
	width: 8.75rem;
	top: -4.625rem;
	left: calc(50% - min(51vw, 39.6875rem));
}

.title--voice-sub .title__image {
	width: 8.75rem;
	top: -3.75rem;
	left: calc(50% - min(49vw, 39.9375rem));
}

.title--news .title__image {
	width: 25.3125rem;
	top: -8.75rem;
	left: calc(50% - min(49vw, 43.875rem));
}

.title--access .title__image {
	width: 11.9375rem;
	top: -4.25rem;
	left: calc(50% - min(48vw, 42rem));
}

.title--contact .title__image {
	width: 14.375rem;
	top: -6.25rem;
	left: calc(50% - min(48vw, 43.75rem));
}

.title--custom-home .title__image {
	width: 24.0625rem;
	top: -7.625rem;
	left: calc(50% - min(54vw, 43.75rem));
}

.title--free-design .title__image {
	width: 21.1875rem;
	top: -6.25rem;
	left: calc(50% - min(54vw, 44.5rem));
}

.title--policy .title__image {
	width: 13.9375rem;
	top: -5rem;
	left: calc(50% - min(54vw, 43.75rem));
}

.title--commitment .title__image {
	width: 21.875rem;
	top: -6rem;
	left: calc(50% - min(54vw, 43.75rem));
}

.title--proceed .title__image {
	width: 28.6875rem;
	top: -8.8125rem;
	left: calc(50% - min(54vw, 44.25rem));
}

.title--faq .title__image {
	width: 7.0625rem;
	top: -4.4375rem;
	left: calc(50% - min(49vw, 35.25rem));
}

.title--profile .title__image {
	width: 15.25rem;
	top: -6.375rem;
	left: calc(50% - min(49vw, 39.375rem));
}

.title--name .title__image {
	width: 21.75rem;
	top: -7.5625rem;
	left: calc(50% - min(55vw, 43.25rem));
}

.title--message .title__image {
	width: 19.375rem;
	top: -9.3125rem;
	left: calc(50% - min(49vw, 42.25rem));
}

.title--sub-access .title__image {
	width: 13.75rem;
	top: -5.8125rem;
	left: calc(50% - min(51vw, 39.3125rem));
}

.title--maintenance .title__image {
	width: clamp(22.5rem, 28.125vw, 25.3125rem);
	top: -7rem;
	left: calc(50% - min(51vw, 43.3125rem));
}

.title--consultation .title__image {
	width: clamp(30rem, 38.5416666667vw, 34.6875rem);
	top: -10rem;
	left: calc(50% - min(51vw, 44.5rem));
}

.title--column .title__image {
	width: 15.5rem;
	top: -7rem;
	left: calc(50% - min(51vw, 38.75rem));
}

.title--column .title__ja {
	font-size: 2.5rem;
}

.title--flow .title__image {
	width: 9.25rem;
	top: -7rem;
	left: calc(50% - min(51vw, 38.75rem));
}

.title--service .title__image {
	width: 23.875rem;
	top: -8rem;
	left: calc(50% - min(53vw, 44.0625rem));
}

.title--start .title__image {
	width: 27.125rem;
	top: -8.9375rem;
	left: calc(50% - min(53vw, 43rem));
}

.title--step01 .title__image {
	width: clamp(12.5rem, 18.8194444444vw, 16.9375rem);
	top: -6.9375rem;
	left: calc(50% - min(32vw, 26.25rem));
}

.title--step02 .title__image {
	width: clamp(12.5rem, 20.3472222222vw, 18.3125rem);
	top: -6.25rem;
	left: -13.0625rem;
}

.title--step02 .title__ja {
	line-height: 1.5;
}

.title--step03 .title__image {
	width: clamp(12.5rem, 20.2777777778vw, 18.25rem);
	top: -6.9375rem;
	left: calc(50% - min(32vw, 28rem));
}

.title--step03 .title__ja {
	line-height: 1.5;
}

.title--step04 .title__image {
	width: clamp(12.5rem, 20.3472222222vw, 18.3125rem);
	top: -6.25rem;
	left: -13.0625rem;
}

.title--step04 .title__ja {
	line-height: 1.5;
}

.title--care .title__image {
	width: clamp(12.5rem, 35.4861111111vw, 31.9375rem);
	top: -10.375rem;
	left: calc(50% - min(54vw, 45.5rem));
}

.title--about-faq .title__image {
	width: clamp(7.5rem, 10.2777777778vw, 9.25rem);
	top: -4.625rem;
	left: calc(50% - min(50vw, 35.625rem));
}

.title--about-contact .title__image {
	width: clamp(12.5rem, 15.9722222222vw, 14.375rem);
	top: -6.875rem;
	left: calc(50% - min(50vw, 39.75rem));
}

.title--renovation .title__image {
	width: clamp(14.375rem, 38.1944444444vw, 34.375rem);
	top: -10.5625rem;
	left: calc(50% - min(50vw, 43.75rem));
}

.title--redesign .title__image {
	width: clamp(14.375rem, 38.125vw, 34.3125rem);
	top: -10.3125rem;
	left: calc(50% - min(48vw, 42.75rem));
}

.title--redesign .title__ja {
	font-size: 2.625rem;
}

.title--renovation-policy .title__image {
	width: 13.9375rem;
	top: -3.4375rem;
	left: calc(50% - min(54vw, 43.75rem));
}

.title--renovation-case .title__image {
	width: 10.1875rem;
	top: -4.1875rem;
	left: calc(50% - min(53vw, 41.25rem));
}

.title--renovation-commitment .title__image {
	width: 24.125rem;
	top: -6.75rem;
	left: calc(50% - min(54vw, 43.75rem));
}

.title--renovation-proceed .title__image {
	width: 31.125rem;
	top: -10rem;
	left: calc(50% - min(54vw, 45.25rem));
}

.top-access__title {
	margin-left: 5rem;
}

.top-access__contents {
	margin-top: 1rem;
	margin-left: 7rem;
	gap: min(3.3333333333vw, 3rem);
	display: grid;
	grid-template-columns: 1fr 22.5625rem;
}

.top-access__text + .top-access__text {
	margin-top: 2.125rem;
	padding-bottom: 3.25rem;
	background-image: url("../images/top/access_border.png");
}

.top-access__text + .top-access__text {
	background-size: 23.9375rem auto;
	background-position: left bottom;
	background-repeat: no-repeat;
}

.top-access__address {
	margin-top: 1.875rem;
	font-size: 1rem;
	line-height: 1.6875;
	letter-spacing: -0.05em;
}

.top-access__info {
	margin-top: 0.625rem;
	font-size: 1rem;
	line-height: 1.6875;
	letter-spacing: -0.05em;
}

.top-access__info span {
	display: inline-block;
	padding: 0.125rem 0.875rem;
	background-color: #7c7c7c;
	color: var(--color-white);
	border-radius: 0.3125rem;
	margin-right: 0.9375rem;
}

.top-access__link {
	margin-top: 3.9375rem;
}

.top-access__map {
	aspect-ratio: 361/540;
}

.top-access__map iframe {
	width: 100%;
	height: 100%;
}

.top-case {
	background-image: url("../images/top/case_bg.jpg");
}

.top-case {
	background-size: 128.6111111111vw auto;
	background-position: right bottom;
	background-repeat: no-repeat;
	padding-bottom: 9.6875rem;
	position: relative;
}

.top-case::before {
	content: "";
	display: block;
	width: 24.125rem;
	height: auto;
	aspect-ratio: 386/355;
	background-image: url("../images/top/case_decoration01.png");
}

.top-case::before {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -15.375rem;
	right: calc(50% - min(48vw, 37.5rem));
}

.top-case__title {
	margin-left: 7.1875rem;
}

.top-case__text {
	margin-left: 7.1875rem;
	margin-top: 0.625rem;
}

.top-case__slider {
	margin-top: 5rem;
	margin-inline: calc(50% - 50vw);
}

.top-case__link {
	position: relative;
	z-index: 1;
	margin-top: -3.25rem;
	text-align: right;
}

.top-contact {
	background-image: url("../images/top/contact_bg.png");
}

.top-contact {
	background-size: cover;
	background-position: right top;
	background-repeat: no-repeat;
	padding-block: 13.375rem 4.25rem;
	position: relative;
}

.top-contact::before {
	content: "";
	display: block;
	width: 29.3125rem;
	height: auto;
	aspect-ratio: 469/284;
	background-image: url("../images/top/contact_decoration01.png");
}

.top-contact::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -11.8125rem;
	left: calc(50% - min(48vw, 6.3125rem));
}

.top-contact__container {
	background-color: var(--color-white);
	border-radius: 1.5rem;
	padding-block: 10.3125rem 5.625rem;
	padding-inline: 4.25rem;
	position: relative;
}

.top-contact__container::before {
	content: "";
	display: block;
	width: 21.0625rem;
	height: auto;
	aspect-ratio: 337/363;
	background-image: url("../images/top/contact_decoration02.png");
}

.top-contact__container::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 3.75rem;
	right: calc(50% - min(48vw, 35.9375rem));
}

.top-contact__title {
	margin-left: 2.625rem;
}

.top-contact__text {
	margin-top: 1.25rem;
	margin-left: 2.625rem;
}

.top-contact__text + .top-contact__text {
	margin-top: 2rem;
}

.top-contact__links {
	margin-top: 5.375rem;
}

.top-contact.top-contact--sub {
	background-size: 100% 110%;
	background-position: center top -6.25rem;
	padding-block: 9.375rem 7rem;
}

.top-contact.top-contact--sub::before {
	display: none;
}

.top-contact--sub .top-contact__container {
	padding-top: 11.125rem;
	padding-bottom: 7.875rem;
}

.top-contact--sub .top-contact__container::before {
	width: clamp(12.5rem, 22.1527777778vw, 19.9375rem);
	aspect-ratio: 319/353;
	background-image: url("../images/about/contact_deco01.png");
}

.top-contact--sub .top-contact__container::before {
	top: 3.75rem;
	right: calc(50% - min(48vw, 36.9375rem));
}

.top-contact--sub .top-contact__links {
	margin-top: 2.75rem;
}

.top-intro {
	position: relative;
}

.top-intro::before {
	content: "";
	display: block;
	width: 16.6875rem;
	height: auto;
	aspect-ratio: 267/293;
	background-image: url("../images/top/intro_decoration01.png");
}

.top-intro::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -2.25rem;
	right: calc(50% - min(48vw, 38.75rem));
}

.top-intro__inner.inner {
	max-width: 100%;
	position: relative;
	display: grid;
	grid-template-columns: min(45.625vw, 41.0625rem) 1fr;
	padding-left: 0;
}

.top-intro__image {
	width: min(53.2638888889vw, 47.9375rem);
	grid-column: 1/2;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.top-intro__image picture,
.top-intro__image img {
	display: block;
	width: 100%;
	object-position: right top;
	height: auto;
	aspect-ratio: 767/707;
}

.top-intro__title {
	margin-top: 6.875rem;
	grid-column: 2/3;
	letter-spacing: 0.03em;
}

.top-intro__content {
	grid-column: 2/3;
	margin-top: 6.25rem;
	margin-left: min(14.3055555556vw, 12.875rem);
}

.top-intro__link {
	margin-top: 2.75rem;
}

.top-news {
	padding-block: 20.9375rem 0;
	background-image: url("../images/top/news_bg.jpg");
}

.top-news {
	background-size: 203.8194444444vw 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}

.top-news::before {
	content: "";
	display: block;
	width: 27.8125rem;
	height: auto;
	aspect-ratio: 445/468;
	background-image: url("../images/top/news_decoration01.png");
}

.top-news::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -4.125rem;
	right: calc(50% - min(48vw, 30.9375rem));
}

.top-news__title {
	margin-left: 7rem;
}

.top-news__text {
	margin-top: 1.25rem;
	margin-left: 7rem;
}

.top-news__slider {
	margin-top: 5.6875rem;
	margin-inline: calc(50% - 50vw);
}

.top-news__link {
	margin-top: 5.75rem;
	text-align: center;
}

.top-news__boundary {
	margin-inline: calc(50% - 50vw);
	max-width: 100vw;
	height: 34.4375rem;
	background-image: url("../images/top/news_boundary.png");
}

.top-news__boundary {
	background-size: cover;
	background-position: right top;
	background-repeat: no-repeat;
	position: relative;
	margin-top: 11.125rem;
}

.top-news__boundary::before {
	content: "";
	display: block;
	width: 25.8125rem;
	height: auto;
	aspect-ratio: 413/203;
	position: absolute;
	top: -3.125rem;
	left: calc(50% - min(48vw, 35.625rem));
	background-image: url("../images/top/news_decoration02.png");
}

.top-news__boundary::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.top-pickup {
	position: relative;
}

.top-pickup::before {
	content: "";
	display: block;
	width: 16.0625rem;
	height: auto;
	aspect-ratio: 257/331;
	background-image: url("../images/top/pickup_decoration01.png");
}

.top-pickup::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -5.4375rem;
	right: calc(50% - min(48vw, 12.375rem));
}

.top-pickup__content {
	margin-right: calc(50% - 50vw);
	background-image: url("../images/top/pickup_bg.png");
}

.top-pickup__content {
	background-size: cover;
	background-position: left top;
	background-repeat: no-repeat;
	padding-block: 12.6875rem 8.125rem;
	padding-left: min(9.1666666667vw, 8.25rem);
}

.top-pickup__text {
	margin-top: 0.875rem;
}

.top-pickup__slide {
	margin-top: 2.5rem;
	padding-right: 2.5rem;
}

.top-service {
	padding-block: 16.1875rem 14.8125rem;
	background-image: url("../images/top/service_bg.png");
}

.top-service {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.top-service__inner.inner {
	display: grid;
	grid-template-columns: auto 1fr;
}

.top-service__title.copy {
	font-size: 2rem;
}

.top-service__text {
	margin-top: 3.5625rem;
}

.top-service__text + .top-service__text {
	margin-top: 1.5625rem;
}

.top-service__link {
	margin-top: 3.375rem;
	text-align: center;
}

.top-service__link + .top-service__link {
	margin-top: 1.75rem;
}

.top-service__figure-wrap {
	align-self: center;
	justify-self: center;
}

.top-service__figure {
	position: relative;
	width: min(27.0138888889vw, 24.3125rem);
	height: auto;
	aspect-ratio: 1;
	translate: 1.25rem 0.5rem;
}

.top-service__figure::before,
.top-service__figure::after {
	content: "";
	height: auto;
	aspect-ratio: 1;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 100vh;
	border: 0.0625rem var(--color-gray-e3e) solid;
}

.top-service__figure::before {
	width: 100%;
}

.top-service__figure::after {
	width: min(20.6944444444vw, 18.625rem);
	opacity: 0.5;
}

.top-service__figure-item {
	width: min(8.3333333333vw, 7.5rem);
	height: auto;
	aspect-ratio: 1;
	border-radius: 100vh;
	background-color: var(--color-gray-e3e);
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0.125rem solid var(--color-white);
	font-size: clamp(12px, 1.0416666667vw, 0.9375rem);
	letter-spacing: -0.075em;
	position: absolute;
	translate: -50% -50%;
}

.top-service__figure-item:nth-child(1) {
	top: 0.375rem;
	left: 50%;
}

.top-service__figure-item:nth-child(2) {
	top: 16%;
	left: 83%;
}

.top-service__figure-item:nth-child(3) {
	top: 50%;
	left: 98%;
}

.top-service__figure-item:nth-child(4) {
	top: 85%;
	left: 83%;
}

.top-service__figure-item:nth-child(5) {
	top: 97%;
	left: 50%;
}

.top-service__figure-item:nth-child(6) {
	top: 85%;
	left: 15%;
}

.top-service__figure-item:nth-child(7) {
	top: 50%;
	left: 0%;
}

.top-service__figure-item:nth-child(8) {
	top: 16%;
	left: 15%;
}

.top-voice {
	position: relative;
}

.top-voice::before {
	content: "";
	display: block;
	width: 25.4375rem;
	height: auto;
	aspect-ratio: 407/424;
	background-image: url("../images/top/voice_decoration01.png");
}

.top-voice::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: -8.125rem;
	right: calc(50% - min(48vw, 35rem));
}

.top-voice__inner.inner {
	padding-inline: 1.875rem;
}

.top-voice__content-wrap {
	margin-top: 5.5rem;
	margin-right: max(-10.9375rem, 50% - 50vw);
}

.top-voice__content {
	margin-left: 1.875rem;
}

.top-voice__text {
	font-weight: var(--fw-bold);
	font-size: 1.6875rem;
	line-height: 1.6666666667;
	letter-spacing: -0.05em;
	margin-top: 1.25rem;
}

.top-voice__link {
	text-align: right;
	margin-top: -2.5rem;
}

.topics-article__meta {
	display: flex;
	gap: 1.8125rem;
	align-items: center;
}

.archives-item__date {
	font-family: var(--font-poppins);
	font-weight: var(--fw-medium);
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0;
}

.topics-article__cat {
	font-weight: var(--fw-medium);
	font-size: 1.0625rem;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--color-white);
	background-color: var(--color-red);
	padding-inline: 0.6875rem;
	border-radius: 0.1875rem;
	height: -moz-fit-content;
	height: fit-content;
}

.topics-article__title {
	margin-top: 1.25rem;
	font-weight: var(--fw-medium);
	font-size: 1.5rem;
	line-height: 1.9;
	letter-spacing: 0;
}

.topics-article__thumbnail {
	width: 100%;
	border-radius: 1.375rem;
	overflow: hidden;
	margin-top: 2.5rem;
}

.topics-article__thumbnail img {
	width: 100%;
	height: auto;
	aspect-ratio: 880/530;
	object-fit: cover;
}

.topics-article__main {
	margin-top: 3.8125rem;
}

.topics-article__main p {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: 0;
}

.topics-article__main h2 {
	font-weight: var(--fw-medium);
	font-size: 1.5rem;
	line-height: 2.2;
	letter-spacing: 0;
	padding-left: 1.625rem;
	border-left: 5px solid var(--color-red);
}

.topics-article__main h3 {
	font-weight: var(--fw-medium);
	font-size: 1.375rem;
	line-height: 2.2;
	letter-spacing: 0;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--color-gray-d9d);
	position: relative;
}

.topics-article__main h3::after {
	content: "";
	width: min(15.2777777778vw, 13.75rem);
	height: 2px;
	background-color: var(--color-red);
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translateY(50%);
}

.topics-article__main img {
	width: 100%;
	height: auto;
	border-radius: 1.375rem;
}

.voice-article__title {
	font-weight: var(--fw-medium);
	font-size: 2rem;
	line-height: 1.9;
	letter-spacing: 0;
}

.voice-article__thumbnail {
	width: 100%;
	border-radius: 1.375rem;
	overflow: hidden;
	margin-top: 1.875rem;
}

.voice-article__thumbnail img {
	width: 100%;
	height: auto;
	aspect-ratio: 880/530;
	object-fit: cover;
}

.voice-article__list {
	margin-top: 3.8125rem;
	display: grid;
	grid-template-columns: min(14.1666666667vw, 12.75rem) 1fr;
	padding-bottom: 1.5625rem;
	border-bottom: 1px solid var(--color-gray-cbc);
	align-items: start;
}

.voice-article__list + .voice-article__list {
	margin-top: 1.75rem;
}

.voice-article__list-title {
	font-weight: var(--fw-bold);
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--color-green);
}

.voice-article__list-text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.voice-article__main {
	margin-top: 3.8125rem;
}

.voice-article__main p {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: 0;
	white-space: pre-line;
}

.voice-article__main h2 {
	font-weight: var(--fw-medium);
	font-size: 1.5rem;
	line-height: 2.2;
	letter-spacing: 0;
	padding-left: 1.625rem;
	border-left: 5px solid var(--color-red);
}

.voice-article__comment {
	margin-top: 5.9375rem;
	padding-block: 2.25rem 2.8125rem;
	padding-inline: min(4.2361111111vw, 3.8125rem);
	background-color: var(--color-gray-f8f);
	border-radius: 1.5625rem;
	position: relative;
}

.voice-article__comment::before {
	content: "";
	width: 14.1875rem;
	height: auto;
	aspect-ratio: 340/184;
	background-image: url("../images/voice/comment.png");
}

.voice-article__comment::before {
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-26%, -49%);
}

.voice-article__comment-title {
	font-weight: var(--fw-bold);
	font-size: 1.875rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.voice-article__comment-text {
	margin-top: 0.625rem;
	font-weight: var(--fw-medium);
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0;
	white-space: pre-line;
}

.voice-card {
	background-size: cover;
	background-position: top;
	background-repeat: no-repeat;
	width: 28.625rem;
	aspect-ratio: 458/545;
	margin-right: 3.125rem;
	clip-path: polygon(0 13%, 100% 0, 100% 100%, 0% 100%);
}

.voice-card__link {
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	justify-content: end;
	padding-block: 2.5rem;
	padding-inline: min(3.125vw, 2.8125rem) min(2.7777777778vw, 2.5rem);
	position: relative;
	z-index: 1;
}

.voice-card__link::before {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-image: linear-gradient(180deg, transparent 50%, var(--color-black) 100%);
	opacity: 0.73;
	transition: opacity 0.3s;
}

.voice-card__title {
	font-weight: var(--fw-bold);
	font-size: 1.9375rem;
	line-height: 1.9032258065;
	letter-spacing: -0.05em;
	color: var(--color-white);
}

.voice-card__text {
	font-weight: var(--fw-regular);
	font-size: 0.9375rem;
	line-height: 1.9333333333;
	letter-spacing: -0.05em;
	color: var(--color-white);
}

.voice-item {
	background-size: cover;
	background-position: top;
	background-repeat: no-repeat;
}

.voice-item:nth-child(n+1) {
	clip-path: polygon(0 0, 100% 9%, 100% 100%, 0% 100%);
}

.voice-item:nth-child(2) {
	clip-path: polygon(0 7%, 100% 0, 100% 100%, 0% 100%);
}

.voice-item:nth-child(3) {
	clip-path: polygon(0 0, 100% 9%, 100% 100%, 0% 100%);
}

.voice-item__link {
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	justify-content: end;
	padding-block: 2.5rem;
	padding-inline: min(1.7361111111vw, 1.5625rem);
	position: relative;
	z-index: 1;
}

.voice-item__link::before {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-image: linear-gradient(180deg, transparent 50%, var(--color-black) 100%);
	opacity: 0.73;
	transition: opacity 0.3s;
}

.voice-item__title {
	font-weight: var(--fw-bold);
	font-size: 1.5rem;
	color: var(--color-white);
	letter-spacing: -0.05em;
}

.voice-item__text {
	font-weight: var(--fw-regular);
	font-size: max(10px, 0.9375rem);
	line-height: 1.9333333333;
	letter-spacing: -0.05em;
	color: var(--color-white);
}

.voice-slider__pagination {
	margin-top: 5.3125rem;
}

.voice-slider__pagination .swiper-pagination-bullet {
	margin: 0 !important;
	width: min(12.5vw, 11.25rem);
	border-radius: 0;
	background-color: #f2f2f2;
	height: 0.25rem;
	opacity: 1;
	transition: background-color 0.3s;
}

.voice-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: var(--color-black);
}

.voice__title {
	margin-left: 6.875rem;
}

.voice__text {
	margin-left: 6.875rem;
}

.voice__list {
	margin-top: 2.875rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.0625rem;
	height: 29.1875rem;
	margin-inline: max(-6.875rem, 50% - 45vw);
}

.voice__link {
	text-align: center;
	margin-top: 4.125rem;
}

.works-article__head {
	display: flex;
	gap: 2.5rem;
	align-items: center;
}

.works-article__cat {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0.04em;
	color: var(--color-white);
	background-color: var(--color-red);
	border-radius: 0.1875rem;
	padding: 0.1875rem 1rem;
}

.works-article__title {
	font-weight: var(--fw-medium);
	font-size: 2rem;
	line-height: 1.9;
	letter-spacing: 0;
}

.works-article__slider-wrapper {
	position: relative;
	margin-top: 1.875rem;
}

.works-article__slider-prev,
.works-article__slider-next {
	display: block;
	width: 1.6875rem;
	height: 6rem;
	background-image: url("../images/common/arrow03.png");
}

.works-article__slider-prev,
.works-article__slider-next {
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(190%, -68%);
	z-index: 1;
}

.works-article__slider-prev {
	scale: -1 1;
	right: auto;
	left: 0;
}

.works-article__list {
	margin-top: 3.8125rem;
	display: grid;
	grid-template-columns: min(14.1666666667vw, 12.75rem) 1fr;
	padding-bottom: 1.5625rem;
	border-bottom: 1px solid var(--color-gray-cbc);
	align-items: start;
}

.works-article__list + .works-article__list {
	margin-top: 1.75rem;
}

.works-article__list-title {
	font-weight: var(--fw-bold);
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--color-green);
}

.works-article__list-text {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: 0;
}

.works-article__main {
	margin-top: 3.75rem;
}

.works-article__main img {
	width: 100%;
	height: auto;
	aspect-ratio: 880/530;
	object-fit: cover;
	border-radius: 1.375rem;
}

.works-article__main p {
	font-weight: var(--fw-medium);
	font-size: 1.125rem;
	line-height: 2.2;
	letter-spacing: 0;
	white-space: pre-line;
}

.works-article__main img + p {
	margin-top: 1.25rem;
}

.works-article__main p + img {
	margin-top: 3.3125rem;
}

.works-slider__slide {
	width: min(23.1944444444vw, 20.875rem);
	margin-inline: 1.53125rem;
}

.inline-block {
	display: inline-block;
}

.kaku-motion::before {
	opacity: 0;
	transform: rotate(0deg);
	animation: fadeIn 0.6s ease forwards, rotate5 0.7s steps(2, end) infinite alternate;
	animation-delay: 0s, 0.6s;
}

.kaku-motion.kaku-motion--revers::before {
	transform: rotate(0deg);
	animation: fadeIn 0.6s ease forwards, rotate5 1.2s steps(2, end) infinite alternate;
	animation-delay: 0s, 0.6s;
}

.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

.visually-hidden {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	width: 1px;
	height: 1px;
	overflow: hidden;
	position: absolute;
	inset: 0;
	white-space: nowrap;
}

@media (any-hover: hover) {

.archives-item__link:hover .archives-item__img img {
	scale: 1.1;
}

.button:hover {
	color: var(--color-red);
	background-color: var(--color-white);
	border: 0.125rem solid currentColor;
}

.button:hover::after {
	filter: invert(46%) sepia(99%) saturate(346%) hue-rotate(311deg) brightness(69%) contrast(151%);
}

.button.button--mail:hover {
	color: var(--color-blue);
}

.button.button--mail:hover::before {
	filter: invert(32%) sepia(80%) saturate(600%) hue-rotate(185deg) brightness(85%) contrast(100%);
}

.button.button--mail:hover::after {
	filter: invert(36%) sepia(64%) saturate(500%) hue-rotate(178deg) brightness(90%) contrast(95%);
}

.button.button--line:hover {
	color: var(--color-green);
}

.button.button--line:hover::before {
	filter: invert(50%) sepia(25%) saturate(400%) hue-rotate(90deg) brightness(80%) contrast(90%);
}

.button.button--line:hover::after {
	filter: invert(50%) sepia(25%) saturate(400%) hue-rotate(90deg) brightness(80%) contrast(90%);
}

.case-slider__link:hover::before {
	background-image: linear-gradient(180deg, transparent 30%, var(--color-black) 100%);
	opacity: 0.9;
}

.contact__item:hover {
	translate: 0.25rem 0.25rem;
}

.footer__name a:hover {
	translate: 0.125rem 0.125rem;
}

.footer__tel:hover,
.footer__mail:hover {
	translate: 0.125rem 0.125rem;
}

.footer__policy:hover,
.footer__instagram:hover {
	translate: 0.125rem 0.125rem;
}

.form-submit input:hover {
	color: var(--color-red);
	background-color: var(--color-white);
	border: 0.125rem solid currentColor;
}

.form-submit input:hover::after {
	filter: invert(46%) sepia(99%) saturate(346%) hue-rotate(311deg) brightness(69%) contrast(151%);
}

.header__logo a:hover {
	translate: 0.125rem 0.125rem;
}

.header__nav-item a:hover {
	translate: 0.125rem 0.125rem;
}

.pager .previouspostslink:hover::before,
.pager .nextpostslink:hover::before {
	background-color: var(--color-white);
}

.side-nav__inner a:hover,
.side-nav__hamburger:hover {
	translate: 0.125rem 0.125rem;
}

.sitemap__item a:hover {
	translate: 0.125rem 0.125rem;
}

.voice-card__link:hover::before {
	background-image: linear-gradient(180deg, transparent 30%, var(--color-black) 100%);
	opacity: 0.9;
}

.voice-item__link:hover::before {
	background-image: linear-gradient(180deg, transparent 30%, var(--color-black) 100%);
	opacity: 0.9;
}

}

@media (max-width: 1000px) {

html {
	font-size: calc(16 / var(--inner-value) * 100vw);
}

}

@media screen and (max-width: 767px) {

:root {
	--vw: 375 * 100vw;
}

:root {
	--header-height: calc(64 * var(--rem));
}

html {
	font-size: 16px;
}

.inner {
	max-width: 600px;
	padding-inline: var(--padding-sp);
}

.inner.inner--lower {
	max-width: 600px;
}

.layout-about-intro {
	margin-top: 5rem;
}

.layout-bg {
	margin-top: 5rem;
}

.layout-care {
	margin-top: 5rem;
}

.layout-case {
	margin-top: 5rem;
}

.layout-column {
	margin-top: 5rem;
}

.layout-commitment {
	margin-top: 7.5rem;
}

.layout-common {
	margin-top: 5rem;
}

.layout-construction-intro {
	margin-top: 5rem;
}

.layout-consultation {
	margin-top: 5rem;
}

.layout-faq {
	margin-top: 5rem;
}

.layout-flow {
	margin-top: 5rem;
}

.layout-free-design {
	margin-top: 7.5rem;
}

.layout-guid-intro {
	margin-top: 5rem;
}

.layout-hamburger {
	position: fixed;
	right: 1.25rem;
	top: 1.875rem;
	z-index: var(--z-index-hamburger);
}

.layout-header {
	top: 1.625rem;
}

.layout-hearing {
	margin-top: 7.5rem;
}

.layout-message {
	margin-top: 4rem;
}

.layout-name {
	margin-top: 2.5rem;
}

.layout-policy {
	margin-top: 7.5rem;
}

.layout-proceed {
	margin-top: 2.5rem;
}

.layout-renovation-case {
	margin-top: 5rem;
}

.layout-renovation-commitment {
	margin-top: 7.5rem;
}

.layout-renovation-faq {
	margin-top: 5rem;
}

.layout-renovation-hearing {
	margin-top: 5rem;
}

.layout-renovation-proceed {
	margin-top: 7.5rem;
}

.layout-renovation-voice {
	margin-top: 5rem;
}

.layout-service {
	margin-top: 5rem;
}

.layout-side-nav {
	top: auto;
	bottom: 0;
	left: 0;
}

.layout-start {
	margin-top: 5rem;
}

.layout-step02 {
	margin-top: 6.25rem;
}

.layout-step03 {
	margin-top: 5rem;
}

.layout-step04 {
	margin-top: 5rem;
}

.layout-support-intro {
	margin-top: 7.5rem;
}

.layout-top-access {
	margin-top: 9.5625rem;
}

.layout-top-case {
	margin-top: 8.5625rem;
}

.layout-top-contact {
	margin-top: 5.5rem;
}

.layout-top-intro {
	margin-top: 5.625rem;
}

.layout-top-news {
	margin-top: 8.25rem;
}

.layout-top-pickup {
	margin-top: 5.8125rem;
}

.layout-top-service {
	margin-top: 4.1875rem;
}

.layout-top-voice {
	margin-top: 10.125rem;
}

.layout-voice {
	margin-top: 5rem;
}

.access__container {
	padding-block: 4rem;
}

.access__container::before {
	width: 12.5rem;
}

.archive-cats__item a {
	width: -moz-fit-content;
	width: fit-content;
	padding-inline: min(4.1025641026vw, 1rem);
	font-size: 0.875rem;
	height: 3.125rem;
}

.archives-item__img {
	border-radius: 0.625rem;
}

.archives-item__img img {
	aspect-ratio: 4/3;
}

.archives-item__meta {
	margin-top: 1rem;
}

.archives-item__cat {
	font-size: 0.8125rem;
}

.archives-item__title {
	margin-top: 0.5rem;
}

.archives-item__date {
	font-size: 0.8125rem;
}

.archives-item--topics .archives-item__meta {
	margin-top: 1rem;
}

.archives-item--topics .archives-item__title {
	margin-top: 0.5rem;
}

.archives-list {
	grid-template-columns: repeat(auto-fill, minmax(12.5rem, 1fr));
	gap: 2.5rem;
}

.archives-list.archives-list--topics {
	grid-template-columns: repeat(auto-fill, minmax(16.25rem, 1fr));
	gap: 2.5rem;
}

.archives-list.archives-list--voice {
	grid-template-columns: repeat(auto-fill, minmax(12.5rem, 1fr));
	gap: 2.5rem 1.5rem;
}

.archives {
	padding-bottom: 5rem;
}

.archives__list {
	margin-top: 2.5rem;
}

.article-slider__img {
	border-radius: 0.625rem;
}

.article-slider__pagination {
	gap: 0.5rem;
	margin-top: 1rem;
}

.article-slider__pagination .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
}

.bg {
	padding-block: 5rem;
	background-size: 150% 100%;
}

.button {
	font-size: 1rem;
	padding-inline: 0.8125rem 1.5rem;
	max-width: 16.375rem;
	padding-block: 0.75rem;
}

.button::after {
	width: 1.5rem;
	right: 1.25rem;
}

.button.button--mail {
	font-size: 1.25rem;
	gap: 1rem;
	height: 6.25rem;
	max-width: 25rem;
}

.button.button--mail::before {
	width: 2.5rem;
}

.button.button--line {
	font-size: 1.25rem;
	gap: 1rem;
	height: 6.25rem;
	max-width: 25rem;
}

.button.button--line::before {
	width: 2.5rem;
}

.button.button--lg {
	max-width: 18.75rem;
}

.care {
	padding-top: 10rem;
	background-size: 200% 100%;
}

.care__head {
	margin-left: 1.5rem;
}

.cere__content {
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 2.5rem;
}

.care__content-item {
	width: 100%;
}

.case-slider__slide {
	width: 16.625rem;
	aspect-ratio: 266/373;
	margin-inline: 0.5rem;
}

.case-slider__link {
	padding-bottom: 1.625rem;
	padding-inline: 1.625rem;
}

.case-slider__title {
	font-size: 1.125rem;
}

.case-slider__text {
	font-size: 0.875rem;
	line-height: 1.5;
	margin-top: 0.625rem;
}

.case-slider__pagination.inner {
	margin-top: 1.9375rem;
}

.case-slider__prev,
.case-slider__next {
	display: block;
}

.case {
	padding-bottom: 7.5rem;
	background-size: 100% 50%;
}

.case__title {
	margin-left: 2.5rem;
}

.case__text {
	margin-left: 2.5rem;
}

.case__slider {
	margin-top: 2.5rem;
}

.case__link {
	margin-top: 2.5625rem;
	text-align: center;
}

.column {
	padding-top: 7.5rem;
}

.column__container {
	padding-top: 5rem;
	padding-bottom: 5rem;
	padding-inline: var(--padding-sp);
}

.column__container::before {
	width: 12.5rem;
	top: -6.25rem;
	right: calc(50% - min(53vw, 18.75rem));
}

.column__content {
	padding: 0;
	margin-top: 1.5rem;
}

.column__text,
.column__item {
	font-size: 1rem;
	line-height: 1.8;
}

.column__item {
	gap: 0.5rem;
	align-items: unset;
}

.column__item::before {
	width: 0.5rem;
	height: 0.5rem;
	margin-top: 0.4lh;
}

.column__img {
	position: static;
}

.column__img.--01 {
	width: 80%;
	margin-left: auto;
	margin-top: 1.25rem;
}

.column__img.--02 {
	width: 50%;
	margin-top: -2.5rem;
}

.commitment-item {
	padding-block: 2.5rem;
}

.commitment-item__inner {
	padding-inline: 1.25rem;
}

.commitment-item__title {
	font-size: 1.25rem;
	gap: 1rem;
}

.commitment-item__title-num {
	font-size: 1.25rem;
	width: 3.75rem;
	height: 3.75rem;
}

.commitment-item__title-num::before {
	font-size: 0.875rem;
}

.commitment-item__small {
	font-size: 10px;
}

.commitment-item__link {
	margin-top: 2.5rem;
}

.commitment-item ul {
	padding-left: 0.5rem;
}

.commitment-item li {
	font-size: 0.875rem;
	gap: 0.5rem;
}

.commitment__title {
	margin-left: 2.5rem;
}

.commitment__content-item:nth-child(1)::before {
	width: 3.75rem;
	transform: scale(-1, 1);
}

.commitment__content-item:nth-child(2)::before {
	width: 3.75rem;
	top: 0;
}

.commitment__content-item:nth-child(3)::before {
	width: 7.5rem;
	left: auto;
	right: 0;
	bottom: -5.0625rem;
}

.commitment--renovation .commitment__content-item:nth-child(1)::before {
	width: 3.75rem;
	top: 0;
}

.commitment--renovation .commitment__content-item:nth-child(2)::before {
	width: 3.75rem;
	transform: scale(-1, 1);
	top: 21.875rem;
}

.commitment--renovation .commitment__content-item:nth-child(3)::before {
	top: 18.75rem;
}

.common {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.common__container {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	border-radius: 1.25rem;
}

.common__slider-wrap {
	margin-top: 5rem;
}

.common__slider-title {
	font-size: 2rem;
}

.common__slider {
	margin-top: 2.5rem;
}

.construction-intro {
	padding-bottom: 7.5rem;
}

.construction-intro__contents {
	margin-top: 4rem;
}

.construction-intro__bubble {
	font-size: 1.125rem;
}

.construction-intro__bubble:nth-child(1) {
	padding-block: 1.5rem 2rem;
	padding-inline: 2.5rem;
}

.construction-intro__bubble:nth-child(1)::before {
	width: 7.5rem;
	right: 0rem;
	bottom: -3.75rem;
}

.construction-intro__bubble:nth-child(2) {
	margin-top: 3.75rem;
	padding-block: 1.5rem 2.5rem;
	padding-inline: 1.5rem;
	margin-right: 2.5rem;
}

.construction-intro__bubble:nth-child(2)::before {
	width: 6.25rem;
}

.construction-intro__bubble:nth-child(3) {
	margin-top: 2.5rem;
	padding-block: 1.5rem 2.5rem;
	padding-inline: 1.5rem 1.5rem;
}

.construction-intro__bubble:nth-child(3)::before {
	width: 7.5rem;
	left: -5rem;
}

.construction-intro__text {
	font-size: 1.125rem;
}

.construction-intro.construction-intro--renovation {
	padding-bottom: 5rem;
}

.construction-intro.construction-intro--renovation .construction-intro__contents {
	margin-top: 5rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(1) {
	padding-block: 1.5rem 2rem;
	padding-inline: 1.5rem;
	margin-right: 0;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(1)::before {
	width: 8.75rem;
	right: 0rem;
	bottom: -6.25rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(2) {
	margin-top: 5rem;
	padding-block: 1.5rem 2.5rem;
	padding-inline: 1.25rem;
	margin-left: 0;
	margin-right: 0;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(2)::before {
	width: 7.5rem;
	left: 5rem;
	bottom: -5rem;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(3) {
	margin-top: 6.25rem;
	padding-block: 1.5rem 2.5rem;
	padding-inline: 1.5rem 1.5rem;
	margin-right: auto;
	margin-left: auto;
}

.construction-intro.construction-intro--renovation .construction-intro__bubble:nth-child(3)::before {
	width: 6.25rem;
	right: -3.75rem;
	left: auto;
}

.construction-intro.construction-intro--renovation .construction-intro__text {
	margin-top: 5rem;
}

.consultation-item {
	padding-block: 2rem;
}

.consultation-item__title {
	gap: 0.5rem;
	font-size: 1.375rem;
}

.consultation-item__title span {
	width: 3.75rem;
	height: 3.75rem;
	font-size: 1.5rem;
}

.consultation-item__title span::before {
	font-size: 0.875rem;
}

.consultation-item__item {
	margin-top: 1.25rem;
	font-size: 1rem;
	padding: 1rem;
}

.consultation-item__text {
	font-size: 1rem;
	margin-top: 2.5rem;
}

.consultation-item__text::before {
	height: 1.25rem;
	top: -0.25rem;
}

.consultation-list {
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

.consultation::before {
	width: 8.75rem;
	right: calc(50% - min(48vw, 17.5rem));
	top: -6.25rem;
}

.consultation__head {
	margin-left: 2.5rem;
}

.consultation__list {
	margin-top: 2.5rem;
}

.contact {
	grid-template-columns: 1fr;
	gap: 1.5rem;
	max-width: 17.1875rem;
	margin-inline: auto;
}

.contact__item {
	aspect-ratio: unset;
}

.contact__item:not(:last-child)::before {
	width: 1.8125rem;
	bottom: auto;
	top: 50%;
	transform: translateY(-50%);
	right: 1rem;
}

.contact__item:nth-child(4) {
	grid-column: unset;
}

.contact__link {
	display: flex;
	flex-direction: row-reverse;
	justify-content: left;
	gap: 0.625rem;
	padding-inline: 1.375rem 3.125rem;
}

.contact__item:nth-child(4) .contact__link {
	display: grid;
	grid-template-columns: auto 1fr;
	font-size: 1.5625rem;
	padding-block: 1.6875rem 2.0625rem;
	padding-inline: 1.375rem;
	row-gap: 0.125rem;
}

.contact__title {
	font-size: 1.0625rem;
	flex: 1;
	min-height: auto;
}

.contact__title span {
	font-size: 0.6875rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	margin-top: 0.25rem;
	padding-block: min(1.0666666667vw, 0.25rem);
}

.contact__item:nth-child(4) .contact__title {
	grid-column: span 2;
	grid-row: 1/2;
	font-size: 0.875rem;
}

.contact__icon {
	margin-top: 0;
	margin-inline: 0;
	width: 3.125rem;
	height: 3.125rem;
}

.contact__item:nth-child(1) .contact__icon {
	translate: 0;
}

.contact__item:nth-child(2) .contact__icon {
	translate: 0;
}

.contact__item:nth-child(4) .contact__icon {
	width: 2.375rem;
	height: 2.375rem;
	grid-column: 1/2;
	grid-row: 2/3;
	margin-left: 0;
}

.contact__item:nth-child(4) .contact__link span {
	font-size: 1.4375rem;
}

.contact.contact--md {
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

.contact.contact--md .contact__link {
	padding-block: 0.9375rem;
	padding-inline: 1.1875rem 0.375rem;
}

.contact.contact--md .contact__title {
	font-size: 1rem;
}

.contact.contact--md .contact__title > br {
	display: none;
}

.contact.contact--md .contact__item:nth-child(3) .contact__title {
	flex-direction: row;
	margin-left: 0;
}

.contact.contact--md .contact__title span {
	display: inline-block;
	margin-inline: 0.5rem 0;
	font-size: 9px;
	border-radius: 0.3125rem;
	margin-top: 0;
}

.contact.contact--md .contact__icon {
	width: 2.3125rem;
}

.contact.contact--md .contact__item:nth-child(2) .contact__icon {
	width: 2rem;
	transform: translateX(0.625rem);
}

.contact.contact--md .contact__item:nth-child(2) .contact__icon {
	width: 2rem;
}

.contact--sub .contact__item {
	aspect-ratio: unset;
}

.contact--sub .contact__item:last-child::before {
	width: 1.8125rem;
	bottom: auto;
	top: 50%;
	transform: translateY(-50%);
	right: 1rem;
}

.copy {
	font-size: 1.75rem;
}

.custom-home {
	padding-block: 7.5rem 7.5rem;
}

.custom-home__inner.inner {
	padding-inline: 0;
}

.custom-home__title,
.custom-home__text {
	margin-left: 2.5rem;
}

.custom-home__contents::before {
	width: 6.25rem;
	top: 0rem;
	left: auto;
	right: 0rem;
}

.custom-home__content-title {
	font-size: 1.25rem;
	padding-block: 1rem;
	padding-inline: 2.5rem;
	width: 80%;
	text-align: center;
}

.custom-home__container {
	display: block;
	margin-top: 4rem;
	max-width: 25rem;
	margin-inline: auto;
}

.custom-home__content {
	margin-top: 0;
	width: 100%;
	grid-template-columns: auto 1fr auto;
}

.custom-home__content::before {
	display: none;
}

.custom-home__content-item:nth-child(1) {
	margin-left: 0;
	margin-right: 0.75rem;
}

.custom-home__item-title {
	font-size: clamp(0.625rem, 3.8461538462vw, 0.9375rem);
	line-height: 1.4;
	text-align: right;
}

.custom-home__table-title {
	padding-top: 0.75rem;
}

.custom-home__content-item:nth-child(2) {
	border-radius: 0.625rem;
}

.custom-home__content-item:nth-child(2) .custom-home__table-title {
	font-size: 1.125rem;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text {
	padding-block: 0.625rem;
	font-size: 0.875rem;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text:last-child {
	padding-bottom: 1.75rem;
}

.custom-home__content-item:nth-child(2) .custom-home__table-text span {
	font-size: 1.125rem;
}

.custom-home__table-text {
	min-height: auto;
	gap: 1px;
	font-size: clamp(0.625rem, 3.5897435897vw, 0.875rem);
}

.custom-home__table-text.--aline-bottom {
	margin-top: auto;
}

.custom-home__table-text:nth-child(n+3)::before {
	width: 6.25rem;
}

.custom-home__content-item:nth-child(3) {
	margin-right: 0.6875rem;
}

.custom-home__content-item:nth-child(3) .custom-home__table-title {
	font-size: 1.25rem;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text {
	font-size: clamp(0.625rem, 3.5897435897vw, 0.875rem);
	padding-block: 1rem;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text:nth-child(2) {
	padding-top: 1rem;
}

.custom-home__content-item:nth-child(3) .custom-home__table-text span {
	font-size: 1.125rem;
	margin-bottom: 0rem;
}

.custom-home.custom-home--renovation {
	padding-top: 7.5rem;
	padding-bottom: 18.75rem;
}

.custom-home.custom-home--renovation .custom-home__title {
	margin-left: 1.5rem;
}

.custom-home.custom-home--renovation .custom-home__text {
	margin-left: 1.5rem;
}

.custom-home.custom-home--renovation .custom-home__contents::before {
	width: 7.5rem;
}

.drawer__container {
	padding-block: 5rem 3.75rem;
	max-width: 37.5rem;
}

.faq-item {
	padding-bottom: 1.25rem;
}

.faq-item__question,
.faq-item__answer {
	gap: 1.25rem;
	padding-right: 1.875rem;
}

.faq-item__question span,
.faq-item__answer span {
	font-size: 1.75rem;
}

.faq-item__question {
	font-size: 1.125rem;
	padding-right: 1.875rem;
}

.faq-item__question::before,
.faq-item__question::after {
	width: 1.25rem;
}

.faq-item__answer {
	font-size: 1rem;
	flex: 1;
}

.faq {
	padding-block: 7.5rem 6.4375rem;
	background-size: 150% 100%;
}

.faq__contents {
	padding-block: 5rem 2.5rem;
	padding-inline: 1.25rem;
}

.faq__list {
	margin-top: 2.5rem;
}

.faq__item + .faq__item {
	margin-top: 1.25rem;
}

.faq.faq--about {
	padding-block: 7.5rem 0;
}

.faq.faq--about .faq__contents {
	padding-bottom: 4rem;
}

.faq.faq--about .faq__contents::before {
	width: 10rem;
}

.faq.faq--renovation .faq__contents::before {
	width: 10rem;
}

.flow-list {
	padding-block: 1.5rem;
}

.flow-list:not(:last-child)::before {
	width: 0.25rem;
}

.flow-list__inner {
	grid-template-columns: 1fr;
}

.flow-list__img {
	grid-column: unset;
	grid-row: 2/3;
	margin-top: 1rem;
}

.flow-list__title {
	gap: 0.5rem;
	font-size: 1.375rem;
}

.flow-list__title span {
	width: 3.125rem;
	height: 3.125rem;
	font-size: 1.375rem;
}

.flow-list__title span::before {
	font-size: 0.75rem;
}

.flow-list__text {
	margin-top: 1rem;
	font-size: 1rem;
}

.flow {
	padding-top: 7.5rem;
	padding-bottom: 7.5rem;
	background-size: 200% 100%;
}

.flow::before {
	width: 7.5rem;
}

.flow__head {
	margin-left: 1.5rem;
}

.flow__list-item + .flow__list-item {
	margin-top: 4rem;
}

.footer {
	padding-inline: 1.25rem;
	padding-bottom: 5.75rem;
}

.footer__inner.inner {
	padding-inline: 1.875rem;
}

.footer__container {
	padding-block: 3.125rem 3.25rem;
	border-radius: 0.9375rem;
}

.footer__content {
	flex-direction: column;
}

.footer__content:nth-child(2) {
	margin-top: 3.125rem;
}

.footer__content:nth-child(3) {
	margin-top: 2.375rem;
}

.footer__info {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.footer__name {
	width: 7.5625rem;
	margin-inline: auto;
}

.footer__address {
	font-size: 0.875rem;
	margin-top: 1.75rem;
}

.footer__tel,
.footer__mail {
	font-size: 0.875rem;
}

.footer__tel {
	margin-top: -0.4375rem;
}

.footer__mail {
	margin-top: -1rem;
}

.footer__nav-wrap {
	margin-top: 1.875rem;
	margin-inline: auto;
	transform: translateX(0.625rem);
}

.footer__policy,
.footer__instagram {
	font-size: 8px;
}

.footer__instagram {
	display: none;
}

.footer__copy {
	font-size: 8px;
	display: inline-block;
	margin-left: auto;
	grid-column: unset;
	margin-top: 0;
}

body.archive .footer,
body.blog .footer,
.footer.footer--diagonal02 {
	padding-top: 7.5rem;
	padding-inline: 1.25rem;
	padding-bottom: 3.75rem;
}

.footer.footer--diagonal {
	margin-top: 2.5rem;
	padding-top: 5rem;
}

.form-checkbox {
	grid-template-columns: repeat(auto-fit, minmax(21.875rem, 1fr));
}

.form-checkbox input + span {
	font-size: 1rem;
	padding-left: 2.5rem;
}

.form-checkbox input + span::before {
	width: 1.5rem;
	height: 1.5rem;
}

.form-checkbox input + span::after {
	left: 2px;
}

.form-input input {
	font-size: 1rem;
}

.form-radio {
	flex-wrap: wrap;
	gap: 0.5rem 2rem;
}

.form-radio input + span {
	font-size: 1rem;
	padding-left: 2rem;
}

.form-radio input + span::before {
	width: 1.25rem;
	height: 1.25rem;
}

.form-radio input + span::after {
	width: 0.75rem;
	height: 0.75rem;
	left: 0.25rem;
}

.form-select select {
	font-size: 1rem;
	background-position: right 0.625rem top 1.25rem;
	background-size: 1.125rem 0.625rem;
}

.form-submit input {
	font-size: 1rem;
	padding-inline: 0.8125rem;
	max-width: 16.375rem;
	padding-block: 0.75rem;
}

.form-textarea textarea {
	font-size: 1rem;
}

.form__label {
	font-size: 1.125rem;
}

.form__label .form__label-sm {
	font-size: 12px;
}

.form__label .form__label-required {
	font-size: 0.875rem;
	padding-inline: 0.5rem;
	margin-left: 0.5rem;
}

.form__input,
.form__select,
.form__radio,
.form__checkbox,
.form__textarea {
	margin-top: 0.5rem;
}

.form__privacy input + span {
	padding-left: 2.375rem;
	font-size: 1rem;
}

.form__privacy input + span::before {
	width: 1.5rem;
	height: 1.5rem;
}

.form__privacy input + span::after {
	left: 3px;
}

.free-design__title,
.free-design__text {
	margin-left: 2.5rem;
}

.free-design__flow {
	margin-top: 2.5rem;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
	width: 90%;
	max-width: 18.75rem;
}

.free-design__frow-item {
	padding-bottom: 2rem;
	gap: 0.625rem;
}

.free-design__frow-item:not(:first-child)::before {
	height: 2.5rem;
	left: -0.875rem;
}

.free-design__frow-item:nth-child(1) .free-design__flow-icon {
	width: 3.125rem;
}

.free-design__frow-item:nth-child(2) .free-design__flow-icon {
	width: 3.125rem;
}

.free-design__frow-item:nth-child(3) .free-design__flow-icon {
	width: 3.125rem;
}

.free-design__frow-item:nth-child(4) .free-design__flow-icon {
	width: 3.125rem;
}

.free-design__frow-text {
	font-size: 1rem;
}

.fv {
	padding-top: 5rem;
}

.fv__title {
	left: calc(50% - min(46vw, 18.75rem));
	font-size: 2rem;
}

.fv--support .fv__title {
	top: 50%;
	left: calc(50% - min(46vw, 18.75rem));
	font-size: 1.875rem;
}

.fv.fv--construction .fv__title {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	font-size: 2rem;
	left: 0;
	grid-column: 1/2;
	width: -moz-fit-content;
	width: fit-content;
}

.fv__title span {
	font-size: 1rem;
}

.fv__copy {
	width: 10rem;
	top: 70%;
}

.fv.fv--works .fv__copy {
	top: 70%;
	width: 5.625rem;
}

.fv.fv--topics .fv__copy {
	top: 75%;
	width: 5rem;
}

.fv.fv--voice .fv__copy {
	top: 75%;
	width: 5rem;
}

.fv.fv--contact .fv__copy {
	top: 75%;
	width: 7.5rem;
}

.fv.fv--company .fv__copy {
	top: 75%;
	width: 7.5rem;
}

.fv.fv--support .fv__copy {
	top: 80%;
	width: 11.25rem;
}

.fv.fv--guide .fv__copy {
	top: 40%;
	width: 5rem;
	left: calc(50% - min(40vw, 35.125rem));
}

.fv.fv--guide .fv__title {
	left: calc(50% - min(46vw, 18.75rem));
	font-size: 2rem;
}

.fv.fv--about .fv__copy {
	top: 70%;
	width: clamp(11.25rem, 51.2820512821vw, 17.5rem);
}

.fv.fv--renovation .fv__copy {
	top: 70%;
	width: clamp(11.25rem, 51.2820512821vw, 17.5rem);
}

.guide-intro::before {
	width: 10rem;
	top: 11.25rem;
}

.guide-intro__contents {
	margin-left: 0;
	grid-template-columns: 1fr;
	gap: 1rem;
}

.guide-intro__content {
	display: contents;
}

.guide-intro_img {
	grid-row: 2/3;
}

.guide-intro__text {
	font-size: 1rem;
}

.guide-intro__link {
	margin-top: 0;
	text-align: center;
}

.hamburger {
	width: 2.625rem;
	height: 2.1875rem;
	background-color: var(--color-white);
	border: solid 1px var(--color-black);
}

.hamburger span {
	width: 1.125rem;
	background-color: var(--color-black);
	left: 0.625rem;
}

.hamburger span:nth-child(1) {
	top: 0.625rem;
}

.hamburger span:nth-child(3) {
	bottom: 0.625rem;
}

.head-text {
	font-size: 1rem;
	line-height: 1.8;
}

.header__inner.inner {
	padding-inline: 1.5rem;
}

.header__logo {
	width: 12rem;
}

.header__nav-list {
	display: none;
}

.hearing {
	padding-top: 7.5rem;
}

.hearing__bubble {
	font-size: 1.125rem;
}

.hearing__bubble:nth-child(1) {
	margin-left: 0;
	padding-inline: 1.5rem;
	padding-bottom: 2.5rem;
}

.hearing__bubble:nth-child(1)::before {
	width: 6.25rem;
	bottom: -6.25rem;
	left: 5rem;
}

.hearing__bubble:nth-child(2) {
	margin-top: 7.5rem;
	left: 0;
	padding-inline: 2rem;
	padding-bottom: 3.5rem;
	margin-left: auto;
}

.hearing__bubble:nth-child(2)::before {
	width: 10rem;
	bottom: -5rem;
	right: 1.25rem;
}

.hearing__content {
	margin-top: 11.25rem;
}

.hearing__caution {
	font-size: 1.5rem;
	left: 0;
}

.hearing__caution::after {
	width: 18.75rem;
}

.hearing__text {
	left: 0;
	font-size: 1.25rem;
	margin-top: 1.5rem;
}

.hearing__img.--01 {
	width: 6.25rem;
	left: calc(50% - min(28vw, 13.125rem));
	top: -6.25rem;
}

.hearing__img.--02 {
	width: 6.25rem;
	top: -7.5rem;
	left: calc(50% - min(50vw, 18.75rem));
}

.hearing__img.--03 {
	width: 10rem;
	top: auto;
	bottom: -7.5rem;
	right: calc(50% - min(50vw, 18.75rem));
}

.hearing__img.--04 {
	width: 6.25rem;
	top: auto;
	bottom: -7.5rem;
	right: calc(50% - min(20vw, 9.375rem));
}

.hearing.hearing--renovation {
	padding-top: 5rem;
}

.hearing.hearing--renovation .hearing__bubbles-wrap {
	display: contents;
}

.hearing.hearing--renovation .hearing__bubbles {
	grid-template-columns: 1fr;
	width: 100%;
	margin-inline: 0;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(1) {
	width: clamp(12.5rem, 51.2820512821vw, 15.625rem);
	margin-right: auto;
}

.hearing.hearing--renovation .hearing__bubble:nth-child(1)::before {
	width: clamp(6.25rem, 25.641025641vw, 7.5rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(2) {
	margin-top: -2.5rem;
	margin-left: auto;
	width: clamp(11.25rem, 46.1538461538vw, 14.375rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(2)::before {
	width: clamp(6.25rem, 25.641025641vw, 7.5rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(3) {
	margin-top: -2.5rem;
	width: clamp(12.5rem, 51.2820512821vw, 15.625rem);
}

.hearing.hearing--renovation .hearing__bubble:nth-child(3)::before {
	width: clamp(6.25rem, 30.7692307692vw, 11.25rem);
}

.hearing.hearing--renovation .hearing__content {
	margin-top: 10rem;
}

.hearing.hearing--renovation .hearing__text-area {
	translate: 0;
}

.hearing.hearing--renovation .hearing__img.--01 {
	width: 6.25rem;
	top: -10rem;
}

.hearing.hearing--renovation .hearing__img.--02 {
	width: 8.75rem;
	top: -6.875rem;
}

.hearing.hearing--renovation .hearing__img.--03 {
	width: 10rem;
	top: auto;
	bottom: -7.5rem;
}

.hearing.hearing--renovation .hearing__img.--04 {
	width: 6.25rem;
	top: auto;
	bottom: -7.5rem;
	right: calc(50% - min(20vw, 9.375rem));
}

.list {
	grid-template-columns: 1fr;
}

.list__title {
	font-size: 1.25rem;
}

.list__item {
	font-size: 1rem;
}

.list__item li {
	gap: 0.5rem;
}

.list__item li::before {
	width: 0.5rem;
	height: 0.5rem;
}

.list__map {
	aspect-ratio: 3/2;
}

.maintenance {
	padding-top: 7.5rem;
	padding-bottom: 7.5rem;
	background-size: 200% 100%;
}

.maintenance::before {
	width: 6.25rem;
	top: 3.125rem;
	right: calc(50% - min(48vw, 15.625rem));
}

.maintenance__title {
	margin-left: 2.5rem;
}

.maintenance__content {
	margin-top: 2.5rem;
}

.maintenance__content.kaku-motion::before {
	width: 5rem;
	bottom: -2.5rem;
}

.maintenance__content-title {
	font-size: 1.25rem;
	padding-inline: 2rem 2.5rem;
}

.maintenance__content-container {
	padding-inline: var(--padding-sp);
}

.maintenance__list {
	grid-template-columns: 1fr;
	margin-top: 1.5rem;
}

.maintenance__list-title {
	width: -moz-fit-content;
	width: fit-content;
	height: auto;
	padding-inline: 1rem;
	font-size: 0.875rem;
}

.maintenance__list-item {
	width: 100%;
	grid-template-columns: repeat(auto-fill, minmax(12.5rem, 1fr));
}

.maintenance__list-item p {
	padding-inline: 0.625rem;
	font-size: 1rem;
	gap: 0.5rem;
}

.maintenance__concerns-list {
	width: 100%;
	grid-template-columns: 1fr;
}

.maintenance__concerns-item {
	width: 100%;
	font-size: 1rem;
}

.message {
	padding-block: 7.5rem 5rem;
	background-size: 300% 100%;
}

.message__title {
	margin-left: 2.5rem;
}

.message__contents {
	grid-template-columns: 1fr;
	margin-left: -1.25rem;
	margin-top: 2.5rem;
}

.message__content-title {
	font-size: 1.25rem;
	padding-left: 1.25rem;
}

.message__text,
.message__signature span {
	font-size: 1rem;
	line-height: 1.8;
}

.message__text {
	padding-left: 1.25rem;
	margin-top: 1.25rem;
}

.message__text + .message__text {
	margin-top: 1rem;
}

.message__signature {
	padding-left: 1.25rem;
	font-size: 1.25rem;
	margin-top: 1.25rem;
}

.message__signature span {
	margin-right: 1rem;
}

.mv {
	padding-inline: 20px;
	grid-template-columns: 1fr;
	background-size: 19.5625rem 10.6875rem;
}

.mv::before {
	width: 51.25rem;
	height: 48.3125rem;
	left: 2.5rem;
}

.mv__text {
	font-size: 8px;
	top: min(98.1333333333vw, 23rem);
	left: -3.375rem;
}

.mv__copy-wrap {
	grid-column: unset;
}

.mv__copy-decoration:nth-child(2) {
	width: 4rem;
	top: 6.0625rem;
	left: calc(50% - min(48vw, 8.5rem));
}

.mv__copy-decoration:nth-child(3) {
	width: 5.25rem;
	top: 5.875rem;
	right: calc(50% - min(48vw, 10rem));
}

.mv__copy-decoration:nth-child(4) {
	width: 5.4375rem;
	top: 11.5rem;
	left: calc(50% - min(48vw, 10.5rem));
}

.mv__copy-decoration:nth-child(5) {
	width: 2.375rem;
	top: 18rem;
	right: calc(50% - min(48vw, 8rem));
}

.mv__copy-decoration:nth-child(6) {
	top: 23.4375rem;
	width: 9.4375rem;
	right: calc(50% - 9.875rem);
	rotate: 5deg;
}

.mv__copy-decoration:nth-child(7) {
	width: 6.875rem;
	top: 19.4375rem;
	left: calc(50% - min(48vw, 9.375rem));
}

.mv__copy {
	margin-top: 4.5625rem;
	font-size: 2rem;
}

.mv__gallery {
	grid-template-columns: 49.8591549296% 1fr;
	grid-column: unset;
	width: 100%;
	-moz-column-gap: 1.1875rem;
	column-gap: 1.1875rem;
	translate: 0;
	margin-top: 1.5rem;
}

.mv__gallery-img:nth-child(1) {
	translate: 0;
	width: 100%;
}

.mv__gallery-img:nth-child(2) {
	margin-top: 1rem;
	width: 100%;
}

.mv__gallery-img:nth-child(3) {
	margin-top: 1.1875rem;
	width: 100%;
}

.mv__gallery-img:nth-child(4) {
	translate: 0;
	width: 100%;
	margin-top: 0.75rem;
}

.name {
	padding-block: 7.5rem 5rem;
	background-size: 250% 100%;
}

.name__title {
	margin-left: 2.5rem;
}

.name__contents {
	grid-template-columns: 1fr;
	margin-top: 2.5rem;
	margin-right: -1.25rem;
	gap: 0;
}

.name__textarea {
	display: contents;
}

.name__content-title {
	font-size: 1.25rem;
	padding-right: 1.25rem;
}

.name__text {
	font-size: 1rem;
	padding-right: 1.25rem;
	margin-top: 1.5rem;
}

.name__text + .name__text {
	margin-top: 1rem;
}

.name__img {
	grid-row: 2/3;
	margin-top: 1rem;
}

.news-slider__slide.swiper-slide {
	width: 17.5rem;
	margin-inline: min(4.2666666667vw, 1rem);
}

.news-slider__date {
	font-size: 0.875rem;
}

.news-slider__title {
	font-size: 0.875rem;
}

.news-slider__next,
.news-slider__prev {
	display: none;
}

.pager a,
.pager span {
	width: 2.5rem;
	height: 2.5rem;
}

.pickup-slider__wrapper {
	gap: 0.75rem;
}

.pickup-slider__slide {
	width: 15.5625rem;
}

.pickup-slider__title.text {
	margin-top: 0.75rem;
	font-size: max(0.75rem, 10px);
}

.pickup-slider__pagination {
	margin-top: 0;
}

.policy-item {
	flex-direction: column;
	margin-right: 0;
	gap: 0.625rem;
}

.policy-item:nth-child(2n) {
	margin-left: 0;
	flex-direction: column;
	margin-right: 0;
	gap: 0.625rem;
}

.policy-item:nth-child(2)::before {
	width: 7.5rem;
	left: auto;
	right: calc(50% - min(48vw, 11.25rem));
	top: 5rem;
}

.policy-item:nth-child(3)::before {
	width: 4.375rem;
	top: 5rem;
	right: auto;
	left: calc(50% - min(48vw, 10rem));
}

.policy-item__text-area {
	display: contents;
}

.policy-item__title {
	order: 2;
	font-size: min(5.1282051282vw, 1.25rem);
	margin-top: 1rem;
}

.policy-item__text {
	margin-top: 0;
	order: 3;
}

.policy-item__img {
	width: 80%;
	margin-left: auto;
	order: 1;
}

.policy-item:nth-child(2) .policy-item__img {
	width: 80%;
	margin-right: auto;
	margin-left: 0;
}

.policy-item:nth-child(3) .policy-item__img {
	margin-top: 0;
}

.policy-item ul {
	order: 3;
	margin-top: 0;
}

.policy-item li {
	font-size: 0.875rem;
	gap: 0.5rem;
}

.policy-item.policy-item--renovation:nth-child(2)::before {
	width: 4.375rem;
	top: 5rem;
	right: auto;
	left: calc(50% - min(48vw, -5rem));
}

.policy-item.policy-item--renovation:nth-child(3)::before {
	width: 7.5rem;
	left: auto;
	right: calc(50% - min(48vw, -5rem));
	top: 3.75rem;
}

.policy-item.policy-item--renovation ul li::before {
	width: 0.5rem;
	height: 0.5rem;
}

.policy {
	padding-block: 10rem 7.5rem;
	background-size: 140% 100%;
}

.policy::before {
	width: 12.5rem;
	top: -5rem;
}

.policy__title {
	margin-left: 2.5rem;
}

.policy__content {
	margin-top: 2.5rem;
}

.policy__content-item:nth-child(2) {
	margin-top: 5rem;
}

.policy__content-item:nth-child(3) {
	margin-top: 5rem;
}

.policy.policy--renovation::before {
	width: 9.375rem;
}

.policy.policy--renovation .policy__title {
	margin-left: 1.5rem;
}

.policy.policy--renovation .policy__content-item:nth-child(2) {
	margin-top: 5rem;
}

.policy.policy--renovation .policy__content-item:nth-child(3) {
	margin-top: 5rem;
}

.proceed-item {
	padding-block: 1.25rem;
}

.proceed-item::after {
	top: auto;
	bottom: -15%;
	left: 50%;
	right: 50%;
	transform: translate(-50%, 50%) rotate(90deg);
}

.proceed-item:nth-child(3)::after {
	display: block;
}

.proceed-item__inner {
	padding-inline: 1rem;
}

.proceed-item__upper {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.proceed-item__title {
	font-size: 1.125rem;
	flex: 1;
	text-align: left;
}

.proceed-item__text {
	padding-inline: 0;
	font-size: 0.875rem;
	margin-top: 0.5rem;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.proceed-item__icon {
	height: 3.75rem;
}

.proceed-item:nth-child(1) i {
	width: 3.125rem;
}

.proceed-item:nth-child(2) i {
	width: 3.75rem;
}

.proceed-item:nth-child(3) i {
	width: 3.75rem;
	height: 100%;
}

.proceed-item:nth-child(4) i {
	width: 3.125rem;
}

.proceed-item:nth-child(5) i {
	width: 3.75rem;
}

.proceed-item.proceed-item--care .proceed-item__upper {
	gap: 0.5rem;
}

.proceed-item.proceed-item--care:nth-child(3)::after {
	display: none;
}

.proceed-item.proceed-item--care .proceed-item__icon {
	height: auto;
}

.proceed-item.proceed-item--care .proceed-item__text {
	margin-top: 1rem;
	padding-inline: 0;
}

.proceed-item.proceed-item--care i {
	height: 2.5rem;
	flex-shrink: 0;
}

.proceed {
	padding-block: 10rem 7.5rem;
	background-size: 250% 100%;
}

.proceed__title {
	margin-left: 2.5rem;
}

.proceed__text {
	margin-left: 2.5rem;
}

.proceed__content {
	display: grid;
	grid-template-columns: 1fr;
}

.proceed__content-item {
	width: 100%;
}

.proceed.proceed--renovation {
	padding-bottom: 7.5rem;
}

.proceed.proceed--renovation .proceed-item:nth-child(3) i {
	width: 3.125rem;
}

.proceed.proceed--renovation .proceed-item:nth-child(4) i {
	width: 3.125rem;
}

.profile__container {
	padding-block: 4rem 2.5rem;
}

.profile__container::before {
	width: 8.75rem;
	right: 1.25rem;
}

.service__head {
	margin-left: 2rem;
}

.service__container {
	margin-top: 2.5rem;
	padding-bottom: 5rem;
	background-size: 200% 100%;
}

.service__container::before {
	width: 6.25rem;
	top: 5rem;
}

.service__contents-title {
	font-size: 1.375rem;
	min-width: auto;
	padding-block: 0.5rem;
	padding-inline: 2rem;
}

.service__contents-title::before {
	height: 1.375rem;
}

.service__contents-title::after {
	height: 0.25rem;
}

.service__content {
	grid-template-columns: 1fr;
	margin-left: 0;
	gap: 1rem;
}

.service__content-wrap {
	display: contents;
}

.service__img {
	grid-row: 2/3;
}

.service__content-title {
	font-size: 1.625rem;
}

.service__content-text {
	margin-top: 0rem;
	font-size: 1rem;
}

.service__content-link {
	margin-top: 0;
	text-align: center;
}

.service__container:nth-child(3)::before {
	width: 6.25rem;
	top: -2.5rem;
}

.service__container:nth-child(3) .service__contents-title {
	min-width: auto;
}

.service__container:nth-child(3) .service__content {
	grid-template-columns: 1fr;
	margin-right: 0;
}

.side-nav__inner {
	padding-bottom: 1rem;
	flex-direction: row;
	gap: 0.625rem;
	padding-inline: 20px;
}

.side-nav__inner a,
.side-nav__hamburger {
	flex: 1;
	border-radius: 0.1875rem;
}

.side-nav__inner a:not(:last-child) {
	z-index: 1;
}

.sitemap {
	width: -moz-fit-content;
	width: fit-content;
	flex-direction: column;
	gap: 0.3125rem;
}

.sitemap__item + .sitemap__item {
	margin-top: 0.3125rem;
}

.sitemap__link {
	font-size: 0.9375rem;
}

.sitemap__item ul {
	margin-top: 0;
}

.sitemap__item ul a {
	padding-left: 0.875rem;
}

.start {
	padding-bottom: 7.5rem;
	overflow-x: clip;
}

.start__head {
	margin-left: 2rem;
}

.start__content-wrap {
	margin-top: 5rem;
}

.start__content-wrap + .start__content-wrap {
	margin-top: 5rem;
}

.start__content {
	grid-template-columns: 1fr;
	gap: 1rem;
	margin-right: 0;
}

.start__content-wrap:nth-child(3) .start__content {
	grid-template-columns: 1fr;
	margin-left: 0;
}

.start__textarea {
	display: contents;
}

.start__content-title {
	font-size: 1.625rem;
}

.start__content-text {
	font-size: 1rem;
	margin-top: 0;
}

.start__content-link {
	margin-top: 0;
	text-align: center;
}

.start__content-img {
	grid-row: 2/3;
}

.start__content-img::before {
	width: 7.5rem;
	top: -7.5rem;
	right: -1.25rem;
	left: auto;
}

.start__content-wrap:nth-child(3) .start__content-img::before {
	right: 0;
	width: 6.25rem;
}

.start__content-wrap:nth-child(4) .start__content-img::before {
	width: 9.375rem;
	left: -0.5rem;
	top: 0;
}

.start__text-wrap {
	margin-top: 7.5rem;
}

.start__text {
	font-size: 1.125rem;
}

.start__text span {
	display: inline;
	line-height: 3;
}

.start__wrap-inner::before {
	width: 6.25rem;
	top: 100%;
}

.start__text::before {
	width: 6.25rem;
	top: -6.25rem;
	right: 0;
}

.step {
	grid-template-columns: 1fr;
	margin-left: 0;
	gap: 0;
}

.step__img:nth-child(1) {
	width: 70%;
}

.step__img:nth-child(2) {
	width: 40%;
	margin-top: -3.75rem;
}

.step__images {
	grid-row: 2/3;
	margin-top: 2.5rem;
}

.step__content {
	display: contents;
}

.step__text {
	margin-top: 2.5rem;
}

.step__link {
	margin-top: 2.5rem;
	text-align: center;
}

.step.step--03 {
	grid-template-columns: 1fr;
	margin-right: 0;
	gap: 0;
	padding-left: 0;
}

.step--03 .step__img {
	width: 100%;
}

.step01 {
	padding-top: 7.5rem;
	padding-bottom: 7.5rem;
	background-size: 250% 100%;
}

.step01__head-text {
	margin-top: 1rem;
}

.step01__container {
	border-radius: 1.25rem;
	padding-top: 2.5rem;
}

.step01__container-inner {
	padding-inline: var(--padding-sp);
}

.step01__head-wrap {
	grid-template-columns: 1fr;
	margin-right: 0;
}

.step01__bubbles {
	grid-template-columns: 1fr;
}

.step01__bubble:nth-child(1) {
	width: 15.625rem;
}

.step01__bubble:nth-child(1)::before {
	width: 7.5rem;
	margin-top: 0;
}

.step01__bubble:nth-child(2) {
	width: 15.625rem;
	margin-left: auto;
	margin-top: 1.25rem;
}

.step01__bubble:nth-child(2)::before {
	width: 7.5rem;
}

.step01__bubble:nth-child(3) {
	width: 16.875rem;
}

.step01__bubble:nth-child(3)::before {
	width: 7.5rem;
}

.step01__contents {
	grid-template-columns: 1fr;
	margin-left: 0;
}

.step01__contents::before {
	width: 6.25rem;
	bottom: -6.25rem;
}

.step01__content-text {
	font-size: 1rem;
}

.step01__links {
	grid-template-columns: 1fr;
	gap: 1.5rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.step03 {
	padding-top: 7.5rem;
	padding-bottom: 7.5rem;
	background-size: 250% 100%;
}

.sub-contact__title {
	font-size: 1.5rem;
}

.sub-contact__text {
	font-size: 1rem;
}

.sub-contact__text a {
	font-size: 1rem;
}

.sub-contact__text a::before {
	width: 1.25rem;
	height: 1.25rem;
}

.support-intro {
	background-position: center bottom;
}

.support-intro__inner.inner::before {
	width: 10rem;
	left: calc(50% - min(48vw, 18.75rem));
	bottom: -10rem;
}

.support-intro__content-wrapper::before {
	width: 8.75rem;
	bottom: -8.75rem;
	right: calc(50% - min(48vw, 18.75rem));
}

.support-intro__title {
	font-size: 1.625rem;
}

.support-intro__text {
	font-size: 1rem;
}

.support-intro.support-intro--about {
	padding-bottom: 11.25rem;
}

.support-intro--about .support-intro__inner.inner::before {
	width: 7.5rem;
	left: calc(50% - min(48vw, 18.75rem));
	bottom: -10rem;
}

.support-intro--about .support-intro__content-wrapper::before {
	width: 7.5rem;
	bottom: -8.75rem;
	right: calc(50% - min(48vw, 18.75rem));
}

.text {
	font-size: 1rem;
}

.text.text--md {
	font-size: 1.5rem;
}

.text.text--md.top-access__text,
.text.text--md.top-contact__text {
	font-size: 1.125rem;
}

.text.voice__text,
.text.proceed__text,
.text.commitment-item__text,
.text.case__text,
.text.policy-item__text,
.text.free-design__text,
.text.custom-home__text,
.text.top-news__text,
.text.top-case__text,
.text.top-service__text + .text.top-service__text,
.text.top-intro__text,
.text.top-pickup__text,
.text.top-access__text,
.text.top-contact__text {
	font-size: 0.875rem;
	line-height: 2;
}

.text.top-access__text {
	line-height: 1.7857142857;
}

.text.top-news__text,
.text.top-case__text {
	font-weight: var(--fw-bold);
	line-height: 1.6428571429;
}

.title-square {
	padding-block: 0.625rem;
	padding-inline: 1rem;
	font-size: 1.5rem;
}

.title-square::after {
	transform: translate(50%, 1.4375rem);
	height: 1.875rem;
}

.title__md-text {
	font-size: 1.25rem;
	margin-bottom: -0.5rem;
}

.title__ja {
	font-size: 1.625rem;
}

.title--pickup .title__ja {
	color: var(--color-green);
}

.title--pickup .title__image {
	width: 9.3125rem;
	filter: brightness(0);
	top: -3.8125rem;
	left: calc(50% - min(55vw, 21.875rem));
}

.title--case .title__image {
	top: -2.75rem;
	width: 4.75rem;
	left: calc(50% - min(52vw, 20.5rem));
}

.title--voice .title__image {
	top: -3rem;
	width: 4.8125rem;
	left: calc(50% - min(50vw, 25rem));
}

.title--voice-sub .title__image {
	top: -3rem;
	width: 4.8125rem;
	left: calc(50% - min(50vw, 21.875rem));
}

.title--news .title__image {
	width: 14.125rem;
	top: -5.875rem;
	left: calc(50% - min(52vw, 25rem));
}

.title--access .title__image {
	width: 6.6875rem;
	top: -3.5625rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--contact .title__ja {
	line-height: 1.3846153846;
}

.title--contact .title__image {
	width: 8rem;
}

.title--custom-home .title__image {
	width: 11.25rem;
	top: -3.75rem;
	left: calc(50% - min(53vw, 18.75rem));
}

.title--free-design .title__image {
	width: 11.25rem;
	top: -3.75rem;
	left: calc(50% - min(50vw, 19.5rem));
}

.title--policy .title__image {
	width: 8.75rem;
	left: calc(50% - min(54vw, 21.875rem));
}

.title--commitment .title__image {
	width: 11.25rem;
	top: -3.75rem;
	left: calc(50% - min(53vw, 21.875rem));
}

.title--proceed .title__image {
	top: -5rem;
	left: calc(50% - min(53vw, 21.875rem));
	width: 13.75rem;
}

.title--faq .title__image {
	left: calc(50% - min(49vw, 21.875rem));
	width: 4.375rem;
}

.title--profile .title__image {
	left: calc(50% - min(49vw, 21.875rem));
	width: 6.875rem;
	top: -3.125rem;
}

.title--name .title__image {
	left: calc(50% - min(54vw, 21.875rem));
	width: 9.375rem;
	top: -3.125rem;
}

.title--message .title__image {
	left: calc(50% - min(54vw, 21.875rem));
	width: 7.5rem;
	top: -3.75rem;
}

.title--sub-access .title__image {
	width: 6.6875rem;
	top: -3.5625rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--maintenance .title__image {
	width: 11.25rem;
	top: -3.5625rem;
	left: calc(50% - min(53vw, 21.875rem));
}

.title--consultation .title__image {
	width: 12.5rem;
	top: -3.5625rem;
	left: calc(50% - min(53vw, 21.875rem));
}

.title--column .title__image {
	width: 7.5rem;
	top: -3.5625rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--column .title__ja {
	font-size: 1.625rem;
}

.title--flow .title__image {
	width: 5rem;
	top: -2.9375rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--service .title__image {
	width: 10rem;
	top: -3.5625rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--start .title__image {
	width: 11.25rem;
	top: -4.375rem;
	left: calc(50% - min(53vw, 21.875rem));
}

.title--step01 .title__image {
	width: 8.75rem;
	top: -4.375rem;
	left: calc(50% - min(50vw, 21.875rem));
}

.title--step02 .title__image {
	width: 8.75rem;
	top: -4.375rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--step03 .title__image {
	width: 8.75rem;
	top: -4.375rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--step04 .title__image {
	width: 8.75rem;
	top: -4.375rem;
	left: calc(50% - min(51vw, 21.875rem));
}

.title--care .title__image {
	top: -5rem;
	left: calc(50% - min(53vw, 21.875rem));
	width: 13.75rem;
}

.title--about-faq .title__image {
	top: -5rem;
	left: calc(50% - min(49vw, 19.875rem));
	width: 5rem;
}

.title--about-contact .title__image {
	width: 8rem;
	top: -4.375rem;
	left: calc(50% - min(48vw, 19.75rem));
}

.title--renovation .title__image {
	width: clamp(12.5rem, 51.2820512821vw, 15.625rem);
	top: -4.375rem;
	left: calc(50% - min(52vw, 21.875rem));
}

.title--redesign .title__image {
	width: clamp(12.5rem, 51.2820512821vw, 15.625rem);
	top: -4.375rem;
	left: calc(50% - min(46vw, 15.75rem));
}

.title--redesign .title__ja {
	font-size: 1.625rem;
}

.title--renovation-policy .title__image {
	width: 7.5rem;
	left: calc(50% - min(50vw, 21.875rem));
}

.title--renovation-case .title__image {
	top: -2.75rem;
	width: 4.75rem;
	left: calc(50% - min(52vw, 20.5rem));
}

.title--renovation-commitment .title__image {
	width: 11.25rem;
	top: -3.75rem;
	left: calc(50% - min(53vw, 21.875rem));
}

.title--renovation-proceed .title__image {
	top: -5rem;
	left: calc(50% - min(53vw, 21.875rem));
	width: 13.75rem;
}

.top-access__title {
	margin-left: 1.5rem;
}

.top-access__contents {
	grid-template-columns: 1fr;
	margin-left: 1.5rem;
	margin-top: -0.125rem;
}

.top-access__text + .top-access__text {
	margin-top: 0.6875rem;
	padding-bottom: 2.125rem;
}

.top-access__info {
	display: flex;
	flex-direction: column;
	gap: 0.4375rem;
}

.top-access__info span {
	width: -moz-fit-content;
	width: fit-content;
}

.top-access__link {
	margin-top: 2.5rem;
	text-align: center;
}

.top-case {
	background-image: url("../images/top/case_bg_sp.png");
}

.top-case {
	background-size: 100% 38.6875rem;
	padding-bottom: 7.625rem;
	background-position: right bottom;
}

.top-case::before {
	right: calc(50% - min(48vw, 10.5625rem));
	width: 9.125rem;
	top: -6.75rem;
}

.top-case__title {
	margin-left: 2.125rem;
}

.top-case__text {
	margin-left: 2.125rem;
	margin-top: 0.5rem;
}

.top-case__slider {
	margin-top: 2.875rem;
}

.top-case__link {
	margin-top: 2.5625rem;
	text-align: center;
}

.top-contact {
	padding-block: 11.6875rem 1.25rem;
}

.top-contact::before {
	top: -1.875rem;
	left: calc(50% - min(48vw, 2.1875rem));
	width: 12.4375rem;
}

.top-contact__container {
	padding-block: 3.75rem 1.875rem;
	padding-inline: 1.875rem;
}

.top-contact__container::before {
	width: 8.75rem;
	top: -3.9375rem;
	right: calc(50% - min(48vw, 9.1875rem));
}

.top-contact__title {
	margin-left: 0;
}

.top-contact__text {
	margin-left: 0;
	margin-top: 0.875rem;
}

.top-contact__text + .top-contact__text {
	margin-top: 0.125rem;
}

.top-contact__links {
	margin-top: 1.5rem;
}

.top-contact.top-contact--sub {
	padding-top: 7.5rem;
	padding-bottom: 5rem;
}

.top-contact--sub .top-contact__container {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.top-contact--sub .top-contact__container::before {
	width: 8.75rem;
	top: -3.9375rem;
	right: calc(50% - min(48vw, 9.1875rem));
}

.top-intro::before {
	width: 6.625rem;
	top: -3.3125rem;
	right: calc(50% - min(48vw, 10.25rem));
}

.top-intro__inner.inner {
	grid-template-columns: 1fr;
	padding-left: 20px;
	max-width: 600px;
}

.top-intro__image {
	grid-row: 2/3;
	margin-top: -3.9375rem;
	margin-left: -20px;
	width: min(87.7333333333vw, 20.5625rem);
	position: static;
}

.top-intro__title {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	margin-top: 0;
	grid-column: unset;
}

.top-intro__content {
	grid-column: unset;
	margin-top: 2.125rem;
	margin-left: 0;
	grid-row: 3/4;
}

.top-intro__link {
	margin-top: 2.3125rem;
	text-align: center;
}

.top-news {
	padding-block: 12.625rem 0;
}

.top-news::before {
	width: 10.4375rem;
	top: -4.5rem;
	right: calc(50% - min(49vw, 10.625rem));
}

.top-news__title {
	margin-left: 1.875rem;
}

.top-news__text {
	margin-left: 1.875rem;
	margin-top: 0.5rem;
}

.top-news__slider {
	margin-top: 3.25rem;
}

.top-news__link {
	margin-top: 1.5rem;
}

.top-news__boundary {
	height: 17.375rem;
	background-position: right top;
	margin-top: 6.625rem;
}

.top-news__boundary::before {
	width: 10.5rem;
	top: -2rem;
	left: calc(50% - min(50vw, 10.8125rem));
}

.top-pickup::before {
	width: 7.4375rem;
	top: -3.5rem;
	right: calc(50% - min(48vw, 8.125rem));
}

.top-pickup__inner.inner {
	padding-left: 2.5rem;
}

.top-pickup__content {
	margin-right: -20px;
	padding-right: 20px;
	padding-block: 8.25rem 5.3125rem;
	padding-left: 2.5625rem;
}

.top-pickup__text {
	margin-top: 0.5rem;
}

.top-pickup__slide {
	margin-top: 1.125rem;
	padding-right: 1.25rem;
}

.top-service {
	padding-block: 5.75rem 6.8125rem;
	background-image: url("../images/top/service_bg_sp.png");
}

.top-service__inner.inner {
	grid-template-columns: 1fr;
}

.top-service__content {
	display: contents;
}

.top-service__title.copy {
	margin-left: 1rem;
}

.top-service__text {
	margin-top: 3rem;
}

.top-service__text + .top-service__text {
	margin-top: 0.9375rem;
}

.top-service__link {
	margin-top: 2.0625rem;
}

.top-service__figure-wrap {
	grid-row: 2/3;
	margin-top: 3.125rem;
}

.top-service__figure {
	width: 14.125rem;
	translate: 0;
}

.top-service__figure::after {
	width: 10.8125rem;
}

.top-service__figure-item {
	width: 4.5rem;
	font-size: 11px;
	white-space: nowrap;
}

.top-voice::before {
	top: -10.8125rem;
	width: 10.375rem;
	right: calc(50% - min(48vw, 9.9375rem));
}

.top-voice__inner.inner {
	padding-inline: 1.25rem;
	max-width: 37.5rem;
}

.top-voice__content-wrap {
	margin-top: 1.75rem;
}

.top-voice__text {
	margin-top: 0.8125rem;
	font-size: 1rem;
}

.top-voice__link {
	text-align: center;
	margin-top: 1.875rem;
}

.topics-article__meta {
	gap: 0.5rem;
}

.archives-item__date {
	font-size: re(16);
}

.topics-article__cat {
	font-size: 0.875rem;
}

.topics-article__title {
	font-size: 1.25rem;
	margin-top: 1rem;
}

.topics-article__thumbnail {
	border-radius: 0.625rem;
}

.topics-article__main {
	margin-top: 2.5rem;
}

.topics-article__main p {
	font-size: 0.875rem;
}

.topics-article__main h2 {
	font-size: 1.125rem;
	padding-left: 1rem;
}

.topics-article__main h3 {
	font-size: 1rem;
}

.topics-article__main img {
	border-radius: 0.625rem;
}

.voice-article__title {
	font-size: 1.375rem;
}

.voice-article__thumbnail {
	border-radius: 0.625rem;
}

.voice-article__list {
	margin-top: 2.5rem;
	grid-template-columns: 6.25rem 1fr;
	padding-bottom: 1rem;
}

.voice-article__list + .voice-article__list {
	margin-top: 1rem;
}

.voice-article__list-title {
	font-size: 1.125rem;
}

.voice-article__list-text {
	font-size: 1rem;
}

.voice-article__main {
	margin-top: 3.75rem;
}

.voice-article__main p {
	font-size: 0.875rem;
}

.voice-article__main h2 {
	font-size: 1.125rem;
	padding-left: 1rem;
}

.voice-article__comment::before {
	width: 10rem;
}

.voice-article__comment-title {
	font-size: 1.5rem;
}

.voice-article__comment-text {
	font-size: 0.875rem;
}

.voice-card {
	clip-path: polygon(0 0, 100% 7%, 100% 100%, 0% 100%);
	width: 14.25rem;
	aspect-ratio: 228/364;
	margin-right: 1.5rem;
}

.voice-card__link {
	padding-block: 1.25rem;
	aspect-ratio: 338/264;
	padding-inline: 1.625rem;
}

.voice-card__title {
	font-size: 1rem;
}

.voice-card__text {
	font-size: max(0.75rem, 10px);
}

.voice-item__link {
	padding-block: 1.25rem;
	aspect-ratio: 338/264;
	padding-inline: 1.625rem;
}

.voice-slider__pagination {
	margin-top: 1.375rem;
}

.voice-slider__pagination .swiper-pagination-bullet {
	width: 6.25rem;
}

.voice__title {
	margin-left: 2.5rem;
}

.voice__text {
	margin-left: 2.5rem;
}

.voice__list {
	margin-inline: 0;
	grid-template-columns: 1fr;
	height: auto;
}

.voice__link {
	margin-top: 2.5rem;
}

.works-article__head {
	gap: 0rem;
	flex-direction: column;
	align-items: start;
}

.works-article__cat {
	font-size: 0.875rem;
}

.works-article__title {
	font-size: 1.5rem;
}

.works-article__slider-prev,
.works-article__slider-next {
	width: 0.625rem;
	height: 3.125rem;
}

.works-article__list {
	margin-top: 2.5rem;
	grid-template-columns: 6.25rem 1fr;
	padding-bottom: 1rem;
}

.works-article__list + .works-article__list {
	margin-top: 1rem;
}

.works-article__list-title {
	font-size: 1.125rem;
}

.works-article__list-text {
	font-size: 1rem;
}

.works-article__main img {
	border-radius: 0.625rem;
}

.works-article__main p {
	font-size: 1rem;
}

.works-slider__slide {
	width: 17.5rem;
	margin-inline: 0.625rem;
}

.pc-only {
	display: none;
}

.sp-only {
	display: block;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@keyframes fadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@keyframes rotate5 {

from {
	transform: rotate(0deg);
}

to {
	transform: rotate(5deg);
}

}

