/* Scroll Lock */
.scrollLock {
  overflow: hidden !important;
  touch-action: none;
}
/* Scroll Lock END */

.pt_120{padding-top: 7.5rem !important;}
.pb_80{padding-bottom: 5rem !important;}
.mt_100{margin-top: 6.25rem !important;}
.mt_40{margin-top: 2.5rem !important;}
.mt_16{margin-top: 1rem !important;}
.ta_center{text-align: center !important;}
.aspect_ratio16-9{aspect-ratio:  16/9;}

.video_wrap{padding-bottom: 140px;}
.video_wrap iframe{
  display: block;
  width: 100%;
}

.future-story{
  padding-top: 120px;
  padding-bottom: 200px;
}
.farm-story{
  position: relative;
  margin-bottom: 120px;
}
.farm-story .dim{
  position: fixed;
  top: 0; left: 0;
  z-index : 20;
  width : 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.6);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out,
              visibility 0.2s ease-in-out;
}
.farm-story .dim.show{
  opacity: 1;
  visibility: visible;
}
.farm-story .btn_wrap{
  position: absolute;
  top: 0;
  left: 15px;
  width : calc(100% - 30px);
  height: 100%;
}
.farm-story .btn_wrap .farm_detail_btn{
  position: absolute;
  z-index : 25;
  width : 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.7;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.50);
  border: none;
  transition: background-color 0.2s ease-in-out,
            opacity 0.2s ease-in-out;
}
.farm-story .btn_wrap .farm_detail_btn::after,
.farm-story .btn_wrap .farm_detail_btn::before{
  content: "";
  background-color: #000;
  position: absolute;
  left: 50%; top: 50%;
  transform: translate(-50%,-50%);
  transition: transform 0.2s ease-in-out,
              background-color 0.2s ease-in-out;
}
.farm-story .btn_wrap .farm_detail_btn::after{
  width : 2px;
  height: 14px;
}
.farm-story .btn_wrap .farm_detail_btn::before{
  width : 14px;
  height: 2px;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(1){
  left: 40.70723684210527%;
  top: 63.888888888888886%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(2){
  left: 35.19736842105263%;
  top: 85.38011695906432%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(3){
  left: 16.200657894736842%;
  top: 45.760233918128655%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(4){
  left: 21.463815789473685%;
  top: 69.15204678362574%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(5){
  left: 27.79605263157895%;
  top: 64.03508771929825%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(6){
  left: 36.59539473684211%;
  top: 31.432748538011694%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(7){
  left: 57.23684210526315%;
  top: 49.122807017543856%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(8){
  left: 62.82894736842105%;
  top: 20.614035087719298%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(9){
  left: 69.57236842105263%;
  top: 44.15204678362573%;
}
.farm-story .btn_wrap .farm_detail_btn:nth-child(10){
  left: 86.51315789473685%;
  top: 62.86549707602339%;
}
.farm-story .btn_wrap .farm_detail_btn:hover{
  opacity: 1;
}
.farm-story .btn_wrap .farm_detail_btn.active{
  background-color: #EF4023;
  opacity: 1;
}
.farm-story .btn_wrap .farm_detail_btn.active::after,
.farm-story .btn_wrap .farm_detail_btn.active::before{
  background-color: #fff;
  transform: translate(-50%,-50%) rotate(135deg);
}
.farm-story .card_wrap{
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  z-index : 50;
  width : 384px;
  height: 577px;
  background-color: #fff;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  opacity: 0;
  visibility : hidden;
  transition: opacity 0.2s ease-in-out,
              visibility 0.2s ease-in-out;
}
.farm-story .card_wrap.show{
  opacity: 1;
  visibility: visible;
}

.farm-story .card_wrap .card{
  border: none;
}
.farm-story .card_wrap .card .img_box{
  width : 100%;
  height: 384px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position : center;
}

.farm-story .card_wrap .close_btn{
  position: absolute;
  right : 0;
  top: -35px;
  border: none;
  width : 15px;
  height: 15px;
  background-color: transparent;
}
.farm-story .card_wrap .close_btn::before,
.farm-story .card_wrap .close_btn::after{
  display : block;
  position: absolute;
  left: 50%; top: 50%;
  content: "";
  background-color: #fff;
  transform: translate(-50%,-50%) rotate(45deg);
}
.farm-story .card_wrap .close_btn::before{
  width : 2px;
  height: 20px;
}
.farm-story .card_wrap .close_btn::after{
  width  : 20px;
  height : 2px;
}
.farm-story .card_wrap .card .txt_box{
  min-height: 193px;
  height: max-content;
  padding: 30px 32px;
}
.farm-story .card_wrap .card .txt_box span{
  display : block;
  margin-bottom : 8px;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  color: #EF4023;
}
.farm-story .card_wrap .card .txt_box h3{
  margin-bottom : 8px;
  font-size: 24px;
  font-weight: 600;
  line-height: 36px;
}
.farm-story .card_wrap .card .txt_box p{
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  color: #585858;
}

.picto-story{
  padding: 120px 0 160px;
}
.picto-story ul{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 32px;
  row-gap: 80px;
  padding: 0 15px;
}
.picto-story li{
  display : flex;
  flex-direction: column;
  align-items: center;
}
.picto-story .img_box{
  margin-bottom: 30px;
  width : 200px;
  height: 200px;
}
.picto-story h3{
  margin-bottom: 16px;
  font-size: 32px;
  line-height: 46px;
}
.picto-story p{
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: #585858;
  text-align: justify;
  word-break: break-all;
}
.sect-story.future-list{
  padding-bottom: 120px;
}
.sect-story.future-list2 {
  padding-bottom: 200px;
}
.sect-story.future-list2 .block{
  position: relative;
  height: 580px;
}
.sect-story.future-list2 .block img{
  position: absolute;
}
.sect-story.future-list2 .block:nth-child(1) img{
  left: 0;
  bottom: 0;
  width: 250px;
  mix-blend-mode: darken;
}
.sect-story.future-list2 .block:nth-child(2) img{
  bottom:0;
  right: -11.25rem;
  width: 425px;
  mix-blend-mode: darken;
}
.sect-story.future-list2 .block:nth-child(1) .txt{
  padding-left: calc(160px - 2rem);
  padding-top: 310px;
  margin-left: 2rem;
}
.sect-story.future-list2 .block:nth-child(2) .txt{
  padding-top: 110px;
  margin-left: -2rem;
}
.sect-story.future-list2 .block .txt p{
  letter-spacing: -0.05em;
  margin-top: 1rem;
}
@media all and (max-width: 1280px){
  .sect-story.future-list2 .block{
    height: 45.3125vw;
  }
  .sect-story.future-list2 .block:nth-child(1) img{
    width: 19.5313vw;
  }
  .sect-story.future-list2 .block:nth-child(2) img{
    width: 33.2031vw;
  }
  .sect-story.future-list2 .block:nth-child(1) .txt{
    padding-top: 24.2188vw;
    padding-left: calc(12.5000vw - 2rem);
  }
  .sect-story.future-list2 .block:nth-child(2) .txt{
    padding-top: 8.5938vw;
  }
}

.farm-img-list2 .img_box{
  position: relative;
  margin-bottom: 30px;
}
.farm-img-list2 .img_box::after{
  position: absolute;
  left: 0; bottom: 0;
  content: "";
  width : 100%;
  height: 72px;
  opacity: 0.6;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, #000 100%);
}
.farm-img-list2 .img_box .address{
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 10px; right: 16px;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  z-index : 10;
}
.farm-img-list2 .img_box .address::before{
  display : block;
  content: "";
  width : 16px;
  height: 16px;
  background: url("/img/future/ico_address.svg") no-repeat center / cover;
  margin-right : 1px;
}
.farm-img-list2 .txt_box span{
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  color: #EF4023;
  margin-bottom: 8px;
}
.farm-img-list2 .txt_box h3{
  font-size: 24px;
  font-weight: 600;
  line-height: 36px;
  margin-bottom: 8px;
}
.sect-story.greenhouse{
  padding-bottom: 0;
  padding-top: 120px;
}

@media all and (max-width:1024px){
  .future-story{
    padding: 80px 0 120px;
  }
  .picto-story{
    padding: 80px 0 120px;
  }
  .picto-story .img_box{
    width : 120px;
    height: 120px;
    margin-bottom : 24px;
  }
  .picto-story h3{
    font-size: 24px;
    margin-bottom : 10px;
    line-height: 30px;
  }
  .picto-story p{
    font-size: 14px;
    line-height: normal;
  }
  .picto-story ul{
    row-gap: 60px;
  }
  .sect-story.greenhouse{
    padding-top: 80px;
  }
  .greenhouse .img-list{
    margin-bottom: 80px;
  }
  .page-container{
    padding-bottom: 0;
  }
}
@media all and (max-width: 768px){
  .md_mt_40{margin-top: 40px !important}
  .video_wrap h2{
    font-size: 20px;
  }
  .container.md_inner{
    padding: 0 20px;
  }
  .picto-story ul{
    grid-template-columns: repeat(2, 1fr);
    row-gap: 40px;
    column-gap: 16px;
  }
  .picto-story h3{
    font-size: 20px;
  }
  .farm-img-list2 .img_box::after{
    height: 60px;
  }
  .farm-img-list2 .img_box .address{
    bottom: 10px; right: 15px;
    font-size: 12px;
    line-height: 20px;
  }
  .farm-img-list2 .img_box .address::before{
    width : 12px;
    height: 12px;
  }
  .farm-img-list2 .txt_box span{
    display : block;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 24px;
  }
  .farm-img-list2 .txt_box h3{
    margin-bottom: 12px;
    font-size: 16px;
    line-height: 24px;
  }
  .farm-img-list2 .txt_box p{
    font-size: 14px;
    line-height: 22px;
  }
  .farm-img-list2 > div:not(:last-child){
    margin-bottom: 60px;
  }

  .farm-story .btn_wrap .farm_detail_btn{
    width : 40px;
    height: 40px;
  }

  .farm-story{
    padding: 0;
  }
  .farm-story .btn_wrap{
    width : 100%;
    left: 0;
  }
  .farm-story .btn_wrap .farm_detail_btn{
    width : 30px;
    height: 30px;
  }
  .farm-story .btn_wrap .farm_detail_btn::before{
    width : 10px;
    height : 1px;
  }
  .farm-story .btn_wrap .farm_detail_btn::after{
    height : 10px;
    width : 1px;
  }
  .farm-story .card_wrap{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    max-width : 384px;
    width : calc(100% - 30px);
    height: max-content;
  }
  .farm-story .card_wrap .card .txt_box{
    min-height: 153px;
    padding: 20px 16px 40px;
  }
  .farm-story .card_wrap .card .txt_box span{
    font-size: 14px;
    margin-bottom : 10px;
    line-height: 18px;
  }
  .farm-story .card_wrap .card .txt_box h3{
    font-size: 20px;
    line-height: 28px;
  }
  .farm-story .card_wrap .card .txt_box p{
    font-size: 12px;
    line-height: 20px;
  }
  .picto-story p{
    font-size: 12px;
  }

  .sect-story.future-list{
    padding-bottom: 80px;
  }
  .sect-story.future-list.md_pb_60{
    padding-bottom: 60px;
  }
  .sect-story.future-list2{
    padding-bottom: 80px;
  }
  .sect-story.future-list2 .block{
    height: max-content;
  }
  .sect-story.future-list2 .block:nth-child(1) .txt{
    padding: 84px 0 84px 104px;
    margin-left: 0;
  }
  .sect-story.future-list2 .block:nth-child(1) img{
    width: 136px;
    top: 50%;
    transform: translateY(-50%);
    bottom: auto;
  }
  .sect-story.future-list2 .block:nth-child(2) .txt{
    padding: 84px 120px 84px 0;
    margin: 0;
  }
  .sect-story.future-list2 .block:nth-child(2) img{
    width: 220px;
    right: -84px;
  }
}
@media all and (max-width: 414px){
  .farm-story .card_wrap .card .img_box{
    height: 92.754vw;
  }
}