@charset "UTF-8";

/* -----------------------------
パンくずリスト
--------------------------------*/
.bread-wrap{
  max-width: 1200px;
  width: 90%;
  margin: auto;
  padding: 1vw 0;
  font-size: 1.3rem;
  text-align: right;
}
.bread-wrap span{
  transition: .4s;
  text-transform: uppercase;
}
.bread-wrap a:hover span{
  transition: .4s;
}
.bread-wrap li{
  display: inline;
}
.bread-wrap li:after{
  content: url(../img/tiangle_green.png);
  position: relative;
  top: -1px;
  padding: 5px;
}
.bread-wrap li:last-of-type:after{
  display: none;
}
.bread_check{
  color:#999;
}


/* -----------------------------
common
--------------------------------*/
.container{
  padding-top: 80px;
}
.lower_section{
  margin-bottom: 150px;
  padding-top: 13vw;
  margin-top: -13vw;
}
.contents_inner{
  max-width: 1200px;
  width: 85%;
}
.lower_title_ja{
  display: block;
  text-align: center;
  font-size:1.8rem;
  margin-top: 5px;
}
.lower_title{
  font-size:4rem;
  font-weight: 600;
  text-transform: uppercase;
  margin-top: 1vw;
  text-align: center;
  line-height: normal;
}
.lower_subtitle{
  font-size: 2.2rem;
  margin-bottom: 3.5vw;
  text-transform: uppercase;
  line-height: normal;
  font-weight: 600;
}
.lower_subtitle span{
  display: block;
  font-weight: 600;
}
.lower_title_text{
  font-size: 1.8rem;
  margin-bottom: 1.5vw;
}
.link_wrap{
  border: 1px solid;
  border-radius: 3px;
  padding: 1.5vw;
  transition: .4s;
  cursor: pointer;
}
.link_wrap:hover{
  opacity: .8;
  transition: .4s;
}
.link_title{
  font-size:2rem;
  text-align: center;
  padding: 3vw 0;
}
.link_img_on{
  position: absolute;
  font-weight: normal;
  z-index: 10;
  display: block;
  left: 1px;
  top: -4px;
  line-height: normal;
}
.product_link{
  position: relative;
}
.on_title{
  font-size: 2.4rem;
  text-transform: uppercase;
  font-weight: 600;
}
.on_title_ruby{
  font-size: 1.5rem;
  display: block;
}

@media screen and (min-width: 0px) and (max-width: 750px){
  .bread-wrap li:after{
    content: url(../img/tiangle_green_sp.png);
    position: relative;
    top: -1px;
    padding: 5px;
  }

  .lower_section{
    margin-bottom: 100px;
    padding-top: 28vw;
    margin-top: -24vw;
  }
  .lower_title{
    margin-top: 4vw;
    font-size: 3rem;
  }
  .lower_title_text{
    margin-bottom: 4.5vw;
  }
  .lower_subtitle{
    margin-bottom: 8vw;
  }
  .lower_top_img {
    width: 90%;
    margin: 2vw auto 0;
}
  .contents_inner{
    width: 90%;
  }
  /* -----------------------------
  pride
  --------------------------------*/
.pride_link_wrap {
  border-top: 1px solid #436952;
  border-bottom: 1px solid #436952;
  padding: 4vw;
  margin-top: 8vw;
  margin-bottom: 20vw;
  width: 90%;
  box-sizing: border-box;
  text-transform: uppercase;
}
.pride_link_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 90%;
  margin: auto;
}
.pride_link a:after {
  content: url(../img/tiangle_green_sp.png);
  position: relative;
  top: -2px;
  padding-left: 1.5vw;
}
.sdgs_link a:after{
  content: url(../img/tiangle_down_green_sp.png);
}
  .pride_link_wrap p{
    text-align: center;
    width: 100%;
    padding-bottom: 3vw;
  }
  .pride_link_item{
    margin: auto;
    width: 95%;
  }
  .pride_link span{
    color: #e59a17;
  }
  .pride_item_lower{
    margin-bottom: 12vw;
  }
  .merit_wrap{
    padding: 6vw 0 8vw;
    margin-bottom: 15vw;
    text-align: center;
  }
  .merit_wrap h4 {
    font-size: 1.6rem;
    text-align: center;
    width: 100%;
    padding-bottom: 6vw;
}
.merit_wrap span {
  font-size: 2.8rem;
  text-transform: uppercase;
  display: block;
}
.merit_item {
  width: 87%;
  margin: auto;
  border-top: 1px solid #436952;
}
.merit_item li {
  border-bottom: 1px solid #436952;
  padding: 2vw;
}
.feature_circle {
  display: inline-block!important;
  border: 1px solid #436952;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 15px;
}
  .pride_feature_item{
    display: block;
    margin-bottom: 10vw;
  }
  .pride_feature_text{
    width: 100%;
    margin-bottom: 7vw;
  }
  .pride_feature_img{
    width: 90%;
    margin: auto;
  }
  .feature_text_wrap {
    width: 95%;
    border-left: 1px solid #436952;
    box-sizing: border-box;
    padding-left: 20px;
    margin-left: 20px;
}
.feature_text_wrap p {
  padding: .8vw 0;
}
  .pride_title_wrap_r{
    padding-left: 0%;
  }
  .pride_item_p_r{
    padding-left: 0%;
  }
  .pride_item_p_r p{
    padding-bottom: 8vw;
  }
  .pride_title_wrap_r .pride_item_title::after{
    width: calc(100% - 9em);
  }
  .pride_item_title_3::after{
    width: calc(100% - 15em);
  }
  .about_eiyou{
    display: block;
    margin-bottom: 10vw;
  }
  .about_eiyou_text {
    width: 100%;
    padding: 3vw 0 3vw 4vw;
    margin: 5vw 0;
    box-sizing: border-box;
    border-left: 1px solid #436952;
}
.about_eiyou_text p {
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
  .about_eiyou_img{
    width: 75%;
    margin: auto;
  }
  .about_eiyou_img span, .about_eiyou_img img {
    display: block;
    text-align: center;
    padding-top: 1vw;
    margin: auto;
}
.eiyou_under {
  border-bottom: 1px solid #436952;
  padding-bottom: 0.5vw;
}
  .purpose_item p{
    width: 100%;
    padding: 6vw 4.5vw;
    background-color: #faf7f2;
    box-sizing: border-box;
  }
  .purpose_item{
    padding-bottom: 10vw;
  }
  .purpose_square {
    border: 1px solid #436952;
    border-radius: 3px;
    padding: 3vw;
    width: 100%;
    margin: 0 auto 15vw;
    box-sizing: border-box;
}
.purpose_square p {
  display: inline-block;
  font-size: 1.6rem;
  margin: auto;
}
.purpose_wrap h5{
  margin-bottom: 3vw;
  text-align: center;
}
.purpose_item img {
  margin: auto;
  display: block;
  padding-bottom: 4vw;
  width: 23%;
}
.frozen_bg {
  background-color: #F2F7F4;
}
.frozen_bg_inner {
  width: 90%;
  margin: auto;
  padding: 15vw 0;
}
.frozen_item {
  border: 1px solid #436952;
  border-radius: 3px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
  border-left: 45px solid #436952;
  padding: 4vw 2.5vw 4vw 4vw;
  margin: 0 auto 6vw;
}
.frozen_item span {
  position: absolute;
  font-size: 2.2rem;
  left: -30px;
  top: 33%;
  color: #fff;
  font-size: 2.8rem;
  display: inline-block;
}
.frozen_item h5 {
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
.product_link_arrow {
  width: 90%;
  margin: auto;
}
.product_link_arrow:before {
  content: url(../img/arrow.png);
  display: block;
  text-align: center;
  margin-top:-12vw;
}
.on_title{
  font-size: 1.8rem;
  white-space: nowrap;
}
.on_title_ruby{
  font-size: 1.3rem;
}
.link_wrap{
  box-sizing: border-box;
  padding: 2.5vw;
}
  /* -----------------------------
  product
  --------------------------------*/
  /* .products-item {
    padding-bottom: 10vw;
} */
  .products-item:last-of-type{
    padding-bottom: 0;
  }
  .product_item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 20vw;
  }
  .product_subtitle {
    line-height: 2;
    font-size: 2rem;
    text-transform: uppercase;
    border-left: 12px solid;
    padding-left: 15px;
    margin-bottom: 3.5vw;
  }
  .products_leaf_wrap {
    display: block;
    margin: 4vw 0 0 0;
}
.products_leaf_wrap>div {
  width: 100%;
  padding-bottom: 10vw;
}
.products_leaf_item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 3vw;
}
.leaf_item_left img {
  width: 80%;
}
.leaf_item_right {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 80%;
}
.leaf_item_right div {
  width: 45%;
  margin: 2%;
  position: relative;
}
.on_name {
  position: absolute;
  background-color: rgba(255,255,255,0.8);
  width: 100%;
  font-size: 1.2rem;
  display: block;
  text-align: center;
  bottom: 7px;
  padding: 0;
}
.more_text {
  text-align: right;
  display: block;
  width: 95%;
}
.leaf_item_name_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #436952;
  padding-bottom: 1vw;
  margin-bottom: 1vw;
  width: 100%;
}
  .herb_title h4::before, .herb_title h4::after{
    width: 25%;
  }
  .herb_title h4::before{
    left:-10%;
  }
  .herb_title h4::after{
    right:-10%;
  }

  .product_text{
    width: 68%;
  }
  .product_text span{
    font-size: 2rem;
  }
  .ec_btn {
    position: relative;
    overflow: hidden;
    border: 1px solid #436952;
    text-transform: uppercase;
    display: block;
    border-radius: 3px;
    padding: 10px 20px;
    text-align: center;
    outline: none;
    width: 55%;
    margin: auto;
    transition: ease .2s;
}
.herb_title h4 {
  font-size: 2.2rem;
  font-weight: 600;
  position: relative;
  display: block;
  padding: 0px 40px;
  margin-bottom: 1vw;
  text-align: center;
}
.herb_title h4::before, .herb_title h4::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 17%;
  height: 1px;
  background-color: #436952;
}
.herb_title h4::before {
  left: 0%;
}
.herb_title h4::after {
  right: 0%;
}
/* モーダル */
.modal_trigger {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 5vw;
  width: 100%;
}
.modal_trigger li {
  width: 48%;
  margin-bottom:6vw;
  position: relative;
}
.modal_btn p {
  font-size: 1.5rem;
  padding-bottom: 1vw;
  text-align: center;
}

