@font-face {
	font-display: swap;
	font-weight: 400;
	font-style: normal;
	font-family: "Noto Sans JP";
	src: url("../font/NotoSansJP-VariableFont_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 500;
	font-style: normal;
	font-family: "Noto Sans JP";
	src: url("../font/NotoSansJP-VariableFont_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 700;
	font-style: normal;
	font-family: "Noto Sans JP";
	src: url("../font/NotoSansJP-VariableFont_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 400;
	font-style: normal;
	font-family: "Zen Kaku Gothic New";
	src: url("../font/ZenKakuGothicNew-Regular.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 500;
	font-style: normal;
	font-family: "Zen Kaku Gothic New";
	src: url("../font/ZenKakuGothicNew-Medium.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 700;
	font-style: normal;
	font-family: "Zen Kaku Gothic New";
	src: url("../font/ZenKakuGothicNew-Bold.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 400;
	font-style: normal;
	font-family: "Homemade Apple";
	src: url("../font/HomemadeApple-Regular.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 400;
	font-style: normal;
	font-family: "Roboto";
	src: url("../font/Roboto-VariableFont_wdth_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 500;
	font-style: normal;
	font-family: "Roboto";
	src: url("../font/Roboto-VariableFont_wdth_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 600;
	font-style: normal;
	font-family: "Roboto";
	src: url("../font/Roboto-VariableFont_wdth_wght.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-weight: 700;
	font-style: normal;
	font-family: "Roboto";
	src: url("../font/Roboto-VariableFont_wdth_wght.woff") format("woff");
}

/*****************************************
 * 数値から単位を取り除く
 * 参考
 * https://css-tricks.com/snippets/sass/
******************************************/

/*****************************************
 * px→remの計算
 * 参考
 * https://webdou.net/sass-rem/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/

/*****************************************
 * vwの計算
 * 参考
 * https://webdou.net/sass-vw/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/

html {
	font-size: 16px;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 3.75rem;
}

body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	color: #111111;
	background-color: #fbfbfb;
}

a {
	text-decoration: none;
	color: inherit;
	transition: opacity 0.3s;
}

/*
 * 参考
 * https: //github.com/Andy-set-studio/modern-css-reset/blob/master/src/reset.css
*/

/* Box sizing rules */

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* remove default margin */

body,
h1,
h2,
h3,
h4,
h5,
p,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */

ul,
ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Set core root defaults */

html:focus-within {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img,
picture {
	max-width: 100%;
	display: block;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* remove all animations and transitions for people that prefer not to see them */

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.header {
	height: 3.75rem;
	background-color: transparent;
	position: fixed;
	width: 100%;
	z-index: 1000;
	transition: 0.3s;
}

.header.is-active {
	background-color: rgba(255, 255, 255, 0.9);
}

.header__inner {
	padding: 0 1rem;
	height: inherit;
	display: flex;
	justify-content: space-between;
}

.header__logo {
	max-width: 9.9375rem;
	width: 100%;
	height: inherit;
	z-index: 999;
}

.header__logo a {
	height: inherit;
	display: flex;
	align-items: center;
}

.header__logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.header__nav {
	display: none;
	height: inherit;
}

.header__nav-list {
	display: flex;
	gap: min(2.5vw, 2.25rem);
	height: inherit;
}

.header__nav-item {
	height: inherit;
}

.header__nav-item a {
	height: inherit;
	display: flex;
	align-items: center;
	gap: min(0.5555555556vw, 0.5rem);
	color: #033163;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.header__nav-item span {
	display: inline-block;
	width: 1.125rem;
	padding-top: 0.125rem;
}

.header__nav-item a span img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 1/1;
}

.header__hamburger {
	margin: 0;
	padding: 0;
	outline: none;
	border: none;
	position: relative;
	top: 0.3125rem;
	z-index: 999;
	width: 2.5rem;
	height: inherit;
	cursor: pointer;
	transition: 0.3s;
}

.header__hamburger.is-open {
	background-color: transparent;
}

.header__hamburger span {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	display: block;
	width: 1.25rem;
	height: 2px;
	background-color: #033163;
	transition: 0.5s;
}

.header__hamburger p {
	position: relative;
	top: 0.125rem;
	color: #033163;
	font-size: 0.625rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: -0.03em;
	opacity: 1;
	transition: opacity 0.2s ease;
}

.header__hamburger span:nth-of-type(1) {
	top: -0.1875rem;
}

.header__hamburger span:nth-of-type(2) {
	top: 0;
}

.header__hamburger span:nth-of-type(3) {
	top: 0.1875rem;
}

.header__hamburger.is-open span:nth-of-type(1) {
	top: 0.125rem;
	transform: translateX(-50%) rotate(45deg);
}

.header__hamburger.is-open span:nth-of-type(2) {
	opacity: 0;
}

.header__hamburger.is-open span:nth-of-type(3) {
	top: -0.125rem;
	transform: translateX(-50%) rotate(-45deg);
}

.header__drawer {
	padding: 6.25rem 20px;
	display: none;
	position: absolute;
	z-index: 900;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: white;
	overflow-y: scroll;
	scrollbar-width: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease, background-color 0.3s, color 0.3s;
}

.header__drawer.is-open {
	display: block;
	opacity: 1;
	visibility: visible;
}

.header__drawer::-webkit-scrollbar {
	display: none;
}

.header__drawer-list {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.header__drawer-item a {
	color: #033163;
	font-size: 1.0625rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	justify-content: center;
}

.header__drawer-sns-items {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin-top: 2rem;
}

.header__drawer-sns-item {
	width: 2rem;
}

.header__drawer-contact {
	margin-top: 2.25rem;
}

.inner {
	width: 100%;
	max-width: 600px;
	margin-inline: auto;
	padding-inline: 20px;
}

.layout-404 {
	padding-block: 6.25rem 3.75rem;
}

.layout-cta {
	padding-block: 32vw;
	background-color: #fff;
	position: relative;
	overflow-x: clip;
}

.layout-cta-lower {
	padding-block: 32vw;
	background-color: #fff;
	position: relative;
}

.layout-cta::before,
.layout-cta-lower::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background-image: url(./../images/common/cta-bg1.webp);
	width: 40vw;
	aspect-ratio: 1/1;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.layout-cta::after,
.layout-cta-lower::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 36.2666666667vw;
	aspect-ratio: 1/1;
	background-image: url(./../images/common/cta-bg2.webp);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.layout-member {
	margin-top: 6.4375rem;
}

.layout-mv {
	overflow-x: clip;
	position: relative;
}

.layout-page-contact-items {
	position: fixed;
	bottom: 0.75rem;
	padding-inline: 1rem;
	width: 100%;
	z-index: 800;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.layout-page-contact-items.is-open {
	opacity: 1;
	visibility: visible;
}

.layout-page-contact-items.is-close {
	opacity: 0;
	visibility: hidden;
}

.layout-page-contact-items.is-close-important {
	opacity: 0 !important;
	visibility: hidden !important;
}

.layout-reform-pack {
	margin-top: 5rem;
}

.layout-section {
	padding-top: 5rem;
	overflow-x: clip;
}

.layout-section2 {
	padding-block: 7rem 5rem;
}

.layout-showroom {
	margin-top: 5rem;
}

.layout-single-recommend {
	margin-top: 6.25rem;
}

.layout-single-works {
	margin-top: 6.25rem;
}

.layout-top-news {
	margin-top: 5.5rem;
}

.layout-top-section {
	margin-top: 5rem;
}

.layout-breadcrumb {
	padding-block: 0.75rem;
	background-color: #fff;
}

.breadcrumb {
	width: 100%;
}

.breadcrumb__inner {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.125rem 0.75rem;
	padding-inline: 20px;
	background-color: #fff;
}

.p-breadcrumb__icon {
	width: 0.3125rem;
}

.p-breadcrumb__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 5/8;
}

.breadcrumb__title {
	color: #727981;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.breadcrumb__title.breadcrumb__title--navy {
	color: #033163;
}

.button-link {
	display: inline-block;
	padding: 0.8125rem 1.5rem;
	border-radius: 0.25rem;
	background-color: #033163;
	border: 1px solid #033163;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	width: 12.125rem;
	display: flex;
	justify-content: center;
	margin-inline: auto;
	transition: background-color 0.3s, color 0.3s;
	position: relative;
}

.reform-pack__button-link.button-link {
	max-width: 18.125rem;
	width: 100%;
}

.button-link::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2.25rem;
	width: 0.3125rem;
	aspect-ratio: 5/8.76;
	-webkit-mask-image: url(./../images/common/arrow.svg);
	mask-image: url(./../images/common/arrow.svg);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #fff;
	transition: background-color 0.3s;
}

.section-title {
	position: relative;
	text-align: center;
	padding-top: 2rem;
}

.section-title__en {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 1.25rem;
	color: #eeeeee;
	font-size: 3rem;
	font-weight: 400;
	font-family: "Homemade Apple", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	z-index: 0;
}

.section-title__ja {
	color: #033163;
	font-size: 1.625rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	position: relative;
	z-index: 2;
}

.section-title::before {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 0rem;
	width: 2.0625rem;
	aspect-ratio: 33/16;
	-webkit-mask-image: url("./../images/common/polygon.svg");
	mask-image: url("./../images/common/polygon.svg");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #efcc8b;
	z-index: 3;
}

.works-h2-title {
	padding: 1rem 1.5rem 1rem 4rem;
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	background-color: #f3f3f3;
	position: relative;
}

.works-h2-title::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 1.1875rem;
	width: 1.1875rem;
	aspect-ratio: 1/1;
	background-image: url(./../images/common/title-icon.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.page-numbers {
	display: flex;
	justify-content: center;
	gap: 1rem;
	height: -moz-fit-content;
	height: fit-content;
}

.page-numbers li span,
.page-numbers li a {
	display: block;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #727981;
	background-color: #fff;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	transition: background-color 0.3s, color 0.3s, border-color 0.3s;
	border: 2px solid #727981 !important;
	border-radius: 0.1875rem;
	width: 2.1875rem;
	height: 2.1875rem;
}

.page-numbers.dots {
	border: none !important;
	background-color: transparent !important;
}

.prev.page-numbers,
.next.page-numbers {
	position: relative;
	display: block;
	border: none !important;
	background-color: transparent;
}

.prev.page-numbers::before,
.next.page-numbers::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 0.875rem;
	aspect-ratio: 1/1;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #727981;
	z-index: 1;
	transition: background-color 0.3s;
}

.prev.page-numbers::before {
	-webkit-mask-image: url(./../images/common/page-prev.svg);
	mask-image: url(./../images/common/page-prev.svg);
}

.next.page-numbers::before {
	-webkit-mask-image: url(./../images/common/page-next.svg);
	mask-image: url(./../images/common/page-next.svg);
}

.page-numbers .current {
	border: 2px solid #e2b157 !important;
	color: #e2b157 !important;
}

.access-container {
	display: flex;
	flex-direction: column-reverse;
	gap: 2rem;
	margin-top: 2rem;
}

.access-img {
	max-width: 35rem;
	width: 100%;
}

.access-img iframe {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 560/372;
}

.access-info {
	width: 100%;
}

.access-info-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	border-bottom: 1px solid #727981;
	padding: 0.75rem 1rem;
}

.access-info-title {
	width: 5.4375rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.access-info-description {
	flex: 1;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.access-info-bottom {
	margin-top: 1.5rem;
	padding: 1rem;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	background-color: #fff;
	border: 1px solid #727981;
	border-radius: 0.25rem;
}

.access-info-bottom-wrap {
	display: flex;
	flex-direction: column;
}

.access-info-bottom-title {
	color: #111111;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.access-info-bottom-description {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.achievement__list {
	margin-top: 1.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

.achievement__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 0;
}

.achievement__item-link {
	display: contents;
}

.achievement__img {
	width: 100%;
	grid-row: 1;
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	border-radius: 0.25rem;
	overflow: hidden;
}

.achievement__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 303/201;
}

.achievement__text {
	grid-row: 2;
	margin-top: 0.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 3;
}

.achievement__tags {
	grid-row: 3;
	margin-top: 0.5rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.achievement__tag {
	padding: 0.375rem 1.125rem;
	border-radius: 2rem;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.1;
	letter-spacing: 0em;
	height: -moz-fit-content;
	height: fit-content;
	transition: background-color 0.3s, color 0.3s;
	text-transform: uppercase;
	border: 1px solid #111111;
}

.achievement__tag--black {
	background-color: #fff;
	color: #111111;
	border: 1px solid #111111;
}

.achievement__tag--green {
	background-color: #aadcd6;
	color: #fff;
	border: 1px solid #aadcd6;
}

.achievement__tag--pink {
	background-color: #f79cb8;
	color: #fff;
	border: 1px solid #f79cb8;
}

.achievement__tag--blue {
	background-color: #8fb3db;
	color: #fff;
	border: 1px solid #8fb3db;
}

.achievement__item-info-tags {
	margin-top: 1rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 0.5rem;
}

.achievement__item-info-tags__wrap {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.achievement__item-info-tags__wrap-title {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	padding: 0.375rem 0.5rem;
	background-color: #efcc8b;
	width: -moz-fit-content;
	width: fit-content;
}

.achievement__item-info-tags__wrap-description {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	flex: 1;
}

.top-achievement__list {
	margin-top: 1.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

.top-achievement__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
}

.top-achievement__item-link {
	display: contents;
}

.top-achievement__img {
	width: 100%;
	grid-row: 1;
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	border-radius: 0.25rem;
	overflow: hidden;
}

.top-achievement__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 303/201;
}

.top-achievement__text {
	grid-row: 2;
	margin-top: 0.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 3;
}

.top-achievement__tags {
	grid-row: 3;
	margin-top: 0.5rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.top-achievement__tag {
	padding: 0.375rem 1.125rem;
	border-radius: 2rem;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.1;
	letter-spacing: 0em;
	height: -moz-fit-content;
	height: fit-content;
	transition: background-color 0.3s, color 0.3s;
	text-transform: uppercase;
}

.top-achievement__tag--black {
	background-color: #fff;
	color: #111111;
	border: 1px solid #111111;
}

.top-achievement__tag--green {
	background-color: #aadcd6;
	color: #fff;
	border: 1px solid #aadcd6;
}

.top-achievement__tag--pink {
	background-color: #f79cb8;
	color: #fff;
	border: 1px solid #f79cb8;
}

.top-achievement__tag--blue {
	background-color: #8fb3db;
	color: #fff;
	border: 1px solid #8fb3db;
}

.top-achievement__button {
	margin-top: 2rem;
}

.top-achievement__no-posts,
.achievement__no-posts {
	margin-top: 2.5rem;
	color: #696969;
	font-size: 1.75rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.75;
	letter-spacing: 0em;
	text-align: center;
}

.actions__list {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.actions__item {
	padding: 0.5rem 0.75rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: #fff;
	border-radius: 1.25rem;
	text-align: center;
	letter-spacing: 0.05em;
}

.actions__item--yellow {
	background-color: #f9b233;
}

.actions__item--green {
	background-color: #1db954;
}

.actions__item--blue {
	background-color: #3b82f6;
}

.archive-article {
	padding-block: 6.25rem 7.5rem;
	position: relative;
	overflow-x: clip;
}

.archive-article::before {
	content: "";
	position: absolute;
	top: -6.25rem;
	left: 0;
	width: 90rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -1;
}

.archive-article:after {
	content: "";
	position: absolute;
	bottom: -18.75rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -2;
}

.archive-article__bg {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.archive-article__bg img {
	width: 100%;
	height: 100%;
}

.archive-article__search-title {
	color: #033163;
	font-size: 1.5rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	position: relative;
	padding-left: 3.25rem;
}

.archive-article__search-title::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0rem;
	width: 2.25rem;
	aspect-ratio: 1/1;
	-webkit-mask-image: url(./../images/common/search.svg);
	mask-image: url(./../images/common/search.svg);
	-webkit-mask-size: cover;
	mask-size: cover;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #033163;
}

.archive-article__search-list {
	margin-top: 2rem;
}

.archive-article__search-tag {
	cursor: pointer;
}

.archive-article__pagination {
	margin-top: 2.5rem;
}

.archive-article__search-list .news-item__category {
	cursor: pointer;
	transition: background-color 0.3s, color 0.3s;
}

.archive-article__search-list .news-item__category.active {
	background-color: #111111;
	color: #fff;
}

.company-banner {
	max-width: 18.75rem;
	width: 100%;
	margin-top: 3.75rem;
	margin-inline: auto;
}

.company-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1200/600;
}

.company-img {
	width: 100%;
	margin-top: 3.75rem;
}

.company-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1440/460;
}

.company {
	padding-top: 6.25rem;
}

.company-container {
	margin-top: 2rem;
	max-width: 37.5rem;
	width: 100%;
	margin-inline: auto;
}

.company-wrap {
	display: flex;
	align-items: stretch;
	flex-direction: column;
}

.company-title,
.company-description {
	background-color: #fff;
	color: #111111;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 0em;
	line-height: 1.8;
	position: relative;
}

.company-title::after,
.company-description::after {
	content: "";
	position: absolute;
	left: 0;
	z-index: 2;
}

.company-description::after {
	bottom: -1.5px;
	width: 100%;
	height: 3px;
	background-color: #efcc8b;
}

.company-title {
	font-size: 1.125rem;
	font-weight: 700;
	width: 100%;
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	padding: 1rem 1rem 0.5rem 1rem;
}

.company-description {
	font-size: 1rem;
	font-weight: 400;
	flex: 1;
	padding: 0.5rem 1rem 1rem 1rem;
}

.company-list__item {
	position: relative;
	padding-left: 1em;
}

.company-list__item::before {
	content: "";
	position: absolute;
	top: 0.875rem;
	left: 0rem;
	width: 0.25rem;
	aspect-ratio: 1/1;
	background-color: #111111;
	border-radius: 50%;
}

.concept-flow {
	padding-bottom: 6.25rem;
	position: relative;
}

.concept-flow::before {
	content: "";
	position: absolute;
	left: 0rem;
	bottom: 0;
	width: 100%;
	max-height: 51.375rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.concept-flow__items {
	margin-top: 2rem;
	display: flex;
	flex-direction: column;
	gap: 3.5rem;
	position: relative;
}

.concept-flow__items::before {
	content: "";
	position: absolute;
	top: 2%;
	left: 2.125rem;
	width: 0.25rem;
	height: 89%;
	background-color: #033163;
	z-index: -1;
}

.concept-flow-wrap {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.concept-flow__item-title {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.concept-flow__item-title-img {
	width: 4.5rem;
}

.concept-flow__item-title-img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 120/120;
}

.concept-flow__item-title-content {
	flex: 1;
}

.concept-flow__item-title-number {
	color: #8fb3db;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.concept-flow__item-title-text {
	margin-top: 0.75rem;
	color: #033163;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4642857143;
	letter-spacing: 0em;
}

.concept-flow__item-title-text span {
	font-size: 1.125rem;
	display: block;
}

.concept-flow__item-title-bottom {
	margin-top: 0.5rem;
	color: #727981;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.concept-flow__item-description {
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	padding-left: 6.25rem;
	letter-spacing: 0em;
}

.concept-reason-items {
	margin-top: 1.5rem;
}

.concept-service {
	position: relative;
	overflow-x: clip;
}

.concept-service::before {
	content: "";
	position: absolute;
	top: -18.75rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -1;
}

.concept-service__items {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2.5rem;
}

.concept-service__item-img {
	width: 100%;
}

.concept-service__item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 340/215;
}

.concept-service__item-info {
	margin-top: 1rem;
	display: flex;
	gap: 0.5rem;
}

.concept-service__item-info-left {
	width: 2rem;
}

.concept-service__item-info-left-title {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	color: #727981;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1.8;
	letter-spacing: 0.02em;
}

.concept-service__item-info-right {
	flex: 1;
}

.concept-service__item-title {
	color: #e2b157;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.concept-service__item-info-list-item {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
	padding-left: 1.625rem;
	position: relative;
}

.concept-service__item-info-list-item::before {
	content: "";
	position: absolute;
	left: 0.625rem;
	top: 0.875rem;
	width: 0.25rem;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background-color: #111111;
}

.concept-service__item-info-list-item-sub1 {
	font-size: 0.9375rem;
	line-height: 1.4375;
	display: block;
	margin-left: -1.8em;
}

.concept-service__item-info-list-item-sub2 {
	font-size: 0.9375rem;
	line-height: 1.4375;
	display: inline-block;
}

.concept-staff__texts {
	margin-top: 2rem;
}

.concept-staff__text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.concept-staff__items {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2rem 2.875rem;
}

.concept-staff__item {
	display: flex;
	gap: 0.75rem;
	flex-direction: column;
}

.concept-staff__item-info {
	width: 100%;
}

.concept-staff__item-name {
	padding: 0.5rem 1rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.concept-staff__item-name--pink {
	background-color: #f79cb8;
}

.concept-staff__item-name--blue {
	background-color: #779ac2;
}

.concept-staff__item-name--green {
	background-color: #84b2ac;
}

.concept-staff__item-name--orange {
	background-color: #e2b157;
}

.concept-staff__item-info-catch {
	margin-top: 0.75rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
}

.concept-staff__item-info-catch--pink {
	color: #f79cb8;
}

.concept-staff__item-info-catch--blue {
	color: #779ac2;
}

.concept-staff__item-info-catch--green {
	color: #84b2ac;
}

.concept-staff__item-info-catch--orange {
	color: #e2b157;
}

.concept-staff__item-info-text {
	margin-top: 0.75rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.concept-staff__item-img {
	width: 100%;
}

.concept-staff__item-img img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 208/265;
}

.concept-tabs {
	margin-top: 7.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2.1333333333vw;
	max-width: 40rem;
	width: 100%;
	padding-inline: 20px;
	margin-inline: auto;
	flex-wrap: wrap;
}

.concept-tabs__item {
	width: calc(33.3333333333% - 2.1333333333vw);
}

.concept-tabs__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 1.5rem 0.5rem 1rem 0.5rem;
	background-color: rgba(143, 179, 219, 0.4);
	clip-path: polygon(50% 0%, 100% 18%, 100% 100%, 0 100%, 0 18%);
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
	text-align: center;
	position: relative;
	height: 100%;
}

.concept-tabs__link::after {
	content: "";
	position: absolute;
	bottom: 0.5rem;
	left: 50%;
	transform: translateX(-50%);
	width: 0.65375rem;
	aspect-ratio: 10.46/3.64;
	-webkit-mask-image: url(./../images/common/tab-icon.svg);
	mask-image: url(./../images/common/tab-icon.svg);
	-webkit-mask-size: cover;
	mask-size: cover;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #fff;
}

.concept-top {
	padding-block: 17.5rem 15rem;
	position: relative;
	overflow-x: clip;
}

.concept-top::before {
	content: "";
	position: absolute;
	top: -10rem;
	left: 0;
	width: 90rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: contain;
	background-position: top center;
	background-repeat: no-repeat;
	z-index: -1;
}

.concept-top__bg {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	z-index: -1;
	border-radius: 50%;
	overflow: hidden;
}

.concept-top__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1/1;
}

.concept-top__bg1 {
	position: absolute;
	top: 1.25rem;
	left: calc(50% - min(52.5vw, 46.5rem));
	width: min(48vw, 15rem);
}

.concept-top__bg2 {
	display: none;
}

.concept-top__bg3 {
	bottom: 0;
	left: calc(50% - min(52.5vw, 48rem));
	width: min(40vw, 12.5rem);
}

.concept-top__bg4 {
	top: 5rem;
	right: calc(50% - min(55.5vw, 50rem));
	width: min(40vw, 12.5rem);
}

.concept-top__bg5 {
	display: none;
}

.concept-top__bg6 {
	bottom: 2.5rem;
	right: calc(50% - min(55.5vw, 48.5rem));
	width: min(53.3333333333vw, 14.375rem);
}

.concept-top-container {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.concept-top__title {
	color: #033163;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
	text-align: center;
}

.concept-top__subTitle {
	color: #e2b157;
	font-size: 1.25rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.9;
	letter-spacing: 0em;
	text-align: center;
}

.concept-top__tests {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.concept-top__test {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.9;
	letter-spacing: 0em;
	text-align: center;
}

.concept-top__test span {
	color: #e08da7;
}

.concept {
	position: relative;
	overflow-x: clip;
}

.concept__inner {
	max-width: 37.5rem;
	width: 100%;
	margin-inline: auto;
	padding-inline: 20px;
}

.concept__container {
	display: grid;
}

.concept__content {
	display: contents;
	width: 100%;
}

.concept__content-texts {
	margin-top: 1.5rem;
	order: 1;
	padding-inline: 1rem;
}

.concept__lead {
	color: #033163;
	font-size: 1.4375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.concept__main-text {
	margin-top: 1.375rem;
	color: #033163;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.concept__text {
	margin-top: 1rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.concept__text span {
	display: inline-block;
}

.concept__button {
	margin-top: 2rem;
}

.concept__image-box {
	width: 100%;
	margin-top: 1.5rem;
	margin-inline: calc(50% - 50vw);
	width: 100vw;
}

.concept__image {
	width: 100%;
}

.concept__image img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 688/494;
}

.concept__image-back {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 36.625rem;
	aspect-ratio: 586/180;
	z-index: -1;
}

.concept__image-back img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 586/180;
}

.concept__img--worker {
	position: relative;
	z-index: 2;
}

.concept__img--scenery {
	position: absolute;
	top: -10%;
	left: 10%;
	z-index: 1;
}

.contact-main {
	margin-top: 6.25rem;
	padding-bottom: 3.75rem;
	position: relative;
	overflow-x: clip;
}

.contact-main::after {
	content: "";
	position: absolute;
	bottom: -6.25rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -2;
}

.contact__inner {
	max-width: 600px;
	width: 100%;
	margin-inline: auto;
}

.contact-main__inner {
	max-width: 600px;
	width: 100%;
	margin-inline: auto;
}

.contact-top {
	padding-block: 6.25rem 3.75rem;
	text-align: center;
}

.contact-top__text {
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.contact__form {
	margin-top: 2rem;
}

.contact .form__wrap input,
.contact .form__textarea textarea {
	border-radius: 0.5rem;
}

.contact .form__label span {
	background-color: #ed5959;
	border-radius: 0;
	padding: 0.1875rem 0.375rem;
}

.contact__form-main {
	margin-top: 2rem;
}

.submit-container {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 2rem;
}

.submit-box {
	position: relative;
	display: inline-block;
}

.submit-box::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2.25rem;
	width: 0.3125rem;
	aspect-ratio: 5/8.76;
	-webkit-mask-image: url(./../images/common/arrow.svg);
	mask-image: url(./../images/common/arrow.svg);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #fff;
	transition: background-color 0.3s;
}

.wpcf7-form-control.contact-button {
	display: inline-block;
	padding: 1.28125rem 1.5rem;
	border-radius: 0.25rem;
	background-color: #033163;
	border: 1px solid #033163;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	width: 12.125rem;
	display: flex;
	justify-content: center;
	margin-inline: auto;
	transition: background-color 0.3s, color 0.3s;
	position: relative;
}

.contact-button:disabled,
.contact-button:disabled:hover,
.contact-button:disabled:focus {
	background-color: #ccc;
	cursor: not-allowed;
	border: 1px solid #ccc;
	color: #fff;
	pointer-events: none;
}

.submit-box:has(input:disabled)::after {
	background-color: #fff;
}

.wpcf7-spinner {
	display: none;
}

.confirm_area,
.thanks_area {
	display: none;
}

.wpcf7-response-output {
	display: none;
}

.confirm_area-title {
	color: #111111;
	font-size: 1.5rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.confirm_area-text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.confirm_area-main {
	margin-top: 2rem;
}

.contact-thanks-main {
	padding-block: 6.25rem 3.75rem;
}

.contact-thanks-main__button {
	text-align: center;
	margin-top: 2rem;
}

.contact-thanks-button {
	display: inline-block;
	padding: 1.28125rem 1.5rem;
	border-radius: 0.25rem;
	background-color: #033163;
	border: 1px solid #033163;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	width: 12.125rem;
	display: flex;
	justify-content: center;
	margin-inline: auto;
	transition: background-color 0.3s, color 0.3s;
	position: relative;
}

.contact-thanks-button::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2.25rem;
	width: 0.3125rem;
	aspect-ratio: 5/8.76;
	-webkit-mask-image: url(./../images/common/arrow.svg);
	mask-image: url(./../images/common/arrow.svg);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #fff;
	transition: background-color 0.3s;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
	color: #b9b9b9;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 2;
	letter-spacing: 0em;
}

input::placeholder,
textarea::placeholder,
.form__wrap select:has(option:checked[value=選択してください。]) {
	color: #b9b9b9;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 2;
	letter-spacing: 0em;
}

.content-items {
	display: flex;
	flex-direction: column;
	gap: 3.75rem;
}

.content-item {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 1.5rem;
	position: relative;
	padding-block: 2rem;
}

.content-item::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
	z-index: -1;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}

.content-item:nth-child(1)::before {
	background: url(./../images/showroom/showroom-point-bg1.jpg) no-repeat center center/cover;
}

.content-item:nth-child(2)::before {
	background: url(./../images/showroom/showroom-point-bg2.jpg) no-repeat center center/cover;
}

.content-item:nth-child(3)::before {
	background: url(./../images/showroom/showroom-point-bg3.jpg) no-repeat center center/cover;
}

.content-item__info {
	width: 100%;
}

.content-item__title {
	width: 7.5rem;
}

.content-item__title img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 169/48;
}

.content-item__subTitle {
	margin-top: 1.5rem;
	color: #033163;
	font-size: clamp(1.25rem, 1.011rem + 1.02vw, 1.5rem);
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
}

.content-item__texts {
	margin-top: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
}

.content-item__text {
	color: #111111;
	font-size: clamp(1rem, 0.88rem + 0.51vw, 1.125rem);
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.content-item__img {
	width: 100%;
}

.content-item__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 484/484;
}

.cta {
	position: relative;
	z-index: 2;
}

.cta__top {
	text-align: center;
}

.cta__title {
	width: 16.25rem;
	margin-inline: auto;
}

.cta__title img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 307/62;
}

.cta__text {
	margin-top: 2rem;
	color: #033163;
	font-size: 1.4375rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
}

.cta__text-orange {
	color: #e2b157;
	font-size: 2.5rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.2391304348;
	letter-spacing: 0.04em;
}

.cta__text-pink {
	color: #f79cb8;
}

.cta__bottom {
	margin-top: 2rem;
}

.cta__bottom-items {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2.5rem;
	max-width: 52.5rem;
	width: 100%;
	margin-inline: auto;
}

.cta__bottom-item-title {
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4583333333;
	letter-spacing: 0em;
	text-align: center;
	position: relative;
	padding-bottom: 0.0625rem;
}

.cta__bottom-item-title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: -1;
}

.cta__bottom-item-title--line::after {
	width: 10.5rem;
	aspect-ratio: 200/8;
	background-image: url(./../images/common/title-wave.svg);
}

.cta__bottom-item-title--tel::after {
	width: 18.75rem;
	aspect-ratio: 300/8;
	background-image: url(./../images/common/title-wave2.svg);
}

.cta__bottom-item-link {
	margin-top: 1rem;
	display: block;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.1666666667;
	letter-spacing: 0em;
	padding-left: 2.625rem;
	text-align: right;
	position: relative;
	max-width: 17.5rem;
	margin-inline: auto;
	width: 100%;
	border-radius: 3.125rem;
}

.cta__bottom-item-link--line {
	background-color: #06c755;
	padding: 1.125rem 4.875rem;
}

.cta__bottom-item-link--tel {
	background-color: #efcc8b;
	font-family: "Roboto", sans-serif;
	padding: 1.125rem 4rem;
}

.cta__bottom-item-link::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2.25rem;
	aspect-ratio: 36/36;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.cta__bottom-item-link--line::before {
	background-image: url(./../images/common/cta-line.png);
	left: 3.75rem;
}

.cta__bottom-item-link--tel::before {
	background-image: url(./../images/common/cta-tel.png);
	left: 2.5rem;
}

.cta__bottom-item-texts {
	margin-top: 1rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.cta__bottom-item-text {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
}

.data__container {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}

.data__container-wrap {
	display: flex;
	align-items: stretch;
}

.data__container-wrap:not(:last-child) {
	border-top: 1px solid #aadcd6;
	border-left: 1px solid #aadcd6;
	border-right: 1px solid #aadcd6;
}

.data__container-wrap:last-child {
	border: 1px solid #aadcd6;
}

.data__container-title {
	max-width: 8.875rem;
	width: 100%;
	padding: 1rem 0.75rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.55;
	letter-spacing: 0em;
	background-color: #efefef;
	text-align: center;
}

.data__container-description {
	flex: 1;
	padding: 1rem 0.75rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.55;
	letter-spacing: 0em;
	background-color: #fff;
}

.data__container-wrap:nth-child(2n+1) .data__container-description {
	background-color: #fffcf4;
}

.footer {
	padding-block: 3.75rem 15rem;
	position: relative;
	overflow: clip;
}

.footer-bg__inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: inset(0);
	z-index: -1;
}

.footer-bg {
	content: "";
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url("./../images/top/footer-bg.jpg") no-repeat center/cover;
	z-index: -1;
	opacity: 0.8;
}

.footer__inner {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding-inline: 20px;
}

.footer__left {
	display: contents;
}

.footer__catch {
	color: #033163;
	font-size: 2rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0.08em;
}

.footer__logo {
	max-width: 15.625rem;
	width: 100%;
}

.footer__left-info {
	order: 2;
	margin-top: 2.5rem;
}

.footer__left-info-sns {
	margin-top: 1rem;
	display: flex;
	gap: 0.5rem;
}

.footer__right {
	margin-top: 2.5rem;
	display: flex;
	flex-direction: column;
	gap: 2.5625rem;
}

.footer__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1rem;
	text-align: right;
}

.footer__nav-link {
	color: #033163;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.footer__info {
	text-align: right;
}

.footer__info-title {
	color: #033163;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.footer__info-texts {
	margin-top: 1.125rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 1rem;
}

.footer__info-text {
	color: #033163;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
}

.footer__copyright {
	margin-top: 1rem;
	color: #033163;
	font-size: 0.625rem;
	font-weight: 500;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.fv {
	overflow-x: clip;
}

.fv-box {
	position: relative;
	overflow-x: clip;
}

.fv__img {
	width: 100%;
	height: 100%;
}

.fv__img img,
.fv__img picture {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 375/220;
	opacity: 0.85;
}

.fv-info {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
}

.fv__title {
	position: relative;
}

.fv__title-ja {
	color: #033163;
	font-size: 1.75rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.fv__title-en {
	content: "";
	position: absolute;
	top: -1.25rem;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	font-size: 2.25rem;
	font-weight: 400;
	font-family: "Homemade Apple", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	z-index: -1;
	white-space: nowrap;
}

.gallery {
	padding-block: 3.75rem;
	overflow-x: clip;
	position: relative;
}

.gallery::before {
	content: "";
	position: absolute;
	top: 12.5rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}

.gallery__items--top {
	margin-top: 2.5rem;
}

.gallery__items--top .swiper-slide,
.gallery__items--bottom .swiper-slide {
	width: 8.75rem;
}

.gallery__item {
	margin-left: 1.5rem;
}

.gallery__item-img {
	width: 100%;
	border-radius: 50%;
	overflow: hidden;
}

.gallery__item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 280/280;
}

.gallery__item-text {
	margin-top: 1rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
	text-align: center;
}

.gallery__items--bottom {
	margin-top: 2.875rem;
	margin-left: 18.75rem;
}

.gallery__items--top .swiper-wrapper,
.gallery__items--bottom .swiper-wrapper {
	transition-timing-function: linear;
}

.greeting {
	padding-top: 8.25rem;
	position: relative;
	overflow-x: clip;
}

.greeting::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-height: 42.6875rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}

.greeting-container {
	margin-top: 2rem;
	display: flex;
	align-items: center;
	flex-direction: column-reverse;
	gap: 2rem;
	position: relative;
	padding-bottom: 2rem;
}

.greeting-container::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 70%;
	background-color: #fff;
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	z-index: -1;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}

.greeting-container__texts {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	max-width: 42.75rem;
	width: 100%;
}

.greeting-container__texts-text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.greeting-container__texts-text--bold {
	font-weight: 700;
}

.greeting-container__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 563/320;
}

.history {
	position: relative;
}

.history::before {
	content: "";
	position: absolute;
	bottom: -10rem;
	left: 0;
	width: 100%;
	max-height: 51.375rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}

.history-container {
	padding: 1.25rem 0.5rem 2.375rem;
	background-color: #fff;
	margin-top: 2rem;
	border: 1px solid #232323;
	max-height: 37.5rem;
	height: 100%;
	overflow-y: scroll;
}

.history-list__item {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

.history-list__term {
	width: 5.625rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
	padding-top: 0.5rem;
}

.history-list__description {
	padding-bottom: 0.9375rem;
	padding-top: 0.5rem;
	padding-left: 1.25rem;
	position: relative;
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	flex: 1;
}

.history-list__description::before,
.history-list__description::after {
	content: "";
	position: absolute;
	top: 1.125rem;
}

.history-list__description::before {
	left: 0;
	width: 1px;
	height: 100%;
	background: #333;
}

.history-list__description::after {
	left: -0.25rem;
	width: 0.625rem;
	height: 0.625rem;
	border-radius: 50%;
	background: #aadcd6;
}

/* スクロールバー */

.history-container::-webkit-scrollbar {
	width: 1rem;
}

.history-container::-webkit-scrollbar-thumb {
	background: #aadcd6;
	border-radius: 0.5rem;
	border-right: 0.25rem solid transparent; /* 透明なボーダーをつける */
	border-left: 0.25rem solid transparent; /* 透明なボーダーをつける */
	background-clip: padding-box; /* 背景を切り取る */
}

.history-container::-webkit-scrollbar-track {
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
}

.archive-article__search-list.news-item__category-box .news-item__category {
	padding: 0;
}

.archive-article__search-list.news-item__category-box .news-item__category a {
	padding: 0.375rem 0.75rem;
	display: inline-block;
}

.member {
	position: relative;
}

.member__swiper.swiper .swiper-wrapper {
	transition-timing-function: linear;
}

.member__swiper.swiper .swiper-slide img {
	height: auto;
	width: 100%;
}

.member__swiper.swiper .swiper-slide {
	width: 30rem;
}

.member__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 633/360;
}

.member__content-box {
	content: "";
	position: absolute;
	top: 56%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.member__content {
	width: 18.9375rem;
	background-color: #fff;
	position: relative;
	padding: 0.375rem 1.3125rem 0.875rem;
	margin-top: 2.375rem;
}

.member__content::before {
	content: "";
	position: absolute;
	top: -2.375rem;
	left: 0;
	width: 100%;
	height: 2.375rem;
	background-color: #fff;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.member__label {
	position: absolute;
	content: "";
	top: -2.5rem;
	right: 0;
	color: #84b2ac;
	font-size: 1.25rem;
	font-weight: 800;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	transform: rotate(-17deg);
}

.member__title {
	color: #033163;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.member__text {
	margin-top: 0.25rem;
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
	display: flex;
	gap: 0.25rem;
}

.member__vertical {
	position: absolute;
	content: "";
	top: -1.5rem;
	left: calc(50% - min(46vw, 11rem));
	z-index: 2;
}

.member__vertical-text {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
}

.member__vertical-text-top,
.member__vertical-text-bottom {
	display: block;
	background-color: #fff;
	padding: 0.625rem 0.65625rem;
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	width: -moz-fit-content;
	width: fit-content;
	letter-spacing: 0.06em;
}

.member__vertical-text-top {
	margin-left: 2.875rem;
}

.mv {
	height: 100vh;
	position: relative;
	display: flex;
	align-items: center;
	flex-direction: column;
	overflow: hidden;
	clip-path: circle(0% at 55% 80%);
	opacity: 0;
	transition: 1.2s clip-path ease-in-out, 2s opacity ease-in-out;
}

.mv::before {
	content: "";
	position: absolute;
	left: 0rem;
	width: 100%;
	height: 70%;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(to top, rgb(255, 255, 255), rgba(255, 255, 255, 0));
	bottom: 0;
}

.mv.is-open {
	clip-path: circle(120% at 55% 80%);
	opacity: 1;
}

.mv__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1440/683;
}

.mv__inner {
	width: 100%;
	margin-inline: auto;
	flex: 1;
}

.mv__container {
	width: 100%;
	height: 100%;
}

.mv__info {
	content: "";
	position: absolute;
	bottom: 0;
	z-index: 2;
	width: 100%;
	padding-inline: 1.0625rem;
	bottom: 5rem;
	margin-inline: auto;
	width: -moz-fit-content;
	width: fit-content;
	left: 50%;
	transform: translateX(-50%);
}

.mv__badge {
	display: inline-block;
	padding: 0.25rem 1rem;
	background-color: #e2b157;
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.68;
	color: #fff;
	letter-spacing: 0.05em;
	border-radius: 0.25rem;
}

.mv__lead {
	margin-top: 0.125rem;
	color: #033163;
	font-size: 1.4375rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: -0.02em;
}

.mv__stats {
	margin-top: 0.375rem;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.9375rem;
	max-width: 100%;
	width: 100%;
}

.mv__stat {
	width: 6.5rem;
	aspect-ratio: 1/1;
	padding-top: 1.25rem;
	border-radius: 50%;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 0;
	position: relative;
}

.mv__stat::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border-radius: 50%;
	z-index: -1;
}

.mv__stat-label {
	display: block;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-inline: auto;
	max-width: 6.25rem;
	width: 100%;
	padding: 0.125rem;
	font-size: 0.75rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
	width: -moz-fit-content;
	width: fit-content;
}

.mv__stat-label--pink {
	background-color: #f79cb8;
}

.mv__stat-label--blue {
	background-color: #8fb3db;
}

.mv__stat-label--green {
	background-color: #aadcd6;
}

.mv__stat-value {
	display: block;
	margin-top: 0.4375rem;
	color: #033163;
	font-size: 1.375rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	flex: 1;
}

.mv__stat-value.mv__stat-value2 {
	margin-top: 0.625rem;
	line-height: 0.5;
}

.mv__stat-value-large {
	font-size: 0.875rem;
	color: #111111;
}

.mv__stat-value-medium {
	font-size: 0.75rem;
	color: #111111;
}

.mv__stat-value-small {
	font-size: 0.75rem;
	color: #111111;
}

.mv__img {
	width: 100%;
	height: 100%;
}

.mv__img picture {
	width: 100%;
	height: 100%;
}

.mv__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 375/500;
}

.mv2 {
	overflow-x: clip;
}

.mv2__inner {
	width: 100%;
	margin-inline: auto;
	flex: 1;
}

.mv2__container {
	display: flex;
	flex-direction: column;
	background: url(./../images/common/mv2-bg.jpg) no-repeat center center/cover;
	padding-block: 3.75rem;
}

.mv2__info {
	max-width: 43.75rem;
	width: 100%;
	padding-inline: 1.25rem;
}

.mv2__text {
	color: #033163;
	font-size: 4.8vw;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.mv2__text span {
	color: #e2b157;
}

.mv2__text2 {
	color: #8fb3db;
	font-size: 4.8vw;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.75;
	letter-spacing: 0em;
	position: relative;
	padding-left: 19.2vw;
}

.mv2__text2::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0rem;
	width: 19.2vw;
	aspect-ratio: 160/70;
	background-image: url(./../images/common/magokoro.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.mv2__slider.swiper {
	width: 100%;
	margin-inline: 0;
}

.mv2__slider {
	margin-top: 6.4vw;
}

.mv2__slider.swiper .swiper-slide {
	width: 64vw;
}

.mv2__slider.swiper .swiper-wrapper {
	transition-timing-function: linear;
}

.mv2__slider.swiper .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 540/360;
}

.mv2__slider.swiper .mv2__img {
	width: 100%;
}

.none__text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.none__btn {
	margin-top: 2.5rem;
}

.button-link.contact-thanks-button::after {
	right: 1.25rem;
}

.page-contact-items {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem;
	max-width: 21.375rem;
	width: 100%;
	margin-inline: auto;
}

.page-top {
	width: 100%;
	height: 3.75rem;
	background-image: url(./../images/top/mv-top-bg.jpg);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.page-top__nav {
	height: inherit;
	visibility: hidden;
}

.page-top__nav-link {
	color: #033163;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.page-top__nav-link span {
	display: inline-block;
	width: 1.125rem;
}

.page-top__nav-link span img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 1/1;
}

.point__items {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2.5rem;
}

.point__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
}

.point__item-catch {
	color: #779ac2;
	font-size: 1.5rem;
	font-weight: 400;
	font-family: "Homemade Apple", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.point__item-catch-number {
	display: inline-block;
	vertical-align: sub;
	color: #779ac2;
	font-size: 2.625rem;
	font-weight: 400;
	font-family: "Homemade Apple", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	margin-left: 0.75rem;
}

.point__item-title {
	margin-top: 0.75rem;
	color: #e2b157;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.55;
	letter-spacing: 0em;
}

.point__item-text {
	margin-top: 0.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.55;
	letter-spacing: 0em;
}

.privacy-policy {
	padding-block: 5rem 7.5rem;
}

.privacy-policy__introduction {
	font-size: 1rem;
	line-height: 2;
}

.privacy-policy__items {
	margin-top: 5rem;
	padding-top: 1.25rem;
	border-top: 1px solid #ccc;
}

.privacy-policy__item {
	padding-bottom: 1.25rem;
	border-bottom: 1px solid #ccc;
}

.privacy-policy__item + .privacy-policy__item {
	margin-top: 1.25rem;
}

.privacy-policy__term {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 0rm;
}

.privacy-policy__description {
	margin-top: 0.9375rem;
	font-size: 1rem;
	line-height: 2;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 0rm;
}

.privacy-policy__description-numbers {
	counter-reset: number;
}

.privacy-policy__description-text + .privacy-policy__description-numbers,
.privacy-policy__description-text + .privacy-policy__description-items {
	margin-top: 1.25rem;
}

.privacy-policy__description-number {
	padding-left: 0.9375rem;
	text-indent: -0.9375rem;
}

.privacy-policy__description-number + .privacy-policy__description-number,
.privacy-policy__description-item + .privacy-policy__description-item {
	margin-top: 0.9375rem;
}

.privacy-policy__description-number::before {
	content: counter(number) ". ";
	counter-increment: number;
}

.privacy-policy__description-items {
	padding-left: 1.25rem;
	list-style: disc;
}

.privacy-policy__bottom {
	margin-top: 5rem;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.privacy-policy__text {
	display: block;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.5;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 0rm;
}

.privacy-policy__text-name {
	display: block;
	font-size: 1rem;
	line-height: 2;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	letter-spacing: 0rm;
}

.privacy-policy__info {
	margin-top: 2.5rem;
	color: #111111;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.products__items {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2.5rem;
	width: 100%;
	margin-inline: auto;
	max-width: 31.25rem;
}

.products__item-title {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
	text-align: center;
	padding: 2.9375rem 1.25rem;
}

.products__item-title--first {
	background: url(../../assets/images/showroom/products-bg1.jpg) no-repeat center center/cover;
}

.products__item-title--second {
	background: url(../../assets/images/showroom/products-bg2.jpg) no-repeat center center/cover;
}

.products__item-lists {
	margin-top: 2rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 2.6666666667vw;
}

.products__item-list--toto {
	width: min(34.6666666667vw, 160px);
}

.products__item-list--cleanup {
	width: min(42.6666666667vw, 180px);
}

.products__item-list--lixil {
	width: min(26.6666666667vw, 120px);
}

.products__item-list--panasonic {
	width: min(48vw, 216px);
}

.products__item-list--toto img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.products__item-list--toto img {
	aspect-ratio: 170/50;
}

.products__item-list--cleanup img {
	aspect-ratio: 191/50;
}

.products__item-list--lixil img {
	aspect-ratio: 133/50;
}

.products__item-list--panasonic img {
	aspect-ratio: 216/50;
}

.recommend {
	padding-bottom: 5rem;
}

.reform-pack {
	padding-block: 1.75rem 2rem;
	background-color: #033163;
}

.reform-pack__inner {
	padding-inline: 16px;
}

.reform-pack__content {
	margin-top: 2.375rem;
	width: 100%;
	margin-inline: auto;
	background-color: #fff;
	position: relative;
	padding: 3.75rem 0.96875rem 3rem;
}

.concept-reform-pack {
	margin-top: 5rem;
}

.concept-reform-pack.reform-pack .reform-pack__content {
	position: static;
}

.reform-pack__content::before {
	content: "";
	position: absolute;
	top: -2.375rem;
	left: 50%;
	transform: translateX(-50%);
	width: 4.625rem;
	aspect-ratio: 74/42;
	background-color: #fff;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.reform-pack__content.reform-pack__content2::before {
	position: static;
}

.reform-pack__sub-title {
	margin-top: 2rem;
	color: #e2b157;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.68;
	letter-spacing: 0em;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.reform-pack__text {
	margin-top: 0.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: -0.05em;
	text-align: center;
}

.reform-pack__plan {
	margin-top: 2rem;
}

.reform-pack__plan2 {
	margin-top: 2rem;
}

.reform-pack__plan-title {
	max-width: 18.9375rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__plan-title img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 300/43;
}

.reform-pack__plan-title2 {
	color: #033163;
	font-size: 1.75rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4444444444;
	letter-spacing: 0em;
	text-align: center;
	position: relative;
}

.reform-pack__plan-title2--catch {
	margin-top: 7.5rem;
}

.reform-pack__plan-title2 span {
	content: "";
	position: absolute;
	top: -6.25rem;
	left: 50%;
	transform: translateX(-50%);
	width: 6.25rem;
	aspect-ratio: 1/1;
}

.reform-pack__plan-title2 span img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 160/160;
}

.reform-pack__highlight {
	padding: 0.25rem 0.75rem;
	background-color: #f5f5f5;
	border-radius: 0.25rem;
}

.reform-pack__features {
	margin-top: 1.25rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem 0.125rem;
	place-items: center;
	max-width: 28.125rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__feature {
	padding-top: 1.0625rem;
	color: #111111;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	position: relative;
}

.reform-pack__feature:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0.6875rem;
	aspect-ratio: 1/1;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.reform-pack__feature--cross::before {
	background-image: url(./../images/top/cross.svg);
}

.reform-pack__feature--wall::before {
	background-image: url(./../images/top/wall.svg);
}

.reform-pack__feature--floor::before {
	background-image: url(./../images/top/floor.svg);
}

.reform-pack__feature--water::before {
	background-image: url(./../images/top/water.svg);
}

.reform-pack__features-box-text {
	margin-top: 1rem;
	color: #727981;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	text-align: right;
	max-width: 28.125rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__price {
	margin-top: 2rem;
}

.reform-pack__price-current-box {
	margin-top: 0.75rem;
}

.reform-pack__price-standard {
	max-width: 12.125rem;
	width: 100%;
	background-color: #5e4515;
	padding: 0.65625rem 1.5rem 0.65625rem 2.5rem;
	display: flex;
	align-items: flex-end;
	gap: 0.25rem;
	position: relative;
	margin-inline: auto;
}

.reform-pack__price-standard::before {
	content: "";
	position: absolute;
	background-color: #5e4515;
	bottom: -0.8125rem;
	right: 0;
	width: 100%;
	height: 0.8125rem;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}

.reform-pack__price-label {
	display: block;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.1;
	letter-spacing: 0em;
}

.reform-pack__price-value {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	position: relative;
}

.reform-pack__price-value::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -0.375rem;
	width: 3.0625rem;
	height: 0.125rem;
	background-color: #be0909;
	transform: rotate(-20deg);
}

.reform-pack__price-value span {
	font-size: 1rem;
	margin-left: 0.25rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}

.reform-pack__price-current {
	padding-top: 0.75rem;
	margin-inline: auto;
	max-width: 12.0625rem;
	width: 100%;
}

.reform-pack__price-note {
	display: inline-block;
	color: #8fb3db;
	font-size: 0.9375rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	border: 1px solid #8fb3db;
	border-radius: 624.9375rem;
	padding: 0.375rem 1.125rem;
	position: relative;
}

.reform-pack__price-note-number {
	font-size: 1.25rem;
	padding-inline: 0.125rem;
}

.reform-pack__price-note-unit {
	font-size: 1rem;
}

.reform-pack__price-number-box {
	position: relative;
	margin-top: 1.625rem;
}

.reform-pack__price-number {
	display: block;
	color: #be0909;
	font-size: 3.75rem;
	font-weight: 600;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: -0.01em;
	text-align: center;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

.reform-pack__price-number span {
	font-size: 1.25rem;
	color: #111111;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 0em;
	padding-left: 0.25rem;
}

.reform-pack__price-discount {
	max-width: 5.375rem;
	width: 100%;
	content: "";
	position: absolute;
	top: 2.375rem;
	left: -2.5rem;
}

.reform-pack__price-discount img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 86/75;
}

.reform-pack__price-tax {
	margin-top: 0.75rem;
	color: #111111;
	font-size: 0.8125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	text-align: right;
}

.reform-pack__items {
	margin-top: 1.375rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.9375rem 1rem;
}

.reform-pack__items.reform-pack__items2 {
	margin-top: 1.375rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.9375rem 1.5rem;
}

.reform-pack__img {
	width: 100%;
	border-radius: 0.25rem;
	overflow: hidden;
}

.reform-pack__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 144/101;
}

.reform-pack__img-info {
	margin-top: 0.5rem;
}

.reform-pack__item-title {
	padding-left: 0.875rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	position: relative;
	display: inline-block;
	width: 100%;
}

.reform-pack__item-title::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 0.6875rem;
	aspect-ratio: 1/1;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.reform-pack__item-title--cross::before {
	background-image: url(./../images/top/cross.svg);
}

.reform-pack__item-title--wall::before {
	background-image: url(./../images/top/wall.svg);
}

.reform-pack__item-title--floor::before {
	background-image: url(./../images/top/floor.svg);
}

.reform-pack__item-title--water::before {
	background-image: url(./../images/top/water.svg);
}

.reform-pack__item-text {
	margin-top: 0.625rem;
	color: #727981;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.2;
	letter-spacing: 0em;
}

.reform-pack__item-text2 {
	margin-top: 0.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.3;
	letter-spacing: 0em;
}

.reform-pack__item-text2 span {
	text-decoration: underline;
}

.reform-pack__img-info-note {
	margin-top: 0.5rem;
	display: flex;
	align-items: start;
	gap: 0.8125rem;
	flex-direction: column;
}

.reform-pack__img-info-note-items {
	display: flex;
	align-items: center;
	gap: 0.375rem;
}

.reform-pack__img-info-note-item {
	width: 100%;
	max-width: 3.5625rem;
}

.reform-pack__img-info-note-item img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 57/19;
}

.reform-pack__img-info-note-text {
	display: inline-block;
	padding: 0.125rem 0.75rem;
	color: #727981;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.3;
	letter-spacing: 0em;
	border: 1px solid #727981;
}

.reform-pack__img-info-note-text span {
	display: inline-block;
}

.reform-pack__img-info-note-sub {
	color: #727981;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.reform-pack__button {
	margin-top: 2.5rem;
}

.reform-pack--plan1 {
	background-color: #033163;
}

.reform-pack--plan2 {
	background-color: #e2b157;
}

.reform-pack--plan3 {
	background-color: #aadcd6;
}

.reform-pack--plan4 {
	background-color: #f79cb8;
}

.reform-pack-tabs-container {
	margin-top: 2.5rem;
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 0.125rem;
}

.reform-pack-tabs {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.125rem;
	place-items: center;
	max-width: 56.5rem;
	width: 100%;
	margin-inline: auto;
	border-bottom: 1px solid #727981;
}

.reform-pack-tabs__item {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.25rem 0.125rem;
	color: #727981;
	font-size: 0.8125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.3s;
	position: relative;
}

.reform-pack-tabs__item.is-active {
	color: #111111;
	position: relative;
}

.reform-pack-tabs__item.is-active::before {
	content: "";
	position: absolute;
	bottom: -0.09375rem;
	left: 0;
	height: 0.125rem;
	width: 100%;
}

.reform-pack-tabs__item::before {
	content: "";
	position: absolute;
	bottom: -0.09375rem;
	left: 0;
	height: 0.125rem;
	width: 100%;
	background-color: transparent;
	transition: background-color 0.3s;
}

.reform-pack-tabs__item--blue.is-active {
	background-color: rgba(143, 179, 219, 0.3);
}

.reform-pack-tabs__item--orange.is-active {
	background-color: rgba(226, 177, 87, 0.3);
}

.reform-pack-tabs__item--green.is-active {
	background-color: rgba(170, 220, 214, 0.3);
}

.reform-pack-tabs__item--pink.is-active {
	background-color: rgba(247, 156, 184, 0.3);
}

.reform-pack-tabs__item--blue.is-active::before {
	background-color: #8fb3db;
}

.reform-pack-tabs__item--orange.is-active::before {
	background-color: #e2b157;
}

.reform-pack-tabs__item--green.is-active::before {
	background-color: #aadcd6;
}

.reform-pack-tabs__item--pink.is-active::before {
	background-color: #f79cb8;
}

.reform-pack-main {
	display: none;
}

.reform-pack-main.is-active {
	display: block;
}

.reform-pack__bottom {
	margin-top: 2.5rem;
	border-radius: 0.25rem;
	max-width: 53.75rem;
	width: 100%;
	margin-inline: auto;
	padding: 2rem 1.5rem;
	background-color: #fff;
}

.reform-pack__bottom--pink {
	border: 0.5rem solid #f79cb8;
}

.reform-pack__bottom--orange {
	border: 0.5rem solid #e2b157;
}

.reform-pack__bottom--green {
	border: 0.5rem solid #aadcd6;
}

.reform-pack__bottom-title {
	color: #033163;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4642857143;
	letter-spacing: 0em;
	text-align: center;
}

.reform-pack__bottom-text {
	margin-top: 1rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
}

.reform-pack__bottom2 {
	margin-top: 2.5rem;
	max-width: 53.75rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__bottom2-title {
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
}

.reform-pack__bottom2-container-box {
	margin-top: 2rem;
	overflow-x: scroll;
}

.reform-pack__bottom2-container-box .scroll-hint-icon-no-animation {
	animation: none !important;
	transition: none !important;
}

.reform-pack__bottom2-container-box .scroll-hint-icon-no-animation::before,
.reform-pack__bottom2-container-box .scroll-hint-icon-no-animation::after {
	animation: none !important;
	transition: none !important;
}

.reform-pack__bottom2-container {
	padding: 1px;
	gap: 1px;
	display: flex;
	flex-direction: column;
	background-color: #adc9c0;
	width: 62.5rem;
}

.reform-pack__bottom2-container-wrap {
	display: grid;
	grid-template-columns: 16.25rem 1fr;
	gap: 1px;
	place-items: center left;
	align-items: stretch;
}

.reform-pack__bottom2-container-title {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.2222222222;
	letter-spacing: 0em;
	text-align: center;
	padding: 0.75rem 0.5rem;
	background-color: #efefef;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.reform-pack__bottom2-container-description {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 400;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	padding: 0.75rem 1rem;
	width: 100%;
	display: flex;
	align-items: center;
}

.reform-pack__bottom2-container-wrap:nth-child(2n-1) .reform-pack__bottom2-container-description {
	background-color: #fffaff;
}

.reform-pack__bottom2-container-wrap:nth-child(2n) .reform-pack__bottom2-container-description {
	background-color: #fff;
}

.reform-pack__plan-text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
	text-align: center;
	margin-top: 1.5rem;
}

.showroom-contact {
	padding-bottom: 6.25rem;
	position: relative;
	overflow-x: clip;
}

.showroom-contact::before {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.showroom-contact-texts {
	margin-top: 2.625rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 1.5rem;
}

.showroom-contact-texts__text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
}

.showroom-contact-note {
	margin-top: 1.5rem;
	max-width: 43rem;
	width: 100%;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.showroom-contact-note__text {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4375;
	letter-spacing: 0em;
	text-indent: -1em;
	padding-left: 1em;
}

.showroom-contact-note__text--red {
	color: #be0909;
}

.showroom-contact-content {
	margin-top: 2.25rem;
}

.showroom-intro {
	padding-block: 5rem 5rem;
	position: relative;
	overflow-x: clip;
}

.showroom-intro::before {
	content: "";
	position: absolute;
	top: -18.75rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -1;
}

.showroom-intro__title {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 0.5rem;
}

.showroom-intro__title1,
.showroom-intro__title2,
.showroom-intro__title3 {
	box-shadow: 0.25rem 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.1);
}

.showroom-intro__title1 {
	max-width: 22.4375rem;
	width: 100%;
}

.showroom-intro__title1 img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 359/61;
}

.showroom-intro__title2 {
	max-width: 17.8125rem;
	width: 100%;
}

.showroom-intro__title2 img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 285/48;
}

.showroom-intro__title3 {
	max-width: 30.5625rem;
	width: 100%;
}

.showroom-intro__title3 img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 489/64;
}

.showroom-intro__texts {
	margin-top: 2rem;
	display: flex;
	align-items: center;
	flex-direction: column;
	text-align: center;
	gap: 1.375rem;
}

.showroom-intro__text {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.showroom-point {
	overflow-x: clip;
}

.showroom-point__inner {
	max-width: 600px;
	width: 100%;
	padding-inline: 20px;
	margin-inline: auto;
}

.showroom-point__items {
	margin-top: 2.5rem;
}

.showroom-point__item {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 1.5rem;
	position: relative;
	padding-block: 2rem;
}

.showroom-point__item--first::before,
.showroom-point__item--second::before,
.showroom-point__item--third::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0.25rem 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.1);
	z-index: -1;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}

.showroom-point__item--first::before {
	background: url(./../images/showroom/showroom-point-bg1.jpg) no-repeat center center/cover;
}

.showroom-point__item--second::before {
	background: url(./../images/showroom/showroom-point-bg2.jpg) no-repeat center center/cover;
}

.showroom-point__item--third::before {
	background: url(./../images/showroom/showroom-point-bg3.jpg) no-repeat center center/cover;
}

.showroom-point__item-mt {
	margin-top: 3.75rem;
}

.showroom-point__item-info {
	width: 100%;
}

.showroom-point__item-info-title {
	width: 7.5rem;
}

.showroom-point__item-info-title img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 169/48;
}

.showroom-point__item-info-subTitle {
	margin-top: 1.5rem;
	color: #033163;
	font-size: clamp(1.25rem, 1.011rem + 1.02vw, 1.5rem);
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
}

.showroom-point__item-info-texts {
	margin-top: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
}

.showroom-point__item-info-text {
	color: #111111;
	font-size: clamp(1rem, 0.88rem + 0.51vw, 1.125rem);
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.showroom-point__item-img {
	width: 100%;
}

.showroom-point__item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 484/484;
}

.showroom-point__item2 {
	padding-block: 3rem;
}

.showroom-point__item2-title {
	color: #033163;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4583333333;
	letter-spacing: 0em;
	text-align: center;
	padding-inline: 0rem;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.showroom-point__item2-title::before,
.showroom-point__item2-title::after {
	content: "";
	position: absolute;
	top: 68%;
	transform: translateY(-50%);
	width: 2rem;
	height: 0.125rem;
	background-color: #033163;
}

.showroom-point__item2-title::before {
	left: -1.625rem;
	transform: rotate(60deg);
}

.showroom-point__item2-title::after {
	right: -1.625rem;
	transform: rotate(-60deg);
}

.showroom-point__item2-content {
	margin-top: 1.5rem;
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 1.5rem;
	width: min(80vw, 500px);
	margin-inline: auto;
}

.showroom-point__item2-content-img {
	width: 100%;
}

.showroom-point__item2-content-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 430/287;
}

.showroom-point__item2-content-texts {
	width: 100%;
}

.showroom-point__item2-content-text {
	color: #111111;
	font-size: clamp(1rem, 0.88rem + 0.51vw, 1.125rem);
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.showroom-point__item2-content-text-note {
	font-size: 1rem;
}

.showroom-top {
	overflow: hidden;
	max-height: 58.6666666667vw;
}

.showroom-top__img {
	width: 120%;
	height: 120%;
}

.showroom-top__img img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.showroom {
	overflow-x: clip;
	position: relative;
}

.showroom::before {
	content: "";
	position: absolute;
	top: 31.25rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -1;
}

.showroom__inner {
	max-width: 85rem;
	width: 100%;
	margin-inline: auto;
	padding-inline: 16px;
}

.showroom__images-left,
.showroom__images-right {
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}

.showroom__images-left-swiper.swiper,
.showroom__images-right-swiper.swiper {
	height: 100%;
}

.showroom__images-left-swiper.swiper .swiper-wrapper,
.showroom__images-right-swiper.swiper .swiper-wrapper {
	transition-timing-function: linear;
}

.showroom__images-left-swiper.swiper .swiper-slide,
.showroom__images-right-swiper.swiper .swiper-slide {
	width: 47.4666666667vw;
	margin-left: 4.2666666667vw;
}

.showroom__images-left-swiper.swiper .swiper-slide img,
.showroom__images-right-swiper.swiper .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 178/100;
}

.showroom__content {
	text-align: center;
	padding-block: 3.75rem 1.5rem;
}

.showroom__sub-title {
	color: #111111;
	font-size: 1rem;
	font-weight: 600;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0.08em;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	position: relative;
}

.showroom__sub-title-number {
	display: inline-block;
	font-size: 1.125rem;
	letter-spacing: 0.08em;
}

.showroom__sub-title-icon {
	content: "";
	position: absolute;
	right: -0.375rem;
	bottom: -0.375rem;
	width: 6.25rem;
	aspect-ratio: 100/60;
	z-index: -1;
}

.showroom__sub-title-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.showroom__main-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 0.625rem;
	gap: 0.5rem;
}

