/* ==========================================================================
 * COMPANY / NPのエンジニアリング
 *
 *
========================================================================== */

/* Layout */
#domain {
    padding: 150px 0 0;
}
@media only screen and (max-width: 768px) {
    #domain {
        padding: 120px 23px 0;
    }
}
#biz-arch .bg-gradation {
    margin-bottom: 60px;
    position: relative;
}

.inner__width800 {
    width: 800px;
}
@media only screen and (max-width: 768px) {
    .inner__width800 {
        width: 100%;
    }
}

/* ページタイトル */
.content__fvWrapper {
    background-image: url(/company/engineering/images/engineering_fvbg-pc.jpg);
}
@media only screen and (max-width: 768px) {
    .engineering .content__fvWrapper__title {
        font-size: 43px;
        padding: 0 20px;
    }
    .content__fvWrapper {
        background-image: url(/company/engineering/images/sp/engineering_fvbg-sp.png);
    }
}

.engineering .breadcrumb-ir {
    margin-top: -4px;
}

.engineering-title__ja {
    font-size: 36px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 54px */
    letter-spacing: 3.6px;
    margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
    .engineering-title__ja {
        font-size: 28px;
        text-align: center;
    }
}

/* 見出し */

.l-section-h2 {
    position: relative;

    width: 100%;

    margin-bottom: 89px;

    font-size: 24px;
    font-weight: 600;
    letter-spacing: 2.4px;
}
.l-section-h2:after {
    display: block;
    content: "";

    position: absolute;
    bottom: -37px;

    height: 5px;
    width: 180px;

    background-color:#036A9F;
}

.engineering .l-section-h3 {
    font-size: 20px;
    margin-bottom: 20px;
}

.engineering_area__ja {
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 28px; /* 200% */
    letter-spacing: 1.4px;
}


@media only screen and (max-width: 768px) {
    .engineering .l-section-h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .engineering_area__ja .l-section-h2 {
        font-size: 18px;
        font-style: normal;
        font-weight: 600;
        line-height: 30px; /* 166.667% */
        letter-spacing: 1.8px;
        margin: 0 0 74px;
    }
    .engineering_area__ja .l-section-h2:after {
        bottom: -22px;
    }
}

/* bg-gradation */
.inner__width800 .bg-gradation{
    padding: 20px;
}
.inner__width800 .two-column__left-block,
.inner__width800  .two-column__right-block {
    width: 350px;
}
@media only screen and (max-width: 768px) {
    .inner__width800 .two-column__left-block,
    .inner__width800  .two-column__right-block {
        width: 100%;
        min-width: auto;
    }
}
.two-column__separator .two-column__headding {
    margin-bottom: 8px;
}
.two-column__separator .two-column__separator-icon {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    pointer-events: none; /* コンテンツ選択の邪魔をしない */
}
@media only screen and (max-width: 768px) {
    .two-column__separator .two-column__separator-icon {
        top: 50%;
    }
    #biz-arch .bg-gradation .two-column__right-block .two-column__text{
        margin-bottom: 0;
    }
}

.text-gradation {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.5;         /* Line height 150% */
    letter-spacing: 0.1em;    /* Letter spacing 10% */
    background-image: linear-gradient(90deg, #3FA6DC 0%, #1EACE6 50%, #BD82B7 74%, #E72D84 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    display: inline-block;
}
@media only screen and (max-width: 768px) {
    .text-gradation {
        font-size: 26px;
    }
}
/* alt-layout */
.alt-layout.image-large .alt-layout__text-block {
    width: 400px;
}
.alt-layout.image-large .alt-layout__image {
    width: 370px;
}
@media only screen and (max-width: 768px) {
    .alt-layout.image-large .alt-layout__text-block {
        width: 100%;
    }
    .alt-layout.image-large .alt-layout__image {
        width: 100%;
    }
}


/* テキストの余白調整 */
#biz-arch .text-block p {
    margin-bottom: 30px;
}
#biz-arch .text-block p:last-of-type {
    margin-bottom: 80px;
}
@media only screen and (max-width: 768px) {
    #biz-arch .text-block p:last-of-type {
        margin-bottom: 52px;
    }
}
/* CTAセクション */
.cta-readmore {
    position: relative;
    background-color: #E0E7EA;
    padding: 20px 0;
    margin: 120px 0;
    text-align: center;
    overflow: hidden;
}
@media only screen and (max-width: 768px) {
    .cta-readmore {
        margin: 60px 0 120px;
    }
}
.cta-readmore::before {
    content: "READ MORE";
    display: block;
    font-family: "Josefin Sans";
    font-size: 30px;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.168px;
    margin-bottom: 15px;
}

