/*================================================
    page-mainvisual
================================================*/

.page-mainvisual {
    background-image: url(../../image/about-us/pageheader_bg.jpg);
}

/*================================================
    our-identity
================================================*/

.our-identity {
    background: linear-gradient(to bottom, rgba(var(--color-primary-rgb),0) 40%, #00263F), url(../../image/about-us/identity_bg.jpg), var(--color-primary);
    background-position: top center, top center;
    /* background-size: cover; */
    background-size: 100%, 107%, 100%;
    background-repeat: no-repeat;
}

.our-identity .section-title-ja {
    color: var(--color-primary-second);
}

.our-identity-head {
    position: relative;
}

.our-identity .container {
    position: relative;
}

/* .breadcrumb {
    position: absolute;
    top: 0;
    left: calc(var(--layout-gap) / 1.5);
} */

.our-identity-lead-text-wrapper {
    color: var(--color-white);
    padding-top: calc(var(--layout-gap) * 2);
}

.our-identity-lead-text {
    padding-block: calc(var(--layout-gap) * 1);
    font-size: 1.8rem;
    font-weight: 900;
}

.our-identity-lead-text span {
    color: var(--color-primary-second);
    display: inline-block;
}

.our-identity-lead-sub-text {
    font-size: 1.6rem;
}

.our-identity-lead-sub-text:nth-last-of-type(1) {
    margin-top: calc(var(--layout-gap) / 2);
}

/* our-identity-content */

.our-identity-content {
    padding-block: calc(var(--layout-gap) * 2);
}

.our-identity-content li {
    background-color: var(--color-white);
}

.our-identity-content-list {
    display: grid;
    gap: 4em;
}

.our-identity-content-list li {
    border-radius: 50px;
    color: var(--color-primary);
    padding: calc(var(--layout-gap) * 1.5) var(--layout-gap) var(--layout-gap);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin-bottom: calc(var(--layout-gap) / 2);
    position: relative;
    z-index: 2;
}

.our-identity-content-item-title {
    font-size: 2.2rem;
    font-weight: 900;
}

.our-identity-content-item-text {
    font-size: 1.6rem;
    font-weight: 700;
}

.our-identity-content .point-icon {
    background-color: var(--color-primary-second);
    text-transform: uppercase;
    padding: 2em;
    aspect-ratio: 1 / 1;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute;
    top: -4em;
    right: 50%;
    transform: translateX(50%);
    width: 100px;
}

.our-identity-content .point-icon > span {
    color: var(--color-white);
}

.our-identity-content-list li::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    background-size: contain;
    background-position: center;
    z-index: -1;
}

.our-identity-content-list li:nth-of-type(1)::after {
    width: 95%;
    aspect-ratio: 1376 / 240;
    background-image: url(../../image/about-us/door-hinge.png);
}

.our-identity-content-list li:nth-of-type(2)::after {
    width: 60%;
    aspect-ratio: 900 / 240;
    background-image: url(../../image/about-us/manufacturing-company.png);
}

.our-identity-content-list li:nth-of-type(3)::after {
    width: 60%;
    aspect-ratio: 973 / 240;
    background-image: url(../../image/about-us/development-Innovation.png);
}

@media print,
screen and (min-width: 769px) {
    .our-identity-lead-text {
        font-size: 3rem;
    }

    .our-identity-img {
        width: 80%;
    }

    /* .our-identity-content */
    .our-identity-content-item-title {
        font-size: 2.6rem;
        font-weight: 900;
    }

}

@media print,
screen and (min-width: 1200px) {
    .our-identity-content-list {
        gap: 1em;
    }
    .our-identity-lead-text-wrapper {
        text-align: right;
        padding-top: calc(var(--layout-gap) * 3);
    }

    .our-identity-lead-text {
        padding-block: calc(var(--layout-gap) * 2.5);
        font-size: 4rem;
    }

    .our-identity-lead-sub-text {
        font-size: 1.8rem;
    }
    .our-identity-content .point-icon {
        position: inherit;
        right: inherit;
        top: inherit;
        transform: translateX(0);
        width: 120px;
    }
    .our-identity-lead-sub-text:nth-last-of-type(1) {
        margin-top: calc(var(--layout-gap));
    }

    .our-identity-img {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 45%;
    }

    /* .our-identity-content */

    .our-identity-content {
        padding-block: calc(var(--layout-gap) * 4);
    }

    .our-identity-content-list li {
        flex-direction: row;
        justify-content: space-between;
        padding: calc(var(--layout-gap) * 2);
        border-radius: 150px;
        margin-bottom: var(--layout-gap);
    }

    .our-identity-content-item-title {
        font-size: 3.6rem;
    }

    .our-identity-content-item-text {
        font-size: 1.8rem;
    }
}

@media print,
screen and (min-width: 1600px) {
    .our-identity-content-list li {
        border-radius: 160px;
    }
    .our-identity-content-item-title {
        width: 440px;
        text-align: center;
    }
    .our-identity-content-item-text {
        width: 590px;
    }
    .our-identity-content .point-icon {
        width: 160px;
    }
}


