/* メインビジュアル

====================================================*/
#mainVisual{
    padding-top:80px;
}
#mainVisual,
#subVisual {
    position: relative;
}

#header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
/*     margin: 28px 41px 0; */
    padding: 15px 30px;
    background-color: #fff;
    box-shadow: 0px 4px 10px 0px #00244B1A;
/*     border-radius: 6px; */
    z-index: 5;
}

#header .nav-wrap {
    display: flex;
    align-items: center;
}

#header .nav {
    display: flex;
}

#header ul.nav li {
    margin-right: 24px;
}


#header .nav a {
    color: var(--black);
}


.btn-wrap {
    display: flex;
    align-items: center;
    /* position: absolute;
    right: 0;
    top: 0; */
}

#logo {
    display: flex;
    align-items: center;
}

@media screen and (max-width:1366px) {
    #mainVisual{
    padding-top:119px;
}
    #header {
        flex-direction: column;
    }

    #logo {
        margin-bottom: 24px;
    }

    #header .nav {
        width: 100%;
        justify-content: space-between;
    }


    #header ul.nav li:last-child {
        margin-right: 0;
    }

    .btn-wrap {
        position: absolute;
        right: 30px;
        top: 15px;
    }


}
@media screen and (max-width:786px) {
    #mainVisual{
    padding-top:52px;
}
}


.header-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 50px;
    width: 175px;
    border-radius: 100px;
}

/* お問い合わせボタン */
.btn-info {
    background-color: var(--orange);
    color: #fff;
    padding: 0 16px;
    margin-right: 24px;
}

/* 経営者専用窓口ボタン */
.btn-manager {
    border: 4px solid var(--orange);
    color: var(--orange);
    padding: 0 8px;
}


body.no-scroll {
    overflow: hidden;
}

.sp_nav-wrap {
    display: none;
}

@media screen and (max-width:786px) {
    .sp_nav-wrap.open {
        display: block;
    }

    .sp_nav-wrap {
        background-color: #00244B;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100vh;
        z-index: 2;
        padding-top: calc(8px + 52px + 40px);
        overflow: scroll;
    }

    .sp_nav-ttl {
        padding: 0 32px;
        margin-bottom: 40px;
    }

    .sp_nav-ttl-lg {
        color: #FFF;
        font-size: 36px;
        font-weight: 600;
        line-height: 120%;
        margin-bottom: 8px;
    }

    .sp_nav-ttl-sm {
        color: #FFF;
        font-size: 16px;
        font-weight: 600;
        line-height: 120%;
    }

    .sp_nav-wrap li {
        border-top: 2px solid #FFF;
    }

    .sp_nav-wrap li:last-child {
        border-bottom: 2px solid #FFF;
    }

    .sp_nav-wrap li a {
        color: #FFF;
        padding: 16px 32px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .sp_nav-wrap .nav_name {
        display: flex;
        align-items: center;
    }

    .nav-en {
        font-size: 24px;
        font-weight: 600;
        line-height: 120%;
        margin-right: 16px;
    }

    .nav-ja {
        font-size: 12px;
        font-weight: 600;
        line-height: 120%;
    }
}

#navbutton {
    display: none;
}

@media screen and (max-width:786px) {
    #header {
        padding: 0 8px;
        flex-direction: row;
    }

    #logo {
        margin-bottom: 0;
    }

    #header .nav-wrap {
        display: none;
    }

    /* ---  ナビボタン  --- */
    #navbutton {
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        height: 52px;
    }

    #navbutton i {
        font-size: calc(52px - 16px);
        transform: scale(1, -1);
    }

    #navbutton.active i.fa-align-left {
        display: none;
    }

    #navbutton i.fa-xmark {
        display: none;
    }

    #navbutton.active i.fa-xmark {
        display: block;
    }
}


/* 共通 : 一覧ページのタイトル

====================================================*/
.subVisual-wrap {
    position: relative;
}

body.page .subVisual-wrap {
    background-color: #F2F5F7;
}

body.page:has(#concept) .subVisual-wrap,
body.page:has(#recruit) .subVisual-wrap {
    background-color: #fff;
}

#subVisual {
    background: url(/wp2/wp-content/themes/soluna/assets/img/subVisual.png) no-repeat;
    background-size: cover;
    background-position: center;
    height: 360px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    padding-bottom: 66px;
    /* margin-top: 8px; */
}

.subVisual_ttl {
    max-width: 1166px;
    width: 100%;
    margin: 0 auto;
}

.subVisual_ttl-sm {
    color: var(--Gray-900, #111827);
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 166%;
}

.subVisual_ttl-lg {
    color: var(--Gray-900, #111827);
    font-size: 75px;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
}

@media screen and (max-width:1165px) {
    .subVisual_ttl {
        padding: 0 41px;
    }
}

@media screen and (max-width:786px) {

    #subVisual {
        order: 2;
        background: none;
        height: auto;
        margin-top: calc(40px - 16px);
    }

    body.page .subVisual-wrap {
        background-color: #fff;
    }

    body.single #subVisual {
        padding-bottom: 40px;
    }

    body.page #subVisual {
        padding-bottom: 64px;
        margin-top: calc(40px - 16px);
    }

    /*  page : 固定 : お問い合わせ
        page : 固定 : 経営者専用お問い合わせ窓口 */
    body.page:has(main#contact) .subVisual-wrap,
    body.page:has(main#inquiry) .subVisual-wrap {
        background-color: #F2F5F7;
        text-align: center;
    }

    body.page:has(main#contact) .form_ttl,
    body.page:has(main#inquiry) .form_ttl {
        display: none;
    }


    /*  single : 投稿 : ソリューション */
    body.single:has(main#solutions) .subVisual-wrap,
    body.single:has(main#solutions) .section {
        background: #fff !important;
    }

    body.single:has(main#solutions) #subVisual {
        margin-top: calc(40px - 16px);
    }



    /* body.category #subVisual {
        margin-bottom: 64px;
    } */

    body.category-solutions #subVisual {
        margin-bottom: 0;
    }

    /* body.category-solutions #subVisual,
    body.category-concept #subVisual,
    body.category-ne #subVisual,
    body.category-solutions #subVisual {
        margin-bottom: 0;
    } */

    .subVisual_ttl {
        padding: 0 16px;
    }

    .subVisual_ttl-lg {
        font-size: 36px;
        font-weight: 600;
        line-height: 120%;
    }

    .subVisual_ttl-sm {
        font-size: 16px;
    }

    #single .subVisual_ttl {
        text-align: center;
    }
}

/* 共通 : パンくずリスト

====================================================*/
.breadcrumbs {
    max-width: 1166px;
    width: 100%;
    margin: 0 auto;
    padding: 16px 0 0;
    display: flex;
}

body.page .breadcrumbs,
body.single .breadcrumbs {
    padding-bottom: 16px;
}

.breadcrumbs li,
.breadcrumbs a {
    margin-right: 4px;
}

.breadcrumbs li br {
    content: " ";
    margin-left: 1em;
}

.breadcrumbs li::after {
    content: ">";
}

.breadcrumbs li:last-child {
    margin-right: 0;
}

.breadcrumbs li:last-child::after {
    content: "";
}

.breadcrumbs li,
.breadcrumbs a {
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    color: #999DA0;
}

/* 投稿詳細ページにのみ、タグ名のリンクを非表示 */
#single .breadcrumbs li:has(.tax) {
    display: none;
}

@media screen and (max-width:1165px) {
    .breadcrumbs {
        padding: 16px 41px;
    }
}


@media screen and (max-width: 786px) {
    .subVisual-wrap {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
    }

    .breadcrumbs {
        order: 1;
        margin-top: 60px;
        padding: 16px 16px 0;
        flex-wrap: wrap;
    }

    /* ---  single-◯◯.phpのみ  --- */
    #single .breadcrumbs li:last-child,
    body.single .breadcrumbs li:last-child {
        width: 100%;
    }


}



/* 基本構造

====================================================*/
/* 枠組み */
.section {
    /* padding: 96px 16px; */
    padding: 144px 41px 112px;
}

#recruit.section {
    padding-top: calc(144px - 16px);
    background: #fff;
    padding-bottom: 0;
}
#recruit .wp_content{
    padding-bottom: 80px;
}
/* パンくずリストの差分 */
/* .breadcrumbs+.section {
    padding-top: calc(144px - 32px);
} */

#main-postCard.section {
    padding-top: 32px;
    padding-bottom: 40px;
}

.section-wrap {
    max-width: 1166px;
    width: 100%;
    margin: 0 auto;
}

