@charset "utf-8";
@font-face {
	font-family: "EN LP Body";
	src: url("/fonts/EN-LP-Body.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/***************
	Base
***************/
:root {
	/* font-family */
	--ff-en: "Arsenal", sans-serif;
	--ff-ja-sub: "Shippori Mincho", serif;
	--ff-num-body: "EN LP Body", var(--ff-en);

	/* color */
	--c-white: #fff;
	--c-theme-white: #FFFFFC;
	--c-hero-bg: #F0EAE2;
	--c-link-white: #ffffffc5;
	--c-theme-body: #2E2D28;
	--c-theme-sec: #F0EAE2;
	--c-theme-line: #937E5E;
	--c-theme-line-review: #2E2D281A;
	--c-theme-review: #DFD8C7;
	--c-js--level: #937E5E80;

	/* letter-spacing */
	--letter-spacing: 0.07em;
	--letter-spacing--heading--body: 0.03em;
	--letter-spacing--body: 0.04em;
	--letter-spacing--num: 0.04em;
}
html{
	scroll-behavior: smooth;
	min-height: 100vh;
	font-size: 2.5641vw;
	font-family: var(--ff-en);
	font-variant-numeric: normal;
	-webkit-font-smoothing: antialiased;
}

body.is-scroll-locked {
    overflow: hidden;
}
body, html {
	height: 100%;
}
body {
	font-size: 1.6rem;
	font-weight: 400;
	color: var(--color-lightbrown);
	line-height: 1.6;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	overflow-y: scroll;
}
button {
	font-family: var(--ff-en);
}
a {
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: ease .3s;
	-o-transition: ease .3s;
	transition: ease .3s;
	color: var(--color-lightbrown);
}
li {
	list-style: none;
}
picture , img {
	width: 100%;
	height: auto;
}
button {
	border: none;
	background: none;
	cursor: pointer;
}

/***************
	js
***************/
.js-wave-text {
	display: inline-block;
}
.js-slide-level__item {
	position: relative;
	display: block;
	width: 6px;
	height: 6px;
	background-color: var(--c-js--level);
	border-radius: 5px;
}
.js-slide-level__item.is-active::after {
	content: "";
	position: absolute;
	background-color: var(--c-theme-line);
	border-radius: 5px;
}
.is-handmade--subtitle__01.is-active,
.is-handmade--subtitle__02.is-active,
.is-handmade--subtitle__01__text.is-active,
.is-handmade--subtitle__02__text.is-active,
.is-handmade__img-01.is-active,
.is-handmade__img-02.is-active,
.is-handmade__img-03.is-active,
.p-page__main__whatHR__body__subtitle__text,
.is-whatHR__img-01,
.is-whatHR__img-02,
.is-whatHR__img-03,
.is-whatHR__img-04,
.is-whatHR__img-05,
.is-gallery_01,
.is-gallery_02,
.is-gallery_03,
.is-gallery_04,
.is-gallery_05,
.is-gallery_06 {
	opacity: 0;
	will-change: transform;
    transform: translateZ(0);
}
.is-handmade--subtitle__01.is-active,
.is-handmade--subtitle__02.is-active,
.is-handmade--subtitle__01__text.is-active,
.is-handmade--subtitle__02__text.is-active,
.is-handmade__img-01.is-active,
.is-handmade__img-02.is-active,
.is-handmade__img-03.is-active,
.p-page__main__whatHR__body__subtitle__text,
.is-whatHR__img-01,
.is-whatHR__img-02,
.is-whatHR__img-03,
.is-whatHR__img-04,
.is-whatHR__img-05,
.is-gallery_01,
.is-gallery_02,
.is-gallery_03,
.is-gallery_04,
.is-gallery_05,
.is-gallery_06 {
	opacity: 1;
}

/***************
	Page
***************/
.p-page__main {
	background-color: var(--c-theme-white);
}
/* header --start */
.p-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100dvw;
	z-index: 999;
	background-color: var(--c-theme-white);
}
.p-header__wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 6.154vw;
}
.p-header__logo a {
	display: block;
	width: fit-content;
	height: 8.205vw;
}
.p-header__logo img {
	width: 30vw;
    -o-object-fit: contain;
    object-fit: contain;
}
.p-page__hero {
	display: none;
}
/* header --end */

/* page --start */
.p-page {
	display: flex;
	flex-flow: column;
}
.p-page__main.is-active {
	overflow: hidden;
}
.p-page__main__head {
	position: relative;
	width: 63.07vw;
	margin: 0 auto;
}
.p-page__main__body__title {
	font-size: 2.4rem;
	font-weight: 400;
	line-height: 1.3;
	letter-spacing: var(--letter-spacing--heading--body);
	margin-bottom: 8.205vw;
}
.p-page__main__body__description {
	font-size: 1.7rem;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: var(--letter-spacing--body);
	margin-bottom: 6.667vw;
}
.p-page__main__body__description:last-of-type {
	margin-bottom: 0;
}
.p-page__main__body__props {
	font-size: 1.7rem;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: var(--c-theme-body);
}
.p-page__main__body__props__note {
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: var(--letter-spacing--body);
}

/* handmade --start */
.p-page__main__handmade {
	position: relative;
	padding: 26.2vw 13.846vw 0 4.103vw;
}
.p-page__main__handmade__title {
	font-style: italic;
	font-weight: normal;
	font-size: 2.2rem;
	color: var(--c-theme-body);
	letter-spacing: 0.03em;
	line-height: 1.2;
	margin-bottom: 4.103vw;
}
.p-page__main__handmade__subtitle {
	position: absolute;
	z-index: 11;
	background-color: var(--c-white);
	border: 1px solid var(--c-theme-body);
	padding: 2.564vw 2.1vw 0;
	line-height: 1;
}
.p-page__main__handmade__subtitle span {
	display: inline-block;
	color: var(--c-theme-body);
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1;
	padding: 0 0 0.45vw;
}
.is-handmade--subtitle__01 {
	top: 105.1282vw;
	right: 6.1539vw;
}
.is-handmade--subtitle__02 {
	top: 117.4359vw;
	right: 17.9488vw;
	height: 59vw;
}
.is-handmade--subtitle__01 span:last-child,
.is-handmade--subtitle__02 span:last-child {
	padding-bottom: 0;
}
.is-handmade__img-02,
.is-handmade__img-03 {
	position: absolute;
	z-index: 10;
}
.is-handmade__img-02 {
	bottom: -40vw;
	left: 0;
	width: 43vw;
}
.is-handmade__img-03 {
	bottom: -90.256vw;
	right: 8.205vw;
	width: 37vw;
}
/* handmade --end */