/*================================================
    philosophy
================================================*/

.philosophy {
    padding-block: calc(var(--layout-gap) * 2);
    background-color: #F5F5F5;
    color: var(--color-primary);
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-bottom-right-radius: 150px;
}

.philosophy::after {
    content: '';
    position: absolute;
    top: 0;
    right: -2%;
    background-image: url(../../image/about-us/philosophy_bg-min.png);
    background-size: cover;
    width: 80%;
    aspect-ratio: 523 / 264;
    opacity: .2;
    z-index: -1;
}

.philosophy::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url(../../image/about-us/philosophy-bg-logo.png);
    background-size: contain;
    width: 50%;
    aspect-ratio: 1040 / 1036;
    z-index: -1;
}

.philosophy .section-title-ja {
    color: var(--color-primary-second);
}

.philosophy-list {
    margin-top: var(--layout-gap);
    position: relative;
}

.philosophy-list::after {
    content: '';
    display: block;
    background-image: url(../../image/about-us/philosophy-list-img.png);
    background-size: contain;
    width: 100%;
    max-width: 480px;
    aspect-ratio: 720 / 810;
    margin-left: auto;
    margin-top: 2em;
}

.philosophy-item {
    margin-bottom: calc(var(--layout-gap) * 2);
}

.philosophy-item:last-child {
    margin-bottom: 0;
}

.philosophy-item h4 {
    font-size: 2.6rem;
    font-weight: 900;
    line-height: 1.8;
    margin-bottom: calc(var(--layout-gap) / 2);
}

.philosophy-sub-list {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
}

.philosophy-sub-item {
    margin-bottom: calc(var(--layout-gap) / 3.5);
}

.philosophy-sub-item p {
    display: flex;
    flex-direction: column;
}

.philosophy-sub-item span {
    border: 1px solid var(--color-primary);
    padding: 5px 15px;
    display: inline-block;
    width: fit-content;
    margin-right: calc(var(--layout-gap) / 2);
    margin-bottom: calc(var(--layout-gap) / 4);
}

.philosophy-item-label {
    color: var(--color-white);
    background-color: var(--color-primary);
    display: inline-block;
    line-height: 1.5;
    font-size: 1.8rem;
    font-weight: 700;
    padding: 5px 15px;
    margin-bottom: calc(var(--layout-gap) / 2);
}

.philosophy-item-text {
    font-size: 1.6rem;
    line-height: 2;
    font-weight: 700;
}

@media print,
screen and (min-width: 769px) {
    .philosophy-item h4 {
        font-size: 3rem;
    }
    .philosophy-list {
        position: relative;
    }
    .philosophy-list::after {
        position: absolute;
        bottom: 50%;
        right: 0;
        transform: translateY(50%);
        z-index: -1;
        width: 50%;
        max-width: 580px;
        margin-top: 0;
    }
    .philosophy-sub-list {
        font-size: 1.6rem;
    }

    .philosophy-sub-item p {
        flex-direction: row;
        align-items: center;
    }

    .philosophy-sub-item span {
        margin-bottom: 0;
    }

    .philosophy-item-label {
        font-size: 2rem;
        margin-bottom: calc(var(--layout-gap) / 1.5);
    }

    .philosophy-item-text {
        line-height: 3;
    }



}

@media print,
screen and (min-width: 1200px) {
    .philosophy {
        padding-block: calc(var(--layout-gap) * 4);
        border-bottom-right-radius: 300px;
    }

    .philosophy::after {
        width: 60%;
    }


    .philosophy-list {
        margin-top: calc(var(--layout-gap) * 2);
    }

    .philosophy-item {
        margin-bottom: calc(var(--layout-gap) * 3);
    }

    .philosophy-item h4 {
        font-size: 4rem;
        margin-bottom: var(--layout-gap);
    }

    .philosophy-item-label {
        font-size: 2.4rem;
    }

    .philosophy-list::after {
        bottom: 0;
        transform: translate(0);
        max-width: 720px;
    }
}

/*================================================
    quality
================================================*/

.quality {
    text-align: center;
    color: var(--color-text);
    padding-block: calc(var(--layout-gap) * 2);
    position: relative;
}

.quality::after {
    content: '';
    position: absolute;
    top: calc(var(--layout-gap) * 4);
    left: 2%;
    background-image: url(../../image/about-us/iso_img.png);
    background-size: contain;
    width: 50%;
    aspect-ratio: 1 / 1;
    z-index: -1;
}

.quality .section-title-en {
    color: var(--color-primary);
}

.quality .section-title-ja {
    color: var(--color-gray);
}

.quality-lead {
    font-size: 2.2rem;
    font-weight: 900;
    margin-top: calc(var(--layout-gap));
    text-align: left;
}

.quality-lead span {
    display: inline-block;
}

.quality-text {
    font-size: 1.6rem;
    font-weight: 700;
    margin-block: var(--layout-gap) calc(var(--layout-gap) / 2);
    text-align: left;
}

.signature {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: calc(var(--layout-gap) * 1.5);
}

.signature span {
    font-size: 2rem;
}

