html {
	scroll-padding-top: 60px;
}

.home .sec01 .sec01_2 {
	/* overflow: hidden; */
}
.page-container {
	/* overflow: hidden; */
	/* margin-bottom: 4rem; */
}
@media screen and (min-width: 768px) {
	.page-container {
		margin: 4rem 0 0 0;
	}
}

/* Add Nav menu */
.st-Hamburger__container {
	width: 40px;
	padding: 4px 0 0 0;
}
.st-Hamburger {
	display: block;
	margin: 0 auto;
}
.contact-menu__text {
	font-size: 10px;
}
.st-Hamburger__container .contact-menu__text {
	display: block;
	text-align: center;
	margin: 8px 0 0 0;
}
@media screen and (max-width: 599px) {
	.st-Hamburger__container .contact-menu__text {
		margin: 4px 0 0 0;
	}
}
@media screen and (min-width: 768px) {
	.st-Nav_Copy {
		flex: 1;
	}
	.contact-menu,
	.contact-menu__inner {
		height: 100%;
	}
	.contact-menu__inner {
		display: flex;
		margin-right: calc(34.1em / 16);
	}
	.contact-menu--catalog {
		background: #DCDCD5;
	}
	.contact-menu--consultation {
		background: #C1865C;
	}
	.contact-menu__link {
		text-decoration: none;
		padding: 6px 15px;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 4px;
		color: #000;
	}
	.contact-menu--consultation .contact-menu__link {
		color: #fff;
	}
	.menu-icon {
		display: block;
		min-width: 30px;
		height: 28px;	
	}
	.menu-icon--mail {	
		background: url(../img/common/icon-mail.svg) no-repeat center / contain;
	}
	.menu-icon--catalog {	
		background: url(../img/common/icon-note.svg) no-repeat center / contain;
	}
	.menu-icon--consultation {	
		background: url(../img/common/icon-comment.svg) no-repeat center / contain;
	}
}