@media screen and (max-width:786px) {
    .section {
        padding: 40px 16px !important;
    }

    /* .section {
        padding: 64px 16px;
    } */

    .section.sp-p-0 {
        padding: 0;
    }

    body.privacy-policy .section {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
}


/* 投稿詳細ページのみ */
body.single .section-wrap {
    max-width: 969px;
}

/* 枠タイトル */
.section_ttl-wrap {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 32px;
}

#section-media .section_ttl-wrap {
    margin-bottom: 64px;
}

.section_ttl-desc {
    color: var(--black);
    font-size: 21px;
    font-style: normal;
    font-weight: 600;
    line-height: 33.333px;
}

.section_ttl-key {
    font-size: 65px;
    font-style: normal;
    font-weight: 600;
    line-height: 65px;
}

.section_ttl-wrap .link-more {
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
    border-bottom: 4px solid;
    border-image: linear-gradient(to right, #0070E6, #113BB9, #6852E1) 1;
    display: flex;
    align-items: center;
}

.section_ttl-wrap .link-more img {
    margin-left: 11px;
}

.section_ttl-sub {
    color: #114782;
    text-align: center;
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: 37.3px;
    margin-bottom: 32px;
}

.section-txt {
    font-size: 23px;
    font-style: normal;
    font-weight: 300;
    line-height: 37.3px;
    margin-bottom: 32px;
}

@media screen and (max-width:786px) {

    .section_ttl-wrap {
        margin-bottom: 24px;
    }

    .section_ttl-desc {
        font-size: 16px;
        font-style: normal;
        font-weight: 300;
        line-height: 120%;
    }

    .section_ttl-key {
        color: #000;
        font-size: 36px;
        font-style: normal;
        font-weight: 600;
        line-height: 120%;
    }

    .section_ttl-wrap .link-more {
        color: #000;
        font-size: 16px;
        font-weight: 300;
        line-height: 200%;
        padding-right: 1px;
    }

    .section_ttl-wrap .link-more img {
        width: 16px;
        height: 16px;
    }

    .section_ttl-sub {
        font-size: 24px;
        font-weight: 300;
    }


}




/* ---  section : 背景  --- */
.section-bg {
    background-color: #F2F5F7;
}

/* ---  footer : 枠組み  --- */
#footer {
    padding: 64px 16px 16px;
    background: #00244B;
}

#footer,
#footer a {
    color: var(--Gray-300, #D1D5DB);
}

.footer-logo {
    text-align: center;
}

#footer .footer_menu-wrap {
    margin: 64px auto;
    display: flex;
    justify-content: space-between;
    max-width: 747px;
    width: 100%;
}

@media screen and (max-width:786px) {
    #footer .footer_menu-wrap {
        flex-wrap: wrap;
    }

    .footer_menu {
        width: 50%;
    }

    .footer_menu:nth-child(1),
    .footer_menu:nth-child(2) {
        margin-bottom: 64px;
    }
}


.footer_menu-ttl {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 110%;
    margin-bottom: 16px;
    text-align: center;
}

#footer .footer_menu li {
    margin-bottom: 16px;
    text-align: center;
}

#footer .footer_menu li:last-child {
    margin-bottom: 0;
}

#footer .footer_menu li a {
    font-size: 11px;
    font-weight: 600;
    line-height: 160%;
}

@media screen and (max-width:786px) {
    .footer_menu-ttl {
        font-size: 24px;
        line-height: 17.6px;
    }

    #footer .footer_menu li a {
        font-size: 16px;
        font-weight: 600;
        line-height: 130%;
    }
}



/* ---  footer : コピーライト  --- */
#footer small {
    color: var(--Gray-300, #D1D5DB);
    text-align: center;
    display: block;
    width: 100%;
    font-size: 17px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%;
}

@media screen and (max-width:786px) {
    #footer small {}
}





/*  共通 : 固定ページ
    会社概要
====================================================*/
.pageCard {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding: 56px 88px;
    border-radius: 20px;
    background-color: #fff;
}

#recruit>.section {
    padding: 0;
}

#recruit .pageCard {
    max-width: inherit;
    border-radius: 0;
    padding-top: 144px;
}

@media screen and (max-width:786px) {
    .pageCard {
        padding: 64px 16px 96px;
    }

    body.page .pageCard {
        border-radius: 0;
        padding-top: 0;
    }
}


