@charset "UTF-8";
:root {
	--color-brw: #a48b78;
	--color-grey: #707070;
	--color-grey2: rgba(200, 202, 204,0.2);
	--color-wh: #fff;
	--color-bk: #333;
	--font-goc: "游ゴシック", "Yu Gothic", YuGothic, "游ゴシック体", "Lucida Grande", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
	--font-min: "fot-tsukuaoldmin-pr6n", sans-serif;
	--font-forum: "Forum", "Noto Serif JP", serif;
}

.p-concept-mv {
	position: relative;
}
.p-concept-mv h1 {
	font-size: clamp(5.4rem, 3.46rem + 6.0625vw, 15.1rem);
	font-family: var(--font-forum);
	font-weight: normal;
	color: var(--color-wh);
	letter-spacing: 0.1em;
	position: absolute;
	z-index: 2;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
	line-height: 0.6;
	left: 5%;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	.p-concept-mv h1 {
		writing-mode: vertical-lr;
		top: 10%;
		left: 0;
	}
}
.p-concept-area1 {
	color: var(--color-brw);
	background-image: url(../images/concept/bg1.webp);
	background-size: cover;
	padding-block-start: clamp(2rem, -1rem + 9.375vw, 17rem);
	padding-block-end: clamp(11rem, 7.8rem + 10vw, 27rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area1 {
		background-size: 100%;
		background-repeat: no-repeat;
		background-color: var(--color-wh);
	}
}
.p-concept-area1 h2 {
	font-family: var(--font-min);
	text-align: center;
	font-weight: normal;
}
.p-concept-area1 h2:after {
	content: "";
	width: 1px;
	height: 150px;
	background-color: var(--color-brw);
	display: block;
	margin-inline: auto;
	margin-block: clamp(1rem, 0.8rem + 0.625vw, 2rem) clamp(2.5rem, 2rem + 1.5625vw, 5rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area1 h2:after {
		height: 75px;
	}
}
.p-concept-area1 h2 span {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: clamp(1.2rem, 0.96rem + 0.75vw, 2.4rem);
	letter-spacing: 0.07em;
	margin-block-end: clamp(1.2rem, 0.94rem + 0.8125vw, 2.5rem);
}
.p-concept-area1 h2 span:before, .p-concept-area1 h2 span:after {
	content: "";
	width: 76px;
	height: 29px;
	border: 1px solid var(--color-brw);
	display: block;
}
.p-concept-area1 h2 span:before {
	border-right: none;
}
.p-concept-area1 h2 span:after {
	border-left: none;
}
.p-concept-area1 h2 em {
	display: block;
	font-style: normal;
	font-size: clamp(2.7rem, 2.16rem + 1.6875vw, 5.4rem);
	line-height: 1.3;
	letter-spacing: 0.1em;
}
.p-concept-area1 p {
	font-family: var(--font-min);
	text-align: center;
	letter-spacing: 0.1em;
	font-size: clamp(1.2rem, 0.96rem + 0.75vw, 2.4rem);
	line-height: 2;
}
.p-concept-area2 {
	background-image: url(../images/concept/bg2.webp);
	background-size: cover;
	padding-block-end: clamp(7.5rem, 3rem + 14.0625vw, 30rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 {
		background-image: url(../images/concept/bg2-sp.webp);
		padding-block-start: 65px;
		display: flex;
		flex-direction: column;
	}
}
.p-concept-area2 h3 {
	text-align: center;
	color: var(--color-brw);
	font-family: var(--font-min);
	font-weight: normal;
	font-size: clamp(2.4rem, 1.92rem + 1.5vw, 4.8rem);
	letter-spacing: 0.07em;
	order: 4;
}
.p-concept-area2 h3 sup {
	font-size: clamp(1rem, 0.8rem + 0.625vw, 2rem);
	letter-spacing: 0;
}
.p-concept-area2 h4 {
	text-align: center;
	color: var(--color-brw);
	font-family: var(--font-forum);
	font-weight: 400;
	letter-spacing: 0.1em;
	font-size: clamp(3.7rem, 2.32rem + 4.3125vw, 10.6rem);
	order: 8;
}
.p-concept-area2 figure.-pic1 {
	width: 63%;
	margin-inline: auto 0;
	margin-block-end: clamp(7.5rem, 7rem + 1.5625vw, 10rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic1 {
		width: 83%;
		order: 1;
	}
}
.p-concept-area2 figure.-pic2 {
	width: 30%;
	margin-inline-start: 10%;
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic2 {
		width: 66%;
		margin-inline-start: 0;
		margin-block-end: 75px;
		order: 2;
	}
}
.p-concept-area2 figure.-pic3 {
	width: 40%;
	margin-inline: auto 10%;
	margin-block-start: -25%;
	margin-block-end: clamp(9rem, 5.4rem + 11.25vw, 27rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic3 {
		width: 66%;
		margin-inline: auto;
		margin-block-start: 0;
		order: 3;
	}
}
.p-concept-area2 figure.-pic4 {
	width: 55%;
	margin-inline: auto;
	margin-block-start: clamp(8rem, 3rem + 15.625vw, 33rem);
	margin-block-end: clamp(7.5rem, 5.2rem + 7.1875vw, 19rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic4 {
		width: 66%;
		order: 6;
		margin-block-start: 0;
	}
}
.p-concept-area2 figure.-pic5 {
	width: 50%;
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic5 {
		order: 7;
		width: 83%;
		margin-inline: auto 0;
		margin-block-end: 85px;
	}
}
.p-concept-area2 figure.-pic6 {
	width: 37%;
	margin-inline: auto 0;
	margin-block-start: -20%;
	margin-block-end: clamp(8.5rem, 5.2rem + 10.3125vw, 25rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic6 {
		width: 83%;
		order: 5;
		margin-inline: 0;
		margin-block-start: 80px;
	}
}
.p-concept-area2 figure.-pic7 {
	width: 44%;
	margin-block-start: clamp(8rem, 4.6rem + 10.625vw, 25rem);
	margin-inline: auto 0;
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic7 {
		order: 8;
		width: 66%;
		margin-inline: 0;
	}
}
.p-concept-area2 figure.-pic8 {
	width: 37%;
	margin-inline-start: 10%;
	margin-block-start: -35%;
	margin-block-end: clamp(7.5rem, 3.6rem + 12.1875vw, 27rem);
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic8 {
		order: 9;
		width: 83%;
		margin-inline: auto 0;
		margin-block-start: 75px;
	}
}
.p-concept-area2 figure.-pic9 {
	width: 74%;
	margin-inline: auto;
}
@media screen and (max-width: 767px) {
	.p-concept-area2 figure.-pic9 {
		order: 10;
		width: 83%;
		margin-inline: 0;
	}
}
.p-concept-area2 .is-shadow {
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.7), 0 0 5px rgba(0, 0, 0, 0.7), 0 0 5px rgba(0, 0, 0, 0.7), 0 0 5px rgba(0, 0, 0, 0.7);
}
.p-concept [class*=__inner] {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}
.p-concept [class*=__inner].-md {
	max-width: 780px;
}
@keyframes blurIn {
	from {
		opacity: 0;
		filter: blur(20px);
		transform: translate3d(0, 10px, 0) scaleX(1.2);
	}
	to {
		opacity: 1;
		filter: blur(0);
		transform: none;
	}
}
.p-concept .blurIn {
	animation-name: blurIn;
}
@keyframes blurZoomIn {
	from {
		opacity: 0;
		filter: brightness(1.8) blur(20px);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	50% {
		filter: brightness(1) blur(0);
		opacity: 1;
	}
}
.p-concept .blurZoomIn {
	animation-name: blurZoomIn;
}
.p-concept .cliping-mask {
	overflow: hidden;
}/*# sourceMappingURL=concept.css.map */