@-webkit-keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
/* モーダルウィンドウ内 */
.modal_box {
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 190;
}
.modal_bg {
  background-color: rgba(49, 65, 62, .9);
  height: 100%;
  width: 100%;
}
.modal_inner {
  background-color: #fff;
  left: 50%;
  width: 75%;
  padding: 4vw;
  position: absolute;
  top: 55%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); 
}
.modal_close {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 0;
  font-size: 3rem;
}
.modal_block{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.mordal_left{
  width: 45%;
}
.mordal_left p{
  font-size: 1.8rem;
  padding-bottom: 1.5vw;
}
.mordal_left span{
  padding-top: .5vw;
  display: block;
}
.mordal_left .name_en{
  font-family: 'Allison', cursive;
  font-size: 3rem;
  display: inline-block;
  margin-left: 2vw;
}
.mordal_left img{
  width: 80%;
}
.mordal_right{
  width: 55%;
  margin-top: 5vw;
}
.mordal_right dl{
  padding-bottom: 1.5vw;
}
.mordal_right dl:last-of-type{
  padding-bottom: 0;
}
.mordal_title{
  background-color: #436952;
  border-radius: 3px;
  padding: .5vw 2vw;
  margin-bottom: 1vw;
  display: inline-block;
  color: #fff;
}
.products_item_flex img {
  width: 90%;
  margin: auto;
  display: block;
  padding-bottom: 1.5vw;
}

.souse_img {
  display: flex;
  justify-content: space-between;
}
.souse_img img {
  width: 48%;
}
  .modal_inner{
    width: 75%;
  }
  .modal_block{
    display: block;
  }
  .mordal_left {
    width: 70%;
    margin: auto;
  }
  .mordal_right{
    width: 100%;
  }
  .mordal_left img {
    width: 70%;
    margin: auto;
    display: block;
  }
  .mordal_left p{
    text-align: center;
  }
  .modal_area .modal_box .modal_inner{
    height: 70vh;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .mordal_left span{
    padding-top: 1.5vw;
    text-align: center;
  }
  .mordal_right dl{
    padding-bottom: 3.5vw;
  }
  .product_subtitle{
    font-size: 2rem;
    margin-bottom: 3.5vw;
  }
  .products_item_flex{
    display: block;
    margin-top:8vw;
  }
  .products_item_flex li{
    width: 90%;
    margin: auto;
    padding-bottom: 16vw;
    padding-right:0;
  }
  .products_item_text{
    height: auto;
    padding-bottom: 6vw;
  }
  .leaf_item_name{
    font-size: 1.5rem;
  }
  .products_item_flex img{
    width: 90%;
    margin: auto;
    display: block;
    padding-bottom: 4vw;
  }
  .leaf_item_name_flex span {
    font-family: 'Allison', cursive;
    display: inline-block;
    font-size: 2.8rem;
    line-height: normal;
    font-weight: 600;
}
.ec_btn_gr {
  position: relative;
  overflow: hidden;
  border: 1px solid #436952;
  background-color: #436952;
  color: #fff;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 10px 20px;
  text-align: center;
  outline: none;
  width: 50%;
  margin: auto;
  transition: ease .2s;
}

  /* -----------------------------
  sdgs
  --------------------------------*/
.sdgs_subtitle {
  font-size: 2.4rem;
  padding-bottom: 3vw;
  font-weight: 600;
  text-align: center;
}
.sdgs_lead {
  background-color: #faf7f2;
  padding: 6vw 4.5vw;
    margin: 0 auto 12vw;
}
.sdgs_lead>p {
  font-size: 1.8rem;
  padding-bottom: 1vw;
  font-weight: 600;
}
.sdgs_goal_wrap {
  background-color: #436952;
  padding: 6vw 0;
}
.sdgs_goal_wrap h4 {
  font-size: 2.4rem;
  color: #fff;
  padding-bottom: 6vw;
  text-align: center;
  font-weight: 600;
  text-transform: uppercase;
}
.sdgs_goal_bg {
  background-color: #fff;
  border-radius: 3px;
  padding: 6vw 4.5vw;
  width: 90%;
  margin: 0 auto 3vw;
  box-sizing: border-box;
  margin-bottom: 7vw;
}
.sdgs_goal_left img {
  margin-right: 15px;
}
.sdgs_goal_left img:last-of-type{
  margin-right: 0;
}
.sdgs_goal_left{
  display: flex;
  justify-content: center;
  width: 28%;
  margin: auto;
  padding-bottom: 6vw;
}
.sdgs_goal_right h5 {
  font-weight: 600;
  font-size: 1.8rem;
  text-align: center;
  position: relative;
  padding-bottom: 4vw;
}
.sdgs_goal_right h5:after {
  content: '';
  position: absolute;
  display: block;
  width: 7px;
  height: 7px;
  left: 50%;
  bottom: 6px;
  border-radius: 50%;
  background-color: #436952;
}
  .esg_item{
    padding-bottom: 8vw;
  }
  .esg_item:last-of-type{
    padding-bottom: 0;
  }
  .esg_item h5 {
    border: solid 1px #436952;
    display: inline-block;
    padding: 1vw 4vw;
    margin-bottom: 5vw;
    border-radius: 3px;
}
.esg_item ul {
  list-style: inherit;
}
.esg_item ul li {
  list-style: inherit!important;
  margin-left: 20px;
}
  /* -----------------------------
  company
  --------------------------------*/
  .company_wrap{
    margin-top: 6vw;
  }
  .company_wrap h3 {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 5vw;
}
  .company_text{
    position: relative;
    padding-bottom: 150px;
    margin-bottom: 8vw;
  }
  .company_text_item {
    width: 100%;
    padding-bottom: 3vw;
  }
  .company_text_item:last-of-type {
    padding-bottom: 0;
  }
  .company_text::after {
    position: absolute;
    background: #436952;
    content: "";
    width: 1px;
    height: 120px;
    left: 50%;
    bottom: 0;
}
.company_item_wrap {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  margin: 0 auto 2.5vw;
  padding: 0px 0 2.5vw 0;
  border-bottom: 1px solid #436952;
}
  .company_logo{
    padding-bottom: 10vw;
  }
  .company_item_left{
    width: 26%;
    text-align: center;
  }
  .company_item_right{
    width: 65%;
  }
  .company_item_left img{
    width: 57%;
  }
  .company_wrap h4 {
    font-size: 2.8rem;
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 8vw;
    font-weight: 600;
}
  .company_profile{
    padding-bottom: 15vw;
  }
  .access_wrap_item{
    width: 100%;
    padding-bottom: 8vw;
  }
  .access_wrap_item:last-of-type{
    padding-bottom: 0;
  }
  .access_wrap p{
    text-align: center;
    padding-bottom: 3.5vw;
  }
  .iframe-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 80px;
    overflow: hidden;
  }
  .iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  /* -----------------------------
  contact
  --------------------------------*/
  .contact_text_wrap {
    margin-bottom: 10vw;
    margin-top: 6vw;
    text-align: center;
}
  .caution_bg{
    background-color: #faf7f2;
    padding: 6vw 3vw;
    width: 100%;
    margin: 8vw auto;
    box-sizing: border-box;
  }
  .caution_p{
    text-align: center;
    font-weight: normal!important;
  }
  .caution_bg p:first-of-type{
    font-weight: 600;
    padding-bottom: 1.5vw;
  }
  .font-red {
    color: #d3381c;
  }
  .caution_bg a {
      border-bottom: 1px solid;
      cursor: pointer;
  }
  /* 入力フォーム */
  .form_item:last-of-type{
    padding-bottom: 10vw;
  }
  .form_item{
    margin-bottom: 8vw;
  }
  .form td{
    display: block;
    padding-bottom: 7vw;
  }
  .form_left {
    margin-bottom: 1.5vw;
    width: 100%;
    text-align: left;
    display: inline-block;
}
.input-square {
  width: 100%;
  height: 45px;
  border: 1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
.input-square_t {
  width: 100%;
  height: 180px;
  border: 1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
  .contact_btn{
    width: 100%;
    box-sizing: border-box;
  }
  /* 確認画面 */
  .contact_check {
    padding-top: 6vw;
}
  .error_messe {
    color: #d3381c;
    text-align: center;
    font-weight: normal!important;
    padding-bottom: 0!important;
}
  .form_next{
    width: 100%;
    margin: 8vw auto 10vw;
  }
  table.form_next th{
    width: 37%;
  }
  .submit_btn_wrap{
    display: block;
    width: 100%;
  }
  .submit_btn_item{
    width: 100%;
    margin-bottom: 8vw;
  }
  .submit_btn_item:last-of-type{
    margin-bottom: 0;
  }
  .submit_btn_back {
    position: relative;
    overflow: hidden;
    border: 1px solid #436952;
    background-color: #fff;
    text-transform: uppercase;
    display: block;
    border-radius: 3px;
    padding: 14px 50px;
    text-align: center;
    outline: none;
    width: 100%;
    margin: auto;
    transition: ease .2s;
  }
  .submit_btn_back{
    color:#436952;
  }
  .submit_btn_back01 {
    margin-top: 15vw;
  }
  table.form_next th{
  width: 37%;
  font-weight: normal;
  background: #faf7f2;
  text-align: left;
  }
  table.form_next td, table.form_next th {
  border: 1px solid #ccc;
  padding: 10px;
}
.thanks_wrap {
  padding-top: 4vw;
}
.thanks_wrap p{
  text-align: center;
}
  /* -----------------------------
  policy
  --------------------------------*/
  .lower_header{
    margin-top: 80px;
  }
  .policy_wrap{
    padding-top: 0;
  }
  .policy_inner {
    padding: 12vw 0 20vw;
    width: 90%;
    margin: auto;
  }
  .policy_title{
    margin-top:14vw
  } 
  
  }


  @media screen and (min-width: 751px) and (max-width: 1024px){
  .contents_inner{
    width: 90%;
  }
  .lower_section{
    margin-bottom: 120px;
    padding-top: 17vw;
    margin-top: -17vw;
  }
  .lower_top_img{
    width: 90%;
    margin: 5vw auto 0;
  }
  .lower_title{
    font-size:3rem;
    margin-top:30px;
  }
  .lower_title_ja{
    font-size:1.5rem;
  }
  .lower_title_text {
    font-size: 2.2rem;
    margin-bottom: 1.5vw;
}
  .product_link_arrow {
    max-width: 1000px;
    width: 90%;
    margin: auto;
  }
    /* -----------------------------
    こだわり
    --------------------------------*/
  .lower_subtitle span{
    font-weight: 600;
    font-size: 2.6rem;
  }
  .pride_link_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #436952;
    border-bottom: 1px solid #436952;
    padding:2vw 3vw;
    margin-top:7vw;
    margin-bottom: 13vw;
    box-sizing: border-box;
    text-transform: uppercase;
}
  .pride_link_wrap p{
    width: 40%;
    line-height:normal;
    text-transform: uppercase;
  }
  .pride_link_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 60%;
}
.pride_link a:after {
  content: url(../img/tiangle_green.png);
  position: relative;
  top: -3px;
  padding-left: .8vw;
}
.sdgs_link a:after{
  content: url(../img/tiangle_down_green.png);
}
.pride_link span{
  color: #e59a17;
}
.pride_item_lower {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row-reverse;
  margin-bottom: 8vw;
}
.pride_item_p{
  padding-right: 11%;
}
.merit_wrap {
  display: flex;
  align-items: center;
  padding: 6vw 0;
  margin-bottom: 8vw;
}
.merit_wrap{
  padding: 6vw 0;
}
.merit_wrap h4 {
  font-size: 1.6rem;
  text-align: center;
  width: 45%;
}
.merit_wrap span {
  font-size: 2.8rem;
  text-transform: uppercase;
  display: block;
}
.merit_item {
  width: 47%;
  border-top: 1px solid #436952;
}
.merit_item li {
  border-bottom: 1px solid #436952;
  padding: 1.5vw;
}
.pride_feature_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6vw;
}
.pride_feature_text {
  width: 45%;
}
.feature_circle {
  display: inline-block!important;
  border: 1px solid #436952;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 15px;
}
.feature_text_wrap {
  width: 90%;
  border-left: 1px solid #436952;
  padding-left: 35px;
  margin-left: 20px;
}
.feature_text_wrap p {
  padding: .8vw 0;
}
.pride_feature_img {
  width: 45%;
}
.pride_item_lower2 {
  flex-direction: inherit;
}
.pride_title_wrap_r {
  padding-left: 10%;
}
.pride_title_wrap_r .pride_item_title::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  height: 1px;
  background-color: #436952;
  width: calc(100% - 9em);
  max-width: 300px;
}
.pride_item_p_r {
  padding-left: 10%;
  padding-top: 2vw;
}
.pride_item_p_r p{
  padding-bottom: 3vw;
}
.about_eiyou {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin:6vw 0;
}
.about_eiyou_text {
  width: 55%;
  border-left: 1px solid #436952;
  padding: 2.5vw 0 2.5vw 2vw;
}
.about_eiyou_text p {
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
.about_eiyou_img{
  width: 37%;
}
.about_eiyou_img span, .about_eiyou_img img {
  display: block;
  text-align: center;
  padding-top: 1vw;
}
.eiyou_under {
  border-bottom: 1px solid #436952;
  padding-bottom: 0.5vw;
}
.purpose_wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 4vw 0;
}
.purpose_item{
  width: 47%;
}
.purpose_wrap h5 {
  text-align: center;
}
.purpose_item img {
  margin: auto;
  display: block;
  padding-bottom: 3vw;
  width: 23%;
}
.purpose_item p {
  width: 100%;
  padding: 4vw 2.5vw;
  background-color: #faf7f2;
  box-sizing: border-box;
}
.purpose_square {
  border: 1px solid #436952;
  border-radius: 3px;
  padding: 3vw;
  margin: 0 auto 8vw;
  width: 100%;
  box-sizing: border-box;
}
.frozen_bg {
  background-color: #F2F7F4;
}
.frozen_bg_inner {
  padding: 6vw 0;
  width: 90%;
  margin: auto;
}
.frozen_item {
  border: 1px solid #436952;
  border-left: 66px solid #436952;
  border-radius: 3px;
  position: relative;
  margin: 0 auto 3vw;
  padding: 3vw 2vw;
  width: 100%;
  box-sizing: border-box;
}
.frozen_item:last-of-type {
  margin-bottom: 0;
}
.frozen_item span {
  position: absolute;
  top: 30%;
  left: -40px;
  color: #fff;
  font-size: 2.8rem;
  display: inline-block;
}
.frozen_item h5 {
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
.product_link_arrow:before {
  content: url(../img/arrow.png);
  display: block;
  text-align: center;
  margin-top: -9vw;
}
/* -----------------------------
商品紹介
--------------------------------*/
/* .products-item {
  padding-bottom: 10vw;
} */
.products-item:last-of-type {
  padding-bottom: 0;
}
.product_item {
  margin: 0 auto;
  padding-bottom: 10vw;
  width: 95%;
}
.product_img{
  width: 22%;
}
.circle_bg {
  position: absolute;
  top: -30px;
  left: -30px;
  background-color: #f7f6ed;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  text-align: center;
}
.product_text{
  width: 65%;
}
.product_text span {
  font-size: 2.4rem;
  padding-bottom: 1.5vw;
  text-transform: uppercase;
  display: block;
  line-height: normal;
}
.product_subtitle {
  line-height: 2;
  font-size: 2.2rem;
  text-transform: uppercase;
  border-left: 12px solid;
  padding-left: 15px;
  margin-bottom: 2vw;
}
.products_leaf_wrap>div{
width: 47%;
}
.leaf_item_right div {
  width: 45%;
  margin: 2%;
  position: relative;
}
.more_text {
  text-align: right;
  display: block;
  width: 95%;
}
.leaf_item_name_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #436952;
  padding-bottom: 1vw;
  margin-bottom: 1vw;
  width: 100%;
}
.leaf_item_right {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 95%;
}
.products_leaf_item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 1.5vw;
  height:205px;
}
.products_leaf_wrap {
  display: flex;
  justify-content: space-between;
  margin: 6vw 0;
}
.leaf_item_right div {
  width: 45%;
  margin: 2%;
  position: relative;
}
.on_name {
  position: absolute;
  background-color: rgba(255,255,255,0.8);
  width: 100%;
  font-size: 1.2rem;
  display: block;
  text-align: center;
  bottom: 8px;
  padding: 0;
}
.products_item_text{
  height: 170px;
}
.leaf_item_left img {
  width: 80%;
}
.link_img_on{
  line-height: normal;
}
.on_title{
  font-size: 2.2rem;
  white-space: nowrap
}
.on_title_ruby{
  font-size: 1.4rem;
}
.ec_btn {
  position: relative;
  overflow: hidden;
  border: 1px solid #436952;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 10px 20px;
  text-align: center;
  outline: none;
  width: 20%;
  margin: auto;
  transition: ease .2s;
}
.herb_title {
  text-align: center;
}
.herb_title h4 {
  font-size: 2.2rem;
  font-weight: 600;
  position: relative;
  display: inline-block;
  padding: 0 55px;
  margin-bottom: 1vw;
}
.herb_title h4::before, .herb_title h4::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 60%;
  height: 1px;
  background-color: #436952;
}
.herb_title h4::before {
  left: 100%;
}
.herb_title h4::after {
  right: 100%;
}

