@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.fadeInUp {
	transform: translateY(4rem);
	opacity: 0;
	transition: all ease 1s;
}
.fadeInUp.on {
	transform: none;
	opacity: 1;
}
.fadeInDown {
	transform: translateY(-4rem);
	opacity: 0;
	transition: all ease 1s;
}
.fadeInDown.on {
	transform: none;
	opacity: 1;
}
.leftIn {
	transform: translateX(-4rem);
	opacity: 0;
	transition: all ease 1s;
}
.leftIn.on {
	transform: none;
	opacity: 1;
}
.rightIn {
	transform: translateX(4rem);
	opacity: 0;
	transition: all ease 1s;
}
.rightIn.on {
	transform: none;
	opacity: 1;
}

.delay01 {
	transition-delay: 0.2s;
}
.delay02 {
	transition-delay: 0.4s;
}
.delay03 {
	transition-delay: 0.6s;
}
.delay04 {
	transition-delay: 0.8s;
}
.delay05 {
	transition-delay: 1s;
}
.mainVisual {
	position: relative;
}
.mainVisual .img01 {
	position: absolute;
	left: 3.2rem;
	top: 9.5rem;
	width: 3.6rem;
	z-index: 2;
}
.mainVisual .img02 {
	position: absolute;
	right: 3.9rem;
	top: 9.5rem;
	width: 3.6rem;
	z-index: 2;
}
.mainVisual .slideList img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	vertical-align: top;
}
.mainVisual .slideList li {
	vertical-align: top;
	height: 100svh;
}
.mainVisual .slideList li.active img {
	transform: scale(1.2);
	transition: linear 9.5s;
}
.mainVisual .slick-dots {
	position: absolute;
	right: 4.5rem;
	width: 2.9rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	bottom: 3rem;
	z-index: 2;
}
.mainVisual .slick-dots li {
	position: relative;
	display: block;
	width: 1.2rem;
	height: 1.2rem;
	margin-top: 0.5rem;
	cursor: pointer;
	background: #d3c9b6;
}
.mainVisual .slick-dots li button {
	display: none;
}
.mainVisual .slick-dots li.slick-active {
	background: #a0823c;
}
.mainVisual .textBox {
	position: absolute;
	left: 11.8rem;
	top: 9.3rem;
}
.mainVisual .logo {
	margin-bottom: 4.1rem;
	width: 27.9rem;
}
.mainVisual .textImg {
	margin-bottom: 4.1rem;
	width: 26.3rem;
}
.mainVisual .time {
	margin-left: -0.7rem;
	width: 41.4rem;
}
.mainVisual .scroll {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 3.5rem;
	text-align: center;
	font-size: 1.1rem;
	color: #fff;
}
.mainVisual .scroll::before {
	position: absolute;
	left: 0;
	bottom: -3.5rem;
	left: 50%;
	width: 1px;
	height: 2.9rem;
	content: "";
	background-color: #fff;
	animation: lineReveal 2s ease infinite;
}
@keyframes lineReveal {
    0%,
	100% {
		clip-path: inset(0 0 0 0);
    }
    33% {
         clip-path: inset(100% 0 0 0);
    }
	66% {
       clip-path: inset(0 0 100% 0);
    }
}
#main .concept {
	padding: 14rem 0 13.3rem;
	background-color: #e4efda;
}
#main .concept h2 {
	width: 95.6rem;
	margin: 0 auto 9.9rem;
}
#main .concept .imgBox {
	max-width: 135rem;
	margin: 0 auto;
	justify-content: flex-end;
}
#main .concept .photoBox {
	order: 1;
	width: calc(50% - 1.5rem);
	position: sticky;
	top: 0;
	align-self: flex-start;
	transform: translateZ(0);
}
#main .concept .textBox {
	width: 54rem;
	padding: 7rem 2rem 80svh 0;
	position: relative;
	box-sizing: border-box;
}
#main .concept .textInfo:not(:last-child) {
	position: relative;
	margin-bottom: 40.9rem;
}
#main .concept .textInfo:not(:last-child)::before {
	position: absolute;
	left: 4rem;
	bottom: -23.8rem;
	height: 1px;
	width: 26.8rem;
	background-color: #ccc;
	content: "";
}
#main .concept .enImg {
	position: absolute;
	left: -7.6rem;
	top: 1px;
	width: 12.5rem;
} 
#main .concept .ttl {
	margin: 0 0 4.7rem -0.6rem;
	min-width: 43rem;
	width: fit-content;
	position: relative;
	color: #6f8900;
	line-height: 1.78;
	font-size: 2.8rem;
	letter-spacing: 0.1em;
	font-weight: 400;
}
#main .concept .ttl .en {
	margin: -0.1rem -0.3rem 0;
	display: block;
	text-align: right;
	color: #b3b3b3;
	font-size: 1.45rem;
	letter-spacing: 0.1em;
}
#main .concept p {
	margin-bottom: 2.9rem;
	position: relative;
	line-height: 1.93;
}
#main .concept p:last-child {
	margin-bottom: 0 !important;
}
#main .style {
	padding: 8.8rem 0 0;
	background: url(../img/index/style_bg01.png) no-repeat left -15.5rem top 8.8rem,url(../img/index/style_bg02.png) no-repeat right -15rem top 8.8rem;
	background-size: 63.3rem auto;
	overflow: hidden;
}
#main .style .imgBox {
	max-width: 135rem;
	margin: 0 auto 4.7rem;
	display: flex;
	align-items: center;
}
#main .style .photo {
	width: calc(50% + 15rem);
	flex-shrink: 0;
	overflow: hidden;
	border-radius: 1rem;
}
#main .style h2 {
	margin: 0 0 0.7rem 4.4rem;
	width: fit-content;
	text-align: center;
	font-size: 2.1rem;
	font-weight: 400;
	line-height: 1.95;
	letter-spacing: 0.1em;
}
#main .style .textBox {
	width: 105rem;
	margin: 0 auto;
	display: flex;
	align-items: center;
}
#main .style .title {
	width: 35.4rem;
	font-size: 1.6rem;
	font-weight: 400;
	flex-shrink: 0;
	letter-spacing: 0.1em;
}
#main .style p {
	line-height: 2.13;
}
#main .style .enImg {
	max-width: 144rem;
	margin: 0 auto;
}
#main .details {
	background: url(../img/index/details_bg01.jpg) repeat top center;
	background-size: 51rem auto;
	overflow: hidden;
}
#main .details .imgBox {
	padding: 6rem 0 6.7rem;
	max-width: 121rem;
	margin: 0 auto;
}
#main .details .imgBox .textBox {
	width: 48rem;
	position: relative;
	margin: 6.4rem 0 0 8.3rem;
	color: #fff;
}
#main .details .imgBox .textBox::before {
	position: absolute;
	left: -0.4rem;
	top: 6.4rem;
	width: 1px;
	height: 47.3rem;
	background-color: #3C4928;
	content: "";
}
#main .details .imgBox .enImg {
	position: absolute;
	left: -7.9rem;
	top: -6.4rem;
	width: 9.5rem;
}
#main .details .imgBox .ttl {
	margin-bottom: 4.3rem;
	position: relative;
	font-size: 2.9rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}