/*  共通 : タグ
    WORKS、
====================================================*/
.tag {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.tag li {
    margin-right: 8px;
    margin-top: 8px;
    background-color: #DBEAFE;
    color: #111827;
    padding: 2px 14px;
    font-size: 11px;
    font-weight: 400;
    line-height: 19.2px;
    border-radius: 50px;
}

.tag li:last-child {
    margin-right: 0;
}





/*  共通 : 投稿カードのスライド

====================================================*/

/* ---  外枠  --- */

.swiper-area {
    position: relative;
    max-width: calc(1166px + 122px);
    margin: 0 auto 64px;
    /* padding: 0 41px !important; */
}

.swiper-area .swiper {
    margin: 0 auto;
    width: 100%;
    max-width: 1166px;
}

.swiper-area .postCard {
    margin-bottom: 0;
    height: auto !important;
    /* overflow: visible; */
    /* padding: 0 41px; */
}

/* 投稿詳細のみ（主にソリューション） */
.single .swiper-area .swiper .swiper-wrapper {
    max-width: 969px;
    margin: 0 auto;
}

.single .swiper-area .swiper {
    max-width: 1080px;
}

@media screen and (max-width:786px) {
    .single .swiper-area .swiper .swiper-wrapper {
        flex-direction: column;
    }

    .swiper-area {
        margin-bottom: 40px;
    }
}


/* ---  ボタン  --- */
.swiper-area .swiper-button-prev,
.swiper-area .swiper-button-next {
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    margin: auto;

    width: 70px !important;
    height: 70px !important;
    border-radius: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(to right, #0070e6, #113bb9, #6852e1);
}

.swiper-area .swiper-button-prev::before,
.swiper-area .swiper-button-next::before {
    content: "";
    background-color: #fff;
    width: 62px;
    height: 62px;
    border-radius: 62px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.swiper-area .swiper-button-prev::after,
.swiper-area .swiper-rtl .swiper-button-next::after,
.swiper-button-next::after,
.swiper-area .swiper-rtl .swiper-button-prev::after {
    z-index: 1;
    color: #1E3A8A;
    font-weight: 600;
}

.swiper-area .swiper-button-next.swiper-button-disabled,
.swiper-area .swiper-button-prev.swiper-button-disabled {
    display: none;
}

.slideNone .swiper-button-next,
.slideNone .swiper-button-prev {
    display: none;
}


@media screen and (max-width:786px) {

    .single-swiper .swiper-button-prev,
    .single-swiper .swiper-button-next {
        display: none;
    }
}

.swiper-wrapper:has(.section-wrap)+.swiper-controller .swiper-button-prev,
.swiper-wrapper:has(.section-wrap)+.swiper-controller .swiper-button-next {
    display: none;
}




/*  共通 : 投稿カード（大）
    top,
    NEWS、WEBINAR、DL CONTENTS 
====================================================*/
.postCard-lg-wrap,
.single-swiper {
    /* max-width: calc(1166px + 82px); */
    padding: 0 41px;
}

.postCard-lg-wrap .postCard-lg,
.single-swiper .slide {
    display: flex;
    /* margin: 0 calc(41px - 16px); */
    /* box-shadow: 0px 0px 19px 0px #E8E8E8; */
    border-radius: 24px;
    background-color: #fff;
    margin: 0 auto;
    /* max-width: 1166px; */
    width: 100%;
    justify-content: center;
    /* align-items: center; */
    /* position: relative; */
}

.postCard-lg .postCard-content {
    padding: 0;
}

@media screen and (max-width:786px) {
    .postCard-lg-wrap {
        margin-bottom: 24px;
        padding: 0;
    }

    .postCard-lg-wrap:last-child {
        margin-bottom: 0;
    }
}


/* ---  postCard-lg : アイキャッチ  --- */
.postCard-lg .postCard-featured,
.postCard-lg .postCard-content-wrap {
    width: 50%;
    overflow: hidden;
}


.postCard-lg .postCard-featured {
    /* position: absolute; */
    border-radius: 24px 0px 0px 24px;
    /* height: 380px; */
    /* background-color: #fff; */
}

.postCard-lg .postCard-featured img {
    /* position: absolute; */
    /* top: 50%; */
    left: 50%;
    /* transform: translate(-50%, -50%); */
    object-fit: contain;
}

@media screen and (max-width:786px) {
    .postCard-lg .postCard-featured {
        width: 100%;
        border-radius: 20px 20px 0px 0px;
        box-shadow: none;
        height: 238px;
        overflow: hidden;
    }

    .postCard-lg .postCard-featured img {
        height: 100%;
        width: auto;
        max-width: inherit;
    }
}



/* ---  postCard-lg : コンテンツ  --- */
.postCard-lg .postCard-content-wrap {
    padding: 68px;
    border-radius: 0px 24px 24px 0px;
    /* background: #FFF; */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0px 0px 19px 0px #E8E8E8;
    position: relative;
}

.postCard-lg .postCard-content {
    display: flex;
    align-items: baseline;
}

@media screen and (max-width:786px) {
    .postCard-lg .postCard-content-wrap {
        width: 100%;
        border-radius: 0px 0px 20px 20px;
        box-shadow: none;
        padding: 16px 28px;
    }

    .postCard-lg .postCard-content-wrap .postCard-content {
        padding: 0;
        flex-direction: column;
    }
}

/* ---  postCard-lg : カテゴリ  --- */
.postCard-lg .postCard-content .category {
    background: var(--blue-900);
    color: #fff;
    font-size: 11px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0em;
    width: 94px;
    padding: 3px 0;
    border-radius: 3px;
    text-align: center;
}

/* ---  postCard-lg : 日付part1（m/d） --- */
.postCard-lg .postCard-content .date-wrap {
    margin-right: 40px;
}

.postCard-lg .date-wrap .update {
    font-family: 'Roboto';
    font-size: 32px;
    font-weight: 400;
    line-height: 56px;
    letter-spacing: 0em;
    height: 84px;
    width: 84px;
    position: relative;
}

.postCard-lg .date-wrap .update .month {
    align-items: baseline;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
}

.postCard-lg .date-wrap .update .month::after {
    background-color: var(--black);
    content: "";
    height: 1px;
    width: 78px;
    transform: rotate(-45deg);
    margin-left: -29px;
}

.postCard-lg .date-wrap .update .day {
    position: absolute;
    bottom: 0;
    right: 0;
}

.postCard-lg .date-wrap .week {
    border: 1px solid #000;
    text-align: center;
}

@media screen and (max-width:786px) {
    .postCard-lg .postCard-content .date-wrap {
        display: none;
    }
}


/* ---  postCard-lg : 日付part2  --- */
.postCard-lg .postCard_ttl-wrap .update {
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    padding-bottom: 11px;
    margin-bottom: 11px;
    border-bottom: 1px solid #E0E0E0;
}

.postCard-lg .postCard_ttl {
    font-size: 23px;
    font-style: normal;
    font-weight: 600;
    line-height: 37.333px;
}

.postCard-lg .tag li {
    margin-right: 16px;
}

/* category-dl.php以外に対して　.category　非表示 */
body:not(.category-dl) .postCard-lg .postCard_ttl-wrap .update .category {
    display: none;
}

/* index.phpに対して　.category　表示 */
#section-dl .postCard-lg .postCard_ttl-wrap .update .category {
    display: block;
}

.postCard-lg .postCard_ttl-wrap .postCard-cat {
    display: none;
}

.swiper-wrapper {
    padding-bottom: 8px;
}

@media screen and (max-width:786px) {
    #section-webinar {
        padding-top: 40px;
    }

    .postCard-lg .postCard_ttl-wrap {
        width: 100%;
    }

    .postCard-lg .postCard_ttl-wrap .update {
        display: flex;
        justify-content: space-between;
    }

    .postCard-lg .postCard_ttl-wrap .update .category {
        display: block;
    }

    .postCard-lg-wrap .postCard-lg,
    .single-swiper .slide {
        flex-direction: column;
    }

    #section-webinar .single-swiper .postCard-lg-wrap:not(:first-child) {
        display: none;
    }

    .postCard-lg .postCard_ttl-wrap .postCard-cat {
        display: flex;
    }

    .postCard-lg .postCard_ttl {
        font-size: 18px;
        font-style: normal;
        font-weight: 600;
        line-height: 150%;
        margin-bottom: 22px;
    }

    /* ---  index : NEWS  --- */
    #section-news.section-bg {
        background-color: rgba(0, 0, 0, 0);
        margin-top: -70px;
    }

    #section-news .swiper {
        overflow: inherit !important;
    }

    #section-news .swiper-wrapper {
        display: flex;
        width: auto;
        padding: 24px 16px;
        flex-direction: column;
        align-items: center;
        border-radius: 10px;
        background: #FFF;
        box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.16);
    }

    #section-news .single-swiper .slide {
        box-shadow: none;
        border-radius: 0;
    }

    #section-news .single-swiper .swiper-slide {
        margin-bottom: 24px;
        border-bottom: 2px solid #818181;
        padding: 0 16px;
    }

    #section-news .single-swiper .swiper-slide:last-child {
        margin-bottom: 0;
        border-bottom: 0;
    }

    #section-news .postCard-featured {
        display: none;
    }

    #section-news .postCard-content-wrap {
        width: 100%;
        padding: 0;
        border-radius: 0;
        box-shadow: none;
    }

    #section-news .postCard-content {
        padding: 0;
    }

    #section-news .single-swiper .date-wrap,
    #section-news .single-swiper .tag {
        display: none;
    }

    #section-news .single-swiper .update {
        font-size: 12px;
        font-weight: 400;
        line-height: 120%;
        margin-bottom: 24px;
        border: none;
        color: #818181;
    }

    #section-news .postCard_ttl {
        color: #000;
        font-size: 16px;
        font-weight: 400;
        line-height: 120%;
        margin-bottom: 24px;
    }

    #section-news .swiper-controller {
        display: none !important;
    }
}







/*  共通 : ページネーション

====================================================*/
.pagination {
    text-align: center;
    padding: 0 61px;
}

.pagination ul {
    display: flex;
    margin: calc(80px - 24px) auto 0;
    justify-content: center;
    align-items: center;
}

.pagination ul li {
    display: flex;
    align-items: center;
    margin-right: 40px;
}

.pagination ul li:last-child {
    margin-right: 0;
}

.pagination ul li span.current,
.pagination ul li a {
    display: block;
    padding: 16px;
    font-size: 16px;
    font-weight: 400;
    line-height: 100%;
}

.pagination ul li span.current {
    border: 2px solid var(--Gray-950, #030712);
    color: var(--black);
}

.pagination ul li a.next,
.pagination ul li a.prev {
    background-color: #1E3A8A;
    width: 44px;
    height: 44px;
    color: #fff;
}

.screen-reader-text {
    display: none;
}

@media screen and (max-width:786px) {
    .pagination {
        text-align: center;
        padding: 0 61px;
    }

    .pagination ul {
        margin: calc(80px - 24px) auto 0;
        /* justify-content: space-between; */
        align-items: center;
    }

    .pagination ul li {
        display: flex;
        align-items: center;
        margin-right: 16px;
    }

    .pagination ul li span.current,
    .pagination ul li a {
        display: block;
        padding: 16px;
        font-size: 16px;
        font-weight: 400;
        line-height: 100%;
    }

    .pagination ul li span.current {
        border: 2px solid var(--Gray-950, #030712);
        color: var(--black);
    }

    .pagination ul li a.next,
    .pagination ul li a.prev {
        background-color: #1E3A8A;
        width: 44px;
        height: 44px;
        color: #fff;
    }
}






/*  共通 : 投稿カード（小）（リスト）
    WORKS、
====================================================*/
.postCard-list {
    display: flex;
    flex-wrap: wrap;
}

.postCard {
    width: calc(33.333% - 24px) !important;
    margin-right: 12px;
    margin-left: 12px;
    margin-bottom: 24px;
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.08);
    border-radius: 20px;
    overflow: hidden;
    background-color: #fff;
    height: auto !important;
}

.postCard-list .postCard:nth-of-type(3n) {
    margin-right: 0;
}

.postCard>a {
    display: block;
    position: relative;
}

.postCard-featured {
    /* height: 236px; */
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #00244B;
}
.postCard-featured{
    min-height: 200px; 
    background:url(../img/logo_header.png);
    background-repeat:no-repeat;
    background-position:center;
}
.article-works .postCard-featured {
    overflow: hidden;
    background-color: #fff;
}


.postCard-featured img {
    width: 100%;
}


.postCard-content {
    padding: 8px 16px;
    padding: 16px;
    /*ランキング合わせ*/
}

.postCard-text {
    display: flex;
    justify-content: space-between;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid #F2F5F7;
}

.postCard-cat {
    display: flex;
    padding: 3px 14px;
    border-radius: 3px;
    background: #1F3A8B;
    justify-content: center;
    align-items: center;
    color: #FFF;
    font-size: 11px;
    font-style: normal;
    font-weight: 400;
    line-height: 17.6px;
    /* 160% */
}

.postCard-update {
    color: #818181;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 20.8px;
}

.postCard-update.sp_block {
    display: none;
}

.postCard-ttl {
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 27px;
    margin-bottom: 22px;
}

@media screen and (max-width:786px) {
    .postCard-update.sp_none {
        display: none;
    }

    .postCard-update.sp_block {
        display: block;
    }

    .postCard-list {
        flex-direction: column;
    }

    #section-drs .postCard-list,
    #section-its .postCard-list,
    #solutions .postCard-list {
        flex-direction: row;
        justify-content: space-between;
    }

    .postCard {
        width: 100% !important;
        margin: 0 0 24px !important;
    }

}



