
/* メインビジュアル */

.homeContainer {
    position: relative; /* ポジション位置指定 */
    overflow: hidden;   /* はみだしたところを隠す */
}

.headerSliderWrap {
	height: 100vh;  /* 高さをウィンドウに合わせて常に100％を可変で維持する */
	width: 100%;    /* ウィンドウ幅に合わせて幅を設定（常に100％） */
    display: flex;  /* 横並び用 */
    flex-wrap: wrap;/* はみだした項目を下へ移動させるか */
}

.headerSliderContent {
	background: no-repeat url("../img/nexus_hp_top_innovation.png"); /* 画像は一枚のみ表示（no-repeat） 背景画像設定(url) */
	background-size: cover; /* 画像サイズを自動的に画面に合わせる */
	height: calc(100vh + 80px); /* 高さを自動計算し、ヘッダーのサイズを込みで背景画像を表示 */
	width: 100%;/* ウィンドウ幅に合わせて幅を全幅設定 */
    position: absolute;/* ポジション位置指定　この項目で自由な場所に画像などを置ける */
    top: 0; /* ポジション位置指定 上記headerSliderWrapの最上部にこの要素を指定 */
    left: 0;/* ポジション位置指定 上記headerSliderWrapの最左部にこの要素を指定 */
    z-index: 3;/* z-indexが指定されてないものより上に重ねる */
    color: #fff;/* フォントカラー白 */

}

.headerSliderContentItem {
	height: 100%;/* 高さを要素に合わせて常に100％を可変で維持する */
    margin: 0 auto;/* 中央揃え 0は上下 autoは左右 */
    padding: 0 100px;/* 要素自体を広げる */
    display: flex;/* 要素を横並び */
    flex-direction: column;/* 横並びにした要素を縦に並べる */
    justify-content: center;/* flexがかかった要素をすべて中央揃え */
}

.homeH2Box {
	font-size: 76px;/* フォントサイズ　76px(ピクセル) */
	font-weight: 600;/* フォントの太さ、やや太字 大きくなれば大きくなるほど太くなる */
	line-height: 1.2;/* 文の行間 大きくすると行間が大きくなる */
}

.headerSliderContent > .headerSliderContentItem > h2 {
    transform: scale(1, 1.5);/* フォントを縦に長くする 1倍（横幅の大きさ）、1.5倍（縦の長さ） */
    letter-spacing: 0.02em;/* 文字間を空ける、0.02emは0.02文字分空けるという意味 */
}

/* 一番最初の文字色を変える */
.headerSliderContent > .headerSliderContentItem > h2::first-letter {
    color: #f4b100;/* フォントカラー　オレンジ */
}


.headerSliderContent .desc_area {
    margin-top: 15px;/* 要素の外を広げる */
}

.headerSliderContent .desc_area p {
    line-height: 1.8;/* 文の行間 大きくすると行間が大きくなる */
    font-size: 20px;/* フォントサイズ */
}

/* About */

.aboutContainer {
    padding: 150px 0 0;/* 要素自体を広げる */
}

.aboutContainer .post_content {
    max-width: inherit;/* 幅を.aboutContainerに合わせて可変する */
    padding: 0 60px;/* 要素自体を広げる */
}

.about-flex {
    display: flex; /* 要素を横並び */
}

.post_content > *:first-child {
    margin-top: 0 !important; /* 要素の外を広げない */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.about-element {
    width: 50%; /* 幅を要素の50％とする */
}

.post_content p {
    line-height: 2.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 0 0 2em 0;  /* 要素の外を広げる */
}

#About .title_area {
    color: #0071BC; /* フォントカラー　濃いブルー */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px;/* 要素自体を右に広げる */
}