/* モーダル */
.modal_trigger {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-top: 5vw;
  width: 90%;
}
.modal_trigger li {
  width: 28%;
  margin: 0 2.66% 4vw;
  position: relative;
}
.modal_trigger li::before {
  content: '';
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  position: absolute;
  left: -20px;
  top: 100%;
  z-index: -1;
  opacity: 0;
}
.modal_btn p {
  font-size: 1.5rem;
  padding-bottom: 1vw;
  text-align: center;
}

@-webkit-keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
/* モーダルウィンドウ内 */
.modal_box {
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 190;
}
.modal_bg {
  background-color: rgba(49, 65, 62, .9);
  height: 100%;
  width: 100%;
}
.modal_inner {
  background-color: #fff;
  left: 50%;
  width: 75%;
  padding: 4vw;
  position: absolute;
  top: 55%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); 
}
.modal_close {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 0;
  font-size: 3rem;
}
.modal_block{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.mordal_left{
  width: 40%;
}
.mordal_left p{
  font-size: 1.8rem;
  padding-bottom: 1.5vw;
  text-align: center;
}
.mordal_left span{
  padding-top: .5vw;
  display: block;
}
.mordal_left .name_en{
  font-family: 'Allison', cursive;
  font-size: 3rem;
  display: inline-block;
  margin-left: 2vw;
}
.mordal_left img{
  width: 100%;
}
.mordal_right{
  width: 55%;
  margin-top: 5vw;
}
.mordal_right dl{
  padding-bottom: 1.5vw;
}
.mordal_right dl:last-of-type{
  padding-bottom: 0;
}
.mordal_title{
  background-color: #436952;
  border-radius: 3px;
  padding: .5vw 2vw;
  margin-bottom: 1vw;
  display: inline-block;
  color: #fff;
}
.products_item_flex {
  display: flex;
  justify-content: flex-start;
  margin-top: 4vw;
  margin-bottom: 10vw;
}
.products_item_flex li:last-of-type{
  padding-right: 0;
}
.products_item_flex li {
  width: 30.6%;
  padding-right: 3.5vw;
}
.products_item_flex img {
  padding-bottom: 1.5vw;
}
.leaf_item_name_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #436952;
  padding-bottom: 1vw;
  margin-bottom: 1vw;
  width: 100%;
}
.leaf_item_name {
  font-size: 1.5rem;
  width: 55%;
  font-weight: 600;
  line-height: normal;
}
.leaf_item_name_flex span {
  font-family: 'Allison', cursive;
  display: inline-block;
  font-size: 2.8rem;
  line-height: normal;
  font-weight: 600;
}
.ec_btn_gr {
  position: relative;
  overflow: hidden;
  border: 1px solid #436952;
  background-color: #436952;
  color: #fff;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 10px 20px;
  text-align: center;
  outline: none;
  width: 50%;
  margin: auto;
  transition: ease .2s;
}
.products_item_flex img {
  padding-bottom: 1.5vw;
}
/* -----------------------------
sdgs
--------------------------------*/
.sdgs_subtitle {
  font-size: 2.4rem;
  padding-bottom: 4vw;
  font-weight: 600;
}
.sdgs_lead {
  background-color: #faf7f2;
  padding: 4vw 3.5vw;
  margin: 0 auto 8vw;
}
.sdgs_lead>p {
  font-size: 1.8rem;
  padding-bottom: 1vw;
  font-weight: 600;
}
.sdgs_goal_bg {
  background-color: #fff;
  padding: 4vw 3vw;
  border-radius: 3px;
  width: 90%;
  margin: 0 auto 3vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
}
.sdgs_goal_wrap {
  background-color: #436952;
  padding: 6vw 0;
}
.sdgs_goal_left {
  display: flex;
  justify-content: flex-start;
  width: 13%;
}
.sdgs_goal_left img {
  margin-right: 15px;
}
.sdgs_goal_left img:last-of-type {
  margin-right: 0;
}
.sdgs_goal_right {
  width: 50%;
}
.sdgs_goal_right h5 {
  font-weight: 600;
  font-size: 1.8rem;
  text-align: center;
  position: relative;
  padding-bottom: 2.5vw;
}
.sdgs_goal_right h5:after {
  content: '';
  position: absolute;
  display: block;
  width: 7px;
  height: 7px;
  left: 50%;
  bottom: 8px;
  border-radius: 50%;
  background-color: #436952;
}
.esg_item {
  padding-bottom: 6vw;
}
.esg_item h5 {
  border: solid 1px #436952;
  display: inline-block;
  padding: .5vw 1vw;
  border-radius: 3px;
  margin-bottom: 2vw;
}
.esg_item ul {
  list-style: inherit;
}
.esg_item ul li {
  list-style: inherit!important;
  margin-left: 20px;
}
/* -----------------------------
会社紹介
--------------------------------*/
.company_wrap {
  margin-top: 6vw;
}
.company_wrap h3 {
  font-size: 2.2rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 3vw;
}
.company_wrap h4 {
  font-size: 2.8rem;
  text-transform: uppercase;
  text-align: center;
  padding-bottom: 4vw;
  font-weight: 600;
}
.company_text {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  position: relative;
  padding-bottom: 250px;
  margin-bottom: 4vw;
}
.company_text_item{
  width: 47%;
}
.company_text::after {
  position: absolute;
  background: #436952;
  content: "";
  width: 1px;
  height: 200px;
  left: 50%;
  bottom: 0;
}
.company_profile {
  padding-bottom: 6vw;
}
.company_item_wrap {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 80%;
  margin: 0 auto 2vw;
  padding: 0 0 2vw 0;
  border-bottom: 1px solid #436952;
}
.company_logo{
  padding-bottom: 6vw;
}
.company_item_left {
  width: 20%;
	text-align: center;
}
.company_item_left img {
  width: 45%;
}
.company_item_right{
  width: 62%;
}
.access_wrap_item{
  width: 80%;
  margin: auto;
}
.access_wrap{
  display: block;
}
.access_wrap_item:first-of-type{
  padding-bottom: 5vw;
}
.access_wrap p{
  text-align: center;
  padding-bottom: 2vw;
}
.iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 80px;
  overflow: hidden;
}
.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* -----------------------------
contact
--------------------------------*/
.contact_text_wrap {
  margin-bottom: 10vw;
  margin-top: 6vw;
  text-align: center;
}
.caution_bg {
  background-color: #faf7f2;
  padding: 3vw;
  width: 65%;
  margin: 6vw auto;
  text-align: center;
}
.caution_bg p:first-of-type{
  font-weight: 600;
  padding-bottom: 1.5vw;
}
.caution_bg p{
  font-weight: normal!important;
}
.caution_bg a {
  border-bottom: 1px solid;
  cursor: pointer;
}
.error_messe{
  color:#d3381c;
  text-align: center;
  font-weight: normal!important;
  padding-bottom: 0!important;
}
/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
textarea {
  resize: vertical;
}
input[type='checkbox'],
input[type='radio'] {
  display: none;
}
input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
.form{
  margin: auto;
  width: 70%;
}
.form_left {
  text-align: left;
  display: inline-block;
}
.font-red {
  color: #d3381c;
}
.form td {
  width: 100%;
  display: block;
  padding-bottom: 3vw;
}
.form_t{
  position: static;
  top:inherit;
}
.input-square {
  width: 100%;
  height: 45px;
  border: 1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
.input-square_t {
  width: 100%;
  height: 180px;
  border: 1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
.contact_btn {
  padding: 14px 40px;
}
/* 確認ページ */
.contact_check {
  padding-top: 4vw;
}
.contact_check p {
  text-align: center;
}
.form_next{
  width: 70%;
  margin: 3vw auto 6vw;
}
.submit_btn{
  width: 100%;
}
.submit_btn_back {
  position: relative;
  overflow: hidden;
  border: 1px solid #436952;
  background-color: #fff;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 14px 50px;
  text-align: center;
  outline: none;
  width: 100%;
  margin: auto;
  transition: ease .2s;
}
.submit_btn_back span{
  color:#436952;
}
.submit_btn_back01 {
  width: 40%;
  margin-top: 5vw;
}
table.form_next td, table.form_next th {
  border: 1px solid #ccc;
  padding: 10px;
}
table.form_next th {
  width: 33%;
  font-weight: normal;
  background: #faf7f2;
  text-align: left;
}
.submit_btn_wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 70%;
  margin: 3vw auto 0;
}
.submit_btn_item {
  width: 46%;
}
.thanks_wrap {
  padding-top: 4vw;
}
.thanks_wrap p{
  text-align: center;
}
/* -----------------------------
policy
--------------------------------*/
.lower_header{
  margin-top: 80px;
}
.policy_wrap{
  padding-top: 0;
}
.policy_inner {
  padding: 8vw 0 10vw;
  width: 90%;
  margin: auto;
}   

}