/* Add Footer sns */
.st-Footer_Sns {
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 15px;
}
.sns-icon {
	display: block;
	min-width: 26px;
	height: 26px;
}
.fb-icon {
	background: url(../img/common/icon-fb.svg) no-repeat center / contain;
}
.instagram-icon {
	background: url(../img/common/icon-instagram.svg) no-repeat center / contain;
}
.youtube-icon {
	background: url(../img/common/icon-youtube.svg) no-repeat center / contain;
}
@media screen and (max-width: 767px) {
	.txt-on-footer p {
		font-size: 2.6vw;
	}
	.st-Footer_Logo {
		align-self: flex-start;
		margin-bottom: calc(23.2em / 20);
	}
	.st-Footer_Copy {
		font-size: 2.6vw;
		align-self: flex-start;
	}
	.st-Footer_Bnr.Bottom {
		width: 100%;
	}
	.st-Footer_Sns {
		padding-bottom: 32px;
	}
	.st-Footer_Nav.Bnr {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	.st-Footer_Nav.Bnr > li {
		height: calc(48em / 18);
	}
	.st-Footer_Nav.Store {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 0 20px;
	}
	.st-Footer_Nav.Store > li {
		justify-content: flex-start;
	}
}

/* Add btn */
.btn-primary {
	display: flex;
	align-items: center;
	gap: 1em;
	background: #E1E1DA;
	border-radius: 999px;
	font-size: 12px;
	color: #000;
	text-decoration: none;
	padding: .8em 1.6em;
}
.btn-primary::after {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-top: .5px solid #000;
	border-right: .5px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.btn-container--sec01 {
	width: max-content;
	padding: 1em 0 0 0;
	margin-left: auto;
}

/* CRAFYで結婚指輪・婚約指輪をご制作の方に嬉しい6大特典 */
.st-cp {
	position: relative;
}
.st-cp::after {
	content: "";
	width: 100%;
	height: 50%;
	background: #DDDED8;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.st-cp_Box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px 8px;
}
.st-cp_Box > div:first-of-type {
	grid-area: 1 / 1 / 2 / 3;
}
.st-cp_Box > div:nth-of-type(2) {
	grid-area: 1 / 3 / 2 / 5;
}
.st-cp_item {
	position: relative;
	background: #fff;
}
.st-cp_Unit {
	padding: 0 15px;
}
.st-cp_Title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: 14px;
	color: #C6946F;
	padding: 1.2em 0 1.2em 2.5em;
}
.st-cp_Text {
	padding: 1.2em 0;
}
.st-cp_Text p {
	font-size: max(12px, min(3vw,14px) );
}
.st-cp_Img {
	aspect-ratio: 200/146;
}
.st-cp_Box > div:first-of-type .st-cp_Img,
.st-cp_Box > div:nth-of-type(2) .st-cp_Img {
	aspect-ratio: 456/146;
}
.st-cp_Img img {
	display: block;
	height: 100%;
	object-fit: cover;
}
.st-cp_Title::before {
	content: "";
	width: 50px;
	aspect-ratio: 1;
	clip-path: polygon(0 0,100% 0,0 100%);
	background: #C6946F;
	position: absolute;
	top: 4px;
	left: 4px;
}
.st-cp_Title::after {
	content: attr(data-n)' .';
	font-family: 'Antro Vectra', sans-serif;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	position: absolute;
	top: 12px;
    left: calc(25px - 12px);
	-webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #ffffff;
}
@media screen and (max-width: 767px) {
	.st-cp_Box {
		grid-template-columns: repeat(2, 1fr);
		gap: 6px;
	}
	.st-cp_Box > div:first-of-type {
		grid-area: 1 / 1 / 1 / 3;
	}
	.st-cp_Box > div:nth-of-type(2) {
		grid-area: 2 / 1 / 3 / 3;
	}
	.st-cp_Title {
		font-size: 3.3vw;
		padding: 1.5em 0 .5em 2em;
	}
	.st-cp_Text {
		padding: 1em 0;
	}
}

/* PRICE */
.home .home-price h2{
	font-size: calc(30em / 16);
    font-weight: lighter;
}
.home .home-price h2 span{
display: block;
margin-top:1.3em;
}
.home-price h2 + p{
	margin: calc(50em / 16) 0;
}
.block-price-ring + .block-price-ring,
.block-price-ring + .block-price-container {
	padding: calc(75em / 16) 0 0 0;
}
.block-price-ring__title {
    font-family: "Amiri", "Noto Serif JP", serif;
    font-size: 16px;
    border-left: solid 8px #DDDED8;
    border-bottom: solid 1px #DDDED8;
    padding: .6em 2em;
}
.block-price-ring__text {
    margin: 1.8em 0;
}
.price-ring-annotation{
	font-size: 0.6em;
}
.block-price-ring__features {
    display: flex;
    gap: 10px 20px;
    padding: 30px 0;
}
.block-wedding-ring__feature--cost {
    flex: 1.5;
}
.block-wedding-ring__feature--metal {
    flex: 2;
}
.block-wedding-ring__feature--option {
    flex: 2.5;
}
.block-price-ring__feature {
    display: grid;
    grid-template-rows: auto 1fr;
    border: 1px solid #DDDED8;
}
.block-price-ring__feature-label {
    background: #DDDED8;
    padding: 1.5em 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.block-price-ring__feature-label .icon {
    display: block;
    min-width: 18px;
    height: 18px;
}
.icon-hammer {
    background: url(../img/common/icon-hammer.svg) no-repeat center / contain;
}
.icon-ring {
    background: url(../img/common/icon-circle-solid.svg) no-repeat center / contain;
}
.icon-option {
    background: url(../img/common/icon-checkbox.svg) no-repeat center / contain;
}
.icon-dia {
    background: url(../img/common/icon-dia.svg) no-repeat center / contain;
}
.icon-plus {
    display: block;
    min-width: 18px;
    height: 18px;
    background: url(../img/common/icon-plus.svg) no-repeat center / contain;
    align-self: center;
}
.block-price-ring__feature-desc {
    padding: 1.5em 2em;
    align-self: center;
}
.block-price-ring__feature-desc p:not(:last-of-type) {
    margin-bottom: 1em;
}
.block-engagement .block-price-ring__title {
    border-left: solid 8px #4A566C;
    border-bottom: solid 1px #4A566C;
}
.block-engagement .block-price-ring__feature {
    border: 1px solid #4A566C;
}
.block-engagement .block-price-ring__feature-label {
    background: #4A566C;
	color: #fff;
}
.block-engagement .icon {
	filter: invert(100%);
}
.block-engagement .icon-plus {
	filter: invert(0%);
}
@media screen and (max-width: 767px) {
    .block-price-ring__title {
        padding: .6em 1em;
    }
    .block-price-ring__features {
        flex-direction: column;
        padding-top: 0;
    }
    .block-price-ring__feature-label {
        padding: 1em;
    }
    .block-price-ring__feature-desc p {
        text-align: center;
    }
}
@media screen and (max-width: 599px) {
    .block-price-ring__feature-label .icon {
        min-width: 12px;
        height: 12px;
    }
}

.block-course__title {
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 1em;
}
.block-course__title::before {
    content: "";
    display: block;
    min-width: 10px;
    height: 10px;
    background: #DDDED8;
}
.block-course {
    display: grid;
    grid-template-columns: repeat(4, 1fr); 
    gap: 20px 16px;
    padding: 0 0 20px 0;
}
.block-course__item {
    background: #DDDED8;
}
.block-course__link {
    height: 100%;
    text-decoration: none;
    color: #000;
}
.block-course__image {
	aspect-ratio: 9 / 5;
}
.block-course__image img {
	display: block;
    height: 100%;
    object-fit: cover;
}
.block-course__desc {
    font-size: 10px;
}
.block-course__detail {
	font-size: 10px;
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.more-icon {
	display: block;
	aspect-ratio: 30 / 5;
	background: url(../img/common/link-arrow.svg)  no-repeat center / contain;
	min-width: 40px;
}
.block-engagement .block-course__title::before,
.block-engagement .block-course__item {
	background: #4A566C;
}
.block-engagement .block-course__item {
	border: solid 1px #4A566C;
}
.block-engagement .block-course__text {
	color: #FFF;
}
.block-engagement .more-icon {
	filter: invert(100%);
}
@media screen and (max-width: 767px) {
    .block-course {
        grid-template-columns: repeat(1, 1fr); 
    }
	.block-course__item {
		position: relative;
		padding: 10px 0;
	}
	.block-course__item::after {
		content: "";
		width: 100%;
		height: 24%;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
	}
	.block-course__link {
		display: flex;
	}
	.block-course__image {
		aspect-ratio: 150 / 110;
		margin: 0 10px;
		position: relative;
        z-index: 1;
		flex: 1;
	}
	.block-course__text {
		position: relative;
		z-index: 1;
		height: 75%;
		margin-top: auto;
		flex: 1;
		padding-right: 10px;
		display: flex;
		flex-direction: column;
	}
	.block-course__name {
		font-size: 15px;
	}
	.block-course__detail {
		font-size: 12px;
	}
}
@media screen and (min-width: 768px) {
	.block-course__link {
		display: grid;
		grid-template-rows: auto 1fr;
	}
	.block-course__image {
		position: relative;
	}
	.block-course__image::after {
		content: "";
		width: 100%;
		height: 50%;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
	}
	.block-course__image img {
		position: relative;
		z-index: 1;
	}
	.block-course__image {
		padding: 0 20px;
	}
	.block-course__text {
		display: flex;
		flex-direction: column;
		gap: 1em;
		padding: 1em 20px;
	}
	.block-course__name {
		font-size: 12px;
		text-align: center;
	}
}

.home .section-craft__link {
	margin-right: 0;
}
.section-craft__link__subtext {
	display: block;
	font-size: max(10px, min(3vw,14px) );
	margin: 0 0 .6em 0;
}
.more-icon {
	transition: translate 0.4s ease-out;
}
.block-course__link:hover .more-icon {
	translate: 20% 0;
}
@media screen and (max-width: 767px) {
	.block-price-ring .section-craft__link {
		margin-right: calc(-27.5rem / 12);
		padding-right: calc(27.5rem / 12);
	}
	.block-price-ring .section-craft__link::before {
		width: 100%;
	}
}

.btn-container {
	padding: calc(50em / 13) 0;
}

/* FAQ */
.how-Faq {
	overflow: hidden;
	font-size: calc(13em / 12);
	padding-top: calc(50em / 13);
	padding-bottom: calc(50em / 13);
}
.how-Faq_List {
	padding: 0 0 calc(27.3em / 13) 0;
}
.how-Faq_List dt {
	position: relative;
	font-size: 14px;
	line-height: 1.6;
	padding: 1em 1em 1em 6px;
	display: flex;
	align-items: center;
	gap: 16px;
	cursor: pointer;
}
.how-Faq_List dt::before {
	content: "";
	display: block;
	min-width: 26px;
	height: 26px;
	background: url(../img/common/icon-faq.svg) no-repeat center / contain;
}
.home .how-Faq_List dt::before,
.hoem .how-Faq_arrow {
	margin-top: calc(1em + 2px);
}
.how-Faq_text::before {
	content: "";
	display: block;
	min-width: 26px;
	height: 26px;
	background: url(../img/common/icon-ans.svg) no-repeat center / contain;
}
.how-Faq_List dd {
	max-height: 0;
	line-height: 2.46154;
	overflow: hidden;
	transition: 0.5s max-height cubic-bezier(0.075, 0.82, 0.165, 1);
	border-bottom: solid 1px #000;
}
.close + .how-Faq_a {
	padding: 1em 2em 1em 6px;
    border-top: solid 1px #000;
	background: rgba(255, 255, 255, 0.40);
}
.how-Faq_text {
	display: flex;
	gap: 16px;
	font-size: 14px;
	line-height: 1.6;
}
.faq-tag {
	font-size: 12px;
	color: #C6946F;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 1em;
}
.faq-tag::before {
	content: "";
	display: block;
	min-width: 10px;
	height: 10px;
	background: url(../img/common/icon-tag.svg) no-repeat center / contain;
}
.how-Faq_arrow {
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	min-width: 1em;
	height: 1em;
	border: 0.1em solid #C6946F;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);
	align-self: center;
    /* margin-top: calc(1em + 12px); */
	margin-left: auto;
	transition: .5s;
}
.how-Faq_a {
	padding-left: 6px;
}
.close .how-Faq_arrow {
	transform: rotate(315deg);
}
@media (min-width: 48em) {
	.how-Faq {
		font-size: medium;
	}
	.how-Faq .page-Section_Title {
		text-align: center;
	}
	.how-Faq_List {
		font-size: calc(14em / 14);
	}
}

/* AFTER CARE */
.sec-after-care {
	overflow: hidden;
}
.block-aftercare__heading {
	font-size: max(16px, min(3vw,18px) );
	border-bottom: solid 1px #000;
	padding: .5em;
	display: flex;
	align-items: center;
	gap: 16px;
}
.block-aftercare__heading .icon {
	display: block;
	min-width: 47px;
	height: 32px;
}
.icon-handshake {
	background: url(../img/3set/after-icn1.svg?var=2) no-repeat center / contain;
}
.icon-strength {
	background: url(../img/3set/after-icn5.svg?var=2) no-repeat center / contain;
}
.icon-track {
	background: url(../img/3set/after-icn6.svg?var=2) no-repeat center / contain;
}
.block-aftercare__desc {
	font-size: 14px;
	margin: 1.5em 0;
}
.block-aftercare__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px 20px;
}
.block-aftercare__item {
	position: relative;
	background: #E5E0CE;
	padding: 10px 15px;
	display: flex;
	gap: 12px;
}
.block-aftercare__item::after {
	content: "";
	width: 30px;
	aspect-ratio: 1;
	clip-path: polygon(0 0,100% 0,0 100%);
	background: #C6946F;
	position: absolute;
	top: 0;
	left: 0;
}
.block-aftercare__icon {
	min-width: 56px;
	align-self: center;
}
.block-aftercare__item-title,
.block-aftercare__item-desc {
	font-size: 12px;
}
.block-aftercare__item-title {
	text-align: center;
	margin-bottom: .6em;
}
@media screen and (max-width: 767px) {
	.block-aftercare__list {
		grid-template-columns: repeat(1, 1fr);
	}
}

.block-aftercare__container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	padding: 30px 0;
}
@media screen and (max-width: 767px) {
	.block-aftercare__container {
		grid-template-columns: repeat(1, 1fr);
	}
}
@media screen and (min-width: 768px) {
	.block-aftercare__list {
		padding-bottom: 30px;
	}
	.block-aftercare__box {
		display: flex;
		flex-direction: column;
	}
	.block-aftercare__image {
		padding: 0 16px;
		margin-top: auto;
	}
}

/* FLOW OF THE DAY */
.home-flow {
	overflow: hidden;
}
.home-flow-bg {
	background: #e5e0ce;
	padding: calc(80em / 16) 0 calc(55em / 16);
}
.flow-steps {
	padding: 30px 0;
	list-style: none;
}
.flow-step {
	position: relative;
	flex: 1;
	line-height: 1.8;
	background: #fff;
}
.flow-step__num {
	font-family: 'Antro Vectra', sans-serif;
	display: block;
	font-weight: 700;
	filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.10));
	background: #F4F3ED;
	padding: .5em 1em 0 1em;
	position: absolute;
    left: -14px;
    top: -18px;
}
.flow-step__num::after {
	content: "";
	width: 14px;
    aspect-ratio: 1;
    clip-path: polygon(0 0,100% 0,100% 100%);
    background: #DDDED8;
    position: absolute;
	bottom: -14px;
    left: 0;
}
.flow-step__text {
	padding: 16px;
}
.flow-step__title {
	font-size: calc(15em / 16);
	text-align: center;
	margin: .5em 0 1em 0;
}
.flow-step__desc {
	font-size: calc(15em / 16);
}
@media screen and (max-width: 767px) {
	.flow-steps {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 30px 15px;
		padding-top: 16px;
	}
	.flow-step__num {
		left: -10px;
		top: -18px;
	}
	.flow-step__num::after {
		width: 10px;
		bottom: -10px;
		left: 0;
	}
	.flow-step__title {
		margin: 0 0 .6em 0;
	}
	.flow-step__text {
		padding: 16px 10px;
	}
}
@media screen and (min-width: 768px) {
	.flow-steps {
		list-style: none;
		display: flex;
		justify-content: space-between;
	}
	.flow-step__arrow {
		display: block;
		min-width: 15px;
		height: 15px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		align-self: center;
		margin: 0 8px 0 0;
	}
}

