@charset "UTF-8";
/*-----------------------------------

	mainvisual_block

-----------------------------------*/
#mainvisual_block {
	position: relative;
}
#mainvisual_block .ttl_box {
	position: absolute;
	top: 16.33vw;
	left: 5.8vw;
	z-index: 2;
}
#mainvisual_block .ttl_box h2 {
	font-size: max(3.33vw, 20px);
	font-weight: 700;
	line-height: 1.67;
	letter-spacing: 0.08em;
	text-shadow: 0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF,0 0 8px #FFF;
}
#mainvisual_block .ttl_box h2 span {
	position: relative;
}
#mainvisual_block .ttl_box h2 span::before {
	content: "";
	display: block;
	background: #F5773C;
	width: 8px;
	height: 8px;
	border-radius: 50vw;
	margin: auto;
	position: absolute;
	top: -6px;
	left: 0;
	right: 0;
}
#mainvisual_block .lf_box {
	width: 30.35vw;
	position: absolute;
	left: 8.92vw;
	bottom: -7.4vw;
	z-index: 2;
}
#mainvisual_block .scroll_txt {
	width: 0.61vw;
	height: 6.49vw;
	position: absolute;
	left: 3.73vw;
	bottom: 0;
}
#mainvisual_block .scroll_txt .line_box {
	display: block;
	width: 1px;
	height: 2.73vw;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
