@charset "UTF-8";

/*-----------------------------
 common
-------------------------------*/
html{ 
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    color: #333;
    background: #fff;
    /*scroll-behavior: smooth;*/
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a {text-decoration: none;}

img {
    /* display: block; */
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
  
.container,section{
    display:block; 
    margin:0 auto;
}

.container{ 
    max-width: 750px;
    /*overflow-x: hidden;*/
    font-size: 1rem;
    text-align: center;
}

section{
    padding:60px 40px 60px;
    text-align: center;
    background-color: #fff;
}

.fade-in-section {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-section.visible {
    opacity: 1;
    transform: translateY(0);
}

.br-sp {
    display: inline;
  }

.sec_bg01{background-color: #fff;}

.sec_bg02{background-color: #f9f4ed;}

.text{
    font-size: 1.25rem;
    color: #585353;
    margin: 10px 20px 20px;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    text-align:justify;
    line-height: 2.5rem;}

.illust
    {width: 80%;
    margin: 0 auto;}

.illust img{
    width: 100%;
    display: block;
}  

.align-center{text-align: center;}

.header_box {
    margin: 0;
    padding: 0;
  }
  
  
.highlight {
    background-color: yellow;
  }

/*----------------------------
横並びcss
-------------------------------*/
.row{
    display: flex;
    flex-direction: row;
    justify-content:space-between;
    align-items: baseline;
}

/*----------------------------
h2 orange
-------------------------------*/

h2{word-break: break-all;}
.h2_orange{ 
    margin: 0 auto;
    margin-bottom: 15px;
    display:block;
    text-align: center;
}

.h2_orange > h2{ 
    display:inline-block;
    color:#FF6633;
    font-size:2.3rem;
    line-height: 3.5rem;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    padding-bottom: 3px;
    border-bottom:2px solid #FF6633;}

small{
    display: block;
    color:#FF6633;
    font-size:1rem;}

/*-----------------------------
h2 list-h2
-------------------------------*/
.h2-list{
    position: relative;
    margin: 0 auto 40px;
    display:inline-block;
    text-align: center;
    font-size:1.8rem;
    color:#4e4e4e;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    border-top: solid 1px #4e4e4e;
    border-bottom: solid 1px #4e4e4e;
    padding: 15px 5px 15px 15px;
    line-height: 1.3rem;
}

.h2-list::before{
    content: "";
    display: inline-block;
    width: 1.8rem;
    height: 1.8rem;
    color: #FF6633;
    background-size: contain;
    line-height: 1.8rem;
    vertical-align:middle;}

.h2-list01::before{
background-image: url(../img2/num-icon1.png);}

.h2-list02::before{
    background-image: url(../img2/num-icon2.png);}
           
.h2-list03::before{
    background-image: url(../img2/num-icon3.png);}
                    
.h2-list04::before{
        background-image: url(../img2/num-icon4.png);}

.h2-list05::before{
    background-image: url(../img2/num-icon5.png);}

.h2-list06::before{
    background-image: url(../img2/num-icon6.png);}


/*-----------------------------
h3 merit
-------------------------------*/

.merit_box{padding-bottom:40px;}

.h3_merit{
    width: 80%;
    margin: 0 auto;
}


.h3_merit img{/*メリット画像*/
    padding-bottom:5px;
    display: block;
    margin: 0 auto;
    width: 50%;}

.h3_merit_ttl{
    text-align: center;
    color: #4d9f6c;
    font-size: 2rem;
    margin-top:20px;
    padding-bottom: 5px;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    display: inline-block; 
    border-bottom: 3px dotted #4d9f6c;
    line-height: 1.5;
    }


/*-----------------------------
h3 サブタイトル
-------------------------------*/

.h3_ttl{  /*親ボックス*/
    padding-top: 10px;
    padding-bottom: 10px;
    width: 60%;
    margin: 0 auto;
    margin-bottom: 25px;
    text-align: center;
    color:#4d9f6c;}

.sab_cap {
    margin-top: 0;
    display: block;
    text-align: center;
    font-size: small;
    }

.h3_span{display: block;}

.ask_ttl{
    font-size:1.3rem;
    display: inline-flex;
    justify-content: center; /* 横中央 */
    align-items: center;
    background-color: yellow;
    padding:5px 25px;
    margin: 40px 0 0;
    border-radius:50px;
    border:2px solid #4d9f6c;
}

/*header------------------------------------------------------*/
.famhead {
    margin: 0;
    padding: 0;
    background-image: url("../img2/header_bg.png");
    background-size:contain;
    background-repeat: no-repeat;
    background-position: top center; 
    min-height: 600px;
    max-width: 750px;
    display: flex;
    justify-content: center;
    align-items:flex-start;
    position: relative;
   }

.header_box{
    position: absolute;
    top: 150px; 
    text-align: center;
    display: block;
    width: 90%;
}

.header_box img {
    display: block;
  }

.famhead h1 img{
    display: block;
    width: 80%;
    margin: 0 auto;
}

.header_tit{
    padding-top: 25px;
}

/*社長メッセージ--------------------------------*/    

.message{margin-top: 60px;}

.message img{
    display:block;
    max-width: 200px;
    margin :0 auto;
    margin-top: 20px;
    margin-bottom: 30px;
}

/*目次部分-------------------------------*/
.toc{
    background-color: #FFFFFF;
    margin:15px 0;
    padding: 0;
    border: 1px solid #666;
}

.toc a{color: #4e4e4e;}

.mokuji {
    counter-reset:number; /*数字をリセット*/
    list-style-type: none!important; /*数字を一旦消す*/ 
    padding: 0;
    background-color: #fff;
  }

.mokuji li {
    position: relative;
    line-height: 1.5;
    border-bottom:1px solid #666;
    padding: 0.5em 0.5em 0.5em 2.3em;
    list-style-type: none!important;
    background-color: #FFFFFF;
    font-size: 1.3rem;
    color: black;
    text-align: left;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
  }

.mokuji li:hover {
    background-color: #f9f4ed;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* これで浮いて見える */
  }

.mokuji li a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: transparent; 
    transform: translateY(-2px); /* ちょっと浮く感じ */
  }
   
.mokuji li::before{
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    /*数字のデザイン変える*/
    display:inline-block;
    background: #EE7917;
    color: white;
    font-family: 'Avenir','Arial Black','Arial',sans-serif;
    font-weight:bold;
    font-size: 1.3rem;
    border-radius: 50%;
    left: 15px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
}

.mokuji li::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    width: 9px;
    height: 9px;
    margin: auto;
    border-top: 2px solid #fbb03b;
    border-right: 2px solid #fbb03b;
    transform: rotate(45deg);
    box-sizing: border-box;
  }
  
  .mokuji li:last-of-type {
    border-bottom: none;
  }

.mokuji img{ /*目次の見出し画像*/
    display:block;
    margin: 0 auto;
    width: 70%;}


/*03_salesflow-------------------------------*/
.salesflow_box{
    padding:20px 25px;
    position: relative;
    border: 1px solid #4d9f6c;
    border-radius: 15px;
    background-color: #fff;
}

.salesflow_item {
    display: flex;
    justify-content: space-between;
    align-items:flex-start;
    gap: 30px;}
  
.sales_txt {
    font-size: 1.1rem;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    text-align: left;
    line-height: 1.8rem;
    align-self: flex-start;
}
  
.salesd_img img {
max-width: 120px; 
align-self: flex-start;
margin-top: -20px;
}

.salesflow_h4{
font-size:1.4rem;
font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
text-align: left;
font-weight:bold;
padding-bottom:3px;
}

.salesflow_box dt.salesflow_h4::before {
    content: "1";
    color: white; 
    background-color: orange;
    border-radius: 50%;
    padding: 0.5em;
    margin-right: 0.5em; 
    display: inline-flex;
    align-items: center; 
    justify-content: center; 
    width: 1.3em; 
    height: 1.3em; 
    line-height: 1.3em; 
 }
        
.salesflow_box:nth-of-type(2) dt.salesflow_h4::before {
    content: "2";
}
.salesflow_box:nth-of-type(3) dt.salesflow_h4::before {
    content: "3";
}
.salesflow_box:nth-of-type(4) dt.salesflow_h4::before {
    content: "4";
}
.salesflow_box:nth-of-type(5) dt.salesflow_h4::before {
    content: "5";
}
.salesflow_box:nth-of-type(6) dt.salesflow_h4::before {
    content: "6";
}

.arrow-down {/*下向き矢印デザイン*/
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #EE7917; 
    margin: 10px auto; 
}



/*04_私たちがサポートします---------------------*/

.tencho_name{
    display:block;
    margin-top: 15px;
    font-weight: bold;
    padding-bottom: 25px;
    text-align: center;}

.name_tittle{
    display: block;
    font-size:small;}

.item_tencho{ 
    display:block;
    margin: 0 auto;
    width:30%;}


/*05_JAのリスト-------------------------------*/

.ja-ttl{
	padding: 10px 0;
	text-align: center;
    font-size: 1.2rem;
	color: #ffffff;
	font-weight: bold;
    letter-spacing: 0.1rem;
	background-color: green;
	border-radius: 12px 12px 0 0
}

.jalist{
	margin: 20px ;
	border: 2px solid green;
	border-radius: 15px 15px 0 0;
    background-color: #fff;
}

.box{
	width: 100%;
    padding: 20px 15px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
    gap: 25px;
}

.jalist-inner{
	width: 47%;
	padding-left: 15px;
    text-align: left;
}

.ja-shop{font-size: 1.2rem;}

.jalist-inner{	
	list-style: none;	
}

.shikaku{
	color: green;
}

/*06_Voice見出し-------------------------------*/
.voice-box{
    margin-top: 15px;
    margin-bottom: 50px;}

.voice-ttl{
    font-size: 1.4rem;
	text-align: center;
	width: 100%;
    padding: 20px 0;
	color: rgb(250, 248, 248);
	font-weight: bold;
	background: linear-gradient(
    135deg, 
    rgb(237, 146, 76) 20px, 
    transparent 0px);
	background-color: rgb(62, 155, 66);
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

.voice_text{
    text-align: justify;
    margin-top: 15px;}

.float-image-left {
    width: 18%;
    float: left;
    margin-right: 10px;
}

.float-image-right{
    width: 35%;
    float: right;
    margin-top: -15px;
    margin-left: 10px; 
}

.float-image-right-suika{
    width: 35%;
    float: right;
    margin-top: -30px;
    margin-left: 10px; 
}

.Fruits-Introduction{
    border: 2px solid #EE7917;
    padding:15px;
    text-align: left;
    background-color: #fff;
}

.float_right{
    text-align: right;
}

.Fruits-Introduction_title{
    color:#FF6633;
    font-size:1.4rem;
    font-weight: bold;
    text-align: left;
    padding-bottom: 5px;
}

.text-align-left{font-size: 1.2rem;}

.font-small{font-size: 0.8rem;}


/*07_生産者-------------------------------*/
.seisansya  { 
    display: flex;
    justify-content: center;
}

.seisansya img{
    width:100%;
}

.seisansya-message{
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: 25px;
    text-align: center;
}

/*08_コンタクト-------------------------------*/

.contact_inner{margin-top: 25px;}

.contact_button{
}

.contact_note{
    display: block;
    margin: 0 auto;
    text-align: center;
}

.contact_button img {
    margin: 0 auto;
    display: block;
    max-width: 70%;
    height: auto;
}

.contact_button img {
    transition: transform 0.3s ease, opacity 0.3s ease; 
}

.contact_button img:hover {
    opacity: 0.7; /* 半透明にする */
    transform: scale(1.1); /* 画像を少し大きくする */
}

.contact_button img:active {
    opacity: 0.5; /* クリック時に更に透明に */
    transform: scale(1); /* クリック時に戻す */
}

.contact_inner_box{
    margin-top: 30px;
    text-align: center;
    display: block;
    margin: 0 auto;
    padding-bottom: 30px;
}

.contact_txt::before {
    content: "■";
    color: #4d9f6c;
    font-size: 1rem;
    margin-right: 2px;
}

.contact_txt{
    font-size: 1.2rem;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }


/*各種イラスト/画像のサイズ-------------------------------*/

.item_illust{ 
    display:block;
    margin-top: 25px;
    margin: 0 auto;
    width:40%;}

.item_illust02{ 
    display:block;
    margin: 0 auto;
    width:90%;}

.item_illust03{ 
    display:block;
    margin: 0 auto;
    max-width: 20%;
    margin-top: 35px;
}

.item_illust04{ 
    display:block;
    margin: 0 auto;
    max-width: 70%;
    margin-top: 35px;
    margin-bottom: 25px;
}


/*09 Q＆Aのアコーディオン---------------------*/

.faq{
    margin-top: 20px ;
}

.accordion {
    max-width: 730px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-radius: 20px;
    overflow: hidden;
    font-family: sans-serif;
  }
  
.accordion-header {
    width: 100%;
    padding: 16px 48px 16px 16px;
    text-align: left;
    background-color: #4D9F6C;
    border: none;
    outline: none;
    cursor: pointer;
    color: #fff;
    font-size: 1.2rem;
    font-weight:500;
    border-bottom: 2px solid #fff;
    position: relative;
    transition: background-color 0.3s ease;
}

.accordion .accordion-header:nth-last-of-type(1) {
  border-bottom: none;
}
 
  .accordion-header::after {
    content: '▼';
    position: absolute;
    right: 20px;
    transition: transform 0.3s ease;
  }
  
  .accordion-header.active {
    background-color: #7CC16F; /* 開いたときの背景色 */
  }
  
  .accordion-header.active::after {
    transform: rotate(-180deg); /* 矢印を上向きに */
  }
  
  .accordion-content {
    max-height: 0;
    overflow: hidden;
    padding: 0 16px;
    background-color: #fff;
    text-align: left;
    transition: max-height 0.4s ease, padding 0.4s ease;
  }
  
  .accordion-content p {
    margin: 16px 0;
    line-height: 1.6;
  }

  .accordion-content.active {
    max-height: 300px; /* 調整可能 */
    padding:20px 15px;
  }
  
  .question {
    display: inline-block;
    width: 24px;
    height: 24px;
    line-height: 22px;
    vertical-align: 1px;
    text-align: center;
    border-radius: 50%;
    background-color: #fff;
    color: #4D9F6C;
    font-weight: bold;
    margin-right: 8px;
    padding: -5px;
    /* border: 3px solid #fff; */
    font-size: 1.2rem;
  }

  .answer-line {
    display: flex;
    align-items: flex-start;
    gap: 8px;
  }
  
  .answer-line .anser {
    color: #4D9F6C;
    font-weight: bold;
    flex-shrink: 0;
    margin-top: -1px;
    padding-right: 5px;
    font-size: 1.3rem;
    font-weight: bold;
    margin-left: 6px;
  }
  
  .answer-line p {
    margin: 0;
    line-height: 1.6;
    font-size: 1.2rem;
    color: #585353;
  }

  .document_dl{ 
    margin-top: 100px;
    margin-bottom: 50px;}


/*上に戻るボタン---------------------*/

#backToTopBtn {
    display: none;
    position: fixed;
    width: 180px;
    height:80px;
    bottom: 40px;
    right: 40px;
    z-index: 100;
    font-size: 1.2rem;
    border: none;
    outline: none;
    background-color: hsl(168, 82%, 31%);
    color: white;
    cursor: pointer;
    padding: 12px;
    border-radius:30px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
    transition: opacity 0.3s;
    }
    
    #backToTopBtn:hover { 
    background-color: #555;
    }

/*フローティングバナ（お問い合わせはこちら）ー-----------*/
.floating-banner {
    position: fixed;
    bottom:15px; 
    left: 0;
    right: 0;
    padding: 0 15px 10px;
    box-sizing: border-box; 
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(30%);
    transition: opacity 0.4s ease, transform 0.4s ease;
    }
    
.mail_icon{
    display: inline-block;
    width: 30px;
    height:auto;
    align-items:start;
}

.banner-content {
    background-color: #e48b0f;
    color: #fff;
    border-radius: 10px;
    padding: 25px 24px;
    text-align: center;
    max-width: 750px;
    margin: 0 auto;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    font-family: sans-serif;
    }

.banner-content a {
    text-decoration: none;
    color: #fff;
    font-size: 1.3rem;
    font-weight: bold;
    margin-left: 10px;
    transition: transform 0.3s ease;
    }

.floating-banner.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    }

.banner-content a:hover {
    transform: scale(1.1);
    }


      @keyframes slideUp {
        from {
          opacity: 0;
          transform: translateY(30%);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
      }