/* ABOUT DESIGN */
.home-about-design .st-Width h2,
.home .home-line-up h2,
.home .home-flow h2,
.home .home-story-of-two h2,
.home .home-after-care h2,
.home .home-qa h2,
.sec-campaign h2{
	font-size: calc(30em / 16);
    font-weight: lighter;
}
.home .home-line-up .st-Width h2 + p,
.home .home-flow .st-Width h2 + p,
.home .home-after-care .st-Width h2 + p,
.home .home-qa .st-Width h2 + p{
	margin: calc(50em / 16) 0;
}
.home .home-line-up .st-Width h2 span,
.home .home-line-up h2 span,
.home .home-flow h2 span,
.home .home-story-of-two h2 span,
.home .home-after-care h2 span,
.home .home-qa h2 span,
.home .home-about-design h2 span,
.sec-campaign h2 span{
	display: block;
	margin-top:1.3em;
}

@media screen and (max-width: 767px) {
	.about-section__partition {
		aspect-ratio: 375 / 210;
	}
	.about-section__image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.home-about-design {
	padding: calc(88em / 16) 0 calc(40em / 16);
}
.about-design-txt {
	margin: calc(50em / 16) 0  calc(50em / 16) 0;
}
.about-design-txt p {
	text-align: center;
	font-size: calc(17rem / 16);
    letter-spacing: 0.1em;
    line-height: 1.7;
}
.about-design-txt p {
	margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
	.home-about-design {
		padding: calc(88em / 16) 0 calc(80em / 16);
	}
	.about-design-txt p {
		text-align: left;
	}
}

.tabs__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 26px;
}
.tabs__item {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: max(16px, min(3vw,20px) );
	border-radius: 5px;
	background: #F2F1EB;
	box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.25) inset;
	opacity: .5;
	text-align: center;
	padding: .8em 1em;
	letter-spacing: 0.2em;
	cursor: pointer;
}
.tabs__item:hover,
.tabs__item.is-active {
	background: rgba(255, 255, 255, 0.80);
	box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.25);
	opacity: 1;
}
@media screen and (max-width: 767px) {
	.tabs__list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}
}

.tabs__content {
	padding: calc(60em / 16) 0 0 0;
}
.tabs__panel {
	display: none;
}
.tabs__panel.is-active {
	display: block;
}
.tabs__text {
	font-size: calc(17rem / 16);
	letter-spacing: 0.1em;
	line-height: 1.7;
	margin-bottom: 1.5em;
}
.tabs__text:last-child {
	margin-bottom: 0;
}
.tabs-items {
	padding: 24px 0 0 0;
}
.metal-items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 34px 48px;
}
.metal-item__name {
	font-size: calc(17rem / 16);
	margin-bottom: .8em;
}
.metal-item__desc {
	font-size: calc(17rem / 18);
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.tabs-items {
		padding: 10px 0 0 0;
	}
	.metal-items {
		gap: 30px 20px;
	}
	.metal-item__body {
		padding: 1em 0 0 0;
	}
}
@media screen and (min-width: 768px) {
	.metal-item {
		display: grid;
		grid-template-columns: 160px 1fr;
		gap: 15px;
	}
}

.tf-items {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 60px 25px;
}
.tf-item__name {
	font-weight: 700;
	margin: 1em 0 .5em 0;
}
.tf-item__name,
.tf-item__desc {
	font-size: calc(17rem / 18);
}
.tf-item__desc {
	line-height: 2;
} 
@media screen and (max-width: 767px) {
	.tf-items {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 12px;
	}
}

.birthstone-items {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 15px 24px;
}
.birthstone-item__body {
	padding: 1em 0 0 0;
}
.birthstone-item__name {
	font-weight: 700;
}
.birthstone-item__name,
.birthstone-item__desc {
	font-size: calc(17rem / 18);
	text-align: center;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.birthstone-items {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}
}

/* handmade */
.marriage-ring-cource__headgroup {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.marriage-ring-cource__headgroup::after {
    content: "";
    display: block;
    width: 1px;
    height: 2.8333333333em;
    background-color: #000;
    margin-top: 1.3333333333em;
}
.marriage-ring-cource__headgroup .marriage-ring-cource__subheadline img{
	width: 50%;
    display: block;
    margin: 0 auto;
}
.page-Title {
    margin-bottom: calc(28.2em / 21);
}
.page-Text {
	margin :60px 0;
}
.sec-boxlist2 .ring{
	margin-top:80px;
}
.handmade-item-container {
    width: 750px;
    margin: 0 auto;
}
.handmade-item-box{
	width: 750px;
    margin: 0 auto;
	padding: 2em;
    background-color: #fff;
    display: flex;
	align-items: center;
    gap: 1em;
}
#contents .handmade-item-container{
	background-color: #ebeced;
    width: 100%;
}
.handmade-item-link {
	text-decoration: none;
	color: #000;
}
.hand-Course_Text .more-icon {
    display: block;
    aspect-ratio: 10 / 1;
    background: url(../img/common/link-arrow.svg) no-repeat right / contain;
    /* min-width: 40px; */
	width: min(100%, 140px);
	margin-left: auto;
}
@media screen and (max-width: 767px) {
	.marriage-ring-cource__headgroup .marriage-ring-cource__subheadline{
		width: 6.7em;
	}
	#contents .sec-boxlist2{
		background-color: transparent;
	}
	.handmade-item-box{
		width: 100%;
		flex-direction: column;
	}
	#contents .page-Section{
		/* padding:0; */
	}
	.handmade-cource{
		background-color: #e1e2dc;
		padding-bottom: 30px;
	}
	.handmade-item-container .st-Width{
		margin: 30px 0;
	}
}
.consultation-cta {
	margin-bottom:10em;
}

