@charset "utf-8";

/*============================
    TOPpage
============================*/
/* header */
header {
    margin: 30px 40px 20px!important;
}
header .w-77 {
    max-width: 750px;
}
.lang-btn {
    width: 32px;
    height: 16px;
    background-color: #eaf4ea;
    border-radius: 20px;
    margin: 0 5px;
}
.lang-btn::after {
    content: "";
    width: 16px;
    height: 16px;
    background-color: #009843;
    border-radius: 50%;
    display: block;
}
.page-title {
    letter-spacing: 0.05em;
    font-size: 22px;
}
nav a:hover {
    color: #009843;
}
nav .current {
    border-top: #009843 1px solid;
    padding-top: 10px;
    color: #009843;
}


/* メインビジュアル */

#slide {
    padding-bottom: 500px;
    max-width: 1300px;
    margin: 0 auto 110px;
}
.main-catch {
    position: absolute;
    z-index: 1;
    width: 142px!important;
    right: 60px;
    top: 50px;
}
#slide ul {
    position: relative;
}
#slide li {
    position: absolute;
    width: 100%;
    max-height: 500px;
    overflow: hidden;
}
#slide img {
    width: 100%;
    margin: auto;
    display: block;
}
#slide li p {
    position: absolute;
    left: 40px;
    bottom: 25px;
}
.about-catch {
    font-size: 1.75rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
}
.about-catch a {
    letter-spacing: 0;
}
.fs-32_title {
    font-size: 2rem;
    letter-spacing: 0.1em;
}

/* News & Information */
.tab-group {
    display: flex;
    justify-content: center;
}
.tab {
    font-size: 1.375rem;
    flex-grow: 1;
    padding: 25px 10px;
    text-align: center;
    cursor: pointer;
    background: #0c5f32;
    ;
    color: #FFF;
    opacity: 0.7;
}
.panel-group {
    border-top: none;
    background: #fff;
    padding: 73px 60px 65px;
}
.panel {
    display: none;
    height: 750px;
    overflow: auto;
}
.tab.is-active {
    background: #0c5f32;
    color: #FFF;
    transition: all 0.2s ease-out;
    opacity: 1;
    position: relative;
}
.tab.is-active::after {
    content: "";
    width: 0;
    height: 0;
    border-top: 12px solid #0c5f32;
    border-right: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 12px solid transparent;
    position: absolute;
    bottom: -24px;
    left: 0;
    right: 0;
    margin: auto;
}
.panel.is-show {
    display: block;
}
.news-category {
    padding: 2px;
    width: 110px;
    text-align: center;
    color: #fff;
    border-radius: 20px;
}
.news-category1 {
    background-color: #c79500;
}
.news-category2 {
    background-color: #009843;
}
.news-category3 {
    background-color: #32c8f0;
}
.news-title {
    font-size: 1.375rem;
    letter-spacing: 0.05em;
}
.panel::-webkit-scrollbar{
    width: 10px;
}
.panel::-webkit-scrollbar-track{
    background:#eaf4ea;
    border-radius: 10px;
}
.panel::-webkit-scrollbar-thumb{
    background: #0c5f32;
    border-radius: 10px;
    box-shadow: none;
}