#mainvisual_block .scroll_txt .line {
	background: #707070;
	width: 100%;
	height: 100%;
	animation: scroll_txt_anim 3s ease-out infinite backwards;
}
@keyframes scroll_txt_anim {
	0% {
		transform: translateY(-2.73vw);
	}
	50% {
		transform: translateY(0);
	}
	100% {
		transform: translateY(2.73vw);
	}
}
#mainvisual_block .scroll_txt img {
	position: absolute;
	left: 0;
	bottom: 0;
}
#mainvisual_block .swiper_mv {
	width: 71.9vw;
	margin: 0 calc(50% - 21.9vw);
}
#mainvisual_block .swiper_mv .swiper-pagination {
	width: 12px;
	margin: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	top: 0;
	left: auto;
	right: 30px;
	bottom: 0;
}
#mainvisual_block .swiper-pagination .swiper-pagination-bullet {
	background: #FFFFFF;
	width: 12px;
	height: 12px;
	border: 2px solid #FFFFFF;
	margin: 0;
	opacity: 1;
}
#mainvisual_block .swiper-pagination .swiper-pagination-bullet-active {
	background: transparent;
}
@media screen and (max-width: 1024px) {
	#mainvisual_block {
		margin-top: 98px;
	}
}
@media screen and (max-width: 640px) {
	#mainvisual_block {
		margin-top: 90px;
	}
	#mainvisual_block .ttl_box {
		position: relative;
		top: auto;
		left: auto;
		margin-bottom: -24.5px;
	}
	#mainvisual_block .ttl_box h2 {
		font-size: max(7.47vw, 20px);
	}
	#mainvisual_block .ttl_box h2 span::before {
		width: 5px;
		height: 5px;
		top: -3px;
	}
	#mainvisual_block .lf_box {
		width: 33.72vw;
		top: 0.61vw;
		right: -2.8vw;
		left: auto;
		bottom: auto;
	}
	#mainvisual_block .scroll_txt {
		width: 2.4vw;
		height: 26.15vw;
		left: 6.66vw;
		bottom: 0;
	}
	#mainvisual_block .scroll_txt .line_box {
		height: 10.95vw;
	}
	@keyframes scroll_txt_anim {
		0% {
			transform: translateY(-10.95vw);
		}
		50% {
			transform: translateY(0);
		}
		100% {
			transform: translateY(10.95vw);
		}
	}	
	#mainvisual_block .swiper_mv {
		width: 84vw;
		margin: 0 calc(50% - 34vw);
	}
	#mainvisual_block .swiper_mv .swiper-pagination {
		width: 7px;
		right: 10px;
		gap: 7px;
	}
	#mainvisual_block .swiper-pagination .swiper-pagination-bullet {
		width: 7px;
		height: 7px;
		border-width: 1px;
	}
}
/*-----------------------------------

	about_block

-----------------------------------*/
#about_block {
	padding: 8vw 0 51px;
}
#about_block .contents_inner {
	max-width: 1069px;
}
#about_block .about_wrapper .left_box {
	width: 46.7%;
}
#about_block .about_wrapper .left_box .sec_ttl {
	line-height: 1.65;
	margin-bottom: 35px;
}
#about_block .about_wrapper .left_box .about_txt {
	width: 80.1%;
}
#about_block .about_wrapper .left_box .sec_txt {
	margin-bottom: 33px;
}
#about_block .about_wrapper .left_box .btn {
	width: 260px;
	padding-left: 43px;
	margin-left: auto;
}
#about_block .about_wrapper .left_box .btn::after {
	right: 43.7px;
}
#about_block .about_wrapper .right_box {
	width: 45.8%;
	position: relative;
	z-index: 0;
}
#about_block .about_wrapper .right_box::after {
	content: "";
	display: block;
	background: url(../img/index/lf_img_02.png) no-repeat center / cover;
	width: 195px;
	height: 264px;
	position: absolute;
	right: -60px;
	bottom: -41px;
	z-index: 1;	
}
@media screen and (max-width: 840px) {
	#about_block .about_wrapper {
		justify-content: center;
		gap: 60px 0;
	}
	#about_block .about_wrapper .left_box {
		width: 100%;
	}
	#about_block .about_wrapper .left_box .about_txt {
		width: 90%;
	}
	#about_block .about_wrapper .right_box {
		width: 78.8%;
	}
	#about_block .about_wrapper .right_box .pc {
		display: none;
	}
	#about_block .about_wrapper .right_box .sp {
		display: block;
	}
}
@media screen and (max-width: 640px) {
	#about_block {
		padding: 40px 0 50px;
	}
	#about_block .about_wrapper .left_box .about_txt {
		width: 100%;
	}
	#about_block .about_wrapper .left_box .sec_ttl {
		text-align: center;
	}
	#about_block .about_wrapper .left_box .sec_txt {
		margin-bottom: 31px;
	}
	#about_block .about_wrapper .left_box .btn {
		width: 240px;
		margin: 0 auto;
	}
	#about_block .about_wrapper .left_box .btn::after {
		right: 19.7px;
	}
	#about_block .about_wrapper .right_box {
		width: 100%;
	}
	#about_block .about_wrapper .right_box::after {
		width: 95px;
		height: 129px;
		right: -15px;
		bottom: -21px;
	}
}
/*-----------------------------------

	fenikus_block

-----------------------------------*/
#fenikus_block {
	padding: 150px 0 120px;
	position: relative;
}
#fenikus_block::before {
	content: "FENIKUS";
	display: block;
	font-size: 190px;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	line-height: 1.66;
	letter-spacing: 0.16em;
	color: #80CC1B;
	width: max-content;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: -1;	
}
#fenikus_block .swiper_fn {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
#fenikus_block .swiper_fn .swiper {
	overflow: visible;
}
#fenikus_block .swiper_fn .swiper-wrapper {
	transition-timing-function: linear;
}
#fenikus_block .swiper_fn .swiper-slide {
	width: 21.33vw;
}
#fenikus_block .swiper_fn .swiper-slide img {
	filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.08));
	transform: translateZ(0);
}
@media screen and (max-width: 1024px) {
	#fenikus_block::before {
		font-size: 140px;
		top: 30px;
	}
}
@media screen and (max-width: 840px) {
	#fenikus_block::before {
		font-size: 120px;
		top: 40px;
	}
}
@media screen and (max-width: 640px) {
	#fenikus_block {
		padding: 100px 0 70px;
	}
	#fenikus_block::before {
		font-size: 70px;
		letter-spacing: 0.08em;
		top: 30px;
	}
	#fenikus_block .swiper_fn .swiper-slide {
		width: 260px;
	}	
}
/*-----------------------------------

	vegetables_block

-----------------------------------*/
#vegetables_block .contents_inner {
	max-width: 1032px;
}
#vegetables_block .sec_ttl {
	display: block;
	margin-bottom: 60px;
}
#vegetables_block .vg_wrapper {
	margin-bottom: 120px;
}
#vegetables_block .vg_wrapper .left_box {
	width: 50.3%;
	position: relative;
}
#vegetables_block .vg_wrapper .left_box::after {
	content: "";
	display: block;
	background: url(../img/index/lf_img_03.png) no-repeat center / cover;
	width: 203px;
	height: 180px;
	position: absolute;
	right: -74px;
	bottom: -82px;
	z-index: 1;	
}
#vegetables_block .vg_wrapper .right_box {
	width: 39.9%;
	margin-top: 25px;
}
#vegetables_block .vg_wrapper .right_box .sec_ttl_02 {
	letter-spacing: 0.07em;
	white-space: nowrap;
	width: 363px;
	margin-bottom: 33px;
}
#vegetables_block .vg_wrapper .right_box .sec_txt {
	width: 85%;
	margin-bottom: 32px;
}
#vegetables_block .vg_wrapper .right_box .btn {
	width: 260px;
	padding-left: 26px;
	margin-left: auto;
	margin-right: 51px;
}
#vegetables_block .vg_wrapper .right_box .btn::after {
	right: 24.7px;
}
#vegetables_block .bg_box {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
@media screen and (max-width: 1024px) {
	#vegetables_block .vg_wrapper .right_box .sec_ttl_02 {
		white-space: wrap;
		width: 100%;
	}
	#vegetables_block .vg_wrapper .right_box .btn {
		margin-right: 0;
	}
}
@media screen and (max-width: 640px) {
	#vegetables_block .sec_ttl {
		margin-bottom: 40px;
	}
	#vegetables_block .vg_wrapper {
		margin-bottom: 60px;
	}
	#vegetables_block .vg_wrapper .right_box .sec_ttl_02 {
		margin-bottom: 23px;
	}
	#vegetables_block .vg_wrapper .left_box,
	#vegetables_block .vg_wrapper .right_box {
		width: 100%;
	}
	#vegetables_block .vg_wrapper .left_box::after {
		width: 90px;
		height: 80px;
		right: -17px;
		bottom: -38px;
	}
	#vegetables_block .vg_wrapper .right_box {
		margin-top: 35px;
	}
	#vegetables_block .vg_wrapper .right_box .sec_txt {
		width: 100%;
		margin-bottom: 31px;
	}
	#vegetables_block .vg_wrapper .right_box .btn {
		width: 240px;
		padding-left: 26px;
		margin: 0 auto;
	}
	#vegetables_block .vg_wrapper .right_box .btn::after {
		right: 19.7px;
	}
	#vegetables_block .bg_box {
		height: 240px;
	}
	#vegetables_block .bg_box img {
		height: 100%;
		object-fit: cover;
	}
}
/*-----------------------------------

	product_block

-----------------------------------*/
#product_block {
	background: url(../img/index/product_bg.png) no-repeat center top / cover;
	padding: 120px 0 257px;
	position: relative;
}
#product_block .contents_inner {
	max-width: 1040px;
}
#product_block .sec_ttl {
	margin-bottom: 60px;
}
#product_block .sec_ttl_02 {
	display: block;
	font-size: 24px;
	padding-bottom: 10.3px;
	margin-bottom: 40px;
}
#product_block h4 {
	font-size: 20px;
	font-weight: 500;
	text-align: center;
}
#product_block .product_tp_wrapper {
	margin-bottom: 60px;
}
#product_block .product_tp_wrapper .img_box {
	width: calc((100% - 80px) / 2);
}
#product_block .product_tp_wrapper .img_box a:hover {
	opacity: 0.9;
}
#product_block .product_tp_wrapper .img_box h4 {
	margin-top: 30px;
}
#product_block .product_btm_wrapper {
	gap: 40px 0;
}
#product_block .product_babyleaf_wrapper {
	margin-bottom: 60px;
}
#product_block .product_btm_wrapper .img_box {
	width: calc((100% - 60px) / 3);
}
#product_block .product_btm_wrapper .img_box h4 {
	line-height: 1.7;
	margin-top: 18px;
}
@media screen and (max-width: 640px) {
	#product_block {
		padding: 50px 0 200px;
	}
	#product_block .sec_ttl {
		margin-bottom: 40px;
	}
	#product_block .sec_ttl_02 {
		font-size: 20px;
		padding-bottom: 6px;
		margin-bottom: 30px;
	}
	#product_block h4 {
		font-size: 16px;
	}
	#product_block .product_tp_wrapper .img_box {
		width: calc((100% - 20px) / 2);
	}
	#product_block .product_tp_wrapper .img_box h4 {
		margin-top: 13px;
	}
	#product_block .product_btm_wrapper {
		gap: 30px 0;
	}
	#product_block .product_btm_wrapper .img_box {
		width: calc((100% - 20px) / 2);
	}
	#product_block .product_btm_wrapper .img_box h4 {
		margin-top: 13px;
	}
}
/*-----------------------------------

	commit_block

-----------------------------------*/
#commit_block {
	padding: 70px 0 120px;
	margin-top: -149px;
	position: relative;
	z-index: 1;
}
#commit_block .contents_inner {
	max-width: 1100px;
}
#commit_block .sec_ttl {
	display: block;
	margin-bottom: 60px;
}
#commit_block .cm_wrapper {
	justify-content: flex-start;
	gap: 80px;
}
#commit_block .cm_tp_wrapper {
	flex-direction: row-reverse;
	justify-content: flex-start;
	transform: translateX(-38px);
	margin-bottom: 77px;
}
#commit_block .cm_wrapper .left_box {
	position: relative;
}
#commit_block .cm_tp_wrapper .left_box {
	width: 47.3%;
}
#commit_block .cm_btm_wrapper .left_box {
	width: 50.35%;
	gap: 30px;
}
#commit_block .cm_btm_wrapper .left_box .left_box_img {
	width: calc((100% - 30px) / 2);
	box-shadow: 0 10px 10px rgba(0, 0, 0, 0.16);
}
#commit_block .cm_btm_wrapper .left_box .left_box_img_02 {
	transform: translateY(40px);
}
#commit_block .cm_wrapper .right_box {
	width: 39.9%;
}
#commit_block .cm_tp_wrapper .right_box {
	width: 36.3%;
}
#commit_block .cm_tp_wrapper .right_box .sec_ttl_02 {
	margin: 26px 0 33px;
}
#commit_block .cm_btm_wrapper .right_box .sec_ttl_02 {
	margin: 71px 0 31px;
}
#commit_block .cm_tp_wrapper .right_box .sec_txt {
	margin-bottom: 41px;
}
#commit_block .cm_btm_wrapper .right_box .sec_txt {
	margin-bottom: 43px;
}
#commit_block .cm_wrapper .right_box .btn {
	width: 260px;
	padding-left: 52px;
	margin-left: auto;
}
#commit_block .cm_btm_wrapper .right_box .btn {
	margin-right: 30px;
}
#commit_block .cm_wrapper .right_box .btn::after {
	right: 52.7px;
}
@media screen and (max-width: 1024px) {
	#commit_block .cm_wrapper {
		gap: 8%;
	}
}
@media screen and (max-width: 640px) {
	#commit_block {
		padding: 50px 0 70px;
	}
	#commit_block .sec_ttl {
		margin-bottom: 40px;
	}
	#commit_block .cm_wrapper {
		flex-direction: column;
	}
	#commit_block .cm_tp_wrapper {
		margin-bottom: 60px;
		transform: translateX(0px);
	}
	#commit_block .cm_wrapper .left_box,
	#commit_block .cm_wrapper .right_box {
		width: 100%;
	}
	#commit_block .cm_btm_wrapper .left_box {
		gap: 20px;
	}
	#commit_block .cm_btm_wrapper .left_box .left_box_img {
		width: calc((100% - 20px) / 2);
		box-shadow: 0 8px 8px rgba(0, 0, 0, 0.16);
	}
	#commit_block .cm_btm_wrapper .left_box .left_box_img_02 {
		transform: translateY(30px);
	}
	#commit_block .cm_tp_wrapper .right_box .sec_ttl_02 {
		margin: 26px 0 23px;
	}
	#commit_block .cm_btm_wrapper .right_box .sec_ttl_02 {
		margin: 56px 0 23px;
	}
	#commit_block .cm_tp_wrapper .right_box .sec_txt {
		margin-bottom: 31px;
	}
	#commit_block .cm_btm_wrapper .right_box .sec_txt {
		margin-bottom: 33px;
	}
	#commit_block .cm_wrapper .right_box .btn {
		width: 240px;
		margin: 0 auto;
	}
	#commit_block .cm_wrapper .right_box .btn::after {
		right: 19.7px;
	}
}
/*-----------------------------------

	news_block

-----------------------------------*/
#news_block {
	background: #FBF7EF;
	padding-bottom: 100px;
}
#news_block .contents_inner {
	max-width: 1100px;
}
#news_block .news_wrapper {
	background: #FFFFFF;
	padding: 60px 65.5px 60px 75px;
	border-radius: 30px;
	box-shadow: 0 10px 10px rgba(0, 0, 0, 0.08);
}
#news_block .news_wrapper .left_box {
	width: 200px;
	margin-top: 53px;
}
#news_block .news_wrapper .left_box .sec_ttl {
	margin-bottom: 40px;
}
#news_block .news_wrapper .left_box .btn {
	padding-left: 40px;
}
#news_block .news_wrapper .left_box .btn::after {
	right: 40.7px;
} 
#news_block .news_wrapper .right_box {
	width: calc(100% - 280px);
}
#news_block .news_wrapper .right_box li {
	border-bottom: 1px solid #E3E3E3;
}
#news_block .news_wrapper .right_box a {
	padding: 24.5px 10px 24.5px 0;
	display: flex;
	justify-content: flex-start;
	gap: 24px;
}
#news_block .news_wrapper .right_box a:hover {
	background: rgba(245, 119, 60, 0.1);
}
#news_block .news_wrapper .right_box a time {
	font-size: 15px;
	font-family: "Poppins", sans-serif;
	letter-spacing: 0.06em;
	color: #979082;
}
#news_block .news_wrapper .right_box a .cate { 
	font-weight: 500;
	text-align: center;
	color: #F5773C;
	background: #FFFFFF;
	width: 76px;
	border: 1px solid #F5773C;
	border-radius: 50vw;
	margin-right: 4px;
}
#news_block .news_wrapper .right_box a h3 {
	font-size: 17px;
	font-weight: 400;
	color: #514327;
}
#news_block .news_wrapper .btn.sp {
	display: none;
}
@media screen and (max-width: 840px) {
	#news_block .news_wrapper .left_box,
	#news_block .news_wrapper .right_box {
		width: 100%;
	}
	#news_block .news_wrapper .left_box {
		margin-top: 0;
	}
	#news_block .news_wrapper .left_box .btn {
		display: none;	
	}
	#news_block .news_wrapper .btn.sp {
		display: block;
		width: 260px;
		padding-left: 40px;
		margin: 40px auto 0;
	}
	#news_block .news_wrapper .btn.sp::after {
		right: 40.7px;
	}
}
@media screen and (max-width: 640px) {
	#news_block {
		padding-bottom: 70px;
	}
	#news_block .news_wrapper {
		padding: 30px 20px;
		border-radius: 18px;
		box-shadow: 0 6px 6px rgba(0, 0, 0, 0.08);
	}
	#news_block .news_wrapper .left_box .sec_ttl {
		margin-bottom: 20px;
	}
	#news_block .news_wrapper .btn.sp {
		width: 240px;
		padding-left: 70px;
		margin: 30px auto 0;
	}
	#news_block .news_wrapper .btn.sp::after {
		right: 19.7px;
	}
	#news_block .news_wrapper .right_box a {
		padding: 14.5px 5px 14.5px 0;
		gap: 10px;
	}
	#news_block .news_wrapper .right_box a time {
		font-size: 13px;
	}
	#news_block .news_wrapper .right_box a .cate {
		font-size: 12px;
		width: 70px;
	}
	#news_block .news_wrapper .right_box a h3 {
		font-size: 15px;
		width: 100%;
	}
}