.frame::before {
    background-color: var(--cl-3D-white);
}
.frame .frame-wrapper {
    padding-left: var(--u-padding);
    padding-right: var(--u-padding);
    box-shadow: var(--custom-box-shadow-2);
}
.business-con .wrapper > .uk-card {
    margin-bottom: var(--u-padding);
}
.business-con .inner > div + div {
    margin-top: var(--u-padding);
}
.business-con.frame .frame-wrapper {
    padding-left: var(--u-padding);
    padding-right: var(--u-padding);
}
h2.uk-card-title {
    position: relative;
    font-weight: 600;
    font-size: 2em;
    line-height: 1.5em;
}
    h2.uk-card-title > .font-num {
        font-size: 2.25em;
        font-weight: 500;
        line-height: 0.56em;
    }
h3.h-line {
    font-size: 1.875em;
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: var(--u-padding-s);
}
h3.h-icon {
    position: relative;
    padding-left: 2.9em;
    font-size: 1.875em;
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: var(--u-padding-s);
}
    h3.h-icon::before {
        position: absolute;
        display: inline-block;
        content: "";
        width: 2.085em;
        height: 2.085em;
        left: 0;
        top: 50%;
        transform: translate(0, -50%);
        background-image: url("/share/asset/business/sa-pa-1.svg");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center center;
    }
.wrapper > .uk-card {
    background-color: transparent;
}
    .wrapper > .uk-card .c-right {
        display: inline-block;
        width: 52%;
        height: auto;
        aspect-ratio: 16/9;
    }
    .wrapper > .uk-card .c-left {
        width: 48%;
        padding-right: calc(var(--u-padding) + var(--u-padding-s));
    }
.articles.flexbox {
    margin-bottom: calc(var(--list-widedisplay-cell-gap) * -2.0);
}
.c-left.uk-first-column p {
    margin-top: 1em;
}
.business-con .c-right img {
    /*height: auto;*/
    object-fit: cover;
}
@media only screen and (min-width:951px) {
    h2.uk-card-title > .font-num {
        position: absolute;
        left: -0.78em;
    }
}
@media only screen and (max-width:1280px) {
    .business-con .wrapper > .uk-card .c-left {
        margin-left: var(--u-padding);
        padding-right: var(--u-padding);
    }
    .business-con .wrapper > .uk-card .c-right {
        width: calc(52% - var(--u-padding));
    }
}
@media only screen and (max-width:1192px) {    
    .business-con .wrapper {
        padding-left: var(--u-padding);
        padding-right: var(--u-padding);    
    }
    .flow-text {
        width: 100%;
    }
    .flow-text .flexbox > * {
        width: 100%;
    }
}
@media only screen and (max-width:950px) {
    main.c-main>section:not(:first-of-type) {
        padding-top: 0;
    }
    h2.uk-card-title {
        font-size: 1.75em;
        margin-bottom: 1em;
    }
    h2.uk-card-title > .font-num {
        display: block;
        width: 100%;
        font-size: 1.4em;
        margin-bottom: 0.5em;
    }
    h2.uk-card-title br {
        display: none;
    }
    h3.h-line,
    h3.h-icon {
        font-size: 1.5em;
    }
    .business-con .flow-text .flexbox {
        padding: 2em;
    }
    .business-con .wrapper {
        padding-left: 0;
        padding-right: 0;
    }
    .business-con .wrapper > .uk-card .c-left {
        width: 100%;
        order: 2;
        padding-right: 0;
        margin-left: 0;
        padding-left: var(--u-padding);
        padding-right: var(--u-padding);
        margin-top: 3em;   
    }
    .business-con .wrapper > .uk-card .c-right {
        width: 100%;
        order: 1;    
    }
    .business-con.frame::before, 
    .business-con.frame::after {
        height: 100%;
    }
    .business-con .c-right img {
        padding: 0 calc(var(--u-padding) / 2);
    }
}

/* business-1 */
#business-1.business-con .inner h3 + div {
    padding-left: var(--u-padding-s);
    padding-right: var(--u-padding-s);
}
#business-1 .wrapper .h-line {
    margin-bottom: var(--u-padding);
}
.flow .step {
    position: relative;
}
.flow h4 {
    display: flex;
    align-items: center;
    font-size: 1em;
    font-weight: 500;
    letter-spacing: 0.05em;
    width: 5.7em;
    color: var(--cl-pageink);
    margin-bottom: 0;
}
    .flow h4 .font-num {
        font-size: 2.65em;
        font-weight: 500;
        margin-left: 0.1em;
    }
.flow img {
    width: 14em;
    height: 100%;}

    .flow-text .flexbox {
        width: 100%;
        padding: 2em;
        background: var(--cl-3D-white-1);
    }