.showroom__main-title-text,
.showroom__main-title-text2,
.showroom__main-title-text3 {
	background-color: #fff;
	box-shadow: 0.25rem 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.1);
	padding: 0.25rem 0.625rem;
}

.showroom__main-title-text {
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.65;
	letter-spacing: 0.15em;
}

.showroom__main-title-text2 {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.75;
	letter-spacing: 0em;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
}

.showroom__main-title-text2-blue {
	color: #8fb3db;
	font-size: 1.125rem;
}

.showroom__main-title-text2-icon {
	width: 4.375rem;
}

.showroom__main-title-text2-icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 118/29;
}

.showroom__main-title-text3 {
	display: block;
	color: #111111;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.75;
	letter-spacing: 0em;
}

.showroom__main-title-text3 span {
	color: #033163;
	font-size: 1.0625rem;
	letter-spacing: 0em;
}

.showroom__texts {
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 2rem;
}

.showroom__text {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.showroom__text-orange {
	color: #e2b157;
	display: inline-block;
	font-size: 1.25rem;
	letter-spacing: -0.01em;
}

.showroom__text-green {
	color: #aadcd6;
	font-size: 1.25rem;
}

.showroom__text-blue {
	color: #8fb3db;
	font-size: 1.25rem;
}

.showroom__text-pink {
	color: #f79cb8;
	font-size: 1.25rem;
}

.showroom__text-br {
	display: block;
}

.showroom__text-br2 {
	display: block;
}

.showroom__button {
	margin-top: 2rem;
}

.showroom__btn-link {
	display: inline-block;
	padding: 0.5rem 1.25rem;
	background-color: #003366;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	border-radius: 0.25rem;
	text-decoration: none;
}

.sidebar {
	padding-bottom: 1.75rem;
	border-bottom: 1px solid #111111;
}

.sidebar__title {
	color: #033163;
	font-size: 1.5rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0.05em;
	text-align: center;
}

.sidebar__content {
	margin-top: 1.75rem;
}

.sidebar__list {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.sidebar__link {
	display: flex;
	gap: 0.5rem;
}

.sidebar__link-image {
	width: 7.125rem;
}

.sidebar__link-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 114/104;
}

.sidebar__link-info {
	flex: 1;
}

.sidebar__link-info-title {
	color: #033163;
	font-size: 0.875rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0em;
}

.sidebar__link-info-date {
	margin-top: 0.25rem;
	color: #727981;
	font-size: 0.875rem;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.sidebar__link-info-tag {
	margin-top: 0.375rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	border: 1px solid #111111;
	border-radius: 2rem;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	padding: 0.375rem 1.125rem;
}

.sidebar__bottom {
	margin-top: 1.75rem;
	text-align: right;
}

.sidebar__link-more {
	display: inline-block;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	padding-right: 2rem;
	position: relative;
}

.sidebar__link-more::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0rem;
	width: 1.5rem;
	aspect-ratio: 24/24;
	background-image: url(../images/common/link-arrow.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.single-main {
	padding-block: 6.25rem 7.5rem;
	position: relative;
	overflow-x: clip;
}

.single-main::before {
	content: "";
	position: absolute;
	top: 12.5rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	max-height: 42.6875rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}

.single-main::after {
	content: "";
	position: absolute;
	bottom: -18.75rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -2;
}

.single-main__container {
	display: flex;
	flex-direction: column;
	gap: 6.25rem;
}

.single-main__news {
	width: 100%;
}

.single-main__news-info {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.single-main__news-date {
	color: #727981;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.single-main__news-tag {
	padding: 0.375rem 1.125rem;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	border: 1px solid #111111;
	border-radius: 2rem;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
}

.single-main__news-title {
	margin-top: 1.5rem;
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	padding: 0.75rem 1.5rem 0.75rem 4rem;
	background-color: #fff;
	position: relative;
}

.single-main__news-title::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 1.5rem;
	width: 1.5rem;
	aspect-ratio: 24/24;
	background-image: url(./../images/common/title-icon.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.single-main__news-content {
	margin-top: 0.5rem;
}

.layout-sidebar {
	width: 100%;
}

body.single-post .wp-block-image {
	width: 100%;
	margin-top: 1.5rem;
}

.wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 696/391;
}

body.single-post h2.wp-block-heading {
	margin-top: 1.5rem;
	color: #033163;
	font-size: 1.25rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	padding: 0.5rem 1rem 0.5rem 3.75rem;
	background-color: #eeeeee;
	position: relative;
}

body.single-post h2.wp-block-heading::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 1.5rem;
	width: 1.1875rem;
	aspect-ratio: 19/19;
	background-image: url(./../images/common/title-icon.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

body.single-post h3.wp-block-heading {
	display: inline-block;
	margin-top: 1.5rem;
	color: #033163;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	padding: 0.375rem 1.5rem;
	border-bottom: 1px solid #033163;
}

body.single-post h4.wp-block-heading {
	margin-top: 1.5rem;
	color: #033163;
	font-size: 1rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	padding: 0.375rem 1.5rem;
}

body.single-post .single-main__news-content p {
	margin-top: 1.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

body.single-post .wp-block-list {
	margin-top: 1.5rem;
}

body.single-post .wp-block-list li {
	color: #111111;
	font-size: 1rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	position: relative;
	padding-left: 1em;
}

body.single-post .wp-block-list li::before {
	content: "";
	position: absolute;
	top: 0.8125rem;
	left: 0.3em;
	width: 0.25rem;
	aspect-ratio: 1/1;
	background-color: #111111;
	border-radius: 50%;
}

body.single-post .single-main__news-content a {
	color: #033163;
	text-decoration: underline;
}

.works-photo__slider-thumbnail .swiper-slide {
	opacity: 0.5;
	transition: opacity 0.5s;
}

.works-photo__slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
	opacity: 1;
}

.top-blog {
	position: relative;
}

.top-blog__button {
	margin-top: 2rem;
}

.top-contact {
	padding-bottom: 6.25rem;
}

.top-contact__lead {
	margin-top: 2rem;
	text-align: center;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.top-contact__lead span {
	display: inline-block;
}

.top-contact__note-box {
	margin-top: 1rem;
	max-width: 26.25rem;
	width: 100%;
	margin-inline: auto;
}

.top-contact__note {
	text-indent: -1em;
	padding-left: 1em;
	color: #111111;
	font-size: 0.875rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.5;
	letter-spacing: 0em;
}

.top-contact__note span {
	display: inline-block;
}

.top-contact__form {
	margin-top: 2rem;
}

.form__wrap.form__wrap--textarea {
	max-width: 100%;
}

.form__wrap + .form__wrap {
	margin-top: 1.25rem;
}

.form__label {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 2;
	letter-spacing: 0em;
}

.form__label span {
	margin-left: 1rem;
	padding: 0.25rem 0.75rem;
	display: inline-block;
	background-color: #be0909;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	border-radius: 0.25rem;
}

.form__input,
.form__radio,
.form__checkbox,
.form__textarea {
	margin-top: 1rem;
}

.form__wrap input,
.form__wrap textarea,
.form__wrap select {
	width: 100%;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 2;
	letter-spacing: 0em;
	border: 1px solid #b8b8b8;
	padding: 0.34375rem 1rem;
	border-radius: 0.5rem;
}

.form__wrap select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.form__wrap textarea {
	min-height: 15rem;
	resize: vertical;
}

.form__input,
.form__textarea {
	flex-grow: 1;
}

.form__submit {
	margin-top: 3.75rem;
	text-align: center;
}

.form__checkbox .wpcf7-form-control {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}

.form__checkbox .wpcf7-list-item {
	display: block;
	margin: 0;
}

.form__privacy .wpcf7-list-item {
	margin: 0;
}

.form-checkbox label,
.form__privacy-checkbox label {
	display: block;
	width: -moz-fit-content;
	width: fit-content;
}

.form-checkbox label:not(:first-of-type) {
	margin-top: 0.5rem;
}

.form-checkbox input,
.form__privacy-checkbox input {
	display: none;
}

.form-checkbox input + span,
.form__privacy-checkbox input + span {
	cursor: pointer;
	display: inline-block;
	padding: 0 0 0 1.75rem;
	position: relative;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.form-checkbox input + span {
	padding: 0 0 0 1.75rem;
}

.form__privacy-checkbox input + span {
	padding: 0 0 0 2.25rem;
}

.form-checkbox input + span::before,
.form__privacy-checkbox input + span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: #fff;
	border: 1px solid #b8b8b8;
	display: block;
	width: 1.25rem;
	height: 1.25rem;
}

.form-checkbox input + span::after,
.form__privacy-checkbox input + span::after {
	content: "";
	margin-top: -0.125rem;
	position: absolute;
	top: 50%;
	left: 0.125rem;
	transform: translateY(-50%) rotate(-45deg);
	display: block;
	width: 0.9375rem;
	height: 0.5rem;
	border-bottom: 0.125rem solid #111111;
	border-left: 0.125rem solid #111111;
	transition: 0.3s;
	opacity: 0;
}

.form-checkbox input:checked + span::after,
.form__privacy-checkbox input:checked + span::after {
	opacity: 1;
}

.form-submit input {
	padding: 1.5625rem 7.8125rem;
	display: inline-block;
	background-color: #aadcd6;
	background-image: none;
	border: none;
	border-radius: 0;
	text-decoration: none;
	cursor: pointer;
	transition: 0.3s;
	max-width: 21.4375rem;
	width: 100%;
	margin-inline: auto;
	color: #fff;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	border-radius: 4.375rem;
	border: 1px solid #aadcd6;
}

.form-submit input:hover,
.form-submit input:focus {
	outline: none;
}

.form-submit input::-moz-focus-inner {
	padding: 0;
	border: none;
}

.form__privacy {
	margin-top: 1rem;
}

.form__privacy-checkbox {
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.form__privacy-checkbox a {
	border-bottom: 1px solid #111111;
}

.form__privacy-checkbox label {
	display: block;
	width: -moz-fit-content;
	width: fit-content;
}

.form__note {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.6;
	letter-spacing: 0em;
}

.form__select-block {
	margin-top: 1rem;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.form__select-label {
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.6;
	letter-spacing: 0em;
}

.form__select {
	max-width: 15rem;
	width: 100%;
	font-size: 1rem;
	padding: 0.625rem 1.25rem;
	border: 1px solid #b8b8b8;
	letter-spacing: 0em;
	color: #111111;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
}

.form__select-block span {
	width: 15rem;
}

.top-instagram {
	padding-bottom: 6.25rem;
	position: relative;
	overflow-x: clip;
}

.top-instagram::before {
	content: "";
	position: absolute;
	top: -12.5rem;
	left: 50%;
	transform: translateX(-50%);
	width: 90rem;
	aspect-ratio: 1440/822;
	background-image: url(./../images/common/bg2.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -2;
}

.top-instagram__text {
	display: block;
	color: #111111;
	font-size: 1.125rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
	margin-top: 2rem;
}

.top-instagram-main {
	margin-top: 1.5rem;
	max-width: 70rem;
	width: 100%;
	margin-inline: auto;
}

.top-instagram__button {
	margin-top: 2rem;
	text-align: center;
}

.top-instagram__button-link {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.7;
	letter-spacing: 0em;
	text-align: center;
	padding: 0.375rem 3.5625rem;
	background-color: #aadcd6;
	border-radius: 0.625rem;
	display: inline-block;
	border-radius: 0.25rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
	position: relative;
	border: 1px solid #aadcd6;
}

.top-instagram__button-link::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2.25rem;
	width: 0.3125rem;
	aspect-ratio: 5/8.76;
	-webkit-mask-image: url(./../images/common/arrow.svg);
	mask-image: url(./../images/common/arrow.svg);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #fff;
	transition: background-color 0.3s;
}

.top-news {
	position: relative;
}

.top-news__bg {
	display: none;
}

.top-news__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1440/683;
}

.top-news__inner {
	max-width: 1200px;
	margin: 0 auto;
}

.news-list {
	margin-top: 2rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.3125rem;
	max-width: 37.5rem;
	width: 100%;
	margin-inline: auto;
}

.news-item {
	background-color: #fff;
	border-radius: 0.25rem;
	box-shadow: 0.25rem 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
}

.news-item__link {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
	color: inherit;
	padding: 1rem;
}

.news-item__img {
	width: 100%;
	border-radius: 0.25rem;
	overflow: hidden;
}

.news-item__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 310/196;
}

.news-item__text {
	margin-top: 1rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.38;
	letter-spacing: 0em;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.news-item__meta {
	margin-top: 0.625rem;
	padding-top: 0.625rem;
	border-top: 1px solid #aadcd6;
	display: flex;
	gap: 0.5rem;
}

.news-item__date {
	color: #727981;
	font-size: 0.9375rem;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	padding-top: 0.375rem;
}

.news-item__category-box {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.news-item__category {
	padding: 0.25rem 1.125rem;
	height: -moz-fit-content;
	height: fit-content;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	border: 1px solid #111111;
	border-radius: 0.75rem;
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1;
	letter-spacing: 0em;
	text-transform: uppercase;
}

.top-news__button {
	margin-top: 2rem;
}

.news-no-posts {
	margin-top: 2.5rem;
	color: #696969;
	font-size: 1.75rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.75;
	letter-spacing: 0em;
	text-align: center;
}

.trigger__text {
	margin-top: 2rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.voice-container {
	margin-top: 2rem;
}

.voice-container-top {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.voice-container-top__left {
	width: 6.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

.voice-container-top__left-image {
	width: 3.75rem;
	border-radius: 50%;
	overflow: hidden;
}

.voice-container-top__left-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1/1;
}

.voice-container-top__left-text {
	margin-top: 0.25rem;
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.voice-container-top__right {
	flex: 1;
}

.voice-container-top__right-text {
	color: #84b2ac;
	font-size: 1.125rem;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.voice-container-bottom {
	margin-top: 1rem;
	padding: 1.375rem;
	background-color: #f3f3f3;
	position: relative;
}

.voice-container-bottom::before {
	content: "";
	position: absolute;
	top: -0.6875rem;
	left: 2.5rem;
	width: 1.4375rem;
	height: 1.1875rem;
	background-color: #f3f3f3;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.voice-container-bottom__text {
	color: #111111;
	font-size: 0.9375rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag {
	cursor: pointer;
	padding: 0;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag a {
	padding: 0.375rem 0.75rem;
	display: inline-block;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.top-achievement__tag--black {
	background-color: #111111;
	color: #fff;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.active.top-achievement__tag--black {
	background-color: #fff;
	color: #111111;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.active.top-achievement__tag--green {
	background-color: #fff;
	color: #aadcd6;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.active.top-achievement__tag--pink {
	background-color: #fff;
	color: #f79cb8;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.active.top-achievement__tag--blue {
	background-color: #fff;
	color: #8fb3db;
}

.work-item {
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.work-item.hidden {
	display: none;
}

.works-floor__container {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	margin-top: 1.5rem;
}

.works-floor__container-before {
	width: 80%;
	margin-inline: auto;
	position: relative;
}

.works-floor__container-before img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 380/229;
}

.works-floor__container-after {
	width: 100%;
	position: relative;
}

.works-floor__container-after img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 580/349;
}

.works-floor__container-before img,
.works-floor__container-after img {
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	border-radius: 0.25rem;
	overflow: hidden;
}

.works-floor__container-before::before,
.works-floor__container-after::before {
	content: "";
	position: absolute;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.works-floor__container-before::before {
	top: -0.3125rem;
	left: -0.5rem;
	width: 5rem;
	aspect-ratio: 95/42;
	background-image: url(./../images/common/before.svg);
}

.works-floor__container-after::before {
	top: -1.5rem;
	left: -0.625rem;
	width: 7.5rem;
	aspect-ratio: 171/96;
	background-image: url(./../images/common/after.svg);
}

.works-floor__container-text {
	margin-top: 1rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.works-list {
	margin-top: 3rem;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2rem 1.4375rem;
	max-width: 37.5rem;
	width: 100%;
}

.works-photo__inner.inner {
	padding-inline: 20px 10px;
}

.works-photo__title {
	margin-right: 10px;
}

.works-photo-container {
	max-width: 61rem;
	width: 100%;
	margin-inline: auto;
}

.works-photo__mains {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 2.5rem;
	margin-top: 1.5rem;
}

.works-photo__slider-thumbnail {
	margin-top: 1rem;
	padding-bottom: 0.75rem;
	padding-right: 10px;
}

.works-photo__slider-thumbnail img {
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	border-radius: 0.25rem;
	overflow: hidden;
}

.works-photo__slider-container--before {
	width: 80%;
	margin-inline: auto;
	position: relative;
}

.works-photo__slider-container--after {
	max-width: 36.25rem;
	width: 100%;
	margin-inline: auto;
	position: relative;
}

.works-photo__slider-container--before::before,
.works-photo__slider-container--after::before {
	content: "";
	position: absolute;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 10;
}

.works-photo__slider-container--before::before {
	top: -0.3125rem;
	left: -0.5rem;
	width: 5rem;
	aspect-ratio: 95/42;
	background-image: url(./../images/common/before.svg);
}

.works-photo__slider-container--after::before {
	top: -1.5rem;
	left: -0.625rem;
	width: 7.5rem;
	aspect-ratio: 171/96;
	background-image: url(./../images/common/after.svg);
}

.works-photo__slider--before .swiper-slide img,
.works-photo__slider--after .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0.25rem;
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
}

.works-photo__slider.works-photo__slider--after {
	padding-right: 10px;
}

.works-photo__slider.works-photo__slider--before {
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
}

.works-photo__slider--before .swiper-slide img {
	aspect-ratio: 380/229;
}

.works-photo__slider--after .swiper-slide img {
	aspect-ratio: 580/349;
}

.works-photo__slider-thumbnail .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 155/93;
}

.js-works-thumb .swiper-slide {
	cursor: pointer;
}

.swiper-slide__bottom {
	margin-top: 0.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.works-photo__description {
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4375;
	letter-spacing: 0em;
}

.works-top {
	padding-top: 3.75rem;
	position: relative;
	overflow-x: clip;
}

.works-top::before {
	content: "";
	position: absolute;
	top: 12.5rem;
	left: 0;
	width: 90rem;
	max-height: 42.6875rem;
	aspect-ratio: 1440/683;
	background-image: url(./../images/common/bg-green.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}

.works-top__title {
	padding: 1rem 1.5rem 1rem 4rem;
	color: #033163;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.25;
	letter-spacing: 0em;
	background-color: #fff;
	position: relative;
}

.works-top__title::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 1.5rem;
	width: 1.5rem;
	aspect-ratio: 1/1;
	background-image: url(./../images/common/title-icon.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.works-top-container {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 2rem;
}

.works-top-container__info-category-text {
	margin-top: 1.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.works-top-container__info-text {
	margin-top: 1.5rem;
	color: #111111;
	font-size: 1rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.8;
	letter-spacing: 0em;
}

.works-top-container__image {
	width: 100%;
	box-shadow: 0.25rem 0.25rem 0.5rem 0rem rgba(0, 0, 0, 0.1);
	border-radius: 0.25rem;
	overflow: hidden;
}

.works-top-container__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 660/398;
}

.u-flex {
	display: flex;
	gap: 2px;
}

.u-font14 {
	font-size: prem(14);
}

.u-font16 {
	font-size: prem(16);
}

.u-font18 {
	font-size: prem(18);
}

.u-font20 {
	font-size: prem(20);
}

.u-font22 {
	font-size: prem(22);
}

.u-font24 {
	font-size: prem(24);
}

.u-font28 {
	font-size: prem(28);
}

.u-font32 {
	font-size: prem(32);
}

.u-font40 {
	font-size: prem(40);
}

.u-hover {
	transition: opacity 0.5s;
}

.u-hover:hover {
	opacity: 0.6;
	transition: opacity 0.5s;
}

.u-lh10 {
	line-height: 1;
}

.u-lh13 {
	line-height: 1.3;
}

.u-lh15 {
	line-height: 1.5;
}

.u-lh16 {
	line-height: 1.6;
}

.u-lh20 {
	line-height: 2;
}

.u-ls05 {
	letter-spacing: 0.05em;
}

.u-ls10 {
	letter-spacing: 0.1em;
}

.u-ls15 {
	letter-spacing: 0.15em;
}

.u-ls20 {
	letter-spacing: 0.2em;
}

.u-mt10 {
	margin-top: 10px !important;
	margin-top: prem(10) !important;
}

.u-mt20 {
	margin-top: 20px !important;
	margin-top: prem(20) !important;
}

.u-mt30 {
	margin-top: 30px !important;
	margin-top: prem(30) !important;
}

.u-mt40 {
	margin-top: 40px !important;
	margin-top: prem(40) !important;
}

.u-mt50 {
	margin-top: 50px !important;
	margin-top: prem(50) !important;
}

.u-mt60 {
	margin-top: 60px !important;
	margin-top: prem(60) !important;
}

.u-mt70 {
	margin-top: 70px !important;
	margin-top: prem(70) !important;
}

.u-mt80 {
	margin-top: 80px !important;
	margin-top: prem(80) !important;
}

.u-mt90 {
	margin-top: 90px !important;
	margin-top: prem(90) !important;
}

.u-mt100 {
	margin-top: 100px !important;
	margin-top: prem(100) !important;
}

.u-mt110 {
	margin-top: 110px !important;
	margin-top: prem(110) !important;
}

.u-mt120 {
	margin-top: 120px !important;
	margin-top: prem(120) !important;
}

.u-mt130 {
	margin-top: 130px !important;
	margin-top: prem(130) !important;
}

.u-mt140 {
	margin-top: 140px !important;
	margin-top: prem(140) !important;
}

.u-mt150 {
	margin-top: 150px !important;
	margin-top: prem(150) !important;
}

.u-mt160 {
	margin-top: 160px !important;
	margin-top: prem(160) !important;
}

.u-mt170 {
	margin-top: 170px !important;
	margin-top: prem(170) !important;
}

.u-mt180 {
	margin-top: 180px !important;
	margin-top: prem(180) !important;
}

.u-mt190 {
	margin-top: 190px !important;
	margin-top: prem(190) !important;
}

.u-mt200 {
	margin-top: 200px !important;
	margin-top: prem(200) !important;
}

.u-shadow {
	box-shadow: 0 0 13px rgba(255, 0, 0, 0.5);
}

.u-sp {
	display: none;
}

.u-sp400 {
	display: none;
}

.u-sp450 {
	display: none;
}

.u-sp500 {
	display: none;
}

.u-sp550 {
	display: none;
}

.u-sp600 {
	display: none;
}

.u-sp650 {
	display: none;
}

.u-sp700 {
	display: none;
}

.u-textLeft {
	text-align: Left !important;
}

.u-textCenter {
	text-align: Center !important;
}

.u-textRight {
	text-align: Right !important;
}

.u-textJustify {
	text-align: Justify !important;
}

.u-w300 {
	font-weight: 300;
}

.u-w400 {
	font-weight: 400;
}

.u-w500 {
	font-weight: 500;
}

.u-w600 {
	font-weight: 600;
}

.u-w700 {
	font-weight: 700;
}

.u-w900 {
	font-weight: 900;
}

@media (prefers-reduced-motion: reduce) {

html:focus-within {
	scroll-behavior: auto;
}

*,
*::before,
*::after {
	animation-duration: 0.01ms !important;
	animation-iteration-count: 1 !important;
	transition-duration: 0.01ms !important;
	scroll-behavior: auto !important;
}

}

@media (any-hover: hover) {

.button-link:hover {
	background-color: #fff;
	color: #033163;
}

.button-link:hover::after {
	background-color: #033163;
}

.page-numbers li span:hover,
.page-numbers li a:hover {
	border: 2px solid #e2b157 !important;
}

.page-numbers li span:hover,
.page-numbers li a:hover {
	opacity: 1;
	color: #e2b157;
}

.page-numbers li span:hover::before,
.page-numbers li a:hover::before {
	background-color: #e2b157;
}

.prev.page-numbers:hover,
.next.page-numbers:hover {
	border: none !important;
}

.page-numbers.dots:hover {
	border: none !important;
	color: #727981 !important;
}

.archive-article__search-list .news-item__category:hover {
	background-color: #111111;
	color: #fff;
	opacity: 1;
}

.wpcf7-form-control.contact-button:hover {
	background-color: #fff;
	color: #033163;
}

.submit-box:hover::after {
	background-color: #aadcd6;
}

.contact-thanks-button:hover {
	background-color: #fff;
	color: #033163;
}

.contact-thanks-button:hover::after {
	background-color: #033163;
}

.reform-pack-tabs__item--blue:hover {
	background-color: rgba(143, 179, 219, 0.3);
}

.reform-pack-tabs__item--orange:hover {
	background-color: rgba(226, 177, 87, 0.3);
}

.reform-pack-tabs__item--green:hover {
	background-color: rgba(170, 220, 214, 0.3);
}

.reform-pack-tabs__item--pink:hover {
	background-color: rgba(247, 156, 184, 0.3);
}

.reform-pack-tabs__item--blue:hover::before {
	background-color: #8fb3db;
}

.reform-pack-tabs__item--orange:hover::before {
	background-color: #e2b157;
}

.reform-pack-tabs__item--green:hover::before {
	background-color: #aadcd6;
}

.reform-pack-tabs__item--pink:hover::before {
	background-color: #f79cb8;
}

body.single-post .single-main__news-content a:hover {
	opacity: 0.8;
}

.form-submit input:hover {
	opacity: 1;
	background-color: #fff;
	color: #aadcd6;
}

.top-instagram__button-link:hover {
	color: #aadcd6;
	background-color: #fff;
}

.top-instagram__button-link:hover::after {
	background-color: #aadcd6;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.top-achievement__tag--black:hover {
	background-color: #fff;
	color: #111111;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.top-achievement__tag--green:hover {
	background-color: #fff;
	color: #aadcd6;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.top-achievement__tag--pink:hover {
	background-color: #fff;
	color: #f79cb8;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag.top-achievement__tag--blue:hover {
	background-color: #fff;
	color: #8fb3db;
}

}

@media screen and (min-width: 374px) {

.concept-tabs__link {
	font-size: 1rem;
}

}

@media screen and (min-width: 375px) {

.concept-flow__item-title-text {
	font-size: clamp(1.125rem, 0.766rem + 1.531vw, 1.5rem);
}

.reform-pack__text {
	letter-spacing: 0em;
}

.showroom__text-orange {
	letter-spacing: 0em;
}

}

@media screen and (min-width: 400px) {

.concept-service__item-info-list-item-sub1 {
	margin-left: -1em;
	font-size: 1rem;
}

.concept-service__item-info-list-item-sub2 {
	font-size: 1rem;
}

.reform-pack__feature {
	font-size: 1rem;
}

}

@media screen and (min-width: 450px) {

.reform-pack-tabs__item {
	font-size: 1rem;
}

}

@media screen and (min-width: 500px) {

.products__item-lists {
	gap: 0.5rem 5.3333333333vw;
}

}

@media screen and (min-width: 768px) {

html {
	font-size: 1.3333333333vw;
}

html {
	scroll-padding-top: 4.375rem;
}

a:hover {
	opacity: 0.7;
}

.header {
	height: 4.375rem;
}

.header__inner {
	padding: 0 2.5rem;
}

.header__logo {
	max-width: 11.9375rem;
}

.header__nav {
	display: block;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.header.is-active .header__nav {
	opacity: 1;
	visibility: visible;
}

.header__hamburger {
	display: none;
}

.inner {
	max-width: 1250px;
	padding-inline: 25px;
}

.layout-404 {
	padding-block: 6.25rem 9.5rem;
}

.layout-cta {
	padding-block: 6.875rem 5rem;
}

.layout-cta-lower {
	padding-block: 8.125rem 6.25rem;
}

.layout-cta::before,
.layout-cta-lower::before {
	top: 0;
	right: auto;
	left: calc(50% - min(50.5vw, 45rem));
	width: min(31.9444444444vw, 460px);
	background-image: url(./../images/common/cta-bg1-pc.webp);
}

.layout-cta::after,
.layout-cta-lower::after {
	bottom: 0rem;
	left: auto;
	right: calc(50% - min(50.5vw, 45rem));
	width: min(24.5138888889vw, 353px);
	background-image: url(./../images/common/cta-bg2-pc.webp);
}

.layout-member {
	margin-top: 9.5625rem;
}

.layout-page-contact-items {
	top: 58%;
	transform: translateY(-50%);
	right: 0.5rem;
	width: -moz-fit-content;
	width: fit-content;
	padding-inline: 0rem;
}

.layout-reform-pack {
	margin-top: 7.5rem;
}

.layout-section {
	padding-top: 7.5rem;
}

.layout-section2 {
	padding-block: 9.5rem 7.5rem;
}

.layout-showroom {
	margin-top: 7.5rem;
}

.layout-single-recommend {
	margin-top: 7.5rem;
}

.layout-single-works {
	margin-top: 7.5rem;
}

.layout-top-news {
	margin-top: 6.25rem;
}

.layout-top-section {
	margin-top: 7.5rem;
}

.breadcrumb__inner {
	padding-inline: 4.25rem;
	max-width: 1440px;
	width: 100%;
	margin-inline: auto;
}

.button-link {
	padding: 0.875rem 1.5rem;
	width: 12.75rem;
	font-size: 1.125rem;
}

.reform-pack__button-link.button-link {
	max-width: 21.75rem;
}

.section-title__en {
	font-size: 3.25rem;
}

.section-title__ja {
	font-size: 2rem;
	line-height: 1.8;
}

.works-h2-title {
	font-size: 1.5rem;
}

.page-numbers {
	gap: 2rem;
}

.page-numbers li span,
.page-numbers li a {
	font-size: 1.125rem;
}

.access-container {
	flex-direction: row;
	gap: 5rem;
}

.access-info {
	flex: 1;
}

.access-info-wrap {
	flex-direction: row;
	gap: 1.5625rem;
}

.access-info-title {
	width: 6.375rem;
}

.access-info-bottom {
	gap: 0.5625rem;
}

.access-info-bottom-wrap {
	flex-direction: row;
	gap: 3.25rem;
}

.access-info-bottom-title {
	width: 8rem;
}

.achievement__list {
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.achievement__img img {
	aspect-ratio: 358/238;
}

.achievement__text {
	font-size: 1.0625rem;
}

.achievement__tag {
	font-size: 1rem;
}

.achievement__item-info-tags {
	grid-template-columns: repeat(2, 1fr);
	gap: 0.5rem 0rem;
}

.achievement__item-info-tags__wrap-title {
	font-size: 0.9375rem;
}

.achievement__item-info-tags__wrap-description {
	font-size: 0.9375rem;
}

.top-achievement__list {
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.top-achievement__img img {
	aspect-ratio: 358/238;
}

.top-achievement__text {
	font-size: 1.0625rem;
}

.top-achievement__tag {
	font-size: 1rem;
}

.top-achievement__no-posts,
.achievement__no-posts {
	font-size: 1.75rem;
}

.archive-article::before {
	width: 100%;
	background-position: center;
	background-size: cover;
	top: -18.75rem;
}

.archive-article:after {
	width: 100%;
	background-position: center;
	background-size: cover;
	bottom: -18.75rem;
}

.archive-article__search-title {
	font-size: 1.75rem;
}

.company-banner {
	max-width: 25rem;
	margin-top: 6.25rem;
}

.company-img {
	margin-top: 7.5rem;
}

.company {
	padding-top: 8.25rem;
}

.company-container {
	max-width: 68.75rem;
}

.company-wrap {
	gap: 0.1875rem;
	flex-direction: row;
}

.company-title::after {
	bottom: -1.5px;
	width: 100%;
	height: 3px;
	background-color: #efcc8b;
}

.company-description::after {
	bottom: -0.5px;
	width: 100%;
	height: 1px;
	background-color: #727981;
}

.company-title {
	font-size: 1.125rem;
	max-width: 21rem;
	padding: 1.5rem;
}

.company-description {
	font-size: 1rem;
	padding: 1.5rem;
}

.concept-flow {
	padding-bottom: 7.5rem;
}

.concept-flow__items {
	max-width: 70rem;
	width: 100%;
	margin-inline: auto;
}

.concept-flow__items::before {
	height: 90%;
	left: 3.5625rem;
}

.concept-flow-wrap {
	align-items: center;
	flex-direction: row;
	gap: 2rem;
}

.concept-flow__item-title {
	max-width: 34.5rem;
	width: 100%;
	gap: 2rem;
}

.concept-flow__item-title-img {
	width: 7.5rem;
}

.concept-flow__item-title-number {
	font-size: 1.5rem;
}

.concept-flow__item-title-text {
	font-size: 1.75rem;
}

.concept-flow__item-title-text span {
	font-size: 1.25rem;
}

.concept-flow__item-description {
	padding-left: 0rem;
	flex: 1;
}

.concept-reason-items {
	margin-top: 0.625rem;
}

.concept-service::before {
	transform: translateX(0%);
	left: 0;
	width: 100%;
	background-size: cover;
	top: -25rem;
}

.concept-service__items {
	grid-template-columns: repeat(3, 1fr);
	gap: 3.25rem 3.125rem;
}

.concept-staff__text {
	font-size: 1.125rem;
	text-align: center;
}

.concept-staff__items {
	grid-template-columns: repeat(2, 1fr);
}

.concept-staff__item {
	flex-direction: row;
}

.concept-staff__item-info {
	max-width: 23.375rem;
}

.concept-staff__item-img {
	max-width: 13rem;
}

.concept-tabs {
	gap: 1.875rem;
	max-width: 72.5rem;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
}

.concept-tabs__item {
	width: 100%;
}

.concept-tabs__link {
	padding: 1.6875rem 1.25rem;
	font-size: 1.125rem;
}

.concept-tabs__link::after {
	bottom: 0.875rem;
}

.concept-top {
	padding-block: 17.5rem 5rem;
}

.concept-top::before {
	width: 100%;
	top: -15.625rem;
	background-size: cover;
}

.concept-top__bg1 {
	top: 6rem;
	width: 19.375rem;
	left: calc(50% - min(52.5vw, 46.5rem));
}

.concept-top__bg2 {
	display: block;
	top: 27.3125rem;
	left: calc(50% - min(43.5vw, 39rem));
	width: 13.75rem;
}

.concept-top__bg3 {
	width: 15rem;
}

.concept-top__bg4 {
	top: 6rem;
	width: 15rem;
}

.concept-top__bg5 {
	display: block;
	top: 22.75rem;
	right: calc(50% - min(47.5vw, 43rem));
	width: 19.375rem;
}

.concept-top__bg6 {
	bottom: 0;
	width: 13.75rem;
}

.concept-top-container {
	gap: 3rem;
}

.concept-top__title {
	font-size: 1.75rem;
}

.concept-top__subTitle {
	font-size: 1.5rem;
}

.concept-top__tests {
	gap: 1.5rem;
}

.concept__inner {
	max-width: 84.1875rem;
	margin-inline: auto 0;
	padding-inline: 25px 0;
}

.concept__container {
	display: flex;
	align-items: center;
	flex-direction: row;
	gap: min(5vw, 72px);
	max-width: 77.5rem;
}

.concept__content {
	display: block;
	max-width: 36.6875rem;
	padding-inline: 0.8125rem;
}

.concept__content-texts {
	margin-top: 1.375rem;
	padding-inline: 0;
}

.concept__lead {
	font-size: 1.75rem;
}

.concept__main-text {
	font-size: 1.125rem;
}

.concept__text {
	font-size: 1.125rem;
}

.concept__button {
	margin-top: 3rem;
}

.concept__image-box {
	margin-top: 0;
	margin-left: 0;
	max-width: 43.125rem;
	flex: 1;
	width: 100%;
}

.concept__image {
	max-width: 43rem;
	margin-right: calc(50% - 50vw);
}

.concept__img--scenery {
	top: -15%;
	left: 15%;
}

.contact-main {
	margin-top: 7.5rem;
}

.contact-main::after {
	width: 100%;
	background-position: center;
	background-size: cover;
	bottom: -11.25rem;
}

.contact__inner {
	max-width: 970px;
}

.contact-main__inner {
	max-width: 970px;
}

.contact-top__text {
	font-size: 1.125rem;
}

.contact__form {
	margin-top: 2.25rem;
}

.contact .form__wrap {
	max-width: 896px;
	width: 100%;
}

.contact .form__wrap--textarea {
	max-width: 100%;
}

.contact__form-main {
	margin-top: 2.25rem;
}

.submit-container {
	flex-direction: row;
}

.wpcf7-form-control.contact-button {
	padding: 1.28125rem 1.4375rem;
	width: 12.75rem;
	font-size: 1.375rem;
}

.confirm_area-title {
	font-size: 1.5rem;
}

.confirm_area-text {
	font-size: 1.125rem;
}

.confirm_area-main {
	margin-top: 2.25rem;
}

.contact-thanks-main {
	padding-block: 6.25rem 9.5rem;
}

.contact-thanks-main__button {
	margin-top: 2.25rem;
}

.contact-thanks-button {
	padding: 1.28125rem 1.4375rem;
	width: 12.75rem;
	font-size: 1.375rem;
}

.content-item {
	flex-direction: row;
	gap: 4.75rem;
	padding-block: 3.5rem 3.5rem;
	gap: 3rem;
}

.content-item:nth-child(even) {
	flex-direction: row-reverse;
}

.content-item::before {
	bottom: auto;
	top: 0;
	right: auto;
	width: 65.6944444444vw;
	height: 100%;
}

.content-item__info {
	max-width: 40.75rem;
}

.content-item__title {
	width: 10.5625rem;
}

.content-item__subTitle {
	font-size: 1.75rem;
}

.content-item__text {
	font-size: 1.125rem;
}

.content-item__img {
	max-width: 30.25rem;
	flex: 1;
}

.cta__title {
	width: 19.1875rem;
}

.cta__text {
	font-size: 2.25rem;
}

.cta__text-orange {
	font-size: 2.875rem;
}

.cta__bottom-items {
	grid-template-columns: repeat(2, 1fr);
	gap: 4.5rem;
}

.cta__bottom-item-title {
	font-size: 1.5rem;
}

.cta__bottom-item-title--line::after {
	width: 12.5rem;
}

.cta__bottom-item-title--tel::after {
	width: 21.875rem;
}

.cta__bottom-item-link {
	font-size: 1.5rem;
}

.cta__bottom-item-link--line {
	padding: 1.125rem 3.75rem;
}

.cta__bottom-item-link--tel {
	padding: 1.125rem 3.375rem;
}

.cta__bottom-item-text {
	font-size: 1.125rem;
}

.data__container {
	grid-template-columns: repeat(2, 1fr);
}

.data__container-wrap:not(:last-child) {
	border-left: none;
	border-top: none;
	border-right: none;
}

.data__container-wrap:last-child {
	border: none;
}

.data__container-wrap:nth-child(1) {
	border: 1px solid #aadcd6;
}

.data__container-wrap:nth-child(2n+1):not(:first-child) {
	border-bottom: 1px solid #aadcd6;
	border-left: 1px solid #aadcd6;
	border-right: 1px solid #aadcd6;
}

.data__container-wrap:nth-child(2) {
	border-top: 1px solid #aadcd6;
	border-bottom: 1px solid #aadcd6;
	border-right: 1px solid #aadcd6;
}

.data__container-wrap:nth-child(2n):not(:first-child) {
	border-bottom: 1px solid #aadcd6;
	border-right: 1px solid #aadcd6;
}

.data__container-wrap:nth-child(2n+1) .data__container-description {
	background-color: #fff;
}

.data__container-wrap:nth-child(4n+1) .data__container-description,
.data__container-wrap:nth-child(4n+2) .data__container-description {
	background-color: #fffcf4;
}

.footer {
	padding-block: 7.5rem 16.625rem;
}

.footer__inner {
	flex-direction: row;
	justify-content: space-between;
	padding-inline: 25px 7.5rem;
	max-width: 77.5rem;
	width: 100%;
	margin-inline: auto;
	gap: 1.5rem;
}

.footer__left {
	display: block;
	flex: 1;
}

.footer__catch {
	font-size: 3.0625rem;
	letter-spacing: 0.11em;
}

.footer__left-info {
	margin-top: 4.8125rem;
	order: 1;
}

.footer__right {
	margin-top: 3.75rem;
	flex-direction: row;
	gap: 5.4375rem;
}

.footer__nav {
	flex-wrap: nowrap;
	flex-direction: column;
}

.footer__nav-link {
	font-size: 0.9375rem;
}

.footer__info {
	text-align: left;
}

.footer__info-texts {
	margin-top: 4rem;
}

.footer__copyright {
	margin-top: 2.5rem;
}

.fv__img img,
.fv__img picture {
	aspect-ratio: 1440/460;
}

.fv__title-ja {
	font-size: 2.25rem;
}

.fv__title-en {
	top: -2.125rem;
	font-size: 3.5rem;
}

.gallery {
	padding-block: 5rem;
}

.gallery::before {
	width: 100%;
	background-size: cover;
	top: 25rem;
}

.gallery__items--top {
	margin-top: 3.75rem;
}

.gallery__items--top .swiper-slide,
.gallery__items--bottom .swiper-slide {
	width: 17.5rem;
}

.gallery__item {
	margin-left: 3rem;
}

.gallery__item-text {
	font-size: 1.125rem;
}

.greeting-container {
	flex-direction: row;
	padding-block: 1.6875rem;
	max-width: 68.75rem;
	width: 100%;
	margin-inline: auto;
}

.greeting-container::before {
	bottom: auto;
	top: 0;
	right: min(22.9166666667vw, 330px);
	width: 100vw;
	height: 100%;
	margin-left: calc(50% - 50vw);
	margin-right: auto;
}

.greeting-container__image {
	max-width: 35.1875rem;
	width: 100%;
	margin-right: calc(50% - 50vw);
	flex: 1;
}

.history::before {
	bottom: -25rem;
}

.history-container {
	padding: 2.375rem 0.5rem;
	max-height: 47.5rem;
}

.history-list__item {
	gap: 3.125rem;
}

.history-list__term {
	font-size: 1.125rem;
	width: 7.25rem;
	padding-top: 0.625rem;
}

.history-list__description {
	padding-block: 0.625rem 2.125rem;
	padding-left: 3.125rem;
}

.history-list__description::after {
	left: -0.375rem;
	width: 0.875rem;
	height: 0.875rem;
}

.archive-article__search-list.news-item__category-box .news-item__category a {
	padding: 0.375rem 1.125rem;
}

.member__swiper.swiper .swiper-slide {
	width: 39.5625rem;
}

.member__img img {
	aspect-ratio: 1266/721;
}

.member__content-box {
	top: 50%;
}

.member__content {
	margin-top: 3.6875rem;
	padding: 0.9375rem 5.0625rem 2.1875rem;
	max-width: 29.5625rem;
	width: 100%;
}

.member__content::before {
	top: -3.6875rem;
	height: 3.6875rem;
}

.member__label {
	right: 1.5rem;
	font-size: 1.625rem;
	transform: rotate(-17deg);
}

.member__title {
	font-size: 1.75rem;
}

.member__text {
	margin-top: 0.5rem;
	font-size: 1.125rem;
}

.member__vertical {
	top: -1.875rem;
	left: auto;
	right: calc(50% - min(43.5vw, 23rem));
	font-size: 0.875rem;
}

.member__vertical-text {
	gap: 1rem;
	flex-direction: row-reverse;
}

.member__vertical-text-top,
.member__vertical-text-bottom {
	padding: 0.375rem 0.375rem;
	font-size: 1.125rem;
	text-align: center;
	height: -moz-fit-content;
	height: fit-content;
}

.member__vertical-text-top {
	margin-left: 0rem;
}

.member__vertical-text-bottom {
	margin-top: 2.875rem;
}

.member__vertical-text-top span,
.member__vertical-text-bottom span {
	display: block;
	padding-block: 0.1875rem;
}

.mv::before {
	bottom: auto;
	top: 0;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgb(255, 255, 255), rgba(255, 255, 255, 0));
}

.mv__inner {
	padding-inline: 2.5rem;
}

.mv__info {
	max-width: 100%;
	left: 3.9375rem;
	transform: translateX(0);
	padding-inline: 0rem;
	bottom: min(7.5vw, 108px);
}

.mv__badge {
	padding: 0.25rem 1rem;
	font-size: 1.125rem;
}

.mv__lead {
	letter-spacing: 0em;
	margin-top: 1rem;
	font-size: 2.5rem;
}

.mv__stats {
	gap: 1.125rem;
	width: -moz-fit-content;
	width: fit-content;
}

.mv__stat {
	padding: 1.875rem 0.125rem 1.875rem;
	width: 8.125rem;
}

.mv__stat-label {
	font-size: 0.875rem;
}

.mv__stat-value {
	font-size: 1.625rem;
}

.mv__stat-value.mv__stat-value2 {
	margin-top: 0.75rem;
}

.mv__stat-value-large {
	font-size: 1rem;
}

.mv__stat-value-medium {
	font-size: 0.875rem;
}

.mv__img img {
	aspect-ratio: 1360/680;
}

.mv2__inner {
	padding-inline: 2.5rem;
}

.mv2__container {
	padding-block: 0rem;
	padding-inline: 3.75rem;
	justify-content: space-between;
	flex-direction: row;
	max-width: 85rem;
	margin-inline: auto;
	width: 100%;
}

.mv2__info {
	padding-inline: 0rem;
	padding-top: min(8.3333333333vw, 120px);
	padding-bottom: min(20.0694444444vw, 289px);
}

.mv2__text {
	font-size: min(2.7777777778vw, 40px);
}

.mv2__text2 {
	font-size: min(2.7777777778vw, 40px);
	padding-left: min(11.1111111111vw, 160px);
}

.mv2__text2::before {
	width: min(11.1111111111vw, 160px);
}

.mv2__slider.swiper {
	max-width: min(37.5vw, 540px);
}

.mv2__slider {
	margin-top: 0rem;
}

.mv2__slider.swiper .swiper-slide {
	margin-left: 0;
	margin-top: 1.5rem;
	width: 100%;
}

.none__text {
	font-size: 1.25rem;
}

.none__btn {
	margin-top: 3.75rem;
}

.page-contact-items {
	grid-template-columns: repeat(1, 1fr);
	gap: 0.5rem;
	max-width: -moz-fit-content;
	max-width: fit-content;
	margin-inline: 0;
}

.page-top {
	height: -moz-fit-content;
	height: fit-content;
	padding-block: 6.6875rem 2.375rem;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	clip-path: polygon(50% 0%, 100% 80%, 100% 100%, 0 100%, 0 80%);
}

.page-top__nav {
	visibility: visible;
	display: flex;
	align-items: center;
	gap: 2.375rem;
	max-width: 56.25rem;
	width: 100%;
	margin-inline: auto;
}

.page-top__nav-link {
	font-size: 1.0625rem;
}

.point__items {
	grid-template-columns: repeat(3, 1fr);
	gap: 0.78125rem;
}

.point__item-title {
	margin-top: 1.25rem;
}

.point__item-text {
	margin-top: 0.75rem;
}

.privacy-policy {
	padding-block: 10rem;
}

.privacy-policy__introduction {
	font-size: 1.125rem;
}

.privacy-policy__items {
	margin-top: 2.5rem;
	padding-top: 2.5rem;
}

.privacy-policy__item {
	padding-bottom: 2.5rem;
}

.privacy-policy__item + .privacy-policy__item {
	margin-top: 2.5rem;
}

.privacy-policy__term {
	font-size: 1.25rem;
}

.privacy-policy__description {
	font-size: 1.125rem;
}

.privacy-policy__text {
	font-size: 1.25rem;
}

.privacy-policy__text-name {
	font-size: 1.125rem;
}

.privacy-policy__info {
	font-size: 1.5rem;
}

.products__items {
	grid-template-columns: repeat(2, 1fr);
	gap: 3.75rem;
	max-width: 55.25rem;
}

.products__item-title {
	padding: 2.9375rem 4.375rem;
}

.products__item-lists {
	gap: min(1.3888888889vw, 20px) 1.25rem;
}

.products__item-list--toto {
	width: min(13.8888888889vw, 170px);
}

.products__item-list--cleanup {
	width: min(14.5833333333vw, 191px);
}

.products__item-list--lixil {
	width: min(11.1111111111vw, 133px);
}

.products__item-list--panasonic {
	width: min(16.6666666667vw, 216px);
}

.recommend {
	padding-bottom: 7.5rem;
}

.reform-pack {
	padding-block: 3.75rem 5rem;
}

.reform-pack__inner {
	padding-inline: 25px;
}

.reform-pack__content {
	margin-top: 3.75rem;
	max-width: 77.5rem;
	padding: 6.25rem 4.25rem 4.25rem;
}

.reform-pack__content.reform-pack__content2 {
	padding: 6.25rem 3.75rem;
}

.concept-reform-pack {
	margin-top: 7.5rem;
}

.reform-pack__content::before {
	top: -3.75rem;
	width: 8.0625rem;
	aspect-ratio: 124/72;
}

.reform-pack__sub-title {
	font-size: 1.5rem;
	line-height: 1.8;
}

.reform-pack__text {
	font-size: 1.125rem;
	line-height: 1.8;
	letter-spacing: 0em;
}

.reform-pack__plan {
	margin-top: 2.5625rem;
}

.reform-pack__plan2 {
	margin-top: 3.125rem;
}

.reform-pack__plan-title {
	max-width: 28.5rem;
}

.reform-pack__plan-title img {
	aspect-ratio: 460/67;
}

.reform-pack__plan-title2 {
	font-size: 2.25rem;
}

.reform-pack__plan-title2--catch {
	margin-top: 0rem;
}

.reform-pack__plan-title2 span {
	left: calc(50% - min(43.5vw, 30rem));
	transform: translateX(0);
	width: 10rem;
	top: 0rem;
}

.reform-pack__features {
	display: flex;
	align-items: center;
	justify-content: center;
	justify-content: space-between;
	margin-top: 2rem;
	gap: 2rem;
	max-width: 35.625rem;
}

.reform-pack__feature {
	padding-top: 1.1875rem;
	line-height: 1.2;
}

.reform-pack__features-box-text {
	max-width: 35.625rem;
	width: 100%;
}

.reform-pack__features-box-text.reform-pack__features-box-text2 {
	max-width: 34.625rem;
	width: 100%;
}

.reform-pack__price {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: flex-end;
	gap: 1.9375rem;
}

.reform-pack__price-current-box {
	margin-top: 0rem;
}

.reform-pack__price-standard {
	max-width: 12.0625rem;
	padding: 1.1875rem 0rem 1.1875rem 2.3125rem;
	align-items: center;
	gap: 0.375rem;
	margin-right: 1.75rem;
	margin-left: auto;
}

.reform-pack__price-standard::before {
	right: -1.75rem;
	top: 0;
	bottom: auto;
	width: 1.75rem;
	height: 100%;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.reform-pack__price-label {
	font-size: 1rem;
}

.reform-pack__price-value {
	font-size: 2rem;
}

.reform-pack__price-value::before {
	width: 4.5625rem;
	left: -0.125rem;
}

.reform-pack__price-value span {
	font-size: 1.25rem;
	margin-left: 0.375rem;
}

.reform-pack__price-current {
	padding-top: 0rem;
	max-width: 100%;
}

.reform-pack__price-number-box {
	margin-top: 0.5rem;
	margin-left: 1.25rem;
	display: flex;
	align-items: flex-end;
}

.reform-pack__price-number {
	font-size: 4.5rem;
	justify-content: center;
}

.reform-pack__price-discount {
	top: 65%;
	transform: translateY(-50%);
	max-width: 5.625rem;
	left: auto;
	right: -8rem;
}

.reform-pack__price-discount img {
	aspect-ratio: 90/90;
}

.reform-pack__price-tax {
	margin-top: 0rem;
	font-size: 1rem;
	text-align: left;
}

.reform-pack__items {
	margin-top: 1.5rem;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
	max-width: 64.375rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__items.reform-pack__items2 {
	margin-top: 1.5rem;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	max-width: 50rem;
	width: 100%;
	margin-inline: auto;
}

.reform-pack__img img {
	aspect-ratio: 240/168;
}

.reform-pack__item-title {
	line-height: 1;
	padding-left: 1.0625rem;
	font-size: 1.125rem;
	line-height: 1.2;
}

.reform-pack__item-text {
	font-size: 1rem;
}

.reform-pack__item-text2 {
	font-size: 1rem;
}

.reform-pack__img-info-note {
	gap: 0rem;
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.375rem;
}

.reform-pack__img-info-note-item {
	max-width: 3.9375rem;
}

.reform-pack__img-info-note-item img {
	aspect-ratio: 63/21;
}

.reform-pack__img-info-note-text {
	padding: 0.125rem min(0.4166666667vw, 6px);
	font-size: clamp(0.75rem, 0.536rem + 0.446vw, 0.938rem);
	letter-spacing: -0.02em;
}

.reform-pack__img-info-note-sub {
	width: -moz-fit-content;
	width: fit-content;
}

.reform-pack-tabs-container {
	flex-direction: row;
	gap: 0rem;
}

.reform-pack-tabs:nth-child(1) {
	padding-right: 0.25rem;
}

.reform-pack-tabs:nth-child(2) {
	padding-left: 0.25rem;
}

.reform-pack-tabs {
	gap: 0.5rem;
}

.reform-pack-tabs__item {
	padding: 0.625rem;
	font-size: 1.125rem;
}

.reform-pack-tabs__item.is-active::before {
	bottom: -0.15625rem;
	height: 0.25rem;
}

.reform-pack-tabs__item::before {
	bottom: -0.15625rem;
	height: 0.25rem;
}

.reform-pack__bottom {
	padding: 2.5rem 2rem;
}

.reform-pack__bottom-title {
	font-size: 1.75rem;
}

.reform-pack__bottom2-container {
	width: 100%;
}

.reform-pack__bottom2-container-wrap {
	grid-template-columns: 16.25rem 1fr;
}

.reform-pack__bottom2-container-title {
	max-width: 16.25rem;
	width: 100%;
}

.showroom-contact {
	padding-bottom: 7.5rem;
}

.showroom-contact::before {
	width: 100%;
	background-size: cover;
}

.showroom-contact-texts__text {
	font-size: 1.125rem;
}

.showroom-contact-note__text {
	font-size: 1rem;
}

.showroom-intro {
	padding-block: 6.25rem 7.5rem;
}

.showroom-intro::before {
	transform: translateX(0%);
	left: 0;
	width: 100%;
	background-size: cover;
	top: -25rem;
}

.showroom-intro__texts {
	margin-top: 3rem;
}

.showroom-point__inner {
	max-width: 1290px;
	padding-inline: 25px;
	margin-inline: auto;
}

.showroom-point__items {
	margin-top: 2.5rem;
}

.showroom-point__item {
	flex-direction: row;
	gap: 4.75rem;
	padding-block: 3.5rem;
	gap: 3rem;
}

.showroom-point__item--first::before,
.showroom-point__item--second::before,
.showroom-point__item--third::before {
	bottom: auto;
	top: 0;
	width: 65.6944444444vw;
	height: 100%;
}

.showroom-point__item--first::before {
	right: min(30.2777777778vw, 436px);
	width: 65.6944444444vw;
	margin-left: calc(50% - 50vw);
	margin-right: auto;
	left: 0;
}

.showroom-point__item--second::before {
	left: min(30.2777777778vw, 436px);
	margin-right: calc(50% - 50vw);
	margin-left: auto;
	right: 0;
}

.showroom-point__item--third::before {
	right: min(30.2777777778vw, 436px);
	margin-left: calc(50% - 50vw);
	margin-right: auto;
	left: 0;
}

.showroom-point__item.showroom-point__item--reverse {
	flex-direction: row-reverse;
}

.showroom-point__item-info {
	max-width: 38.375rem;
}

.showroom-point__item-info-title {
	width: 10.5625rem;
}

.showroom-point__item-info-subTitle {
	font-size: 1.75rem;
}

.showroom-point__item-info-text {
	font-size: 1.125rem;
}

.showroom-point__item-img {
	max-width: 30.25rem;
}

.showroom-point__item2 {
	padding-block: 2rem;
}

.showroom-point__item2-title {
	padding-inline: 1.25rem;
}

.showroom-point__item2-title::before,
.showroom-point__item2-title::after {
	width: 1.375rem;
	top: 54%;
}

.showroom-point__item2-title::before {
	left: 0rem;
}

.showroom-point__item2-title::after {
	right: 0rem;
}

.showroom-point__item2-content {
	max-width: 62.5rem;
	width: 100%;
	margin-inline: auto;
	justify-content: space-between;
	flex-direction: row;
}

.showroom-point__item2-content-img {
	max-width: 26.875rem;
}

.showroom-point__item2-content-texts {
	max-width: 33.9375rem;
}

.showroom-point__item2-content-text {
	font-size: 1.125rem;
}

.showroom-top {
	max-height: 28.125rem;
}

.showroom::before {
	transform: translateX(0%);
	left: 0;
	width: 100%;
	background-size: cover;
	top: 25rem;
}

.showroom__inner {
	padding-inline: 40px;
}

.showroom-container {
	display: flex;
	justify-content: space-between;
	gap: 0.625rem;
	height: 60rem;
	overflow: hidden;
}

.showroom__images-left,
.showroom__images-right {
	max-width: min(21.3888888889vw, 308px);
	width: 100%;
	margin-inline: 0;
	height: 100%;
}

.showroom__images-right-swiper.swiper {
	padding-top: 6.25rem;
}

.showroom__images-left-swiper.swiper .swiper-slide,
.showroom__images-right-swiper.swiper .swiper-slide {
	width: auto;
	height: 10.875rem;
	margin-left: 0;
	margin-bottom: 1rem;
}

.showroom__images-left-swiper.swiper .swiper-slide img,
.showroom__images-right-swiper.swiper .swiper-slide img {
	aspect-ratio: 308/174;
}

.showroom__content {
	padding-block: 0rem;
	text-align: left;
	align-self: center;
}

.showroom__sub-title {
	font-size: 1.5rem;
}

.showroom__sub-title-number {
	font-size: 1.875rem;
}

.showroom__sub-title-icon {
	width: min(13.1944444444vw, 190px);
	aspect-ratio: 190/118;
	right: -0.875rem;
	bottom: -1rem;
}

.showroom__main-title {
	margin-top: 1.625rem;
}

.showroom__main-title-text,
.showroom__main-title-text2,
.showroom__main-title-text3 {
	padding: 0.25rem 1.25rem;
}

.showroom__main-title-text {
	font-size: min(2.2222222222vw, 32px);
}

.showroom__main-title-text2 {
	font-size: min(1.9444444444vw, 28px);
}

.showroom__main-title-text2-blue {
	font-size: min(2.2222222222vw, 32px);
}

.showroom__main-title-text2-icon {
	width: min(8.1944444444vw, 118px);
}

.showroom__main-title-text3 {
	font-size: min(1.9444444444vw, 28px);
}

.showroom__main-title-text3 span {
	font-size: min(2.0833333333vw, 30px);
}

.showroom__texts {
	gap: 1.375rem;
	margin-top: 3rem;
}

.showroom__text {
	font-size: 1.125rem;
}

.showroom__text-orange {
	font-size: 1.375rem;
}

.showroom__text-green {
	font-size: 1.375rem;
}

.showroom__text-blue {
	font-size: 1.375rem;
}

.showroom__text-pink {
	font-size: 1.375rem;
}

.showroom__text-br {
	display: none;
}

.showroom__button {
	margin-top: 3rem;
}

.sidebar__title {
	font-size: 1.5rem;
}

.sidebar__link-info {
	margin-top: 0.3125rem;
}

.sidebar__link-more {
	font-size: 1rem;
}

.single-main::before {
	width: 100%;
	background-size: cover;
	top: 18.75rem;
}

.single-main::after {
	width: 100%;
	background-position: center;
	background-size: cover;
	bottom: -18.75rem;
}

.single-main__container {
	flex-direction: row;
	justify-content: space-between;
	gap: 3.375rem;
}

.single-main__news {
	max-width: 43.5rem;
}

.single-main__news-title {
	font-size: 1.5rem;
}

.layout-sidebar {
	max-width: 22.8125rem;
}

.top-blog::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: -6.625rem;
	width: 100%;
	height: 29.625rem;
	background-image: url(./../images/top/blog-bg.png);
	background-size: auto 100%;
	background-position: left bottom;
	background-repeat: repeat-x;
	z-index: -1;
}

.top-contact {
	padding-bottom: 10rem;
}

.top-contact__lead {
	margin-top: 2.25rem;
	font-size: 1.125rem;
}

.top-contact__note-box {
	margin-top: 1.5rem;
	max-width: 100%;
	width: -moz-fit-content;
	width: fit-content;
}

.top-contact__note {
	font-size: 1rem;
}

.top-contact__form {
	margin-top: 2.25rem;
}

.form__wrap {
	max-width: 50rem;
	width: 100%;
}

.form__wrap.form__wrap--textarea {
	align-items: flex-start;
}

.form__wrap + .form__wrap {
	margin-top: 2rem;
}

.form__wrap.form__wra-textarea .form__label {
	margin-top: 0.625rem;
}

.form__wrap input,
.form__wrap textarea,
.form__wrap select {
	font-size: 1rem;
}

.form-checkbox input + span,
.form__privacy-checkbox input + span {
	font-size: 1.125rem;
}

.form-submit input {
	max-width: 24.5rem;
	font-size: 1.125rem;
}

.form-submit input:hover {
	opacity: 0.8;
}

.form__privacy {
	margin-top: 2.5rem;
}

.top-instagram {
	padding-bottom: 7.875rem;
}

.top-instagram::before {
	width: 100%;
	background-position: center;
	background-size: cover;
	top: 1.25rem;
}

.top-news__bg {
	display: block;
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	top: -47.2222222222vw;
	right: 0;
	width: 100%;
	aspect-ratio: 1440/683;
	z-index: -1;
}

.news-list {
	grid-template-columns: repeat(3, 1fr);
	gap: 1.4375rem;
	max-width: 100%;
}

.news-item__link {
	padding: 1.5rem;
}

.news-item__text {
	font-size: 1.0625rem;
}

.news-item__date {
	padding-top: 0.5rem;
}

.news-item__category {
	padding: 0.375rem 1.125rem;
}

.news-no-posts {
	font-size: 1.75rem;
}

.archive-article__search-list.top-achievement__tags .top-achievement__tag a {
	padding: 0.375rem 1.125rem;
}

.works-floor__container,
.works-floor__container-text {
	max-width: 61rem;
	width: 100%;
	margin-inline: auto;
}

.works-floor__container {
	margin-top: 2rem;
	align-items: flex-end;
	flex-direction: row;
	gap: 1.5rem;
}

.works-floor__container-before {
	max-width: 23.75rem;
	width: 100%;
}

.works-floor__container-after {
	max-width: 36.25rem;
}

.works-floor__container-before::before {
	width: 5.6875rem;
}

.works-floor__container-after::before {
	top: -0.6875rem;
	left: -1.875rem;
	width: 10.375rem;
}

.works-floor__container-text {
	font-size: 1rem;
}

.works-list {
	max-width: 100%;
	grid-template-columns: repeat(3, 1fr);
}

.works-photo__inner.inner {
	padding-inline: 25px 15px;
}

.works-photo__mains {
	margin-top: 2rem;
	gap: 1rem;
	flex-direction: row;
}

.works-photo__slider-container--before {
	max-width: 23.75rem;
	width: 100%;
	margin-bottom: 1.875rem;
}

.works-photo__slider-container--before::before {
	width: 5.6875rem;
}

.works-photo__slider-container--after::before {
	top: -0.6875rem;
	left: -1.875rem;
	width: 10.375rem;
}

.swiper-slide__bottom {
	align-items: center;
	flex-direction: row;
	gap: 1.25rem;
}

.works-top {
	padding-top: 6.25rem;
}

.works-top::before {
	width: 100%;
	background-size: cover;
	bottom: -18.75rem;
	top: auto;
}

.works-top__title {
	font-size: 1.75rem;
}

.works-top-container {
	justify-content: space-between;
	flex-direction: row;
}

.works-top-container__info {
	flex: 1;
}

.works-top-container__info-category-text {
	font-size: 1rem;
}

.works-top-container__info-text {
	font-size: 1rem;
}

.works-top-container__image {
	max-width: 41.25rem;
}

}

@media (min-width: 1200px) {

html {
	font-size: 16px;
}

}

@media screen and (min-width: 1300px) {

.showroom__text-br2 {
	display: none;
}

}

@media screen and (min-width: 1380px) {

.footer__inner {
	padding-inline: 25px;
}

}

@media screen and (min-width: 1440px) {

.concept__inner {
	margin-inline: auto;
}

.concept__image {
	margin-right: 0;
}

}

@media screen and (max-width: 767px) {

.page-contact-item img {
	aspect-ratio: 106/106;
	object-fit: contain;
	width: 100%;
	height: 100%;
}

.works-photo__slider.works-photo__slider--before {
	margin-right: 10px;
}

.u-mtSp10 {
	margin-top: 10px !important;
	margin-top: prem(10) !important;
}

.u-mtSp20 {
	margin-top: 20px !important;
	margin-top: prem(20) !important;
}

.u-mtSp30 {
	margin-top: 30px !important;
	margin-top: prem(30) !important;
}

.u-mtSp40 {
	margin-top: 40px !important;
	margin-top: prem(40) !important;
}

.u-mtSp50 {
	margin-top: 50px !important;
	margin-top: prem(50) !important;
}

.u-mtSp60 {
	margin-top: 60px !important;
	margin-top: prem(60) !important;
}

.u-mtSp70 {
	margin-top: 70px !important;
	margin-top: prem(70) !important;
}

.u-mtSp80 {
	margin-top: 80px !important;
	margin-top: prem(80) !important;
}

.u-mtSp90 {
	margin-top: 90px !important;
	margin-top: prem(90) !important;
}

.u-mtSp100 {
	margin-top: 100px !important;
	margin-top: prem(100) !important;
}

.u-mtSp110 {
	margin-top: 110px !important;
	margin-top: prem(110) !important;
}

.u-mtSp120 {
	margin-top: 120px !important;
	margin-top: prem(120) !important;
}

.u-mtSp130 {
	margin-top: 130px !important;
	margin-top: prem(130) !important;
}

.u-mtSp140 {
	margin-top: 140px !important;
	margin-top: prem(140) !important;
}

.u-mtSp150 {
	margin-top: 150px !important;
	margin-top: prem(150) !important;
}

.u-mtSp160 {
	margin-top: 160px !important;
	margin-top: prem(160) !important;
}

.u-mtSp170 {
	margin-top: 170px !important;
	margin-top: prem(170) !important;
}

.u-mtSp180 {
	margin-top: 180px !important;
	margin-top: prem(180) !important;
}

.u-mtSp190 {
	margin-top: 190px !important;
	margin-top: prem(190) !important;
}

.u-mtSp200 {
	margin-top: 200px !important;
	margin-top: prem(200) !important;
}

.u-pc {
	display: none;
}

.u-sp {
	display: block;
}

.u-textMdLeft {
	text-align: Left !important;
}

.u-textMdCenter {
	text-align: Center !important;
}

.u-textMdRight {
	text-align: Right !important;
}

.u-textMdJustify {
	text-align: Justify !important;
}

}

@media screen and (max-width: 700px) {

.u-sp700 {
	display: block;
}

}

@media screen and (max-width: 650px) {

.u-sp650 {
	display: block;
}

}

@media screen and (max-width: 600px) {

.u-sp600 {
	display: block;
}

}

@media screen and (max-width: 550px) {

.u-sp550 {
	display: block;
}

}

@media screen and (max-width: 500px) {

.u-sp500 {
	display: block;
}

}

@media screen and (max-width: 450px) {

.u-sp450 {
	display: block;
}

}

@media screen and (max-width: 400px) {

.u-sp400 {
	display: block;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