.box {
    display: inline-block;
    text-align: left;
    background-color: #F5F5F5;
    padding: calc(var(--layout-gap) / 2) var(--layout-gap);
    border-radius: 6px;
}

@media print,
screen and (min-width: 769px) {
    .quality-lead {
        font-size: 2.6rem;
        text-align: center;
    }
    .quality-text {
        text-align: center;
    }
    .quality::after {
        width: 30%;
        left: 5%;
    }


}

@media print,
screen and (min-width: 1200px) {

    .quality {
        padding-block: calc(var(--layout-gap) * 4);
    }

    .quality-lead {
        font-size: 3.6rem;
        margin-top: calc(var(--layout-gap) * 2);
    }

    .quality-text {
        font-size: 2rem;
        margin-block: calc(var(--layout-gap) * 1.5) var(--layout-gap);
    }

    .box {
        padding: var(--layout-gap) calc(var(--layout-gap) * 1.5);
    }

}

/*================================================
    safety-health_policy
================================================*/
.safety-health_policy-wrapper {
    background-image: url(../../image/about-us/safety_health_policy_bg.png);
    background-position:top right;
    background-size: cover;
    border-radius: 40px;
    padding: calc(var(--layout-gap) * 1) calc(var(--layout-gap) * 1);
    margin-bottom: calc(var(--layout-gap) * 2);
}

.safety-health_policy .section-title {
    text-align: center;
}

.safety-health_policy .section-title-en {
    color: var(--color-primary-second);
}

.safety-health_policy .section-title-ja {
    color: var(--color-gray);
}

.safety-health_policy p {
    /* font-size: 1.8rem; */
    font-weight: 700;
    /* line-height: 2.7; */
    letter-spacing: 0.05em;
}

@media print,
screen and (min-width: 769px) {
    .safety-health_policy p {
        /* font-size: 2.1rem; */
        text-align: center;
    }
}

@media print,
screen and (min-width: 1200px) {
    .safety-health_policy-wrapper {
        border-radius: 80px;
        padding: calc(var(--layout-gap) * 2) calc(var(--layout-gap) * 2.5);
        display: flex;
        align-items: center;
        gap: 85px;
        margin-bottom: calc(var(--layout-gap) * 4);
    }

    .safety-health_policy .section-title {
        text-align: left;
        font-size: clamp(4rem, -2.6667rem + 8.8889vw, 8rem);
    }

    .safety-health_policy p {
        /* font-size: 2.6rem; */
        font-size: clamp(1.8rem, 1.3991rem + 0.8341vw, 2.4rem);
        text-align: left;
    }
}


@media print,
screen and (min-width: 1600px) {
    .safety-health_policy .section-title {
        font-size: clamp(5rem, -6.6667rem + 15.5556vw, 12rem);
    }
    .safety-health_policy p {
        font-size: 2.6rem;
    }
}

/*================================================
    csr
================================================*/

.csr {
    background-image: url(../../image/about-us/csr_img_bg.jpg);
    background-size: cover;
    background-position: center;
    text-align: center;
    color: var(--color-white);
    padding-block: calc(var(--layout-gap) * 2);
}

.csr .section-title-ja {
    color: var(--color-primary);
}

.csr-text {
    margin-block: var(--layout-gap) calc(var(--layout-gap) * 1.5);
}

.csr .box {
    color: var(--color-primary);
}

@media print,
screen and (min-width: 1200px) {

    .csr {
        padding-block: calc(var(--layout-gap) * 4);
    }
}

/*================================================
    in-numbers
================================================*/

.in-numbers {
    background-image: url(../../image/about-us/numbers_bg_img.jpg);
    background-position: center;
    background-size: cover;
    padding-block: calc(var(--layout-gap) * 1);
}

.in-numbers .section-title {
    color: var(--color-primary);
    text-align: center;
}

.in-numbers-wrapper {
    background-color: var(--color-white);
    border-radius: 80px;
    padding: calc(var(--layout-gap) * 1) calc(var(--layout-gap) * 1);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.in-numbers p {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
}

.in-numbers p > span {
    display: inline-block;
}

.in-numbers .link-btn {
    margin-block: calc(var(--layout-gap) * 1) 0;
}

@media print,
screen and (min-width: 1200px) {
    .in-numbers {
        padding-block: calc(var(--layout-gap) * 2);
    }

    .in-numbers-wrapper {
        flex-direction: row;
        justify-content: space-between;

        padding: calc(var(--layout-gap) * 1.75) calc(var(--layout-gap) * 1.5)
    }
    .in-numbers .section-title {
        text-align: left;
    }
    .in-numbers .section-title .section-title-en{
        font-size: clamp(5rem, 2vw + 4rem, 12rem);
    }

    .in-numbers .link-btn {
        margin-block:0;
        width: 150px;
    }
}

@media print,
screen and (min-width: 1600px) {
    .in-numbers-wrapper {
        padding: calc(var(--layout-gap) * 2) calc(var(--layout-gap) * 2.5);
    }
    .in-numbers p {
        font-size: 2.2rem;
    }
    .in-numbers .link-btn {
        width: 160px;
    }
}