.design_header.animate .large_headline span, .design_header.animate .sub_title span {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.large_headline {
    font-size: 70px !important;
    overflow: hidden;
    margin: 0;  /* 要素の外を広げない */
    padding: 0;/* 要素自体を広げない */
    line-height: 1.2;   /* 文の行間 大きくすると行間が大きくなる */
    text-align: left;
}

.design_header.animate .large_headline span, .design_header.animate .sub_title span {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.post_content p {
    line-height: 2.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 0 0 2em 0;  /* 要素の外を広げる */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

#About .cb_design_arrow_button {
    padding: 0px;/* 要素自体を広げない */
    margin: 0px 0px 0px auto;   /* 右揃え */
}

.design_arrow_button {
    text-align: right;
    }

.design_arrow_button a .label {
    margin-right: 20px; /* 要素の外右側を広げる */
}

.design_arrow_button a {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 18px;
    color: #0071BC;
    text-decoration: none !important;
}

.arrow_button {
	color: #fff;
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #0071BC;
    border-radius: 100%;
    position: relative;
    overflow: hidden;
}

.arrow_button i {
	display: block;
    font-size: 14px;
    position: absolute;
    left: 0px;
    top: 19px;
    color: #fff; /* 通常時は白色 */
    z-index: 2;
    width: 100%;
    text-align: center;
}

.about-element:last-child {
    padding-left: 50px;/* 要素自体を左に広げる */
}

.about-img img {
    object-fit: cover;
    height: 400px !important;
    width: 100% !important;
    object-position: 50% 50%;
}

/* サービスタイトル */

.cb_free_space {
    padding: 150px 0;/* 要素自体を広げる */
    width: 100%;
}

.post_content > *:first-child {
    margin-top: 0 !important;   /* 要素の外を広げない */
}


body.home .design_header {
    margin-top: 0;  /* 要素の外を広げない */
}

.service-title .cb_design_header {
    margin-bottom: 0; /* 要素の外　下を広げない */
}
.service-title .design_header {
    justify-content: center;
}

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px;/* 要素自体を広げない */
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}
.post_content *:last-child {
    margin-bottom: 0;/* 要素の外を広げない */
}
.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.design_header .large_headline {
    font-size: 70px;
     overflow: visible;       /* ← overflowを解除 */
    margin: 0;  /* 要素の外を広げない */
    padding: 0; /* 要素自体を広げない */
    line-height: 1.2;   /* 文の行間 大きくすると行間が大きくなる */
    text-align: left;
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}
.post_content h3 {
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 3em 0 1.3em 0;  /* 要素の外を広げる */
}
.post_content h3 {
    font-size: 130%;
    margin: 0 0 35px 0; /* 要素の外を広げる */
}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
    clear: both;
    line-height: 1.4;   /* 文の行間 大きくすると行間が大きくなる */
    padding: 0; /* 要素自体を広げない */
    font-weight: 600;
}
.large_headline {
    font-weight: 600;
}
.large_headline {
    font-size: 70px !important;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
}

/* サービス左 */


.design_header.animate .large_headline span, .design_header.animate .sub_title span {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}
.design_header .large_headline span, .design_header .sub_title span {
    transform: translate3d(0, 100%, 0);
    opacity: 0;
    display: inline-block;
    transition: transform 0.7s ease, opacity 0.9s ease;
}
.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外　下を広げない */
}
.post_content *:first-child {
    margin-top: 0;  /* 要素の外　上を広げない */
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外　下を広げない */
}
.sub_title.colored {
    font-size: 18px;
    margin-top: 10px;   /* 要素の外　上を広げる */
    margin-bottom: -5px;    /* 要素の外　下を狭める */
}
.design_header .sub_title {
    overflow: hidden;   
    padding: 0; /* 要素自体を広げない */
    font-size: 18px;
    line-height: 1.4;   /* 文の行間 大きくすると行間が大きくなる */
}
.service-title p {
    color: #0071BC;
    margin-bottom: 3rem !important; /* 要素の外　下を広げる */
}

.cb_free_space:nth-child(even) {
    background: #f6f6f6;
}

