/*for /company/en/*/

/*ir top
---------------------------------------------*/
section+section.irIndex__sec,
section+section.irLower__sec {
    margin-top: 0;
}

.irIndex__message .main_img .txt {
    left: 40%;
    padding-right: 20px;
}

.irIndex__message .main_img .txt li {
    font-size: 1.6rem;
}

.irIndex__message .main_img .txt li .sub_name {
    font-size: 1.2rem;
    margin-top: 20px;
}

.irIndex__messageBtns {
    display: flex;
    justify-content: flex-end;
    gap: 30px;
    margin-top: -30px;
    position: relative;
    z-index: 1;
}

.irIndex__messageBtns .btn01_03 {
    position: static;
}

.irIndex__messageBtns .btn01_03:last-child {
    margin-top: 0;
}

.irIndex__linkBox.label04>ul>li:nth-child(3n) {
    border-top: none;
}




@media screen and (min-width: 768px) {
    .irIndex__linkBox.label04>ul {
        justify-content: space-between;
    }

    .irIndex__linkBox.label04>ul>li {
        width: calc(100% / 3 - 1px);
    } 

    .irIndex__linkBox.label04>ul>li .label_box .ttl {
        width: 100%;
    }

}

@media screen and (max-width: 767px) {
    .irIndex__message .main_img {
        display: flex;
        flex-direction: column;
    }
    
    .irIndex__message .main_img .txt {
        position: static;
        transform: translateY(0);
        padding-right: 0;
        margin-top: 15px;
        padding: 0 10px;
    }
    
    .irIndex__message .main_img .txt li {
        font-size: 1.4rem;
        color: #444;
    }
    
    .img_txt02.type01 .main_img .txt li+li {
        margin: 20px 0 10px;
    }
    
    .irIndex__message .main_img .txt li .sub_name {
        margin: 0;
    }
    
    .irIndex__messageBtns {
        margin-top: 10px;
        flex-direction: column;
        align-items: flex-end;
        gap: 10px;
    }
    
    .irIndex__messageBtns .btn01_03 {
        width: 100%;
    }
    
    .irIndex__linkBox.label04>ul>li .label_box {
        padding: 20px;
    }

}


/*lower
---------------------------------------------*/
.irLower__sec * + .h2 {
    /*margin-top: 60px;*/
}

.irLower__sec * + .h3 {
    /*margin-top: 40px;*/
}

.irLower__sec .h3 + * {
    /*margin-top: 20px;*/
}

.irLower__sec_numList {
    counter-reset: cnt 0; 
}

p + .irLower__sec_numList,
ul .irLower__sec_numList {
    margin-top: 5px;
}

.irLower__sec_numList > li {
    counter-increment: cnt;
    padding-left: 2.5em;
    position: relative;
}

.irLower__sec_numList > li:nth-child(n+2) {
    margin-top: 5px;
}

.irLower__sec_numList > li::before {
    content: "(" counter(cnt) ") ";
    position: absolute;
    top: 0;
    left: 0;
}

.irLower__sec_numList2 {
    margin: 5px 0;
}

.irLower__sec_numList2 > li {
    counter-reset: cnt;
    counter-increment: cnt2;
    padding-left: 3em;
}

.irLower__sec_numList2 > li::before {
    content: "(" counter(cnt2) ") ";
}

.irLower__sec_numList2--S1 > li::before {
    content: "(1." counter(cnt2) ") ";
}

.irLower__sec_numList2--S2 > li::before {
    content: "(2." counter(cnt2) ") ";
}

.irLower__sec_numList2--S3 > li::before {
    content: "(3." counter(cnt2) ") ";
}

.irLower__sec_numList2--S4 > li::before {
    content: "(4." counter(cnt2) ") ";
}

.irLower__sec_numList2--S5 > li::before {
    content: "(5." counter(cnt2) ") ";
}

.irLower__sec_numList2--S6 > li::before {
    content: "(6." counter(cnt2) ") ";
}

.irLower__sec_numList2--S7 > li::before {
    content: "(7." counter(cnt2) ") ";
}

.irLower__sec_numList2--S8 > li::before {
    content: "(8." counter(cnt2) ") ";
}

.irLower__sec_numList2--S9 > li::before {
    content: "(9." counter(cnt2) ") ";
}

.irLower__sec_numList2--S10 > li {
    padding-left: 3.5em;
}

.irLower__sec_numList2--S10 > li::before {
    content: "(10." counter(cnt2) ") ";
}

.irLower__sec_alphaList {
    counter-reset: number 0;
    margin-top: 5px;
}

.irLower__sec_alphaList > li {
    padding-left: 2em;
    position: relative;
    counter-increment: cnt3;
}

.irLower__sec_alphaList > li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: counter(cnt3, lower-latin) "."; 
}

.irLower__sec_normalList {
    margin-top: 10px;
}

.irLower__sec_normalList > li {
    padding-left: 1.2em;
    position: relative;
}

.irLower__sec_normalList > li:nth-child(n+2) {
    margin-top: 5px;
}

.irLower__sec_normalList > li::before {
    content: '';
    position: absolute;
    top: 13px;
    left: 0;
    width: 0.5em;
    height: 1px;
    background: #444;
}

.irLower__sec .p01 {
    word-break: normal;
}

.irLower__sec figure img {
    width: auto;
    max-width: 100%;
}

.irLower__sec table {
    word-break: normal;
}

.irLower__sec .table01 tbody tr.txt th {
    text-align: left;
}

/*outline
---------------------------------------------*/
.irOutline__grid_txt01 [class^=txt] dt {
    width: 200px;
}

@media screen and (max-width: 767px) {
    .irOutline__grid_txt01 [class^=txt]+[class^=txt] {
        margin-top: 20px;    
    }
    
    .irOutline__grid_txt01 .txt01,
    .irOutline__grid_txt01 .txt02{
        flex-direction: column;
        gap: 6px;
    }
    
    .irOutline__grid_txt01 [class^=txt] dt {
        width: 100%;
    }
}


/*Policy
---------------------------------------------*/
.irPolicy__sec_cont + .irPolicy__sec_cont {
    margin-top: 80px;
}

.irPolicy__companyName {
    font-size: 2rem;
    margin-top: 10px;
}

.irPolicy__companyName + .h2 {
    margin-top: 60px;
}

.irPolicy__sec .h3.h3Num,
.irPolicy__sec .h4.h4Num {
    padding-left: 0;
    display: flex;
    gap: .5em;
}

.irPolicy__sec .h3.h3Num>span:before {
    content: none;
}

.irPolicy__dlList > li {
    display: flex;
    gap: 0 2em;
}

.irPolicy__dlList > li:nth-child(n+2) {
    margin-top: 6px;
}

.irPolicy__dlList span:first-child {
    width: 20%;
    flex-shrink: 0;
}

.irPolicy__dlList .link {
    margin-top: 0;
}

.irPolicy__dlList a {
    word-break: break-all;
}

@media screen and (max-width: 767px) {
    .irPolicy__dlList > li {
        flex-direction: column;
    }
    
    .irPolicy__dlList span:first-child {
        width: 100%;
    }
}