@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual {
	margin: 0 auto 7.7rem;
	width: 128rem;
}
.mainVisual .mvSlider {
	position: relative;
}
.mainVisual .mvSlider::before {
	width: 128.1rem;
	height: 96.7rem;
	position: absolute;
	left: 0;
	top: -0.4rem;
	background: url(../img/index/mv_bg.png) no-repeat center center / 100% 100%;
	content: '';
	z-index: 2;
}
.mainVisual .mvSlider li {
	padding: 0.6rem 0.7rem 0 0.8rem;
	display: block !important;
	position: relative;
}
.mainVisual .mvSlider li .pho {
	position: relative;
	overflow: hidden;
	aspect-ratio: 2528/1896;
	mask: url(../img/index/mv_mask.png) no-repeat center center / 100% 100%;
}
.mainVisual .mvSlider li img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: linear 9.5s;
}
.mainVisual .mvSlider li.active img {
	transform: scale(1.2);
}
.mainVisual .mvSlider .imgtext {
	width: 50.5rem;
	position: absolute;
	left: 50%;
	bottom: 18.1%;
	transform: translateX(-50%);
	z-index: 2;
}
.mainVisual .textBox {
	margin: -15.5rem auto 0;
	padding: 1.5rem 3rem 4rem;
	width: 100rem;
	text-align: center;
	position: relative;
	background: url(../img/index/bg01.png) no-repeat center top / 100%,
		url(../img/index/bg03.png) no-repeat center bottom / 100%;
	z-index: 2;
}
.mainVisual .textBox::before {
	width: 100%;
	height: calc(100% - 9rem);
	position: absolute;
	left: 0;
	top: 4.5rem;
	background: url(../img/index/bg02.png) repeat-y center top / 100% 2.5rem;
	content: '';
	z-index: -1;
}
.mainVisual .textBox .imgtext {
	margin-bottom: 1.8rem;
}
.mainVisual .textBox .imgtext img {
	width: 86.6rem;
}
.mainVisual .textBox .img01 {
	width: 23.1rem;
	position: absolute;
	left: 0.6rem;
	bottom: -2.6rem;
}
.mainVisual .textBox .img02 {
	width: 23.8rem;
	position: absolute;
	right: 0.7rem;
	bottom: -3.6rem;
}
.mainVisual .textBox p {
	line-height: 2;
	letter-spacing: -0.1em;
}
.mainVisual .textBox p .bold {
	color: #ba546a;
	font-weight: 700;
}
#main .sec01 {
	padding: 5.1rem 0 5.6rem;
	background: #FFFBF8;
	position: relative;
	z-index: 1;
}
#main .sec01 .innerBox {
	margin: 0 auto;
	padding: 1rem 0 0.6rem 3rem;
	width: 77rem;
	background: url(../img/index/bg04.png) no-repeat left top / 2.2rem,
		url(../img/index/bg05.png) no-repeat right top / 2.2rem,
		url(../img/index/bg04.png) no-repeat left bottom / 2.2rem,
		url(../img/index/bg05.png) no-repeat right bottom / 2.2rem,
		linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 2.1rem top 1rem / calc(100% - 4.2rem) 0.1rem,
		linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 2.1rem bottom 1.2rem / calc(100% - 4.2rem) 0.1rem;
}
#main .sec01 .subWrap {
	xpadding: 2.6rem 0 2.5rem 3rem;
	padding: 2.6rem 0 0;
	display: flex;
	gap: 2.6rem;
	flex-direction: column;
	xborder-bottom: 0.1rem solid #CCBEB0;
}
#main .sec01 .subWrap:last-child {
	border-bottom: none;
}
#main .sec01 .subWrap .inner {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 3.2rem;
}
#main .sec01 .shopList {
	margin-top: 0.8rem;
	width: 17.5rem;
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	flex-shrink: 0;
}
#main .sec01 .shopList li {
	padding: 0.8rem 0.5rem 0.7rem;
	width: 100%;
	color: #fff;
	font-weight: 500;
	font-size: 2rem;
	letter-spacing: -0.05em;
	text-align: center;
	background: #8E8276;
}
#main .sec01 .timeBox {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 1.9rem 0;
	color: #8E8276;
	font-weight: 700;
	line-height: 1;
}
#main .sec01 .timeBox .timeInner {
	width: 100%;
	display: flex;
	align-items: center;
}
#main .sec01 .timeBox .year {
	margin: 0.7rem 0.4rem 0 0;
	font-size: 2rem;
	display: block;
}
#main .sec01 .timeBox .month {
	font-size: 5.5rem;
	display: block;
}
#main .sec01 .timeBox .week {
	margin: 0.5rem 0 0 0.6rem;
	color: #C48F5F;
	font-size: 2.5rem;
	display: block;
}
#main .sec01 .timeBox .week01 {
	color: #cc4a5d;
}
#main .sec01 .timeBox .week02 {
	color: #679fa8;
}
#main .sec01 .timeBox .time01,
#main .sec01 .timeBox .time02 {
	display: flex;
	align-items: center;
}
#main .sec01 .timeBox .time02 {
	margin-left: 7.1rem;
	position: relative;
}
#main .sec01 .timeBox .time02::before {
	margin-top: 0.5rem;
	width: 3.8rem;
	height: 1.2rem;
	position: absolute;
	left: -5rem;
	top: 50%;
	transform: translateY(-50%);
	background: url(../img/index/bg06.png) no-repeat center center / 100%;
	content: '';
}
#main .sec01 .btnList01 {
	margin-right: 4.8rem;
	display: flex;
	justify-content: center;
	gap: 2rem;
}
#main .sec01 .btnList01 li {
	width: 27rem;
}
#main .sec01 .btnList01 li .imgtext {
	margin-bottom: 0.8rem;
	text-align: center;
}
#main .sec01 .btnList01 li .imgtext img {
	width: 21.4rem;
}
#main .sec01 .btnList01 li a {
	padding: 0.5rem 1rem;
	min-height: 5.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	color: #fff;
	font-size: 1.7rem;
	font-weight: 400;
	text-align: center;
	letter-spacing: -0.05em;
	border-radius: 5.5rem;
	background: #C9636F;
}
#main .sec01 .btnList01 li .btn01 a {
	background: #9463C6;
}
#main .sec01 .btnList01 li a:hover {
	opacity: 0.7;
}
#main .sec01 .btnList01 li a .arrow {
	margin-top: -0.4rem;
	font-size: 2.4rem;
	line-height: 1;
	display: block;
	letter-spacing: 0;
}
#main .sec01 .subWrap01 {
	padding-top: 2rem;
	padding-bottom: 3.4rem;
}
#main .sec01 .subWrap01 .shopList {
	margin-top: 0.6rem;
}
#main .sec01 .btnList02 {
	margin-left: -0.8rem;
	display: flex;
	gap: 1rem;
}
#main .sec01 .btnList02 li {
	width: 22rem;
}
#main .sec01 .btnList02 li a {
	padding: 0.9rem 0.5rem;
	display: block;
	text-align: center;
	color: #86b8bc;
	font-weight: 400;
	font-size: 1.3rem;
	letter-spacing: -0.05em;
	border-radius: 5rem;
	border: 0.1rem solid #86b8bc;
	background: #fff;
}
#main .sec01 .btnList02 li a:hover {
	opacity: 0.7;
}
#main .bnr {
	padding: 1.3rem 0 1.3rem;
	position: relative;
	text-align: center;
	background: linear-gradient(90deg, rgba(142, 130, 118, 0) 0%, rgba(187, 93, 117, 1) 30.57%, rgba(202, 63, 49, 1) 50.06%, rgba(187, 93, 117, 1) 71.9%, rgba(142, 130, 118, 0) 100%);
	z-index: 1;
	background-blend-mode: multiply;
}
#main .bnr::before {
	width: 100%;
	height: 0.4rem;
	position: absolute;
	left: 0;
	top: 0;
	border-top: 0.1rem solid #D1AA68;
	border-bottom: 0.1rem solid #D1AA68;
	box-sizing: border-box;
	content: '';
	z-index: 2;
}
#main .bnr::after {
	width: 100%;
	height: 0.4rem;
	position: absolute;
	left: 0;
	bottom: 0;
	border-top: 0.1rem solid #D1AA68;
	border-bottom: 0.1rem solid #D1AA68;
	box-sizing: border-box;
	content: '';
	z-index: 2;
}
#main .bnr img {
	width: 27rem;
}
#main .sec02 {
	padding-top: 4.6rem;
	position: relative;
	z-index: 1;
}
#main .sec02 .bgBox {
	position: relative;
	z-index: 1;
}
#main .sec02 .bgBox::before {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: url(../img/common/bg01.png) repeat center top / 25.4rem;
	mix-blend-mode: multiply;
	opacity: 0.15;
	content: '';
	user-select: none;
	pointer-events: none;
}
#main .sec02 h2 {
	margin-bottom: 1.2rem;
	text-align: center;
}
#main .sec02 h2 span {
	display: inline-block;
	padding: 0 0.5rem;
}
#main .sec02 h2 img {
	width: 52.1rem;
}
#main .sec02 .cTxt {
	margin-bottom: 8.7rem;
	color: #fff;
	line-height: 2;
	text-align: center;
}
#main .sec02 .secSub01 {
	padding-bottom: 15.1rem;
	background: #E2E2C4;
}
#main .sec02 .topImg {
	position: relative;
	background: #fff;
}
#main .sec02 .topImg img {
	width: 100%;
}
#main .sec02 h3 {
	width: 71.7rem;
	position: absolute;
	left: 50%;
	top: -6.5rem;
	transform: translateX(-50%);
	z-index: 1;
}
#main .sec02 h3 img {
	width: 100%;
}
#main .sec02 .innerBox {
	padding-top: 0.1rem;
	position: relative;
	z-index: 1;
}
#main .sec02 .innerBox::before {
	width: 100%;
	height: 39.5rem;
	position: absolute;
	left: 0;
	top: 0;
	background: url(../img/index/bg07.png) repeat-x center top 1rem / 10.7rem, linear-gradient(0deg, rgba(255, 251, 248, 0) 0%, rgba(255, 251, 248, 1) 34.91%);
	content: '';
	z-index: -1;
}
#main .sec02 .innerBox .imgWrap {
	margin: -25.5rem auto 2.8rem;
	max-width: 93.8rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row-reverse;
	gap: 4.2rem;
}
#main .sec02 .innerBox .img01 {
	margin: 0 auto 3rem;
	width: 15.4rem;
}
#main .sec02 .innerBox .img02 {
	width: 41.9rem;
}
#main .sec02 .innerBox .imgBox {
	margin-bottom: 3rem;
	display: flex;
	justify-content: space-between;
}
#main .sec02 .innerBox .imgBox .photoBox {
	width: 54rem;
}
#main .sec02 .innerBox .imgBox .photoBox img {
	width: 100%;
}
#main .sec02 .innerBox .imgBox .photoBox .note {
	margin-top: 0.6rem;
	display: block;
	text-align: center;
	font-size: 1.2rem;
}
#main .sec02 .innerBox .imgBox .textBox {
	margin-top: -3.6rem;
	width: 43.9rem;
}
#main .sec02 .innerBox .imgBox .textBox h4 {
	margin-bottom: 0.9rem;
	text-align: center;
}
#main .sec02 .innerBox .imgBox .textBox h4 img {
	width: 39.6rem;
}
#main .sec02 .innerBox .imgBox .textBox p {
	margin-bottom: 2.8rem;
	text-align: center;
	line-height: 1.93;
}
#main .sec02 .innerBox .imgBox .textBox .img {
	position: relative;
}
#main .sec02 .innerBox .imgBox .textBox .img .imgtext01,
#main .sec02 .innerBox .imgBox .textBox .img .imgtext02,
#main .sec02 .innerBox .imgBox .textBox .img .imgtext03 {
	width: 7.8rem;
	position: absolute;
	opacity: 0;
	transform: translateY(4rem);
	transition: .5s;
}
#main .sec02 .innerBox .imgBox .textBox .img.on .imgtext01,
#main .sec02 .innerBox .imgBox .textBox .img.on .imgtext02,
#main .sec02 .innerBox .imgBox .textBox .img.on .imgtext03 {
	opacity: 1;
	transform: translateY(0);
}
#main .sec02 .innerBox .imgBox .textBox .img .imgtext01 {
	top: 17.6rem;
	left: 13.3rem;
	transition-delay: 0.2s;
}
#main .sec02 .innerBox .imgBox .textBox .img .imgtext02 {
	top: 17.6rem;
	right: 0;
	transition-delay: 0.4s;
}
#main .sec02 .innerBox .imgBox .textBox .img .imgtext03 {
	bottom: 2rem;
	right: 11.4rem;
	transition-delay: 0.6s;
}
#main .sec02 .shopBox {
	padding: 5rem 4.9rem 5.1rem;
	position: relative;
	border-radius: 1.5rem;
	border: 0.1rem solid #8D7459;
	background: #fff;
}
#main .sec02 .shopBox::before {
	position: absolute;
	left: 0.8rem;
	top: 0.8rem;
	bottom: 0.8rem;
	right: 0.8rem;
	box-sizing: border-box;
	border-radius: 0.8rem;
	border: 0.2rem dotted #8D7459;
	content: '';
	pointer-events: none;
	user-select: none;
}
#main .sec02 .shopBox .ttlBox {
	margin-bottom: 0.3rem;
	display: flex;
}
#main .sec02 .shopBox .ttlBox .headLine01 {
	width: 41.2rem;
}
#main .sec02 .shopBox .ttlBox .timeBox {
	margin: 1.4rem -3rem 0 1.2rem;
	flex: 1;
}
#main .sec02 .shopBox .ttlBox .timeBox .mark {
	margin-bottom: 0.6rem;
	padding: 0.2rem 0.5rem 0.3rem;
	width: fit-content;
	min-width: 17.5rem;
	color: #fff;
	font-weight: 500;
	font-size: 2rem;
	letter-spacing: -0.05em;
	text-align: center;
	background: #8E8276;
}
#main .sec02 .shopBox .ttlBox .timeBox .time {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	color: #8e8276;
	font-weight: 700;
	line-height: 1;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .year {
	margin: 0.7rem 0.5rem 0 0;
	font-size: 2rem;
	letter-spacing: -0.02em;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .month {
	font-size: 5.5rem;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .week {
	margin-top: 0.4rem;
	color: #c48f5f;
	font-size: 2.5rem;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .week01 {
	color: #cc4a5d;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .timeSub01,
#main .sec02 .shopBox .ttlBox .timeBox .time .timeSub02 {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.6rem;
}
#main .sec02 .shopBox .ttlBox .timeBox .time .timeSub02 {
	padding-left: 7rem;
	background: url(../img/index/bg06.png) no-repeat left 2.1rem top 60% / 3.8rem;
}
#main .sec02 .shopBox .ttlBox .note {
	font-size: 1.5rem;
	font-weight: 500;
	color: #8e8276;
	text-align: center;
	margin: 0.6rem 3rem 0 0;
}
#main .sec02 .shopBox .ttlBox .note sup {
	font-size: 65%;
	display: inline-block;
	vertical-align: 0.2em;
}
#main .sec02 .shopBox .shopSub {
	margin-bottom: 2.5rem;
	padding: 1.8rem 2.1rem;
	display: flex;
	justify-content: space-between;
	gap: 4rem;
	background: url(../img/index/bg04.png) no-repeat left top / 2.2rem, url(../img/index/bg05.png) no-repeat right top / 2.2rem, url(../img/index/bg04.png) no-repeat left bottom / 2.2rem, url(../img/index/bg05.png) no-repeat right bottom / 2.2rem, linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 2.1rem top 1rem / calc(100% - 4.2rem) 0.1rem, linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 2.1rem bottom 1.2rem / calc(100% - 4.2rem) 0.1rem;
}
#main .sec02 .shopBox .shopSub .photoBox {
	margin-bottom: -8.6rem;
	width: 31.2rem;
	position: relative;
}
#main .sec02 .shopBox .shopSub .photoBox .imgtext {
	position: absolute;
	right: 0.5rem;
	bottom: -3.6rem;
	width: 24.1rem;
}
#main .sec02 .shopBox .shopSub .photoBox .imgtext img {
	animation: fuwafuwa 1.8s ease-in-out 0.5s alternate infinite;
}
#main .sec02 .shopBox .shopSub .textBox {
	display: flex;
	align-items: center;
	flex: 1;
}
#main .sec02 .shopBox .shopSub .textBox .inWrap {
	margin-bottom: 0.3rem;
	width: 100%;
	color: #8D7458;
}
#main .sec02 .shopBox .shopSub .textBox .subTtl {
	margin-bottom: 0.7rem;
	position: relative;
	font-weight: 700;
	color: #8D7458;
}
#main .sec02 .shopBox .shopSub .textBox .subTtl::before {
	width: 100%;
	height: auto;
	position: absolute;
	left: 0;
	top: 50%;
	border-top: 0.1rem dotted #8B7357;
	box-sizing: border-box;
	content: '';
}
#main .sec02 .shopBox .shopSub .textBox .subTtl span {
	display: inline-block;
	position: relative;
	letter-spacing: -0.02em;
	background: #fff;
	z-index: 1;
}
#main .sec02 .shopBox .shopSub .textBox .txtList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .sec02 .shopBox .shopSub .textBox .txtList > li {
	width: 50%;
}
#main .sec02 .shopBox .shopSub .textBox .txtList > li:nth-child(2n) {
	width: 42%;
}
#main .sec02 .shopBox .shopSub .textBox .listBox {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
#main .sec02 .shopBox .shopSub .textBox .subList {
	width: fit-content;
}
#main .sec02 .shopBox .shopSub .textBox .subList li {
	font-size: 1.5rem;
	line-height: 1.52;
	color: #56504A;
	letter-spacing: -0.1em;
}
#main .sec02 .shopBox .shopSub .textBox .text {
	color: #56504A;
	font-size: 1.5rem;
	line-height: 1.52;
}
#main .sec02 .shopBox .shopSub .textBox .text .sml {
	margin-top: -0.2rem;
	padding-left: 1em;
	display: block;
	text-indent: -1em;
	font-size: 80%;
	letter-spacing: -0.04em;
	line-height: 1.2;
}
#main .sec02 .shopBox .linkBox {
	margin-left: 35.4rem;
	text-align: center;
}
#main .sec02 .shopBox .linkBox .imgtext {
	margin-bottom: 0.2rem;
}
#main .sec02 .shopBox .linkBox .imgtext img {
	width: auto;
	max-height: 2.2rem;
}
#main .sec02 .shopBox .linkBox .price {
	margin-bottom: 1.5rem;
	font-weight: 700;
	color: #8d7458;
}
#main .sec02 .shopBox .linkBox .price .num {
	margin-left: 1.7rem;
	font-size: 2.4rem;
}
#main .sec02 .shopBox .linkBox .price .sml {
	font-size: 1rem;
}
#main .sec02 .shopBox .linkBox .btn {
	margin: 0 auto;
	width: 27rem;
}
#main .sec02 .shopBox .linkBox .btn a {
	padding: 1rem;
	min-height: 5.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-size: 1.7rem;
	letter-spacing: -0.04em;
	border-radius: 5rem;
	background: #C9636F;
}
#main .sec02 .shopBox .linkBox .btn a:hover {
	opacity: 0.7;
}
#main .sec02 .shopBox .linkBox .btn a .arrow {
	margin-top: -0.6rem;
	font-size: 150%;
	line-height: 1;
}
#main .sec02 .secSub02 {
	padding-bottom: 7rem;
	background: #DAECFA;
}
#main .sec02 .secSub02 .innerBox .imgWrap {
	margin-top: -39.7rem;
	margin-bottom: 2.2rem;
	max-width: 90rem;
}
#main .sec02 .secSub02 .innerBox .img01 {
	margin-bottom: 3.4rem;
	width: 13.4rem;
}
#main .sec02 .secSub02 .innerBox .imgBox {
	margin-bottom: 2.3rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox {
	margin-top: -1.8rem;
	width: 43.7rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox p {
	margin-bottom: 1.2rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext01,
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext02,
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext03 {
	width: 8.5rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext01 {
	top: 15.8rem;
	left: 12.6rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext02 {
	top: 15.8rem;
	right: 0;
}
#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext03 {
	bottom: 2rem;
	right: 11.3rem;
}
#main .sec02 .secSub02 .innerBox .imgBox .photoBox .note {
	margin-top: 0.4rem;
}
#main .sec02 .secSub02 .shopBox .shopSub {
	padding-top: 2.2rem;
}
#main .sec02 .secSub02 .shopBox .linkBox .btn a {
	background: #9463C6;
}
@media all and (max-width: 960px) {
	.mainVisual {
		margin-bottom: 24.4rem;
		width: auto;
	}
	.mainVisual .mvSlider {
		margin-bottom: 5.7rem;
	}
	.mainVisual .mvSlider::before {
		width: 100%;
		height: auto;
		top: -2.04vw;
		aspect-ratio: 750/1102;
		background-image: url(../img/index/mv_bg_sp.png);
	}
	.mainVisual .mvSlider li {
		padding: 0;
	}
	.mainVisual .mvSlider li .pho {
		aspect-ratio: 750/1074;
		mask-image: url(../img/index/mv_mask_sp.png);
	}
	.mainVisual .mvSlider .imgtext {
		width: 33rem;
		bottom: 10.7%;
	}
	.mainVisual .textBox {
		margin: 0 1.5rem 0 1rem;
		padding: 3.2rem 1rem 5.8rem;
		width: auto;
		background: url(../img/index/bg01_sp.png) no-repeat center top / 100% 8vw,
			url(../img/index/bg03_sp.png) no-repeat center bottom / 100% 8vw;
	}
	.mainVisual .textBox::before {
		height: calc(100% - 15.99vw);
		top: 8vw;
		background: url(../img/index/bg02_sp.png) repeat-y center top / 100% 8vw;
	}
	.mainVisual .textBox .imgtext {
		margin-bottom: 1.9rem;
	}
	.mainVisual .textBox .imgtext img {
		width: 31.3rem;
	}
	.mainVisual .textBox p {
		letter-spacing: -0.08em;
		line-height: 2.14;
	}
	.mainVisual .textBox .img01 {
		width: 19.9rem;
		left: -0.2rem;
		bottom: -17.6rem;
	}
	.mainVisual .textBox .img02 {
		width: 21.7rem;
		bottom: -23.2rem;
		right: -1.2rem;
	}
	#main .sec01 {
		padding: 3.9rem 0 2.6rem;
	}
	#main .sec01 .content {
		margin: 0 3.6rem;
	}
	#main .sec01 .innerBox {
		padding: 2rem 0.8rem;
		width: auto;
		background: url(../img/index/bg04.png) no-repeat left top / 1.8rem,
			url(../img/index/bg05.png) no-repeat right top / 1.8rem,
			url(../img/index/bg04.png) no-repeat left bottom / 1.8rem,
			url(../img/index/bg05.png) no-repeat right bottom / 1.8rem,
			linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 1.7rem top 0.9rem / calc(100% - 3.4rem) 0.1rem,
			linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 1.7rem bottom 1rem / calc(100% - 3.4rem) 0.1rem;
	}
	#main .sec01 .subWrap {
		padding: 3rem 0;
		display: block;
	}
	#main .sec01 .subWrap .inner {
		display: block;
	}
	#main .sec01 .shopList {
		margin: 0 auto 1.7rem;
		width: 20rem;
		gap: 1.5rem 0;
	}
	#main .sec01 .timeBox .timeInner {
		width: fit-content;
		flex-direction: column;
		align-items: flex-start;
	}
	#main .sec01 .timeBox .year {
		margin: 0 0 -0.5rem;
	}
	#main .sec01 .timeBox .time02 {
		margin-left: 10rem;
		margin-top: -0.5rem;
	}
	#main .sec01 .btnList01 {
		margin: 2.8rem auto 0;
		width: 27rem;
		max-width: 100%;
		flex-direction: column;
		gap: 3.2rem 0;
	}
	#main .sec01 .btnList01 li {
		width: 100%;
	}
	#main .sec01 .btnList01 li .imgtext img {
		width: 21.5rem;
	}
	#main .sec01 .subWrap01 {
		padding-top: 3.1rem;
		padding-bottom: 1rem;
	}
	#main .sec01 .subWrap01 .shopList {
		margin-top: 0;
		margin-bottom: 2.1rem;
	}
	#main .sec01 .btnList02 {
		margin: 0.8rem auto 0;
		width: 27rem;
		max-width: 100%;
		flex-direction: column;
		gap: 1.9rem;
	}
	#main .sec01 .btnList02 li {
		width: 100%;
	}
	#main .sec01 .btnList02 li a {
		padding: 1.2rem 1rem 1.5rem;
		font-size: 1.6rem;
	}
	#main .sec01 .btnList02 li a .arrow {
		display: inline-block;
		vertical-align: 0.1em;
	}
	#main .bnr {
		padding: 1.3rem 0 1.4rem;
		text-align: center;
		background: linear-gradient(90deg, #C35866 0%, rgba(202, 63, 49, 1) 50.06%, #C45661 100%);
	}
	#main .bnr img {
		width: 22.3rem;
	}
	#main .sec02 {
		padding-top: 4.2rem;
	}
	#main .sec02 h2 {
		margin-bottom: 0.9rem;
	}
	#main .sec02 h2 img {
		width: 31.6rem;
	}
	#main .sec02 .cTxt {
		margin-bottom: 11.7rem;
		line-height: 2.1;
	}
	#main .sec02 .secSub01 {
		padding-bottom: 11.4rem;
	}
	#main .sec02 h3 {
		width: 100%;
		top: -6rem;
	}
	#main .sec02 .innerBox .content {
		margin: 0;
	}
	#main .sec02 .innerBox::before {
		height: calc(320vw + 10rem);
		background: url(../img/index/bg07_sp.png) repeat-x center top 2rem / 10.7rem, linear-gradient(0deg, rgba(255, 251, 248, 0) 0%, rgba(255, 251, 248, 1) 10rem);
	}
	#main .sec02 .innerBox .imgWrap {
		margin: -6.5rem 0.4rem 0;
		display: block;
	}
	#main .sec02 .innerBox .img02 {
		width: auto;
		text-align: center;
		padding-left: 5.4%;
		margin: 0 0 1.2rem;
	}
	#main .sec02 .innerBox .img02 img {
		width: 100%;
	}
	#main .sec02 .innerBox .img01 {
		width: 33.5%;
		margin-bottom: 6.8vw;
	}
	#main .sec02 .innerBox .imgBox {
		margin-bottom: 9.067vw;
		display: block;
	}
	#main .sec02 .innerBox .imgBox .photoBox {
		padding: 0 1.3%;
		margin-bottom: 4.4rem;
		width: auto;
	}
	#main .sec02 .innerBox .imgBox .photoBox .note {
		margin-top: 0.5rem;
	}
	#main .sec02 .innerBox .imgBox .textBox {
		margin: 0 1rem;
		width: auto;
	}
	#main .sec02 .innerBox .imgBox .textBox h4 {
		margin-bottom: 2.3rem;
	}
	#main .sec02 .innerBox .imgBox .textBox h4 img {
		width: 33rem;
	}
	#main .sec02 .innerBox .imgBox .textBox p {
		margin-bottom: 2.3rem;
		font-size: 1.5rem;
	}
	#main .sec02 .innerBox .imgBox .textBox .img {
		margin: 0 0.1rem 0 1.1rem;
	}
	#main .sec02 .innerBox .imgBox .textBox .img img {
		width: 100%;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho01,
	#main .sec02 .innerBox .imgBox .textBox .img .pho02,
	#main .sec02 .innerBox .imgBox .textBox .img .pho03 {
		width: 61.6%;
		position: absolute;
		opacity: 0;
		transform: translateY(4rem);
		transition: .5s;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho01 {
		left: 0;
		top: 17%;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho02 {
		right: -0.1rem;
		top: 41.89%;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho03 {
		bottom: 0;
		left: 0;
	}
	#main .sec02 .innerBox .imgBox .textBox .img.on .pho01,
	#main .sec02 .innerBox .imgBox .textBox .img.on .pho02,
	#main .sec02 .innerBox .imgBox .textBox .img.on .pho03 {
		opacity: 1;
		transform: translateY(0);
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho02 {
		transition-delay: 0.4s;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .pho03 {
		transition-delay: 1s;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext01,
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext02,
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext03 {
		width: 22.75%;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext01 {
		top: 25.7%;
		left: 44.48%;
		transition-delay: 0.2s;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext02 {
		top: 63%;
		right: 3.6%;
		transition-delay: 0.8s;
	}
	#main .sec02 .innerBox .imgBox .textBox .img .imgtext03 {
		bottom: -1.8%;
		right: 36.7%;
		transition-delay: 1.2s;
	}
	#main .sec02 .shopBox {
		margin: 0 1rem;
		padding: 3.9rem 2.5rem;
	}
	#main .sec02 .shopBox .ttlBox {
		margin-bottom: 1.7rem;
		display: block;
	}
	#main .sec02 .shopBox .ttlBox .headLine01 {
		width: auto;
		margin-bottom: 2.8rem;
	}
	#main .sec02 .shopBox .ttlBox .timeBox {
		margin: 0;
	}
	#main .sec02 .shopBox .ttlBox .timeBox .mark {
		margin: 0 auto 2rem;
	}
	#main .sec02 .shopBox .ttlBox .timeBox .time {
		margin: 0 auto 2.3rem;
		width: fit-content;
		min-width: 26rem;
		align-items: flex-start;
		flex-direction: column;
	}
	#main .sec02 .shopBox .ttlBox .timeBox .time .year {
		margin: 0 0 -0.4rem;
		display: block;
	}
	#main .sec02 .shopBox .ttlBox .timeBox .time .timeSub02 {
		margin-top: -0.5rem;
		margin-left: auto;
	}
	#main .sec02 .shopBox .ttlBox .note {
		margin: 0 auto;
		width: fit-content;
		padding-left: 1em;
		text-indent: -1em;
		text-align: left;
	}
	#main .sec02 .shopBox .ttlBox .note sup {
		letter-spacing: 0;
		padding-left: 0;
		text-indent: 0;
	}
	#main .sec02 .shopBox .shopSub {
		margin-bottom: 2.8rem;
		padding: 1.8rem 0.6rem 5.8rem;
		display: block;
		background: url(../img/index/bg04.png) no-repeat left top / 1.8rem, url(../img/index/bg05.png) no-repeat right top / 1.8rem, url(../img/index/bg04.png) no-repeat left bottom / 1.8rem, url(../img/index/bg05.png) no-repeat right bottom / 1.8rem, linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 1.7rem top 0.8rem / calc(100% - 3.4rem) 0.1rem, linear-gradient(to right, #CCBEB0 0%, #8B7357 18.37%, #DDD189 50%, #8B7357 84.5%, #CCBEB0 100%) no-repeat left 1.7rem bottom 1rem / calc(100% - 3.4rem) 0.1rem;
	}
	#main .sec02 .shopBox .shopSub .photoBox {
		margin: 0 auto 10.4rem;
		padding-right: 1rem;
		width: fit-content;
	}
	#main .sec02 .shopBox .shopSub .photoBox .imgtext {
		position: absolute;
		right: 0.3rem;
		bottom: -5.7rem;
		max-width: 100%;
	}
	#main .sec02 .shopBox .shopSub .textBox {
		margin: 0 1rem 0 1.1rem;
		display: block;
	}
	#main .sec02 .shopBox .shopSub .textBox .inWrap {
		margin-bottom: 0;
	}
	#main .sec02 .shopBox .shopSub .textBox .subTtl {
		margin-bottom: 0.6rem;
		font-size: 1.6rem;
	}
	#main .sec02 .shopBox .shopSub .textBox .subTtl span {
		padding-right: 1rem;
	}
	#main .sec02 .shopBox .shopSub .textBox .txtList {
		flex-direction: column;
		gap: 2.3rem 0;
	}
	#main .sec02 .shopBox .shopSub .textBox .txtList > li {
		width: 100%;
	}
	#main .sec02 .shopBox .shopSub .textBox .txtList > li:nth-child(2n) {
		width: 100%;
	}
	#main .sec02 .shopBox .shopSub .textBox .listBox {
		justify-content: space-between;
		gap: 0;
	}
	#main .sec02 .shopBox .shopSub .textBox .subList {
		width: 50%;
	}
	#main .sec02 .shopBox .linkBox {
		margin-left: 0;
	}
	#main .sec02 .shopBox .linkBox .imgtext {
		margin-bottom: 1.2rem;
	}
	#main .sec02 .shopBox .linkBox .imgtext img {
		width: 24.5rem;
		max-height: initial;
	}
	#main .sec02 .shopBox .linkBox .price {
		margin-bottom: 2.1rem;
		font-size: 1.6rem;
	}
	#main .sec02 .shopBox .linkBox .price .num {
		margin-left: 1rem;
	}
	#main .sec02 .shopBox .linkBox .btn {
		max-width: 100%;
	}
	#main .sec02 .secSub02 {
		padding-bottom: 6rem;
	}
	#main .sec02 .secSub02 h3 {
		top: -5.5rem;
	}
	#main .sec02 .secSub02 .innerBox::before {
		height: calc(315vw + 10rem);
	}
	#main .sec02 .secSub02 .innerBox .imgWrap {
		max-width: initial;
		margin-top: -15.5rem;
		margin-bottom: 2rem;
	}
	#main .sec02 .secSub02 .innerBox .img01 {
		margin-bottom: 3.2rem;
		width: 28.95%;
	}
	#main .sec02 .secSub02 .innerBox .img02 {
		margin-bottom: 2.6rem;
		padding-right: 3.7%;
		padding-left: 6.5%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox {
		margin-bottom: 12.8vw;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .photoBox {
		margin-bottom: 4.6rem;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox {
		margin: 0 1rem;
		width: auto;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox h4 {
		margin-bottom: 1.9rem;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox p {
		margin-bottom: 3.1rem;
		line-height: 2.1;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img {
		margin: 0 0.6rem;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .pho01 {
		width: 61.3%;
		top: 14.5%;
		left: 1.2%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .pho02 {
		top: 41.4%;
		right: 1.4%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .pho03 {
		left: 1.5%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext01,
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext02,
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext03 {
		width: 24.4%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext01 {
		top: 24%;
		left: 45.6%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext02 {
		top: 63%;
		right: 1.5%;
		width: 24.8%;
	}
	#main .sec02 .secSub02 .innerBox .imgBox .textBox .img .imgtext03 {
		bottom: 0.2%;
		right: 29.8%;
		width: 24.8%;
	}
	#main .sec02 .secSub02 .shopBox .ttlBox {
		margin-bottom: 2.4rem;
	}
	#main .sec02 .secSub02 .shopBox .shopSub {
		padding-top: 3.6rem;
		padding-bottom: 7rem;
	}
	#main .sec02 .secSub02 .shopBox .shopSub .photoBox {
		padding: 0 0.5rem;
	}
	#main .sec02 .secSub02 .shopBox .shopSub .photoBox .imgtext {
		right: -0.2rem;
	}
	#main .sec02 .secSub02 .shopBox .shopSub .textBox .txtList {
		gap: 3.2rem 0;
	}
	#main .sec02 .secSub02 .shopBox .shopSub .textBox .subList {
		width: 55%;
	}
	#main .sec02 .secSub02 .shopBox .shopSub .textBox .subList:nth-child(2n) {
		width: 42%;
	}
}
@keyframes fuwafuwa {
	0% {
		transform: translateY(0);
	}
	100% {
		transform: translateY(min(1.2244897959vw + 0.4081632653px, 20px));
	}
}