@charset "utf-8";
/* CSS Document */


@media screen and (max-width: 768px) {
  .mv_parts .sp_none { display: none; }
}
@media screen and (min-width: 769px) {
  .mv_parts .pc_none { display: none; }
}

#container.lp_dir{
  overflow: visible;
}

#loading{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	height: 100%;
	background: #8dc10f;
	text-align: center;
}
 
#loading .loader{
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
}

#loading .loader img{
	width: 25%;
	max-width: 447px;
	transform:rotate(-20deg)
	-webkit-animation: step-rotate2 2s steps(1) infinite;
	animation: step-rotate2 2s steps(1) infinite;
}

@keyframes step-rotate2 {
/* 0% {
  -webkit-transform:rotate(.00001deg);
  transform:rotate(.00001deg)
 }
 50% {
  -webkit-transform:rotate(20deg);
  transform:rotate(20deg)
 }
 100% {
  -webkit-transform:rotate(.00001deg);
  transform:rotate(.00001deg)
 }*/


/*左右真ん中の3カットアニメーション
	0% {
		-webkit-transform:rotate(.00001deg);
		transform:rotate(0deg)
	}
	33% {
		-webkit-transform:rotate(20deg);
		transform:rotate(20deg)
	}
	66% {
		-webkit-transform:rotate(20deg);
		transform:rotate(-20deg)
	}
	100% {
		-webkit-transform:rotate(.00001deg);
		transform:rotate(0deg)
	}
*/

/*左右の2カットアニメーション*/
	0% {
		-webkit-transform:rotate(-20deg);
		transform:rotate(-20deg)
	}
	50% {
		-webkit-transform:rotate(-20deg);
		transform:rotate(20deg)
	}
	100% {
		-webkit-transform:rotate(20deg);
		transform:rotate(20deg)
	}
}

/*---------------------------------------------------------------------
	main visual
---------------------------------------------------------------------*/
.lp_mv_area{
	position: relative;
	z-index: 900;
	padding-bottom: 60px;
	background-color: #8dc10f;
	overflow: hidden;
}

.lp_logo_block{
	position: absolute;
	top: 20px;
	left: 50px;
}

.mv_parts{
	position: absolute;
	text-align: center;
	animation-duration: 1.6s;
	animation-delay: 0.2s;
	visibility: visible;
}

.mv_parts_01{
	position: static;
	animation-duration: 1s;
	animation-delay: unset;
	visibility: hidden;
}

.mv_parts_01.is-animated{
	/*opacity: 0;*/
	animation-name: fadeIn;
	visibility: visible;
}

.mv_parts.mv_parts_02,
.mv_parts.mv_parts_03,
.mv_parts.mv_parts_05,
.mv_parts.mv_parts_06{
	visibility: hidden;
}

.mv_parts.animate__fadeInUp{
	animation-name: fadeInUp;
	animation-duration: 1s;
	animation-delay: unset;
	visibility: visible;
}

/*
.mv_parts_02{
	right: -380px;
	bottom: -95px;
	z-index: 40;
}
*/
.mv_parts_02{
	right: -100px;
	bottom: -45px;
	z-index: 40;
}

.mv_parts_03{
	bottom: -75px;
	left: -175px;
	z-index: 50;
}

.mv_parts_04{
	bottom: 0;
	left: 0;
	z-index: 60;
	width: 100%;
	height: 90px;
	background: url(/userfiles/images/brand002/mv_parts_04.png) no-repeat center bottom/100%;
	/*background-color: #e0e368;*/
}

.mv_parts_05{
	bottom: 20px;
	left: 100px;
	z-index: 70;
}

.mv_parts_06{
	right: 50px;
	bottom: 25px;
	z-index: 80;
}

.mv_parts_07{
	top: 30px;
	left: 54%;
	transform: translate(-50%,0);
	z-index: 100;
	animation-duration: 1s;
	animation-delay: unset;
	visibility: hidden;
}

.mv_parts_07.animate__fadeIn{
	/*animation-name: fadeIn;*/
}


.mv_parts_08{
	top: 44%;
	left: 50%;
	width: 63%;
	max-width: 905px;
	max-width: 920px;
	transform: translate(-50%,-50%) rotate(-0.2deg);
	z-index: 10;
	opacity: 0;

	animation-duration: 1s;
	animation-delay: unset;
	/*visibility: visible;*/
}

.mv_parts_08::before{
	content: "";
	position: absolute;
	top: 10%;
	top: 0;
	right: 0;
	bottom: 20%;
	bottom: 0;
	left: 0;
	z-index: 800;
	border-radius: 20px;
	background-color: #8dc10f;
	transition: all 1s ease-in;
}

