.page_reasons * {
    box-sizing: border-box;
}

.t-companyBlockSection {
    width: 100%;
    background-color: #fff
}

.t-companyBlockSection-inner {
    position: relative;
    margin-left: auto;
    margin-right: auto
}

.t-companyBlockSection-inner_top {
    padding-bottom: 4.6875rem
}

.t-companyBlockVarious-h3 .en {
    font-family: Barlow Condensed, YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-weight: 600;
    color: #b02a2c;
    letter-spacing: .1em
}

.t-companyBlockVarious-h3 .jp {
    position: relative;
    font-family: Noto Sans JP, YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-weight: 700;
    letter-spacing: .05em
}

html[class*=-portuguese] .t-companyBlockVarious-h3 .jp {
    font-family: Arial, sans-serif;
    font-weight: 700;
    letter-spacing: .04em
}

.t-companyBlockVarious-h3 .jp:after,
.t-companyBlockVarious-h3 .jp:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0
}

.t-companyBlockVarious-h3 .jp:before {
    width: 100%;
    background-color: #f1f1f1
}

.t-companyBlockVarious-h3 .jp:after {
    background-color: #b02a2c
}

.t-companyBlockVarious-h4 .en {
    font-family: Barlow Condensed, YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-weight: 600;
    color: #b02a2c;
    letter-spacing: .1em
}

.t-companyBlockVarious-h4 .jp {
    position: relative;
    font-family: Noto Sans JP, YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-weight: 700;
    letter-spacing: .05em
}

html[class*=-portuguese] .t-companyBlockVarious-h4 .jp {
    font-family: Arial, sans-serif;
    font-weight: 700;
    letter-spacing: .04333em
}

.t-companyBlockVarious-text {
    font-family: Noto Sans JP, YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-weight: 400;
    letter-spacing: .05em;
    text-align: justify
}

html[class*=-portuguese] .t-companyBlockVarious-text {
    text-align: left
}

.t-companyBlockVarious-imageWrap {
    position: relative
}

.t-companyBlockVarious-imageWrap img {
    width: 100%;
    height: auto
}

@media only screen and (min-width: 1920px) {
    html {
        font-size: 19.2px
    }
}

@media only screen and (min-width: 768px) and (max-width:1080px) {
    html {
        font-size: 10.8px
    }
}

@media screen and (min-width: 768px) {
    html {
        font-size: 1vw
    }
    body {
        font-size: .875rem;
        min-width: 1080px
    }
    .t-companyBlockSection {
        padding-bottom: 10rem
    }
    .t-companyBlockSection-inner {
        /* width: 85rem; */
        padding-left: 5.625rem;
        padding-right: 5.625rem
    }
    .t-companyBlockSection-inner_top {
        padding-bottom: 4.6875rem
    }
    .t-companyBlockVarious {
        margin-bottom: 6.875rem
    }
    .t-companyBlockVarious:last-of-type {
        margin-bottom: -2.5rem
    }
    .t-companyBlockVarious-item {
        margin-top: 2.1875rem
    }
    .t-companyBlockVarious-cnt.-half {
        display: flex;
        margin-top: 2.5rem
    }
    .t-companyBlockVarious-cnt.-half .c-wysiwyg p {
        margin-bottom: 0
    }
    .t-companyBlockVarious-h3 .en {
        margin-bottom: 1.375rem;
        font-size: 1.25rem
    }
    .t-companyBlockVarious-h3 .jp {
        line-height: 1.4;
        padding-bottom: 2.1875rem;
        margin-bottom: 2.1875rem;
        margin-left: -.1875rem;
        font-size: 2.5rem
    }
    .t-companyBlockVarious-h3 .jp:after,
    .t-companyBlockVarious-h3 .jp:before {
        height: 3px;
        left: .1875rem
    }
    .t-companyBlockVarious-h3 .jp:after {
        width: 5.625rem
    }
    .t-companyBlockVarious-h4 {
        margin-bottom: 1.875rem
    }
    .t-companyBlockVarious-h4 .en {
        margin-top: 5rem;
        margin-bottom: 1.25rem;
        font-size: 1.25rem
    }
    .t-companyBlockVarious-h4 .jp {
        line-height: 1.54;
        font-size: 1.625rem
    }
    .t-companyBlockVarious-text {
        line-height: 1.9;
        font-size: 1.3125rem;
        margin-bottom: 3.125rem
    }
    .t-companyBlockVarious-cnt.-half .t-companyBlockVarious-text {
        margin-top: -.625rem
    }
    .t-companyBlockVarious-imageWrap {
        flex-shrink: 0
    }
    .t-companyBlockVarious-cnt.-wide .t-companyBlockVarious-imageWrap {
        width: 100%
    }
    .t-companyBlockVarious-imageWrap_mb {
        margin-bottom: 3.125rem
    }
}

@media screen and (max-width: 767px) {
    html {
        font-size: 4.26667vw;
    }
    body {
        font-size: .8125rem
    }
    .page_reasons {
        margin-top: 3rem;
    }
    .t-companyBlockSection {
        padding-bottom: 3.75rem
    }
    .t-companyBlockSection-inner {
        margin-left: 2.5rem;
        margin-right: 2.5rem
    }
    .t-companyBlockSection-inner_top {
        padding-bottom: 2.03125rem
    }
    .t-companyBlockVarious {
        margin-bottom: 3.4375rem
    }
    .t-companyBlockVarious:last-of-type {
        margin-bottom: 0
    }
    .t-companyBlockVarious-item {
        margin-top: 2.1875rem
    }
    .t-companyBlockVarious-h3 .en {
        margin-bottom: .625rem;
        font-size: .875rem
    }
    .t-companyBlockVarious-h3 .jp {
        line-height: 1.4;
        padding-bottom: 1.5625rem;
        margin-bottom: 1.5625rem;
        margin-left: -.09375rem;
        font-size: 1.25rem
    }
    .t-companyBlockVarious-h3 .jp:after,
    .t-companyBlockVarious-h3 .jp:before {
        height: .09375rem;
        left: .09375rem
    }
    .t-companyBlockVarious-h3 .jp:after {
        width: 2.8125rem
    }
    .t-companyBlockVarious-h4 {
        margin-bottom: 1.25rem
    }
    .t-companyBlockVarious-h4 .en {
        margin-bottom: .625rem;
        font-size: .875rem
    }
    .t-companyBlockVarious-h4 .jp {
        line-height: 1.44;
        font-size: 1rem
    }
    .t-companyBlockVarious-text {
        line-height: 1.92;
        font-size: .90625rem
    }
    .t-companyBlockVarious-imageWrap {
        width: 100%;
        margin-top: 2.1875rem
    }
    .t-companyBlockVarious-imageWrap_mb {
        margin-bottom: 1.5625rem
    }
}

@media screen and (min-width: 768px) and (min-width:768px) {
    .t-companyBlockVarious-cnt.-half .t-companyBlockVarious-imageWrap {
        width: 38.75rem;
        margin-left: 5.9375rem
    }
    .t-groupCorpHeader-top {
        width: 85rem
    }
}