@media screen and (min-width: 1025px){
  .link_img_on{
    top:inherit;
  }
  .on_title_ruby{
    font-size: 1.6rem;
  }
  .on_title{
    font-size: 2.6rem;
  }

/* -----------------------------
商品へのこだわり
--------------------------------*/
.pride_link span {
  color: #e59a17;
}
.lower_header{
  padding-top: 80px;
}
.lower_top_img{
  max-width: 1200px;
  width: 90%;
  margin: 2vw auto 0;
}
.lower_top_img img{
  border-radius: 5px;
}
.pride_link_wrap{
  display: flex;
  justify-content: center;
  align-items: center;
  border-top:1px solid #436952;
  border-bottom:1px solid #436952;
  padding: 1vw;
  margin-bottom: 13vw;
  margin-top: 5vw;
  box-sizing: border-box;
  text-transform: uppercase;
}
.pride_link_wrap p{
  text-transform: uppercase;
  width: 30%;
}
.pride_link_item{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 40%;
}
.pride_link{
  transition: .4s;
}
.pride_link a:after{
  content: url(../img/tiangle_green.png);
  position: relative;
  top: -3px;
  padding-left: .5vw;
}
.sdgs_link a:after{
  content: url(../img/tiangle_down_green.png);
}
.pride_title_wrap_r{
  padding-left: 10%;
}
.pride_item_title{
  font-size: 2.2rem;
}
.pride_item_p_r{
  padding-left: 10%;
  padding-top: 2vw;
}
.pride_item_p_r p{
  padding-bottom: 3vw;
}
.pride_title_wrap_r .pride_item_title::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  height: 1px;
  background-color: #436952;
  width: calc(100% - 9em);
  max-width: 300px;
}
.pride_item_lower{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row-reverse;
  margin-bottom: 8vw;
}
.pride_item_lower2{
  flex-direction: inherit;
}
/* メリット */
.merit_wrap{
  display: flex;
  align-items: center;
  padding: 4vw 0;
  margin-bottom: 8vw;
}
.merit_wrap h4{
  font-size: 1.6rem;
  text-align: center;
  width: 50%;
}
.merit_wrap span{
  font-size: 2.8rem;
  text-transform: uppercase;
  display: block;
}
.merit_item{
  width: 35%;
  border-top: 1px solid #436952;
}
.merit_item li{
  border-bottom: 1px solid #436952;
  padding: 1vw;
}
/* 特徴 */
/* === 水耕栽培 */
.pride_item_title::before{
  bottom: 80%;
  left: -11%;
}
.pride_feature_item{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6vw;
}
.pride_feature_text{
  width: 45%;
}
.feature_circle{
  display: inline-block!important;
  border: 1px solid #436952;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  margin-right: 15px;
}
.feature_text_wrap{
  width: 90%;
  border-left: 1px solid #436952;
  padding-left: 35px;
  margin-left: 20px;
}
.feature_text_wrap p{
  padding: .8vw 0;
}
.pride_feature_img{
  width: 45%;
}
/* === 栄養素 */
.about_eiyou{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2vw;
}
.about_eiyou_text{
  width: 55%;
  border-left: 1px solid #436952;
  padding: 3vw 0 3vw 2vw;
}
.about_eiyou_text p{
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
.about_eiyou_img{
  width: 40%;
}
.about_eiyou_img img{
  display: block;
  margin: auto;
}
.about_eiyou_img span , .about_eiyou_img img{
  display: block;
  text-align: center;
  padding-top: 1vw;
}
.eiyou_under{
  border-bottom:1px solid #436952;
  padding-bottom: 0.5vw;
}
/* === 冷凍の目的 */
.purpose_wrap{
  display: flex;
  justify-content: space-between;
  align-items:flex-start;
  margin: 4vw 0;
}
.purpose_wrap h5{
  text-align: center;
}
.purpose_item{
  width: 45%;
}
.purpose_item p{
  width: 85%;
  margin: auto;
}
.purpose_item img{
  margin: auto;
  display: block;
  padding-bottom: 3vw;
  width: 23%;
}
.purpose_square{
  border:1px solid #436952;
  border-radius: 3px;
  padding: 3vw;
  margin: 0 auto 8vw;
  width: 75%;
}
.purpose_square p{
  display: inline-block;
  font-size: 1.7rem;
  margin: auto;
}
.frozen_bg{
  background-color: #F2F7F4;
}
.frozen_bg_inner{
  padding: 6vw 0;
  width: 90%;
  margin: auto;
}
.frozen_bg_inner ul{
  padding: 3vw 0;
}
.frozen_item{
  border:1px solid #436952;
  border-left: 66px solid #436952;
  border-radius: 3px;
  position: relative;
  padding: 2vw;
  margin: 0 auto 3vw;
  width: 75%;
}
.frozen_item:last-of-type{
  margin-bottom: 0;
}
.frozen_item span{
  position: absolute;
  top:33%;
  left:-40px;
  color:#fff;
  font-size:2.8rem;
  display: inline-block;
}
.frozen_item h5{
  font-size: 1.8rem;
  padding-bottom: 1vw;
}
.product_link_arrow{
  max-width: 1000px;
  width: 90%;
  margin: auto;
}
.product_link_arrow:before{
  content: url(../img/arrow.png);
  display: block;
  text-align: center;
  margin-top: -6vw;
}
/* -----------------------------
商品紹介
--------------------------------*/
/* .products-item{
  padding-bottom: 10vw;
} */
.product_text span{
  font-size:2.4rem;
}
.product_subtitle{
  line-height: 2;
  font-size: 2.2rem;
  text-transform: uppercase;
  border-left: 12px solid;
  padding-left: 15px;
  margin-bottom: 1.5vw;
}
.product_item{
  margin: 0 auto;
  padding-bottom: 10vw;
  width: 50%;
}
.products_leaf_wrap{
  display: flex;
  justify-content: space-between;
  margin: 4vw 0;
}
.products_leaf_wrap>div{
  width: 45%;
}
.products_leaf_item{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 1.5vw;
}
.herb_title{
  text-align: center;
}
.herb_title h4{
  font-size: 2.2rem;
  font-weight: 600;
  position: relative;
  display: inline-block;
  padding: 0 55px;
  margin-bottom: 1vw;
}
.herb_title h4::before , .herb_title h4::after{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color:#436952;
}
.herb_title h4::before{
  left: 100%;
}
.herb_title h4::after{
  right: 100%;
}
.leaf_item_left img{
  width: 80%;
}
.leaf_item_right{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 49%;
}
.leaf_item_right div{
  width: 45%;
  margin: 2%;
  position: relative;
}
.more_text{
  text-align: right;
  display: block;
  width: 95%;
}
.leaf_item_name_flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #436952;
  padding-bottom: 1vw;
  margin-bottom: 1vw;
  width: 100%;
}
.leaf_item_name{
  font-size: 1.6rem;
  font-weight: 600;
  line-height: normal;
  width: 50%;
}
.leaf_item_name_flex span{
  font-family: 'Allison', cursive;
  display: inline-block;
  font-size: 2.8rem;
  line-height: normal;
  font-weight: 600;
}
.on_name{
  position: absolute;
  background-color:rgba(255,255,255,0.8);
  width: 100%;
  font-size:1.2rem;
  display: block;
  text-align: center;
  bottom: 11px;
  padding: 0;
}
.products_item_flex{
  display: flex;
  justify-content: flex-start;
  margin-top: 4vw;
  margin-bottom: 10vw;
}
.products_item_flex li{
  width: 30%;
  padding-right: 4.5vw;
}
.products_item_flex li:last-of-type{
  padding-right: 0;
}
.products_item_text{
  height: 145px;
}
.products_item_flex img{
  padding-bottom: 1.5vw;
}
.products-item:last-of-type{
  padding-bottom: 0;
}
.souse_title{
  display: flex;
}
.souse_title h3:nth-of-type(1){
  width: 32%;
}
/*---------------------------
ec_btn　ホバー左から　背景白→緑
-----------------------------*/
.ec_btn{
  position: relative;
  overflow: hidden;
  border:1px solid #436952;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 10px 20px;
  text-align: center;
  outline: none;
  width: 20%;
  margin: auto;
  transition: ease .2s;
}
.ec_btn span {
  position: relative;
  z-index: 3;
  color:#436952;
}
.ec_btn:hover span {
  color:#fff
}
/*== 背景が流れる（左から右） */
.ec_btn:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background:#436952;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
/*hoverした際の形状*/
.ec_btn:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}
/*---------------------------
ec_btn_gr　ホバー左から　背景白→緑
-----------------------------*/
.ec_btn_gr{
  position: relative;
  overflow: hidden;
  border:1px solid #436952;
  background-color: #436952;
  color: #fff;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 10px 20px;
  text-align: center;
  outline: none;
  width: 50%;
  margin: auto;
  transition: ease .2s;
}
.ec_btn_gr span {
  position: relative;
  z-index: 3;
  color:#fff;
}
.ec_btn_gr:hover span {
  color: #436952;
}
/*== 背景が流れる（左から右） */
.ec_btn_gr:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background:#fff;
  color: #436952;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
