.areaEstablish {
    margin-bottom: 189px;
}

.areaEstablish .inner {
    max-width: 1932px;
}

.areaEstablish .wrapVision {
    padding: 0 36px 0 86px;
}

.areaEstablish .wrapVision .iframeVison .wrapVisionPhoto {
    width: calc(100% - 550px);
    min-width: 440px;
}

.areaEstablish .wrapVision .iframeVison .boxVision {
    width: 450px;
    padding: 10px 0 0px;
}

.areaEstablish .wrapVision .iframeVison .boxVision .contentVision .titleVision {
    font-size: 25px;
    letter-spacing: 1.2px;
    margin-bottom: 33px;
    line-height: 1.8;
}

.areaEstablish .wrapVision .iframeVison .boxVision .contentVision .txtVision {
    line-height: 1.95;
}

.areaEstablish .wrapVision .iframeVison .boxVision .contentVision {
    margin-bottom: 0;
}

.areaEstablish .wrapVision .iframeVison .wrapVisionPhoto .mainVisionPhoto img {
    aspect-ratio: 1200 / 700;
}

.areaInfo {
    background: #F4F4F4;
    padding: 240px 0;
    margin-bottom: 169px;
}

.areaInfo .inner {
    max-width: 1321px;
}

.areaInfo .wrapInfo {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.areaInfo .wrapInfo .boxInfo {
    width: calc(100% - 580px);
    padding-top: 29px;
    margin-left: 100px;
}

.areaInfo .wrapInfo .boxInfo .titleInfo {
    font-size: 25px;
    letter-spacing: 1.2px;
    margin-bottom: 33px;
    line-height: 1.8;
    font-weight: normal;
}

.areaInfo .wrapInfo .boxInfo .txtInfo {
    font-size: 18px;
    line-height: 1.94;
    letter-spacing: 0.7px;
    margin-bottom: 40px;
    text-align: justify;
}

.areaInfo .wrapInfo .wrapInfoCEO {}

.areaInfo .wrapInfo .wrapInfoCEO .infoCompany {
    font-size: 18px;
    letter-spacing: 0.7px;
    margin-bottom: 8px;
}

.areaInfo .wrapInfo .wrapInfoCEO .boxInfoCEO {
    display: flex;
    justify-content: flex-end; 
    font-size: 18px;
    letter-spacing: 0.7px;
}

.areaInfo .wrapInfo .wrapInfoCEO .boxInfoCEO .txtInfoCEO {
    margin-right: 19px;
}

.areaInfo .wrapInfo .wrapInfoCEO .boxInfoCEO .nameCEO {}

.areaInfo .wrapInfo .infoPhoto {
    width: 400px;
    margin-top:40px;
}

.areaInfo .wrapInfo .infoPhoto img {
    aspect-ratio: 500/600;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: top;
}

.areaCompany {}

.areaCompany .inner {}

.areaCompany .wrapCompany {}

.areaCompany .wrapCompany .titleCompany {
    font-size: 40px;
    text-align: center;
    margin-bottom: 87px;
    font-weight: normal;
    letter-spacing: 1.3px;
}

.areaCompany .wrapCompany .boxCompany {
    max-width: 482px;
    margin: 0 auto;
}

.areaCompany .wrapCompany .boxCompany .itemCompany {
    display: flex;
    margin-bottom: 13px;
    align-items: flex-start;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .nameCompany {
    width: 109px;
    padding-right: 10px;
    text-align: left;
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 1px;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany {
    width: calc(100% - 109px);
    text-align: left;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany {
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 0.4px;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany .desCompany {
    margin-right: 15px;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany .nameCEOCompany {}

.areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany a {}

.areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany {}

.areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany li {
    font-size: 18px;
    margin-bottom: 13px;
    font-weight: normal;
    letter-spacing: 0.6px;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany li .qualifiedType {
    margin-right: 19px;
}

.areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany li .numberQualified {}

.inner {
    max-width: 1200px; /* PCでの最大の幅を適切な値に設定 (例: 1200px) */
    width: 100%;       /* 画面幅全体に広がるように設定 */
    
    /* 2. ブロックを画面中央に配置 */
    margin-left: auto ;
    margin-right: auto ;
    
    /* 3. 左右のパディングを均等に設定し、コンテンツが端に張り付かないようにする */
    /* padding-left: 20px ;
    padding-right: 20px ;*/
} 

.wrapInfoCEO {
  text-align: right;
}

.boxInfoCEO {
  text-align: right;
}

@media (max-width: 1400px) and (min-width: 769px) {
    .areaEstablish .wrapVision .iframeVison .wrapVisionPhoto {
        width: calc(100% - 490px);
    }
}

@media (max-width: 1330px) and (min-width: 769px) {
    .areaInfo .wrapInfo .boxInfo {
        width: calc(100% - clamp(345px, 41.5vw, 560px));
        padding-top: clamp(10px, 2.1vw, 29px);
        margin-left: 50px;
    }

    .areaInfo .wrapInfo .boxInfo .titleInfo {
        margin-bottom: 24px;
    }

    .areaInfo .wrapInfo .infoPhoto {
        width: clamp(320px, 37.5vw, 350px);
    }
}

@media (max-width: 1200px) and (min-width: 769px) {
    .areaEstablish {
        margin-bottom: 15vw;
    }

    .areaEstablish .wrapVision {
        padding: 0 26px 0 56px;
    }

    .areaEstablish .wrapVision .iframeVison .wrapVisionPhoto {
        width: calc(100% - clamp(450px, 39.9vw, 540px));
    }

    .areaEstablish .wrapVision .iframeVison .boxVision {
        width: clamp(350px, 36.9vw, 450px);
    }

    .areaInfo {
        padding: 15vw 0;
        margin-bottom: 13vw;
    }
}

@media (max-width: 1000px) and (min-width: 769px) {
    .areaEstablish .wrapVision {
        padding: 0 50px;
    }

    .areaEstablish .wrapVision .iframeVison {
        flex-direction: column;
    }

    .areaEstablish .wrapVision .iframeVison .wrapVisionPhoto {
        width: 100%;
        margin-bottom: 20px;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision {
        width: 100%;
        padding-top: 0;
        margin-bottom: 0;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision br.pc {
        display: none;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision .contentVision .titleVision {
        margin-bottom: 13px;
    }
}

@media (min-width: 769px) {
    .areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany a {
        pointer-events: none;
    }
}

@media (max-width: 768px) {
    .areaEstablish {
        margin-bottom: clamp(59px, 15vw, 75px);
    }

    .areaEstablish .inner {
        padding: 0 0 0 10.6%;
    }

    .areaEstablish .wrapVision {
        padding: 0;
    }

    .areaEstablish .wrapVision .iframeVison {
        flex-direction: column;
    }

    .areaEstablish .wrapVision .iframeVison .wrapVisionPhoto {
        width: 100%;
        min-width: inherit;
        margin-bottom: clamp(40px, 10vw, 55px);
    }

    .areaEstablish .wrapVision .iframeVison .boxVision {
        width: 100%;
        padding: 0;
        padding: 0 12.1% 0 1.5%;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision .contentVision .titleVision {
        font-size: clamp(20px, 5vw, 26px);
        margin-bottom: clamp(25px, 4.5vw, 35px);
        letter-spacing: 0.8px;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision .contentVision .txtVision {
        line-height: 1.85;
    }

    .areaEstablish .wrapVision .iframeVison .boxVision .contentVision {
        margin-bottom: 0;
    }

    .areaInfo {
        padding: clamp(47px, 11.9vw, 55px) 0 clamp(65px, 15.9vw, 85px);
        margin-bottom: clamp(72px, 18.3vw, 85px);
    }

    .areaInfo .inner {
        padding: 0 12.7%;
    }

    .areaInfo .wrapInfo {
        flex-direction: column-reverse;
    }

    .areaInfo .wrapInfo .boxInfo {
        width: 100%;
        padding-top: 0;
        margin-bottom: 0;
        margin-left: 0;
        margin-right: auto ;
        padding-left: 20px ; /* 左右にパディングを追加 */
        padding-right: 20px ;
        padding: 10.6% 0 0 0%;
    }

    .areaInfo .wrapInfo .boxInfo .titleInfo {
        font-size: clamp(15px, 3.8vw, 19px);
        letter-spacing: 0.6px;
        margin-bottom: clamp(27px, 6.7vw, 35px);
    }

    .areaInfo .wrapInfo .boxInfo .txtInfo {
        font-size: clamp(14px, 3.5vw, 18px);
        line-height: 1.86;
        letter-spacing: 0.7px;
        margin-bottom: clamp(40px, 10.3vw, 50px);
    }

    .areaInfo .wrapInfo .wrapInfoCEO .infoCompany {
        font-size: clamp(14px, 3.5vw, 18px);
        letter-spacing: 0.7px;
        margin-bottom: 5px;
        text-align: right;
    }

    .areaInfo .wrapInfo .wrapInfoCEO .boxInfoCEO {
        font-size: clamp(14px, 3.5vw, 18px);
        letter-spacing: 0;
        justify-content: flex-end;
    }

    .areaInfo .wrapInfo .wrapInfoCEO .boxInfoCEO .txtInfoCEO {
        margin-right: 11px;
    }

    .areaInfo .wrapInfo .infoPhoto {
        width: clamp(210px, 53.5vw, 280px);
        margin: 0 auto clamp(36px, 9.3vw, 45px);
    }

    .areaCompany {}

    .areaCompany .inner {}

    .areaCompany .wrapCompany .titleCompany {
        letter-spacing: 1.3px;
        font-size: clamp(20px, 5vw, 26px);
        margin-bottom: clamp(36px, 9vw, 45px);
    }

    .areaCompany .wrapCompany .boxCompany {
        max-width: clamp(310px, 78.9vw, 510px);
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany {
        margin-bottom: 2px;
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .nameCompany {
        padding-right: 10px;
        font-size: clamp(14px, 3.5vw, 18px);
        letter-spacing: 1px;
        width: clamp(85px, 22.9vw, 120px);
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany {
        width: calc(100% - clamp(85px, 22.9vw, 120px));
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany {
        font-size: clamp(14px, 3.5vw, 18px);
        letter-spacing: 0.5px;
        line-height: 1.7;
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .txtItemCompany .desCompany {
        margin-right: 15px;
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany li {
        font-size: clamp(14px, 3.5vw, 18px);
        margin-bottom: 13px;
        letter-spacing: 0.6px;
    }

    .areaCompany .wrapCompany .boxCompany .itemCompany .contentItemCompany .listCompany li .qualifiedType {
        margin-right: 19px;
    }
    
    .hamburger span{
        background: #000;
    }

}