/*  共通 : いろんなタイトル
    
====================================================*/
.wp_content .wp-block-image {
    margin-top: 64px;
}

.wp_content .wp-block-image:first-child {
    margin-top: 0;
}

#recruit .wp_content h2,
.square_ttl {
    margin-bottom: 64px;
}

#recruit .wp_content h2,
.square_ttl-lg {
    font-size: 36px;
    line-height: 150%;
    display: flex;
    align-items: baseline;
}

#recruit .wp_content h2::before,
.square_ttl-lg::before {
    content: '';
    width: 20px;
    height: 20px;
    border-radius: 4px 4px 4px 0px;
    background: var(--Blue-500, #3B82F6);
    margin-right: 8px;
}

.square_ttl-sm {
    color: #000;
    font-size: 16px;
    line-height: 150%;
    margin-top: 16px;
}

.square_ttl-lg.square_none::before {
    content: none !important;
}

.square_ttl-lg:last-child {
    margin-bottom: 0;
}

.square_ttl-lg.square_none::before {
    content: none !important;
}

@media screen and (max-width:786px) {

    #recruit .wp_content h2,
    .square_ttl {
        margin-bottom: 40px;
    }

    #recruit .wp_content h2,
    .square_ttl-lg {
        font-size: 24px;
        line-height: 150%;
        margin-bottom: 24px;
    }

    .square_ttl-lg.square_none {
        font-size: 24px;
        font-weight: 600;
        line-height: 150%;
    }

}

#recruit .wp_content h3 {
    background: #1E3A8A;
    padding: 0 16px;
    color: #FFFFFF;
    border-radius: 3px;
    font-size: 24px;
    font-weight: 600;
    line-height: 38px;
    letter-spacing: 0em;
    text-align: left;
    margin: 64px 0 32px;
}

#recruit .wp_content p {
    font-size: 16px;
    line-height: 26px;
    text-align: left;
}


#recruit ul.list-minus li {
    font-family: Noto Sans CJK JP;
    font-size: 16px;
    font-weight: 700;
    line-height: 26px;
    text-align: left;
    margin-bottom: 16px;
    /* display: flex; */
}
@media screen and (max-width:786px) {
    #recruit .wp_content h3 {font-size: 18px;font-weight: 700;line-height: 38.4px;text-align: left;margin: 40px 0 24px;}
    #recruit ul.list-minus li::before {
    max-width: 13px;
    height: 2px;
}
}
#recruit .wp-block-column p:nth-child(1) {
    font-size: 17px;
    font-weight: 300;
    line-height: 22px;
    text-align: left;
    margin-bottom: 8px;
}

#recruit .wp-block-column p:nth-child(2) {
    font-size: 28px;
    font-weight: 600;
    line-height: 41.16px;
    text-align: left;
    margin-bottom: 8px;
}

#recruit .wp-block-column p:nth-child(3) {
    font-size: 16px;
    font-weight: 300;
    line-height: 30.24px;
    text-align: left;

    margin-bottom: 0;
}
#recruit .wp-block-columns .wp-block-image{
    margin-bottom: 0;
    padding-bottom:32px;
    position:relative;
}
#recruit .wp-block-columns .wp-block-image::after{
    border-left:2px dotted #BFDBFE;
    position:absolute;
    left:50%;
    display:block;
    content:'';
    width:1px;
    height:32px;
    transform: translateX(-50%);
}
#recruit .wp-container-core-columns-is-layout-3 .wp-block-image::after{
    display:none !important;
}
#recruit .wp-block-columns {
    margin-bottom: 0;
}
/*  共通 : いろんなリスト
    
====================================================*/
body.single .wp_content ol {
    margin-top: 24px;
}

body.single .wp_content ol:not(.mokuji-list) li {
    list-style-type: none;
    counter-increment: cnt;
    position: relative;
    padding-left: calc(20px + 16px);
    margin-bottom: 24px;
}

body.single .wp_content ol:not(.mokuji-list) li::before {
    /* content: "(" counter(cnt) ") "; */
    content: counter(cnt);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 26px;
    height: 26px;
    border-radius: 26px;
    /* background: linear-gradient(180deg, #113BB9 0%, #6852E1 100%); */
    background: var(--blue-gra, linear-gradient(90deg, #0070E6 -5.71%, #113BB9 47.14%, #6852E1 100%));
    color: #fff;
    font-size: 16px;
    position: absolute;
    left: 0;
}

body.single .wp_content ol:not(.mokuji-list) li strong {
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    margin-bottom: 16px;
    display: inline-block;
}

body.single .wp_content ol:not(.mokuji-list) li h3 {
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    margin-bottom: 16px;
}

body.single .wp_content ol:not(.mokuji-list) li p{
    font-size: 15px;
}



/*  wordpress 入力埋め込み : 共通

====================================================*/

#single .wp_content {
    margin-bottom: 64px;
}

/* ---  段落  --- */
.wp_content p {
    font-size: 18px;
    font-weight: 400;
    line-height: 170%;
    /* margin-bottom: 64px; */
    margin-bottom: 16px;
}

#single .wp_content p {
    margin-bottom: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 170%;
    margin-bottom: 18px;

}

/* #single-news .wp_content p {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    margin-bottom: 64px;
} */
/* #single .wp-block-heading+p {
    margin-bottom: 40px;
} */

@media screen and (max-width:786px) {
    #single .wp_content {
        margin-bottom: 32px;
    }

    .wp_content p {
        font-size: 16px;
        font-weight: 400;
        line-height: 26px;
    }


    /* #single-news .wp_content p {
        margin-bottom: 16px;
    } */
}



/*  投稿一覧 : 共通
    適応先 : category-〇〇.php    
====================================================*/

@media screen and (max-width:786px) {

    body.category-news .section-bg,
    body.category-works .section-bg,
    body.category-dl .section-bg,
    body.category-columns .section-bg {
        background-color: #fff;
        padding-top: 0;
    }

    body.category-news #main-postCard,
    body.category-works #main-postCard,
    body.category-dl #main-postCard,
    body.category-columns #main-postCard {
        padding-bottom: 24px;
        padding-top: 0;
    }
}


/*  投稿一覧 : 個別
    適応先 : category-columns.php
====================================================*/

.postCard .ranking-no {
    position: absolute;
    top: 0;
    left: 28px;
    padding: 10px;
    font-size: 16px;
    background-color: #fff;
}

