@charset 'utf-8';
/*
 * name:top.css
 * author:sovanda nulo
*/

/* top
------------------------------------------------ */

/* section topics */
#visual { overflow: hidden; position: relative; width: 100vw; height: calc( 100vh - 13em ); }
#visual a { display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.visual--image { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.visual--image img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; display: block; object-fit: cover; object-position: center; }
.visual--logo { position: absolute; top: 25.68%; left: 50%; width: 55.1em; transform: translateX(-50%); }

    @media only screen and (min-width: 768px) and (max-width: 1830px) {
        #visual { height: calc( 100vh - 7.1vw ); }
    }

    @media only screen and (min-width: 768px) and (min-height: 1px) and (max-height: 1080px) {
        .visual--logo { width: 51.05vh; }
    }

    @media only screen and (max-width: 768px) {
        #visual { height: 100vw; }
        .visual--logo { width: 65.36vw; top: 21.86%; }
    }

.visual--slider { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 2; }
.visual--slide { display: block; overflow: initial; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.visual--slide img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.visual--slide .swiper-container { display: block; overflow: hidden; position: absolute; width: 100%; height: 100%; left: 0; top: 0; }

/* section topics */
#topics { padding: 8em 0 7.5em; }
#topics .section--btn { max-width: 14.6em; margin-top: 3.7em; }
#topics .section--btn a { background: none; color: #115135; padding: .4em .5em; }
.topics--break { max-width: 124em; position: relative; right: -4em; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.topics--info { width: 18.14%; }
.topics__lists { display: block; width: calc( 100% - 18.14% ); }
.topics--swiper .topics__list { width: 100%; }

    @media only screen and (min-width: 768px) {
        #topics .section--btn a:hover { background: #115135; color: #F1F1E6; }
        .topics--swiper .swiper-wrapper { flex-wrap: wrap; }
        .topics--swiper .swiper-slide { width: 32.01%; margin-right: 1.985%; }
        .topics--swiper .swiper-slide:nth-child(3n) { margin-right: 0; }
        .topics--swiper .swiper-pagination { display: none; }
    }

    @media only screen and (max-width: 768px) {
        #topics { padding: 4em 0 8.6em; }
        #topics .section--btn { max-width: fit-content; margin-top: 0; position: absolute; right: 0; top: 1.2em; }
        #topics .section--btn a { font-size: 1.4em; background: none; border: none; color: #115135; padding: 0; }
        #topics .section--btn a:after { content: ''; display: inline-block; vertical-align: -.3em; margin-left: .33em; width: 1.428em; height: 1.428em; background: url(../../img/share/icon-arrow-link.svg) no-repeat; background-size: 100% 100%; }
        .topics--break { display: block; right: auto; }
        .topics--info { width: 100%; }
        .topics__lists { width: 100%; }
        .topics--swiper { overflow: initial; }
        .topics--swiper .swiper-slide { width: 86.15%; margin-right: 2em; }
        .topics--swiper .swiper-slide:nth-child(n+2) { display: none; }
        .topics--swiper.swiper-initialized .swiper-slide:nth-child(n+2) { display: block; }
        .topics--swiper .swiper-pagination { height: 1.2em; bottom: -2.4em; top: auto; display: flex; align-items: center; justify-content: center; }
        .topics--swiper .swiper-pagination-bullet { position: relative; width: 1.2em; height: 1.2em; margin: 0 .4em !important; background: none; transition: all .3s ease; opacity: 1; border-radius: 50%; border: 1px solid #115135; box-sizing: border-box; }
        .topics--swiper .swiper-pagination-bullet-active { background: #115135; }
    }

/* section about */
#about { display: block; overflow: hidden; padding: 14em 0 19em; margin-bottom: -15.5em; background: linear-gradient(to bottom, #F1F1E6 0 calc(100% - 14em), transparent calc(100% - 14em) 100%); z-index: 2; }
#about:before { content: ''; width: 100vw; height: 94.2em; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); background-image: url(../../img/top/about-bg.png); background-position: center; background-repeat: no-repeat; background-size: cover; }
.about--info { max-width: 116em; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.about--info .section--title { width: 27.58%; }
.about__desc { width: 50%; }
.about__desc--frame { display: block; position: relative; padding-bottom: 12em; }
.about__desc--txt { font-size: 1.8em; line-height: 2; }
.about__desc--logo { position: absolute; right: -6.8em; bottom: 0; width: 35.341em; }

    @media only screen and (min-width: 768px) {
        .about--info .section--title { margin-top: 1.3em; }
        .about__desc--frame { height: initial !important; }
        .about--gallery { position: absolute; width: 92em; left: -31em; bottom: 0; }
        .about--swiper .swiper-slide:nth-child(n+2) { display: none; }
    }

    @media only screen and (max-width: 768px) {
        #about { padding: 5.8em 0 6.5em; margin-bottom: -4.8em; background: linear-gradient(to bottom, #F1F1E6 0 calc(100% - 4.5em), transparent calc(100% - 4.5em) 100%); }
        #about:before { height: 76.6em; background-image: url(../../img/top/about-bg_sp.png); }
        .about--info { display: block; }
        .about--info .section--title { width: 100%; }
        .about__desc { position: relative; left: -1em; padding: 0 1em; width: calc( 100% + 2em ); box-sizing: border-box; }
        .about__desc--frame { padding: 0; height: 22.4em; overflow: hidden; transition: linear .3s; }
        .about__desc--txt { font-size: 1.6em; line-height: 2; }
        .about__desc--logo { display: block; position: relative; margin-left: auto; right: -1em; bottom: 0; width: 18.8em; }
        .about__desc--open { max-width: 14.6em; width: 100%; display: block; margin: 2em auto 0; }
        .about__desc--open span { font-size: 1.6em; font-weight: bold; text-align: center; padding: .4em .5em; display: block; border: 1px solid #115135; color: #115135; border-radius: 10em; }
    
        .about--gallery { margin-top: 0; }
        .about--swiper { width: calc( 100vw - 3em ); margin-left: -1em; overflow: initial; }
        .about--swiper .swiper-slide { width: 44.92%; margin-right: 1.5em; }
        .about--swiper .swiper-slide:nth-child(n+2) { display: none; }
        .about--swiper.swiper-initialized .swiper-wrapper { flex-wrap: initial; -webkit-transition-timing-function: linear !important; transition-timing-function: linear !important; }
        .about--swiper.swiper-initialized .swiper-slide:nth-child(n+2) { display: block; }
    }

/* section rice */
#rice { padding: 19em 0 8em; background-image: url(../../img/top/rice-bg.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; }
#rice .section--title .t-Jp,
#rice .section--desc { color: #E0E7E0; }
#rice .section--btn a { background: #E0E7E0; border-color: #E0E7E0; color: #115135; }
.rice--break { position: relative; right: -2em; max-width: 120em; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.rice--info { width: 40%; }
.rice--pic { width: 150.83%; margin-right: -96.66%; }
.rice--swiper.swiper-initialized .swiper-wrapper { flex-wrap: initial; -webkit-transition-timing-function: linear !important; transition-timing-function: linear !important; }
.rice--swiper .swiper-slide { display: block; position: relative; width: calc( 100% + .5px ); margin: 0 -.25px; }

    @media only screen and (min-width: 768px) {
        #rice .section--btn a:hover { background: #935E18; border-color: #935E18; color: #fff; }
    }

    @media only screen and (max-width: 768px) {
        #rice { padding: 10.6em 0 6em; background-image: url(../../img/top/rice-bg_sp.jpg); }
        .rice--break { display: block; right: 0; }
        .rice--info { width: 100%; margin-bottom: 6em; }
        .rice--pic { width: 185.6vw; position: relative; left: 50%; transform: translateX(-50%); margin: 0; display: block; }
    }


/* section farming */
#farming { display: block; overflow: hidden; padding: 12em 0 26.5em; margin-bottom: -15.3em; background: linear-gradient(to bottom, #F1F1E6 0 calc(100% - 14em), transparent calc(100% - 14em) 100%); z-index: 2; }
#farming:before { content: ''; width: 100vw; height: 121em; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); background-image: url(../../img/top/farming-bg.png); background-position: center; background-repeat: no-repeat; background-size: cover; }
.farming--break { display: flex; flex-wrap: wrap; align-items: center; flex-direction: row-reverse; justify-content: space-between; }
.farming--info { width: 36.37%; }
.farming--pic { width: 58.33%; }
.farming--pic img { display: block; border-radius: 1em; }
.farming--gallery { margin-top: 3em; }
.farming--swiper .swiper-slide img { border-radius: 1em; }

    @media only screen and (min-width: 768px) {
        .farming--swiper .swiper-wrapper { flex-wrap: wrap; }
        .farming--swiper .swiper-slide { width: 23.48%; margin-right: 2.026%; }
        .farming--swiper .swiper-slide:nth-child(4n) { margin-right: 0; }
        .farming--swiper .swiper-slide:nth-child(n+5) { margin-top: 2.026%; }
    }

    @media only screen and (max-width: 768px) {
        #farming { padding: 6.8em 0 8em; margin-bottom: -3.5em; background: linear-gradient(to bottom, #F1F1E6 0 calc(100% - 3em), transparent calc(100% - 3em) 100%); }
        #farming:before { height: 97.3em; background-image: url(../../img/top/farming-bg_sp.png);  }
        .farming--break { display: block; }
        .farming--info { width: 100%; margin-bottom: 6em; }
        .farming--pic { width: 100%; }
        .farming--gallery { margin-top: 2.4em; }
        .farming--swiper { width: calc( 100vw - 3em ); margin-left: -1em; overflow: initial; }
        .farming--swiper .swiper-slide { width: 44.92%; margin-right: 1.5em; }
        .farming--swiper .swiper-slide:nth-child(n+3) { display: none; }
        .farming--swiper.swiper-initialized .swiper-wrapper { flex-wrap: initial; -webkit-transition-timing-function: linear !important; transition-timing-function: linear !important; }
        .farming--swiper.swiper-initialized .swiper-slide:nth-child(n+3) { display: block; }
    }

/* section partner */
#partner { padding: 19em 0 8em; background-image: url(../../img/top/partner-bg.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; }
#partner .section--title .t-Jp,
#partner .section--desc { color: #E0E7E0; }
#partner .section--btn a { background: #E0E7E0; border-color: #E0E7E0; color: #115135; }
.partner--break { position: relative; right: -2em; max-width: 120em; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.partner--info { width: 40%; }
.partner--pic { width: 54.16%; }

    @media only screen and (min-width: 768px) {
        #partner .section--btn a:hover { background: #935E18; border-color: #935E18; color: #E0E7E0; }
    }

    @media only screen and (max-width: 768px) {
        #partner { padding: 6.8em 0 6em; background-image: url(../../img/top/partner-bg_sp.jpg); }
        .partner--break { display: block; right: 0; }
        .partner--info { width: 100%; margin-bottom: 6em; }
        .partner--pic { width: 66.66vw; margin: 0 auto; display: block; }
    }

/* section information */
#information { padding-top: 11em; }
.information--desc { display: block; max-width: 80em; position: relative; margin: 0 auto; }
.information--desc table { width: 100%; border-collapse: collapse; }
.information--desc table tr:not(:last-child) { border-bottom: .2em solid #fff; }
.information--desc table tr th,
.information--desc table tr td { font-size: 1.6em; line-height: 1.7; padding: 1.4em 1.25em; text-align: left; vertical-align: top; background: #F8F8F4; word-break: break-all; box-sizing: border-box; }
.information--desc table tr th { background: #E0E7E0; width: 12.5em; }

    @media only screen and (max-width: 768px) {
        #information { padding-top: 5em; }
        .information--desc table tr th,
        .information--desc table tr td { padding: .55em .9375em; }
        .information--desc table tr th { width: 6.875em; }
        .information--desc table tr th span { display: block; min-height: 3.4em; }
    }

/* section access */
#access { padding-top: 11em; }
#access .section--desc { text-align: center; }
.access--maps { display: block; position: relative; margin-top: 4em; width: 100vw; height: 50em; left: 50%; transform: translateX(-50%); }
.access--maps iframe { position: absolute; left: 0; top: 0; width: 100%; height: 100%; vertical-align: top; }

    @media only screen and (max-width: 768px) {
        #access { padding-top: 5em; }
        #access .section--title { margin-bottom: 1.8em; }
        #access .section--desc { text-align: left; }
        .access--maps { height: 25em; margin-top: 3em; }
    }
