/*hoverした際の形状*/
.ec_btn_gr:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}

/* モーダルウィンドウ */
.modal_trigger {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-top: 5vw;
  width: 90%;
}
.modal_trigger li {
  width: 28%;
  margin: 0 2.66% 4vw;
  position: relative;
}
.modal_trigger li:hover{
  opacity: .8;
  cursor: pointer;
}
.modal_trigger li::before {
  content: '';
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  position: absolute;
  left: -20px;
  top: 100%;
  z-index: -1;
  opacity: 0;
}
.modal_btn p{
  font-size: 1.5rem;
  padding-bottom: 1vw;
  text-align: center;
}

@-webkit-keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes slideRightBg {
  0% {
    opacity: 0;
    left: -50%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}
/* モーダルウィンドウ内 */
.modal_box {
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 190;
}
.modal_bg {
  background-color: rgba(49, 65, 62, .9);
  height: 100%;
  width: 100%;
}
.modal_inner {
  background-color: #fff;
  left: 50%;
  width: 55%;
  padding: 4vw;
  position: absolute;
  top: 55%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); 
}
.modal_close {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 0;
  font-size: 3rem;
}
.modal_block{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.mordal_left{
  width: 40%;
}
.mordal_left p{
  font-size: 1.8rem;
  padding-bottom: 1.5vw;
  text-align: center;
}
.mordal_left span{
  padding-top: .5vw;
  display: block;
}
.mordal_left .name_en{
  font-family: 'Allison', cursive;
  font-size: 3rem;
  display: inline-block;
  margin-left: 2vw;
}
.mordal_left img{
  width: 100%;
}
.mordal_right{
  width: 55%;
  margin-top: 5vw;
}
.mordal_right dl{
  padding-bottom: 1.5vw;
}
.mordal_right dl:last-of-type{
  padding-bottom: 0;
}
.mordal_title{
  background-color: #436952;
  border-radius: 3px;
  padding: .5vw 2vw;
  margin-bottom: 1vw;
  display: inline-block;
  color: #fff;
}

/* -----------------------------
sdgs
--------------------------------*/
.sdgs_subtitle{
  font-size: 2.4rem;
  padding-bottom: 3vw;
  font-weight: 600;
}
.sdgs_lead{
  background-color: #faf7f2;
  padding: 2.5vw 3vw 3vw;
  margin: 0 auto 8vw;
}
.sdgs_lead>p{
  font-size:1.8rem;
  padding-bottom: 1vw;
  font-weight: 600;
}
.sdgs_lead_inner{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.sdgs_lead_left{
  width: 38%;
}
.sdgs_lead_right{
  width: 58%;
}
.sdgs_goal_wrap{
  background-color:#436952;
  padding: 6vw 0;
}
.sdgs_goal_wrap h4{
  font-size:2.4rem;
  color:#fff;
  padding-bottom: 4vw;
  text-align: center;
  font-weight: 600;
  text-transform: uppercase;
}
.sdgs_goal_bg{
  background-color:#fff;
  padding: 4vw 3vw;
  border-radius: 3px;
  width: 75%;
  margin: 0 auto 3vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sdgs_goal_left{
  display: flex;
  justify-content: flex-start;
  width: 12%;
}
.sdgs_goal_left img{
  margin-right: 15px;
}
.sdgs_goal_left img:last-of-type{
  margin-right: 0;
}
.sdgs_goal_right{
  width: 50%;
}
.sdgs_goal_right h5{
  font-weight: 600;
  font-size: 1.8rem;
  text-align: center;
  position: relative;
  padding-bottom: 2.5vw;
}
.sdgs_goal_right h5:after{
  content:'';
  position: absolute;
  display: block;
  width: 7px;
  height: 7px;
  left:50%;
  bottom: 15px;
  border-radius: 50%;
  background-color:#436952;
}
.esg_item{
  padding-bottom: 4vw;
}
.esg_item:last-of-type{
  padding-bottom: 0;
}
.esg_item p{
  padding-bottom: 10px;
}
.esg_item h5{
  border:solid 1px #436952;
  display: inline-block;
  padding: .5vw 1vw;
  border-radius: 3px;
  margin-bottom: 2vw;
}
.esg_item ul{
  list-style: inherit;
}
.esg_item ul li{
  list-style: inherit!important;
  margin-left: 20px;
}


/* -----------------------------
会社紹介
--------------------------------*/
.company_wrap{
  margin-top: 6vw;
}
.company_wrap h3{
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 3vw;
}
.company_text{
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  position: relative;
  padding-bottom: 250px;
  margin-bottom: 4vw;
}
.company_text_item{
  width: 43%;
}
.company_text::after{
  position: absolute;
  background: #436952;
  content: "";
  width: 1px;
  height: 200px;
  left: 50%;
  bottom: 0;
}
.company_wrap h4{
  font-size: 2.8rem;
  text-transform: uppercase;
  text-align: center;
  padding-bottom: 4vw;
  font-weight: 600;
}
.company_item_wrap{
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 70%;
  margin: 0 auto 1.5vw;
  padding: 0 0 1.5vw 0;
  border-bottom: 1px solid #436952;
}
.company_logo{
  padding-bottom: 4vw;
}
.company_item_right{
  width: 55%;
}
.company_item_left{
  width: 20%;
	text-align: center;
}
.company_item_left img{
  width: 45%;
}
.company_profile{
  padding-bottom: 6vw;
}
.access_wrap{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.access_wrap_item{
  width: 48%;
}
.access_wrap p{
  text-align: center;
  padding-bottom: 1.5vw;
}
.iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 80px;
  overflow: hidden;
}
.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* -----------------------------
お問い合わせ
--------------------------------*/
.contact_text_wrap{
  margin-bottom: 10vw;
  margin-top: 6vw;
  text-align: center;
}
.caution_bg{
  background-color: #faf7f2;
  padding: 3vw;
  width: 65%;
  margin: 3vw auto;
}
.caution_bg p:first-of-type{
  font-weight: 600;
  padding-bottom: 1.5vw;
}
.caution_bg a{
  border-bottom: 1px solid;
  cursor: pointer;
}
/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
textarea {
  resize: vertical;
}
input[type='checkbox'],
input[type='radio'] {
  display: none;
}
input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}

/* フォーム部分 */
.font-red{
  color:#d3381c;
}
.form{
  width: 63%;
  margin: auto;
}
.form td{
  padding-bottom: 3vw;
}
.input-square{
  width: 100%;
  height: 45px;
  border: 1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
.form_left{
  text-align: left;
  display: inline-block;
}
.input-square_t{
  width: 100%;
  height: 180px;
  border:1px solid #436952;
  padding: 2px 10px;
  border-radius: 3px;
  box-sizing: border-box;
}
.form_t{
  position: relative;
  top: -160px;
}
.submit_btn_wrap span{
  display: inline-block;
}
.contact_btn{
  width: 24%;
  margin-right: 0;
  margin: auto;
}
/* フォーム確認ページ */
.error_messe{
  color:#d3381c;
  text-align: center;
  font-weight: normal!important;
  padding-bottom: 0!important;
}
.contact_check{
  padding-top: 4vw;
}
.contact_check p{
  text-align: center;
}
.caution_p{
  text-align: center;
  padding-bottom: 2vw;
}
.form_next{
  width: 63%;
  margin: 3vw auto 6vw;
}
table.form_next td,table.form_next th{
	border:1px solid #ccc;
	padding:10px;
}
table.form_next th{
	width:30%;
	font-weight:normal;
	background:#faf7f2;
	text-align:left;
}
.submit_btn_wrap{
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 63%;
  margin: 3vw auto 0;
}
.submit_btn_item{
  width: 46%;
}
.submit_btn{
  width: 100%;
}
.submit_btn_back{
  position: relative;
  overflow: hidden;
  border: 1px solid #436952;
  background-color: #fff;
  text-transform: uppercase;
  display: block;
  border-radius: 3px;
  padding: 14px 50px;
  text-align: center;
  outline: none;
  width: 100%;
  margin: auto;
  transition: ease .2s;
}
.submit_btn_back span {
  position: relative;
  z-index: 3;
  color:#436952;
}
.submit_btn_back:hover span{
  color: #fff;
}
.submit_btn_back:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background:#436952;
  color: #436952;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
.submit_btn_back:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}
.submit_btn_back01{
  width: 30%;
  margin-top: 5vw;
}
/* 送信完了画面 */
.thanks_wrap{
  padding-top: 4vw;
}
.thanks_wrap p{
  text-align: center;
}
/* -----------------------------
プライバシーポリシー
--------------------------------*/
.policy_wrap{
  margin: 0 auto 6vw;
}
.policy_inner{
  max-width: 1200px;
  width: 85%;
  margin: auto;
  padding: 5vw 0;
}
.plicy_title{
  margin-top: 5vw;
}
.policy_list{
  padding-top: 6vw;
}
.policy_list li{
  margin-left: 20px;
}
.policy_list>p{
  font-size: 2rem;
  padding-bottom: 2vw;
}
.policy_list ol li{
  list-style: inherit;
  counter-reset: item;
  counter-reset: item 1; /*「2」からカウントし始める*/
}
.policy_list ol li{
  list-style: inherit;
}

}