.rank-1 {
    background: linear-gradient(131deg, #C8A958 -14.2%, #EFE1B7 48.58%, #C8A958 151%);
}

.rank-2 {
    background: linear-gradient(131deg, #B8BABC -14.2%, #FFF 37.01%, #B8BABC 151%);
}

.rank-3 {
    background: linear-gradient(131deg, #794C21 -14.2%, #C59F33 48.58%, #794C21 151%);
}





/*  投稿詳細 : 共通
    適応先 : single-〇〇.php
====================================================*/
/*.single_postCard {
    margin-top: 16px;
}*/

.single_postCard-header {
    background-color: #fff;
    padding: 64px 16px;
    margin-bottom: 24px;
}

.single_postCard-header .postCard-update {
    margin-bottom: 24px;
    color: #818181;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 20.8px;
}

.single_postCard-header .single_postCard-ttl {
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%;
}

@media screen and (max-width:786px) {
    .single_postCard-header {
        margin: 0 16px 16px;
        padding: 32px 8px;
        border-radius: 20px;
    }

    .single_postCard-header .postCard-update {
        font-size: 16px;
        font-weight: 400;
        line-height: 21px;
    }

    .single_postCard-header .single_postCard-ttl {
        font-size: 24px;
        font-weight: 600;
        line-height: 38px;
    }

}


.single_postCard-content {
    background-color: #fff;
    padding: 64px 16px 112px;
}

.single_postCard-content .section-wrap {
    max-width: 969px;
}


@media screen and (max-width:786px) {
    .single_postCard-content {
        margin: 0 16px 0;
        padding: 0 16px 32px;
        border-radius: 20px;
    }

    #solutions .single_postCard-content {
        margin: 0;
        padding: 0 0 32px;
        border-radius: 0;
    }

    #solutions .section:first-child {
        padding-top: 0;
    }
}

/* ---  投稿詳細 : アイキャッチ  --- */

.single_postCard-content .postCard-featured {
    margin-bottom: 24px;
    height: auto;
}

@media screen and (max-width:786px) {
    .single_postCard-content .postCard-featured {
        margin: 0 -16px 16px;
        border-radius: 20px 20px 0 0;
        background: none;
        overflow: hidden;
    }
}

/* ---  投稿詳細 : タグ  --- */

.single_postCard-content .tag {
    margin-bottom: 24px;
}


/* ---  投稿詳細 : タイトル  --- */
#single .wp_content h2.wp-block-heading,
#single .wp_content h2 {
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 38.4px;
    border-left: 4px solid var(--blue-900);
    padding-left: 16px;
    margin-top: 64px;
    margin-bottom: 40px;
}

#single .wp_content h3,
#single .wp_content h3.wp-block-heading {
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: 26px;
    display: flex;
    align-items: center;
    margin-top: 40px;
    margin-bottom: 40px;
}

#single .wp_content h3.wp-block-heading::before {
    content: '';
    width: 24px;
    height: 4px;
    background-color: var(--blue-900);
    margin-right: 8px;
}


/* ---  投稿詳細 : リスト  --- */
#single .wp_content ul {
    list-style: disc inside;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
}


/* ---  投稿詳細 : 埋め込みフォーム  --- */
section+.section-form,
body.single .section-form {
    padding-top: 112px;
    padding-bottom: 112px;
}

body.page .section-form {
    padding-bottom: 112px;
}
#recruit .section-form{
    margin: 0 -41px;
    background: #F2F5F7;
}

@media screen and (max-width:786px) {
#recruit .section-form{
    margin: 0 -16px;
}

    section+.section-form,
    body.single .section-form {
        padding-top: 24px;
        padding-bottom: 96px;
    }

    body.page .section-form {
        padding-bottom: 96px;
    }
}



/* ---  投稿詳細 : 導入実績のみ  --- */

.section-works-wrap .postCard-featured {
    background-color: #DBEAFE;
    max-width: 400px;
	width:100%;
    margin-bottom: 0 !important;
}

.section-works-wrap {
    display: flex;
	gap:16px;
    justify-content: space-between;
    margin-bottom: 80px;
}

.section-works-wrap .postCard-featured img {
    max-width: 400px;
	width:100%;
}

.section-works-wrap .single_postCard-ttl-wrap {
    max-width: 560px;
}

.section-works-wrap .single_postCard-ttl {
    padding-bottom: 24px;
    border-bottom: 1px solid #DBE1EA;
    margin-bottom: 24px;
}

@media screen and (max-width:786px) {
    .section-works-wrap .postCard-featured {
        margin-bottom: 16px !important;
		width: calc(100% + 16px * 2);
        max-width: calc(100% + 16px * 2);
    }

    .section-works-wrap {
        display: flex;
        flex-direction: column;
        margin-bottom: 32px;
    }

    .section-works-wrap .postCard-featured img {
        max-width: 400px;
    }

    .section-works-wrap .single_postCard-ttl-wrap {
        max-width: 560px;
    }

    .section-works-wrap .single_postCard-ttl {
        padding-bottom: 24px;
        border-bottom: 1px solid #DBE1EA;
        margin-bottom: 24px;
    }
}

.single_postCard-works {
    display: flex;
    margin-bottom: 16px;
}

.single_postCard-works .industry,
.single_postCard-works .area,
.single_postCard-works .employees {
    margin-right: 16px;
    margin-bottom: 0 !important;
    border: none;
    padding-top: 0;
}

.single_postCard-works .service {
    margin-bottom: 0 !important;
}

.single_postCard-works .industry .ttl,
.single_postCard-works .area .ttl,
.single_postCard-works .employees .ttl,
.single_postCard-works .service .ttl {
    width: 100%;
    display: flex;
    padding: 4px 16px;
    justify-content: center;
    align-items: center;
    background-color: var(--blue-900);
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    margin-right: 0;
    white-space: nowrap;
}

.single_postCard-works .industry .input,
.single_postCard-works .area .input,
.single_postCard-works .employees .input,
.single_postCard-works .service .input {
    width: 100%;
    display: flex;
    padding: 4px 16px;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
}


@media screen and (max-width:786px) {
    .single_postCard-works {
        flex-direction: column;
    }

    .single_postCard-works .industry,
    .single_postCard-works .area {
        margin-right: 0;
        margin-bottom: 16px !important;
    }

    .single_postCard-works .employees {
        margin-right: 0;
    }

    .single_postCard-works .industry .ttl,
    .single_postCard-works .area .ttl,
    .single_postCard-works .employees .ttl,
    .single_postCard-works .service .ttl {
        min-width: 130px;
        width: auto;
    }

    .single_postCard-works .industry .input,
    .single_postCard-works .area .input,
    .single_postCard-works .employees .input,
    .single_postCard-works .service .input {
        justify-content: flex-start;
    }
}





/*  投稿詳細 : 個別
    適応先 : single-dl.php
====================================================*/
/* ---  投稿詳細  --- */
.single-dl {
    padding-bottom: 112px;
}

.dl_contetn-wrap {
    display: flex;
    justify-content: center;
    background-color: #fff;
    padding: 64px 16px 112px;
}

@media screen and (max-width:786px) {

    .dl_contetn-wrap {
        flex-direction: column;
        padding: 0 16px;
        background-color: #F2F5F7;
    }
}



/* ---  投稿詳細  --- */
.dl_contetn-wrap .dl_contetn {
    max-width: 800px;
    width: 100%;
    margin-right: 32px;
}

/* ---  フォーム  --- */
.dl_contetn-wrap .dl_form {
    max-width: 476px;
    width: 100%;
}

.dl_contetn-wrap .single_postCard-content {
    padding: 0;
}

