@charset "utf-8";

.font-yumin {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "Meirio", "MS PGothic", "Hiragino Kaku Gothic ProN", "Osaka", "sans-serif";
}

.font-garamond {
	font-family: 'EB Garamond', serif;
}

.font-arno {
	font-family: arno-pro, serif;
}

.inview {
	opacity: 0;
}

#gift img {
	image-rendering: -webkit-optimize-contrast;
}

/*footer {
    margin-top: 0px;
}*/

.scrolled main {
	padding-top: calc(130px + var(--fsBannerHeight));
}

html {
	scroll-padding-top: 0px
}


#gift {
	margin: 0px;
	padding: 0px;
	color: #452c18;
}

footer {
	margin-top: 0px;
}


html {
	-webkit-font-smoothing: antialiased;
}

body {
	-webkit-font-smoothing: subpixel-antialiased;
}

main a:hover {
	text-decoration: none;
}

/* FAQ */
#gift .wrapping .wrapping-faq {
	width: 990px;
	margin: 0 auto;
	padding: 100px 0 93px;
}

#gift .wrapping .wrapping-faq h2 {
	margin: 0px;
	padding: 0px 0 24px;
	text-align: center;
	font-size: 2.8rem;
	line-height: 2.8rem;
	font-weight: 600;
	position: relative;
}

#gift .wrapping .wrapping-faq h2::after {
	content: "";
	display: block;
	width: 66px;
	height: 2px;
	background-color: #452c18;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
}

#gift .wrapping .wrapping-faq .tab-faq {
	margin: 0px;
	padding: 40px 0 0px;
}

#gift .wrapping .wrapping-faq dl {
	margin-bottom: 0px;
	position: relative;
}

#gift .wrapping .wrapping-faq dl:last-child {
	border-bottom: solid 1px #d6cfc4;
}

#gift .wrapping .wrapping-faq dt {
	color: #493528;
	font-size: 1.6rem;
	font-weight: 500;
	border-top: solid 1px #d6cfc4;
	border-left: solid 1px #d6cfc4;
	border-right: solid 1px #d6cfc4;
	line-height: 2.4rem;
}

#gift .wrapping .wrapping-faq dt a {
	display: block;
	background: #FFF;
	padding: 20px 20px 20px 60px;
	position: relative;
}

#gift .wrapping .wrapping-faq dt.open a {
	background: #FFF;
}


.fontawesome-i2svg-active #gift .wrapping .wrapping-faq dt a .fa-chevron-right {
	display: block;
}

.fontawesome-i2svg-active #gift .wrapping .wrapping-faq dt a .fa-chevron-down {
	display: none;
}

.fontawesome-i2svg-active #gift .wrapping .wrapping-faq dt a.open .fa-chevron-right {
	display: none;
}

.fontawesome-i2svg-active #gift .wrapping .wrapping-faq dt a.open .fa-chevron-down {
	display: block;
}


#gift .wrapping .wrapping-faq dt a svg {

	text-decoration: none;
	position: absolute;
	top: 50%;
	right: 20px;

	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
}

#gift .wrapping .wrapping-faq dt a .fa-chevron-right {
	font-size: 1.8rem;
}

#gift .wrapping .wrapping-faq dt a .fa-chevron-down {
	font-size: 1.8rem;
}

#gift .wrapping .wrapping-faq dt a:hover {
	text-decoration: underline;
}

#gift .wrapping .wrapping-faq dt span.t {
	font-size: 2rem;
	line-height: 2rem;
	color: #0066cc;
	position: absolute;
	left: 20px;
	/*top: 50%;
	
	 transform: translateY(-50%);
    -webkit- transform: translateY(-50%);*/
}

#gift .wrapping .wrapping-faq dd {
	overflow: hidden;
	height: auto;
	border-top: solid 1px #d6cfc4;
	border-left: solid 1px #d6cfc4;
	border-right: solid 1px #d6cfc4;
	padding: 20px 20px 20px 60px;
	display: none;
	background: #FFF;
	font-size: 1.6rem;
	line-height: 2.4rem;
	position: relative;
}

#gift .wrapping .wrapping-faq dd strong {
	font-size: 1rem;
	font-weight: bold;
}

#gift .wrapping .wrapping-faq .tab-faq dd span.t {
	font-size: 2rem;
	line-height: 2rem;
	color: #cc0000;
	position: absolute;
	left: 20px;
	/*top: 50%;
	 transform: translateY(-50%);
    -webkit- transform: translateY(-50%);*/
}

#gift .wrapping .wrapping-faq .tab-faq dd span.wrapping {
	position: relative;
	left: 0px;
	top: 0px;
	line-height: normal;
	color: #FFF;
	background: #9b8358;
	display: inline-block;
	padding: 1px 5px;
	margin-right: 5px;
	font-size: 1.2rem;
}