#main .details .imgBox p {
	margin: 0 0 2.9rem 3.6rem;
	line-height: 1.93;
}
#main .details .imgBox .photo {
	width: 60rem;
	position: relative;
}
#main .details .imgBox .photo::before {
	position: absolute;
	left: -7rem;
	top: 6.6rem;
	background: url(../img/index/details_foliage_img01.png) no-repeat;
	background-size: 80rem auto;
	width: 80rem;
	height: 66.6rem;
	content: "";
}
#main .details .imgBox .photo img {
	position: relative;
	z-index: 1;
}
#main .details .bgBox {
	position: relative;
}
#main .details .bgBox .enImg {
	position: absolute;
	left: 12rem;
	top: 9rem;
	width: 9.1rem;
}
#main .details .bigPho img {
	width: 100%;
	height: 80rem;
	object-fit: cover;
	object-position: center top;
}
#main .details .title {
	width: 30.8rem;
	padding-bottom: 0.3rem;
	font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.07em;
	text-align: center;
	color: #aa9066;
	border-bottom: 1px solid rgba(170,144,102,0.5);
	box-sizing: border-box;
}
#main .details .title span {
	padding: 0 0 0.1rem 1.2rem;
	display: block;
	border-bottom: 1px solid #aa9066;
	background: url(../img/common/icon01.png) no-repeat left 1px top 45%,url(../img/common/icon02.png) no-repeat right top 45%;
	background-size: 3.4rem auto;
}
#main .details .listUl a {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
}
#main .details .listUl .pho {
	position: relative;
	overflow: hidden;
	border-radius: 100%;
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
#main .details .listUl .pho::before {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: -1px;
	background: url(../img/index/pop_link_bg.png) no-repeat;
	background-size: 100% 100%;
	content: "";
	z-index: 1;
}
#main .details .listUl img {
	width: 100%;
	transition: .3s;
}
#main .details .listUl p {
	margin: 1.2rem 0.5rem 0 0;
	transition: .3s;
}
#main .details .listUl span {
	padding: 0 3.6rem;
	display: inline-block;
	background: url(../img/common/icon03.png) no-repeat right top;
	background-size: 2.6rem auto;
}
#main .details .textImg {
	width: 53.6rem;
	margin: 0 auto;
	padding: 5.1rem 0 8.5rem;
}
#main .details .foliage01 {
	position: absolute;
	width: 50.4rem;
	right: -11.5rem;
	top: -2rem;
}
#main .details .foliage02 {
	position: absolute;
	width: 48.3rem;
	bottom: -8.6rem;
	right: -25.9rem;
}
#main .details .foliage03 {
	position: absolute;
	width: 50.5rem;
	bottom: -8.8rem;
	left: calc(50% - 20rem);
}
#main .details .foliage04 {
	position: absolute;
	width: 50.4rem;
	left: -12.1rem;
	top: -6.1rem;
}
#main .details .foliage05 {
	position: absolute;
	width: 48.3rem;
	bottom: -10rem;
	left: -25.9rem;
}
#main .details .foliage06 {
	position: absolute;
	width: 50.4rem;
	bottom: -2.6rem;
	left: 26.1rem;
}
#main .exhibition {
	padding-bottom: 13.3rem;
	background: url(../img/index/details_bg01.jpg) repeat top center;
	background-size: 51rem auto;
}
#main .exhibition .bgBox {
	padding: 13.2rem 0 14.2rem;
	background: url(../img/index/exhibition_bg.jpg) no-repeat top center;
	background-size: cover;
}
#main .exhibition .topText {
	margin-bottom: 2.7rem;
	text-align: center;
	color: #fff;
	line-height: 2.4;
}
#main .exhibition .time {
	width: 47.2rem;
	padding: 2.2rem 2.2rem 2.1rem;
	margin: 0 auto 8.1rem;
	display: flex;
	color: #e5c18c;
	line-height: 1.1;
	border: 1px solid #E5C18C;
	background-color: rgba(0,0,0,0.6);
}
#main .exhibition .time span {
	flex-shrink: 0;
	width: 8.8rem;
	margin-right: 3.4rem;
	letter-spacing: 0.1em;
	border-right: 1px solid #93897D;
}
#main .exhibition .info {
	position: relative;
}
#main .exhibition .textImg {
	width: 14.5rem;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 2;
}
#main .exhibition .whiteBg {
	width: 48rem;
	display: flex;
	border-radius: 1rem;
	overflow: hidden;
	background-color: #fff;
}
#main .exhibition .pho {
	width: 19rem;
}
#main .exhibition .textBox {
	width: calc(100% - 19rem);
	padding: 3.2rem 1rem 1rem 4rem;
	box-sizing: border-box;
}
#main .exhibition .title {
	margin-bottom: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