.service-box {
	position: relative;
	height: 400px;
	width: 100%;
	margin-bottom: 100px;   /* 要素の外　下を広げる */
}

body.home .design_header {
    margin-top: 0;  /* 要素の外を広げない */
}
.service-title .cb_design_header {
    margin-bottom: 0px; /* 要素の外　下を広げない */
}

.service-title .design_header {
    justify-content: center;
}


.service-box1 .service-element:nth-child(2n+1) {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
}

.post_content h3 {
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 3em 0 1.3em 0;  /* 要素の外を広げる */
}


.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */

}

.service-element:nth-child(2n+1) {
    height: 300px;
    width: 45%;
}

.service-element img {
	height: 300px !important;
	object-fit: cover;
	width: 100%;
    }

.service-box1 .service-element:nth-child(2n) {
	position: absolute;
	z-index: 1;
	bottom: 0;
	right: 0;
}

    .service-box1 .service-text {
    display: block;
	width: 75%;
	margin-left: auto;  /* 右寄せ */
	padding-top: 40px;  /* 要素自体を上に広げる */
	padding-right: 40px;/* 要素自体を右に広げる */
    }

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px;/* 要素自体を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外　下を広げない */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外　上を広げない */
}

.service-box h3 {
    color: #0071BC;
    font-size: 32px !important;
    overflow: hidden;
    margin: 0;  /* 要素の外を広げない */
    padding: 0;/* 要素自体を広げない */
    line-height: 1.2;   /* 文の行間 大きくすると行間が大きくなる */
    text-align: left;
}

.service-box .sub_title, .service-box .colored {
    color: #00005F;
}

.service-element:nth-child(2n) {
        background: linear-gradient(to bottom right, #e1eef7 50%, #a5b3d1);
        height: 350px;
        width: 70%;
}

.service-box1 .service-element:nth-child(2n) {
	position: absolute;
	z-index: 1;
	bottom: 0;
	right: 0;
    }


.service-box .cb_design_arrow_button {
    padding: 0px;   /* 要素自体を広げない */
    margin: 0px 0px 0px auto;   /* 右寄せ */
}

.design_arrow_button a .label {
    margin-right: 20px; /* 要素の外　右を広げる */
}

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px;/* 要素自体を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外　下を広げない */
}

.cb_design_header {
    margin: 0 auto 60px;    /* 要素の外を広げる　中央揃え、下60px空ける */
}

/* サービス右 */


    .service-box2 .service-element:nth-child(2n) {
        position: absolute;
        z-index: 1;
        bottom: 0;
        left: 0;
    }


    .service-box2 .service-text {
        width: 75%;
        margin-right: auto; /* 左寄せ */
        padding-top: 40px;  /* 要素自体を上に広げる */
        padding-left: 40px; /* 要素自体を左に広げる */
    }

    .service-element img {
        height: 300px !important;
        object-fit: cover;
    }

        .service-box2 .service-element:nth-child(2n+1) {
        position: absolute;
        z-index: 2;
        top: 0;
        right: 0;
    }

/* 会社概要 */

.alignfull {
    width: 100vw;
    margin-right: calc(50% - 50vw); /* （要素の50％－ウィンドウ幅の50％）のサイズを計算し、そのサイズ分右側を空ける */
    margin-left: calc(50% - 50vw);  /* （要素の50％－ウィンドウ幅の50％）のサイズを計算し、そのサイズ分左側を空ける */
    overflow: hidden;
}

.cb_free_space {
    padding: 150px 0;   /* 要素自体を広げる */
}

.cb_free_space .post_content {
        max-width: inherit;
        padding: 0 60px;    /* 要素自体を広げる */
    }

.post_content > *:first-child {
    margin-top: 0 !important;   /* 要素の外を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.cover_box {
    position: relative;
    width: 100%;
    height: auto;
}

    .alignfull .cover_inner-container {
        padding: 0 60px;    /* 要素自体を広げる */
    }