#gift .wrapping .wrapping-faq .tab-faq dd .example1 {
	margin-top: 10px;
	margin-bottom: 0px;
}

#gift .wrapping .wrapping-faq .tab-faq dd .example1-2 {
	margin-top: 10px;
	margin-bottom: 0px;
}

#gift .wrapping .wrapping-faq .tab-faq dd .example2 {
	margin-top: 20px;
	margin-bottom: 20px;
}

#gift .wrapping .wrapping-faq .tab-faq dd dl.tb {
	display: flex;
	flex-direction: row;
	margin: 0px;
	padding: 0px;
	width: 100%;
	border-width: 0px;
	border-style: none;
}

#gift .wrapping .wrapping-faq .tab-faq dd dl.tb dt {
	display: block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
	border-width: 0px;
	border-style: none;
	font-weight: 400;
}

#gift .wrapping .wrapping-faq .tab-faq dd dl.tb dd {
	display: block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
	border-width: 0px;
	border-style: none;
}

#gift .wrapping .wrapping-faq .tab-faq dd .ind {
	margin: 0px;
	padding: 20px 0px 0px;
}

/* =========================
            共通
========================= */
.font-capitalize {
	text-transform: capitalize;
}

.common__title {
	color: #aa883d;
	font-size: 7rem;
	line-height: 1;
	text-align: center;
	margin: 0 auto;
}

.common__sub-title {
	font-feature-settings: "palt";
	font-size: 3rem;
	line-height: 1;
	text-align: center;
	margin-top: 24px;
}

.common__text {
	font-feature-settings: "palt";
	font-size: 2rem;
	line-height: 1.5;
	text-align: center;
}

.common__obj {
	width: 248px;
	margin: 0 auto;
}

.section__line {
	display: inline-block;
	content: "";
	width: 100%;
	height: 18px;
	background-image: url(../../images/gift/gift_wrapping/20260402/line_section.png);
	background-repeat: repeat;
	background-size: contain;
	position: absolute;
	z-index: 30;
}

.new__icon {
	width: 157px;
	position: absolute;
	top: -11px;
	left: -11px;
}

.new__icon--s {
	width: 125px;
}

/* =========================
						kv
========================= */
.kv {
	position: relative;
}

.kv-text__wrapper {
	width: 52.9vw;
	text-align: center;
	position: absolute;
	top: 10vw;
	left: 0;
}

.kv__title img {
	width: 28.3vw;
}

.kv__lead {
	color: #3d3027;
	font-feature-settings: "palt";
	font-size: 1.5vw;
	line-height: 1;
	margin-top: 1.6vw;
}