#main .exhibition dl {
	line-height: 2.13;
}
#main .exhibition dt {
	float: left;
}
#main .exhibition dd {
	padding-left: 3em;
}
#main .exhibition .whiteBg:last-child dd {
	padding-left: 4em;
}
#main .exhibition .price {
	margin-bottom: 2.4rem;
	line-height: 2.13;
}
#main .salestion {
	padding: 30.4rem 0 16.1rem;
	position: relative;
}
#main .salestion .fixPho {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	contain: paint;
}
#main .salestion .fixPho .fixBox {
	position: absolute;
	left: 0;
	top: -100lvh;
	width: 100%;
	height: calc(100% + 200lvh);
}
#main .salestion .fixPho .fixBox img {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100lvh;
	object-fit: cover;
	transform: translateZ(0);
}
#main .salestion .content {
	position: relative;
	z-index: 2;
}
#main .salestion .headLine01 {
	margin-bottom: 5rem;
}
#main .salestion .enImg {
	position: absolute;
	left: -7.5rem;
	top: -2.7rem;
	width: 12rem;
}
#main .salestion .whiteBg {
	margin-bottom: 8rem;
	padding: 5.6rem 0 3.3rem 1.6rem;
	background-color: rgba(255,255,255,0.9);
	border-radius: 1rem;
}
#main .salestion .widBox {
	width: 60rem;
	margin: 0 auto;
}
#main .salestion .ttl {
	padding: 0 1.5rem 0.3rem 0;
	margin-bottom: 4.6rem;
	position: relative;
	text-align: center;
	color: #c47169;
	font-size: 2.1rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #F7CDC6;
}
#main .salestion .ttl img {
	position: absolute;
	width: 5.8rem;
	bottom: -0.9rem;
}
#main .salestion .ttl .ico01 {
	left: -1px;
}
#main .salestion .ttl .ico02 {
	right: 0.2rem;
}
#main .salestion .whiteBg02 .ttl {
	color: #6f8900;
	border-bottom-color: #CFE5B7;
}
#main .salestion .linkUl {
	margin: 1.9rem 0 -0.7rem;
}
#main .salestion .linkUl li {
	margin-right: 1.5rem;
	font-weight: 400;
}
#main .salestion .whiteBg03 .text02 {
	margin: 1.4rem 0;
	font-size: 1.6rem;
}
#main .salestion .whiteBg03 .text02 span {
	margin-top: 0.4rem;
	display: block;
	font-size: 1.3rem;
}
#main .salestion .whiteBg04 {
	margin-bottom: 0 !important;
}
#main .salestion .whiteBg04 .noteList li {
	text-indent: -0.5em;
	padding-left: 0.5em;
}
#main .product {
	padding: 12.4rem 0 8.1rem;
	background: url(../img/index/product_bg.jpg) repeat top center;
	background-size: 16.3rem auto;
	overflow: clip;
}
#main .product .imgBox {
	max-width: 135rem;
	margin: 0 auto 11.8rem;
	justify-content: flex-end;
}
#main .product .imgBox .photo {
	width: calc(50% - 10.5rem);
	overflow: hidden;
	border-radius: 1rem;
}
#main .product .textBox {
	width: 63rem;
	padding: 1.2rem 10.5rem 0 0;
	position: relative;
	box-sizing: border-box;
}
#main .product .headLine01 {
	margin-bottom: 4.7rem;
	text-align: left;
	color: #333;
}
#main .product .textBox p {
	margin-bottom: 2.9rem;
	line-height: 1.93;
}
#main .product .enImg {
	position: absolute;
	left: -7.5rem;
	top: -6.2rem;
	width: 11.8rem;
} 
#main .product .imgInfo {
	max-width: 120rem;
	margin: 0 auto;
}
#main .product .imgInfo .photo {
	width: 47rem;
	overflow: hidden;
	border-radius: 1rem;
}
#main .product .textInfo {
	width: 66.5rem;
	margin-right: 2.5rem;
}
#main .product .whiteBg {
	margin-bottom: 3.9rem;
	padding: 4.6rem 2.5rem 1rem;
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 1rem;
}
#main .product .comList dd {
	padding: 0 0 3.5rem 10.4em;
	line-height: 1.33;
	font-weight: 400;
}
#main .product .comList dd a:hover {
	opacity: 0.7;
}
#main .product .textList {
	margin: 0 0 -0.8rem -0.8rem;
}
#main .product .textList > li {
	width: 29rem;
}
#main .product .textList > li:last-child {
	width: 11rem;
}
#main .product .textList ul li {
	padding: 0 0 0.9rem 0.5em;
	text-indent: -0.5em;
}
#main .product .btmText {
	margin-bottom: 2.3rem;
	line-height: 1.6;
}
#main .product .link {
	width: 39rem;
}
#main .product .link a {
	padding: 2.3rem 5.1rem 2.3rem;
	display: block;
	color: #fff;
	background: url(../img/common/icon11.png) no-repeat left 2.4rem center,url(../img/common/icon12.png) no-repeat right 2.7rem center #8bbc57;
	background-size: 1.4rem auto,1.1rem auto;
	border-radius: 1rem;
	overflow: hidden;
}
#main .product .link a:hover {
	opacity: 0.7;
}
#main .special .topPho {
	height: 88rem;
	position: relative;
}
#main .special .fixPho {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
contain: paint;
}
#main .special .fixPho .fixBox {
	position: absolute;
	left: 0;
	top: -100lvh;
	width: 100%;
	height: calc(100% + 200lvh);
}
#main .special .fixPho .fixBox img {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100lvh;
	object-fit: cover;
	transform: translateZ(0);
}
#main .special .bgBox {
	padding: 11.6rem 0 11.6rem;
	background: url(../img/index/special_bg03.jpg) repeat top center;
	background-size: 13.9rem auto;
}
#main .special .headLine01 {
	padding: 0 10.2rem;
	width: fit-content;
	margin: 0 auto 5.4rem;
	color: #3552a5;
	background: url(../img/common/icon13.png) no-repeat left top 0.5rem,url(../img/common/icon14.png) no-repeat right top 0.5rem;
	background-size: 7.9rem auto;
}
#main .special .photo {
	width: 43.7rem;
	position: relative;
}
#main .special .pho,
#main .special .textInfo {
	position: relative;
	z-index: 2;
}
#main .special .bg01 {
	position: absolute;
	left: -15rem;
	bottom: -0.7rem;
	width: 25.2rem;
}
#main .special .textBox {
	width: 52.6rem;
	margin-top: 5.5rem;
	position: relative;
}
#main .special .bg02 {
	position: absolute;
	right: -7.6rem;
	top: -13.4rem;
	width: 25.2rem;
}
#main .special h3 {
	margin-bottom: 3.9rem;
	font-weight: 400;
	font-size: 2.1rem;
	letter-spacing: 0.1em;
}
#main .special p {
	margin: 0 0 3.6rem 6.2rem;
	line-height: 2.4;
}
#main .special p:last-child {
	margin-bottom: 0 !important;
}
#main .news {
	padding: 14.4rem 0 8rem;
}
#main .news .content {
	position: relative;
}
#main .news .enImg {
	position: absolute;
	left: -4rem;
	top: -6.5rem;
	width: 8rem;
}
#main .news .headLine01 {
	position: absolute;
	left: -0.5rem;
	top: 1.6rem;
	margin: 0;
	color: #333;
}
#main .news .slideBox {
	margin: 0 -7.5rem 0 20.5rem;
}
#main .news .slideList {
	display: flex;
}
#main .news .slideList li {
	margin: 0 1rem;
	width: 21.3rem;
	flex-shrink: 0;
}
#main .news .slideList p {
	line-height: 2.4;
}
#main .news .slideList .time {
	padding: 0 0.3rem 0.3rem;
	margin-bottom: 0.2rem;
	font-size: 1.2rem;
	line-height: 1.5;
	border-bottom: 1px solid #ccc;
}
#main .news .slideList a {
	color: #0071bc;
	text-decoration: underline;
}
#main .news .arrow {
	margin-top: 4.5rem;
}
#main .news .arrow li {
	padding-top: 2.3rem;
	font-size: 1.1rem;
	cursor: pointer;
	transition: .3s;
	background: url(../img/common/icon15.png) no-repeat left top;
	background-size: 1.4rem auto;
	opacity: 1;
}
#main .news .arrow li.swiper-button-disabled {
	opacity: 0;
	pointer-events: none;
}
#main .news .arrow .next {
	background-image: url(../img/common/icon16.png);
	background-position: right top;
}
@media all and (min-width: 769px) {
	#main .details .listUl a:hover img {
		transform: scale(1.1);
	}
	#main .details .bgBox {
		overflow: hidden;
	}
	#main .details .textInfo {
		position: absolute;
		left: 50%;
		top: 0;
		height: 100%;
		width: 120rem;
		transform: translateX(-50%);
	}
	#main .details .title {
		position: absolute;
		right: 25.3rem;
		top: 8.3rem;
	}
	#main .details .listUl li {
		position: absolute;
		width: 23.5rem;
	}
	#main .details .popLink01 {
		right: 29rem;
		top: 17.5rem;
	}
	#main .details .popLink02 {
		right: 0;
		top: 7.1rem;
	}
	#main .details .popLink03 {
		right: 28.8rem;
		top: 47.6rem;
	}
	#main .details .popLink04 {
		right: 0.4rem;
		top: 39rem;
	}
	#main .details .bgBox02 .enImg {
		right: 4.4rem;
		left: auto;
		top: 6.3rem;
	}
	#main .details .bgBox02 .title {
		right: 61.1rem;
		top: 6.5rem;
	}
	#main .details .popLink05 {
		right: 96.3rem;
		top: 5.3rem;
	}
	#main .details .popLink06 {
		right: 67.7rem;
		top: 16.8rem;
	}
	#main .details .popLink07 {
		right: 39.5rem;
		top: 34.3rem;
	}
	#main .details .popLink08 {
		right: 11.4rem;
		top: 47.3rem;
	}
	#main .details .popLink09 {
		right: 96.4rem;
		top: 35.8rem;
	}
	#main .details .popLink10 {
		right: 67.7rem;
		top: 47.3rem;
	}
	#main .details .bgBox03 .bigPho img {
		height: 75rem;
	}
	#main .details .bgBox03 .enImg {
		top: 0;
		left: 8.8rem;
		width: 11.3rem;
	}
	#main .details .bgBox03 .title {
		right: 22.3rem;
		top: 8.1rem;
	}
	#main .details .bgBox03 .listUl li {
		width: 27.3rem;
	}
	#main .details .bgBox03 .listUl li p {
		margin-top: 0.9rem;
	}
	#main .details .popLink11 {
		right: 0;
		top: 14.9rem;
	}
	#main .details .popLink12 {
		right: 25.2rem;
		top: 38.9rem;
	}
	#main .details .bgBox03 .foliage01 {
		right: -4.5rem;
		top: -0.3rem;
	}
	#main .details .bgBox03 .foliage02 {
		bottom: -1.9rem;
		right: -15.6rem;
	}
	#main .details .bgBox03 .foliage03 {
		bottom: -2.7rem;
		left: calc(50% - 23.4rem);
	}
	#main .salestion .whiteBg02 {
		margin-bottom: 7.1rem;
		padding-bottom: 4.2rem;
	}
	#main .salestion .whiteBg02 .comList dd {
		padding-bottom: 3.4rem;
	}
	#main .salestion .whiteBg02 .text01 {
		margin-bottom: 1.9rem;
	}
	#main .salestion .linkUl li a {
		padding-right: 5.2rem;
	}
	#main .salestion .whiteBg03 {
		margin-bottom: 6.4rem;
		padding: 5.7rem 0 3.7rem 1.6rem;
	}
	#main .salestion .whiteBg03 .red {
		margin: -0.2rem 0 1rem;
		font-size: 1.8rem;
	}
	#main .salestion .whiteBg03 .comLink a {
		padding-right: 6.2rem;
	}
	#main .news .slideList a:hover {
		opacity: 0.7;
	}
	#main .news .arrow li:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 768px) {
	.mainVisual .img01 {
		left: 1.2rem;
		top: 6.5rem;
		width: 2.5rem;
	}
	.mainVisual .img02 {
		right: 1.6rem;
		top: 6.5rem;
		width: 2.5rem;
	}
	.mainVisual .slick-dots {
		right: 1.5rem;
		bottom: 1.5rem;
	}
	.mainVisual .textBox {
		left: 0;
		top: auto;
		bottom: 9.7rem;
		width: 100%;
	}
	.mainVisual .logo {
		margin: 0 auto 0.9rem;
		width: 21.7rem;
	}
	.mainVisual .textImg {
		margin: 0 auto 0.6rem;
		width: 31.6rem;
	}
	.mainVisual .time {
		margin: 0 auto;
		width: 35.4rem;
	}
	#main .concept {
		padding: 3.9rem 0 1.3rem;
		overflow: hidden;
	}
	#main .concept h2 {
		width: 37.8rem;
		margin: 0 auto 2rem;
	}
	#main .concept .imgBox {
		max-width: inherit;
		display: block;
	}
	#main .concept .photoBox {
		display: none;
	}
	#main .concept .textBox {
		width: auto;
		padding: 0;
	}
	#main .concept .textInfo:not(:last-child) {
		margin-bottom: 0;
	}
	#main .concept .textInfo:not(:last-child)::before {
		display: none;
	}
	#main .concept .enImg {
		left: 0;
		top: 3.5rem;
		width: 10.5rem;
	} 
	#main .concept .pho img {
		width: 100%;
	}
	#main .concept .textInfo {
		padding: 6.5rem 3rem 6rem;
	}
	#main .concept .ttl {
		margin: 0 0 3rem;
		min-width: 31.5rem;
		line-height: 1.42;
	}
	#main .concept .ttl .en {
		margin: 0.8rem 0.1rem 0;
		font-size: 1.1rem;
	}
	#main .concept .textInfo01 {
		padding-top: 6.8rem;
	}
	#main .concept .textInfo01 .ttl {
		margin: 0 -1rem 3.1rem 0;
		width: fit-content;
	}
	#main .style {
		padding: 3.5rem 0 0.3rem;
		background-position: left -12.6rem bottom 17.8rem, right -12.6rem bottom 17.8rem;
		background-size: 33.5rem auto;
	}
	#main .style .imgBox {
		max-width: inherit;
		margin: 0 auto 2.9rem;
		display: block;
	}
	#main .style .photo {
		width: auto;
		border-radius: 0;
	}
	#main .style .photo img {
		width: 100%;
	}
	#main .style h2 {
		margin: 3.3rem 0 0;
		width: auto;
		font-size: 1.8rem;
		line-height: 1.94;
	}
	#main .style .textBox {
		display: none;
	}
	#main .style .title {
		margin-right: 2rem;
		width: auto;
		position: relative;
		z-index: 1;
	}
	#main .style .title a {
		width: fit-content;
		margin: 0 auto;
		position: relative;
		display: block;
		color: #999;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
		border-bottom: 1px solid #999;
	}
	#main .style .title a::before {
		position: absolute;
		right: -2.2rem;
		top: 0.5rem;
		background: url(../img/common/icon17.png) no-repeat;
		background-size: 1.5rem auto;
		width: 1.5rem;
		height: 1.2rem;
		content: "";
	}
	#main .style .popBg {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.7);
		z-index: 9;
		display: none;
	}
	#main .style .popSub {
		position: fixed;
		left: 2.5rem;
		right: 2.5rem;
		padding: 2.8rem 3rem;
		top: 50%;
		transform: translateY(-50%);
		background-color: #fff;
		border-radius: 1rem;
		z-index: 10;
		display: none;
	}
	#main .style .popSub p {
		line-height: 2.13;
	}
	#main .style .popClose {
		position: absolute;
		right: -1.5rem;
		top: -3rem;
		width: 5rem;
	}
	#main .style .enImg {
		max-width: 37.4rem;
		margin: -3.3rem auto 0;
	}
	#main .details .imgBox {
		padding: 6.5rem 0 7.3rem;
		max-width: inherit;
		display: block;
	}
	#main .details .imgBox .textBox {
		width: auto;
		margin: 0 3rem 4.9rem;
	}
	#main .details .imgBox .textBox::before {
		display: none;
	}
	#main .details .imgBox .enImg {
		left: -3rem;
		top: -2.8rem;
		width: 7.2rem;
	}
	#main .details .imgBox .ttl {
		margin-bottom: 2.1rem;
		font-size: 2.8rem;
		position: relative;
		z-index: 1;
	}
	#main .details .imgBox p {
		margin: 0 0 2.9rem;
		position: relative;
		z-index: 1;
	}
	#main .details .imgBox .photo {
		width: auto;
	}
	#main .details .imgBox .photo img {
		width: 100%;
	}
	#main .details .imgBox .photo::before {
		left: 50%;
		top: -3rem;
		background-size: 49.5rem auto;
		width: 49.5rem;
		transform: translateX(-52.5%);
	}
	#main .details .bgBox {
		padding-bottom: 3.3rem;
		background: url(../img/index/details_bg02.jpg) repeat left top;
		background-size: 28.4rem auto;
	}
	#main .details .bgBox .enImg {
		left: 1px;
		top: 0;
		width: 5.7rem;
	}
	#main .details .bigPho img {
		height: auto;
	}
	#main .details .title {
		margin: -8.1rem auto 3.5rem;
		position: relative;
	}
	#main .details .listUl {
		max-width: 37.5rem;
		margin: 0 auto;
		position: relative;
		z-index: 2;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#main .details .listUl li {
		width: 16.5rem;
		margin: 0 1rem 3.7rem;
	}
	#main .details .listUl a {
		font-size: 1.8rem;
	}
	#main .details .listUl p {
		margin: 1.1rem 0 0;
		line-height: 1;
	}
	#main .details .listUl span {
		padding: 0.5rem 3.7rem;
	}
	#main .details .bgBox02 {
		padding-bottom: 4.6rem;
	}
	#main .details .bgBox02 .enImg {
		left: auto;
		right: -1px;
		top: -6.1rem;
	}
	#main .details .bgBox02 .title {
		margin-bottom: 4.1rem;
	}
	#main .details .bgBox02 .listUl li.delay04 {
		transition-delay: 0.6s;
	}
	#main .details .bgBox02 .listUl li.delay05 {
		transition-delay: 0.8s;
	}
	#main .details .bgBox02 .listUl li.delay03 {
		transition-delay: 1s;
	}
	#main .details .bgBox03 {
		padding-bottom: 2.9rem;
	}
	#main .details .bgBox03 .enImg {
		width: 7.6rem;
	}
	#main .details .bgBox03 .title {
		margin-bottom: 4.3rem;
	}
	#main .details .bgBox03 .listUl {
		display: block;
	}
	#main .details .bgBox03 .listUl li {
		width: 19rem;
		margin: 0 auto 4rem;
	}
	#main .details .bgBox03 .listUl p {
		margin-top: 0.9rem;
	}
	#main .details .textImg {
		width: 29.5rem;
		padding: 4.1rem 0 7.6rem;
	}
	#main .details .foliage01 {
		width: 35.3rem;
		top: auto;
		bottom: 30.8rem;
	}
	#main .details .foliage02 {
		width: 33.7rem;
		bottom: 3.2rem;
		right: -16.9rem;
	}
	#main .details .foliage03 {
		width: 35.3rem;
		bottom: -8.8rem;
		left: -14.6rem;
	}
	#main .details .foliage04 {
		width: 35.3rem;
		top: auto;
		bottom: 49rem;
		left: -9.3rem;
	}
	#main .details .foliage05 {
		width: 33.7rem;
		bottom: -3rem;
		left: -12.8rem;
	}
	#main .details .foliage06 {
		width: 35.3rem;
		bottom: 14.8rem;
		left: auto;
		right: -11rem;
	}
	#main .details .bgBox03 .foliage01 {
		right: -12.2rem;
		bottom: 36.1rem;
	}
	#main .details .bgBox03 .foliage02 {
		bottom: 2rem;
	}
	#main .details .bgBox03 .foliage03 {
		bottom: 14.3rem;
		left: -19rem;
	}
	#main .exhibition {
		padding-bottom: 0;
	}
	#main .exhibition .bgBox {
		padding: 9.3rem 0 8.4rem;
		background-image: url(../img/index/exhibition_bg_sp.jpg);
	}
	#main .exhibition .topText {
		margin-bottom: 7.4rem;
		line-height: 1.93;
	}
	#main .exhibition .time {
		width: 31.5rem;
		padding: 2.1rem 1rem 1.8rem;
		margin: 0 auto 2rem;
		display: block;
		text-align: center;
	}
	#main .exhibition .time span {
		width: auto;
		display: block;
		position: relative;
		margin: 0 0 2.3rem;
		border: none;
	}
	#main .exhibition .time span::before {
		position: absolute;
		left: 50%;
		bottom: -1.1rem;
		width: 1.5rem;
		height: 1px;
		background-color: #93897d;
		content: "";
		transform: translateX(-50%);
	}
	#main .exhibition .info {
		display: block;
		margin: 0 1.5rem;
	}
	#main .exhibition .whiteBg {
		margin-bottom: 10.3rem;
		width: auto;
		display: block;
	}
	#main .exhibition .whiteBg:last-child {
		margin-bottom: 0;
	}
	#main .exhibition .pho {
		padding: 0 0.5rem 0.4rem;
		width: auto;
	}
	#main .exhibition .pho img {
		width: 100%;
		border-radius: 0 0 0.5rem 0.5rem;
	}
	#main .exhibition .textBox {
		width: auto;
		padding: 3.2rem 1rem 4.4rem 4rem;
	}
	#main .exhibition .title {
		margin-bottom: 1.7rem;
	}
	#main .exhibition dl {
		line-height: 1.93;
	}
	#main .exhibition .price {
		margin-bottom: 3.4rem;
		line-height: 1.93;
	}
	#main .salestion {
		margin-top: -1px;
		padding: 27.8rem 2rem 7.1rem;
		overflow: clip;
	}
	#main .salestion .headLine01 {
		margin-bottom: 12.5rem;
	}
	#main .salestion .enImg {
		left: -2rem;
		top: -3.5rem;
		width: 10rem;
	}
	#main .salestion .slideBox {
		margin: 0 -2rem 4.1rem -0.5rem;
	}
	#main .salestion .slideInfo {
		width: fit-content;
		display: flex;
		gap: 1.2rem;
		justify-content: space-between;
	} 
	#main .salestion .slideBox .whiteBg {
		width: calc(var(--bodyWidth) - 4rem);
	}
	#main .salestion .topLink {
		width: 11rem;
		position: absolute;
		right: 0;
		top: -4.4rem;
	}
	#main .salestion .topLink a {
		padding: 0.5rem 2rem 0.9rem;
		display: block;
		color: #fff;
		font-size: 1.4rem;
		text-decoration: underline;
		background: rgba(0, 0, 0, 0.6) url(../img/common/icon18.png) no-repeat right 1rem center;
		background-size: 1.4rem auto;
		border-radius: 0.5rem;
	}
	#main .salestion .whiteBg02 .topLink {
		width: 13.5rem;
		left: 0;
		right: auto;
	}
	#main .salestion .whiteBg02 .topLink a {
		padding: 0.5rem 2rem 0.9rem;
		text-align: right;
		background-image: url(../img/common/icon19.png);
		background-position: left 1rem center;
	}
	#main .salestion .whiteBg {
		margin-bottom: 0;
		position: relative;
		padding: 2.5rem 1.8rem 0.2rem;
	}
	#main .salestion .widBox {
		width: auto;
	}
	#main .salestion .ttl {
		padding: 0;
		margin-bottom: 1.8rem;
		font-size: 2rem;
		border-bottom: none;
	}
	#main .salestion .ttl img {
		width: 4rem;
		bottom: 0.5rem;
	}
	#main .salestion .ttl .ico01 {
		left: -0.6rem;
	}
	#main .salestion .ttl .ico02 {
		right: -0.8rem;
	}
	#main .salestion .linkUl {
		margin: 2.2rem 0 -0.7rem;
		display: block;
	}
	#main .salestion .linkUl li {
		margin: 0 0 1.5rem;
	}
	#main .salestion .whiteBg03 {
		margin-bottom: 3.1rem;
		padding: 2.7rem 2rem 0.1rem;
	}
	#main .salestion .whiteBg03 .red {
		margin-bottom: 1.1rem;
	}
	#main .salestion .whiteBg03 .text02 {
		margin: 1.9rem 0 1.4rem;
		font-size: 1.5rem;
	}
	#main .salestion .whiteBg03 .text02 span {
		margin-top: 0.9rem;
		line-height: 1.84;
	}
	#main .salestion .whiteBg04 {
		padding: 2.7rem 1.5rem 0.1rem;
	}
	#main .product {
		padding: 7.3rem 2.9rem 9.5rem;
	}
	#main .product .imgBox {
		max-width: inherit;
		margin: 0 auto 0.6rem;
	}
	#main .product .slide {
		margin: 0 -2.9rem 4.1rem -2.8rem;
	}
	#main .product .slick-slide > div {
		margin: 0 1rem;
		width: 30.5rem;
	}
	#main .product .photo {
		margin: 0;
		border-radius: 1rem;
		width: 30.5rem;
		float: left;
		overflow: hidden;
	}
	#main .product .textBox {
		width: auto;
		padding: 0;
	}
	#main .product .headLine01 {
		margin-bottom: 2.6rem;
	}
	#main .product .enImg {
		left: -2.6rem;
		top: -3.2rem;
		width: 9.8rem;
	} 
	#main .product .imgInfo {
		max-width: inherit;
		display: block;
	}
	#main .product .textInfo {
		width: auto;
		margin: 0 -1.8rem;
	}
	#main .product .whiteBg {
		margin-bottom: 3.9rem;
		padding: 2.3rem 1.9rem 0.1rem;
	}
	#main .product .comList {
		margin-bottom: -0.3rem;
	}
	#main .product .comList dt {
		padding-top: 0.2rem;
		float: left;
		font-size: 1.3rem;
	}
	#main .product .comList dt::before {
		display: none;
	}
	#main .product .comList dd {
		margin-bottom: 1.2rem;
		padding: 0 0 1.5rem 5.1em;
		line-height: 1.4;
		border-bottom: 1px solid #e6e6e6;
	}
	#main .product .comList dd:last-child {
		border: none;
	}
	#main .product .comList .dt01 {
		padding: 0;
		float: none;
	}
	#main .product .comList .dd01 {
		margin-bottom: 1.3rem;
		padding: 0.9rem 0 0.7rem;
	}
	#main .product .textList {
		margin: 0.1rem 0 -0.3rem;
		display: block;
	}
	#main .product .textList > li {
		width: auto !important;
		line-height: 1.33;
	}
	#main .product .btmText {
		margin-bottom: 1.2rem;
		line-height: 1.8;
		text-align: center;
	}
	#main .product .link {
		width: 29.5rem;
		margin: 0 auto;
	}
	#main .product .link a {
		padding: 1.8rem 5.1rem 1.8rem;
	}
	#main .special .topPho {
		height: 81.1rem;
	}
	#main .special .bgBox {
		padding: 6.8rem 0 6.3rem;
		overflow: hidden;
	}
	#main .special .headLine01 {
		padding: 0 7.9rem;
		margin: 0 auto 3.1rem;
		background-position: left top 1rem,right top 1rem;
		background-size: 5.5rem auto;
	}
	#main .special .imgBox {
		display: block;
	}
	#main .special .photo {
		width: auto;
		margin: 0 3.5rem;
	}
	#main .special .photo img {
		width: 100%;
	}
	#main .special .bg01 {
		left: -10.5rem;
		bottom: -5rem;
		width: 17.6rem;
	}
	#main .special .textBox {
		width: auto;
		margin: 6.4rem 3rem 0;
	}
	#main .special .bg02 {
		right: -8.6rem;
		top: -2rem;
		width: 17.6rem;
	}
	#main .special h3 {
		margin-bottom: 2.4rem;
		text-align: center;
		line-height: 1.71;
	}
	#main .special p {
		margin: 0 0 3rem;
		line-height: 1.93;
	}
	#main .news {
		padding: 5.6rem 2.7rem 8rem;
	}
	#main .news .enImg {
		left: -0.8rem;
        top: 1.8rem;
        width: 6.9rem;
	}
	#main .news .headLine01 {
		position: relative;
		left: auto;
		top: auto;
		margin: 0 0 2.8rem;
		text-align: left;
	}
	#main .news .slideBox {
		margin: 0 -2.7rem 0 -0.5rem;
		position: relative;
	}
	#main .news .slideList p {
		line-height: 1.93;
	}
	#main .news .slideList .time {
		margin-bottom: 0.6rem;
	}
	#main .news .arrow {
		margin: 4.7rem 3.1rem 0 0.8rem;
	}
}