@charset "utf-8";

/*------------ 全体 共通 ------------*/
.content_area.overview {
    padding-bottom: 174px;
}

/*------------ catch ------------*/
.overview .catch_box {
    max-width: 1010px;
    padding-bottom: 75px;
}

/*------------ products ------------*/
#products {
    padding-bottom: 55px;
}

#products .sec_ttl {
    margin-bottom: 52px;
}

.products_name {
    display: block;
    font-size: 1.6rem;
    margin-top: 10px;
}

/*  */

.products_box {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 89px;
    box-sizing: border-box;

}

.products_txt {
    width: 45%;
    margin-right: 5%;
}

.products_img {
    width: 50%;
    margin-right: 0;
}

.products_txt h3 {
    margin-top: 0;
    letter-spacing: 0.05em;
    line-height: 1.4;
}

.products_txt p {
    line-height: 2.3333;
}

.products_txt p:last-child {
    margin: 0;
}

.products_list {
    display: flex;
    flex-wrap: wrap;
}

.products_item {
    width: 31.694%;
    margin: 0 2.459% 89px 0;
    box-sizing: border-box;
}

.products_item:nth-child(3n) {
    margin-right: 0;
}

.products_item:nth-last-child(-n+3) {
    margin-bottom: 0;
}

/*------------ flow ------------*/
.flow_bg {
    padding-top: 70px;
    position: relative;
}

.flow_bg::before {
    position: absolute;
    content: "";
    width: 100vw;
    min-width: 1300px;
    height: 100%;
    background: #F2F4FA;
    top: 0;
    left: 50%;
    z-index: -10;
    transform: translateX(-50%);
}

#flow {
    padding-bottom: 84px;
    margin-bottom: 93px;
}


.flow_img {
    padding: 50px 0 0;
}

.flow_img img{
	margin: auto;
}

.flow_txt {
    position: relative;
}

.flow_txt h3 {
    letter-spacing: 0.05em;
    line-height: 1.8;
    margin: 85px 0 42px;
}

/* .flow_txt h3:first-child {
    margin-top: 85px;
} */

.flow_txt p {
    line-height: 2.3;
}

/*------------ export ------------*/

.export_box {
    display: flex;
    justify-content: flex-end;
    text-align: center;
    padding: 408px 0 166px;
    position: relative;
}

.export_box::before {
    position: absolute;
    content: "";
    width: 1406px;
    height: 0;
    padding-top: 85.702%;
    background: url(../img/overview_export_bg.svg) no-repeat top right / contain;
    top: 32px;
    right: 20.1%;
    z-index: -10;
}

.export_box_txt .export_box_num {
    font-size: 3.3rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 0 0 27px 0;
}

.export_box_txt .export_box_num span {
    font-family: 'Times New Roman', 'Noto Serif JP', serif;
    font-size: 19.2rem;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 13.6rem;
    color: #0E097D;
    padding: 0 40px 0 70px;
    }

.export_box_txt p {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-bottom: 0;
}

.export_txt {
    margin-bottom: 62px;
}

.export_txt h3 {
    letter-spacing: 0.05em;
    line-height: 1.8;
    margin: 0 0 39px;
}

.export_txt p {
    line-height: 2.3333;
}

@media screen and (max-width:767px) {

    /*------------ 全体 共通 ------------*/


    /*------------ catch ------------*/
    .overview .catch_box {
        padding-bottom: 55px;
    }

    /*------------ products ------------*/
    #products {
        padding-bottom: 45px;
    }

    #products .sec_ttl {
        margin-bottom: 20px;
    }

    .products_name {
        font-size: 1.4rem;
        margin-top: 5px;
    }

    /*  */

    .products_box {
        margin-bottom: 13px;

    }

    .products_txt {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .products_img {
        width: 100%;
    }

    .products_item {
        width: 49%;
        margin: 0 2% 13px 0 !important;
        box-sizing: border-box;
    }

    .products_item:nth-child(2n) {
        margin-right: 0 !important;
    }

    .products_item:nth-last-child(-n+2) {
        margin-bottom: 0 !important;
    }

    /*------------ flow ------------*/
    .flow_bg {
        padding-top: 55px;
        position: relative;
    }

    .flow_bg::before {
        min-width: auto;
    }

    #flow {
        padding-bottom: 70px;
        margin-bottom: 70px;
    }


    .flow_img {
        padding: 20px 0 0;
    }

	.flow_txt h3 {
		letter-spacing: 0.05em;
		line-height: 1.8;
		margin: 55px 0 30px !important;
	}

/* 	.flow_txt h3:first-child {
		margin-top: 90px;
	} */

	.flow_txt p {
		line-height: 2;
	}


    /*------------ export ------------*/

    .export_box {
        padding: 170px 0 70px;
    }

    .export_box::before {
        width: 720px;
        height: 535px;
        top: 0;
        right: auto;
        left: 50%;
        transform: translateX(-78%);
        padding-top: 0;
    }

    .export_box_txt .export_box_num {
        font-size: 2.3rem;
        margin: 0 0 10px 0;
    }

    .export_box_txt .export_box_num span {
        font-size: 13rem;
        line-height: 9.6rem;
        padding: 0;
    }

    .export_box_txt p {
        font-size: 1.4rem;
    }

    .export_txt {
        margin-bottom: 35px;
    }

    .export_txt h3 {
        margin: 0 0 8px;
    }
}