/* =========================
					lead
========================= */
.lead {
	background-image: url(../../images/gift/gift_wrapping/20260402/bg_lead.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}

.lead__inner {
	padding: 84px 0 85px;
}

.lead__text {
	margin-top: 43px;
}

.btn__wrapper {
	width: 238px;
	height: 75px;
	background-image: url(../../images/gift/gift_wrapping/20260402/bg_btn.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	line-height: 75px;
	text-align: center;
	margin: 40px auto 0;
}

.btn__wrapper a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	font-feature-settings: "palt";
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	line-height: 65px;
}

/* =========================
				New Arrival
========================= */
.new-arrival {
	background-color: #f0eae2;
}

.new-arrival__inner {
	padding: 90px 0 120px;
}

.new-arrival__wrapper {
	display: flex;
	column-gap: 49px;
	justify-content: center;
	margin-top: 54px;
}

.organdy__img {
	width: 445px;
	position: relative;
}

.new-arrival-text__wrapper {
	padding-top: 30px;
}

.new-arrival__main-text {
	font-feature-settings: "palt";
	font-size: 2.6rem;
	text-align: center;
}

.new-arrival__text {
	margin-top: 45px;
}

/* =========================
				Wrapping Bag
========================= */
.wrapping-bag__inner {
	padding: 92px 0 0;
}

.wrapping-bag__obj {
	margin-top: 35px;
}

.wrapping-bag__text {
	margin-top: 35px;
}

/* オーガンジーバッグ */
.organdy__label {
	width: 493px;
	margin: 45px auto 0;
}

.organdy-detail__wrapper {
	display: flex;
	width: 817px;
	column-gap: 37px;
	margin: 35px auto 0;
}

.organdy__item {
	width: 390px;
	background-color: #f0eae2;
	padding: 19px 0 35px;
}

.organdy-item__img {
	width: 350px;
	margin: 0 auto;
	position: relative;
}

.item-name__text {
	font-feature-settings: "palt";
	font-size: 2.4rem;
	line-height: 1;
	text-align: center;
	margin-top: 24px;
}

.item-name__text--l {
	margin-top: 20px;
}

.item-size__text {
	font-feature-settings: "palt";
	font-size: 1.6rem;
	line-height: 1.1;
	text-align: center;
	margin-top: 20px;
}

.cart-btn__wrapper,
.normal-btn__wrapper {
	width: 210px;
}

.cart-btn__wrapper {
	margin: 25px auto 0;
}

.normal-btn__wrapper--search {
	margin: 40px auto 0;
}

.normal-btn__wrapper--back {
	margin: 60px auto 0;
}

.cart-btn,
.normal-btn__wrapper a {
	width: 100%;
	display: inline-block;
	background-color: #c19f4b;
	color: #fff;
	cursor: pointer;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	padding: 16px 0 18px;
	position: relative;
}

.cart-btn svg,
.normal-btn__wrapper a svg {
	font-size: 1.2rem;
	position: absolute;
	top: 50%;
	right: 17px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

/* コットン */
.cotton-item__wrapper {
	background-color: #f0eae2;
	margin-top: 74px;
	padding: 70px 0 89px;
	position: relative;
}

.cotton-sec__line {
	position: absolute;
	top: -7px;
	left: 50%;
	transform: translateX(-50%);
}

.cotton__label {
	width: 373px;
	margin: 0 auto;
}

.cotton-item__notes {
	font-size: 1.4rem;
	line-height: 1;
	text-align: center;
	margin-top: 15px;
}

.cotton-detail__wrapper {
	display: flex;
	width: 1010px;
	column-gap: 25px;
	margin: 60px auto 0;
}

.cotton__item {
	width: 320px;
	background-color: #fff;
	padding: 35px 0 32px;
}

.cotton__item--l {
	padding: 24px 0 32px;
}

.cotton-item__img {
	width: 139px;
	margin: 0 auto;
}

/* =========================
				How to Order
========================= */
.how-to-order {
	background-image: url(../../images/gift/gift_wrapping/20260402/bg_how_to_order.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding: 90px 0 101px;
}

.how-to-order__text-top {
	line-height: 1;
	margin-top: 50px;
}

.order-step__list {
	display: flex;
	width: 1173px;
	margin: 50px auto 0;
}

.order-step__item {
	width: 391px;
	text-align: center;
	padding-top: 20px;
	position: relative;
}

.order-step__item::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 330px;
	background-image: url(../../images/gift/gift_wrapping/20260402/line.png);
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
}

.order-step__item::before {
	left: 0;
}

.order-step__item:first-child::before {
	background-image: none;
}

.order-step__icon--1 {
	margin-top: 25px;
}

.order-step__icon--2 {
	margin-top: 22px;
}

.order-step__icon--3 {
	margin-top: 24px;
}

.order-step__title {
	font-feature-settings: "palt";
	font-size: 2.4rem;
	line-height: 1;
	margin-top: 20px;
}

.order-step__text {
	font-feature-settings: "palt";
	font-size: 1.6rem;
	line-height: 1.6;
	margin-top: 10px;
}

.how-to-order__text-bottom {
	margin-top: 66px;
}

.how-to-order__text-bottom a {
	text-decoration: underline;
}

.wrapping-bag-link-wrapper {
	width: fit-content;
	margin: 45px auto 0;
}

.wrapping-bag-link-wrapper a {
	display: inline-block;
	border-bottom: 1px solid #3d3027;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	padding: 0 0 5px 2px;
	position: relative;
}

.wrapping-bag-link-wrapper a svg {
	margin-left: 6px;
	color: #b8a156;
}

/* =========================
				Gift Box Kit
========================= */
.gift-box-kit__inner {
	padding: 80px 0 96px;
}

.common__obj--gift-box-kit {
	margin-top: 35px;
}

.gift-box-kit__text {
	margin-top: 43px;
}

.wrapping-bag-detail__wrapper {
	width: 945px;
	background-image: url(../../images/gift/gift_wrapping/20260402/frame_gift_wrapping.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	margin: 78px auto 0;
}

.wrapping-bag-detail__inner {
	display: flex;
	column-gap: 42px;
	padding: 39px 0;
}

.gift-wrapping__img {
	width: 406px;
	padding-left: 46px;
}

.wrapping-bag-detail-text__wrapper {
	text-align: center;
	padding-top: 15px;
}

.wrapping-bag-detail__main-text {
	font-feature-settings: "palt";
	font-size: 2.6rem;
	line-height: 1;
}

.wrapping-bag-detail__text {
	margin-top: 26px;
}