/* handmade/marriage-ring/wax/ */
.er-complete .marriage {
	padding-top: 4rem;
	background-color: transparent;
	color:#000;

}
.er-complete .marriage h1{
	font-size: 1.4rem;
	letter-spacing: 0.3em;
	padding-bottom: 1.4rem;
}
.er-complete .marriage h1{
	border-bottom: solid 1px #000;
    margin-bottom: 2rem;
}
.marriage .st-Width .img-main,
.marriage .st-Width .txt-main{
	margin-bottom: 2rem;
	line-height: 2.5em;
}
.er-complete .marriage .detail {
	width: 50%;
    margin: 0px auto;
	position: relative;
    background-color: #fff;
    color: #000;
    padding: 1.5rem;
}
.er-complete .marriage .detail dl {
	display: flex;
    flex-wrap: wrap;
}
.er-complete .marriage .detail dl dt {
    padding: 5px;
    width: 90px;
    border-bottom: 1px solid #b6b6b6;
}
.er-complete .marriage .detail dl dd {
    padding: 5px;
    width: calc(100% - 90px);
    border-bottom: 1px solid #b6b6b6;
}
.marriage-ring-btn {
    display: flex;
    flex-direction: column;
    gap: 2.3333333333em;
    align-items: center;
    margin: 2em auto;
}
.marriage-ring-btn__label {
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
}
label {
    cursor: pointer;
}
.marriage-ring-btn__icon {
    position: absolute;
    top: 50%;
    left: 10%;
    font-size: 1.5em;
    transform: translateY(-50%);
}
.marriage-ring-btn__icon::before {
    content: "\f101";
    font-family: myfonticons !important;
    font-style: normal;
    font-weight: normal !important;
    vertical-align: top;
}
.marriage-ring-btn__notice {
	text-align: center;
    letter-spacing: 0.1em;
    color: #AB7862;
}
.st-Inner {
	width: min(100%, 980px);
	margin-inline: auto;
}
.Lead-text {
	line-height: 2;
	padding: 60px 0;
	letter-spacing: 0.2em;
}
@media (max-width: 767px) {
	.Lead-text {
		padding: 30px 0;
	}
}
.reason{
	padding-top: 100px;
}
.reason .st-Width .reason-title{
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
	text-align: left;
	padding-bottom: 0;
	letter-spacing: 0.3em;
	font-size: calc(21em / 16);
	line-height: 2;
	margin-bottom: calc(30.3em / 21);
}
.reason .point {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
	margin-right: auto;
	margin-left: auto;
	padding-right: 4.375rem;
	padding-left: 4.375rem;
	max-width: 70rem;
	width: 100%;
}
.reason .point .item {
	width: 49%;
	position: relative;
	padding-bottom: 80px;
	/* margin-bottom: 2rem; */
}
.reason .point-wax-bg01 {
    background: url(../img/handmade/point-wax-bg01.jpg) no-repeat;
}
.reason .point-wax-bg02 {
    background: url(../img/handmade/point-wax-bg02.jpg) no-repeat;
}
.reason .point-wax-bg03 {
    background: url(../img/handmade/point-wax-bg03.jpg) no-repeat;
}
.reason .point-wax-bg04 {
    background: url(../img/handmade/point-wax-bg04.jpg) no-repeat;
}
.reason .point-engraving-bg01 {
    background: url(../img/handmade/point-engraving-bg01.jpg) no-repeat;
}
.reason .point-engraving-bg02 {
    background: url(../img/handmade/point-engraving-bg02.jpg) no-repeat;
}
.reason .point-bg {
	background-size: cover;
    position: relative;
	aspect-ratio: 4/3;
	/* height: 25vw; */
    padding-right: 2.2916666667rem;
    padding-left: 2.2916666667rem;
}
.reason .point-bg-txt {
    color: #fff;
    position: absolute;
    bottom: 2rem;
    max-width: 100%;
    line-height: 2;
    font-size: 1.3333333333em;
}
.reason .point-txt {
	padding: 2rem 0 0;
}
.reason .point .item .point-txt .btn-info{
margin-top:1.5em;
}
.point-txt .btn-info .arrow-down {
	width: 60%;
	height: auto;
	padding: 0.5rem;
	background-color: #E0E0D9;
    color: #000;
}
.btn-info span {
    margin-right: 0.5rem;
}
.i-arrow_b {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-image: url(../img/handmade/engagement-ring/complete/i-arrow_b.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 1rem;
}
.page-howto-child .sec-how-to {
	padding:0 0 calc(180em / 16) 0;
	margin: 0;
}
.handmade-h2-bg{
	height: 300px;
	margin-bottom: 4rem;
    position: relative;
}
.page-howto_wax .sec-how-to .handmade-h2-bg{
	background: url(../img/handmade/marriage-ring/text-bg-01.jpg) no-repeat ;
	background-size: cover;
}
.page-howto_wax .sec-how-to:has(#wax-course.is-active) .handmade-h2-bg,
.page-howto_engraving .sec-how-to .handmade-h2-bg{
	background: url(../img/handmade/marriage-ring/text-bg-03.jpg) no-repeat ;
	background-size: cover;
}
.page-howto_homemadering .sec-how-to .handmade-h2-bg{
	background: url(../img/handmade/marriage-ring/text-bg-04.jpg) no-repeat center top;
	background-size: cover;
}
.handmade-h2-bg .st-Width h2{
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
	position: absolute;
    line-height: 2;
    font-size: 1.5em;
    color: #fff;
	top: 50%;
	bottom: auto;
}
.handmade-h2-bg .st-Width h2 span{
	margin-left: 1rem;
    font-size: 0.8333333333em;
	display: inline-block;
}
.text-center{
	text-align: center;
	margin: calc(30em / 16) 0 calc(80em / 16);
    letter-spacing: 0.1em;
    line-height: 1.7;
}
.sec-marriage-ring-design {
	overflow: hidden;
}
.sec-marriage-ring-design .handmade-h2-bg{
	background: url(../img/handmade/marriage-ring/text-bg-02.jpg) no-repeat ;
	background-size: cover;
}
.workshop .handmade-h2-bg{
	background: url(../img/handmade/text-bg-03.jpeg) no-repeat ;
	background-size: cover;
}

.sec-marriage-ring-design h3 {
    background-color: #E0E0D9;
    color: #000000;
    margin-bottom: 1rem;
    padding: 0.5rem 1.5rem;
}
.sec-marriage-ring-design .design-txt {
	margin-bottom: 2rem;
}
.img-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.img-list2 {
	gap: 18px;
}
.img-list2 .item {
	display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}
.cta_block{
	width: 100%;
    margin-top: 2em;
    margin-bottom: 1.5rem;
    text-align: right;
    font-size: 1.0625rem;
}
.cta_block a {
	position: relative;
	display: inline-block;
    border-bottom: 1px solid #000;
    padding: 0.15em 0 0.15em 1.5em;
    color: #000;
    text-decoration: none;
}
.cta_block a .bar {
	position: absolute;
	left: 99%;
	bottom: -1px;
    width: 100%;
	height: 100%;
	border-bottom: 1px solid #000;
}
.item-text-b,
.item-text{
	text-align: center;
}
.item-text-b{
    font-weight: bold;
}
.sec-marriage-ring-design .special-diamond,
.sec-marriage-ring-design .stone-retainer{
    background-color: #fff;
    padding-top: 2.2916666667rem;
    padding-bottom: 2.2916666667rem;
    margin-bottom: 2.2916666667rem;
}
.sec-marriage-ring-design .stone-retainer {
	margin-bottom: 4.5833333334rem;
}
.sec-marriage-ring-design .stone-retainer .img-list{
	margin-bottom:0;
}
.sec-marriage-ring-design .special-diamond{
	display: flex;
        justify-content: space-between;
	align-items: center;
}

.sec-marriage-ring-design h4{
	line-height: 2;
    margin-bottom: 2rem;
    padding-bottom: 1.19375em;
    position: relative;
}
.sec-marriage-ring-design h4:after {
    background-color: #000;
    content: "";
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 2.125em;
}
.sec-marriage-ring-design .special-diamond .column-img,
.sec-marriage-ring-design .special-diamond .column-txt {
	width: 48%;
}
.special-diamond .column-txt p{
	line-height: 2em;
    margin-bottom: 1rem;
}
.sec-marriage-ring-design .img-list-4{
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
	gap: 18px;
}

.sec-marriage-ring-design .img-list-4 .item {
    width: calc(33.2% - 18px);
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}
.workshop .list{
	display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
}
.workshop .list .item {
    width: 48%;
	display: flex;
    gap: 5%;
    padding-bottom: 2.7rem;
    position: relative;
    }
.workshop .list .item a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
.workshop .list .item .item-img{
    width: 60%;
}
.workshop .list .item .item-txt {
    width: 35%;
    display: flex;
    align-items: end;
}
.workshop .list .item .item-txt .item-txt-warp {
    width: 100%;}
 .workshop .list .point {
    padding: 0.75em 0;
    margin-bottom: 0.6rem;
}
.workshop .list .point span {
    border: 1px solid #878378;
    padding: 0.75em 0.5em;
}
.workshop .list .item h4{
	position: relative;
    margin-bottom: 0;
    padding-bottom: 0.6rem;
}
.workshop .list .item h4 .ja {
    display: block;
}
.workshop .list .item h4 .en {
    display: block;
	font-size: 1rem;
	font-family: "Amiri", "Noto Serif JP", serif;
    font-style: italic;
    }
.workshop h4:after {
    background-color: #000;
    content: "";
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}
.sec-kit {
    background: #e0e0df;
    margin-top: calc(170em / 16);
    padding: calc(85em / 16) 0 calc(110em / 16);
    text-align: center;
}
.sec-kit h2 {
    font-size: calc(26em / 16);
    padding: 0 55px;
    display: inline-block;
    border-bottom: 1px solid #000;
    margin-bottom: calc(62rem / 16);
}
.sec-kit h2 + p {
    font-size: calc(17em / 16);
    margin: 0 auto calc(65em / 16);
}
.sec-kit .flex {
	display: flex;
    justify-content: space-between;
    margin-bottom: calc(60rem / 16);
    line-height: 2;
    letter-spacing: 0.1em;
    align-items: center;
    margin-bottom: 0;
}
.sec-kit .img-wrap {
    width: 60.9%;
}
.sec-kit ul {
    list-style: none;
    text-align: left;
}
.sec-campaign .flex {
    flex-wrap: wrap;
    display: flex;
	margin-bottom: calc(15rem / 16);
    line-height: 1.7;
    letter-spacing: 0.1em;
	justify-content: center;
    gap: calc(20em / 16);
}
.sp-br {
	display:none;
}
@media (max-width: 767px) {
	.er-complete .marriage .detail {
		width: 100%;
		margin:0;
	}
	.sp-br{
		display:block;
	}
	.reason .point {
		flex-direction: column;
		padding:0;
	}
	.reason .point .item {
		width: 100%;
		padding-bottom: 30px;
	}
	.point-title{
		margin:0 calc(27.5rem / 12)  calc(27.5rem / 12)  calc(27.5rem / 12);
	}
	.page-howto_engraving .sec-how-to .handmade-h2-bg,
	.page-howto_wax .sec-how-to .handmade-h2-bg,
	.page-howto_homemadering .sec-how-to .handmade-h2-bg,
	.workshop .handmade-h2-bg,
	.sec-marriage-ring-design .handmade-h2-bg  {
		background-size: cover;
		height: 30vw;
		margin-bottom: 2rem;
	}
	.text-center {
		text-align: left;
	}
	.page-howto-child .sec-how-to {
		padding-bottom:30px;
	}
	.img-list {
		margin-bottom: 30px;
	}
	.sec-marriage-ring-design .special-diamond {
		flex-direction: column;
	}
	.sec-marriage-ring-design .special-diamond .column-img,
	.sec-marriage-ring-design .special-diamond .column-txt {
		width: 100%;
	}
	.special-diamond .column-img .column-header{
		display: flex;
		gap: 1em;
	}
	.special-diamond .column-img .column-header .column-title{
		width: calc(60% - 1em);
	}
	.special-diamond .column-img .column-header .column-title-img{
		width: 40%;
	}
	.workshop .list {
		flex-direction: column;
	}
	.workshop .list .item {
		width: 100%;
	}
	.engraving .img-list-4 {
		flex-direction: column;
	}
	.engraving .img-list-4 .item {
		width: 100%;
		justify-content: space-between;
		flex-direction: row;
	}
	.engraving .img-list-4 .item .item-l,
	.engraving .img-list-4 .item .item-r {
		width: 48%;
	}
	.sec-kit .flex {
		flex-direction: column;
	}
	.sec-kit .img-wrap {
		width: 100%;
	}
	.sec-kit ul {
		margin-top: calc(35em / 16);
	}
	.img-list2,
	.sec-marriage-ring-design .img-list-4 {
	}
	.cta_block a .bar {
		display: none;
	}
}

/* /handmade/engagementring/ */

.marriage-ring-cource__child-list .engagementring {
	background-image: linear-gradient(#4A576C, #4A576C);
	background-color: #fff;
}
.engagementring .marriage-ring-cource__childitem-title,
.engagementring .marriage-ring-cource__childitem-text {
	color:#fff;
}
.marriage-ring-cource__child-item:not(.engagementring) .marriage-ring-cource__childitem-icon {
	filter: invert(1);
}
.marriage-ring-cource .cta-btn.--dark-blue {
	background-color:#4A576C ;
}
.marriage-ring-cource .marriage-ring-btn__notice.--dark-blue {
	color: #4A576C;
}

.marriage-ring .consultation-cta {
    margin-top: 0em ;
}
.marriage-ring .consultation-cta .consultation-cta__body.engagementring {
	background-image: linear-gradient(#4A576C, #4A576C);
	background-color: #fff;
}
.marriage-ring .consultation-cta__body.engagementring .consultation-cta__link   {
	color:#fff;
	border-bottom: 1px solid #fff;
}
.special-offer-box {
	overflow: hidden;
	padding: 4rem 0 0 0;
}
.st-Campaign .tns-item {
	padding-right: calc(80em / 16);
	width: calc((400em + 80em) / 16) !important;
}
.st-Campaign_Title {
	font-size: calc(21em / 16);
	margin-bottom: calc(26em / 21 - 0.25em);
}
.st-Campaign_Title::before {
    content: attr(data-n) ".";
    margin-right: 1em;
}
@media (max-width: 768px) {
	.marriage-ring .marriage-ring-cource {
		margin-top: 8.3333333333em;
	}
	.marriage-ring .consultation-cta .consultation-cta__body.engagementring {
		/* background-image: linear-gradient(#4A576C, #4A576C); */
		background: #ffffff00;
	}
	.consultation-cta--engagementring {
		background-image: linear-gradient(#4A576C, #4A576C);
		background-size: 100%;
	}
	.consultation-cta--engagementring .consultation-cta__headline,
	.consultation-cta--engagementring .consultation-cta__text {
		filter: invert(1);
	}
	.marriage-ring .consultation-cta__link   {
		color:#000;
		border-bottom: 1px solid #000;
	}
	.marriage-ring .consultation-cta {
		margin-top: 10em;
		padding:0 0 3em 0;
	}
	.marriage-ring .consultation-cta__headline{
		margin-top: 3em;
		margin-bottom:1em;	
	}
}

/* /handmade/engagementring/course/ */
.st-Section.special-offer {
	overflow: hidden;
}
.sec-reservation-inner {
	padding: 4rem calc(27.5rem / 12) 0 calc(27.5rem / 12);
}
.sec-reservation-inner p {
	color: #fff;
}

/* Nav */
.icon-diamond {
	display: block;
	min-width: 20px;
	height: 20px;
	background: url(../img/common/icon-diamond-ring.svg) no-repeat center / contain;
}
.icon-pairring {
	display: block;
	min-width: 20px;
	height: 20px;
	background: url(../img/common/icon-pair-ring.svg) no-repeat center / contain;
}
.icon-reserve {
	display: block;
	min-width: 20px;
	height: 20px;
	background: url(../img/common/icon-calendar.svg) no-repeat center / contain;
}
.nav-item {
	position: relative;
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: 16px;
	border-bottom: solid 1px #eee;
	padding: .6em 0;
	margin: 0 0 6px 0;
}
.nav-item,
.nav-sub__title,
.nav-other__item {
	display: flex;
	align-items: center;
	gap: 1em;
}
.nav-item::after,
.nav-sub__title::after,
.nav-other__item::after {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-top: .5px solid #000;
	border-right: .5px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.nav-item__link {
	display: flex;
	align-items: center;
	gap: 4px;
}
.nav-item__link,
.nav-sub__link,
.nav-other__link {
	color: #000;
	text-decoration: none;
}
.nav-sub {
	padding: 1em;
	margin: 0 0 .5em 0;
}
.nav-sub__title {
	font-size: 16px;
}
.nav-sub__item {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 13px;
	margin: 1.2em 0 0 1.4em;
}
.nav-sub__item::before {
	content: "";
	min-width: 6px;
	height: 1px;
	background: #000;
}
.nav-other__title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: 12px;
	border-bottom: solid 1px #eee;
	padding: .6em 0;
	margin: 1.8em 0 1.2em 0;
}
.nav-other__item {
	font-size: 10px;
	margin-top: 1.5em;
}
.st-Header_Sns {
	display: flex;
	align-items: center;
	gap: 12px;
}
.st-Header_Sns > li {
	display: grid;
	place-content: center;
}
.st-Header_Sns .sns-icon {
	min-width: 20px;
    height: 20px;
    filter: invert(1);
}
.tag-blog {
	font-size: 10px;
	display: inline-block;
	border-radius: 3px;
	border: solid 1px #000;
	color: #000;
	padding: 0 .4em;
	text-decoration: none;
}
.nav-btn {
	width: min(100%, 340px);
}
.nav-btn__link {
	position: relative;
	border-radius: 999px;
	background: #AD7862;
	box-shadow: 0 5px 30px 0 rgba(0, 0, 0, 0.10);
	color: #fff;
	text-decoration: none;
	font-size: 16px;
	padding: .8em 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1.2em;
}
.nav-btn__link::after {
	content: "";
	min-width: 30%;
	height: 1px;
	background: #fff;
}
@media (max-width: 767px) {
	.st-Gnav {
		padding: 34px 0 100px 0;
	}
	.st-Gnav_Container {
		padding-right: calc(27.5rem / 12);
		padding-left: calc(27.5rem / 12);
	}
	.nav-sub {
		padding: .5em 1em;
		margin-bottom: 10px;
	}
	.sp-ac-nav:has(.is-active) {
		background: #F4F3ED;
	}
	.sp-ac-nav .nav-sub__title::after {
		border-top: 0;
		border-right: 0;
		-webkit-transform: rotate(0);
		transform: rotate(0);
		background: url(../img/common/icon-plus.svg) no-repeat center / contain;
	}
	.sp-ac-nav .nav-sub__title.is-active::after {
		background: url(../img/common/icon-minus.svg) no-repeat center / contain;
	}
	.sp-ac-nav .nav-sub__title > .nav-sub__link {
		pointer-events: none;
	}
	.nav-sub__title ~ .nav-sub__item {
		opacity: 0;
		height: 0;
		margin-top: 0;
	}
	.nav-sub__title.is-active ~ .nav-sub__item {
		opacity: 1;
		height: auto;
		margin: 1.2em 0 1.2em 1.4em;
	}
	.nav-btn {
		display: none;
		margin: 60px auto;
	}
}
@media (min-width: 768px) {
	.st-Gnav_Container {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 100px;
	}
	.nav-item__link::after {
		content: "";
		min-width: 100px;
		height: 1px;
		background: #000;
		position: absolute;
		left: 0;
		bottom: 0;
		transform: scale(0, 1);
		transform-origin: left top;
		transition: transform 0.3s;
	}
	.nav-item__link:hover::after {
		transform: scale(1, 1);
	}
	.nav-sub__link:hover,
	.nav-other__link:hover {
		opacity: 0.3;
		text-decoration: underline;
	}
	.nav-sub:hover {
		background: #F4F3ED;
	}
	.nav-btn__link:hover,
	.st-Header_Sns > li > a:hover {
		opacity: 0.8;
	}
	.nav-btn {
		margin: 0 0 32px;
	}
}

/* Faq page */
.faq-container {
	justify-content: center;
}
.section__subheadline {
	font-size: 18px;
	font-weight: 700;
	text-align: center;
}
.faq-nav {
	width: min(100%, 750px);
	list-style: none;
	margin: 0 auto 60px auto;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}
.faq-nav_item {
	position: relative;
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: 12px;
	background: #fff;
	text-align: center;
}
.faq-nav_item::before {
	content: "";
	width: 16px;
	height: 16px;
	background: url(../img/common/faq-nav_fram_l.svg) no-repeat top left / contain;
	position: absolute;
	top: 4px;
	left: 4px;
}
.faq-nav_item::after {
	content: "";
	width: 16px;
	height: 16px;
	background: url(../img/common/faq-nav_fram_r.svg) no-repeat bottom right / contain;
	position: absolute;
	bottom: 4px;
	right: 4px;
}
.faq-nav_item a {
	color: #000;
	text-decoration: none;
	display: block;
	padding: 1em;
}
.faq-nav_item a:hover {
	opacity: .5;
}
.faq-cat-title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: max(16px, min(3vw,22px) );
	font-weight: 300;
	margin-bottom: 24px;
}
.faq-cat-title::after {
	content: "";
	display: block;
	width: 100px;
	height: .5px;
	background: #C6946F;
	margin: 10px 0 0 0;
}
@media (max-width: 767px) {
	.faq-nav {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 599px) {
	.faq-nav {
		grid-template-columns: repeat(1, 1fr);
	}
}
@media (min-width: 768px) {
	.faq-container {
		/* margin: 4rem auto; */
	}
	.faq-list_box {
		padding: 20px 0 0 0;
	}
}

/* インタビュー */
.story-mv {
	position: relative;
	width: min(100%, 1120px);
	margin-inline: auto;
}
.story-mv_image {
	width: min(100%, 980px);
	margin-inline: auto;
}
.story-mv_image video {
	display: block;
	width: 100%;
    aspect-ratio: 980 / 550;
}
@media (max-width: 767px) {
	.story-mv {
		margin-top: -16vw;
	}
	.Story-Hero_Slide {
		padding: 0 30px;
	}
}
@media (min-width: 768px) {
	.story-mv::after {
		content: "";
		width: min(100%, 980px);
		aspect-ratio: 980/520;
		opacity: 0.5;
		background: #E1E1DA;
		position: absolute;
		left: 0;
		bottom: -90px;
		z-index: -1;
	}
}

.Story-slider {
	position: relative;
	overflow: hidden;
	padding: 250px 0 160px 0;
}
.Story-Hero_Slide  {
	width: min(100%, 1120px);
	margin-inline: auto;
}
@media (max-width: 767px) {
	.Story-slider {
		padding: 100px 0 60px 0;
	}
}
@media (min-width: 768px) {
	.Story-Hero_Slide {
		padding: 0 24px;
	}
}

/* Slider Nav */
.Story-slider .tns-nav {
	font-family: "Amiri", "Noto Serif JP", serif;
	right: 0;
    left: 0;
	text-align: center;
	padding: 80px 0 0 0;
}
.Story-slider button[data-controls="prev"] {
	appearance: none;
	display: block;
	width: 60px;
	height: 50px;
	background: url(../img/story/slider-arrow.svg) no-repeat center / contain;
	border: 0;
    text-indent: -1000vw;
	position: absolute;
    left: 0;
    top: calc(50% - 25px);
	transform: rotate(180deg);
	z-index: 1;
}
.Story-slider button[data-controls="next"] {
	appearance: none;
	display: block;
	width: 60px;
	height: 50px;
	background: url(../img/story/slider-arrow.svg) no-repeat center / contain;
	border: 0;
    text-indent: -1000vw;
	position: absolute;
    right: 0;
    top: calc(50% - 25px);
	z-index: 1;
}
@media (max-width: 767px) {
	.Story-slider .tns-nav {
		padding: 56px 0 0 0;
	}
	.Story-slider button[data-controls="prev"] {
		left: -20px;
		height: 40px;
		top: calc(50% - 20px);
	}
	.Story-slider button[data-controls="next"] {
		right: -20px;
		height: 40px;
		top: calc(50% - 20px);
	}
}

/* Story Slder1 */
@media (max-width: 767px) {
	.story-slide_title1 {
		padding: 0 0 90px 0;
	}
	.story-img1 {
		margin-left: -30px;
		padding-right: 30px;
	}
}
@media (min-width: 768px) {
	.story-slide1_box {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.story-slide_title1 {
		margin-top: 8em;
	}
	.story-img1 {
		width: 70%;
		margin-right: -90px;
	}
}

/* Story Slder2 */
@media (max-width: 767px) {
	.story-img2 {
		width: 70%;
		margin-inline: auto;
	}
	.story-slide_title2 {
		text-align: center;
		padding: 1.5em;
	}
}
@media (min-width: 768px) {
	.story-slide2_box {
		display: flex;
		align-items: center;
		gap: 24px;
	}
	.story-img2 {
		width: min(100%, 465px);
	}
	.story-slide_title2 {
		flex: 1;
		display: grid;
		justify-content: center;
	}
}

/* Story Slder3 */
.story-slide3 {
	position: relative;
}
.story-slide3::after {
	content: "";
	aspect-ratio: 950/300;
	width: calc(100% * 950 / 1120);
	background: #E1E1DA;
	position: absolute;
	top: 80px;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	margin: auto;
}
.story-slide3_box {
	display: flex;
}
.story-img3_1 {
	width: calc(100% * 700 / 1120);
}
.story-img3_2 {
	width: calc(100% * 380 / 1120);
}
@media (max-width: 767px) {
	.story-slide3::after {
		aspect-ratio: 200/120;
		top: 0;
	}
	.story-slide3_box {
		flex-direction: column;
	}
	.story-slide_title3 {
		padding: 1.5em;
		text-align: center;
	}
	.story-img3_2 {
		margin-left: auto;
	}
}
@media (min-width: 768px) {
	.story-slide3_box {
		justify-content: space-between;
        align-items: flex-end;
	}
	.story-slide_title_container3 {
		width: calc(100% * 480 / 1120);
		padding-left: 24px;
	}
	.story-slide_title3 {
		padding: 2.5em 0;
	}
	.story-img3_1 {
		margin-left: -90px;
		padding-bottom: 12%;
	}
	.story-img3_2 {
		width: 100%;
		margin: 0 0 0 auto;
		padding-left: 60px;
	}
}

/* Story Slder4 */
.story-img4_container {
	display: flex;
	gap: 30px;
}
.story-slide_title4_indetnt {
	margin-left: 8em;
}
@media (max-width: 767px) {
	.story-img4_container {
		width: 60%;
		gap: 15px;
		margin-left: auto;
	}
}

/* Story Slder5 */
.story-slide5_box {
	display: flex;
}
.story-img5_1 {
	width: calc(100% * 570 / 1120);
}
.story-img5_2 {
	width: calc(100% * 380 / 1120);
}
.story-slide_title5 {
	text-align: right;
}
.story-slide_title5_indetnt {
	margin-right: 10em;
}
@media (max-width: 767px) {
	.story-slide5_box {
		flex-direction: column;
	}
	.story-slide_title5 {
		padding: 1.5em;
		text-align: center;
	}
	.story-img5_1 {
		margin-left: auto;
	}
	.story-slide_title5 {
		text-align: right;
	}
}
@media (min-width: 768px) {
	.story-slide5_box {
		flex-direction: row-reverse;
		justify-content: space-between;
        align-items: flex-end;
	}
	.story-slide_title_container5 {
		width: calc(100% * 500 / 1120);
		padding-right: 24px;
	}
	.story-slide_title5 {
		padding: 2.5em 0;
	}
	.story-img5_1 {
		padding-bottom: 12%;
	}
	.story-img5_2 {
		width: 100%;
		padding-right: 60px;
	}
}

/* Story Slder6 */
.story-slide6 {
	position: relative;
}
.story-slide6::after {
	content: "";
	aspect-ratio: 700/260;
	width: calc(100% * 800 / 1120);
	background: #E1E1DA;
	position: absolute;
	top: 80px;
	left: 0;
	right: 0;
	bottom: 30px;
	z-index: -1;
	margin: auto auto 0 auto;
}
.story-slide6_box {
	display: flex;
}
.story-img6_1 {
	width: calc(100% * 720 / 1120);
}
.story-img6_2 {
	width: calc(100% * 360 / 1120);
}
@media (max-width: 767px) {
	.story-slide6::after {
		aspect-ratio: 260/100;
		top: 0;
	}
	.story-slide6_box {
		flex-direction: column;
	}
	.story-img6_1 {
		width: 90%;
		margin: 0 -30px 12px auto;
	}
}
@media (min-width: 768px) {
	.story-slide6_box {
		flex-direction: row-reverse;
		justify-content: space-between;
        align-items: flex-end;
	}
	.story-slide_title5 {
		padding: 2.5em 0;
	}
	.story-img6_1 {
		padding-bottom: 12%;
	}
	.story-img6_2 {
		padding-right: 60px;
	}
}

.story-block {
	overflow: hidden;
	padding-bottom: 80px;
}
.story-block__inner {
	width: min(100%, 1120px);
	margin-inline: auto;
}
.story-block__box {
	width: min(100%, 980px);
    margin-inline: auto;
}
.story-block__image {
	position: relative;
}
@media (max-width: 767px) {
	.story-block__image {
		padding: 0 30px 50px 30px;
	}
	.story-block__image::after {
		content: "";
		width: 100%;
		height: 50%;
		background: #E1E1DA;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: -1;
	}
	.story-block__text {
		padding: 50px 30px;
		text-align: center;
	}
}
@media (min-width: 768px) {
	.story-block__inner {
		background: #E1E1DA;
		padding: 80px 30px;
	}
	.story-block__box {
		display: flex;
		flex-direction: row-reverse;
		gap: 24px;
		align-items: center;
		justify-content: space-between;
	}
	.story-block__image {
		width: 70%;
		margin-right: -110px;
	}
}

/* Story list */
.story-Story {
	position: relative;
	overflow: hidden;
	z-index: 1;
	background-color: #ebeced;
	padding: 80px 0;
}
.story-interview__title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 2em 0;
}
.story-interview__title::before {
	content: "";
	min-width: 30px;
	height: 1px;
	background: #000;
}
.story-interview__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px 60px;
	letter-spacing: 0.2em;
	line-height: 2;
	list-style-type: none;
}
.story-interview__item {
	position: relative;
	background: #fff;
}
.story-interview__item::before {
	content: "";
	width: 28px;
	aspect-ratio: 1;
	clip-path: polygon(0 0,100% 0,0 100%);
	background: #C6946F;
	position: absolute;
	top: 0;
	left: 0;
}
.story-interview__link {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	background: #fff;
	text-decoration: none;
	padding: 16px;
}
.story-interview__image {
	width: 130px;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.story-interview__desc {
	flex: 1;
	display: flex;
	flex-direction: column;
}
.story-interview__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0 1em;
}
.story-interview__tag {
	font-size: 11px;
	display: flex;
	align-items: center;
	gap: 2px;
	text-decoration: none;
}
.story-interview__tag::before {
	content: "";
	display: block;
	min-width: 10px;
	height: 12px;
	flex-shrink: 0;
	aspect-ratio: 5/6;
	background: url(../img/story/icon-tag.svg) no-repeat center / contain;
}
.story-interview__text {
	font-size: 12px;
	color: #000;
	border-bottom: solid 1px #000;
}
@media (max-width: 767px) {
	.story-Story {
		padding: 40px 0;
	}
	.story-interview__list {
	  grid-template-columns: repeat(1, 1fr);
	  gap: 24px;
	}
	.story-interview__image {
		width: 120px;
	}
	.story-interview__text {
		margin: 0 -16px 0 0;
		padding: 1em 16px 1em 0;
	}
}
@media (min-width: 768px) {
	.story-interview__list-wrapper {
		padding-bottom: 40px;
	}
	.story-interview__text {
		width: min(100%, 300px);
		padding: 1em 16px 1.5em 0;
		margin: auto -16px 16px auto;
	}
}

/* ページネーション */
.pagination-container {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	padding: 60px 0 0 0;
}
.page-numbers:not(.next):not(.prev) {
	font-size: max(14px, min(3vw,18px) );
	display: grid;
	place-content: center;
	aspect-ratio: 1/1;
	border-radius: 999px;
	width: min(100%, 28px);
}
.page-numbers {
	font-family: "Amiri", "Noto Serif JP", serif;
	text-decoration: none;
	color: #000;
}
.page-numbers.current {
	background: #000;
	color: #fff;
}
.page-numbers.next,
.page-numbers.prev {
	font-size: 12px;
	letter-spacing: .1em;
	line-height: 1;
}
.page-numbers.next::after {
	content: "";
	display: block;
	background: url(../img/common/nav-arrow.svg) no-repeat center right / contain;
	min-width: 14px;
	height: 4px;
    margin-right: -.6em;
}
.page-numbers.prev::after {
	content: "";
	display: block;
	background: url(../img/common/nav-arrow.svg) no-repeat center right / contain;
	min-width: 14px;
	height: 4px;
    margin-left: -.6em;
	transform: scaleX(-1);
}
@media (max-width: 767px) {
	.pagination-container {
		padding: 24px 0 0 0;
	}
	.page-numbers.next {
		margin-left: auto;
	}
	.page-numbers.prev {
		margin-right: auto;
	}
}
@media (min-width: 768px) {
	.page-numbers.next {
		margin-left: 4em;
	}
	.page-numbers.prev {
		margin-right: 4em;
	}
}

/* 検索フォーム */
.search-filter__form {
	border-radius: 15px;
	border: 0.5px solid #C6946F;
	background: rgba(255, 255, 255, 0.70);
	padding: 1em;
	margin: 0 0 30px 0;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
.search-filter__group {
	border: 0;
}
.js-filter-all,
.js-filter-item {
	width: 0;
    height: 0;
}
.search-filter__item {
	border-radius: 10px;
	font-size: 14px;
	border: 1px solid #C6946F;
	color: #C6946F;
	background: #FFF;
	padding: 0 1em;
}
.search-filter__item:not(.search-filter__all) {
	padding: 0 1em 0 .5em;
	display: flex;
	align-items: center;
	gap: 2px;
}
.search-filter__item:not(.search-filter__all)::before {
	content: "";
	display: block;
	min-width: 10px;
	height: 12px;
	background: url(../img/common/icon-tag-fill.svg) no-repeat center / contain;
}
.search-filter__item:has([type="checkbox"]:checked) {
	background: #C6946F;
	color: #fff;
}
.search-filter__item:not(.search-filter__all):has([type="checkbox"]:checked)::before {
	mix-blend-mode: plus-lighter;
}
.search-result-title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: max(16px, min(3vw,20px) );
	letter-spacing: .1em;
	margin-bottom: 30px;
}
@media (max-width: 767px) {
	.search-filter__form {
		flex-direction: column;
	}
	.search-filter__group:first-of-type {
		border-bottom: solid 1px #C6946F;
		padding-bottom: 10px;
	}
	.search-filter__group {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
	}
}
@media (min-width: 768px) {
	.search-filter__group[data-tax="store"] {
		display: grid;
		grid-template-columns: repeat(5, 1fr);
		gap: 10px;
	}
	.search-filter__group[data-tax="ring_type"] {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
	}
	.search-filter__group:first-of-type {
		border-right: solid 1px #C6946F;
		padding-right: 10px;
	}
}

/* インタビュー詳細 */
.interview-Article_Content p {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 1em;
	letter-spacing: 0.2em;
    line-height: 2;
}
.interview-Article_Hero {
	width: min(100%, 800px);
	margin-inline: auto;
	padding: 40px 0;
}
.interview-Article_Content {
	width: min(100%, 550px);
	margin-inline: auto;
	counter-reset: item;
}
@media (max-width: 767px) {
	.interview-Article_Hero {
		padding: 20px 0 0 0;
	}
}

.interview-Article_Content h2 {
	font-size: calc(14em / 10);
	letter-spacing: .1em;
	counter-increment: item;
	display: flex;
	align-items: center;
	justify-content: center;
}
.interview-Article_Content h2::before {
	content: counter(item, decimal-leading-zero);
	font-size: calc(14em / 12);
	color: #C6946F;
	border: solid 1px #C6946F;
	display: grid;
    place-content: center;
    border-radius: 999px;
    width: 2em;
    height: 2em;
	clip-path: inset(0 10% 0 0);
}
@media (min-width: 768px) {
	.interview-Article_Content h2 {
		/* font-size: calc(14em / 12); */
	}
}

.interview-Article_Content h3:not(.table-of-contents__title) {
	font-size: calc(14em / 10);
	margin: 1.5em 0;
}
.interview-Article_Content p {
	margin-bottom: 1em;
}
.interview-Article_Content .wp-block-image + .wp-block-image {
	margin: 16px 0 0 0;
}

/* 目次 */
.table-of-contents {
	width: 100%;
	background: #fff;
	padding: 30px 15px;
	margin: 40px auto 120px auto;
}
.table-of-contents__title {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: max(16px, min(3vw,22px) );
	letter-spacing: .1em;
	width: min(100%, 240px);
	margin-inline: auto;
	padding-bottom: 1em;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 10px;
}
.table-of-contents__title::before,
.table-of-contents__title::after {
	content: "";
	flex: 1;
	height: .5px;
	background: #000;
	margin-bottom: 6px;
}
.table-of-contents__list {
	width: min(100%, 240px);
	margin-inline: auto;
	counter-reset: item;
	list-style: none;
}
.table-of-contents__list li {
	font-family: "Amiri", "Noto Serif JP", serif;
	font-size: max(14px, min(3vw,14px) );
	counter-increment: item;
	display: flex;
    gap: 10px;
}
.table-of-contents__list li:not(:last-of-type) {
	margin-bottom: 1em;
}
.table-of-contents__list li::before {
	content: counter(item, decimal-leading-zero) ". ";
}
.table-of-contents__link {
	text-decoration: none;
	color: #000;
	flex: 1;
}
@media (max-width: 767px) {
	.table-of-contents {
		margin: 40px auto 80px auto;
	}
}

/* 店舗詳細 */
.store-info-block {
	padding: calc(80em / 20) calc(27.5rem / 12);
	margin: 0 calc(50% - 50vw);
}
.store-info-container {
	width: min(100%, 980px);
	margin-inline: auto;
}
.store-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.store-name {
	font-size: calc(14em / 12);
	margin-bottom: 1em;
}
.store-tags {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-bottom: 1.5em;
}
.store-tag {
	font-size: calc(14em / 16);
	border: solid .5px #000;
	padding: .2em .5em;
    text-align: center;
}
.store-meta_list {
	display: grid;
	grid-template-columns: 5em 1fr;
	gap: .8em .5em;
}
.store-meta_list dd > span {
	font-size: calc(14em /20);
}
.store-map {
	aspect-ratio: 4/3;
	padding: 30px 0 0 0;
}
.store-map iframe {
	display: block;
	width: 100%;
	height: 100%;
}
@media (max-width: 767px) {
	.store-info-block {
		padding: calc(47em / 12) calc(27.5rem / 12);
	}
	.store-image {
		aspect-ratio: 8/7;
		margin-bottom: 1em;
	}
	.store-tags {
		grid-template-columns: repeat(2, 1fr);
	}
	.store-meta_list dd > span {
		font-size: calc(14em /16);
	}
}
@media (min-width: 768px) {
	.store-info-container {
		display: flex;
		gap: 60px;
	}
	.store-image,
	.store-meta {
		flex: 1;
	}
	.store-image {
		aspect-ratio: 46/60;
	}
}

.related-Story {
	overflow: hidden;
	margin: 0 calc(50% - 50vw);
	padding: calc(80em / 20) calc(50vw - 50%);
}
.related-Story .story-interview__title::before {
	min-width: 80px;
	height: 10px;
	background: #EBECED;
}
@media (max-width: 767px) {
	.related-Story .story-interview__title::before {
		min-width: 40px;
		height: 8px;
	}
}

/* 3set */
.ct-reservation {
	padding: 2em 0;
}

.point-3set-1 {
	background: url("../img/handmade/3set/3set-bg-p01.jpg")
    no-repeat;
}
.point-3set-2 {
	background: url("../img/handmade/3set/3set-bg-p02.jpg")
    no-repeat;
}
.point-3set-3 {
	background: url("../img/handmade/3set/3set-bg-p03.jpg")
    no-repeat;
}
.point-3set-4 {
	background: url("../img/handmade/3set/3set-bg-p04.jpg")
    no-repeat;
}

.flow-page-box {
	margin: 0;
}
.flow-page-box .tab-nav.tab-nav--center {
	width: min(100%, 740px);
	margin: 0 auto 3rem auto;
}
#set-course .home-price.bg-gray {
	background: #F5F5F6;
}
@media (min-width: 768px) {
	.btn-grid {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		gap: 0 20px;
		margin-inline: auto;
	}
	.btn-grid .btn-info {
		width: 30%;
	}
	.er-complete .btn-grid .btn-info .arrow-down {
		width: 100%;
	}
}

/* order made */
#ordermade-course .btn-grid {
	padding: 0 0 4rem 0;
}
.point-order-1 {
	background: url("../img/ordermade/ordermade-bg-p01.jpg")
    no-repeat;
}
.point-order-2 {
	background: url("../img/ordermade/ordermade-bg-p02.jpg")
    no-repeat;
}
.handmade-h2-bg--ordermade {
	background: url("../img/ordermade/ordermade-bg-t01.jpg")
    no-repeat center right / cover;
}

.order-hand-Ring-container {
	padding-top: 75px;
	background: #fff;
}
.order-hand-Ring {
	display: flex;
	flex-wrap: wrap;
  }
  
  .order-hand-Ring div {
	box-sizing: border-box;
	width: calc((100% - 70px) / 3);
	margin-right: 35px;
	margin-bottom: 75px;
  }
  
  .order-hand-Ring div:nth-of-type(3n + 3) {
	margin-right: 0;
  }
  
  .order-hand-Ring div dd img {
	width: 100%;
	margin-bottom: 28px;
  }
  
  .order-hand-Ring div dt {
	font-weight: 600;
	font-size: 16px;
	font-family: "Amiri", "Noto Serif JP", serif;
	letter-spacing: 0.075em;
	text-align: center;
  }
  
  .order-hand-Ring div dt span {
	margin-left: 40px;
  }
  
@media (max-width: 767px) {
	.order-hand-Ring-container {
		padding-top: 30px;
	}
	.order-hand-Ring {
		justify-content: space-between;
	}
	.order-hand-Ring div {
		margin-right: 0;
		width: 45%;
		margin-bottom: 30px;
	}
	.order-hand-Ring div dt span {
		margin-left: 5px;
	}
	.order-hand-Ring div dt {
		font-size: 14px;
	}
	.order-hand-Ring div dd img {
		margin-bottom: 5px;
	}
}

/* Style 調整 */
#gallery-page-container {
	padding-bottom: 4rem;
}
@media (max-width: 767px) {
	#handmade-ring-benefits.st-Section .st-Width {
		padding-bottom: 0;
	}
	.st-Reservation_Container {
		padding-bottom: 4rem;
	}
}
@media (min-width: 768px) {
	.sec-marriage-ring-design {
		padding-bottom: 4rem;
	}
	.page-three-set {
		padding-top: 100px;
	}
}

.pt-0 {
	padding-top: 0 !important;
}

.notes-text {
	font-size: max(10px, min(2vw,12px) );
}