/* whatHR --start */
.p-page__main__whatHR {
	position: relative;
	background-color: var(--c-theme-sec);
	margin-top: 67.692vw;
	padding: 53.333vw 0 217.1795vw;
	overflow: hidden;
}
.p-page__main__whatHR .p-page__main__head {
	margin-bottom: 12.308vw;
}
.p-page__main__title {
	font-size: 3.2rem;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.03em;
	line-height: 1;
	width: fit-content;
	margin: 0 auto;
}
.p-page__main__subtitle {
	position: absolute;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: var(--letter-spacing);
	transform: translateX(-50%);
}
.p-page__main__whatHR__body__subtitle {
	position: absolute;
	top: 30.7693vw;
	right: 12.3077vw;
	height: 51.282vw;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: var(--letter-spacing);
}
.p-page__main__whatHR__body__subtitle__text {
	display: inline-block;
	padding-bottom: 0.75vw;
}
.is-whatHR__subtitle-01 {
	top: 37.949vw;
	left: calc(50% + 2.564vw);
}
.is-whatHR__subtitle-02 {
	top: 37.949vw;
	left: calc(50% - 2.564vw);
}
.p-page__main__whatHR__body {
	display: flex;
	width: 75.39vw;
	margin: 0 auto;
}
.p-page__main__whatHR__body__wrapper--img {
	position: relative;
}
.p-page__main__whatHR__body__img {
	position: absolute;
}
.is-whatHR__img-01 {
	top: 22.5641vw;
	left: 0;
	width: 53.846vw;
}
.is-whatHR__img-02 {
	top: 58.718vw;
	left: 32.564vw;
	width: 37.692vw;
}
.is-whatHR__img-03 {
	top: 101.282vw;
	right: 0;
	width: 67.179vw;
}
.is-whatHR__img-04 {
	top: 109.4872vw;
	left: 0;
	width: 20.513vw;
}
.is-whatHR__img-05 {
	top: 160.2565vw;
	left: 20.513vw;
	width: 37.692vw;
}
/* whatHR --end */

/* whyCOR --start */
.p-page__main__whyCOR {
	padding: 30.769vw 0;
}
.p-page__main__whyCOR__head {
	position: relative;
	width: 63.07vw;
	margin: 0 auto 12.308vw;
}
.p-page__main__whyCOR__title {
	font-size: 3.2rem;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: var(--letter-spacing);
	text-align: center;
}
.p-page__main__whyCOR__title.c-title--decolation::after {
	margin-top: 24.103vw;
}
.p-page__main__whyCOR__subtitle {
	position: absolute;
	top: 38.462vw;
	left: 50%;
	transform: translateX(-50%);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1;
}
.p-page__main__whyCOR__body {
	position: relative;
	text-align: center;
	width: 75.39vw;
	margin: 0 auto;
}
.p-page__main__whyCOR__body .js-slide-level {
	position: absolute;
	top: 50%;
	right: -27px;
	transform: translateY(-50%);
}
.p-page__main__whyCOR__body .js-slide-level__item {
	margin-bottom: 8px;
}
.p-page__main__whyCOR__body .js-slide-level__item:last-child {
	margin-bottom: 0;
}
.p-page__main__whyCOR__body .js-slide-level__item.is-active::after {
	left: 0;
	width: 6px;
	height: 12px;
}
.p-page__main__whyCOR__body .js-slide-level__item.is-active {
	height: 24px;
}
.p-page__main__whyCOR__body .js-slide-level__item.is-active::after {
	top: var(--level-offset, 0px);
	left: 0;
	width: 6px;
	height: 12px;
}
.p-page__main__whyCOR__body__wrapper {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity 0.7s;
}
.p-page__main__whyCOR__body__wrapper svg {
	height: 46px;
}
.p-page__main__whyCOR__body__wrapper.is-active {
	position: relative;
	opacity: 1;
}
.p-page__main__whyCOR__body__img {
	margin-bottom: 8.205vw;
}
.p-page__main__whyCOR__body__wrapper .p-page__main__body__title {
	margin-bottom: 8.2052vw;
	height: 32.0513vw;
}
/* whyCOR --end */

/* howMHR --start */
.p-page__main__howMHR__head--wrapper {
	background-color: var(--c-theme-sec);
	padding: 30.769vw 0 12.308vw;
}
.is-howMHR__subtitle-01 {
	top: 37vw;
	left: calc(50% + 2.564vw);
}
.is-howMHR__subtitle-02 {
	top: 37vw;
	left: calc(50% - 2.564vw);
}
.p-page__main__howMHR__body {
	position: relative;
	text-align: center;
	width: 75.39vw;
	margin: 0 auto;
}
.p-page__main__howMHR__body--wrapper {
	cursor: pointer;
	color: var(--c-white);
	overflow: hidden;
	padding: 6.154vw 0 0;
	height: 27.949vw;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-bottom: 1.026vw;
	transition: all 1s;
}
.p-page__main__howMHR__body--wrapper:last-child {
	margin-bottom: 0;
}
.p-page__main__howMHR__body--wrapper.is-active {
	padding: 27.436vw 0;
	height: 47.7vw;
}
.p-page__main__howMHR .c-pulldown--closed::before,
.p-page__main__howMHR .c-pulldown--closed::after,
.p-page__main__howMHR .c-pulldown--opened::before,
.p-page__main__howMHR .c-pulldown--opened::after {
	background-color: var(--c-white);
}
.p-page__main__howMHR__body--wrapper .c-pulldown--closed {
	top: 21.026vw;
}
.p-page__main__howMHR__body--wrapper .c-pulldown--opened {
	bottom: -6.154vw;
}
.p-page__main__howMHR__body--wrapper.is-active .c-pulldown--closed {
	opacity: 0;
}
.p-page__main__howMHR__body--wrapper .c-pulldown--opened {
	opacity: 0;
}
.p-page__main__howMHR__body--wrapper.is-active .c-pulldown--opened {
	opacity: 1;
}
.p-page__main__howMHR__body--wrapper .p-page__main__body__description {
	opacity: 0;
	transition: all 0.3s;
}
.p-page__main__howMHR__body--wrapper.is-active .p-page__main__body__description {
	opacity: 1;
}
.is-howMHR__body-01 {
	background-image: url("../img/_jpg/howMHR_01.jpg");
}
.is-howMHR__body-02 {
	background-image: url("../img/_jpg/howMHR_02.jpg");
}
.is-howMHR__body-03 {
	background-image: url("../img/_jpg/howMHR_03.jpg");
}
.is-howMHR__body-04 {
	background-image: url("../img/_jpg/howMHR_04.jpg");
}
.p-page__main__howMHR .p-page__main__body__title {
	line-height: 1;
	margin-bottom: 4.103vw;
}
/* howMHR --end */