.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}
.cover_text {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

#cb_content_4 .cb_design_header {
    padding: 0px;   /* 要素自体を広げない */
}

#cb_content_4 .title_area {
    color: #FFFFFF;
}

.company_contents .title_area h3 {
    transform: translate(0px, 10%);
}

.company_contents h4 {
    color: #ffffff;
}

#cb_content_4 .sub_title, #cb_content_4 p {
    color: #FFFFFF;
}

.company_contents .title_area p {
    transform: translate(0px, 0px);
    margin-left: 10px;  /* 要素の外　左を広げる */
}

.company_contents .title_area {
    display: flex;  /* 要素を横並び */
    align-items: flex-end;
}

.post_content h4 {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 2.3em 0 1em 0;  /* 要素の外を広げる */
}

#cb_content_4 .design_arrow_button .label {
    color: #FFFFFF;
}

#cb_content_4 .arrow_button {
    background-color: #FFFFFF;
}

#cb_content_4 .arrow_button i {
    color:#0071bc;
}

.alignfull .cover_background {
    max-width: 1700px;
    margin: 0 auto; /* 中央揃え */
}

.cover_top_img_position img {
    object-position: 0% 50%;
}

.cover_background img {
    object-fit: cover;
    width: 100%;
    height: 400px !important;
    object-position: 50% 50%;
}


/* メディアクエリ1200px以下 */
@media screen and (max-width: 1200px) {
    
/* メインビジュアル */

.headerSliderContent {
	height: calc(100vh + 60px); 
    background-position: 50% 30%;
}

.headerSliderContentItem {
    margin: 0;  /* 要素の外を広げない */
    padding: 0 0 0 30px;    /* 要素自体を広げる */
}

.homeH2Box {
    font-size: 53px;
}

.headerSliderContent .desc_area {
    margin-top: 18px;   /* 要素の外　上を広げる */
}

.headerSliderContent .desc_area p {
    font-size: 18px;
}

/* About */

.aboutContainer {
    padding: 150px 0 40px;  /* 要素自体を広げる */
}

}

/* メディアクエリ768px以下 */
@media screen and (max-width: 768px) {
    
/* メインビジュアル */

.headerSliderContent {
    background-position: 50% 30%;
}

.headerSliderContentItem {
    padding: 0 20px;    /* 要素自体を広げる */
}

.homeH2Box {
	font-size: 30px;
}

.headerSliderContent .desc_area p {
    font-size: 16px;
}

/* About */

.aboutContainer {
    padding: 100px 0 40px;  /* 要素自体を広げる */
}

.aboutContainer .post_content {
    padding: 20px 20px 40px;    /* 要素自体を広げる */
}

.post_content p {
    line-height: 2; /* 文の行間 大きくすると行間が大きくなる */
    margin: 0 0 2em 0;  /* 要素の外を広げる */
    font-size: 14px;
}

.large_headline {
    font-size: 30px !important;
}


.post_content p {
    line-height: 2; /* 文の行間 大きくすると行間が大きくなる */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.about-element:last-child {
    padding-left: 50px; /* 要素自体を左に広げる */
}

/* サービスタイトル */

.cb_free_space {
    padding: 20px 0;    /* 要素自体を広げる */
    width: 100%;
}

.post_content > *:first-child {
    margin-top: 0 !important;   /* 要素の外を広げない */
}


body.home .design_header {
    margin-top: 0;  /* 要素の外を広げない */
}

.service-title .cb_design_header {
    margin-bottom: 35px;    /* 要素の外　下を広げる */
}
.service-title .design_header {
    justify-content: center;
}

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px; /* 要素自体を広げない */
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}
.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外　下を広げない */
}
.post_content *:first-child {
    margin-top: 0;  /* 要素の外　上を広げない */
}