.dl_contetn-wrap .form_ttl {
    color: var(--Gray-950, #030712);
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: 1.2px;
    margin-bottom: 0;
}

.dl_contetn-wrap .form_ttl::after {
    display: none;
}

.dl_contetn-wrap .dl_form .formCard {
    padding: 32px;
    border-radius: 5px;
    box-shadow: 0px 0px 20px 0px rgba(3, 51, 86, 0.10);
}

.dl_contetn-wrap .dl_form .form-btn-group [class*=btn-] {
    width: 100%;
}

.dl_form .field,
.dl_form .field-checkbox {
    margin-bottom: 16px;
}

.dl_form .form-btn-group {
    margin-bottom: 0;
}

.dl_form .field .label,
.dl_form .field-checkbox .label {
    margin-bottom: 8px;
}

.dl_form .input input {
    border: 2px solid var(--Gray-200, #E5E7EB);
}

.dl_form .field-checkbox .wpcf7-list-item {
    margin-left: 0;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 150%;
    margin: 0 0 8px !important;
}

.dl_form .field-checkbox .wpcf7-list-item label {
    display: flex;
    align-items: center;
}

.dl_form .field-checkbox .wpcf7-not-valid-tip {
    margin: 8px 0;
}

@media screen and (max-width:786px) {

    .dl_contetn-wrap .dl_form .form-btn-group [class*=btn-] {
        padding: 16px;
        width: 264px;
    }

    .dl_contetn-wrap .dl_form {
        max-width: inherit;
        width: 100%;
    }

    .dl_contetn-wrap .single_postCard-content {
        padding: 0 16px 32px;
        margin: 0 0 32px;
    }

    .dl_contetn-wrap .dl_form .formCard {
         box-shadow: none;
        /* background: none; */
        /* padding: 0; */
        /* width: calc(100% + 32px);
        margin: 0 -16px;*/
        margin: 0;

    padding: 24px;
        width: 100%;
    }

    .dl_contetn-wrap .dl_form .formCard .wpcf7 {
        background-color: #fff;
        padding: 32px 16px;
    }
}





/*  共通 : シェアリンク
    
====================================================*/
.share-wrap {
    margin-top: 64px;
}

/* ---  投稿詳細  --- */
.share-wrap .share-ttl {
    color: var(--Gray-950, #030712);
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin-bottom: 16px;
}

.share-btn-wrap {
    display: flex;
    justify-content: center;
}

.share-btn-wrap .share-btn {
    display: flex;
    width: 91px;
    height: 20px;
    justify-content: center;
    align-items: center;
    border-radius: 6px;
    border: 1px solid #1F3A8B;
    margin-right: 16px;
}

.share-btn-wrap .share-btn:last-child {
    margin-right: 0;
}

.share-btn-wrap .share-btn i {
    font-size: 18px;
}



/*  共通 : table
    
====================================================*/



table th,
table td {
    border: none !important;
    border-bottom: 2px solid #F3F4F6 !important;
    padding: 24px 8px !important;
}

table th {
    white-space: nowrap;
    vertical-align: baseline;
bont
    text-align: left;
    /*border-bottom: 3px solid #3B82F6 !important;*/
}

table th br {
    display: none;
}
/*
table tr:last-child th,
table tr:last-child td {
    border-bottom: none !important;
}*/

@media screen and (max-width:786px) {

    table th,
    table td {
        font-size: 16px;
       /* font-weight: 300;*/
        line-height: 150%;
    }

    table th br {
        display: block;
    }

    table th br {
        display: block;
    }
} 

/* tr部分 */
#company .columns-table {
    margin-bottom: 0 !important;
    align-items: center !important;
    gap: 0;
}

/* th,td部分 */
#company .columns-table>.wp-block-column {
    border: none !important;
    border-bottom: 3px solid var(--Gray-100, #F3F4F6) !important;
    padding: 24px 8px !important;
    background: none !important;
    flex-basis: inherit !important;
}

#company .columns-table>.wp-block-column>p {
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 29px;
    letter-spacing: 0em;
    text-align: left;
}

/* th部分 */
#company .columns-table>.wp-block-column:first-child {
   /*  white-space: nowrap; */
    text-align: left;
    border-bottom: 3px solid #3B82F6 !important;
    width: 30%;
}

#company .columns-table>.wp-block-column:first-child>p {
    font-weight: bold;
}

/* td部分 */
#company .columns-table>.wp-block-column:last-child {
    text-align: left;
    width: 70%;
}

#company .columns-table>.wp-block-column:last-child>p {
    margin-bottom: 24px !important;
}

#company .columns-table>.wp-block-column:last-child>p:first-child {
    margin-bottom: 0 !important;
}

#company .columns-table>.wp-block-column:last-child .wp-block-column>.wp-block-column {
    font-size: 16px;
    font-weight: 400;
    line-height: 29px;
    letter-spacing: 0em;
    text-align: left;
}

#company .columns-table .inner-columns-table {
    margin-bottom: 24px !important;
}

#company .columns-table .inner-columns-table p {
    font-size: 16px;
    font-weight: 400;
    line-height: 29px;
    letter-spacing: 0em;
    margin-bottom: 0;
}

#company .columns-table>.wp-block-column:last-child>p:not(:first-child)~.inner-columns-table {
    margin-top: -24px !important;
    gap: inherit !important;
}

#company .columns-table .wp-block-image {
    margin: 0 !important;
}

#company iframe {
    margin-top: 12px;
}

#company .columns-table:nth-child(4)>.wp-block-column:last-child>p:first-child {
    margin-bottom: 24px !important;
}

@media screen and (max-width:786px) {

    #company .inner-columns-table .wp-block-column {
        flex-basis: auto !important;
    }
}

@media screen and (max-width:414px) {
    #company .inner-columns-table {
        align-items: self-start !important;
        flex-direction: column;
        flex-basis: 100% !important;
    }
}


/*  form
    お問い合わせ、各ページ埋め込み
====================================================*/

/* ---  form : ページタイトル  --- */
.form_ttl {
    color: var(--Gray-950, #030712);
    text-align: center;
    font-size: 44px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    display: flex;
    flex-direction: column;
    margin-bottom: 80px;
}

.form_ttl::after {
    content: "";
    border: 6px solid #1E3A8A;
    width: 99px;
    margin: 27px auto 0;
}

@media screen and (max-width:786px) {
    .form_ttl {
        margin-bottom: 64px;
    }

    .form_ttl::after {
        display: none;
    }
}




/* ---  form : 枠  --- */
.formCard,
.formCard_box-wrap {
    max-width: 820px;
    width: 100%;
    margin: 0 auto 32px;
}

.formCard {
    padding: 32px 80px;
    border-radius: 20px;
    background-color: #fff;
    font-size: 18px;
    font-style: normal;
    line-height: 150%;
}

@media screen and (max-width:786px) {
    .formCard {
        width: calc(100% - 24px);
        padding: 16px;
    }

}

/* 枠 / 経営者専用お問い合わせ窓口のみ */
.formCard_box-wrap {
    display: flex;
    justify-content: space-between;
}

.formCard_box {
    width: 262px;
}

.formCard_box-img {
    width: 262px;
    height: 262px;
    background-color: #fff;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.formCard_box-ttl {

    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin: 16px 0 8px;
}

.formCard_box-text {
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 150%;
}

@media screen and (max-width:786px) {
    .formCard_box-wrap {
        flex-direction: column;
        align-items: center;
    }

    .formCard_box {
        margin-bottom: 17px;
    }

}



/* 枠 / 問い合わせ */
.formCard.form-bg {
    background: #fff url(/wp2/wp-content/themes/soluna/assets/img/form-bg.png) no-repeat;
    background-position: right 7px center;
    background-size: 146px auto;
}


/* 枠 / 入力フォームのみ */
/* .input_area .formCard {
    padding: 64px 80px;
} */
.wpcf7 .formCard {
    padding: 64px 80px;
}

@media screen and (max-width:786px) {
    .wpcf7 .formCard {
        border-radius: 0;
        width: 100%;
        padding: 32px 16px;
    }
}


/* 枠 / 同意チェック */
.formCard.formCard-agreement {
    margin-top: calc(56px + 56px);
}

@media screen and (max-width:786px) {
    .formCard.formCard-agreement {
        margin-top: 0;
        width: calc(100% - 32px);
        border-radius: 20px;
    }
}


/* 枠 / 文字（大）※電話番号 */
.formCard .font-lg {
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}

@media screen and (max-width:786px) {
    .formCard .font-lg {
        font-size: 24px;
    }

    .business_hours {
        display: block;
    }
}

/* ---  form : field  --- */
.field,
.field-checkbox {
    margin-bottom: 64px;
}

@media screen and (max-width:786px) {

    .field,
    .field-checkbox {
        margin-bottom: 32px;
    }
}

/* ---  form : ラベル  --- */
.field .label,
.field-checkbox .label {
    display: flex;
    align-items: center;
    color: var(--Gray-950, #030712);
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 150%;
    margin-bottom: 48px;
}

.field .label label,
.field-checkbox .label label {
    display: flex;
    align-items: center;
}

@media screen and (max-width:786px) {

    .field .label,
    .field-checkbox .label {
        margin-bottom: 24px;
    }
}



/* ---  確認画面 : label  --- */
.confirm_area {}

/* ---  form : 必須  --- */
.label .required {
    color: #FFF;
    font-size: 12px;
    font-weight: 300;
    line-height: 150%;
    background-color: var(--red);
    display: inline-flex;
    padding: 0px 9px;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    margin-left: 14px;
}

/* ---  form : input  --- */
.input input {
    padding: 16px;
    border: none;
    width: 100%;
    border-bottom: 2px solid var(--Gray-200, #E5E7EB);
font-size: 16px;
}

@media screen and (max-width:786px) {
    .input input {
        padding: 6px 8px;
    }
}

/* ---  form : checkbox  --- */
.checkbox .wpcf7-list-item {
    display: block;
    margin: 0 0 8px !important;
}

.checkbox .wpcf7-list-item label {
    display: flex;
    align-items: center;
    cursor: pointer;
}

input[type="checkbox"] {
    position: relative;
    width: 20px;
    height: 20px;
    border: 1px solid #D9D9D9;
    margin-right: 8px;
    vertical-align: -5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="checkbox"]:checked {
    background-color: var(--blue-900);
}

input[type="checkbox"]:checked::before {
    position: absolute;
    top: 1px;
    left: 6px;
    transform: rotate(50deg);
    width: 7px;
    height: 12px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
}

/* ---  form : textarea  --- */
.input textarea {
    width: 100%;
    padding: 16px;
    border: 2px solid var(--Gray-200, #E5E7EB);
    height: 260px;
}

@media screen and (max-width:786px) {
    .input textarea {
        height: 200px;
        padding: 6px 8px;
    }
}


/* ---  form : agreement  --- */
.field_agreement .label {
    margin-bottom: 24px;
}

.field_agreement .wpcf7-list-item {
    display: block;
    margin: 0 0 8px !important;
}

/* ---  form : プライバシーマーク  --- */
.formCard-privacy {
    max-width: 820px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    padding: 56px 16px 0;
    align-items: flex-start;
}

.formCard-privacy img {
    margin-right: 24px;
}

.formCard-privacy .list-disc {

    font-size: 14px;
    font-style: normal;
    line-height: 150%;
    list-style: disc inside;
}

.formCard-privacy .list-disc li {
    margin-bottom: 1em;
}

@media screen and (max-width:786px) {
    .formCard-privacy {
        flex-direction: column;
        align-items: center;
    }

    .formCard-privacy img {
        margin: 0 0 32px;
    }
}



/* ---  form : 送信/確認 ボタン  --- */
.form-btn-group {
    display: flex;
    justify-content: center;
    max-width: 840px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.form-btn-group [class*=btn-] {
    display: flex;
    width: 264px;
    padding: 16px 96px;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    background: #FFF;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    border: 3px solid;
    transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}

.wpcf7 .wpcf7-submit:disabled {
    opacity: .5;
}

.btn-back {
    border-color: #D9D9D9 !important;
    color: var(--black);
}

.btn-back:hover {
    background-color: #D9D9D9;
}

.btn-submit {
    border-color: var(--blue-900);
    color: var(--blue-900);
}

.btn-submit:hover {
    background-color: var(--blue-900);
    color: #fff;
}

.btn-submit:disabled:hover {
    background: none;
    color: var(--blue-900);
    border-color: var(--blue-900);
}


/*確認画面と完了画面を非表示*/
.confirm_area,
.thanks_area {
    display: none;
}

/*デフォルトのサンクスメッセージを非表示*/
.wpcf7-response-output {
    display: none;
}






/* TOP : メディア

====================================================*/
#media_logo {
    padding: 32px 0 96px;
    margin: 0 -16px;
}

.media_logo-wrap {
    display: flex;
}

.media_logo-wrap li {
    margin-right: 16px;
}

.media_logo-wrap li:last-child {
    margin-right: 0;
}

#stage-1st {
    margin-bottom: 16px;
}

.media_logo-wrap img {
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}



.scroll-media_logo-wrap {
    margin: 0 -41px;
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.scroll-wrap {
    display: flex;
    overflow: hidden;
}

.scroll-media_logo {
    display: flex;
    margin-bottom: 16px;
}

.scroll-media_logo {
    list-style: none;
    animation: infinity-scroll-left 80s infinite linear 3s both;
}

.media_logo-item {
    /* box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); */
    margin-right: 16px;
}

.media_logo-item>img {
    width: auto;
    max-width: inherit;
    height: 40px;
}

@media screen and (max-width:786px) {
    .scroll-media_logo-wrap {
        margin: 0 -16px;
    }

    .media_logo-item>img {
        height: 30px;
    }
}





/*  index : ボタン（大）
    column、company
====================================================*/
.section_btn-wrap {
    display: flex;
    align-items: center;
    justify-items: center;
    flex-direction: column;
    border-radius: 24px;
    padding: 115px 16px;
    color: #fff;
    background-size: cover;
    background-position: center;
    margin-bottom: 32px;
}

.section_btn-sm {
    font-size: 21px;
    font-weight: 400;
    line-height: 150%;
}

.section_btn-lg {
    font-size: 46px;
    font-weight: 600;
    line-height: 100%;
    margin: 20px 0;
}

#section-column {
    padding-top: 96px;
}

#section-company {
    padding-bottom: 128px;
}

#section-column .section_btn-wrap {
    background-image: url(/wp2/wp-content/themes/soluna/assets/img/section_btn-column.png);
}

#section-company .section_btn-wrap {
    background-image: url(/wp2/wp-content/themes/soluna/assets/img/section_btn-company.png);
}