/* our-products --start */
.p-page__main__ourProducts {
	padding: 30.769vw 0;
}
.p-page__main__ourProducts .p-page__main__head {
	margin-bottom: 20.5129vw;
}
.p-page__main__ourProducts .c-title--decolation::after {
	margin-top: 34.103vw;
}
.is-ourProducts__subtitle-01 {
	top: 27.179vw;
	left: calc(50%);
}
.p-page__main__ourProducts__anchor {
	display: flex;
	gap: 2.308vw;
	width: 87.7vw;
	margin: 0 auto 20.513vw;
}
.p-page__main__ourProducts__anchor__item {
	width: 27.7vw;
}
.p-page__main__ourProducts .p-page__main__body {
	width: 75.39vw;
	margin: 0 auto;
	margin-bottom: 30.769vw;
}
.p-page__main__ourProducts .p-page__main__body:last-child {
	margin-bottom: 0;
}
.p-page__main__ourProducts__title {
	display: flex;
	margin-bottom: 8.205vw;
}
.p-page__main__ourProducts__title .c-heading--line {
	margin: auto 2.051vw auto 0;
}
.p-page__main__ourProducts__title .p-page__main__body__title {
	letter-spacing: 0;
	margin-bottom: 0;
}
.p-page__main__ourProducts__body__img {
	margin-bottom: 8.205vw;
}
.p-page__main__ourProducts__body__props {
	margin-bottom: 8.205vw;
}
.p-page__main__ourProducts__body__props__prop {
	display: flex;
	justify-content: space-between;
	white-space: nowrap;
	font-size: 1.7rem;
	font-weight: 400;
	margin-bottom: 4.1026vw;
	letter-spacing: var(--letter-spacing--body);
}
.p-page__main__ourProducts__body__props__val__unit {
	font-size: 1.2rem;
	letter-spacing: var(--letter-spacing--body);
}
.p-page__main__ourProducts__body__props__line {
	position: relative;
	width: 100%;
}
.p-page__main__ourProducts__body__props__line::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 8.205vw);
	border-top: 1px dotted var(--c-theme-line);
}
.p-page__main__ourProducts__body__link {
	display: block;
	margin-top: 8.205vw;
}
.p-page__main__ourProducts__body__link__btn {
	display: flex;
	align-items: center;
	text-align: left;
	color: var(--c-theme-line);
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: var(--letter-spacing--heading--body);
	line-height: 1;
	width: 100%;
	height: 14.359vw;
	padding-left: 6.154vw;
	background-color: var(--c-white);
	border: 1px solid var(--c-theme-line);
	border-radius: 7.692vw;
	transition: all 1s;
}
.p-page__main__ourProducts__body__link__btn:hover {
	background-color: rgb(249, 244, 239);
}
.p-page__main__ourProducts__body__link__btn .c-link__decolation {
	margin-left: 4.62vw;
}
/* our-products --end */

/* our-products-options --start */
.p-page__main__ourProducts--contents {
	background-color: var(--c-theme-sec);
	padding: 30.769vw 0;
	overflow: hidden;
}
.p-page__main__ourProducts--contents .p-page__main__head {
	width: 75.39vw;
}
.p-page__main__ourProducts--contents > .p-page__main__head {
	margin-bottom: 12.308vw;
}
.p-page__main__body--options .p-page__main__head {
	margin-bottom: 8.205vw;
}
.is-content {
	width: 75.39vw;
	margin: 0 auto;
}
.is-options--content {
	margin: 0 0 20.513vw;
}
.is-options--content:last-of-type {
	margin-bottom: 0;
}
.is-options--content .p-page__main__ourProducts__title {
	margin: 0 0 2.051vw 12.31vw;
}
.is-options--content .c-heading--line {
	margin: 3.077vw 2.051vw 3.077vw 0;
}
.is-options--content .p-page__main__body__title {
	font-size: 2rem;
}
.is-options--content > .p-page__main__body__description {
	margin: 0 0 2.051vw 12.31vw;
}
.is-options--content__flexbox {
	display: flex;
}
.is-options--content--flex {
	display: flex;
	gap: 2.051vw;
	width: 75.39vw;
	margin: 0 auto;
}
.p-page__main__ourProducts__gallery__wrapper {
	position: relative;
	left: 12.31vw;
	display: flex;
	gap: 2.051vw;
	margin-bottom: 6.154vw;
	transition: transform 0.6s ease-out;
}
.p-page__main__ourProducts__gallery__img {
	width: 36.67vw;
}
.js-ourProducts-gallery .p-page__main__ourProducts__gallery__img {
	cursor: pointer;
}
.p-page__main__ourProducts__gallery .c-arrow--left {
	margin-right: 1.538vw;
	margin-left: 12.31vw;
}
.is-options--content--flex__wrapper .p-page__main__body__description {
	margin-bottom: 6.154vw;
}
.is-ourProducts--contents__options {
	margin-bottom: 30.769vw;
}
/* our-products-options --end */

/* our-products-engraving --start */
.is-ourProducts--contents__engraving .p-page__main__head {
	margin-bottom: 0;
}
.is-ourProducts--contents__engraving .p-page__main__body__description:first-of-type {
	margin-bottom: 8.205vw;
}
.is-ourProducts--contents__engraving .p-page__main__body__description:last-of-type {
	margin-bottom: 6.154vw;
}
.is-ourProducts--contents__engraving {
	margin-bottom: 18.462vw;
}
/* our-products-engraving --end */

/* our-products-gemstone --start */
.p-page__main__ourProducts__body__props.is-gemstone picture {
	width: fit-content;
	height: 8.205vw;
}
.p-page__main__ourProducts__body__props.is-gemstone .p-page__main__ourProducts__body__props__img {
	width: 8.21vw;
	margin-left: 4.11vw;
}
.p-page__main__ourProducts__body__props.is-gemstone .p-page__main__ourProducts__body__props__prop {
	margin-bottom: 4.11vw;
}
.p-page__main__ourProducts__body__props.is-gemstone .p-page__main__ourProducts__body__props__prop:last-child {
	margin-bottom: 0;
}
.is-ourProducts--contents__gemstone .p-page__main__body__props {
	margin: 8.205vw 0;
}
/* our-products-gemstone --end */