.design_header .large_headline {
    font-size: 30px;
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}
.post_content h3 {
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 3em 0 1.3em 0;  /* 要素の外を広げる */
}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
    clear: both;
    line-height: 1.7;   /* 文の行間 大きくすると行間が大きくなる */
    padding: 0; /* 要素自体を広げない */
    font-weight: 600;
}
.large_headline {
    font-size: 30px !important;
    font-weight: 600;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
}

/* サービス左 */


.design_header.animate .large_headline span, .design_header.animate .sub_title span {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}
.design_header .large_headline span, .design_header .sub_title span {
    transform: translate3d(0, 100%, 0);
    opacity: 0;
    display: inline-block;
    transition: transform 0.7s ease, opacity 0.9s ease;
}
.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}
.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}
.service-title .title_area, .service-title span, .service-title h3 {
    color: #00005F;
    text-align: center !important;
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}
.sub_title.colored {
    font-size: 18px;
    margin-top: 10px;   /* 要素の外　上を広げる */
    margin-bottom: -5px;    /* 要素の外　下を狭める */
}
.design_header .sub_title {
    overflow: hidden;
    padding: 0; /* 要素自体を広げない */
    font-size: 16px;
    line-height: 1.4;   /* 文の行間 大きくすると行間が大きくなる */
}
.service-title p {
    color: #0071BC;
    margin-bottom: 3rem !important; /* 要素の外　下を広げる */
}

.cb_free_space:nth-child(even) {
    background: #f6f6f6;
}

.service-box {
        position: static;
        height: auto;
        width: 100%;
        margin-bottom: 60px;    /* 要素の外　下を広げる */
}



body.home .design_header {
    margin-top: 0;  /* 要素の外を広げない */
}

.service-title .design_header {
    justify-content: center;
}


.service-box1 .service-element:nth-child(2n+1) {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
}

.post_content h3 {
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 3em 0 1.3em 0;  /* 要素の外を広げる */
}


.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */

}



.service-element:nth-child(2n+1) {
        height: 300px;
        width: 100%;
}

.service-element img {
	height: 300px !important;
	object-fit: cover;
	width: 100%;
    }

.service-box1 .service-element:nth-child(2n) {
        background: linear-gradient(to bottom right, #e1eef7 50%, #a5b3d1);
        height: auto;
        width: 100%;
        z-index: 1;
        bottom: 0;
        padding: 60px 30px; /* 要素自体を広げる */
}

    .service-box1 .service-text {
    display: block;
	width: 75%;
	margin-left: auto;  /* 右揃え */
	padding-top: 40px;  /* 要素自体を上に広げる */
	padding-right: 40px;    /* 要素自体を右に広げる */
    }

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px; /* 要素自体を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}



.service-box .sub_title, .service-box .colored {
    color: #00005F;
}

.service-element:nth-child(2n) {
        background: linear-gradient(to bottom right, #e1eef7 50%, #a5b3d1);
        height: 350px;
        width: 70%;
}

.service-box1 .service-element:nth-child(2n) {
	position: absolute;
	z-index: 1;
	bottom: 0;
	right: 0;
    }


.service-box .cb_design_arrow_button {
    padding: 0px;   /* 要素自体を広げない */
    margin: 0px 0px 0px auto;   /* 右揃え */
}

.design_arrow_button a .label {
    margin-right: 20px; /* 要素の外　右を広げる */
}

.design_header .title_area.no_desc {
    width: auto;
    padding-right: 0px; /* 要素自体を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}

.cb_design_header {
    margin: 0 auto 35px;    /* 要素の外を広げる　中央揃え、下空ける */
}

/* サービス右 */


    .service-box2 .service-element:nth-child(2n) {
        position: absolute;
        z-index: 1;
        bottom: 0;
        left: 0;
    }


    .service-box2 .service-text {
        width: 75%;
        margin-right: auto; /* 左揃え */
        padding-top: 40px;  /* 要素自体を上に広げる */
        padding-left: 40px; /* 要素自体を左に広げる */
    }

    .service-element img {
        height: 300px !important;
        object-fit: cover;
    }

        .service-box2 .service-element:nth-child(2n+1) {
        position: absolute;
        z-index: 2;
        top: 0;
        right: 0;
    }

    

