@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@500&display=swap');
/* Box sizing rules */
*,
*::before,
*::after {
	box-sizing: border-box;
}
/* Remove default margin */
body,
h1,
h2,
h3,
h4,
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[role='list'],
ol[role='list'] {
	list-style: none;
}
/* 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;
}
/* Remove all animations and transitions for people that prefer not to see them */
@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;
	}
}
:root {
	--black: #000;
	--white: #fff;
	--color-logo: #1a1311;
	--color-brand: #664833;
	--color-brand-light: #7a5c3f;
	--color-brand-dark: #402c1f;
	--header-height: 90px;
	--default-font-family: 'Helvetica Neue', Arial, 'Yu Gothic Pr6N M', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'BIZ UDPGothic', Meiryo,
		sans-serif;
	--font-latin: 'Big Shoulders Display', 'Yu Gothic Pr6N D', sans-serif;
}
*,
*:before,
*:after {
	/*outline: 2px solid lime; */
}
html {
	height: 100%;
	scroll-padding-top: var(--header-height);
}
/*
"Yu Gothic Pr6N D", sans-serif;
*/
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: var(--black);
	/*
  clamp settings
   Min-Max-Value Interpolation
   14px 18px 375px 1200px
  */
	font-size: clamp(0.875rem, 0.761rem + 0.48vw, 1.125rem);
	font-family: var(--default-font-family);
	font-weight: 400;
	/*height: 100%; */
	min-height: 100dvh;
	min-width: 320px;
	position: relative;
	line-height: 2;
	overflow-x: hidden;
}
@media (max-width: 599.98px) {
	body {
		line-height: 1.7;
	}
}
a {
	color: inherit;
	text-decoration: none;
}
@media (min-width: 600px) {
	a[href^='tel'] {
		pointer-events: none;
	}
}
img,
svg {
	vertical-align: middle;
}
figure {
	margin: 0;
	padding: 0;
}
h1,
h2,
h3 {
	font-family: var(--font-latin);
	font-optical-sizing: auto;
	font-weight: 500;
}
nav ol,
nav ul {
	margin: 0;
	padding-left: 0;
}
.wrapper {
	--padding-inline: calc(4rem * 0.625);
	max-width: calc(162rem * 0.625 + var(--padding-inline) * 2);
	margin-inline: auto;
	padding-inline: var(--padding-inline);
}
@media (max-width: 599.98px) {
	.wrapper {
		--padding-inline: calc(3rem * 0.625);
	}
}
@media (max-width: 320px) {
	.wrapper {
		--padding-inline: calc(1.5rem * 0.625);
	}
}
.nav-pager {
	margin-top: 4em;
}
.list-nav-pager {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1em;
	margin: 0;
	padding-left: 0;
}
@media (max-width: 320px) {
	.hidden-xs {
		display: none !important;
	}
}
@media (max-width: 599.98px) {
	.hidden-sm {
		display: none !important;
	}
}
@media (min-width: 600px) {
	.hidden-md {
		display: none !important;
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.hidden-md-lg {
		display: none !important;
	}
}
@media (min-width: 1024px) {
	.hidden-lg {
		display: none !important;
	}
}
@media (min-width: 1025px) and (max-width: 1279.98px) {
	.hidden-lg-xl {
		display: none !important;
	}
}
@media (min-width: 1280px) {
	.hidden-xl {
		display: none !important;
	}
}
.page-title {
	font-size: clamp(1.625rem, 0.375rem + 5.33vw, 4.375rem);
	text-align: center;
	letter-spacing: calc(150em / 1000);
	text-indent: calc(150em / 1000);
}
.section-title {
	font-size: clamp(2rem, 1.489rem + 2.18vw, 3.125rem);
	letter-spacing: calc(200em / 1000);
	text-indent: calc(200em / 1000);
	text-align: center;
	line-height: 1.5;
}
.page-heading {
	background-color: rgba(122, 92, 63, 1);
	background-size: cover;
	background-position: 50%;
	color: var(--white);
	min-height: calc(79rem * 0.625);
	display: grid;
	place-items: center;
}
@media (max-width: 599.98px) {
	.page-heading {
		min-height: calc(40rem * 0.625);
	}
}
.js-fadein {
	transform: translateY(60px);
	transition: 1.3s ease-in-out;
	opacity: 0;
}
@media (max-width: 599.98px) {
	.js-fadein {
		transform: translateY(40px);
	}
}
.js-fadein.is-fadein {
	opacity: 1;
	transform: translateY(0);
}
body:where(.error404) .main {
	display: grid;
	place-items: center;
	min-height: 50vh;
}
.btn {
	--btn-color: var(--white);
	--btn-text-color: currentColor;
	--border-color: currentColor;

	background-color: var(--btn-color);
	color: var(--btn-text-color);
	display: inline-grid;
	place-content: center;
	line-height: 1;
	padding: 1em;
	border-radius: 100vw;
	width: calc(22.5rem * 0.625);
	min-width: max-content;
	transition: 0.5s ease-in-out;
}
.btn.btn-primary {
	border: 1px solid var(--border-color);
}
.btn.btn-secondary {
	--btn-color: var(--color-brand-dark);
	--btn-text-color: var(--white);
}
.btn.btn-hover {
	position: relative;
	overflow: clip;
	z-index: 0;
	transition: 0.5s ease-in-out;
}
.btn.btn-hover::before {
	background-color: var(--color-brand);
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	z-index: -1;
	transition: transform 0.5s ease-in-out;
	transform: scaleY(0);
	transform-origin: left top;
}
.btn.btn-hover:hover,
.btn.btn-hover:focus {
	--border-color: var(--color-brand);
	--btn-text-color: var(--white);
}
.btn.btn-hover:hover::before,
.btn.btn-hover:focus::before {
	transform: scaleY(1);
	transform-origin: left bottom;
}
.header {
	background-color: transparent;
	color: var(--white);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99999;
	transition:
		color 0.5s ease-in-out,
		background-color 0.5s ease-in-out;
}
.header .wrapper {
	max-width: calc(192rem * 0.625);
	height: var(--header-height);
	display: grid;
}
.header.is-active {
	color: var(--color-brand);
	background-color: rgba(255, 255, 255, 0.8);
}
.fig-header-logo {
	width: calc(12.078rem * 0.625);
	display: grid;
	place-items: center;
	transition: color 0.5s ease-in-out;
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.fig-header-logo {
		width: calc(9.5rem * 0.625);
	}
}
@media (max-width: 599.98px) {
	.fig-header-logo {
		width: calc(8.839rem * 0.625);
	}
}
.fig-header-logo.is-active {
	color: var(--white);
}
.header-navigation .nav-list {
	gap: 1rem 3.2rem;
	flex-wrap: wrap;
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.header-navigation .nav-list {
		gap: 1rem 1.5em;
	}
}
@media (max-width: 599.98px) {
	.header-navigation .nav-list {
		--link-color: var(--white);
		display: grid;
		place-content: center;
		gap: 0.65em;
		font-size: calc(2.4rem * 0.625);
		height: auto;
		text-align: center;
		padding-block: 1em;
		padding: 0;
	}
}
@media (max-width: 599.98px) {
	.header-navigation .nav-list-secondary {
		font-size: calc(1.5rem * 0.625);
		margin-top: calc(4rem * 0.625);
	}
}
.lay-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
}
@media (max-width: 599.98px) {
	.sm-block-navigation {
		position: absolute;
		left: 0;
		top: 0;
		padding-top: calc(var(--header-height) + 1em);
		background-color: transparent;
		width: 100%;
		z-index: -1;
		height: 100dvh;
		visibility: hidden;
		opacity: 0;
		transition: 0.5s ease-in-out;
	}
}
.sm-block-navigation.is-active {
	background-color: var(--color-brand);
	background-image: linear-gradient(to bottom, rgb(122, 92, 63), rgb(102, 72, 51));
	visibility: visible;
	opacity: 1;
}
.hamburger {
	width: calc(var(--header-height) / 2);
	height: calc(var(--header-height) / 2);
	display: grid;
	place-content: center;
	cursor: pointer;
	overflow-x: clip;
}
.hamburger span {
	--line-color: currentColor;
	background-color: var(--line-color);
	width: calc(var(--header-height) / 2 - 1.5em);
	height: 1px;
	transition: transform 0.4s ease-in-out;
}
.hamburger span + * {
	margin-top: 0.5rem;
}
.hamburger.is-active span {
	--line-color: var(--white);
	transform: rotate(28deg);
}
.hamburger.is-active span + * {
	margin-top: -1px;
	transform: rotate(-28deg);
}
.sec-contact {
	background-color: var(--color-brand-dark);
	background-image: url('../img/common/bg-sec-contact.webp');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	color: var(--white);
	text-align: center;
}
@media (max-width: 599.98px) {
	.sec-contact {
		background-image: url('../img/common/bg-sec-contact-sm.webp');
	}
}
.sec-contact .wrapper {
	padding-block: calc(10.5rem * 0.625);
}
@media (max-width: 599.98px) {
	.sec-contact .wrapper {
		padding-block: calc(7rem * 0.625);
	}
}
.section-heading + * {
	margin-top: 3em;
}
.section-body {
}
.txt-contact {
	font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
}
.txt-contact small {
	font-size: 80%;
}
.tel-contact {
	font-size: clamp(2.688rem, 2.375rem + 1.33vw, 3.375rem);
	line-height: 1;
	margin-block: 0.1em;
}
.sec-ex-links {
	background-color: #f3f2ef;
}
.sec-ex-links .wrapper {
	padding-block: calc(10.5rem * 0.625);
}
@media (max-width: 599.98px) {
	.sec-ex-links .wrapper {
		padding-block: calc(7rem * 0.625);
	}
}
.lay-ex-links {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: calc(5.2rem * 0.625);
}
@media (max-width: 599.98px) {
	.lay-ex-links {
		display: grid;
		place-items: center;
		gap: calc(5rem * 0.625);
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.lay-ex-links {
		display: grid;
		place-items: center;
		gap: calc(5rem * 0.625);
	}
}
.fig-logo {
	color: var(--color-logo);
	width: calc(27.524rem * 0.625);
	flex-shrink: 0;
}
@media (max-width: 599.98px) {
	.fig-logo {
		width: calc(18.178rem * 0.625);
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.fig-logo {
		width: calc(18.178rem * 0.625);
	}
}
.online-shop .btn {
	font-size: calc(2rem * 0.625);
	padding: 1.4em 3.5em;
}
@media (max-width: 599.98px) {
	.online-shop .btn {
		font-size: calc(1.5rem * 0.625);
		padding: 1.8em 5.5em;
	}
}
.online-shop .btn:hover {
	--btn-color: var(--color-logo);
}
.lay-sns-links {
	display: flex;
	gap: calc(2rem * 0.625);
}
.fig-sns {
	--btn-color: var(--color-brand-dark);
	color: var(--btn-color);
	width: calc(7.542rem * 0.625);
	transition: color 0.5s ease-in-out;
}
@media (max-width: 599.98px) {
	.fig-sns {
		width: calc(6.806rem * 0.625);
	}
}
.fig-sns:hover {
	--btn-color: var(--color-logo);
}
.sns {
	line-height: 1;
}
.sns a {
	display: inline-block;
}
.footer {
	background: #fff;
}
.footer .wrapper {
	max-width: 1240px;
	padding-block: calc(6rem * 0.625) 2.5em;
}
.lay-footer {
	display: grid;
	grid-template-areas:
		'information navigation'
		'information copyright';
	gap: calc(4rem * 0.625) 2em;
	grid-auto-columns: auto max-content;
	align-items: center;
}
@media (max-width: 599.98px) {
	.lay-footer {
		display: block;
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.lay-footer {
		display: block;
	}
}
.block-information {
	grid-area: information;
}
@media (max-width: 599.98px) {
	.block-information {
		margin-top: 2em;
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.block-information {
		margin-top: 2em;
	}
}
.block-navigation {
	grid-area: navigation;
}
.block-copyright {
	grid-area: copyright;
}
@media (max-width: 599.98px) {
	.block-copyright {
		margin-top: 2em;
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.block-copyright {
		margin-top: 2em;
	}
}
.footer-text {
	line-height: 1.7;
	font-size: calc(1.7rem * 0.625);
	text-align: left;
}
@media (max-width: 320px) {
	.footer-text {
		font-size: calc(1.5rem * 0.625);
	}
}
@media (min-width: 1024px) {
	.footer-text {
		text-align: right;
	}
}
.footer-copyright {
	text-align: left;
}
@media (min-width: 1024px) {
	.footer-copyright {
		text-align: right;
	}
}
.footer-copyright small {
	font-size: clamp(0.75rem, 0.665rem + 0.36vw, 0.938rem);
}
.fig-footer-logo {
	color: var(--color-logo);
	width: calc(14.342rem * 0.625);
	display: grid;
	place-items: center;
}
.nav-list {
	--link-color: currentColor;
	color: var(--link-color);
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 2em;
	line-height: 1.7;
}
@media (max-width: 599.98px) {
	.nav-list {
		justify-content: flex-start;
		flex-direction: column;
		gap: 1em;
		height: 8em;
	}
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.nav-list {
		justify-content: flex-start;
		gap: 1em;
	}
}
.nav-list a {
	display: inline-flex;
	position: relative;
}
.nav-list a::after {
	content: '';
	height: 1px;
	width: 100%;
	background-color: var(--link-color);
	position: absolute;
	bottom: 0;
	left: 0;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.4s;
}
.nav-list a:hover::after,
.nav-list a:focus::after {
	width: 100%;
	transform: scaleX(1);
	transform-origin: left;
}
.nav-list-secondary {
	gap: 1em;
	font-size: calc(1.5rem * 0.625);
	margin-top: 1.3em;
}
@media (max-width: 599.98px) {
	.nav-list-secondary {
		height: auto;
	}
}
.address-list {
	font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
	margin-top: calc(3.2rem * 0.625);
}
/* page */
body:where(.single) .page-heading {
	background-image: url('../img/news/img-page-heading.webp');
}
@media (max-width: 599.98px) {
	body:where(.single) .page-heading {
		background-image: url('../img/news/img-page-heading-sm.webp');
	}
}
body:where(.single) .main .wrapper {
	max-width: calc(70rem * 0.625 + var(--padding-inline) * 2);
	padding-block: 11em;
}
@media (max-width: 599.98px) {
	body:where(.single) .main .wrapper {
		padding-block: 7em;
	}
}
body:where(.single) .entry-meta + * {
	margin-top: 0.25em;
}
body:where(.single) .post-title {
	font-size: clamp(1.25rem, 1.08rem + 0.73vw, 1.625rem);
	font-family: var(--default-font-family);
	font-weight: 400;
	line-height: 1.7;
}
body:where(.single) .post-title + * {
	margin-top: 2em;
}
@media (max-width: 599.98px) {
	body:where(.single) .wp-block-image {
		width: 100dvw;
		margin-left: calc(0rem - var(--padding-inline));
	}
}
body:where(.category) .page-heading {
	background-image: url('../img/news/img-page-heading.webp');
}
@media (max-width: 599.98px) {
	body:where(.category) .page-heading {
		background-image: url('../img/news/img-page-heading-sm.webp');
	}
}
body:where(.category) .main .wrapper {
	max-width: calc(102rem * 0.625 + 4rem);
	padding-block: 11em;
}
@media (max-width: 599.98px) {
	body:where(.category) .main .wrapper {
		padding-block: 7em;
		padding-inline: 3rem;
	}
}
body:where(.category) .news-item {
	padding-inline: 0;
}
.navigation {
	margin-top: 3em;
}
.nav-links {
	color: var(--color-brand);
	font-family: var(--font-latin);
	font-size: clamp(1.25rem, 1.108rem + 0.61vw, 1.563rem);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1em;
}
.page-numbers {
	border: 1px solid transparent;
	line-height: 1;
	padding: 0.4em 0.8em 0.3em;
	transition: 0.5s ease-in-out;
}
.page-numbers.current {
	border-color: var(--color-brand);
}
.page-numbers:hover,
.page-numbers:focus {
	border-color: var(--color-brand);
}
.prev {
	border: none;
	display: none;
}
.next {
	border: none;
	display: none;
}
body:where(.page) {
	background-color: #f3f2ef;
}
body:where(.page) .main .wrapper {
	padding-block: 4em;
}
body:where(.page) .main .section-title {
	color: var(--color-brand);
}
body:where(.page) .main .section-title-ja {
	color: var(--color-brand);
	text-align: center;
}
@media (max-width: 599.98px) {
	body:where(.page) .main .section-title-ja {
		margin-top: 0.5em;
	}
}
body:where(.page) .main .link-kairos {
	color: var(--white);
}
@media (max-width: 599.98px) {
	body:where(.page) .main .link-kairos {
		/*margin-left: -1em; */
		/*margin-right: -1em; */
	}
}
body:where(.page) .main .image-link {
	display: block;
}
body:where(.page) .main .image-link:hover img,
body:where(.page) .main .image-link:focus img {
	filter: brightness(0.7);
}
body:where(.page) .main .lay-link-kairos {
	position: relative;
	display: grid;
	height: 100%;
	place-items: center;
	grid-template-areas:
		'logo'
		'ttl'
		'icon';
}
@media (max-width: 599.98px) {
	body:where(.page) .main .lay-link-kairos {
		grid-template-rows: 1fr auto auto;
	}
}
@media (min-width: 600px) {
	body:where(.page) .main .lay-link-kairos {
		grid-template-areas:
			'. logo . icon .'
			'. ttl . icon .';
		grid-template-columns: 3.5rem max-content 1fr auto 3.5rem;
	}
}
body:where(.page) .main .pic-kairos {
	z-index: 0;
	grid-column: 1 / -1;
	grid-row: 1 / -1;
}
@media (min-width: 600px) {
	body:where(.page) .main .pic-kairos {
		width: 100%;
		/*height: calc(44rem * .625); */
	}
}
body:where(.page) .main .pic-kairos img {
	transition: 0.5s ease-in-out;
	/*@media (--md) { */
	/*  object-fit: cover; */
	/*  width: 100%; */
	/*  height: 100%; */
	/*} */
}
body:where(.page) .main .logo-link-kairos {
	z-index: 1;
	align-self: end;
	grid-area: logo;
}
@media (max-width: 599.98px) {
	body:where(.page) .main .logo-link-kairos {
		margin-bottom: 1.5em;
	}
}
@media (min-width: 600px) {
	body:where(.page) .main .logo-link-kairos {
		margin-top: 2.8em;
	}
}
body:where(.page) .main .img-logo-kairos {
	width: calc(29.495rem * 0.625);
}
@media (max-width: 599.98px) {
	body:where(.page) .main .img-logo-kairos {
		width: calc(17.588rem * 0.625);
	}
}
body:where(.page) .main .ttl-link-kairos {
	z-index: 1;
	display: grid;
	place-items: center;
	grid-area: ttl;
}
@media (max-width: 599.98px) {
	body:where(.page) .main .ttl-link-kairos {
		margin-bottom: 1em;
	}
}
@media (min-width: 600px) {
	body:where(.page) .main .ttl-link-kairos {
		margin-top: 3em;
		align-self: start;
	}
}
body:where(.page) .main .ttl-link-kairos-top {
	font-size: clamp(0.813rem, 0.528rem + 1.21vw, 1.438rem);
	letter-spacing: calc(50em / 1000);
}
body:where(.page) .main .ttl-link-kairos-bottom {
	font-size: clamp(1.188rem, 0.79rem + 1.7vw, 2.063rem);
	letter-spacing: calc(50em / 1000);
}
body:where(.page) .main .icon-link-kairos {
	font-size: clamp(0.688rem, 0.432rem + 1.09vw, 1.25rem);
	z-index: 1;
	grid-area: icon;
}
@media (max-width: 599.98px) {
	body:where(.page) .main .icon-link-kairos {
		color: var(--black);
		background-color: var(--white);
		line-height: 1;
		padding: 1.4em 3em;
		border-radius: 100vw;
		margin-bottom: 3.8em;
	}
}
@media (min-width: 600px) {
	body:where(.page) .main .icon-link-kairos {
		margin-top: 0.8em;
		display: grid;
		place-items: center;
	}
	body:where(.page) .main .icon-link-kairos::after {
		margin-top: 0.8em;
		content: '';
		width: 6.2rem;
		aspect-ratio: 1;
		border: 2px solid;
		border-radius: 50%;
		background-position: 52% 50%;
		background-repeat: no-repeat;
		background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16.58 30.677' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(-1662.7 -3172.1)' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cline transform='translate(1663.7 3202) rotate(-45)' x2='21.145'/%3E%3Cline transform='translate(1663.4 3172.8) rotate(-45)' y2='21.145'/%3E%3C/g%3E%3C/svg%3E");
		background-size: calc(1.658rem * 0.625) calc(3.068rem * 0.625);
	}
}
body:where(.page) .main .brand-gallery {
	margin: 4em 0 0;
	padding-left: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.2rem;
}
/*overflow-x: clip; */
@media (max-width: 599.98px) {
	body:where(.page) .main .brand-gallery {
		/*margin-left: calc(-1rem + .1rem); */
		/*margin-right:calc(-1rem + .1rem); */
	}
}
body:where(.page) .main .brand-item {
	background-color: #ddd;
}
body:where(.page) .main .fig-brand {
	color: var(--white);
	position: relative;
	display: grid;
	place-content: center;
	place-items: center;
	overflow: clip;
}
body:where(.page) .main .fig-brand img {
	transition: 0.5s ease-in-out;
}
body:where(.page) .main .fig-brand:hover img,
body:where(.page) .main .fig-brand:focus img {
	transform: scale(1.1);
	filter: brightness(0.7);
}
body:where(.page) .main .brand-name {
	z-index: 1;
	font-family: var(--font-latin);
	font-size: clamp(1.625rem, 0.943rem + 2.91vw, 3.125rem);
	letter-spacing: calc(200em / 1000);
	text-indent: calc(200em / 1000);
	position: absolute;
	text-align: center;
	line-height: 1.3;
	text-wrap: balance;
}
body:where(.home) {
	background-color: var(--white);
}
@media (max-width: 599.98px) {
	body:where(.home) .main .wrapper {
		padding-inline: 0;
	}
}
/* */
body:where(.home) .main-visual {
	position: relative;
	color: var(--white);
}
body:where(.home) .arrow-main-visual {
	position: absolute;
	bottom: 3em;
	left: 3em;
	z-index: 99;
	writing-mode: vertical-rl;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 11.784 100.86' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath transform='translate(8087.7 -973.04)' d='m-8087.2 973.04v99.081l10.857-17.777' fill='none' stroke='%23fff' stroke-linejoin='bevel'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	width: calc(1.1784rem * 0.625);
	height: calc(10.086rem * 0.625);
	animation: scrollarrow 2s ease-in-out 1s infinite;
}
@media (max-width: 599.98px) {
	body:where(.home) .arrow-main-visual {
		background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 6.662 53.41' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath transform='translate(8087.7 -1019)' d='m-8087.2 1019v53.15s3.021-4.98 5.735-9.424' fill='none' stroke='%23fff' stroke-linejoin='bevel'/%3E%3C/svg%3E");
		bottom: 2em;
		left: 2em;
		width: calc(0.6662rem * 0.625);
		height: calc(5.341rem * 0.625);
	}
}
body:where(.home) .arrow-main-visual span {
	font-size: 0;
}
@keyframes scrollarrow {
	0% {
		clip-path: inset(0 0 100% 0);
	}
	25% {
		clip-path: inset(0 0 0 0);
	}
	75% {
		clip-path: inset(0 0 0 0);
	}
	to {
		clip-path: inset(100% 0 0 0);
	}
}
body:where(.home) .swiper {
	width: 100%;
	height: 100svh;
	/*.wrapper { */
	/*  --padding-inline: 0; */
	/*} */
}
body:where(.home) .swiper-slide {
	background-color: var(--black);
	color: var(--white);
	position: relative;
}
@media (min-width: 1024px) {
	body:where(.home) .swiper-slide .wrapper {
		--padding-inline: 3rem;
		/*max-width: calc( (164rem + var(--padding-inline)) * .625); */
		padding-top: 3.6em;
	}
}
@media (min-width: 1280px) {
	body:where(.home) .swiper-slide .wrapper {
		--padding-inline: 7rem;
	}
}
@media (min-width: 1441px) {
	body:where(.home) .swiper-slide .wrapper {
		--padding-inline: 5rem;
		padding-top: 3.2em;
	}
}
body:where(.home) .pic-main-visual {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
body:where(.home) .pic-main-visual img {
	transform: translateY(0) scale(1.08);
	object-fit: cover;
	width: 100%;
	height: 100%;
}
@media (max-width: 599.98px) {
	body:where(.home) .pic-main-visual img {
		transform: translateY(0) scale(1.06);
	}
}
body:where(.home) .swiper-slide-active img {
	animation: movefadeimage 6s ease-in-out;
}
@keyframes movefadeimage {
	from {
		transform: translateY(1.5em) scale(1.06);
	}
	to {
		transform: translateY(0) scale(1.08);
	}
}
@media (max-width: 599.98px) {
	@keyframes movefadeimage {
		from {
			transform: translateY(0) scale(1);
		}
		to {
			transform: translateY(0) scale(1.06);
		}
	}
}
@media (min-width: 1024px) {
	body:where(.home) .slide2 .lay-slider {
		grid-template-columns: max-content 1fr;
	}
}
body:where(.home) .slide2 .lay-slider .inner {
	place-content: end;
	padding-bottom: 6em;
}
@media (min-width: 1024px) {
	body:where(.home) .slide2 .lay-slider .inner {
		place-content: center;
	}
}
body:where(.home) .lay-slider {
	display: grid;
	place-items: center;
	place-content: center;
}
body:where(.home) .lay-slider .inner {
	display: grid;
	place-items: center;
	place-content: center;
	height: 100svh;
}
body:where(.home) .txt-slide1-01 {
	font-family: var(--font-latin);
	font-size: clamp(2rem, 0.92rem + 4.61vw, 4.375rem);
	letter-spacing: calc(200em / 1000);
	text-indent: calc(200em / 1000);
	line-height: 1.3;
	text-align: center;
}
body:where(.home) .txt-slide1-02 {
	font-size: clamp(1.063rem, 0.58rem + 2.06vw, 2.125rem);
	letter-spacing: calc(150em / 1000);
	text-indent: calc(150em / 1000);
	text-align: center;
	margin-top: 1em;
}
@media (min-width: 1024px) {
	body:where(.home) .txt-slide1-02 {
		margin-top: 0.5em;
	}
}
body:where(.home) .img-logo-main-visual {
	width: calc(17.588rem * 0.625);
}
@media (min-width: 1280px) {
	body:where(.home) .img-logo-main-visual {
		width: calc(28.94rem * 0.625);
	}
}
@media (min-width: 1441px) {
	body:where(.home) .img-logo-main-visual {
		margin-top: 9.2em;
		width: clamp(15.313rem, 6.125rem + 24.5vw, 24.5rem);
	}
}
body:where(.home) .txt-slide2-01 {
	font-size: clamp(0.813rem, 0.528rem + 1.21vw, 1.438rem);
	letter-spacing: calc(50em / 1000);
	margin-top: 1.5em;
}
@media (min-width: 1280px) {
	body:where(.home) .txt-slide2-01 {
		/*1024px - 1440px */
		margin-top: 3em;
		/*17px */
		font-size: calc(1.7rem * 0.625);
	}
}
@media (min-width: 1441px) {
	body:where(.home) .txt-slide2-01 {
		margin-top: 4em;
		/*23px */
		font-size: calc(2.3rem * 0.625);
	}
}
body:where(.home) .txt-slide2-02 {
	font-size: clamp(1.188rem, 0.79rem + 1.7vw, 2.063rem);
	letter-spacing: calc(50em / 1000);
	margin-top: 0.2em;
}
@media (min-width: 1280px) {
	body:where(.home) .txt-slide2-02 {
		/*1024px - 1440px */
		margin-top: 0;
		/*25px */
		font-size: calc(2.5rem * 0.625);
	}
}
@media (min-width: 1441px) {
	body:where(.home) .txt-slide2-02 {
		/*33px */
		font-size: calc(3.3rem * 0.625);
	}
}
body:where(.home) .btn-main-visual {
	color: var(--black);
	margin-top: 1em;
	padding-block: 1.2em;
	width: calc(12.2rem * 0.625);
	/*11px - 15px */
	font-size: calc(1.1rem * 0.625);
}
@media (min-width: 1280px) {
	body:where(.home) .btn-main-visual {
		font-size: calc(1.5rem * 0.625);
		margin-top: 1.8em;
		width: calc((26rem * 0.625) * 0.85);
	}
}
@media (min-width: 1441px) {
	body:where(.home) .btn-main-visual {
		font-size: calc(2rem * 0.625);
		margin-top: 2em;
		width: calc(28rem * 0.625);
	}
}
body:where(.home) .btn-main-visual:hover,
body:where(.home) .btn-main-visual:focus {
	color: var(--white);
	background-color: var(--black);
}
/* */
body:where(.home) .sec-about {
	background-color: #f3f2ef;
}
body:where(.home) .sec-about .wrapper {
	padding-block: 11em;
}
body:where(.home) .sec-about .section-title {
	color: var(--color-brand);
	font-size: clamp(1.125rem, 0.784rem + 1.45vw, 1.875rem);
}
body:where(.home) .sec-about .button {
	margin-top: 3em;
}
body:where(.home) .btn-learn-more {
	--btn-text-color: var(--color-brand);
	background-color: transparent;
	border: 1px solid;
}
body:where(.home) .ttl-about {
	color: var(--color-brand);
	font-size: clamp(2.375rem, 1.608rem + 3.27vw, 4.063rem);
	text-align: center;
	line-height: 1.7;
	margin-top: 0.9em;
	padding-left: 0.5em;
	white-space: nowrap;
}
body:where(.home) .txt-about {
	line-height: 2.5;
	margin-top: 2em;
	padding-inline: 2em;
}
@media (min-width: 1024px) {
	body:where(.home) .txt-about {
		text-align: center;
	}
}
/* */
body:where(.home) .sec-full-width-navigation {
	background-color: #f3f2ef;
}
body:where(.home) .lay-full-width-navigation {
	display: grid;
}
@media (max-width: 599.98px) {
	body:where(.home) .lay-full-width-navigation {
		grid-template-rows: repeat(2, 1fr);
	}
}
@media (min-width: 600px) {
	body:where(.home) .lay-full-width-navigation {
		grid-template-columns: repeat(2, 1fr);
	}
}
body:where(.home) .link-full-width-navigation {
	color: var(--white);
	display: grid;
	place-items: center;
	height: calc(23.5rem * 0.625);
	position: relative;
	overflow: clip;
}
@media (min-width: 600px) {
	body:where(.home) .link-full-width-navigation {
		height: calc(60rem * 0.625);
	}
}
body:where(.home) .link-full-width-navigation:hover .pic-full-width-navigation,
body:where(.home) .link-full-width-navigation:focus .pic-full-width-navigation {
	transform: scale(1.05);
	filter: brightness(0.7);
}
body:where(.home) .pic-full-width-navigation {
	z-index: 0;
	width: 100%;
	height: 100%;
	transition: 0.5s ease-in-out;
}
body:where(.home) .pic-full-width-navigation img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
body:where(.home) .txt-full-width-navigation {
	font-family: var(--font-latin);
	font-size: clamp(1.625rem, 0.943rem + 2.91vw, 3.125rem);
	letter-spacing: calc(200em / 1000);
	text-indent: calc(200em / 1000);
	z-index: 1;
	position: absolute;
}
/* */
body:where(.home) .sec-brand {
	background-color: #f3f2ef;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-brand {
		overflow-x: clip;
	}
}
body:where(.home) .sec-brand .wrapper {
	max-width: calc(162rem * 0.625 + 2rem);
	padding-block: 7em 7em;
}
body:where(.home) .sec-brand .txt-brand {
	margin-top: 3.3em;
	text-align: center;
	line-height: 2.3;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-brand .txt-brand {
		text-align: left;
		padding-inline: var(--padding-inline);
	}
}
/* */
body:where(.home) .sec-business-brand .wrapper {
	padding-block-end: 0;
}
@media (min-width: 600px) {
	body:where(.home) .sec-business-brand .wrapper {
		padding-block: 10em 1em;
	}
}
@media (min-width: 600px) {
	body:where(.home) .sec-handle-brand .wrapper {
		padding-block-end: 11em;
	}
}
body:where(.home) .link-kairos {
	margin-top: 4em;
}
/* */
body:where(.home) .sec-instagram {
	background-color: rgba(122, 92, 63, 0.8);
	color: var(--white);
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-instagram {
		overflow-x: clip;
	}
}
body:where(.home) .sec-instagram .wrapper {
	max-width: calc(120rem * 0.625 + 2rem);
	padding-block: 11em 8em;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-instagram .wrapper {
		padding-block: 10em 7em;
	}
}
body:where(.home) .sec-instagram .section-title {
	color: currentColor;
	position: relative;
}
body:where(.home) .sec-instagram .section-title::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: calc(4.123rem * 0.625);
	height: calc(4.123rem * 0.625);
	transform: translate(-50%, -1.1em);
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 41.233 41.233' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff'%3E%3Cpath transform='translate(.001)' d='M20.616,3.715c5.5,0,6.157.021,8.331.12a11.406,11.406,0,0,1,3.828.71,6.388,6.388,0,0,1,2.371,1.542,6.388,6.388,0,0,1,1.542,2.371,11.407,11.407,0,0,1,.71,3.828c.1,2.174.12,2.826.12,8.331s-.021,6.157-.12,8.331a11.407,11.407,0,0,1-.71,3.828,6.828,6.828,0,0,1-3.913,3.913,11.406,11.406,0,0,1-3.828.71c-2.174.1-2.826.12-8.331.12s-6.157-.021-8.331-.12a11.407,11.407,0,0,1-3.828-.71,6.389,6.389,0,0,1-2.371-1.542,6.389,6.389,0,0,1-1.542-2.371,11.41,11.41,0,0,1-.71-3.828c-.1-2.174-.12-2.826-.12-8.331s.021-6.157.12-8.331a11.41,11.41,0,0,1,.71-3.828A6.389,6.389,0,0,1,6.086,6.087,6.389,6.389,0,0,1,8.457,4.545a11.407,11.407,0,0,1,3.828-.71c2.174-.1,2.826-.12,8.331-.12m0-3.715c-5.6,0-6.3.024-8.5.124a15.134,15.134,0,0,0-5,.958A10.106,10.106,0,0,0,3.459,3.46,10.106,10.106,0,0,0,1.081,7.112a15.133,15.133,0,0,0-.958,5c-.1,2.2-.124,2.9-.124,8.5s.024,6.3.124,8.5a15.132,15.132,0,0,0,.958,5,10.106,10.106,0,0,0,2.378,3.652,10.106,10.106,0,0,0,3.652,2.378,15.134,15.134,0,0,0,5,.958c2.2.1,2.9.124,8.5.124s6.3-.024,8.5-.124a15.134,15.134,0,0,0,5-.958,10.542,10.542,0,0,0,6.03-6.03,15.132,15.132,0,0,0,.958-5c.1-2.2.124-2.9.124-8.5s-.024-6.3-.124-8.5a15.132,15.132,0,0,0-.958-5A10.108,10.108,0,0,0,37.772,3.46a10.107,10.107,0,0,0-3.652-2.378,15.134,15.134,0,0,0-5-.958c-2.2-.1-2.9-.124-8.5-.124'/%3E%3Cpath transform='translate(-112.52 -112.53)' d='m133.14 122.56a10.587 10.587 0 1 0 10.587 10.587 10.587 10.587 0 0 0-10.587-10.587m0 17.459a6.872 6.872 0 1 1 6.872-6.872 6.872 6.872 0 0 1-6.872 6.872'/%3E%3Cpath transform='translate(-327.02 -80.077)' d='m361.11 89.689a2.474 2.474 0 1 1-2.474-2.474 2.474 2.474 0 0 1 2.474 2.474'/%3E%3C/g%3E%3C/svg%3E");
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: contain;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-instagram .section-title::before {
		width: calc(2.4rem * 0.625);
		height: calc(2.4rem * 0.625);
	}
}
body:where(.home) .instagram-link {
	font-size: clamp(0.875rem, 0.705rem + 0.73vw, 1.25rem);
	text-align: center;
	margin-top: 1em;
}
body:where(.home) .instagram-link a {
	display: inline-block;
	position: relative;
	padding-bottom: 0.2em;
}
body:where(.home) .instagram-link a::after {
	content: '';
	width: 100%;
	height: 1px;
	background-color: currentColor;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: transform 0.5s;
	transform: scaleX(0);
	transform-origin: right;
}
@media (max-width: 599.98px) {
	body:where(.home) .instagram-link a {
		padding-bottom: 0.4em;
	}
}
body:where(.home) .instagram-link a:hover::after,
body:where(.home) .instagram-link a:focus::after {
	transform: scaleX(1);
	transform-origin: left;
}
body:where(.home) .instagram-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	margin: 5em 0 0;
	padding-left: 0;
}
@media (max-width: 599.98px) {
	body:where(.home) .instagram-gallery {
		gap: 0.3rem;
		margin-top: 4em;
	}
}
/* */
body:where(.home) .sec-news .wrapper {
	max-width: calc(102rem * 0.625 + 2rem);
	padding-block: 8em;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-news .wrapper {
		padding-block: 7em;
		padding-inline: var(--padding-inline);
	}
}
body:where(.home) .sec-news .section-title + * {
	margin-top: 2em;
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-news .section-title + * {
		margin-top: 4em;
	}
}
body:where(.home) .sec-news .button {
	margin-top: 3.5em;
}
body:where(.home) .sec-news .btn-primary {
	padding-block: 1.3em;
	width: calc(20rem * 0.625);
}
@media (max-width: 599.98px) {
	body:where(.home) .sec-news .btn-primary {
		font-size: calc(1.1rem * 0.625);
		width: calc(13rem * 0.625);
	}
}
.news-list {
	margin: 0;
	padding-left: 0;
}
.news-list li {
	border-top: 1px solid rgb(216, 219, 223);
}
.news-list li:last-child {
	border-bottom: 1px solid rgb(216, 219, 223);
}
.news-item {
	font-size: clamp(0.875rem, 0.818rem + 0.24vw, 1rem);
	padding: 3em;
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 4em;
}
@media (max-width: 599.98px) {
	.news-item {
		display: block;
		padding: 2.8em 2em;
	}
}
@media (max-width: 320px) {
	.news-item {
		padding: 2em 0em 2em 0.5em;
	}
}
.entry-meta {
	color: var(--color-brand);
}
@media (max-width: 599.98px) {
	.post-title {
		margin-top: 0.5em;
	}
}
.button {
	text-align: center;
}
body:where(.about) .page-heading {
	grid-template-columns: 1fr minmax(300px, calc(142rem * 0.625 + 6em)) 1fr;
	background-image: url('../img/about/img-page-heading-sm.webp');
	background-position: 50% 100%;
	place-items: normal;
}
@media (max-width: 599.98px) {
	body:where(.about) .page-heading {
		height: calc(140.6rem * 0.625);
		padding-top: 0;
	}
}
@media (max-width: 320px) {
	body:where(.about) .page-heading {
		height: calc(120rem * 0.625);
	}
}
@media (min-width: 600px) {
	body:where(.about) .page-heading {
		height: calc(150rem * 0.625);
		background-position: 50% 100%;
		padding-top: 5em;
	}
}
@media (min-width: 1024px) {
	body:where(.about) .page-heading {
		background-image: url('../img/about/img-page-heading.webp');
		background-position: 50% 50%;
		min-height: calc(160rem * 0.625);
		place-items: start legacy;
		place-content: start normal;
		padding-top: 13em;
	}
}
@media (min-width: 1280px) {
	body:where(.about) .page-heading {
		min-height: calc(180rem * 0.625);
		padding-top: 15em;
	}
}
body:where(.about) .lay-page-heading {
	padding-inline: 3em;
	grid-column: 2 / 3;
	padding-top: calc(var(--header-height) + 4em);
}
@media (min-width: 1024px) {
	body:where(.about) .lay-page-heading {
		padding-top: 0;
	}
}
body:where(.about) .page-title {
	text-align: left;
	text-indent: 0;
	font-size: clamp(1.125rem, 0.784rem + 1.45vw, 1.875rem);
	letter-spacing: calc(210em / 1000);
}
body:where(.about) .page-sub-title-en {
	font-size: clamp(2.938rem, 1.432rem + 6.42vw, 6.25rem);
	line-height: 1.5;
	letter-spacing: calc(135em / 1000);
	margin-top: 0.8em;
	white-space: nowrap;
}
@media (max-width: 320px) {
	body:where(.about) .page-sub-title-en {
		font-size: clamp(2.688rem, 1.576rem + 5.56vw, 2.875rem);
	}
}
@media (min-width: 1024px) {
	body:where(.about) .page-sub-title-en {
		margin-top: 0.4em;
	}
}
body:where(.about) .page-sub-title-ja {
	font-size: clamp(1.313rem, 0.347rem + 4.12vw, 3.438rem);
	font-weight: 300;
	line-height: 1.8;
	margin-top: 1.6em;
	white-space: nowrap;
}
@media (max-width: 320px) {
	body:where(.about) .page-sub-title-ja {
		font-size: clamp(1.125rem, 0.384rem + 3.7vw, 1.25rem);
	}
}
@media (min-width: 1024px) {
	body:where(.about) .page-sub-title-ja {
		margin-top: 1em;
	}
}
body:where(.about) .page-sub-title-ja + * {
	margin-top: 3em;
}
body:where(.about) .txt-page-heading {
	line-height: 1.8;
}
@media (min-width: 1024px) {
	body:where(.about) .txt-page-heading {
		max-width: 31.5em;
		line-height: 2.6;
	}
}
body:where(.about) .txt-page-heading + * {
	margin-top: 1.5em;
	@media (min-width: 1024px) {
		margin-top: 2.8em;
	}
}
body:where(.about) .main .wrapper {
	margin-block: 3em;
}
@media (max-width: 599.98px) {
	body:where(.about) .main .wrapper {
		--padding-inline: 0;
		margin-inline: 1.2em;
	}
}
@media (min-width: 600px) {
	body:where(.about) .main .wrapper {
		margin-block: 8.5em;
	}
}
body:where(.about) .ttl-about {
	color: var(--color-brand);
	font-family: var(--default-font-family);
	font-weight: 300;
	font-size: clamp(1.938rem, 0.972rem + 4.12vw, 4.063rem);
	line-height: 1.7;
	text-align: center;
}
body:where(.about) .txt-about {
	line-height: 2.2;
	margin-top: 2em;
}
@media (min-width: 1024px) {
	body:where(.about) .txt-about {
		margin-top: 2.2em;
		text-align: center;
		line-height: 2.7;
	}
}
body:where(.about) .lay-figure-about {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	max-width: calc(53.952rem * 0.625);
	margin-inline: auto;
	margin-top: 4em;
}
body:where(.about) .fig-about {
	grid-column: 1 / -1;
	grid-row: 1 / -1;
}
@media (max-width: 599.98px) {
	body:where(.about) .fig-about {
		padding-inline: 1em;
	}
}
body:where(.about) .txt-figure-about {
	align-self: center;
	justify-self: center;
	width: 2em;
	line-height: 1.4;
	color: var(--white);
	font-size: clamp(0.875rem, 0.591rem + 1.21vw, 1.5rem);
}
@media (max-width: 320px) {
	body:where(.about) .txt-figure-about {
		font-size: clamp(0.813rem, 0.442rem + 1.85vw, 0.875rem);
	}
}
body:where(.about) .txt-figure-about.txt1 {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	transform: translate(calc(3.3rem * 0.625), calc(0.2rem * 0.625));
}
@media (max-width: 599.98px) {
	body:where(.about) .txt-figure-about.txt1 {
		transform: translate(calc(1.5rem * 0.625), calc(0.5rem * 0.625));
	}
}
body:where(.about) .txt-figure-about.txt2 {
	grid-column: 2 / -1;
	grid-row: 1 / 2;
	transform: translate(calc(0.5rem * 0.625), calc(4rem * 0.625));
}
@media (max-width: 599.98px) {
	body:where(.about) .txt-figure-about.txt2 {
		transform: translate(calc(0.5rem * 0.625), calc(2rem * 0.625));
	}
}
body:where(.about) .txt-figure-about.txt3 {
	grid-column: 2 / -1;
	grid-row: 2 / -1;
	transform: translate(calc(-3.3rem * 0.625), calc(0.5rem * 0.625));
}
@media (max-width: 599.98px) {
	body:where(.about) .txt-figure-about.txt3 {
		transform: translate(calc(-1.3rem * 0.625), calc(0.1rem * 0.625));
	}
}
body:where(.about) .txt-figure-about.txt4 {
	grid-column: 1 / 2;
	grid-row: 2 / -1;
	transform: translate(calc(-0.2rem * 0.625), calc(-2.8rem * 0.625));
}
@media (max-width: 599.98px) {
	body:where(.about) .txt-figure-about.txt4 {
		transform: translate(calc(-0.1rem * 0.625), calc(-2rem * 0.625));
	}
}
body:where(.about) .list-about {
	padding-left: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1em;
	margin-top: 5em;
}
@media (max-width: 599.98px) {
	body:where(.about) .list-about {
		margin-top: 4.5em;
	}
}
@media (min-width: 600px) {
	body:where(.about) .list-about {
		grid-template-columns: 1fr 1fr;
	}
}
body:where(.about) .list-about {
	counter-reset: counter;
}
body:where(.about) .item-about {
	background-color: var(--white);
	display: grid;
	place-items: center;
	padding: 4em 2em;
	height: 100%;
}
@media (max-width: 599.98px) {
	body:where(.about) .item-about {
		padding: 4.5em 3em 5em;
	}
}
body:where(.about) .list-item-about {
	counter-increment: counter;
}
@media (min-width: 1024px) {
	body:where(.about) .list-item-about {
		max-width: calc(36.5rem * 0.625);
	}
}
body:where(.about) .list-item-about dt {
	font-size: clamp(1.75rem, 1.409rem + 1.45vw, 2.5rem);
	line-height: 1.5;
	color: var(--color-brand);
}
body:where(.about) .list-item-about dt::before {
	content: '0' counter(counter);
	display: block;
	font-family: var(--font-latin);
	font-size: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem);
	line-height: 1;
	margin-bottom: 1em;
}
body:where(.about) .list-item-about dd {
	margin-top: 1.6em;
	line-height: 2.4;
}
@media (min-width: 600px) {
	body:where(.about) .list-item-about dd {
		margin-top: 1.7em;
		line-height: 2;
	}
}
body:where(.service) .page-heading {
	grid-template-columns: 1fr minmax(300px, calc(142rem * 0.625 + 6em)) 1fr;
	background-image: url('../img/service/img-page-heading-sm.webp');
	background-position: 50% 100%;
	place-items: normal;
}
@media (max-width: 599.98px) {
	body:where(.service) .page-heading {
		height: calc(140.6rem * 0.625);
		padding-top: 0;
	}
}
@media (max-width: 320px) {
	body:where(.service) .page-heading {
		height: calc(120rem * 0.625);
	}
}
@media (min-width: 600px) {
	body:where(.service) .page-heading {
		height: calc(150rem * 0.625);
		background-position: 50% 100%;
		padding-top: 5em;
	}
}
@media (min-width: 1024px) {
	body:where(.service) .page-heading {
		background-image: url('../img/service/img-page-heading.webp');
		background-position: 50% 50%;
		min-height: calc(160rem * 0.625);
		place-items: start legacy;
		place-content: start normal;
		padding-top: 13em;
	}
}
@media (min-width: 1280px) {
	body:where(.service) .page-heading {
		min-height: calc(180rem * 0.625);
		padding-top: 15em;
	}
}
body:where(.service) .lay-page-heading {
	padding-inline: 3em;
	grid-column: 2 / 3;
	padding-top: calc(var(--header-height) + 4em);
}
@media (min-width: 1024px) {
	body:where(.service) .lay-page-heading {
		padding-top: 0;
	}
}
body:where(.service) .page-title {
	text-align: left;
	text-indent: 0;
	font-size: clamp(1.125rem, 0.784rem + 1.45vw, 1.875rem);
	letter-spacing: calc(210em / 1000);
}
body:where(.service) .page-sub-title-en {
	font-size: clamp(2.938rem, 1.432rem + 6.42vw, 6.25rem);
	line-height: 1.5;
	letter-spacing: calc(135em / 1000);
	margin-top: 0.8em;
	white-space: nowrap;
}
@media (max-width: 320px) {
	body:where(.service) .page-sub-title-en {
		font-size: clamp(2.688rem, 1.576rem + 5.56vw, 2.875rem);
	}
}
@media (min-width: 1024px) {
	body:where(.service) .page-sub-title-en {
		margin-top: 0.4em;
	}
}
body:where(.service) .page-sub-title-ja {
	font-size: clamp(1.313rem, 0.347rem + 4.12vw, 3.438rem);
	font-weight: 300;
	line-height: 1.8;
	margin-top: 1.6em;
	white-space: nowrap;
}
@media (max-width: 320px) {
	body:where(.service) .page-sub-title-ja {
		font-size: clamp(1.125rem, 0.384rem + 3.7vw, 1.25rem);
	}
}
@media (min-width: 1024px) {
	body:where(.service) .page-sub-title-ja {
		margin-top: 1em;
	}
}
body:where(.service) .page-sub-title-ja + * {
	margin-top: 3em;
}
body:where(.service) .txt-page-heading {
	line-height: 1.8;
}
@media (min-width: 1024px) {
	body:where(.service) .txt-page-heading {
		max-width: 31.5em;
		line-height: 2.6;
	}
}
body:where(.service) .txt-page-heading + * {
	margin-top: 1.5em;
	@media (min-width: 1024px) {
		margin-top: 2.8em;
	}
}
body:where(.service) .main .wrapper {
	margin-block: 3em;
}
@media (max-width: 599.98px) {
	body:where(.service) .main .wrapper {
		--padding-inline: 0;
	}
}
@media (min-width: 600px) {
	body:where(.service) .main .wrapper {
		margin-block: 7em 9.5em;
	}
}
body:where(.service) .main .link-kairos {
	margin-top: 5em;
}
@media (min-width: 1024px) {
	body:where(.service) .main .brand-gallery {
		grid-template-columns: 1fr 1fr 1fr;
	}
}
body:where(.service) .main .brand-name {
	font-size: clamp(1.625rem, 1.511rem + 0.48vw, 1.875rem);
}
body:where(.service) .sec-service + * {
	margin-top: 11em;
}
body:where(.service) .sec-business-brand {
}
body:where(.service) .sec-handle-brand {
}
body:where(.service) .ttl-service {
	color: var(--color-brand);
	font-family: var(--default-font-family);
	font-weight: 300;
	font-size: clamp(1.938rem, 0.972rem + 4.12vw, 4.063rem);
	line-height: 1.7;
	text-align: center;
	margin-top: 0.7em;
}
body:where(.service) .ttl-service .kakko1 {
	margin-left: -0.5em;
}
body:where(.service) .ttl-service .kakko2 {
	letter-spacing: -0.5em;
}
body:where(.service) .txt-service {
	line-height: 2.2;
	margin-top: 2em;
	margin-inline: 4em;
}
@media (min-width: 600px) {
	body:where(.service) .txt-service {
		margin-inline: 0;
		text-align: center;
	}
}
@media (min-width: 1024px) {
	body:where(.service) .txt-service {
		margin-top: 2.2em;
		line-height: 2.7;
	}
}
body:where(.service) .list-business-brand {
	padding-left: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1em;
	margin-top: 5em;
}
@media (max-width: 599.98px) {
	body:where(.service) .list-business-brand {
		margin-top: 4.5em;
		padding-inline: 1em;
	}
}
@media (min-width: 1024px) {
	body:where(.service) .list-business-brand {
		grid-template-columns: 1fr 1fr 1fr;
	}
}
body:where(.service) .list-business-brand {
	counter-reset: counter;
}
body:where(.service) .item-business-brand {
	background-color: var(--white);
	display: grid;
	place-items: start center;
	padding: 4.5em 3em 5em;
	height: 100%;
}
@media (min-width: 1024px) {
	body:where(.service) .item-business-brand {
		padding: 4em 2em;
	}
}
body:where(.service) .list-item-business-brand {
	counter-increment: counter;
}
@media (min-width: 1024px) {
	body:where(.service) .list-item-business-brand {
		max-width: calc(39rem * 0.625);
	}
}
body:where(.service) .list-item-business-brand dt {
	font-size: clamp(1.75rem, 1.409rem + 1.45vw, 2.5rem);
	line-height: 1.5;
	color: var(--color-brand);
	letter-spacing: calc(-30em / 1000);
}
body:where(.service) .list-item-business-brand dt::before {
	content: '0' counter(counter);
	display: block;
	font-family: var(--font-latin);
	font-size: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem);
	line-height: 1;
	margin-bottom: 1em;
}
body:where(.service) .list-item-business-brand dd {
	margin-top: 1.6em;
	line-height: 2.4;
}
@media (min-width: 600px) {
	body:where(.service) .list-item-business-brand dd {
		margin-top: 1.7em;
		line-height: 2;
	}
}
body:where(.company) .page-heading {
	background-image: url('../img/company/img-page-heading.webp');
}
@media (max-width: 599.98px) {
	body:where(.company) .page-heading {
		background-image: url('../img/company/img-page-heading-sm.webp');
	}
}
body:where(.company) .main {
	color: var(--color-brand);
}
body:where(.company) .main .wrapper {
	max-width: 94rem;
	margin-block: 3em;
}
@media (max-width: 599.98px) {
	body:where(.company) .main .wrapper {
		margin-inline: 1.2em;
	}
}
@media (min-width: 600px) {
	body:where(.company) .main .wrapper {
		margin-block: 7.5em;
	}
}
body:where(.company) .ttl-company {
	display: grid;
	grid-template-columns: 1fr;
	line-height: 1.3;
	font-family: var(--default-font-family);
	font-weight: 300;
}
body:where(.company) .ttl-company + * {
	margin-top: 2.5em;
}
body:where(.company) .ttl-company .en {
	font-size: clamp(3.063rem, 1.813rem + 5.33vw, 5.813rem);
}
body:where(.company) .ttl-company .ja {
	font-size: clamp(2.563rem, 1.511rem + 4.48vw, 4.875rem);
}
body:where(.company) .txt-company {
	margin-top: 1.2em;
	line-height: 1.8;
}
@media (min-width: 600px) {
	body:where(.company) .txt-company {
		line-height: 2.6;
	}
}
body:where(.company) .lay-company {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3em;
}
@media (min-width: 1024px) {
	body:where(.company) .lay-company {
		grid-template-columns: clamp(18.75rem, -20.523rem + 61.36vw, 25.5rem) 1fr;
		gap: clamp(3.125rem, -51.42rem + 85.23vw, 12.5rem);
	}
}
body:where(.company) .list-company-info {
	font-size: clamp(0.75rem, 0.523rem + 0.97vw, 1.25rem);
}
body:where(.company) .list-company-info .row {
	padding-block: 1.7em;
	display: grid;
	grid-template-columns: 8em 1fr;
	gap: 1em;
}
@media (min-width: 600px) {
	body:where(.company) .list-company-info .row {
		padding-block: 1.3em;
		gap: 2em;
	}
}
body:where(.company) .list-company-info .row + .row {
	border-top: 1px solid rgba(102, 72, 51, 0.3);
}
body:where(.privacy-policy) .main {
	color: var(--color-brand);
	padding-top: 5em;
}
body:where(.privacy-policy) .main .wrapper {
	max-width: clamp(calc(32rem * 0.625), 90%, calc(142rem * 0.625 + 2em));
	padding-block: 10em;
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .main .wrapper {
		padding-block: 4em;
		padding-inline: 2.2em;
	}
}
body:where(.privacy-policy) .main .heading {
}
body:where(.privacy-policy) .main .page-title {
	font-size: clamp(0.938rem, 0.511rem + 1.82vw, 1.875rem);
	letter-spacing: calc(200em / 1000);
	text-align: left;
}
body:where(.privacy-policy) .main .page-title-ja {
	font-size: clamp(2.5rem, 1.932rem + 2.42vw, 3.75rem);
	line-height: 1.3;
	margin-top: 1.3em;
}
body:where(.privacy-policy) .main .page-title-ja + * {
	margin-top: 2em;
}
body:where(.privacy-policy) .main ul,
body:where(.privacy-policy) .main ol {
	padding-left: 1em;
}
body:where(.privacy-policy) .main ul li::marker,
body:where(.privacy-policy) .main ol li::marker {
	content: '● ';
}
body:where(.privacy-policy) .list-privacy-policy {
	counter-increment: count 1;
	margin-top: 2em;
	padding-block: 2.5em;
	display: grid;
	/*md layout */
	grid-template-columns: 30% 1fr;
	column-gap: 3em;
	line-height: 2.2;
}
@media (min-width: 600px) {
	body:where(.privacy-policy) .list-privacy-policy {
		grid-template-columns: 11em 1fr;
	}
}
@media (min-width: 1024px) {
	body:where(.privacy-policy) .list-privacy-policy {
		grid-template-columns: 18.5em minmax(40%, 39em) 1fr;
		padding-block: 3em;
		margin-top: 7em;
	}
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .list-privacy-policy {
		display: block;
		line-height: 1.8em;
	}
}
body:where(.privacy-policy) .list-privacy-policy + * {
	border-top: 1px solid rgba(102, 72, 51, 0.3);
	margin-top: 0;
}
body:where(.privacy-policy) .list-privacy-policy dt::before {
	content: '0' counter(count);
	display: block;
	font-family: var(--font-latin);
	font-size: calc(3rem * 0.625);
	line-height: 1.1;
	margin-bottom: 0.2em;
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .list-privacy-policy dd {
		margin-top: 1.5em;
	}
}
body:where(.privacy-policy) .list-privacy-policy ul {
	margin-top: 1.5em;
}
body:where(.privacy-policy) .list-address {
	counter-reset: count;
	display: grid;
	grid-template-columns: max-content 1fr;
	margin-top: 1em;
}
body:where(.privacy-policy) .list-address dt {
	margin-top: 0;
}
body:where(.privacy-policy) .list-address dt::before {
	content: none;
}
body:where(.privacy-policy) .list-address dd {
	margin-top: 0;
}
body:where(.privacy-policy) .sec-privacy-policy {
}
body:where(.privacy-policy) .sec-anti-social-forces {
	background-color: var(--white);
}
body:where(.privacy-policy) .list-anti-social-forces {
	background-color: #f3f2ef;
	display: grid;
	grid-template-columns: max-content 1fr;
	align-items: center;
	padding: 1.8em 3em;
	column-gap: 3em;
	margin-top: 8em;
}
@media (min-width: 1280px) {
	body:where(.privacy-policy) .list-anti-social-forces {
		grid-template-columns: max-content 50em 1fr;
	}
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .list-anti-social-forces {
		display: block;
		padding-inline: 2.1em;
	}
}
body:where(.privacy-policy) .list-anti-social-forces dt {
	font-family: var(--font-latin);
	font-size: calc(3rem * 0.625);
	line-height: 1.1;
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .list-anti-social-forces dd {
		margin-top: 1em;
	}
}
body:where(.privacy-policy) .list-anti-social-forces + * {
	margin-top: 1em;
}
@media (max-width: 599.98px) {
	body:where(.privacy-policy) .list-anti-social-forces + * {
		margin-top: 1.5em;
	}
}
body:where(.privacy-policy) .txt-anti-social-forces {
	text-align: right;
}
body:where(.manual) .main .wrapper {
	margin-block: 4em;
	max-width: 85rem;
}
body:where(.manual) .main h2 {
	font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, sans-serif;
	font-weight: 600;
	margin-block: 2em;
}
body:where(.manual) .main h3 {
	font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, sans-serif;
	font-weight: 600;
	margin-block: 2em;
	border-bottom: 1px solid #ddd;
}
body:where(.manual) .main h4 {
	font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, sans-serif;
	font-weight: 600;
	margin-block: 2em 1em;
	color: #333;
}
body:where(.manual) .main p {
	margin-left: 1.25em;
}
body:where(.manual) .main figure {
	margin: 2em 1.25em;
}
body:where(.manual) .main img {
	border: 1px solid #eee;
	filter: drop-shadow(0 0 0.3rem #ddd);
}
body:where(.manual) .main pre {
	background-color: #f8f8f8;
	border: 1px solid #ddd;
	border-radius: 0.3em;
	margin: 1em;
	padding: 1em;
}
body:where(.manual) .main code {
	font-family: 'Courier New', Courier, monospace;
	font-size: 90%;
}
body:where(.manual) .main .small {
	text-align: right;
}
