@charset "UTF-8";
/* 共通 */
.el_deco_ttl {
  color: #4f2027;
  text-align: center;
}
.el_deco_ttl::before,
.el_deco_ttl::after {
  content: "";
  width: 38px;
  height: 36px;
  margin-right: 16px;
  background: url(../images/enzyme/ttl_wing__l.svg) top center / contain no-repeat;
}
.el_deco_ttl::after {
  margin: 0 0 0 16px;
  background: url(../images/enzyme/ttl_wing__r.svg) top center / contain no-repeat;
}
.hp_color {
  color: #e61e39;
}
.bl_breadcrumbs{
	margin-top: 0;
  z-index: 2;
  position: relative;
}
@media screen and (max-width: 750px) {
  .el_deco_ttl {
    font-size: 40px;
  }
  .el_deco_ttl::before,
  .el_deco_ttl::after {
    width: 56px;
    height: 54px;
    margin: 0 16px 0 0;
  }
  .el_deco_ttl::after {
    margin: 0 0 0 16px;
  }
}
/*=======================================================
MV
=======================================================*/
.ly_mv {
  background: url(../images/enzyme/mv_bg.jpg) top center / cover no-repeat;
  width: 100%;
  padding-top: 194px;
  height: 734px;
}
.bl_mv {
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  gap: 97px;
  position: relative;
}
.bl_mv_ttlWrapper {
  margin-right: 62px;
  position: relative;
}
.bl_mv_ttlWrapper::before {
  position: absolute;
  content: "";
  width: 640px;
  height: 140px;
  bottom: -36px;
  left: 50%;
  transform: translateX(-50%);
  background: url("../images/enzyme/mv_ttl_bg.png") top center / contain no-repeat;
}
.bl_mv_ttlWrapper::after {
  position: absolute;
  content: "";
  width: 140px;
  height: 196px;
  transform: matrix(0.82, 0.57, -0.57, 0.82, 0, 0);
  bottom: -88px;
  right: -128px;
  background: url("../images/enzyme/mv_img01.png") top center / contain no-repeat;
}
.bl_mv_ttl {
  display: grid;
  place-items: center;
  place-content: center;
  gap: 33px;
}
.bl_mv_ttl .bl_ttl_figure {
  display: flex;
  width: 490px;
}
.bl_mv_ttl .bl_ttl_picture {
  width: 400px;
}
.bl_mv_txtWrapper {
  margin-right: 6px;
  width: 498px;
  height: 210px;
  background: url(../images/enzyme/mv_txt_bg.png) top center / contain no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 3px;
}
.bl_mv_txt {
  text-align: center;
  font-size: 26px;
  letter-spacing: 0.06em;
  color: #4e2229;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .ly_mv {
    background: url(../images/enzyme/mv_bg_sp.jpg) top center / cover no-repeat;
    height: 1020px;
    padding-top: 161px;
  }
  .bl_mv {
    align-items: center;
    gap: 464px;
  }
  .bl_mv_ttlWrapper {
    margin-right: 0;
    position: relative;
  }
  .bl_mv_ttlWrapper::before {
    width: 620px;
    height: 136px;
    bottom: -39px;
  }
  .bl_mv_ttlWrapper::after {
    bottom: -104px;
    right: -104px;
  }
  .bl_mv_txtWrapper {
    width: 620px;
    height: 144px;
    background: #fff9e6;
    outline: 2px solid #c59c6b;
    outline-offset: -11px;
  }
  .bl_mv_txt {
    font-size: 32px;
    padding-bottom: 0;
  }
}
/*=======================================================
about
=======================================================*/
.bl_about {
  padding: 64px 0 80px;
  position: relative;
  margin-top: -32px;
}
.bl_about::before {
  position: absolute;
  content: "";
  width: 2000px;
  height: 1500px;
  background: url("../images/enzyme/about_bg.jpg") top center / cover no-repeat;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.bl_about_cont {
  display: flex;
  flex-flow: column;
  gap: 40px;
  margin-bottom: 80px;
}
.bl_about .bl_media_imgWrapper{
  border: 1px solid #cecece;
}
.bl_media_ttl {
  margin-bottom: 12px;
  font-size: 24px;
  padding-bottom: 23px;
}
.bl_about .bl_media_ttl::after {
  background: url(../images/enzyme/media_ttl_line.svg) top center / contain no-repeat;
  width: 100%;
  height: 19px;
}
.bl_about .bl_featureList {
  display: flex;
  flex-flow: wrap;
  gap: 5px;
}
.bl_about .bl_featureList li {
  background: url(../images/enzyme/feature_bg.png) top center / contain no-repeat;
  width: 338px;
  height: 248px;
}
.bl_about .bl_featureList li dl {
  display: flex;
  flex-flow: column;
  text-align: center;
  padding-top: 48px;
	line-height: 1.5;
}
.bl_about .bl_featureList li dl dt {
  font-size: 26px;
  color: #f0d088;
  padding-bottom: 16px;
}
.bl_about .bl_featureList li dl dd {
  font-size: 16px;
  color: #ffffff;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 750px) {
  .bl_about {
    padding: 107px 0 96px;
    margin-top: -51px;
  }
	.bl_about::before{
		height: 3529px;
		background: linear-gradient(180deg, #F3EDDC 0%, #FFFFFF 100%);
	}
  .bl_about_cont {
    gap: 80px;
    margin-bottom: 96px;
  }
  .bl_about .bl_media:first-of-type .bl_media_imgWrapper::after{
    font-size: 18px;
    bottom: 16px;
    left: 163px;
  }
  .bl_media_ttl {
    font-size: 40px;
    margin-bottom: 40px;
    padding-bottom: 35px;
  }
  .bl_about .el_sec_mainTtl {
    margin-bottom: 48px;
  }
  .bl_about .el_deco_ttl::before,
  .bl_about .el_deco_ttl::after {
    margin: 60px 6px 0 0;
  }
  .bl_about .el_deco_ttl::after {
    margin: 60px 0 0 24px;
  }
  .bl_about .bl_featureList {
    gap: 24px;
  }
  .bl_about .bl_featureList li {
    background: url(../images/enzyme/feature_bg_sp.png) top center / cover no-repeat;
    width: 100%;
    height: 234px;
  }
  .bl_about .bl_featureList li dl {
    padding-top: 46px;
  }
  .bl_about .bl_featureList li .bl_free,
  .bl_about .bl_featureList li .bl_fermentation {
    padding-top: 23px;
  }
  .bl_about .bl_featureList li dl dt {
    font-size: 36px;
    padding-bottom: 8px;
  }
  .bl_about .bl_featureList li dl dd {
    font-size: 28px;
    letter-spacing: 1.12px;
  }
}
/*=======================================================
recommend
=======================================================*/
.bl_recommend {
  padding-bottom: 80px;
}
.bl_recommend iframe {
  display: flex;
  margin: auto;
}
@media screen and (max-width: 750px) {
	.bl_recommend {
		padding-bottom: 96px;
	}
	.bl_recommend iframe {
		width: 690px;
		height: 390px;
	}
}
/*=======================================================
step
=======================================================*/
.bl_step {
  background: url(../images/enzyme/step_bg.jpg) bottom center / cover no-repeat;
  width: 100%;
  padding-bottom: 56px;
}
.bl_step .bl_step_list {
  display: flex;
  flex-flow: column;
  gap: 88px;
  margin-bottom: 48px;
}
.bl_step .bl_step_list li {
  width: 100%;
}
.bl_step .bl_step_list li:not(:last-of-type) {
  position: relative;
}
.bl_step .bl_step_list li:not(:last-of-type)::after {
  position: absolute;
  content: "";
  border-style: solid;
  border-width: 40px 43px 0 43px;
  border-color: #4f2027 transparent transparent transparent;
  bottom: -64px;
  left: 50%;
  transform: translateX(-50%);
}
.bl_step .bl_step_list li h3 {
  background-color: #4f2027;
  padding-left: 12px;
  height: 60px;
  font-size: 28px;
  color: #ffffff;
  display: flex;
  align-items: center;
}
.bl_step .bl_step_list li h3 img {
  width: 36px;
  height: 36px;
}
.bl_step .bl_step_list li h3 span {
  padding-left: 16px;
}
.bl_step .bl_step_list li .bl_media {
  background-color: #f5eff0;
  border: 2px solid #4f2027;
  padding: 24px 40px 24px;
	gap: 40px;
	flex-wrap: nowrap;
}
.bl_step .bl_media_imgWrapper {
  flex: 0 1 380px;
}
.bl_step .bl_step_list li .bl_media .bl_media_imgWrapper img {
  width: 380px;
  height: 280px;
}
.bl_step .bl_step_list .bl_step01 .bl_media .bl_media_body .bl_media_txt {
  letter-spacing: 0.68px;
}
.bl_step .bl_step_list .bl_step01 .bl_media .bl_media_body .bl_media_txt:last-of-type {
  padding-bottom: 57px;
}
.bl_step .bl_step_list .bl_step03 .bl_media .bl_media_body .bl_media_txt:last-of-type {
  padding-bottom: 17px;
}
.bl_step .bl_step_list li .bl_media .bl_media_body > *:not(:first-of-type) {
  margin-top: 0;
}
.bl_step .bl_step_list li .bl_media .bl_media_body p + p {
  padding-top: 16px;
}
.bl_step .bl_step_list li .bl_media .bl_media_body dl {
  display: flex;
  flex-flow: nowrap;
  width: 524px;
  height: 96px;
  outline: 1px solid #4f2027;
  outline-offset: -1px;
}
.bl_step .bl_step_list li .bl_media .bl_media_body dl dt {
  width: 218px;
  height: 95px;
  background-color: #4f2027;
  color: #ffffff;
  text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_step .bl_step_list li .bl_media .bl_media_body dl dd {
  width: 306px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
.bl_step .bl_step_list li .bl_media .bl_media_body dl dd img{
  width: 236px;
}
.bl_step .el_btn {
  background: url(../images/enzyme/buy_btn.svg) top center / cover no-repeat;
  width: 362px;
  height: 74px;
  color: #ffffff;
  display: flex;
  margin: auto;
  padding-bottom: 10px;
}
.bl_step .el_btn::after {
  display: none;
}
@media screen and (max-width: 750px) {
  .bl_step {
    padding-bottom: 88px;
		background: none;
		position: relative;
  }
	.bl_step::before{
		position: absolute;
		content: "";
		width: 100%;
		height: 3529px;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		background: linear-gradient(0deg, #F3EDDC 0%, #FFFFFF 100%);
	}
  .bl_step .el_deco_ttl {
    margin-bottom: 48px;
  }
  .bl_step .el_deco_ttl::before,
  .bl_step .el_deco_ttl::after {
    margin: 0 8px 0 0;
  }
  .bl_step .el_deco_ttl::after {
    margin: 0 0 0 8px;
  }
  .bl_step .bl_step_list {
    gap: 155px;
    margin-bottom: 64px;
  }
  .bl_step .bl_step_list li {
    width: 100%;
  }
  .bl_step .bl_step_list li:not(:last-of-type)::after {
    border-width: 42px 45px 0 45px;
    bottom: -96px;
  }
  .bl_step .bl_step_list li h3 {
    padding-left: 16px;
    height: 80px;
    font-size: 32px;
  }
  .bl_step .bl_step_list li h3 img {
    width: 40px;
    height: 40px;
  }
  .bl_step .bl_step_list li h3 span {
    padding-left: 24px;
  }
  .bl_step .bl_step_list .bl_step02 h3 span {
    padding-left: 16px;
  }
  .bl_step .bl_step_list li .bl_media,
  .bl_step .bl_step_list .bl_step03 .bl_media {
    padding: 32px 35px 40px;
  }
  .bl_step .bl_step_list li .bl_media {
    gap: 24px;
		flex-wrap: wrap;
  }
  .bl_step .bl_media_imgWrapper {
    flex: none;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_imgWrapper img {
    width: 620px;
    height: 452px;
  }
  .bl_step .bl_step_list .bl_step01 .bl_media .bl_media_body .bl_media_txt {
    letter-spacing: 1.12px;
  }
  .bl_step .bl_step_list .bl_step01 .bl_media .bl_media_body .bl_media_txt:last-of-type,
  .bl_step .bl_step_list .bl_step03 .bl_media .bl_media_body .bl_media_txt:last-of-type {
    padding-bottom: 40px;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_body p + p {
    padding-top: 28px;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_body dl {
    width: 100%;
    height: 130px;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_body dl dt {
    width: 272px;
    height: 130px;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_body dl dd {
    width: 348px;
  }
  .bl_step .bl_step_list li .bl_media .bl_media_body dl dd img{
	width: 330px;
  }
  .bl_step .el_btn {
    background: url(../images/enzyme/buy_btn_sp.svg) top center / cover no-repeat;
    width: 458px;
    height: 114px;
    font-size: 32px;
  }
}
/*=======================================================
products
=======================================================*/
.bl_products {
  background: url(../images/enzyme/products_bg.jpg) top center / cover no-repeat;
  width: 100%;
  padding: 64px 0 80px;
}
.bl_products .el_sec_mainTtl {
  background: url(../images/enzyme/products_ttl_bg.svg) top center / cover no-repeat;
  width: 399px;
  height: 176px;
  padding: 56px 50px 46px 45px;
  line-height: 37px;
  color: #4f2027;
  display: flex;
  flex-flow: column;
  margin: 0 auto 56px;
}
.bl_products .el_sec_mainTtl .hp_small {
  font-size: 20px;
  color: #222222;
}
.bl_products .ly_cont_inner {
  width: 1200px;
  background: #f7f5ea;
  border: 1px solid #707070;
  padding: 64px 84px 64px 90px;
  position: relative;
}
.bl_products .ly_cont_inner::before,
.bl_products .ly_cont_inner::after {
  position: absolute;
  content: "";
  background: url(../images/enzyme/products_rose.svg) top center / cover no-repeat;
  width: 258px;
  height: 156px;
}
.bl_products .ly_cont_inner::before {
  top: -60px;
  left: -45px;
}
.bl_products .ly_cont_inner::after {
  transform: rotate(180deg);
  bottom: -60px;
  right: -45px;
}
.bl_products .bl_media_list{
	display: grid;
	gap: 40px;
}
.bl_products .bl_media .bl_media_imgWrapper {
  flex: 0 1 232px;
}
.bl_products .bl_media .bl_media_body .bl_media_ttl {
  font-size: 20px;
  color: #222222;
  line-height: 35px;
  border-bottom: 2px solid #9d8336;
  padding-bottom: 8px;
  margin-bottom: 16px;
}
.bl_products .bl_media .bl_media_body .bl_media_ttl::after {
  display: none;
}
.bl_products .bl_media .bl_media_body .bl_media_ttl .hp_mincho {
  color: #4f2027;
  font-size: 26px;
}
.bl_products .bl_media .bl_media_body .bl_media_ttl .hp_small {
  font-size: 17px;
  font-weight: lighter;
}
.bl_products .bl_media .bl_media_body .bl_media_subTtl {
  color: #9d8336;
  font-size: 20px;
  margin-bottom: 12px;
}
.bl_products .bl_media:last-of-type .bl_media_body p:last-of-type {
  margin-top: 23px;
}
.bl_products .bl_media .bl_media_body > *:not(:first-of-type) {
  margin-top: 0;
}
.bl_products .bl_media .bl_media_body .bl_content_list .bl_content_ttl {
  background-color: #9d8336;
  width: 100%;
  height: 36px;
  color: #ffffff;
  font-size: 18px;
  margin-top: 16px;
  padding: 3px 0 6px 24px;
}
.bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList {
  border: 1px solid #9d8336;
  background-color: #ffffff;
  font-size: 15px;
  padding: 14px 0 14px 24px;
  letter-spacing: 0.6px;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(5, auto);
}
.bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList li {
  position: relative;
}
.bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList li span {
  position: absolute;
  top: 24px;
  left: 89px;
}
.bl_products .el_btn {
  background: url(../images/enzyme/buy_btn.svg) top center / cover no-repeat;
  width: 362px;
  height: 74px;
  color: #ffffff;
  display: flex;
  margin: 56px auto 0;
  padding-bottom: 10px;
}
.bl_products .el_btn:first-of-type {
  margin-bottom: 64px;
}
.bl_products .el_btn::after {
  display: none;
}
.bl_products .el_btn + .bl_media {
  margin-top: 0;
}
@media screen and (max-width: 750px) {
  .bl_products {
    background: none;
    background-color: #242424;
    padding: 96px 0;
  }
  .bl_products .el_sec_mainTtl {
    width: 480px;
    height: 220px;
    padding: 60px 50px 55px;
    line-height: 55px;
    font-size: 40px;
    margin: 0 auto 40px;
  }
  .bl_products .el_sec_mainTtl .hp_small {
    font-size: 28px;
  }
  .bl_products .ly_cont_inner {
    width: 690px;
    border: none;
    padding: 64px 35px 95px;
  }
  .bl_products .ly_cont_inner::before,
  .bl_products .ly_cont_inner::after {
    display: none;
  }
	.bl_products .bl_media_list{
		gap: 80px;
	}
  .bl_products .bl_media {
    flex-flow: column;
  }
  .bl_products .bl_media .bl_media_imgWrapper {
    flex: none;
  }
  .bl_products .bl_media .bl_media_body .bl_media_ttl {
    font-size: 28px;
    line-height: 50px;
    padding-bottom: 16px;
    margin-bottom: 24px;
  }
  .bl_products .bl_media .bl_media_body .bl_media_ttl .hp_mincho {
    font-size: 34px;
  }
  .bl_products .bl_media .bl_media_body .bl_media_ttl .hp_small {
    font-size: 28px;
  }
  .bl_products .bl_media .bl_media_body .bl_media_subTtl {
    font-size: 28px;
    text-align: center;
    margin-bottom: 8px;
  }
  .bl_products .bl_media .bl_media_body p + p {
    margin-bottom: 0;
  }
  .bl_products .bl_media:last-of-type .bl_media_body p:last-of-type {
    margin-top: 35px;
  }
  .bl_products .bl_media .bl_media_body > *:not(:first-of-type) {
    margin-top: 0;
  }
  .bl_products .bl_media .bl_media_body .bl_content_list .bl_content_ttl {
    height: 54px;
    text-align: center;
    font-size: 28px;
    margin-top: 32px;
    padding: 6px 0 7px 0;
  }
  .bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList {
    font-size: 24px;
    padding: 32px 85px;
    letter-spacing: 0.96px;
    display: flex;
    flex-flow: column;
    height: 424px;
  }
  .bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList li {
    position: relative;
  }
  .bl_products .bl_media .bl_media_body .bl_content_list .bl_productsList li span {
    position: absolute;
    top: 32px;
    left: 140px;
  }
  .bl_products .el_btn {
    background: url(../images/enzyme/buy_btn_sp.svg) top center / cover no-repeat;
    width: 458px;
    height: 114px;
    font-size: 32px;
  }
  .bl_products .el_btn:first-of-type {
    margin: 80px auto 80px;
  }
  .bl_products .el_btn:last-of-type {
    margin: 80px auto 0;
  }
  .bl_products .el_btn::after {
    display: none;
  }
  .bl_products .el_btn + .bl_media {
    margin-top: 0;
  }
}
/*=======================================================
data
=======================================================*/
.bl_data {
  background-color: #4f212a;
  padding: 64px 0 80px;
}
.bl_data .ly_cont_inner {
  background: url(../images/enzyme/data_bg.jpg) top center / cover no-repeat;
  width: 1024px;
  height: 710px;
  padding: 56px 0 45px;
}
.bl_data .el_sec_mainTtl {
  font-size: 28px;
  color: #4f1f27;
}
.bl_data .bl_data_cont {
  display: flex;
  gap: 72px;
  justify-content: center;
}
.bl_data .bl_data_cont .bl_data01 {
  display: flex;
  flex-flow: column;
  position: relative;
}
.bl_data .bl_data_cont .bl_data01 figure {
  width: 232px;
}
.bl_data .bl_data_cont .bl_data02 figure {
  width: 584px;
}
.bl_data .bl_data_cont .bl_data02 figure img{
  filter: drop-shadow(0px 3px 6px #00000029);
}
.bl_data .bl_data_cont .bl_data01 p {
  position: absolute;
  text-align: center;
  top: 336px;
  left: 5px;
}
.bl_data .bl_data_cont .bl_data01 p .hp_bold {
  display: block;
  font-size: 18px;
  padding-bottom: 8px;
}
@media screen and (max-width: 750px) {
  .bl_data {
    padding: 96px 30px 96px;
  }
  .bl_data .ly_cont_inner {
    background: url(../images/enzyme/data_bg_sp.jpg) top center / cover no-repeat;
    width: 100%;
    height: 1024px;
    padding: 56px 55px 60px;
  }
  .bl_data .el_sec_mainTtl {
    font-size: 36px;
    margin-bottom: 32px;
  }
  .bl_data .bl_data_cont {
    flex-flow: column;
    gap: 0;
  }
  .bl_data .bl_data_cont .bl_data01 {
    flex-flow: nowrap;
    gap: 28px;
    margin-top: -35px;
    order: 2;
    z-index: 2;
  }
  .bl_data .bl_data_cont .bl_data02 {
    order: 1;
  }
  .bl_data .bl_data_cont .bl_data01 figure {
    width: 230px;
  }
  .bl_data .bl_data_cont .bl_data02 figure {
    width: 566px;
  }
  .bl_data .bl_data_cont .bl_data01 p {
    position: static;
    margin-top: 73px;
  }
  .bl_data .bl_data_cont .bl_data01 p .hp_bold {
    display: block;
    font-size: 26px;
    padding-bottom: 24px;
  }
  .bl_data .bl_data_cont .bl_data01 p .hp_color {
    font-size: 24px;
  }
}