/* 会社概要 */

.alignfull {
    width: 100vw;
    margin-right: calc(50% - 50vw);/* （要素の50％－ウィンドウ幅の50％）のサイズを計算し、そのサイズ分右側を空ける */
    margin-left: calc(50% - 50vw);/* （要素の50％－ウィンドウ幅の50％）のサイズを計算し、そのサイズ分左側を空ける */
    overflow: hidden;
}


.cb_free_space .post_content {
        max-width: inherit;
        padding: 0 20px;    /* 要素自体を広げる */
    }

.post_content > *:first-child { 
    margin-top: 0 !important;   /* 要素の外を広げない */
}

.post_content *:last-child {
    margin-bottom: 0;   /* 要素の外を広げない */
}

.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}

.cover_box {
    position: relative;
    width: 100%;
    height: auto;
}

    .alignfull .cover_inner-container {
       padding: 0 20px; /* 要素自体を広げる */
    }


.post_content *:first-child {
    margin-top: 0;  /* 要素の外を広げない */
}
.cover_text {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

#cb_content_4 .cb_design_header {
    padding: 0px;   /* 要素自体を広げない */
}

#cb_content_4 .title_area {
    color: #FFFFFF;
}

.company_contents .title_area h3 {
    transform: translate(0px, 10%);
}

.company_contents h4 {
    color: #ffffff;
}

#cb_content_4 .sub_title, #cb_content_4 p {
    color: #FFFFFF;
}

.company_contents .title_area p {
    transform: translate(0px, 0px);
    margin-left: 10px;  /* 要素の外　左を広げる */
}

.company_contents .title_area {
    display: flex;  /* 要素を横並び */
    align-items: flex-end;
}

.post_content h4 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.6;   /* 文の行間 大きくすると行間が大きくなる */
    margin: 2.3em 0 1em 0;  /* 要素の外を広げる */
}

#cb_content_4 .design_arrow_button .label {
    color: #FFFFFF;
}

#cb_content_4 .arrow_button {
    width: 40px;
    height: 40px;
    background-color: #FFFFFF;
}

#cb_content_4 .arrow_button i {
    top: 15px;
    width: 40px;
    height: 40px;
    color:#0071bc;
}

.alignfull .cover_background {
    max-width: 1700px;
    margin: 0 auto; /* 中央揃え */
}

.cover_top_img_position img {
    object-position: 0% 50%;
}

.cover_background div img {
    object-fit: cover;
    width: 100%;
    height: 400px !important;
    object-position: 50% 50%;
}

.service-box h3 {
    color: #0071BC;
    font-size: 32px !important;
    overflow: hidden;
    margin: 0;  /* 要素の外を広げない */
    padding: 0; /* 要素自体を広げない */
    line-height: 1.2;   /* 文の行間 大きくすると行間が大きくなる */
    text-align: left;
}

 /* 画像が潰れないようにする */
  .service-element img,
  .cover_background img {
      width: 100% !important;
      height: auto !important;
      object-fit: cover;
  }

 .service-element {
        margin: 0 auto -2px;    /* 中央揃え　下を狭める */
}


  /* 固定されていた高さを解除 */
  .service-element,
  .service-box,
  .service-box1 .service-element:nth-child(2n),
  .service-box2 .service-element:nth-child(2n) {
      position: static !important;
      height: auto !important;
      width: 100% !important;
      padding: 0 !important;    /* 要素自体を広げない */
  }

  /* テキストボックスも幅100%で自然に表示 */
  .service-box1 .service-text,
  .service-box2 .service-text {
      width: 100%;
      padding: 60px 30px;   /* 要素自体を広げる */
      margin: 0 auto 20px;  /* 中央揃え　下を空ける */
  }
}