/* 業務実績 */
.fs-20_sentence {
    font-size: 1.25rem;
    line-height: 2;
}
.green-circle {
    background-color: #eaf4ea;
    border-radius: 50%;
    width: 200px;
    height: 200px;
    position: relative;
}
.green-circle p {
    font-size: 1.25rem;
    height: 200px;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.number {
    position: absolute;
    left: 34px;
    top: -11px;
}

/* footer */
footer {
    padding: 30px 0;
}
.footer-logo {
    max-width: 317px;
    width: 96%;
}
.footer-nav {
    width: 480px;
}
.footer-nav a {
    font-size: .875rem;
    color: #fff;
}
.footer-nav-list {
    width: 30%;
    line-height: 2.125;
}
small {
    letter-spacing: 0.05em;
    margin-top: 45px!important;
}

/*============================
    国際耕種とは
============================*/
.max-h-500 {
    max-height: 500px;
    overflow: hidden;
    max-width: 1300px;
    margin: 0 auto 110px;
}
.shiten-wrap {
    width: 740px;
    height: 740px;
    background-color: #fff;
    border-radius: 50%;
    position: relative;
}
.shiten-wrap-content1 {
    width: 420px;
    top: -130px;
    left: 0;
    right: 0;
    margin: auto;
}
.shiten-wrap-content2 {
    width: 420px;
    left: -50px;
    bottom: -190px;
}
.shiten-wrap-content3 {
    width: 420px;
    right: -50px;
    bottom: -190px;
}
.yellow-line {
    width: 176px;
    font-size: 2rem;
    letter-spacing: 0.1em;
    position: relative;
    margin: auto;
    z-index: 1;
}
.yellow-line::before {
    content: "";
    border-bottom: 18px solid #ffdb00;
    position: absolute;
    width: 186px;
    left: -5px;
    bottom: 6px;
    z-index: -1;
}
.yellow-line1 {
    width: 247px;
}
.yellow-line1::before {
    width: 257px;
}
.company {
    font-size: 1.125rem;
    padding: 20px 25px;
}
.company.bg-lightgreen {
    border-radius: 40px;
}
.company dt {
    width: 110px;
}
.pdf {
    padding-left: 35px;
    position: relative;
}
.pdf::before {
    content: "";
    width: 22px;
    height: 28px;
    display: inline-block;
    position: absolute;
    background-image: url(../../assets/img/pdf.gif);
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.map {
    margin-bottom: 75px;
}
#accese ul {
    font-size: 1.25rem;
    line-height: 1.5;
}

/*============================
    スタッフ
============================*/
.staff {
    padding: 60px 0 40px;
    margin-bottom: 200px;
    flex-wrap: wrap;
}
.staff .w-445px {
    width: 445px;
    margin-bottom: 55px;
    height: auto;
}
.name {
    font-size: 2rem;
    line-height: 1;
}
.eng {
    margin-bottom: 10px;
}
.work {
    padding-bottom: 15px;
    border-bottom: 1px solid #0c5f32;
    margin-bottom: 10px;
}
.senmon {
    color: #0c5f32;
}
.staff .w-445px .bg-white {
    padding: 15px 15px;
}
.w-445px img {
    width: 141px;
    height: 220px;
    align-self: flex-start;
}

/*============================
    業務実績
============================*/
.main-jisseki .bd-radius-20 {
    padding: 30px 30px 40px 30px;
    box-sizing: border-box;
}
.num1,
.num2,
.num3,
.num4 {
    content: "";
    background-repeat: no-repeat;
    height: 77px;
    margin-bottom: 30px;
}
.num1 {
    background-image: url(../../assets/img/gyomu_01.png);
}
.num2 {
    background-image: url(../../assets/img/gyomu_02.png);
}
.num3 {
    background-image: url(../../assets/img/gyomu_03.png);
}
.num4 {
    background-image: url(../../assets/img/gyomu_04.png);
}
.w-180px {
    width: 180px;
}
.cancel {
    font-size: 13px;
    border: none;
    background-color: transparent;
    color: #0c5f32;
    display: block;
    margin: 14px 0px 40px;
    text-align: right;
    cursor: pointer;
}
.pt-pb-5 {
    padding: 5px;
}
.pt-pb-15 {
    padding: 15px;
}
.bg-green.pt-pb-5 {
    border-radius: 5px 5px 0 0;
}
.bg-white.pt-pb-15 {
    border-radius: 0 0 5px 5px;
}
.select-btn {
    position: relative;
    cursor: pointer;
    padding-left: 20px;
    display: block;
}
.select-btn::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 1px solid #0c5f32;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 4px;
    left: 0;
}
.select-btn::after {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #0c5f32;
    border-radius: 50%;
    position: absolute;
    left: 4px;
    top: 8px;
    opacity: 0;
}
.current.select-btn::after {
    opacity: 1;
}
#searchform .is-form-style input.is-search-input {
    border: none!important;
    border-radius: 5px 0 0 5px;
}
#searchform .is-search-icon,#searchform .is-form-style input.is-search-submit {
    background-color: #fff;
    border-radius: 0 5px 5px 0;
    border: none;
    cursor: pointer;
}
#searchform .is-form-style .is-search-submit path {
    fill:  #0c5f32;
}
.content-wrap dl {
    line-height: 1.3;
}
.content-right {
    width: 75%;
    margin-left: 20px;
}
.world-map {
    margin: auto;
    display: block;
    max-width: 601px;
    width: 90%;
}
.map-btn {
    font-size: 13px;
    background-color: #0c5f32;
    border: none;
    color: #fff;
    border-radius: 20px;
    padding: 0 13px;
    position: absolute;
    cursor: pointer;
}
.map-btn:hover {
    color: #fff;
    opacity: 0.8;
}
.map-btn.africa {
    top: 56%;
    left: 19%;
}
.map-btn.middle-east {
    top: 40%;
    left: 25%;
}
.map-btn.asia {
    top: 42%;
    left: 36%;
}
.map-btn.south-and-central-america {
    bottom: 25%;
    right: 16%;
}
.map-btn.europe {
    top: 27%;
    left: 17%;
}
.map-btn.pacific-states {
    left: 43%;
    bottom: 30%;
}
.map-btn.japan {
    top: 39%;
    left: 49%;
}
.area {
    font-size: 1.625rem;
    margin-top: 70px;
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: 2px solid #000;
}
.content-wrap {
    padding: 0 0 35px;
    margin-bottom: 30px;
    border-bottom: 1px solid #a9d7aa;
}
.country,.newslist {
    font-size: 1.25rem;
    padding-bottom: 20px;
}
.tag {
    background-color: #fff;
    color: #009843;
    padding: 0 15px;
    line-height: 19px;
    font-size: .8125rem;
    border-radius: 20px;
}
.content-name {
    margin-right: 10px;
}
.tag-field {
    margin-right: 5px;
}
.tag-country {
    margin-right: 5px;
}
#muscat {
    padding: 50px 0;
}
/*============================
    AAI News
============================*/
.max-350px {
    max-width: 350px;
    width: 90%;
}
.m-38-auto-106 {
    margin: 22px auto 69px;
    display: block;
}
.list-btn {
    font-size: 1rem;
    border: none;
    background-color: #0c5f32;
    color: #fff;
    width: 180px;
    border-radius: 5px;
    margin-bottom: 50px;
    padding: 10px 10px 10px 20px;
    box-sizing: border-box;
    text-align: center;
}
.list-btn:hover {
    color: #fff;
}
.list-btn.select-btn::before {
    left: 25px;
    top: 17px;
}
.list-btn.select-btn::after {
    left: 29px;
    top: 21px;
}
.list-no {
    font-size: 1.25rem;
    border: none;
    background-color: transparent;
    padding: 5px 10px;
    width: 100px;
    margin-bottom: 35px;
    font-weight: bold;
    text-align: center;
}
.list-no:hover {
    cursor: pointer;
}
.list-no .current {
    background-color: #ffdb00;
}
.bd-b-2px-black {
    border-bottom: #000 solid 2px;
    margin-bottom: 30px;
}