/* Customer Reviews --start */
@keyframes level-progress {
	from {
		left: 0;
	}
	to {
		left: 12px;
	}
}
.p-page__main__customerReviews {
	position: relative;
	padding: 30.769vw 0;
}
.p-page__main__customerReviews .js-slide-level {
	/* cursor: pointer; */
	position: relative;
	display: flex;
	margin: 0 auto;
	width: fit-content;
}
.p-page__main__customerReviews .js-slide-level__item.is-active {
	width: 24px;
}
.p-page__main__customerReviews .js-slide-level__item.is-active::after {
	top: var(--level-offset, 0px);
	left: 0px;
	height: 6px;
	width: 12px;
	animation-name: level-progress;
	animation-duration: var(--level-duration, 12000ms); /* JS側と同じ時間にする */
	animation-timing-function: linear;
	animation-fill-mode: forwards;
}
.p-page__main__customerReviews .js-slide-level__item {
	margin-left: 8px;
}
.p-page__main__customerReviews .js-slide-level__item:first-of-type {
	margin-left: 0;
}
.p-page__main__customerReviews .p-page__main__head {
	margin-bottom: 12.308vw;
}
.p-page__main__customerReviews .p-page__main__title {
	white-space: nowrap;
}
.p-page__main__customerReviews .p-page__main__subtitle {
	top: 27.692vw;
	left: 50%;
}
.p-page__main__customerReviews__body {
	position: absolute;
	top: 99.7436vw;
	left: 12.31vw;
	opacity: 0;
	width: 75.39vw;
	height: 74.1026vw;
	margin: 0 auto 6.154vw;
	padding: 8.205vw;
	background-color: var(--c-theme-review);
	border-radius: 2.051vw;
	box-sizing: border-box;
	background-image: url("../img/_png/review.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-size: 25.39vw auto;
	background-position: right 4.11vw top 4.11vw;
	transition: opacity 2s;
}
.p-page__main__customerReviews__body.is-active {
	position: relative;
	top: 0;
	left: 0;
	opacity: 1;
}
.p-page__main__customerReviews__body__title {
	font-size: 2rem;
	letter-spacing: var(--letter-spacing--heading--body);
	line-height: 1.2;
	font-weight: 400;
	padding-bottom: 4.11vw;
	border-bottom: 1px solid var(--c-theme-line-review);
}
.p-page__main__customerReviews__body__review {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
	font-style: italic;
	letter-spacing: var(--letter-spacing--body);
	margin-top: 4.11vw;
}
/* Customer Reviews --end */

/* Gallery --start */
.p-page__main__gallery {
	padding: 30.769vw 0;
	padding: 30.769vw 0 221.538vw;
	background-color: var(--c-theme-sec);
	overflow: hidden;
}
.p-page__main__gallery .p-page__main__head {
	margin-bottom: 12.308vw;
}
.p-page__main__gallery .p-page__main__subtitle {
	top: 26.667vw;
	left: 50%;
}
.p-page__main__body__gallery {
	position: relative;
	height: 22.154vw;
}
.p-page__main__body__gallery__img {
	position: absolute;
}
.is-gallery_01 {
	width: 67.179vw;
	top: 0;
	right: 12.308vw;
}
.is-gallery_02 {
	width: 53.846vw;
	top: 55.641vw;
	left: 0;
}
.is-gallery_03 {
	width: 37.692vw;
	top: 93.846vw;
	right: 29.744vw;
}
.is-gallery_04 {
	width: 71.282vw;
	top: 136.41vw;
	right: 0;
}
.is-gallery_05 {
	width: 20.513vw;
	top: 144.615vw;
	left: 0;
}
.is-gallery_06 {
	width: 37.692vw;
	top: 195.385vw;
	left: 20.513vw;
}
/* Gallery --end */

/* Location --start */
.p-page__main__location {
	padding: 30.769vw 0;
}
.p-page__main__location__address {
	display: flex;
	width: 75.39vw;
	margin: 0 auto 4.11vw;
}
.p-page__main__location .p-page__main__head {
	margin-bottom: 12.308vw;
}
.p-page__main__location .p-page__main__subtitle {
	top: 26.667vw;
	left: 50%;
}
.p-page__main__location__address .c-heading--line {
	margin: auto 4.103vw auto 0;
}
.p-page__main__location__address .p-page__main__body__title {
	margin-bottom: 0;
}
.p-page__main__location__detail {
	width: 75.39vw;
	margin: 0 auto;
}
.p-page__main__location__detail .p-page__main__body__description.u-text--address {
	border-bottom: 1px solid var(--c-theme-line);
	padding-bottom: 8.205vw;
	margin-bottom: 8.205vw;
}
.p-page__main__location__detail .p-page__main__body__props {
	letter-spacing: var(--letter-spacing--body);
	margin: 2.051vw 0 8.205vw;
}
.p-page__main__location__detail__map {
	width: 75.39vw;
	height: 56.42vw;
	border-radius: 16px;
}
/* Location --end */

/* FAQ --start */
.p-page__main__faq .p-page__main__head__wrapper {
	background-color: var(--c-theme-sec);
	padding: 30.769vw 0 12.308vw;
}
.is-faq__subtitle-01 {
	top: 26.667vw;
	left: calc(50% + 2.564vw);
}
.is-faq__subtitle-02 {
	top: 26.667vw;
	left: calc(50% - 2.564vw);
}
.p-page__main__body__faq {
	cursor: pointer;
	padding: 12.31vw 0;
	background-color: var(--c-theme-sec);
	border-bottom: 1px solid var(--c-theme-line-review);
	transition: all 0.6s;
	box-sizing: border-box;
}
.p-page__main__body__faq:first-of-type {
	border-top: 1px solid var(--c-theme-line-review);
}
.p-page__main__body__faq:last-of-type {
	border-bottom: none;
}
.p-page__main__body__faq.is-active {
	border-bottom: 1px solid transparent;
}
.p-page__main__body__faq.is-active:last-of-type {
	border-bottom: none;
}
.p-page__main__body__faq .c-pulldown--closed {
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: all 0.6s;
	transform-origin: 50% 50%;
}
.p-page__main__body__faq.is-active .c-pulldown--closed {
	top: 44%;
	right: 1.3vw;
	transform: rotate(180deg);
}
.p-page__main__body__faq .c-pulldown--closed::before,
.p-page__main__body__faq .c-pulldown--closed::after {
	background-color: var(--c-theme-line);
}
.p-page__main__body__faq.is-active {
	background-color: var(--c-theme-review);
}
.p-page__main__body__faq__question {
	position: relative;
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: var(--letter-spacing--heading--body);
	width: 75.39vw;
	margin: 0 auto;
	padding-right: 6.93vw;
	box-sizing: border-box;
	transition: color 0.6s;
}
.p-page__main__body__faq .p-page__main__body__description {
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translateX(-50%);
	opacity: 0;
	width: 75.39vw;
	margin: 0 auto;
	transition: opacity 2s, bottom 0.6s;
}
.p-page__main__body__faq.is-active .p-page__main__body__faq__question {
	color: var(--c-theme-line);
	margin-bottom: 4.103vw;
}
.p-page__main__body__faq.is-active .p-page__main__body__description {
	position: relative;
	bottom: 0;
	left: 0;
	opacity: 1;
	transform: translateX(0);
}
/* FAQ --end */

/* page --end */

.p-footer {
	font-size: 1.2rem;
	padding: 30.769vw 10.256vw;
	text-align: center;
}
.p-footer__sns--title {
	color: var(--c-theme-body);
	margin-bottom: 2.564vw;
}
.p-footer__sns {
    gap: .6875rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	gap: 4.103vw;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
	margin-bottom: 6.153vw;
}

/***************
	Component
***************/
/* humberger --start */
.c-humburger {
	--w: 8.205vw;
	--h: 5.128vw;
	--t: 0.5128vw;
	--gap: 1.2vw;
	color: #7b6a55;
	inline-size: var(--w);
	block-size: var(--h);
	display: inline-grid;
	place-items: center;
	padding: 0;
	background: transparent;
	border: 0;
	cursor: pointer;
}
.c-humburger__lines {
	position: relative;
	inline-size: 100%;
}
.c-humburger__lines::before,
.c-humburger__lines::after {
	content:"";
	position: absolute;
	inset-inline-start: 0;
	inline-size: 100%;
	block-size: var(--t);
	background: currentColor;
}
.c-humburger__lines.is-close::before,
.c-humburger__lines.is-close::after {
	block-size: var(--t);
	background: var(--c-white);
}
.c-humburger__lines::before { inset-block-start: calc(-1 * var(--gap)); }
.c-humburger__lines::after {  inset-block-start: var(--gap); }
/* humberger --end */

/* c-nav --start */
.c-nav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	transform: translateX(100%);
	transition: transform .35s, opacity .35s;
	opacity: 0;
	pointer-events: none;
	color: var(--c-white);
	background-color: var(--c-theme-line);
	width: 83.59vw;
	height: 100dvh;
	overscroll-behavior: contain;
	display: flex;
	flex-direction: column;
}
.c-nav.is-open {
	transform: translateX(0);
	opacity: 1;
	pointer-events: auto;
}
.c-humburger__lines.is-close::before{
	inset-block-start:0; transform:rotate(35deg);
}
.c-humburger__lines.is-close::after{
	inset-block-start:0; transform:rotate(-35deg);
}
.c-nav__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6.154vw;
	padding: 6.154vw 6.154vw 0 6.154vw;
}
.c-nav__body {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	flex: 1 1 auto;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding: 4.103vw 6.154vw 6.154vw 6.154vw;
}
.c-nav__body__list {
	margin-bottom: 10.256vw;
}
.c-nav__body__list__item {
	margin-bottom: 4.103vw;
}
.c-nav__body__official__link,
.c-nav__body__list__item a {
	color: var(--c-white);
	font-size: 2rem;
	letter-spacing: 0.05em;
	line-height: 1.2;
}
.c-nav__body__official__link:hover,
.c-nav__body__list__item a:hover {
	text-decoration: underline;
}
.c-nav__body__official__link,
.c-nav__body__list__item:last-child {
	margin-bottom: 0;
}
.c-nav__body__official__link {
	display: flex;
	width: fit-content;
	color: var(--c-link-white);
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	line-height: 1.2;
}
.c-nav__body__official__link {
	margin-bottom: 6.1539vw;
}
.c-nav__body__sns--title {
	font-size: 1.2rem;
	font-weight: normal;
	margin-bottom: 2.564vw;
}
.c-nav__body__sns {
	display: flex;
	gap: 4.103vw;
}
/* c-nav --end */

