.content-row,
.content-row-start,
.content-col,
.content-col-start {
    flex-wrap: wrap;
}

.header-img {
    background-image: url("/img/index/header-img.jpg");
    background-size: cover;
    min-height: 750px;
}

.img-g {
    height: 650px;
    top: 102px;
}

.hacos-cp {
    z-index: 2;
    min-width: 633px;
    height: 170px;
    position: absolute;
    bottom: 50px;
    right: clamp(0px, calc((100vw - 1440px) / 2), 25vw);
    /* border-radius: 20px 0px 0px 20px; */
    border-radius: 20px;
    border: 2px solid rgb(255 255 255 / 80%);
    background-image: url("/img/index/hacos-cp.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 110% auto;
    box-shadow: 0px 4px 10px #00000033, 0px 0px 5px #FFFFFF80 inset;
    /* backdrop-filter: blur(5px); */
}

.hacos-cp p:nth-child(1) {
    font-family: "Roboto", sans-serif;
    font-size: 80px;
    font-weight: 900;
    line-height: 120px;
    letter-spacing: 0.2em;
    margin-left: 77px;
    justify-self: start;
    color: #E75500;
    text-shadow: 2px 4px 10px #E7550021;
}

.hacos-cp p:nth-child(2) {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 40px;
    letter-spacing: 0.1em;
    color: #00a0e8;
    align-items: self-start;
    justify-self: start;
    margin-left: 40px;
    text-shadow: 1px 3px 4px #00A0E821;
}

/* 
.origin {
    padding: 100px 50px;
} */

.origin-text {
    margin-top: 16px;
}

.origin-text p {
    font-weight: 500;
}

.origin-font {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    line-height: 28px;
    color: #E75500;
    align-items: start;
    width: 100px;
    margin-bottom: 8px;
}

.origin-font span {
    margin-right: 4px;
    font-weight: 500;
    font-size: 24px;
    line-height: 40px;
    text-decoration: underline #E75500;
}

.origin img {
    width: 20px;
    height: 16px;
    margin-right: 24px;
}


.concept {
    position: relative
}

.concept img {
    position: absolute;
    left: -100px;
    bottom: -150px;
    z-index: -1;
}

.concept-h {
    font-family: "Roboto", sans-serif;
    font-size: 24px;
    line-height: 40px;
    font-weight: 700;
    color: #00A0E8;
    text-shadow: 1px 3px 5px #00A0E840;
    margin-bottom: 16px;
    margin-top: 40px;
    text-decoration-line: underline;
    text-decoration-color: #00A0E8;
}

.card-concept {
    background: linear-gradient(137.57deg, rgba(255, 255, 255, 0.56) 0.9%, rgba(255, 255, 255, 0.07) 99.1%);
    border: 2px solid #fff;
    width: 99%;
    max-width: 590px;
    height: 328px;
}

.concept p,
.issues p {
    margin-left: 36px;
    margin-right: 36px;
}

.concept span,
.issues span {
    font-weight: 500;
    color: #00A0E8;
    text-shadow: 1px 3px 4px #00000026;
}

.issues {
    position: relative;
}

.issues img {
    position: absolute;
    left: -85px;
    top: -130px;
    z-index: -1;
}

.step-img {
    width: 100%;
    max-width: 588px;
}

.function {
    /* background-image: url("/img/index/bgi-function.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    padding-top: 80px;
    padding-bottom: 200px; */
    gap: 24px;
    position: relative;
}

.function-img {
    position: absolute;
    top: -210px;
    z-index: -1;
}

.function-icon {
    max-width: 180px;
    height: auto;
    border-radius: 50%;
    box-shadow: 0px 4px 10px rgb(153 153 153 / 40%);
}


.circle {
    background: linear-gradient(42.76deg, #00A0E828 39.28%, #CCEFFF05 91.4%);
    width: 40px;
    height: 40px;
    margin-right: 20px;
}


.strength {
    /* background-image: url("/img/index/bgi-strength.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    padding: 80px 100px 180px; */
    width: 100%;
    position: relative;
}

.strength-img {
    position: absolute;
    z-index: -1;
}

.strength-card {
    max-width: 996px;
    height: 160px;
    border: 2px solid transparent;
    background-origin: border-box;
    background-clip: content-box, border-box;
    background-image:
        linear-gradient(91.41deg, #FFFFFFE6 0.05%, #FFFFFF80 99.95%),
        linear-gradient(91.41deg, #FFFFFFBF 0.06%, #FFFFFF1A 99.94%);
    box-shadow: 0px 4px 10px #99999940;
    justify-items: start;
}

.strength-text {
    justify-items: start;
    text-align: start;
    margin-left: 20px;
    margin-top: 16px;
}

.strength-text-p {
    margin-top: 12px;
    margin-right: 20px;
    flex: 1;

}

.strength-text-p span {
    font-weight: 500;
    color: #00A0E8;
}

.strength-dropdown {
    width: 100%;
}



@media (min-width: 992px) {

    .strength-ibc {
        width: 160px;
        height: 170px;
        align-content: center;
    }


    .strength-ibc {
        background: linear-gradient(110.18deg, #00A0E828 8.5%, #CCEFFF05 91.5%);
    }

    .strength-ibc img {
        max-width: 120px;
        height: auto;
    }
        .mi-br{
        display: none;
    }
}



@media (max-width: 991px) {
    .header-img {
        min-height: 300px;
        background-size: cover;
        background-position: center bottom;
    }

    .img-g {
        display: none;
        background: linear-gradient(0.37deg, #FFFFFF 3.7%, rgba(255, 255, 255, 0.5) 15.8%, rgba(255, 255, 255, 0) 37.08%);
    }

    .hacos-cp {
        min-width: 340px;
        height: 85px;
        bottom: 24px;
        border-radius: 12px 0px 0px 12px;
        background-size: 110% auto;
        box-shadow: 0px 0px 5px rgba(255, 255, 255, 0.50) inset, 0px 4px 10px rgba(0, 0, 0, 0.20);
        /* backdrop-filter: blur(5px); */
    }

    .hacos-cp p:nth-child(1) {
        font-size: 36px;
        line-height: 54px;
        margin-left: 30px;
        text-align: start;
    }

    .hacos-cp p:nth-child(2) {
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0.05em;
        margin-left: 24px;
    }


    .concept-h {
        margin-top: 20px;
        margin-bottom: 12px;
        font-size: 20px;
        line-height: 40px;
    }

    .concept p,
    .issues p {
        margin-left: 20px;
        margin-right: 20px;
    }

    .concept-b {
        margin-bottom: 20px;
    }

    .card-concept {
        height: auto;
    }

    .origin {
        padding: 0;
    }

    .origin-text {
        gap: 12px;
    }

    .origin-font {
        align-self: flex-start;
    }

    .origin img {
        margin-left: 24px;
        margin-right: 8px;
    }

    .arrow5 {
        margin-bottom: 24px;
    }


    .step {
        margin-top: 40px;
    }

    .function {
        gap: 32px 8px;
    }

    .function-img {
        width: 100%;
        top: auto;
    }

    .function-icon {
        max-width: 110px;
    }


    .strength-card {
        /* min-width: 362px;
        max-width: 720px; */
        height: auto;
        width: 99%;
    }

    .strength-down img {
        max-width: 80px;
        height: auto;
        margin: 0px 10px;
    }

    .strength-drop {
        /* max-width: 362px; */
        height: 40px;
        background: linear-gradient(90.7deg, rgba(102, 208, 255, 0.1) 0%, rgba(153, 223, 255, 0.06) 55.16%, rgba(204, 239, 255, 0.02) 100%);
        width: 100%;
        border-radius: 20px;
        flex-shrink: 1;
        text-align: center;
        border: 1px solid transparent;
        border-image-source: linear-gradient(90.7deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
        box-shadow: 0px 2px 4px #00000026;
    }

    .strength-text-p {
        margin-top: 4%;
        margin-bottom: 4%;
    }


    .strength-down {
        display: flex;
    }

    .strength-img {
        width: 100%;
        transform: rotate(90deg);
    }

    .dot {
        align-self: start;
    }

    .circle {
        background: linear-gradient(288deg, rgba(0, 160, 232, 0.4) 16.88%, rgb(0 160 232 / 30%) 49.3%, rgb(0 160 232 / 18%) 84.43%);
        width: 28px;
        height: 28px;
        margin-right: 12px;
        margin-left: 12px;
    }

    .origin-font span {
        font-weight: 700;
        font-size: 28px;
    }
    .mi-br{
        display: none;
    }
}

@media (max-width: 500px) {
    .mi-br {
        display: inline;
    }
}