#section-message .section_btn-wrap {
    background-image: url(/wp2/wp-content/themes/soluna/assets/img/section_btn-message.png);
}

.section_btn-sm:last-child i {
    display: none;
}

@media screen and (max-width:786px) {
    .section_btn-wrap {
        border-radius: 24px;
        padding: 15px 16px;
    }

    .section_btn-lg {
        color: #FFF;
        font-size: 32px;
        line-height: 46px;
        margin: 8px 0;
    }

    .section_btn-sm:last-child {
        display: inline-flex;
        align-items: center;
        border-bottom: 2px solid #fff;
    }

    .section_btn-sm:last-child i {
        margin-left: 8px;
        display: inline-block;
        font-size: 14px;
    }

    #section-column {
        padding-top: 40px;
    }

    #section-company {
        padding-bottom: 96px;
    }
}


/* TOP : コンセプト

====================================================*/

#section-concept {
    background: url(/wp2/wp-content/themes/soluna/assets/img/earth.png) no-repeat;
    background-size: 500px;
    background-position: right center;
}

#concept .section-wrap,
#section-concept .section-wrap {
    max-width: 950px;
}

#section-concept .section-txt {
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 170%;
}


@media screen and (max-width:786px) {
    #section-concept {
        background-position: right -150px bottom;
        padding-bottom: 110px !important;
    }

    #section-concept .section-txt {
        color: #000;
        font-size: 16px;
        font-weight: 400;
        line-height: 200%;
        margin-bottom: 0;
    }

}






/*  TOP : WORKS

====================================================*/
.postCard-works .postCard-comment {
    margin-bottom: 24px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: calc(1em * 1.5 * 2);
}

.industry {
    padding-top: 8px;
    border-top: 1px solid #D9D9D9;
}

.industry,
.area,
.employees,
.service {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.industry .ttl,
.area .ttl,
.employees .ttl {
    width: 25%;
    margin-right: 24px;
}

.industry .input,
.area .input,
.employees .input {
    width: 75%;
}

/* .employees .input::after {
    content: "名";
} */




/*  TOP : solution

====================================================*/
.postCard-solution {
    width: calc(25% - 24px) !important;
}

#solutions .postCard-featured,
.postCard-solution .postCard-featured {
    background-color: #DBEAFE;
background-image: none;
}

.postCard-solution .postCard-featured img {
    max-width: 270px;
    width:auto;
}

.postCard-solution .postCard-content {
    padding: 16px 8px;
}

.postCard-solution .postCard-ttl {
    text-align: center;
    margin-bottom: 16px;
    color: var(--Gray-900, #111827);
    font-size: 19px;
    font-weight: 600;
    line-height: 150%;
    height: calc(1em * 1.5 * 2);
}

.postCard-solution .postCard-comment {
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
}

body.category-solution .postCard-solution {
    width: calc(33.333% - 24px);
}




@media screen and (max-width:786px) {

    body.category-solutions .postCard-list {
        flex-direction: row;
        justify-content: space-between;
    }

    .postCard-solution {
        width: calc(50% - 8px) !important;
        margin-right: 0;
        margin-bottom: 16px;
    }

    .postCard-solution .postCard-featured {
        height: 110px;
    }

    .postCard-solution .postCard-featured img {
        height: 100%;
        width: auto;
    }

    .postCard-solution .postCard-ttl {
        font-size: 19px;
        height: calc(1em * 1.5 * 3);
    }


}

/*  category : ソリューション

====================================================*/
.solutions_btn-wrap {
    margin-top: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.solutions_btn-wrap li::before {
    display: none;
}

.solutions_btn-wrap li:first-child {
    margin-right: 38px;
}

main .section:first-child {
    padding-top: 114px
}

#drs {
    padding-top: 80px;
}

#its {
    padding-top: 80px;
    padding-bottom: 80px;
}

#solutions .section-wrap.flex {
    display: flex;
    align-items: flex-start;
}

body.single #solutions .flex .postCard-featured {
    max-width: 270px;
    width: 100%;
    margin-right: 24px;
    min-width: 270px;
}