.c-title--decolation::before,
.c-title--decolation::after {
	content: "";
	display: block;
	background-image: url("../img/svg/whatHR__title.svg");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	width: 63.077vw;
	height: 4.103vw;
}
.c-title--decolation::before {
	margin-bottom: 10.256vw;
}
.c-title--decolation::after {
	margin-top: 30vw;
}
.c-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,.4);
	opacity: 0;
	visibility: hidden;
	transition: opacity .35s ease, visibility 0s linear .35s;
	z-index: 999;
	pointer-events: none;
}
.c-backdrop.is-open {
	opacity: 1;
	visibility: visible;
	transition: opacity .35s ease;
	pointer-events: auto;
	touch-action: none;
}
.c-sns--icon {
	display: block;
	height: 8.205vw;
}
.c-allow--link {
	position: relative;
	top: 2.051vw;
	width: 1.795vw;
	height: 1.795vw;
	margin-left: 3.077vw;
	border-top: 1px solid var(--c-link-white);
	border-right: 1px solid var(--c-link-white);
}
.c-allow--link::after {
	position: absolute;
	top: 1.026vw;
	right: -0.513vw;
	content: "";
	transform: rotate(-45deg);
	width: 3.077vw;
	height: 1px;
	background-color: var(--c-link-white);
}
.c-heading--line {
	display: block;
	min-width: 10vw;
	height: 1px;
	margin: 4.103vw 4.103vw 4.103vw 0;
	background-color: var(--c-theme-body);
}
.c-pulldown--closed,
.c-pulldown--opened {
	position: absolute;
	transition: all 0.1s;
}
.c-pulldown--closed::before,
.c-pulldown--closed::after,
.c-pulldown--opened::before,
.c-pulldown--opened::after {
	display: block;
	content: "";
	position: relative;
	width: 2.564vw;
	height: 0.513vw;
}
.c-pulldown--closed::before,
.c-pulldown--opened::before {
	right: 1.538vw;
	border-top-left-radius: 0.366vw;
	border-bottom-left-radius: 0.366vw;
}
.c-pulldown--closed::after,
.c-pulldown--opened::after {
	bottom: 0.513vw;
	border-top-right-radius: 0.366vw;
	border-bottom-right-radius: 0.366vw;
}
.c-pulldown--closed::before {
	transform: rotate(45deg);
}
.c-pulldown--closed::after {
	transform: rotate(-45deg);
}
.c-pulldown--opened::before {
	transform: rotate(-45deg);
}
.c-pulldown--opened::after {
	transform: rotate(45deg);
}
.c-link__decolation {
	position: relative;
	display: block;
}
.c-link__decolation::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 8.205vw;
	height: 1px;
	background-color: var(--c-theme-line);
}
.c-link__decolation::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 5.128vw;
	width: 6.154vw;
	height: 6.154vw;
	border: 1px solid var(--c-theme-line);
	border-radius: 50%;
	box-sizing: border-box;
}
.c-arrow--left,
.c-arrow--right {
	display: inline-block;
	width: 6.154vw;
	height: 6.154vw;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.c-arrow--left {
	background-image: url("../img/_png/allow-left.png");
}
.c-arrow--right {
	background-image: url("../img/_png/allow-right.png");
}

/***************
	Utility
***************/
/* フォントファミリー */
.u-subtitle-ja {
	font-family: var(--ff-ja-sub);
}
.u-body-num {
	font-family: var(--ff-num-body);
	font-variant-numeric: lining-nums tabular-nums;
}
.u-vertical {
	writing-mode: vertical-rl;
	text-orientation: upright;
}
.u-disp--none {
	display: none;
}
.u-disp--npc {
	display: none;
}

/***************
	レスポンシブ対応
***************/
/* ===== tablet ===== */
@media (min-width: 744px) {
	/***************
		Base
	***************/
	* {
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE・旧Edge */
	}
	*::-webkit-scrollbar {
		display: none; /* Chrome / Safari */
	}
	html {
		font-size: 10px;
	}

	/***************
		Page
	***************/
	.p-page {
		flex-flow: row;
	}
	.p-header__wrapper {
		padding: 16px 23px;
	}
	.p-header__logo img {
		width: 120px;
	}
	.p-header__logo a {
		height: fit-content;
	}
	.p-page__main {
		width: 390px;
	}
	.p-page__main__head {
		width: auto;
	}
	.p-page__main__body__title {
		margin-bottom: 48px;
	}
	.p-page__main__body__description {
		margin-bottom: 26px;
	}
	.p-page__hero {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 100;
		width: calc(100vw - 390px);
	}
	.p-page__hero--backdrop {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 99;
		width: calc(100vw - 390px);
		height: 100dvh;
		background-color: var(--c-hero-bg);
	}
	.p-page__main__hero__body__img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		object-fit: cover;
		opacity: 0;
		transition: opacity 4s;
	}

	.p-page__main__hero__body__img.is-active {
		opacity: 1;
	}

	/* handmade --start */
	.p-page__main__handmade {
		padding: 105px 54px 0 16px;
	}
	.p-page__main__handmade__title {
		margin-bottom: 16px;
	}
	.p-page__main__handmade__subtitle {
		padding: 10px 10px 0 10px;
	}
	.p-page__main__handmade__subtitle span {
		padding-bottom: 2px;
	}
	.is-handmade--subtitle__01 {
		top: 410px;
		right: 24px;
	}
	.is-handmade--subtitle__02 {
		top: 458px;
		right: 74px;
		height: 236px;
	}
	.is-handmade__img-02 {
		width: 168px;
		bottom: -144px;
	}
	.is-handmade__img-03 {
		width: 144px;
		bottom: -360px;
		right: 32px;
	}
	/* handmade --end */

	/* whatHR --start */
	.p-page__main__whatHR {
		margin-top: 273px;
		padding: 208px 0 847px;
	}
	.p-page__main__whatHR__body {
		width: 294px;
	}
	.p-page__main__whatHR__body__subtitle {
		top: 120px;
		right: 48px;
	}
	.p-page__main__whatHR__body__subtitle__text {
		padding-bottom: 4px;
	}
	.is-whatHR__subtitle-01 {
		top: 142px;
		left: calc(50% + 10px);
	}
	.is-whatHR__subtitle-02 {
		top: 142px;
		left: calc(50% - 10px);
	}
	.is-whatHR__img-01 {
		width: 210px;
		top: 88px;
	}
	.is-whatHR__img-02 {
		width: 147px;
		top: 237px;
		left: 127px;
	}
	.is-whatHR__img-03 {
		width: 262px;
		top: 395px;
	}
	.is-whatHR__img-04 {
		width: 80px;
		top: 429px;
	}
	.is-whatHR__img-05 {
		width: 147px;
		top: 625px;
		left: 80px;
	}
	/* whatHR --end */

	/* whyCOR --start */
	.p-page__main__whyCOR {
		padding: 120px 0;
		/* padding: 120px 0 0; */
	}
	.p-page__main__whyCOR__subtitle {
		top: 148px;
	}
	.p-page__main__whyCOR__title.c-title--decolation::after {
		margin-top: 94px;
	}
	.p-page__main__whyCOR__head {
		width: 246px;
		margin: 0 auto 48px;
	}
	.p-page__main__whyCOR__body {
		width: 294px;
	}
	.p-page__main__whyCOR__body__img {
		margin-bottom: 32px;
	}
	.p-page__main__whyCOR__body__wrapper .p-page__main__body__title {
		margin-bottom: 32px;
		height: 125px;
	}
	/* whyCOR --end */

	/* howMHR --start */
	.p-page__main__howMHR__head--wrapper {
		padding: 120px 0 48px;
	}
	.p-page__main__howMHR__head--wrapper .p-page__main__title {
		width: 246px;
	}
	.is-howMHR__subtitle-01 {
		top: 138px;
		left: calc(50% + 10px);
	}
	.is-howMHR__subtitle-02 {
		top: 138px;
		left: calc(50% - 10px);
	}
	.p-page__main__howMHR__body--wrapper.is-active {
		padding: 107px 0;
	}
	.p-page__main__howMHR__body {
		width: 294px;
	}
	.p-page__main__howMHR__body--wrapper .c-pulldown--opened,
	.p-page__main__howMHR__body--wrapper .c-pulldown--closed {
		left: calc(50% - 1%);
	}
	.p-page__main__howMHR__body--wrapper .c-pulldown--opened {
		bottom: -26px;
	}
	.p-page__main__howMHR__body--wrapper .c-pulldown--closed {
		top: 82px;
	}
	.p-page__main__howMHR .p-page__main__body__title {
		margin-bottom: 16px;
	}
	.p-page__main__howMHR__body--wrapper {
		padding: 24px 0;
		margin-bottom: 4px;
		height: 133px;
		box-sizing: border-box;
	}
	.p-page__main__howMHR__body--wrapper.is-active {
		height: 400px;
	}
	/* howMHR --end */

	/* our-products --start */
	.p-page__main__ourProducts {
		padding: 120px 0;
	}
	.p-page__main__ourProducts .p-page__main__head {
		margin-bottom: 80px;
	}
	.p-page__main__ourProducts__title .c-heading--line {
		margin-right: 8px;
	}
	.is-ourProducts__subtitle-01 {
		top: 110px;
	}
	.p-page__main__ourProducts .p-page__main__body {
		width: 294px;
		margin: 0 auto 120px;
		margin-top: 0;
	}
	.p-page__main__ourProducts .c-title--decolation::after {
		margin-top: 132px;
	}
	.p-page__main__ourProducts__anchor {
		gap: 9px;
		width: 342px;
		margin: 0 auto 80px;
	}
	.p-page__main__ourProducts__anchor__item {
		position: relative;
		top: 0;
		width: 108px;
		transition: all 0.6s;
	}
	.p-page__main__ourProducts__anchor__item:hover {
		top: 10px;
		opacity: 0.8;
	}
	.p-page__main__ourProducts__title {
		margin-bottom: 32px;
	}
	.p-page__main__ourProducts__body__img {
		margin-bottom: 32px;
	}
	.p-page__main__ourProducts__body__props__line::after {
		width: calc(100% - 32px);
	}
	.p-page__main__ourProducts__body__props {
		margin-bottom: 32px;
	}
	.p-page__main__ourProducts__body__props__prop {
		margin-bottom: 16px;
	}
	.p-page__main__ourProducts__body__props__prop:last-child {
		margin-bottom: 0;
	}
	.p-page__main__ourProducts__body__link {
		margin-top: 32px;
	}
	.p-page__main__ourProducts__body__link__btn {
		height: 56px;
		padding: 0 0 0 24px;
	}
	.p-page__main__ourProducts__body__link__btn .c-link__decolation {
		margin-left: 18px;
	}
	/* our-products --end */

	/* our-products--contents --start */
	.p-page__main__ourProducts--contents {
		padding: 120px 0;
	}
	.p-page__main__ourProducts--contents .p-page__main__head {
		width: 294px;
	}
	.p-page__main__ourProducts--contents > .p-page__main__head {
		margin-bottom: 48px;
	}
	.p-page__main__ourProducts--contents .p-page__main__head {
		margin-bottom: 32px;
	}
	.p-page__main__ourProducts--contents .c-title--decolation::after {
		margin-top: 132px;
	}
	.is-options--content {
		margin: 0 0 80px;
	}
	.is-options--content .c-heading--line {
		margin: 12px 8px 12px 0;
	}
	.is-options--content .p-page__main__ourProducts__title {
		margin: 0 0 8px 48px;
	}
	.p-page__main__ourProducts__gallery__wrapper {
		left: 48px;
		gap: 8px;
		margin-bottom: 24px;
	}
	.p-page__main__ourProducts__gallery__img {
		width: 143px;
	}
	.p-page__main__ourProducts__gallery .c-arrow--left {
		margin: 0 10px 0 48px;
	}
	.is-options--content > .p-page__main__body__description {
		margin: 0 0 8px 48px;
	}
	.is-options--content--flex {
		width: 294px;
	}
	.is-options--content--flex__wrapper .p-page__main__body__description {
		margin-bottom: 24px;
	}
	.is-ourProducts--contents__options {
		margin-bottom: 120px;
	}
	.is-ourProducts--contents__engraving .p-page__main__body__description:first-of-type {
		margin-bottom: 32px;
	}
	.is-ourProducts--contents__engraving .p-page__main__body__description:last-of-type {
		margin-bottom: 24px;
	}
	.is-options--content--flex {
		gap: 8px;
	}
	.is-ourProducts--contents__engraving {
		margin-bottom: 72px;
	}
	.is-ourProducts--contents__gemstone .p-page__main__body__props {
		margin: 32px 0;
	}
	.p-page__main__ourProducts__body__props.is-gemstone .p-page__main__ourProducts__body__props__prop {
		margin-bottom: 16px;
	}
	.p-page__main__ourProducts__body__props.is-gemstone picture {
		height: 32px;
	}
	.p-page__main__ourProducts__body__props.is-gemstone .p-page__main__ourProducts__body__props__img {
		width: 32px;
		margin-left: 16px;
	}
	/* our-products--contents --end */

	/* Customer Reviews --start */
	.p-page__main__customerReviews {
		padding: 120px 0;
	}
	.p-page__main__customerReviews .p-page__main__subtitle {
		top: 110px;
	}
	.p-page__main__customerReviews .p-page__main__head {
		margin-bottom: 48px;
	}
	.p-page__main__customerReviews__body {
		top: 385px;
		left: 48px;
		width: 294px;
		height: 288px;
		padding: 32px;
		border-radius: 8px;
		margin-bottom: 24px;
		background-size: 99px auto;
		background-position: right 16px top 16px;
	}
	.p-page__main__customerReviews__body__title {
		padding-bottom: 16px;
	}
	.p-page__main__customerReviews__body__review {
		margin-top: 16px;
	}
	.is-gallery_01 {
		width: 262px;
		right: 48px;
	}
	.is-gallery_02 {
		width: 210px;
		top: 218px;
		left: 0;
	}
	.is-gallery_03 {
		width: 147px;
		top: 367px;
		right: 116px;
	}
	.is-gallery_04 {
		width: 278px;
		top: 533px;
		right: 0;
	}
	.is-gallery_05 {
		width: 80px;
		top: 565px;
		left: 0;
	}
	.is-gallery_06 {
		width: 147px;
		top: 763px;
		left: 80px;
	}
	/* Customer Reviews --start */

	/* Gallery --start */
	.p-page__main__gallery {
		padding: 120px 0 984px;
	}
	.p-page__main__gallery .p-page__main__head {
		margin-bottom: 48px;
	}
	.p-page__main__body__gallery {
		height: 0;
	}
	.p-page__main__gallery .p-page__main__subtitle {
		top: 110px;
	}
	/* Gallery --end */

	/* Location --start */
	.p-page__main__location {
		padding: 120px 0;
	}
	.p-page__main__location .p-page__main__head {
		margin-bottom: 48px;
	}
	.p-page__main__location .p-page__main__subtitle {
		top: 110px;
	}
	.p-page__main__location .c-title--decolation::after {
		margin-top: 132px;
	}
	.p-page__main__location__address {
		width: 294px;
		margin-bottom: 16px;
	}
	.p-page__main__location__address .c-heading--line {
		margin: 31px 8px 31px 0;
	}
	.p-page__main__location__detail {
		width: 294px;
	}
	.p-page__main__location__detail .p-page__main__body__description.u-text--address {
		padding-bottom: 32px;
		margin-bottom: 32px;
	}
	.p-page__main__location__detail .p-page__main__body__props {
		margin: 8px 0 32px;
	}
	.p-page__main__location__detail__map {
		width: 294px;
		height: 220px;
	}
	/* Location --end */

	/* faq --start */
	.p-page__main__faq .p-page__main__head__wrapper {
		padding: 120px 0 48px;
	}
	.p-page__main__faq .p-page__main__head__wrapper .c-title--decolation::after {
		margin-top: 138px;
	}
	.is-faq__subtitle-01 {
		top: 110px;
		left: calc(50% + 10px);
	}
	.is-faq__subtitle-02 {
		top: 110px;
		left: calc(50% - 10px);
	}
	.p-page__main__body__faq {
		padding: 48px 0;
	}
	.p-page__main__body__faq__question {
		width: 294px;
		padding-right: 29px;
	}
	.p-page__main__body__faq.is-active .p-page__main__body__faq__question {
		margin-bottom: 16px;
	}
	.p-page__main__body__faq .p-page__main__body__description {
		width: 294px;
	}
	.p-page__main__body__faq.is-active .c-pulldown--closed {
			top: 40%;
			right: 4px;
	}
	/* faq --end */

	/***************
		Footer
	***************/
	.p-footer {
		width: 390px;
		padding: 120px 0 120px calc(100vw - 48.682vw - 390px);
		padding: 120px 0 120px;
	}
	.p-footer__sns--title {
		margin-bottom: 10px;
	}
	.p-footer__sns {
		gap: 16px;
		margin-bottom: 24px;
	}
	.p-page__aside {
		height: 100dvh;
	}

	/***************
		Component
	***************/
	.c-humburger {
		--w: 32px;
		--h: 40px;
		--t: 2px;
		--gap: 5px;
	}
	.c-humburger.js-close-nav {
		position: relative;
		/* inline-size: calc(var(--w) - 6px); */
		block-size: var(--h);
	}

	.c-nav {
		width: 34%;
		padding: 14px 23px 16px 32px;
		box-sizing: border-box;
	}
	.c-nav__header {
		margin-bottom: 4vw;
		padding: 0;
	}
	.p-header__logo img {
		position: relative;
		top: 4px;
		width: 112px;
	}
	.c-nav__body {
		padding: 0;
		overflow: visible;
	}
	.c-nav__body__list {
		margin-bottom: 3.125vw;
	}
	.c-nav__body__list__item {
		line-height: 1;
		margin-bottom: 1.8vw;
	}
	.c-nav__body__list__item a {
		font-size: 1.6rem;
	}
	.c-nav__body__list__item:last-child {
		margin-top: 0;
	}
	.c-nav__body__official__link {
		margin-bottom: 24px;
	}
	.c-allow--link {
		top: 6px;
		margin-left: 12px;
		width: 8px;
		height: 8px;
	}
	.c-allow--link::after {
		top: 3px;
		right: -3px;
		width: 13px;
	}
	.c-nav__body__sns {
		gap: 1.6vw;
	}
	.c-nav__body__sns--title {
		line-height: 1;
		margin-bottom: 1.302vw;
	}

	.c-title--decolation::before,
	.c-title--decolation::after {
		width: 246px;
		height: 16px;
	}
	.c-title--decolation::before {
		margin-bottom: 40px;
	}
	.c-title--decolation::after {
		margin-top: 113px;
	}
	.c-heading--line {
		margin: 16px 16px 16px 0;
		min-width: 40px;
	}
	.c-pulldown--closed::before,
	.c-pulldown--closed::after,
	.c-pulldown--opened::before,
	.c-pulldown--opened::after {
		width: 10px;
		height: 2px;
	}
	.c-pulldown--closed::before,
	.c-pulldown--opened::before {
		right: 6px;
	}
	.c-pulldown--closed::after,
	.c-pulldown--opened::after {
		bottom: 2px;
	}
	.c-link__decolation::before {
		width: 0;
		transition: all 1.2s;
	}
	.c-link__decolation::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		width: 32px;
		height: 1px;
		opacity: 1;
		border: none;
		border-radius: 0;
		background-color: var(--c-theme-line);
		transition: opacity 0.2s ease-out;
	}
	.p-page__main__ourProducts__body__link__btn:hover .c-link__decolation::before {
		width: 32px;
	}
	.p-page__main__ourProducts__body__link__btn:hover .c-link__decolation::after {
		opacity: 0;
	}
	.c-link__decolation__curcle {
		content: "";
		position: absolute;
		top: 50%;
		left: 20px;
        width: 24px;
        height: 24px;
		transition: all 0.8s;
		box-sizing: border-box;
		border: 1px solid var(--c-theme-line);
		border-radius: 50%;
		transform: translateY(-50%);
	}
	.c-arrow--left, .c-arrow--right {
		width: 24px;
	}
	.c-sns--icon {
		height: 31px;
	}
	.c-sns--icon svg {
		height: 24px;
        width: 23px;
	}

	.u-disp--sp {
		display: none;
	}
}