.cta-readmore__copy {
    font-style: normal;
    display: block;
    font-size: 18px;
    line-height: 37px;
    font-weight: 600;
    margin-bottom: 18px;
    line-height: 1.2;
}

.cta-readmore .button {
    display: inline-block;
    border: none; /* 枠線なし */
}

.cta-readmore .relating-blog {
    justify-content: center;
}
.cta-readmore .relating-blog>li:not(:nth-child(3n)) {
    margin-right: 50px;
}
@media only screen and (max-width: 768px) {
    .cta-readmore .relating-blog>li:not(:nth-child(3n)) {
        margin-right: 0px;
        padding: 0 35px;
    }
}
.cta-readmore .thumb-02 {
    z-index: 1;
}
.relating-blog--light-gray .thumb-02::after {
    background-color: #ECF0F2;
}
@media only screen and (max-width: 768px) {
    .relating-blog--light-gray .thumb-02::after {
        opacity: 1;
    }
}
.cta-readmore  .relating-article__text {
    text-align: left;
}
.cta-readmore .relating-article__text h3 {
    font-size: 16px;
    line-height: 150%;
    margin-bottom: 12px;
}
.cta-readmore .relating-article__date {
    margin-bottom: 5PX;
}
.cta-readmore .cta-readmore__status {
    font-size: 18px;
    font-weight: 600;
    color: #9A9A9A;
    margin-bottom: 20px;
}

/* button */
.engineering_area__ja .button {
    width: 255px;
    color: #000;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 42px; /* 262.5% */
    letter-spacing: 1.6px;
    padding: 11px;
    box-sizing: border-box;
}
.engineering_area__ja .button:hover {
    color: #fff;
}

/* point-block */
.point-block {
    margin: 0 0 2rem 0;
    padding-bottom: 20px;
    border-bottom: 1px solid #D9D9D9;
}
.last-point-block {
    border-bottom: none;
}

.point-block__title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
    margin-bottom: 20px;
}

.point-block__badge {
    font-size: 14px;
    color: #036A9F;
    margin-right: 10px;
}

.point-block__term {
    color: #000000;
}

.point-block__body {
    position: relative;
}

.point-block__text {
    color: #000000;
    font-size: 14px;
    font-weight: 300;
    line-height: 28px;
}


/* relating-blog- */
.relating-blog--type-03 .relating-article__text{
    background: #fff;
    padding: 10px;
    box-sizing: border-box;
}
.relating-blog--type-03 .relating-article__text h3 {
    font-size: 18px;
    margin-bottom: 8px;
}
.relating-blog--type-03 .thumb-02 {
    border: solid 1px #ECECEC;
}
.relating-blog--type-03 .thumb-02::after {
    background-color: #EBEBEB;
    top: 10px;
    left: 10px;
}
@media only screen and (max-width: 768px) {
    .relating-blog.relating-blog--type-03 .relating-article__image {
        overflow: visible;
    }
    .relating-blog--type-03 .thumb-02::after {
        opacity: 1;
    }
}
.category-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px 8px;
    border-radius: 9999px;
    background: linear-gradient(
    97deg,
    rgba(63, 166, 220, 0.10) 0%,
    rgba(30, 172, 230, 0.10) 50%,
    rgba(189, 130, 183, 0.10) 74%,
    rgba(231, 45, 132, 0.10) 100%
    );
    color: #1f2937;
    font-size: 12px;
    font-weight: 500;
    line-height: 24px;
    white-space: nowrap;
}

/* SP Category-menu__list */
@media only screen and (max-width: 768px) {
    .engineering .category-menu__list ul>li {
        height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .engineering .category-menu .category-menu__list ul a {
        height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .engineering .category-menu .category-menu__list ul li:nth-child(3) a {
        padding:18px 5px;
    }
    .engineering .category-menu .category-menu__list ul li:nth-child(4) a {
         padding:18px 5px;
    }
}