@media screen and (max-width:786px) {

    #solutions .section-wrap.flex {
        flex-direction: column;
    }

    body.single #solutions .flex .postCard-featured {
        max-width: inherit;
        min-width: inherit;
        margin: 0 0 40px;
        border-radius: 0;
    }

    main .section:first-child {
        /* padding-top: 0; */
    }
}


/*  page : 会社概要
    
====================================================*/
.section-company .thumbnail {
    margin-bottom: 56px;
}

.section-company .bg-company {
    background: #fff url(/wp2/wp-content/themes/soluna/assets/img/earth.png) no-repeat !important;
    background-size: 500px !important;
    background-position: right top !important;
    padding: 0 88px;
    margin: 0 -88px;
}

.section-company iframe {
    width: 100% !important;
    height: 510px !important;
    border-radius: 20px;
    /* margin-bottom: 24px; */
}

@media screen and (max-width:786px) {
    .section-company iframe {
        height: 220px !important;
    }

    .section-company .bg-company {
        background-position: right -100px top 0 !important;
        padding: 0 16px;
        margin: 0 -16px;
    }
}



/*  page : お問い合わせ
    
====================================================*/
/* #contact .form_ttl {
    display: none;
    text-align: center;
} */

/* ---  各ページ埋め込み  --- */
.section-form .form_ttl-lg {
    font-size: 44px;
    font-weight: 600;
    line-height: 66px;
}

.section-form .form_ttl-sm {
    font-size: 21px;
    font-weight: 600;
    line-height: 33px;
}

@media screen and (max-width:786px) {
    .section-form .form_ttl-lg {
        font-size: 36px;
        line-height: 120%;
    }

    .section-form .form_ttl-sm {
        font-size: 16px;
        line-height: 120%;
    }
}


/*  single : NEWS
====================================================*/
.pdf_link {
    display: inline-block;
    margin-top: 64px;
}

@media screen and (max-width:786px) {
    .pdf_link {
        margin-top: 0;
    }

}


/*  single : solutions
    ソリューション
====================================================*/
#solutions .wp-block-heading {
    margin-top: 64px;
    margin-bottom: 40px;
    font-size: 36px;
    line-height: 1;
    display: flex;
    align-items: end;
}

#solutions .wp-block-heading::before {
    content: '';
    max-width: 20px;
    height: 20px;
    border-radius: 4px 4px 4px 0px;
    background: var(--Blue-500, #3B82F6);
    margin-right: 8px;
    width: 100%;
    /* max-height: 20px; */
}

#solutions .btn-works-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 64px;
}

#solutions .btn-works {
    display: block;
    padding: 16px 50px;
    border-radius: 100px;
    background: var(--blue-gra, linear-gradient(90deg, #0070E6 -5.71%, #113BB9 47.14%, #6852E1 100%));
    color: #FFF;
    font-size: 18px;
    font-weight: 600;
    line-height: 150%;
}

.txt-outline {
    font-size: 23px;
    font-weight: 300;
    line-height: 39px;
    text-align: left;
}

@media screen and (max-width:786px) {
    #solutions .wp-block-heading {
        margin-bottom: 40px;
        font-size: 24px;
        line-height: 150%;
        margin-bottom: 24px;
        align-items: center;
    }

    .txt-outline {
        font-size: 16px;
        font-weight: 400;
        line-height: 26px;
        letter-spacing: 0em;
        text-align: left;

    }

    .column3-swiper .swiper-button-prev,
    .column3-swiper .swiper-button-next {
        display: none;
    }
}


#solutions .wp_content ul li {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    color: #000;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    max-width: 284px;
}

#solutions .wp_content ul li:last-child {
    margin-bottom: 0;
}

#solutions .wp_content ul li::before {
    content: '\f058';
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    background: var(--blue-gra, linear-gradient(90deg, #0070E6 -5.71%, #113BB9 47.14%, #6852E1 100%));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 20px;
    margin-right: 16px;
}




/*  page : プライバシーポリシー
    
====================================================*/
.wp-block-image {
    margin-bottom: 24px;
}


body.privacy-policy .wp_content p {
    font-size: 14px;
    line-height: 200%;
}

body.privacy-policy .wp_content h1 {
    font-size: 28px !important;
    text-align: center;
    line-height: 1.5 !important;
    margin: 0 0 50px !important;
    padding: 0 !important;
}

body.privacy-policy .wp_content h2 {
    font-size: 22px;
    margin-top: 40px;
    margin-bottom: 16px;
    font-weight: 600;
}

body.privacy-policy .wp_content h3,
body.privacy-policy .wp_content h4 {
    line-height: 1.4;
    margin: 0 0 16px;
    padding: 0;
    font-weight: 600;
}

body.privacy-policy .wp_content p+h3 {
    margin-top: 24px;

}

body.privacy-policy .wp_content ol {
    margin-left: 1.5em;
    margin-bottom: 24px;
}

body.privacy-policy .wp_content ol li {
    list-style-type: none;
    counter-increment: cnt;
    margin: 0 0 2em;
    font-size: 14px;
}

body.privacy-policy .wp_content ol li::before {
    content: counter(cnt) "）";
    display: inline-block;
    margin-left: -1.5em;
}

body.privacy-policy .wp_content ul {
    list-style: circle outside none;
    margin-left: 2.5em;
    margin-bottom: 24px;
}



/*  その他
====================================================*/
.pt-0 {
    padding-top: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.text-red {
    color: var(--red) !important;
}

.text-underline {
    text-decoration: underline !important;
}

.font-700 {
    font-weight: 700 !important;
}




/*  プラグイン：目次
====================================================*/

#ez-toc-container {
  margin: 40px auto !important;
  max-width: 800px !important;
  width: 100% !important;
  background: #fff !important; 
  border: 1px solid #D5D8DA !important;
  border-radius: 2px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

a.ez-toc-link {
  color: #1f2d68;
}
a.ez-toc-link:hover{
  color: #1f2d68;
}
#ez-toc-container .ez-toc-title {
  color: #606163;
  font-weight: 700;
  font-size: 18px !important;
  margin: 0 !important;
}
/* .ez-toc-counter nav ul li a::before{
  display: none !important;
} */
.ez-toc-counter nav ul li a::before{
	font-weight:bold;
}
#ez-toc-container .ez-toc-title-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #D5D8DA !important;
  padding: 16px 40px !important;
}

#ez-toc-container #item {
  display: none;
}

#ez-toc-container label {
  margin: 0;
  font-size: 20px;
}

#ez-toc-container label:before {
  content: "\f077";
  font-family: FontAwesome;
}

#ez-toc-container.toc_close label:before {
  content: "\f078";
  font-family: FontAwesome;
}

#ez-toc-container .ez-toc-list {
  padding: 0;
}

#ez-toc-container .ez-toc-list ul li {
  content: "";
}

#ez-toc-container .ez-toc-list .ez-toc-heading-level-2 {
  counter-increment: section;
  font-weight: 700;
  font-size: 16px;
  margin: 20px 40px !important;
}

#ez-toc-container .ez-toc-list .ez-toc-heading-level-2:not(:last-child) {
  border-bottom: 1px solid #D5D8DA !important;
  padding-bottom: 20px !important;
}

/* #ez-toc-container .ez-toc-list .ez-toc-heading-level-2:before {
  content: counter(section, decimal-leading-zero) ". " !important;
} */

#ez-toc-container .ez-toc-list .ez-toc-heading-level-3 {
  font-weight: 500;
  font-size: 16px !important;
  margin-top: 8px !important;
}

#ez-toc-container .ez-toc-list .ez-toc-heading-level-3 a {
  color: #606163 !important;
}

#ez-toc-container .ez-toc-list .ez-toc-list-level-3 {
  padding-top: 4px !important;
  padding-left: 16px !important;
}

#ez-toc-container .ez-toc-list .ez-toc-heading-level-4 {
  font-size: 14px !important;
  margin-top: 8px;
}

#ez-toc-container .ez-toc-list .ez-toc-list-level-4 {
  padding-left: 16px !important;
}


/* SP */
@media screen and (max-width: 768px) {
  #ez-toc-container{
    margin: 40px 24px !important;
    width: calc(100% - 24px * 2) !important;
  }

  #ez-toc-container a {
    font-size: 14px !important;
  }

  #ez-toc-container .ez-toc-title-container {
    padding: 16px 12px !important;
  }

  #ez-toc-container .ez-toc-list .ez-toc-heading-level-2 {
    margin: 20px 12px 20px 24px !important;
  }

  #ez-toc-container .ez-toc-list .ez-toc-heading-level-2:before {
    font-size: 14px !important;
  }


}