/*============================
    お問い合わせ
============================*/
.ps-r.hissu {
    left: 210px;
    width: 272px;
}
.form-th {
    min-width: 210px;
    width: 15%;
    text-align: left;
    font-weight: normal;
    vertical-align: top;
    padding-top: 20px;
    font-size: 1.125rem;
}
.form-td {
    width: 75%;
}
.alert {
    color: #e50000;
    margin-top: 5px;
    display: block;
}
.input-area {
    background-color: #e5e5e5;
    padding: 20px 40px;
    border-radius: 35px;
    width: 100%;
    box-sizing: border-box;
    font-size: 1.25rem;
}
.h-69 {
    height: 69px;
}
.btn-green {
    width: 280px;
    box-sizing: border-box;
    background-color: #0c5f32;
    font-size: 1.25rem;
    color: #fff;
    text-align: center;
    padding: 25px;
    border-radius: 50px;
    transition: .3s;
}
.btn-black {
    width: 280px;
    box-sizing: border-box;
    background-color: #000;
    font-size: 1.25rem;
    color: #fff;
    text-align: center;
    padding: 25px;
    border-radius: 50px;
    transition: .3s;
}
.btn-black .white:hover {
    color: #fff;
}
.btn-green:hover,
.btn-black:hover {
    opacity: 0.7;
    cursor: pointer;
}