.mv_parts_08.is-animated::before{
	bottom: 100%;
	left: 100%;
}

.mv_parts_08.is-animated{
	/*transition: all 1s;*/
	opacity: 1;
	animation-name: fadeOut;
	animation-delay: 2s;
}

.mv_parts svg{
	width: 100%;
}

.animate__fadeInUp{
	animation-name: fadeInUp;
}

.animate__fadeInDown{
	animation-name: fadeInDown;
}

.animate__fadeOut{
	animation-name: fadeOut;
}

.animate__fadeIn{
	animation-name: fadeIn;
	visibility: visible;
}

@keyframes fadeInUp{
	from{
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}

	to{
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInDown{
	from{
		opacity: 0;
		transform: translate3d(0, -100%, 0);
	}

	to{
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeOut{
	from{
		opacity: 1;
	}

	to{
		opacity: 0;
	}
}

@keyframes fadeIn{
	from{
		opacity: 0;
	}

	to{
		opacity: 1;
	}
}

.decoration_parts{
	position: absolute;
	animation-duration: 1s;
	animation-delay: unset;
	visibility: hidden;
	opacity: 0;
	transition: all .3s;
}

.mv_decorations .decoration_parts.is-animated{
	visibility: visible;
	opacity: 1;
}

.decoration_parts_01{
	top: 25.5%;
	left: 4.6%;
	width: 8.6%;
}

.decoration_parts_02{
	top: 59.7%;
	left: 11.9%;
	width: 5.3%;
}

.decoration_parts_03{
	top: 19%;
	left: 19%;
	width: 15%;
}

.decoration_parts_04{
	top: 3.7%;
	right: 20.7%;
	width: 13.5%;
}

.decoration_parts_05{
	top: 56.8%;
	right: 22.8%;
	width: 7.2%;
}

.decoration_parts_06{
	top: 30%;
	right: 3%;
	width: 10%;
}

.mv_decorations .decoration_parts_01.is-animated,
.mv_decorations .decoration_parts_04.is-animated,
.mv_decorations .decoration_parts_06.is-animated{
	animation-name: fadeInUp;
}

.mv_decorations .decoration_parts_02.is-animated,
.mv_decorations .decoration_parts_03.is-animated,
.mv_decorations .decoration_parts_05.is-animated{
	animation-name: fadeInDown;
}

/*
.mv_decorations.is-animated .decoration_parts_06{
	animation-delay: .2s;
}

.mv_decorations.is-animated .decoration_parts_03{
	animation-delay: .4s;
}

.mv_decorations.is-animated .decoration_parts_04{
	animation-delay: .6s;
}

.mv_decorations.is-animated .decoration_parts_02{
	animation-delay: .8s;
}

.mv_decorations.is-animated .decoration_parts_05{
	animation-delay: 1s;
}
*/

@media (min-width : 768px) {
	.mv_parts_01{
		width: 62%;
		max-width: 901px;
		margin: auto;
		padding: 3.2% 0 3.7%;
	}
}

@media (max-width : 768px) {
	.lp_mv_area{
		padding-bottom: 45%;
	}

	.lp_mv_area::after{
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #F6F7D1;
	}

	.lp_logo_block{
		z-index: 90;
		width: 40%;
		left: 4%;
		top: 15px;
	}

	.mv_parts_01{
		position: relative;
		z-index: 60;
	}

	.mv_parts_02{
	  right: 0;
	  bottom: 0;
	  z-index: 40;
	}

	.mv_parts_03,
	.mv_parts_04,
	.mv_parts_05,
	.mv_parts_06,
	.mv_parts_08{
		display: none;
	}

	.mv_parts_04{

	}

	.mv_parts_07{
		top: 52px;
		left: 58%;
		width: 26%;
		width: 64%;
	}
}


@media (min-width : 769px) and (max-width : 1400px){
	/*
	.mv_parts_02{
		right: -32%;
		bottom: -12.5%;
		width: 95%;
	}
	*/

	.mv_parts_02{
		right: -12%;
		bottom: -6%;
		width: 69%;
	}

	/* 	
	.mv_parts_03{
		bottom: -115px;
		left: -395px;
	}
	*/

	.mv_parts_03 {
		bottom: -15px;
		left: -24px;
		width: 32%;
	}

	.mv_parts_05{
		bottom: 0px;
		left: 30px;
		width: 30%;
	}

	.mv_parts_06{
		width: 40%;
		right: 0;
		right: 10px;
		bottom: 15px;
	}

	.mv_parts_07{
		top: 10px;
		left: 56%;
		width: 26%;
		width: 32%;
		width: 28%;
	}
}

@media (min-width : 1099px) {
	.mv_parts_08{
		top: 46%;
	}

	.decoration_parts_01{
		top: 27%;
	}

	.decoration_parts_02{
		top: 62.7%;
	}

	.decoration_parts_03{
		top: 20%;
	}

	.decoration_parts_04{
		top: 2.7%;
		right: 20%;
		width: 14.8%;
	}

	.decoration_parts_05{
		top: 60.2%;
	}

	.decoration_parts_06{
		top: 30.9%;
		right: 2.7%;
		width: 10.5%;
	}
}

@media (min-width : 1399px) {
	.mv_parts_01{
		padding: 45px 0 45px;
	}

	.decoration_parts_01{
		left: 12%;
	}

	.decoration_parts_02{
		left: 18.5%;
	}

	.decoration_parts_03{
		left: 23%;
	}

	.decoration_parts_04{
		right: 24%;
	}

	.decoration_parts_05{
		right: 27%;
	}

	.decoration_parts_06{
		right: 10.3%;
	}
}

@media (min-width : 1400px) {
	.mv_parts_03{
		bottom: -15px;
		left: -20px;
	}
}

@media (min-width : 1550px) {
	.mv_parts_02{
		right: -60px;
	}

	.mv_parts_03{
		bottom: -15px;
		left: -25px;
		width: 550px;
	}

	.mv_parts_03 img{
		width: 100%;
	}
}

@media (min-width : 1700px) {
	.mv_parts_02{
		right: 0;
		bottom: -55px;
		width: 1000px;
	}

	.mv_parts_02 img{
		width: 100%;
	}

	.mv_parts_06{
		right: 180px;
	}
}

/*
@media (min-width : 1920px) {
	.mv_parts_02{
		width: 84%;
		right: -26%;
		bottom: -12.5%;
	}

	.mv_parts_04{

	}

	.mv_parts_06 {
	  right: 80px;
	  bottom: 25px;
	}
}
*/

@media (max-width : 768px) {
	.mv_decorations{
		display: none;
	}
}

/*---------------------------------------------------------------------
	concept
---------------------------------------------------------------------*/
.lp_concept_block{
	padding: 50px 40px 200px;
	background: rgba(224,227,104,.3) url(/userfiles/images/brand002/bg_01.jpg) no-repeat center bottom/100%;
}

.lp_ttl{
	font-size: 3rem;
	color: #8dc10f;
}

.lp_dir .concept_txt{
	line-height: 2.78;
	margin: 55px 0 0;
	font-size: 1.8rem;
	font-weight: bold;
}

@media (min-width : 767px) {
	.lp_concept_block{
		text-align: center;
	}
}

@media (max-width : 767px) {
	.lp_ttl{
		text-align: center;
	}

	.lp_concept_block{
		padding: 50px 8% 100px;
	}

	.lp_dir .concept_txt{
		margin-top: 35px;
		font-size: 1.5rem;
	}
}

/*---------------------------------------------------------------------
	about
---------------------------------------------------------------------*/
.lp_about_block{
	position: relative;
	width: 92%;
	max-width: 1100px;
	margin: auto;
	padding: 80px 0 50px;
}

.lp_dir .lp_ttl_02{
	margin: 0;
	padding: 0;
	border: none;
	background: none;
}

.lp_dir .lp_ttl_02::before{
	content: none;
}

.about_link_item{
	width: 380px;
	max-width: 94%;
	padding: 30px 20px;
	background: url(/userfiles/images/brand002/bg_02.png) no-repeat center center/contain;
	color: #fff;
	text-align: center;
}

.lp_dir .about_item_ttl{
	font-size: 2.2rem;
	margin: 0 0 15px;
	padding: 0;
	border: none;
}

.lp_dir .about_item_ttl::before{
	content: none;
}

.about_img_txt_block{
	display: flex;
	text-align: left;
}

.about_img{
	width: 100px;
}

.about_txt{
	width: calc(100% - 100px);
	line-height: 1.57;
	padding: 0 20px;
	font-size: 1.4rem;
}

.about_scroll_link{
	display: inline-block;
	margin-top: 15px;
	padding: 3px 20px;
	border: 2px solid #fff;
	border-radius: 20px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	transition: all .3s;
}

.about_scroll_link:visited{
	color: #fff;
}

/*
@media (min-width : 767px) {
	.lp_about_block{
		display: flex;
		justify-content: center;
	}

	.lp_dir .lp_ttl_02{
		position: absolute;
		top: 70px;
		left: 30px;
	}

	.about_item{
		margin: 0 0 0 20px;
	}

	.about_link_item{
		position: absolute;
	}

	.link_item_01{
		top: 40px;
		right: 0;
	}

	.link_item_02{
		top: 350px;
		left: 0;
	}

	.link_item_03{
		top: 350px;
		right: 0;
	}
}
*/

.about_item_layer{
	transition: all .7s;
}

.item_pkg_01,
.item_pkg_02,
.item_pkg_03,
.item_pkg_04{
	opacity: 0;
	/*visibility: hidden;*/
}

.item_pkg_01.is-visible,
.item_pkg_02.is-visible,
.item_pkg_03.is-visible,
.item_pkg_04.is-visible{
	opacity: 1;
	/*visibility: visible;*/
}



@media (min-width : 1099px) {
	.lp_about_block{
		display: flex;
		justify-content: center;
		padding-bottom: 100px;
	}

	.lp_about_block_inner{
		width: 100%;
		position: relative;
		/*
		height: 350vh;
		height: 300vh;
		*/
		min-height: 3700px;
	}

	.lp_sticky_block{
		width: 100%;
		position: sticky;
		top: 50px;
		top: 30px;
		left: 0;
		padding-bottom: 30px;
		z-index: 700;
	}

	.lp_dir .lp_ttl_02{
		position: absolute;
		top: 70px;
		top: 50px;
		left: 30px;
	}

	.about_item{
		position: relative;
		width: 250px;
		/*height: 80vh;*/
		height: 65vh;
		margin: 0 0 0 20px;
		margin: auto;
	}

	.about_item_layer{
		position: absolute;
		top: 0;
		left: 0;
	}

	.item_pkg_01,
	.item_pkg_02,
	.item_pkg_03,
	.item_pkg_04{
		/*opacity: 0;*/
	}

	.item_pkg_01.is-visible,
	.item_pkg_02.is-visible,
	.item_pkg_03.is-visible,
	.item_pkg_04.is-visible{
		/*opacity: 1;*/
	}

	.about_link_item{
		position: absolute;
		min-height: 301px;
		transition: all .4s;
	}

	.about_link_item.is-visible{
		opacity: 1;
	}

	.link_item_01{
		top: 40px;
		top: 20px;
		right: 0;
	}

	/*最初の要素含め初期非表示*/
	.link_item_01,
	.link_item_02,
	.link_item_03{
		opacity: 0;
	}

	.link_item_02{
		top: 350px;
		left: 0;
	}

	.link_item_03{
		top: 350px;
		right: 0;
	}	
}

@media (max-width : 767px) {
	.about_link_item + .about_link_item{
	}

	.lp_dir .about_item_ttl{
		margin-bottom: 10px;
		font-size: 1.8rem;
	}

	.about_img{
		width: 80px;
	}

	.about_txt{
		width: calc(100% - 80px);
		padding: 0 10px 0 20px;
		font-size: 1.2rem;
	}

	.about_scroll_link{
		font-size: 1.4rem;
	}
}

@media (max-width : 1099px) {
	.lp_about_block{
		padding-bottom: 40vh;
	}

	.lp_dir .lp_ttl_02{
		width: 60%;
		margin: auto;
		text-align: center;
	}

	.about_item_layer{
		width: 48%;
		margin: 20px auto auto;
		text-align: center;
	}

	.about_link_item{
		margin: 30px auto auto;
	}


	/*sticky*/
	.about_item{
		position: sticky;
		top: 0;
		z-index: -50;
	}

	.lp_sticky_block{
		width: 100%;
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		left: 0;
	}

	.about_link_item + .about_link_item{
		margin-top: 50vh;
	}

	.about_link_item.link_item_03{
		position: relative;
		top: 35vh;
		margin-top: 15vh;
		margin-top: 25vh;
	}

	.about_item_layer.item_pkg_02,
	.about_item_layer.item_pkg_03,
	.about_item_layer.item_pkg_04{
		position: absolute;
		top: -20px;
		left: 26%;
	}
}

@media (min-width: 439px) and (max-width : 767px) {
	.about_link_item{
		padding: 30px 35px;
	}
}

@media (min-width : 1099px) and (max-height: 710px) {
	.lp_about_block{
		padding-bottom: 200px;
	}	
}

@media (min-width : 1099px) and (min-height: 720px) {
	.lp_sticky_block{
		top: 100px;
	}

	.about_item{
		height: auto;
		min-height: 650px;
	}
}


.lp_about_02_block{
	margin-top: -60px;
	margin-bottom: 60px;
	padding-top: 60px;
	overflow: hidden;
}

/* inview 付けたら relativeになる為、position値も要調整*/
.lp_about_02_block .lp_ttl_02{
	position: static;
	top: auto;
	left: auto;
	padding: 0 20px;
	text-align: center;
}

.about_02_img_txt_block{
	width: 92%;
	margin-top: 50px;
}

.layout_type_01{
	margin: auto;
}

.about_02_img_txt_block .img_block,
.about_02_img_txt_block .txt_block{
	margin-top: 30px;
}

.about_02_img_txt_block.layout_type_01 .img_block{
	border-radius: 25px;
	overflow: hidden;
}

.about_02_img_txt_block .txt_block_ttl{
	margin-bottom: 30px;
	font-size: 4rem;
	font-weight: bold;
	border: none;
	padding: 0;
	color: #00733c;
	letter-spacing: 0.25em;
}

.about_02_img_txt_block .txt_block_txt{
	line-height: 2;
	font-size: 2rem;
}

.about_02_img_txt_block.layout_type_02 .img_block{
	position: relative;
}

.object_content_01{
	background: url(/userfiles/images/brand002/object_01.png) no-repeat 0 0/50%;
}

.object_content_02,
.object_content_03,
.object_content_04,
.object_content_05,
.object_content_07,
.object_content_09,
.object_content_10,
.object_content_11,
.object_content_12{
	position: absolute;
	z-index: -40;
	transition: all .5s;
}

.object_content_02,
.object_content_05,
.object_content_10_block.block_01,
.object_content_10_block.block_03,
.object_content_12_block.block_02{
	z-index: -80;	
}

.object_content_02{
	top: -125px;
	top: 90px;
	right: -4%;
	width: 28px;
}

.object_content_03{
	top: -40px;
	top: -150px;
	right: -50px;
	width: 112px;
}

.object_content_04{
	top: 260px;
	top: 90px;
	right: -6%;
	width: 57px;
}

.object_content_05{
	display: none;
	top: -125px;
	right: -4%;
	width: 28px;
}

.object_content_06,
.object_content_08{
	position: absolute;
	z-index: 20;
}

.object_content_06{
	right: -6%;
	bottom: -25px;
	width: 132px;
}

.object_content_07{
	top: -10px;
	left: 25px;
	width: 97px;
}

.object_content_08{
	bottom: -15px;
	left: -5%;
	width: 86px;
}

.object_content_09{
	bottom: 0;
	left: 4%;
	width: 131px;
}

.object_content_10{
	top: 170px;
	right: -5%;
	width: 70px;
}

.object_content_10_block.block_01,
.object_content_10_block.block_02,
.object_content_10_block.block_03,
.object_content_12_block.block_01,
.object_content_12_block.block_02,
.object_content_12_block.block_03{
	transition: all .5s;
}

.object_content_10_block.block_01{
	display: none;
}

.object_content_10_block.block_02{
	position: relative;
	top: -280px;
}

.object_content_10_block.block_03{
	margin-top: 70px;
}

.object_content_11{
	top: 15px;
	left: -4%;
	width: 65px;
}

.object_content_12{
	right: -5%;
	bottom: 50px;
	width: 70px;
}

.object_content_12_block.block_01{
	display: none;
}

.object_content_12_block.block_03{
	position: relative;
	top: -830px;
	margin-top: 80px;
}

@media (min-width : 767px) {
	.lp_about_02_block{
		margin-top: -100px;
		margin-bottom: 0;
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.about_02_img_txt_block{
		display: flex;
		align-items: flex-start;
		max-width: 1100px;
		margin: auto;
	}

	.about_02_img_txt_block .img_block{
		order: 20;
		width: 50%;
	}

	.about_02_img_txt_block .txt_block{
		order: 10;
		width: 50%;
		margin: 30px 4% 0 0;
		padding-left: 4%;
		background-size: auto;
	}

	.about_02_img_txt_block.layout_type_02{
		max-width: 1400px;
		margin-left: 0;
	}

	.about_02_img_txt_block.layout_type_02 .img_block{
		order: 10;
	}

	.about_02_img_txt_block.layout_type_02 .txt_block{
		order: 20;
	}

	.about_02_img_txt_block + .about_02_img_txt_block{
		margin-top: 150px;
	}

	.about_02_img_txt_block.layout_type_03{
		max-width: 1400px;
		margin-right: 0;
	}

	.object_content_02{
		top: 20px;
		right: -2%;
		width: 59px;
	}

	.object_content_03{
		top: -110px;
		right: -140px;
		width: 224px;
	}

	.object_content_04{
		top: 290px;
		right: -6%;
		width: 115px;
	}

	.object_content_05{
		display: block;
		top: auto;
		right: 0;
		bottom: 50px;
		width: 46px;
	}

	.object_content_07{
		width: 194px;
	}

	.object_content_08{
		bottom: -70px;
		left: -8%;
	}

	.object_content_09{
		bottom: 20px;
		left: 4%;
	}

	.object_content_10{
		top: 0;
		top: 360px;
		right: -1%;
	}

	.object_content_10_block.block_02{
		position: relative;
		top: -520px;
		top: -370px;
	}

	.object_content_12_block.block_03{
		position: relative;
		top: -800px;
	}

	.object_content_11{
		top: 40px;
		left: -2%;
	}

	.object_content_12{
		right: -2%;
		bottom: 230px;
	}
}

@media (min-width : 767px) and (max-width: 1099px) and (min-height: 800px){
	.object_content_10_block.block_02{
		top: -270px;
	}
}


@media (max-width : 767px) {
	.lp_about_02_block {
	  margin-bottom: 20px;
	}

	.lp_about_02_block .lp_ttl_02{
		padding: 0;
	}

	.about_02_img_txt_block{
		width: 86%;
	}

	.about_02_img_txt_block .txt_block_ttl{
		margin-bottom: 20px;
		font-size: 2.5rem;
		letter-spacing: 0.15em;
	}

	.about_02_img_txt_block .txt_block_txt{
		line-height: 1.8;
		font-size: 1.6rem;
	}

	.about_02_img_txt_block.layout_type_02,
	.about_02_img_txt_block.layout_type_03{
		width: 100%;
	}

	.about_02_img_txt_block.layout_type_02 .img_block,
	.about_02_img_txt_block.layout_type_03 .img_block{
		width: 92%;
	}

	.about_02_img_txt_block.layout_type_02 .txt_block,
	.about_02_img_txt_block.layout_type_03 .txt_block{
		width: 86%;
	}

	.about_02_img_txt_block.layout_type_02 .img_block{
		margin: 0 auto 0 0;
	}

	.about_02_img_txt_block.layout_type_03 .img_block{
		margin: 0 0 0 auto;
	}

	.about_02_img_txt_block.layout_type_02 .txt_block,
	.about_02_img_txt_block.layout_type_03 .txt_block{
		margin: 30px auto auto;
	}

	.about_02_img_txt_block.layout_type_03 .img_block,
	.about_02_img_txt_block.layout_type_03 .txt_block{
		position: relative;
	}
}

@media (min-width : 1099px) {
	.lp_about_02_block{
		padding-bottom: 180px;
	}

	.object_content_05{
		bottom: -180px;
	}

	.about_02_img_txt_block.layout_type_02 .img_block{
		position: static;
	}

	.object_content_02{
		top: 300px;
	}

	.object_content_06{
		right: -7%;
		bottom: -100px;
		width: 265px;
	}

	.object_content_08{
		width: 173px;
		bottom: -180px;
		left: -8%;
	}

	.object_content_09{
		bottom: 30px;
		left: 4%;
		width: 262px;
	}

	.object_content_10{
		top: 0;
		top: 160px;
		right: -3%;
		width: 140px;
	}

	.object_content_10_block.block_01{
		display: block;
	}

	.object_content_10_block.block_02{
		position: relative;
		top: -580px;
		margin-top: 60px;
	}

	.object_content_11{
		top: 60px;
		left: 0;
		width: 130px;
	}

	.object_content_12{
		right: -3%;
		bottom: 80px;
		bottom: 690px;
		bottom: 730px;
		width: 140px;
	}

	.object_content_12_block.block_01{
		display: block;
	}

	.object_content_12_block.block_02{
		position: relative;
		top: 850px;
		top: 1050px;
		margin-top: 80px;
	}
}

@media (min-width : 1400px) {
	.object_content_02{
		top: 185px;
		right: -10%;
	}

	.object_content_03{
		right: -130px;
	}

	.object_content_04{
		top: 290px;
		right: -15%;
	}

	.object_content_05{
		right: -9%;
		bottom: -280px;
		bottom: -200px;
	}

	.object_content_06{
		bottom: -30px;
	}

	.object_content_07{

	}

	.object_content_08{
		bottom: -180px;
		left: -8%;
	}

	.object_content_09{
		left: 7%;
	}

	.object_content_10{
	  top: 0;
	  top: 460px;
	  right: 2%;
	}
}

@media (min-width : 1400px) and (min-height: 700px){
	.object_content_02{
		top: 100px;
	}

	.object_content_03{
		top: -90px;
	}

	.object_content_05{
		bottom: -120px;
	}

	.object_content_10{
		top: 380px;
	}

	.object_content_10_block.block_02{
		top: -500px;
	}

	.object_content_12{
		bottom: 370px;
	}

	.object_content_12_block.block_02{
		top: 330px;
	}
}

/*---------------------------------------------------------------------
	movie
---------------------------------------------------------------------*/
.lp_movie_block{
	overflow: hidden;
	padding: 80px 0 60px;
	text-align: center;
}

.lp_movie_block .lp_ttl_02{
	position: static;
	margin: auto auto 50px;
}

/*
.lp_movie_block .movie_wrap{
	width: 84%;
	max-width: 1000px;
	min-height: 600px;
	margin: auto;
	background-color: #eee;
}
*/

.lp_movie_block .movie_wrap{
	position: relative;
	width: 84%;
	margin: auto;
	height: 0;
	padding-top: 47.25%;
}

.lp_movie_block .movie_wrap iframe,
.lp_movie_block .movie_wrap video{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (min-width : 1100px) {
	.lp_movie_block .movie_wrap{
		max-width: 1000px;
		padding-top: 560px;
	}
}

@media (max-width : 767px) {
	.lp_movie_block{
		padding: 30px 0 90px;
	}

	.lp_movie_block .lp_ttl_02{
		margin-bottom: 30px;
	}
}

@media (min-width : 767px) {
	.lp_movie_block{
		padding-bottom: 120px;
	}
}

/*---------------------------------------------------------------------
	history
---------------------------------------------------------------------*/
.history_area_outer{
	padding: 110px 0 130px;
	background: 
		url(/userfiles/images/brand002/bg_03.png) repeat-x center top,
		url(/userfiles/images/brand002/bg_04.png) repeat-x center bottom;
}

.history_area{
	background-color: rgba(224,227,104,.30);
}

.history_area_inner{
	width: 92%;
	max-width: 1150px;
	margin: auto;
	padding: 75px 0 90px;
}

.lp_dir .lp_ttl_03{
	margin: 0 0 50px;
	padding: 0;
	border: none;
	text-align: center;
}

.history_bg_content{
	padding: 190px 180px 130px;
	background: 
		url(/userfiles/images/brand002/history_bg_01.png) no-repeat center top,
		url(/userfiles/images/brand002/history_bg_03.png) no-repeat center bottom,
		url(/userfiles/images/brand002/history_bg_02.png) repeat-y center top;
}

.history_img_txt_block + .history_img_txt_block{
	margin-top: 40px;
}

.history_img_txt_block .txt_block_ttl{
	line-height: 1.5;
	margin-bottom: 20px;
	font-size: 3rem;
	font-weight: bold;
	border: none;
	padding: 0;
	color: #00733c;
}

.history_img_txt_block .txt_block_txt{
	line-height: 2;
	font-size: 1.8rem;
}

@media (min-width : 767px) {
	.history_img_txt_block{
		display: flex;
	}

	.history_img_txt_block .img_block{
		order: 20;
		width: 50%;
	}

	.history_img_txt_block .txt_block{
		order: 10;
		width: 50%;
		padding: 0 8% 0 0;
	}

	.history_img_txt_block + .history_img_txt_block{
		margin-top: 80px;
	}

	.history_bg_content .history_img_txt_block:nth-of-type(2n) .img_block{
		order: 10;
		padding: 0 8% 0 0;
	}

	.history_bg_content .history_img_txt_block:nth-of-type(2n) .txt_block{
		order: 20;
		padding: 0;
	}
}

@media (max-width : 767px) {
	.history_area_inner{
		padding: 0 0;
	}

	.lp_dir .lp_ttl_03{
		width: 60%;
		margin: auto auto 30px;
	}

	.history_bg_content{
		padding: 70px 14% 50px;
		background: 
			url(/userfiles/images/brand002/history_bg_01.png) no-repeat center top/100%,
			url(/userfiles/images/brand002/history_bg_03.png) no-repeat center bottom/92%,
			url(/userfiles/images/brand002/sp_history_bg_02.png) repeat-y center 30px/92%;
	}

	.history_img_txt_block .img_block{
		margin-bottom: 20px;
	}

	.history_img_txt_block .txt_block_ttl{
		font-size: 2.5rem;
	}

	.history_img_txt_block .txt_block_txt{
		line-height: 1.8;
		font-size: 1.6rem;
	}
}

@media (min-width: 767px) and (max-width : 991px) {
	.history_img_txt_block{
		display: block;
	}

	.history_img_txt_block .img_block,
	.history_img_txt_block .txt_block{
		width: 100%;
		padding: 0;
	}

	.history_img_txt_block .img_block{
		margin-bottom: 20px;
	}
}

@media (min-width: 767px) and (max-width : 1239px) {
	.history_bg_content{
		padding: 110px 14% 80px 14%;
		background: 
		url(/userfiles/images/brand002/history_bg_01.png) no-repeat center top/100%,
		url(/userfiles/images/brand002/history_bg_03.png) no-repeat center bottom/90%,
		url(/userfiles/images/brand002/sp_history_bg_02.png) repeat-y center top/90%;
	}
	
}

/*---------------------------------------------------------------------
	dream
---------------------------------------------------------------------*/
.dream_area_outer{
	position: relative;
	padding: 100px 0 100px;
	overflow: hidden;
}

.more_btn_block{
	margin: 50px auto auto;
	max-width: 84%;
	text-align: center;
}

.more_btn_caution{
	margin: 20px auto auto;
	font-size: 1.4rem;
	font-weight: bold;
	color: #00733c;
}

@media (max-width : 767px) {
	.dream_area_outer{
		padding: 50px 0 50px;
	}

	.dream_area .lp_ttl_03{
		width: 92%;
	}
}

/*---------------------------------------------------------------------
	aside
---------------------------------------------------------------------*/
.aside_area_outer{
	padding: 110px 0 0;
	background: 
		url(/userfiles/images/brand002/bg_03.png) repeat-x center top;
}

.aside_area{
	background-color: rgba(224,227,104,.30);
}

.aside_area_inner{
	width: 92%;
	max-width: 1150px;
	margin: auto;
	padding: 30px 0 75px;
	text-align: center;
}

.item_info_block_01{
	display: grid;
	gap: 30px 50px;
	align-items: flex-end;
}

.item_info_block_02{
	margin: 60px auto auto;
	text-align: center;
}

.aside_area .sns_link_list{
	display: flex;
	justify-content: space-between;
	width: 360px;
	max-width: 92%;
	margin: 40px auto auto;
}

.sns_link_item{
	width: 91px;
	max-width: 32%;
}

@media (max-width : 767px) {
	.aside_area_inner{
		padding: 15px 0 60px;
	}

	.item_info_block_01{
		width: 80%;
		margin: auto;
	}

	.item_info_block_02{
		margin-top: 50px;
	}

	.sns_share_ttl{
		width: 70%;
		margin: auto;
	}

	.aside_area .sns_link_list{
		max-width: 86%;
		margin-top: 25px;
	}

	.sns_link_item{
		width: 25%;
	}

}

@media print, screen and (min-width: 768px) {
	.item_info_block_01{
		grid: auto / 1fr 1fr;
	}
}

/*---------------------------------------------------------------------
	footer
---------------------------------------------------------------------*/
.lp_footer_block_01{
	min-height: 434px;
	padding: 45px 4% 150px;
	background: url(/userfiles/images/brand002/footer_bg.png) no-repeat center center/cover;
	text-align: center;
}

.lp_footer_block_content_01{

}

.lp_footer_block_content_01 a{
	display: inline-block;
	padding: 20px 40px;
	border-radius: 50px;
	background-color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: none;
	color: #00733c;
	box-shadow: 0 0 8px #878181;
	transition: all .3s;
}

.lp_footer_block_content_01 a:hover{
	opacity: .7;
}

.lp_footer_block_content_02{
	margin-top: 20px;
}

.lp_footer_block_02{
	padding: 25px 4% 10px;
}

.footer_logo{
	text-align: center;
}

.lp_dir .lp_copyright{
	display: block;
	margin: 0 0 0;
	text-align: right;
}

.scroll_icon{
	position: fixed;
	top: 20px;
	left: 20px;
	z-index: 500;
	z-index: 700;
	width: 40px;
}

@media (min-width : 767px) {
	.scroll_icon{
		top: 50px;
		left: 50px;
		width: 105px;
	}
}

@media (max-width : 767px) {
	.lp_footer_block_02 {
		padding: 25px 4% 20px;
	}

	.lp_footer_block_01{
		min-height: 500px;
		background: url(/userfiles/images/brand002/sp_footer_bg.png) no-repeat center center/cover;
	}

	.lp_footer_block_content_01 a{
		padding: 20px 30px;
	}

	.lp_footer_block_content_02{
		width: 80%;
		margin: 20px auto auto;
	}

	.footer_logo{
		width: 50%;
		margin: auto;
	}

	.lp_dir .lp_copyright{
		margin: 20px auto auto;
		text-align: center;
	}

	.lp_dir .lp_copyright,
	.lp_dir .lp_copyright small{
		font-size: 1.2rem;
	}
}