@media (min-width: 1024px) {
	#handmade,
	#whatHR,
	#whyCOR,
	#howMHR,
	#our-products,
	#options,
	#customer-reviews,
	#gallery,
	#location,
	#faq {
		scroll-margin-top: 40px;
	}

	.p-page__main {
		width: 390px;
		padding-left: 23%;
	}
	.p-page__main__handmade {
		padding: 64px 54px 0 16px;
	}
	.p-page__hero {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 100;
		width: calc(100vw - 390px - 23%);
	}
	.p-page__hero--backdrop {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 99;
		width: calc(100vw - 390px - 23%);
		height: 100dvh;
		background-color: var(--c-hero-bg);
	}
	.is-handmade--subtitle__01 {
		top: 370px;
	}
	.is-handmade--subtitle__02 {
		top: 418px;
	}
	.p-footer {
		padding-left: 23%;
	}

	.c-nav {
		pointer-events: all;
		left: 0;
		opacity: 1;
		transform: none;
		width: 23%;
		padding: 40px 21px 34px 21px;
	}
	.c-nav__header {
		height: 58px;
		margin-bottom: 38px;
		padding: 0;
	}
	.p-header__logo img {
		top: 0;
		width: 148px;
	}
	.c-nav__body {
		padding: 0;
	}
	.c-nav__body__list {
		margin-bottom: 24px;
	}
	.c-nav__body__list__item {
		line-height: 1;
		margin-bottom: 22px;
	}
	.c-nav__body__list__item a {
		font-size: 1.4rem;
	}
	.c-nav__body__sns {
		gap: 22px;
	}
	.c-nav__body__sns--title {
		line-height: 1;
		margin-bottom: 14px;
	}
	.c-sns--icon svg {
		height: 31px;
        width: 30px;
	}

	/***************
		Utility
	***************/
	.u-disp--tab {
		display: none;
	}
	.u-disp--npc {
		display: block;
	}
}
@media (min-width: 1366px) {
	.c-nav {
		pointer-events: all;
		position: fixed;
		top: 0;
		left: 0;
		opacity: 1;
		transform: none;
		box-sizing: border-box;
		width: 23%;
		padding: 64px 48px 48px 48px;
	}
	.c-nav__header {
		height: 43px;
        margin-bottom: 64px;
		padding: 0;
	}
	.c-nav__body {
		padding: 0;
	}
	.c-nav__body__list {
		margin-bottom: 24px;
	}
	.c-nav__body__list__item {
		line-height: 1;
		margin-bottom: 16px;
	}
	.c-nav__body__list__item a {
		font-size: 1.6rem;
	}
	.c-nav__body__sns {
		gap: 16px;
	}
	.c-nav__body__sns--title {
		line-height: 1;
		margin-bottom: 10px;
	}
}
@media (min-width: 1600px) {
	.c-nav {
		padding: 4vw 3vw 3vw 3vw;
	}
	.c-nav__header {
		height: 2.69vw;
		margin-bottom: 3.6vw;
		padding: 0;
	}
	.c-nav__body {
		padding: 0;
	}
	.c-nav__body__list {
		margin-bottom: 1.5vw;
	}
	.c-nav__body__list__item {
		line-height: 1;
		margin-bottom: 1.2vw;
	}
	.c-nav__body__list__item a {
		font-size: 2rem;
	}
	.c-allow--link {
		top: 0.31vw;
		margin-left: 0.75vw;
		width: 0.62vw;
		height: 0.62vw;
	}
	.c-allow--link::after {
		top: 0.31vw;
		right: -0.19vw;
		width: 1.06vw;
	}
	.c-nav__body__sns {
		gap: 1vw;
	}
	.c-nav__body__sns--title {
		line-height: 1;
		font-size: 1.6rem;
		margin-bottom: 0.62vw;
	}
}