/*============================
    サイトマップ
============================*/
.main-sitemap .fs-26 {
    width: 50%;
}

@media screen and (min-width:1301px) {
    #slide {
        padding-bottom: 500px;
    }
    .main-gaiyou_top .max-h-500 img {
        position: relative;
        bottom: 85px;
    }
    .main-staff .max-h-500 img {
        position: relative;
        bottom: 45px;
    }
    .main-jisseki .max-h-500 img {
        position: relative;
        bottom: 100px;
    }
    .main-aainews .max-h-500 img {
        position: relative;
        bottom: 100px;
    }
}

@media screen and (max-width:986px) {
    .staff .w-445px {
        margin: 0 auto 55px;
    }
}

@media screen and (max-width:960px) {
    .green-circle {
        width: 170px;
        height: 170px;
    }
    .green-circle p {
        font-size: 1rem;
        width: 170px;
        height: 170px;
    }
}

@media screen and (max-width:767px) {
    /*============================
        TOPpage
    ============================*/
    /* header */
    header {
        margin: 0 auto 10px!important;
        height: 67px;
        padding-top: 10px;
    }
    .logo-link {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        width: 135px;
    }
    .logo-link2 {
        bottom: auto;
        height: 64px;
    }
    .logo {
        width: 135px;
    }
    .sp-nav {
        position: fixed;
        width: 100%;
        z-index: 10;
        top: 10px;
        height: 0;
    }
    .humburger-btn {
        width: 40px;
        position: absolute;
        right: 20px;
        top: 35px;
        z-index: 100;
    }
    .humburger-btn:hover {
        cursor: pointer;
    }
    .list {
        position: relative;
        right: -100%;
        transition: .3s;
    }
    .list .bg-white {
        height: 87px;
        margin-top: -20px;
    }
    .humburger-btn.is-active+.list {
        z-index: 20;
        padding-top: 10px;
        right: 0;
        transition: .3s;
    }
    .humburger-line {
        width: 40px;
        border-bottom: solid 3px #969696;
        display: block;
        border-radius: 8px;
        box-sizing: border-box;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
    }
    .humburger-line:before,
    .humburger-line:after {
        content: "";
        width: 40px;
        border-bottom: solid 3px #969696;
        display: block;
        border-radius: 8px;
        box-sizing: border-box;
        position: absolute;
        transition: .3s;
    }
    .humburger-line:before {
        top: -13px;
        transition: .3s;
    }
    .humburger-line:after {
        bottom: -15px;
        transition: .3s;
    }
    .is-active .humburger-line {
        border: none;
        background-color: transparent;
    }
    .is-active .humburger-line:before {
        transform: rotate(-205deg);
        top: -1px;
        left: 0
    }
    .is-active .humburger-line:after {
        transform: rotate(205deg);
        bottom: -1px;
        left: 0;
    }
    .header-bg {
        background-color: rgba(255, 255, 255, 0.5);
        opacity: 0.5;
        height: 100vh;
        width: 100%;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
    }
    .sp-nav .bg-green {
        padding: 90px 10px;
    }
    .sp-nav .white:hover {
        color: #fff;
    }
    /* メインビジュアル */
    .main-catch {
        width: 60px!important;
        top: 10px;
        right: 20px;
    }
    #slide {
        padding-bottom: 50%;
    }
    #slide li p {
        left: 10px;
        bottom: 10px;
    }
    .about-catch {
        font-size: 1.125rem;
    }
    .fs-32_title {
        font-size: 1.75rem;
        margin-bottom: 60px;
    }

    /* News & Information */
    .tab {
        font-size: .875rem;
        padding: 15px 10px;
    }
    .panel-group {
        padding: 50px 10px 50px;
    }
    .panel-group .mr-20 {
        margin-right: 5px;
    }
    .news-title {
        font-size: 1.125rem;
    }

    /* 業務実績 */
    .green-circle {
        width: 200px;
        height: 200px;
    }
    .fs-20_sentence {
        font-size: 1.125rem;
        line-height: 1.8;
    }
    .green-circle p {
        font-size: 1.125rem;
        width: 100%;
        height: 200px;
    }
    .bg-gray .sp-w-97 {
        display: block;
        margin: auto;
        max-width: 350px;
    }
    .sp-flex-wrap .w-50 {
        width: 100%;
    }
    .sp-flex-wrap.jc-between {
        justify-content: space-around;
    }
    #tax1,#tax2 {
        font-size: .875rem;
    }
    /* footer */
    .footer-nav {
        width: auto;
    }
    .footer-nav-list {
        width: auto;
    }
    small {
        margin-top: 0!important;
        text-align: left;
    }
    small.inner {
        margin: auto 0 0 0;
        padding: 0;
    }
    .tag {
        margin-bottom: 3px;
    }


    /*============================
        国際耕種とは
    ============================*/
    .fs-32_title.mb-200 {
        margin-bottom: 200px;
    }
    .shiten-wrap {
        background-color: transparent;
        background-image: url(../../assets/img/bg_shiten-wrap.png);
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 1247px;
        border-radius: 0;
        padding: 0;
    }
    .shiten-wrap-content1 {
        width: 300px;
        top: -130px;
    }
    .shiten-wrap-content2 {
        width: 80%;
        left: 0;
        right: 0;
        margin: auto;
        bottom: 390px;
    }
    .shiten-wrap-content3 {
        width: 80%;
        left: 0;
        right: 0;
        margin: auto;
        bottom: -190px;
    }
    .shiten-wrap-content1 img,
    .shiten-wrap-content2 img,
    .shiten-wrap-content3 img {
        max-width: 280px;
        width: 80%;
    }
    .yellow-line {
        width: 154px;
        font-size: 1.75rem;
    }
    .yellow-line::before {
        width: 164px;
    }
    .yellow-line1 {
        width: 216px;
    }
    .yellow-line1::before {
        width: 226px;
    }
    .company {
        font-size: 1.125rem;
        padding: 20px 25px;
    }
    .company dt {
        width: 110px;
    }
    .map.inner {
        padding: 0;
    }
    #accese ul {
        font-size: 1.25rem;
        line-height: 1.5;
    }
    #accese .w-48 {
        width: 100%;
    }
   

    /*============================
        お問い合わせ
    ============================*/
    .ps-r.hissu {
        left: 0;
    }
    .form-th {
        display: block;
        margin-bottom: 10px;
    }
    .form-td {
        width: 100%;
        display: block;
    }
    
    /*============================
        サイトマップ
    ============================*/
    .main-sitemap .mb-90 {
        margin-bottom: 50px;
    }
    .main-sitemap .mb-40 {
        margin-bottom: 25px;
    }
    .main-sitemap .mt-40 {
        margin-top: 25px;
    }
    .main-sitemap .fs-26 {
        width: 100%;
    }

    /*============================
        業務実績
    ============================*/
    .js-ac-trigger {
        position: relative;
    }
    .js-ac-trigger::before {
        content: "";
        width: 20px;
        height: 2px;
        display: inline-block;
        background-color: #000;
        position: absolute;
        right: 0;
    }
    .js-ac-trigger::after {
        content: "";
        width: 2px;
        height: 20px;
        display: inline-block;
        background-color: #000;
        position: absolute;
        right: 9px;
        transition: .3s;
        top: 0;
        bottom: 0;
        margin: auto;
    }
    .is-active .js-ac-trigger::after {
        opacity: 0;
        transform: rotate(90deg);
        transition: .3s;
    }
    .js-ac-target {
        display: none;
        padding-top: 30px;
    }
    .is-active .js-ac-target {
        display: block;
    }
    .main-jisseki .bd-radius-20 {
        padding: 20px;
    }
    .num1, .num2, .num3, .num4 {
        margin-bottom: 0;
    }
    .main-jisseki .w-48 {
        width: 100%;
    }
    .content-right {
        width: 100%;
        margin-left: 0;
    }
    .world-map {
        width: 100%;
    }
    .w-180px {
        width: 49%;
    }
    #searchform {
        margin-bottom: 40px;
    }
    .cancel {
        width: 100%;
    }
    .select-btn {
        box-sizing: border-box;
    }
    .sp-w-120px {
        width: 120px;
    }
    .pt-pb-15 {
        padding: 15px 5px;
    }
    .w-fit {
        width: fit-content;
        margin: auto;
    }
    .map-btn {
        font-size: 10px;
        padding: 0 6px;
    }
    .map-btn.africa {
        left: 11%;
    }
    .map-btn.middle-east {
        left: 14%;
    }
    .map-btn.asia {
        left: 34%;
    }
    .map-btn.south-and-central-america {
        right: 4%;
    }
    .map-btn.europe {
        left: 11%;
    }
    .map-btn.pacific-states {
        left: 39%;
    }
    .atcBtn.mb-45 {
        margin-bottom: 0;
    }
    

    /*============================
        AAI News
    ============================*/
    #e-book.w-48,#anniversary.w-48 {
        width: 100%;
    }
    #e-book .mb-90 {
        margin-bottom: 40px;
    }
    article.w-180px {
        width: 100%;
    }
    .m-38-auto-106 {
        margin: 0 auto 45px;
    }
    .list-btn {
        width: 100%;
        margin-bottom: 20px;
    }
    .list-no {
        font-size: 1rem;
        width: 30%;
        padding: 5px;
        margin-bottom: 10px;
    }
    .list-btn.select-btn::before {
        left: 16px;
    }
    .list-btn.select-btn::after {
        left: 20px;
    }
    .sp-pb-39 { padding-bottom: 39px; }
}