.flow ul {
    margin: 0;
    width: calc(100% - 5.7em);
}
    .flow li {
        position: relative;
        font-size: 0.9em;
        line-height: 1.5em;
        letter-spacing: 0.05em;
        margin-bottom: 0;
        margin-left: 1em;
    }
        .flow li::before {
            position: absolute;
            top: 0.6em;
            left: -1em;
            display: inline-block;
            content: "";
            width: 0.5em;
            height: 0.5em;
            background-image: url("/share/asset/ui/li-triangle.svg");
            background-size: contain;
            background-position: center;
        }
        .flow li span {
            font-weight: 500;
        }
    .flow li + li {
        margin-top: 0.4em;
    }
@media only screen and (min-width:1193px) {
    .flow .step + .step {
        margin-top: -4.6em;
    }
    .flow .step1 { z-index: 4; }
    .flow .step2 { z-index: 3; }
    .flow .step3 { z-index: 2; }
    .flow .step4 { z-index: 1; }
    .flow-text {
        position: absolute;
        z-index: -1;
        display: flex;
        width: calc(100% - 11.5em);
        height: auto;
        left: 11.5em;
        top: 50%;
        transform: translate(0,-50%);
        align-items: center;
    }
    .flow-text .flexbox {
        flex-wrap: nowrap;
        align-items: center;
        height: 8.4em;
        padding-left: 3.7em;
    }
}
@media only screen and (max-width:1192px) {
    .flow .step + .step {
        margin-top: 6em;    
    }
    .flow-con {
        margin-top: 6em;
    }
    .flow img {
        position: absolute;
        right: 1.5em;
        top: 0;
        width: 9em;
        height: 9em;
        transform: translate(0, -45%);    
    }
}
@media only screen and (max-width:1192px) {
    .flow-text .flexbox {
        padding: 2em 4em;
    }
}
@media only screen and (max-width:950px) {
   #business-1.business-con .inner h3 + div {
        padding-left: 0;
        padding-right: 0;
    }
    .flow li {
        line-height: 1.8em
    }
    .flow li + li {
        margin-top: 0.5em;
    }
    .flow h4 {
        margin-bottom: 0.5em;
    }
}
@media only screen and (max-width:640px) {
    .flow img {
        position: absolute;
        right: 1.5em;
        top: 0;
        width: 8em;
        height: 8em;
        transform: translate(0, -45%);    
    }
    .flow .step + .step {
        margin-top: var(--u-space);
    }
}
.facilities .uk-card {
    gap: var(--u-padding);
    padding: 0 var(--u-padding-s);
}
    .facilities .c-iso {
        width: 45%;
        height: 100%;
        aspect-ratio: 360/260;
        margin-bottom: var(--u-padding-s);
    }
        .facilities .c-iso img {
            width: 100%;
            height: initial;
        }
    .facilities .c-text {
        width: calc(100% - 45% - var(--u-padding));
    }
        .facilities .c-text .uk-card-title {
            margin-bottom: 1em;
        }
    .facilities .c-text p {
        padding-bottom: var(--u-padding-s);
        border-bottom: var(--custom-border-solid);
    }
@media only screen and (max-width:950px) {
    .facilities .c-iso {
        margin: auto;
        width: 73%;
        max-width: 250px;
    }
    .facilities .c-text {
        width: 100%;
        margin-top: 0;
    }
    .facilities .c-text .uk-card-title {
        text-align: center;
        font-size: 1.25em;
    }
    .frame .facilities .uk-card {
        padding-top: 2em;
    }
}

/* business-2 */
#business-2 .frame-wrapper.frame-nobg {
    background-color: transparent;
    box-shadow: none;
    padding: 0;
}
    #business-2 .frame-nobg .uk-first-column {
        padding: 0;
        flex-wrap: nowrap;
        width: 100%;
        gap: var(--u-padding);
    }
        #business-2 .frame-nobg .uk-first-column .uk-card {
            width: 50%;
            padding: var(--u-padding);
            background-color: var(--cl-white);
            border-radius: 0.5em;
        }
#business-2 .h-icon {
    margin-bottom: 1.5em;
}
    #business-2 .h-icon.sa-pa-1::before {
        background-image: url("/share/asset/business/sa-pa-1.svg");
    }
    #business-2 .h-icon.sa-pa-2::before {
        background-image: url("/share/asset/business/sa-pa-2.svg");
    }
#business-2 .uk-grid {
    margin-left: 0;
}
#business-2 .inner .uk-card {
    box-shadow: 10px 10px 90px rgba(0, 0, 0, 0.05);
}
@media only screen and (max-width:1192px) {
    #business-2 .frame-nobg .uk-first-column {
        flex-wrap: wrap;
    }
    #business-2 .frame-nobg .uk-first-column .uk-card {
        width: 100%;
    }
}

/* business-4 */
#business-4 h3.h-line {
    font-size: 1.5em;
    margin-bottom: 2em;
}
#business-4 .category {
    margin-top: 0;
    padding-top: 0;
}
#business-4 .articles {
    margin-bottom: calc(var(--list-widedisplay-cell-gap) * -2.0);
}
    #business-4 .articles li a.im {
        aspect-ratio: 16/9;
    }
@media only screen and (max-width:11920px) {
    #business-4 .articles li {
        width: 100%;
    }
}