@media screen and (max-width:560px) {
    /* 業務実績 */
    .green-circle {
        width: 145px;
        height: 145px;
    }
    .green-circle p {
        height: 145px;
    }
    .number {
        left: 2px;
        top: -23px;
    }


    .staff .w-445px {
        width: 100%;
    }
    .w-445px img {
        width: 36%;
        height: auto;
    }
    .staff .w-445px {
        font-size: .875rem;
    }
    .name {
        font-size: 1rem;
    }
    .eng,.senmon {
        font-size: .6875rem;
    }
    .staff .w-445px .bg-white {
        padding: 7px 5px;
    }
}

@media screen and (max-width:350px) {
    .work.lh-1_3 {
        font-size: .625rem;
    }
}



/* 2023.2.24追加 */
#front-page #muscat {
    text-align: center;
}
#front-page #muscat a {
    display: inline-block;
}
@media (min-width:767px) {
    #front-page #muscat {
        margin-top: 40px;
    }
}
@media screen and (max-width: 767px) {
    #front-page #muscat {
        margin: 0 auto;
        padding: 20px 15px 0;
    }
    #front-page #muscat .sp-inner {
        margin: 0 auto;
        width: 97%;
        max-width: 350px;
    }
}

/* 2024.12.20追加 */
.bg-gray .anv40th {
    max-width: 245px;
    max-height: 350px;
    text-align: center;
}
.bg-gray .anv40th .sp-w-97 {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
#vision, #vision .ul-decimal {max-width: 1020px;}
@media screen and (max-width: 767px) {
    .bg-gray .anv40th {
        margin: auto auto 20px;
        width: auto;
        height: 87.5vw;
    }
}
@media screen and (min-width: 768px) {
    .bg-gray .anv40th {
        margin: 0 calc(50% - 125px);
    }
    .bg-gray .pc-flex-wrap.jc-around {row-gap: 90px;}
    #front-page #muscat {
        margin-top: 90px;
        padding: 0;
    }
}