@charset "UTF-8";

/* トップページ
---------------------------------------- */
main#page-top .section {
    margin-bottom: 72px;
}

main#page-top #sec-hero {
    padding-top: 232px;
    background-color: #fff;
}

main#page-top #sec-hero .hero-info {
    margin-bottom: 58px;
}
main#page-top #sec-hero .hero-info .catch {
    font-size: 48px;
    font-weight: bold;
    line-height: normal;
    margin-bottom: 60px;
}
main#page-top #sec-hero .hero-info .link-text {
    font-weight: bold;
}
main#page-top #sec-hero .hero-info .link-text::after {
    /* content: url(../images/top/mainvisual-icon-arrow.svg); */
    content: "";
    display: inline-block;
    width: 103px;
    height: 5px;
    background-image: url(../../../../uploads/2024/04/mainvisual-icon-arrow.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 103px auto;
    margin-left: 20px;
}
main#page-top #sec-hero .members {
    margin-bottom: 12px;
}
main#page-top #sec-hero .members img {
    max-width: unset;
    width: 100%;
}
main#page-top #sec-hero .partner-list {
    /* width: calc(100% - 160px);
    margin: 0 80px; */
    padding-bottom: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px 40px;
}
main#page-top #sec-hero .partner-list .partner {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 8px;
}
main#page-top #sec-hero .partner-list .partner .image {
    width: 72px;
}
main#page-top #sec-hero .partner-list .partner .info {
    flex: 1;
}
main#page-top #sec-hero .partner-list .partner .info .title {
    font-weight: bold;
    width: max-content;
}
main#page-top #sec-hero .partner-list .partner .info .sub-title {
    font-size: 12px;
    font-weight: bold;
    width: max-content;
}
@media all and (max-width: 1199px) {
    main#page-top #sec-hero {
        padding-top: 136px;
    }
}
@media all and (max-width: 1119px) {
    main#page-top #sec-hero .hero-info {
        max-width: 940px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0 40px;
    }
    
}
@media all and (max-width: 1131px) {
    main#page-top #sec-hero .partner-list {
        flex-wrap: nowrap;
        justify-content: left;
        overflow-x: scroll;
    }    
}

main#page-top #sec-why .info .lead {
    font-weight: bold;
    font-size: 20px;
    line-height: 180%;
}

main#page-top #sec-why .info .catch {
    margin-left: 40px;
    font-weight: 900;
    font-size: 38px;
    line-height: 180%;
    padding-top: 37px;
    margin-bottom: 40px;
}
main#page-top #sec-why .info .btn {
    margin: 0;
}

main#page-top #sec-why .result-num .about {
    font-weight: 900;
    font-size: 24px;
    line-height: 200%;
}

main#page-top #sec-why .result-num .num {
    font-family: Oswald;
    font-weight: 500;
    font-size: 160px;
    line-height: 100%;
}

main#page-top #sec-why .result-num .rate {
    font-family: Oswald;
    font-weight: 500;
    font-size: 32px;
    line-height: 200%;
}


main#page-top #sec-service h2 {
    margin-bottom: 24px;
}

main#page-top #sec-service .content {
    margin-bottom: 24px;
}

main#page-top #sec-service .cat-group {
    margin-bottom: 24px;
}

main#page-top #sec-service .cmn-unit-wrap .cat-group {
    width: calc((100% - 32px) / 2);
}

main#page-top #sec-service .cat-group cat-title {
    margin-bottom: 24px;
}

main#page-top #sec-service .cat-group .cat-title .cat-icon {
    display: block;
    width: 88px;
    height: 88px;
    background-color: #1F272F;
    border-radius: 4px 0px 0px 0px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 40px;
}

main#page-top #sec-service .cat-group .cat-title h3 {
    display: table;
    width: calc(100% - 88px);
    height: 88px;
    margin-bottom: 0;
    padding-left: 16px;
    border-bottom: solid 2px #1F272F;
}

main#page-top #sec-service .cat-group .cat-title h3 span {
    display: table-cell;
    vertical-align: middle;

    font-weight: bold;
    font-size: 20px;
    line-height: 180%;

}

main#page-top #sec-service .cat-group .entry {


    background-image: url(../images/common/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: center right 12px;
}

main#page-top #sec-service .cat-group .entry a {
    display: block;
    padding: 16px 12px 0;

}

main#page-top #sec-service .cat-group .item-title {
    font-weight: bold;
    font-size: 16px;
    line-height: 140%;

}

main#page-top #sec-service .cat-group .item-title-en {


    font-weight: 500;
    font-size: 12px;
    line-height: 200%;

    color: #969696;

    padding-bottom: 8px;
    position: relative;
    border-bottom: 1px solid #EFEFEF;

}

main#page-top #sec-service .cat-group .entry:last-child .item-title-en {
    border: none;
}

main#page-top #sec-service .cmt {

    text-align: center;
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 24px;

}

main#page-top #sec-result {
    padding-top: 72px;
}

main#page-top #sec-result h2 {
    margin-bottom: 10px;
}

main#page-top #sec-result h2 span {
    display: inline-block;
}

main#page-top #sec-result .btn {
    width: 100%;
}

main#page-top #sec-result .info {
    padding: 32px;
}

main#page-top #sec-result .info .company-num {
    margin-top: -75px;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 20px;
}

main#page-top #sec-result .info .company-num .num {
    font-family: Oswald;
    font-weight: 500;
    font-size: 120px;
}

main#page-top #sec-result .info .txt {
    margin-bottom: 20px;
}

main#page-top #sec-consult h2 {

    margin-bottom: 8px;
}

main#page-top #sec-consult .contents {


    margin-bottom: 24px;
    position: relative;
    margin-bottom: 24px;
}

main#page-top #sec-consult .contents .lead {
    padding: 32px 40px;
    color: #fff;
    background: #1F2721;
    font-weight: bold;
    font-size: 20px;
    line-height: 180%;
    border-radius: 4px 4px 0 0;
}

main#page-top #sec-consult .contents .txt-area {
    padding: 24px 40px 19px;
}

main#page-top #sec-consult .contents .txt {
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 20px;
}

main#page-top #sec-consult .contents .note {
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 20px;
}

main#page-top #sec-consult .image {
    width: calc(100% - 600px);
    text-align: right;
    position: absolute;
    bottom: 0;
    right: 0;
}

main#page-top #sec-consult .image img {
    max-height: 359px;
}

main#page-top #sec-blog h2 {
    font-family: Oswald;
    font-weight: 500;
    font-size: 56px;
    line-height: 100%;
    letter-spacing: 0.04em;
    text-align: center;
    margin-bottom: 32px;
}

main#page-top #sec-blog h2 img {
    margin-right: 16px;
}



main#page-top #sec-blog .entry-contents {
    margin-bottom: 24px;
}

main#page-top #sec-document h2 {
    text-align: center;
    margin-bottom: 24px;
}

main#page-top #sec-book h2 {
    text-align: center;
    margin-bottom: 24px;
}

main#page-top #sec-book .book-list-item {
    margin-bottom: 24px;
}



main#page-top #sec-seminar h2 {
    text-align: center;
    margin-bottom: 24px;
}
main#page-top #sec-seminar .seminar-list {
    justify-content: center;
    margin-bottom: 48px;
}

main#page-top #sec-news h2 {
    text-align: center;
}

main#page-top #sec-news ul {
    width: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 24px;
}


@media all and (max-width: 1260px) {
    main#page-top #sec-why .lead {
        width: calc(100% - 230px);
    }

    main#page-top #sec-why .result-num {
        width: 230px;
        margin-top: 52px;
    }
}



/* コンサルタント
---------------------------------------- */
#page-consultant .sec-list h2 {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
    color: #fff;
    padding: 10.5px 24px;
    background-color: #1F272F;
    border-radius: 4px;
    margin-bottom: 24px;
}

#page-consultant .block-column .item-img img {
    width: 100%;
}

#page-consultant .block-column .item-info .item-title {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
    margin-bottom: 12px;
}

/* 役員紹介
---------------------------------------- */
#page-officer .officer-list-item .entry {
    margin-bottom: 40px;
}

#page-officer .officer-list-item .entry:last-child {
    margin-bottom: 0;
}

#page-officer .officer-list-item .entry .image {
    width: 320px;
}

#page-officer .officer-list-item .entry .txt-area {
    width: calc(100% - 352px);
}

#page-officer .officer-list-item .entry .position {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
}

#page-officer .officer-list-item .entry .ttl {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    margin-top: 0;
    margin-bottom: 12px;
}

#page-officer .officer-list-item .entry .lead {
    font-size: 16px;
    line-height: 180%;
}


/* お知らせ一覧
---------------------------------------- */

#page-news .entry-contents {
    margin-bottom: 32px;
}



/* セミナー一覧
---------------------------------------- */
#page-seminar #sec-seminar .past-seminar-list {
    display: block;
    width: fit-content;
    padding: 8px 24px;
    border-radius: 8px;
    background-color: #fff;
    margin: 56px auto 0 auto;
}
#page-seminar #sec-seminar .past-seminar-list:hover {
    text-decoration: underline;
}

#page-seminar #sec-seminar .past-seminar-list .title {
    font-weight: bold;
    font-size: 20px;
    line-height: 180%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 16px;
}
#page-seminar #sec-seminar .past-seminar-list .title::after {
    display: block;
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../images/common/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: center;
}

/* #page-seminar #sec-past .accordion-title {
    position: relative;
    cursor: pointer;
}

#page-seminar #sec-past .accordion-title:after {

    content: "";
    position: absolute;
    right: 25px;
    top: 38%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 1px #1F272F;
    border-right: solid 1px #1F272F;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

#page-seminar #sec-past.open .accordion-title:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%;
} */

/* #page-seminar #sec-past .sec-header {
    gap: 16px 40px;
    margin-bottom: 16px;
}
#page-seminar #sec-past .sec-header h2 {
    margin-bottom: 0;
}
#page-seminar #sec-past .sec-header .link-archives {
    gap: 16px;
    font-weight: 500;
}
#page-seminar #sec-past .sec-header .link-archives::after {
    display: block;
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../images/common/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: center;
}
#page-seminar #sec-past .sec-header .link-archives:hover {
    cursor: pointer;
    text-decoration: underline;
}
#page-seminar #sec-past .accordion-content {
    display: none;
}

#page-seminar #sec-past .past-webinar-item {
    margin-bottom: 32px;
    gap: 32px;
}

#page-seminar #sec-past .past-webinar-item .entry {
    width: calc((100% - 32px) / 2);
}

#page-seminar #sec-past .past-webinar-item .entry .date {
    font-size: 12px;
    line-height: 180%;
}

#page-seminar #sec-past .past-webinar-item .entry .ttl {
    line-height: 180%;

}

#page-seminar #sec-past .past-webinar-item .entry .ttl:hover {
    text-decoration: underline;
}

#page-seminar #sec-past .close-button {
    cursor: pointer;
} */

/* 過去の開催セミナー一覧
---------------------------------------- */
#page-seminar-archives #sec-archives .parts-list {
    padding: 24px 24px 0 64px;
    margin-bottom: 32px;
}
#page-seminar-archives #sec-archives .parts-list li .date {
    margin-right: 1em;
}
#page-seminar-archives #sec-archives .btn-seminar {
    display: block;
    width: 264px;
    height: 48px;
    text-align: center;
    align-content: center;
    background-color: #156490;
    border-radius: 4px;
    text-decoration: none;
    font-weight: 500;
    color: white;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    margin: 0 auto;
}
@media all and (max-width: 1024px) {
    #page-seminar-archives #sec-archives .parts-list {
        padding: 24px 0 0 0;
    }
}

/* 実績・事例詳細
---------------------------------------- */
#single-casestudy #sec-intro {
    padding: 24px 24px 32px 24px;
    margin-bottom: 32px;
}

#single-casestudy #sec-intro .intro {
    margin-bottom: 24px;
}

#single-casestudy #sec-intro .intro .image {
    width: 420px;
    margin-right: 24px;

}

#single-casestudy #sec-intro .intro .txt-area {
    width: calc(100% - 444px);
}

#single-casestudy #sec-intro .intro .business {
    font-weight: normal;
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}
#single-casestudy #sec-intro .intro .url {
    font-weight: normal;
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}

#single-casestudy #sec-intro .intro .url a:hover {
    text-decoration: underline;
}
#single-casestudy #sec-intro .intro .tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
    font-weight: normal;
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}
#single-casestudy #sec-intro .intro .tag-list .tag a {
    display: inline-block;
    background: #43688A;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 200%;
    color: #fff;
    padding: 0 8px;
}

#single-casestudy #sec-intro .task {
    margin-bottom: 32px;
}

#single-casestudy #sec-intro .task h2 {

    background: #EFEFEF;
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    padding: 11px 0 11px 12px;
    margin-bottom: 12px;

}

#single-casestudy #sec-intro .task .txt {

    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
}

#single-casestudy #sec-intro .policy {
    margin-bottom: 32px;
}

#single-casestudy #sec-intro .policy h2 {

    background: #EFEFEF;
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    padding: 11px 0 11px 12px;
    margin-bottom: 12px;

}

#single-casestudy #sec-intro .policy .txt-area ul {
    margin-bottom: 0;
}


#single-casestudy #sec-intro .result h2 {
    background: #1F272F;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    padding: 11px 0 11px 12px;
    margin-bottom: 12px;

}

#single-casestudy #sec-intro .result .txt-area {
    margin-bottom: 0;
}

#single-casestudy .sec-content .txt {
    margin-bottom: 56px;
}

#single-casestudy .sec-content .parts-img {
    margin-bottom: 32px;
}

#single-casestudy .sec-content .txt .bold {
    font-weight: bold;
}

/* コンサルタント詳細
---------------------------------------- */
#single-consul {
    padding-top: 48px;
}

#single-consul #sec-intro {

    position: relative;
    padding-top: 56px;
    padding-left: 56px;
    margin-bottom: 32px;
}

#single-consul #sec-intro .img-area {
    width: 440px;
    position: absolute;
    top: 0;
    left: 0;
}

#single-consul #sec-intro .img-area .image {
    margin-bottom: 48px;
}

#single-consul #sec-intro .img-area .btn {
    width: 100%;
    height: 88px;

}



#single-consul #sec-intro .img-area .btn a {
    position: relative;
    line-height: 88px;
    font-size: 24px;
    vertical-align: middle;
}

#single-consul #sec-intro .img-area .btn img {
    vertical-align: middle;
    margin-right: 5px;
    margin-bottom: 5px;
}

#single-consul #sec-intro .content {
    padding: 32px 24px 32px 416px;
}

#single-consul #sec-intro .txt-area {
    min-height: 380px
}

#single-consul #sec-intro .txt-area h1 {
    font-weight: bold;
    font-size: 36px;
    line-height: 200%;
    margin-bottom: 8px;
}

#single-consul #sec-intro .txt-area .position {
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 24px;
}

#single-consul #sec-intro .txt-area .description {
    font-size: 16px;
    line-height: 180%;
}

#single-consul #sec-intro .txt-area .results {
    margin-top: 32px;
    border-top: 1px solid #969696;
    padding-top: 20px;
}

#single-consul #sec-intro .txt-area .results h2 {
    font-family: Lato;
    font-weight: 600;
    font-size: 16px;
    line-height: 160%;
}

#single-consul #sec-intro .txt-area .results .result-txt {
    font-size: 16px;
    line-height: 180%;

}

#single-consul #sec-important {
    padding: 32px 24px 40px;
    margin-bottom: 56px;
}

#single-consul #sec-important h2 {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    color: #0B7CE6;
    margin-bottom: 8px;
}

#single-consul #sec-important .important-txt {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;

}

#single-consul #sec-quality .entry {
    width: calc((100% - 64px) / 3);
    padding: 13px 12px 14px;
    box-sizing: border-box;
    margin-right: 32px;
    margin-bottom: 32px;
}

#single-consul #sec-quality .entry:nth-child(3n) {
    margin-right: 0;
}

#single-consul #sec-seminar .entry {
    width: calc((100% - 64px) / 3);
    margin-right: 32px;
    margin-bottom: 32px;
}

#single-consul #sec-seminar .entry:nth-child(3n) {
    margin-right: 0;
}

#single-consul #sec-seminar .entry a {
    display: block;
    text-align: center;
    padding: 13px 30px 14px;

    background-image: url(../images/common/icon_window.png);
    background-repeat: no-repeat;
    background-position: center right 12px;

}

#single-consul .goal-section {
    width: 480px;
    height: 88px;

}

#single-consul .goal-section a {
    position: relative;
    line-height: 88px;
    font-size: 24px;
    vertical-align: middle;
}

#single-consul .goal-section img {
    vertical-align: middle;
    margin-right: 5px;
    margin-bottom: 5px;
}

/* ブログ詳細
---------------------------------------- */
#single-column #page-header {
    margin-bottom: 46px;
}

#single-column #page-header .date-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 16px;
}

#single-column #page-header .date-list .date {
    font-size: 12px;
    line-height: 180%;
}

#single-column #page-header .date-list .date::before {
    content: "";
    display: inline-block;
    width: calc(1em * 1.8);
    aspect-ratio: 1 / 1;
    vertical-align: top;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
    margin-right: 2px;
}

#single-column #page-header .date-list .date-publish::before {
    background-image: url(../images/common/icon-post-date.svg);
}
#single-column #page-header .date-list .date-modified::before {
    background-image: url(../images/common/icon-post-modified.svg);
}

#single-column #page-header h1 {
    margin-bottom: 16px;
}

#single-column #page-header .meta {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 16px 0;
}

#single-column #page-header .meta .block-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
}

#single-column #page-header .meta .block-meta .name {
    font-size: 12px;
    line-height: 200%;
}

#single-column #page-header .meta .block-meta .name .label {
    display: inline-block;
    margin-right: 4px;
}

#single-column #page-header .meta .block-meta .name a {
    display: inline-block;
    text-align: center;

    border: 1px solid #1F272F;
    padding: 0 20px;
}

#single-column #page-header .meta .block-meta .cat {
    width: fit-content;
}

#single-column #page-header .meta .block-meta .cat a {
    display: block;

    font-size: 12px;
    line-height: 200%;

    text-align: center;

    color: #FFF;
    border: 1px solid #43688A;
    background: #43688A;
    padding: 0 20px;
}


#single-column #sec-entry .entry-inner {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}

#single-column #sec-entry .mainvisual {
    text-align: center;
    margin-bottom: 40px;
}

#single-column #sec-entry .entry-content {
    margin-bottom: 46px;
}

#single-column #sec-entry .entry-content h2 {
    font-weight: bold;
    font-size: 32px;
    line-height: 140%;
    margin-bottom: 16px;
    margin-top: 80px;
}

#single-column #sec-entry .entry-content h3 {
    font-weight: bold;
    font-size: 20px;
    line-height: 180%;
    margin: 32px 0 8px 0;
}

#single-column #sec-entry .entry-content ul {
    margin-bottom: 24px;
    list-style-type: none;
    position: relative;
}

#single-column #sec-entry .entry-content ul:last-child {
    margin-bottom: 0;
}

#single-column #sec-entry .entry-content ul li {
    margin-bottom: 8px;
    margin-left: 24px;
    padding: 0
}

#single-column #sec-entry .entry-content ul li:last-child {
    margin-bottom: 0;
}

#single-column #sec-entry .entry-content ul li::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 2px 20px 2px -24px;
    border-radius: 50%;
    background-color: #1F272F;
    color: #1F272F;
}

#single-column #sec-entry .entry-content ol {
    counter-reset: section;
    margin-bottom: 24px;
    position: relative;
}



#single-column #sec-entry .entry-content ol li {
    list-style: none;
    margin-bottom: 20px;
    margin-left: 24px;
}

#single-column #sec-entry .entry-content ol li:last-child {
    margin-bottom: 0;
}

#single-column #sec-entry .entry-content ol li::before {
    content: counters(section, '-');
    counter-increment: section;
    margin-right: 20px;
    margin-left: -24px;
    font-weight: 900;
    font-size: 16px;
    line-height: 200%;
    color: #1F272F;
    box-sizing: border-box;
}

#single-column #sec-entry .entry-content p {
    margin-bottom: 32px;

}

#single-column #sec-entry .entry-content a {
    text-decoration: underline;
}

#single-column #sec-entry .entry-content a:hover {

    text-decoration: none;
}

#single-column #sec-entry .entry-content .img-wap {
    margin: 32px 0;
}
#single-column #sec-entry .entry-content img {
    border: solid 1px #efefef;
    margin-bottom: 4px;
}

#single-column #sec-entry .entry-content strong {
    font-weight: bold;
}

#single-column #sec-entry .entry-content table:not(.noborder) {
    width: 100%;
}

#single-column #sec-entry .entry-content table:not(.noborder) th,
#single-column #sec-entry .entry-content table:not(.noborder) td {
    border: 1px solid #ddd;
    padding: 8px;
}

#single-column #sec-entry .entry-content table:not(.noborder) th:nth-child(1) {
    width: 25%;
}

#single-column #sec-entry .entry-content table:not(.noborder) th {
    background: #eee;
    font-weight: bold;
}

#single-column #sec-entry .entry-content .box-gray > *:last-child {
    margin-bottom: 0;
}

#single-column #sec-entry .entry-content .note > *:last-child {
    margin-bottom: 0;
}

#single-column #sec-entry .btn-area {
    text-align: center;
}

#single-column #sec-entry .btn {
    width: auto;
    display: inline-block;
    padding: 0 30px;
}

#single-column #sec-tag .tag {
    text-align: left;

}

#single-column #sec-sns .sns {
    letter-spacing: 24px;
    padding: 0;
    text-align: left;
}

#single-column #sec-sns .sns li {
    padding: 0;
    display: inline-block;
}

#single-column #sec-writer {
    margin-bottom: 56px;
}

#single-column #sec-writer .content {
    margin-bottom: 40px;
}

#single-column #sec-writer .photo {
    width: 204px;
}

#single-column #sec-writer .txt-area {

    width: calc(100% - 228px)
}

#single-column #sec-writer .btn-area {
    text-align: center;
    letter-spacing: 24px;
}

#single-column #sec-writer .btn {
    display: inline-block;
    letter-spacing: 0
}

#single-column #sec-whitepaper {
    margin-bottom: 24px;
}


/* お知らせ詳細
---------------------------------------- */
#single-news #page-header {
    margin-bottom: 46px;
}

#single-news #page-header .date {
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}
#single-news #page-header h1 .label {
    font-size: 20px;
    line-height: 140%;
    display: inline-block;
    padding: 8px 16px;
    margin-right: 16px;
    background-color: #1F272F;
    border-radius: 2px;
    color: #fff;
    vertical-align: text-bottom;
}

#single-news #sec-entry .mainvisual {
    margin-bottom: 40px;
}

#single-news #sec-entry .entry-content {
    margin-bottom: 46px;
}

#single-news #sec-entry .entry-content ul li {
    margin-bottom: 20px;
    margin-left: 24px;
}

#single-news #sec-entry .entry-content ul {
    margin-bottom: 24px;
    list-style-type: none;
    position: relative;
}

#single-news #sec-entry .entry-content ul li::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 2px 20px 2px -24px;
    border-radius: 50%;
    background-color: #1F272F;
    color: #1F272F;
}

#single-news #sec-entry .entry-content ol {
    counter-reset: section;
    margin-bottom: 24px;
    position: relative;
}



#single-news #sec-entry .entry-content ol li {
    list-style: none;
    margin-bottom: 20px;
    margin-left: 24px;
}

#single-news #sec-entry .entry-content ol li::before {
    content: counters(section, '-');
    counter-increment: section;
    margin-right: 20px;
    margin-left: -24px;
    font-weight: 900;
    font-size: 16px;
    line-height: 200%;
    color: #1F272F;
    box-sizing: border-box;
}

#single-news #sec-entry .entry-content p {
    margin-bottom: 32px;

}

#single-news #sec-entry .entry-content a {
    text-decoration: underline;
}

#single-news #sec-entry .entry-content a:hover {

    text-decoration: none;
}

/*============================================================
 会社情報
*============================================================*/
/* common 下層インデックスカード
---------------------------------------- */
.page-lower #sec-company-index .item-info .item-title {
    font-weight: bold;
    font-size: 20px;
    line-height: 200%;
}

.page-lower #sec-company-index .item-info {
    padding-bottom: 8px;
}

.page-lower #sec-company-index .item-info .item-title-en {
    font-weight: 500;
    font-size: 12px;
    line-height: 200%;
    color: #969696;
}

/* ページヘッダー
---------------------------------------- */
main#page-company .cmn-inner {
    margin-bottom: 32px;
}

/*============================================================
 サービス一覧
*============================================================*/
main#page-service-list > *:last-child {
    margin-bottom: 0;
}

/* ページナビ
---------------------------------------- */
main#page-service-list #sec-nav {
    margin-bottom: 24px;
}

main#page-service-list #sec-nav .item {
    min-height: 72px;
}

/* カード
---------------------------------------- */
main#page-service-list .sec-cat {
    margin-bottom: 24px;
}

main#page-service-list .sec-cat .cat-title {
    margin-bottom: 24px;
}

main#page-service-list .sec-cat .cat-title .cat-icon {
    display: block;
    width: 88px;
    height: 88px;
    background-color: #1F272F;
    border-radius: 4px 4px 0px 4px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 40px;
}

main#page-service-list .sec-cat .cat-title h2 {
    display: table;
    width: calc(100% - 88px);
    height: 88px;
    margin-bottom: 0;
    padding-left: 16px;
    border-bottom: solid 2px #1F272F;
}

main#page-service-list .sec-cat .cat-title h2 span {
    display: table-cell;
    vertical-align: middle;
}

/*============================================================
 サービス詳細
*============================================================*/
/* common
---------------------------------------- */
main#page-service .catch-label {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 8px;
}

/* 大切にしていること
---------------------------------------- */
main#page-service #sec-important {
    width: 100%;
    min-height: 198px;
    display: table;

    position: relative;
}

/* 背景画像 */
main#page-service #sec-important .img-wrap {
    z-index: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 4px;
}

main#page-service #sec-important .img-wrap .img-blur {
    -webkit-filter: blur(8px);
    -ms-filter: blur(8px);
    filter: blur(8px);
    width: 104%;
    height: 104%;
    margin: -8px;
    padding: 0;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

main#page-service #sec-important .img-wrap .img-blur::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 104%;
    background: linear-gradient(180deg, rgba(31, 39, 47, 0.2) 0%, rgba(31, 39, 47, 0.8) 59.3%);
}

/* テキスト */
main#page-service #sec-important .important-info {
    padding: 24px;
    position: relative;
    color: #FFFFFF;

    display: table-cell;
    vertical-align: middle;
}

main#page-service #sec-important .important-info .catch {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    /* min-height: 114px; */
}

/* 課題＆最大のポイント
---------------------------------------- */
/* 課題 */
main#page-service #sec-main-issue-point .main-issue .lead {
    margin-bottom: 40px;
}

/* 最大のポイント */
main#page-service #sec-main-issue-point .main-point .main-point-catch {
    width: 80%;
    background-color: #1F272F;
    padding: 12px 24px;
    margin-bottom: 24px;
    color: #FFFFFF;
}

main#page-service #sec-main-issue-point .main-point .main-point-catch .catch-label {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 4px;
}

main#page-service #sec-main-issue-point .main-point .main-point-catch .catch {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
}

/* 関連書籍
---------------------------------------- */
main#page-service #sec-case-study {
    margin-bottom: 24px;
}

/* 可変エリア(サービスの要素、顧客の課題、サービスの内容)
---------------------------------------- */
main#page-service .post-variable-area > *:last-child {
    margin-bottom: 0;
}

main#page-service .post-variable-area .block-area {
    margin-bottom: 32px;
}

main#page-service .post-variable-area .block-area > *:not(h3):not(h4) {
    margin-bottom: 32px;
}

main#page-service .post-variable-area .block-area > *:last-child {
    margin-bottom: 0;
}

main#page-service .post-variable-area .block-title {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 8px;
}

main#page-service .post-variable-area h4 {
    display: inline-block;
    margin-bottom: 8px;
}

main#page-service .post-variable-area h4::before {
    content: "";
    display: inline-block;
    width: 24px;
    padding-top: 0.4em;
    border-top: solid 2px #1F272F;
    margin-right: 8px;
}
/* 特徴
---------------------------------------- */
main#page-service #sec-feature .block-area {
    margin-bottom: 4px;
    min-height: 180px;
}

main#page-service #sec-feature .block-area .block-no {
    font-weight: bold;
    font-size: 180px;
    line-height: 100%;
    color: #E1E1E1;
}

main#page-service #sec-feature .block-area .block-info {
    margin-top: -168px;
}

main#page-service #sec-feature .block-area .block-info .block-title {
    font-weight: 900;
    font-size: 36px;
    line-height: 180%;
    color: #0B7CE6;
    margin: 32px 0 8px 0;
}

main#page-service #sec-feature .block-area.supplement {
    min-height: unset;
    margin-top: 32px;
}

main#page-service #sec-feature .block-area.supplement .block-title {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
}

/* 詳細サービス一覧　※子記事がある場合
---------------------------------------- */
main#page-service #sec-child-service {
    margin-bottom: 24px;
}

main#page-service #sec-child-service .item {
    background-position: center right 12px;
    padding: 20px 40px;
}

main#page-service #sec-child-service .item .item-info {
    padding: 0;
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
    text-align: center;
    display: table;
    height: 100%;
}

main#page-service #sec-child-service .item .item-info span {
    display: table-cell;
    vertical-align: middle;
}

/* 資料
---------------------------------------- */
main#page-service #sec-whitepaper {
    margin-bottom: 24px;
}

/* ブログ
---------------------------------------- */
main#page-service #sec-column {
    margin-bottom: 24px;
}

/* フッター　20220615
---------------------------------------- */
.single-service #site-footer .sec-cta {
    display: none;
}

/*============================================================
 資料ダウンロード
*============================================================*/
/* スライド
---------------------------------------- */
main#page-whitepaper #sec-slide {
    margin-bottom: 56px;
}

/* 資料ダウンロード　スライドブロック(TOPでも使用) */
.block-whitepaper-slide .whitepaper-lists {
    display: none;
    margin-bottom: 16px;
}

.block-whitepaper-slide .whitepaper-lists.slick-initialized {
    display: block;
}

.block-whitepaper-slide .slick-prev,
.block-whitepaper-slide .slick-next {
    width: 48px;
    height: 48px;
    background: #1F272F;
    border-radius: 4px;
    z-index: 11;
}

.block-whitepaper-slide .slick-prev:before,
.block-whitepaper-slide .slick-next:before {
    opacity: 1;
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    top: 0;
    bottom: 0;
    margin: auto;
}

.block-whitepaper-slide .slick-prev {
    left: -8px;
}

.block-whitepaper-slide .slick-next {
    right: -8px;
}

.block-whitepaper-slide .slick-prev:before {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.block-whitepaper-slide .slick-next:before {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.block-whitepaper-slide .slick-prev:before {
    margin-left: 20px;
}

.block-whitepaper-slide .slick-next:before {
    margin-right: 20px;
}

.block-whitepaper-slide .entry .img-wrap {
    overflow: hidden;
    border-radius: 4px 4px 0 0;
}

.block-whitepaper-slide .entry .img-wrap .image {
    width: 50%;
    float: left;
    position: relative;
}

.block-whitepaper-slide .entry .img-wrap .image img {
    width: 100%;
}

/* .block-whitepaper-slide .entry .img-wrap .image .icon {
    font-weight: bold;
    font-size: 16px;
    line-height: 180%;
    color: #FFF;
    background: rgba(89, 100, 109, 0.8);
    padding: 7px 16px;
    position: absolute;
    top: 0;
    left: 0;
} */

.block-whitepaper-slide .entry .txt-wrap {
    padding: 24px;
}

.block-whitepaper-slide .entry .txt-area {
    height: 136px;
    width: calc(100% - 264px - 32px);
}

.block-whitepaper-slide .entry .block-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 40px;
}

.block-whitepaper-slide .entry .block-meta .item-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 8px;
}
.block-whitepaper-slide .entry .block-meta .item-tag-list li {
    background: #43688A;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 200%;
    color: #fff;
    padding: 0 8px;
}


.block-whitepaper-slide .entry .entry-ttl {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
    margin-bottom: 2px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

}

.block-whitepaper-slide .entry .entry-cmt {
    font-size: 16px;
    line-height: 180%;
    /* margin-bottom: 32px; */
}

.block-whitepaper-slide .btn {
    margin-top: 32px;
}

.block-whitepaper-slide .doc-slide-dots {
    margin-bottom: 24px;
}

.block-whitepaper-slide .doc-slide-dots .slick-dots {
    position: inherit;
}

/* リスト
---------------------------------------- */
/* main#page-whitepaper #sec-list .item .item-img {
    position: relative;
}

main#page-whitepaper #sec-list .item .item-img .item-icon {
    font-weight: bold;
    font-size: 16px;
    line-height: 40px;
    color: #FFF;
    background: rgba(89, 100, 109, 0.8);
    padding: 0 16px;
    position: absolute;
    top: 0;
    left: 0;
}

main#page-whitepaper #sec-list .item .item-info .item-date {
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}

main#page-whitepaper #sec-list .item .item-info .item-title {
    margin-bottom: 54px;
    min-height: 3.6em;
}

main#page-whitepaper #sec-list .item .item-btn {
    margin-bottom: 12px;
} */

/*============================================================
メッセージページ(#page-message)
*============================================================*/

/* 楠山健一郎
---------------------------------------- */
main#page-message #sec-message .imgarea {
    position: relative;
    margin-bottom: 50px;
}

main#page-message #sec-message .authorname {
    background-color: #1F272F;
    align-items: baseline;
    color: #fff;
    max-width: 640px;
    width: 100%;
    margin: -100px 0 0 0;
    padding: 25px 64px;
    position: relative;
    z-index: 1;
}

main#page-message #sec-message .authorname .name {
    font-size: 40px;
    margin-bottom: 0;
}

main#page-message #sec-message .authorname .degree {
    font-weight: bold;
    margin-bottom: 10px;
}

main#page-message #sec-message .txtarea {
    margin-bottom: 70px;
}

main#page-message #sec-message .txt {
    line-height: 180%;
}

main#page-message #sec-message .txt + .txt {
    margin-top: 40px;
}

main#page-message #sec-message .linkarea .logo {
    width: 288px;
    margin: 0 auto 24px;
}

main#page-message #sec-message .linkarea .ttl {
    text-align: center;
    margin-bottom: 32px;
    font-size: 20px;
}

/*============================================================
会社概要ページ(#page-information)
*============================================================*/

/* 会社情報
---------------------------------------- */
main#page-information #sec-info .info_list .parts-list {
    margin-bottom: 0;
}

main#page-information #sec-info .info_list .parts-boxes {
    align-items: center;
}

main#page-information #sec-info .info_list .parts-list li {
    align-items: center;
}

main#page-information #sec-info .email img {
    padding-top: 8px;
}

/* 取引先(#sec-customer)
---------------------------------------- */
main#page-information #sec-customer .company-lists {
    max-width: 1000px;
    margin-bottom: 24px;
}
main#page-information #sec-customer .customer_list .item {
    width: 22.3%;
    margin-bottom: 32px;
}

main#page-information #sec-customer .customer_list .item li {
    font-size: 12px;
    line-height: 140%;
    margin-bottom: 12px;
}


/* 沿革
---------------------------------------- */

main#page-information #sec-history .history_list ul {
    width: 45%;
    display: table;
    border-left: 2px solid #D6E0E9;
    padding-left: 11px;
    position: relative;
}

main#page-information #sec-history .history_list ul li {
    border-bottom: none;
}

main#page-information #sec-history .history_list ul li:first-child {
    padding-top: 0;
}

main#page-information #sec-history .history_list .history_list-01::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 100px;
    background-color: #D6E0E9;
    position: absolute;
    left: -5px;

}

main#page-information #sec-history .history_list .history_list-02::after {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 100px;
    background-color: #D6E0E9;
    position: absolute;
    left: -5px;
}

/*============================================================
企業理念(#page-philosophy)
*============================================================*/

/* mission vision value
---------------------------------------- */
#page-philosophy #sec-philosophy {
    text-align: center;
}

#page-philosophy #sec-philosophy::before {
    content: none;
}

#page-philosophy #sec-philosophy .item {
    margin-bottom: 56px;
}

#page-philosophy #sec-philosophy .item .ttl {
    color: #0B7CE5;
    text-align: center;
    font-weight: bold;
}

#page-philosophy #sec-philosophy .item .title-lead {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 0;
    line-height: 200%;
}

#page-philosophy #sec-philosophy .item .txt {
    margin-bottom: 32px;
    line-height: 180%;
    font-size: 12px;
}

/* 7つの取り組み
---------------------------------------- */
main#page-philosophy #sec-initiatives {
    background-image: url(../images/company/philosophy/initiatives-back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    color: #fff;
}

main#page-philosophy #sec-initiatives::before {
    content: none;
}

main#page-philosophy #sec-initiatives h2:first-line {
    font-size: 20px;
}

main#page-philosophy #sec-initiatives h2 {
    text-align: center;
    font-size: 36px;
    font-weight: bold;
    line-height: 140%;
    margin-bottom: 40px;
}

main#page-philosophy #sec-initiatives .initiatives_list {
    width: 80%;
    margin: 0 auto 48px;
}

main#page-philosophy #sec-initiatives .initiatives_list .item {
    width: 30.4%;
    text-align: center;
    margin-bottom: 40px;
}

main#page-philosophy #sec-initiatives .initiatives_list .item p {
    font-weight: bold;
}

main#page-philosophy #sec-initiatives .initiatives_list .item:last-child {
    margin: 0 auto;
}

main#page-philosophy #sec-initiatives .initiatives_list .item img {
    width: 104px;
    margin-bottom: 8px;
}

/* 行動規範(#sec-rule)
---------------------------------------- */
main#page-philosophy #sec-rule .rule_list .item {
    width: 45.5%;
}

/* ロゴ(#sec-logo)
---------------------------------------- */
main#page-philosophy #sec-logo .logo {
    width: 320px;
    margin: 0 auto 24px;
    max-width: 100%;
}

main#page-philosophy #sec-logo .title-lead {
    text-align: center;
}


/*============================================================
アクセス(#page-access)
*============================================================*/
/* 共通
---------------------------------------- */
main#page-access .address {
    position: relative;
    padding-left: 25px;
}

main#page-access .address::before {
    content: '';
    background-image: url(../images/company/access/addressicon.png);
    background-size: 18px 20px;
    width: 18px;
    height: 20px;
    display: block;
    position: absolute;
    left: 0;
    top: 6px;
}

main#page-access .parts-btn {
    margin: 0;
    width: 156px;
}

/* 東京本社
---------------------------------------- */
main#page-access #sec-tokyo .upper {
    margin-bottom: 32px;
}

main#page-access #sec-tokyo .upper .txtblock {
    width: 370px;
    max-width: 30%;
}

main#page-access #sec-tokyo .upper .address {
    position: relative;
}

main#page-access #sec-tokyo .upper .tel {
    margin-bottom: 17px;
    padding-left: 25px;
}

main#page-access #sec-tokyo .upper .mapblock {
    width: 100%;
    max-width: 64.3%;
}

main#page-access #sec-tokyo .bottom .item {
    width: 48%;
}

main#page-access #sec-tokyo .bottom .ttl,
main#page-access #sec-tiokyo .bottom .txt {
    font-weight: bold;
}

main#page-access #sec-tokyo .bottom .txt {
    position: relative;
    bottom: 20px;
}

/* 世界中の拠点
---------------------------------------- */
main#page-access #sec-world .item {
    align-items: center;
    margin-bottom: 24px;
}

main#page-access #sec-world .txtblock {
    max-width: 78%;
}

main#page-access #sec-world .txtblock .tel {
    padding-left: 25px;
}

/*============================================================
なぜPRINCIPLE(#page-feature)
*============================================================*/

/* PRINCIPLEの価値（#sec-value）
---------------------------------------- */
main#page-feature #sec-value .bold {
    font-weight: bold;
    font-size: 24px;
}

main#page-feature #sec-value .parts-img {
    padding-top: 8px;
}

/* 大切にしていること(#sec-important)
---------------------------------------- */
main#page-feature #sec-important .ttl {
    font-size: 32px;
    line-height: 180%;
    font-weight: bold;
    margin-bottom: 42px;
    font-feature-settings: "palt";
}

main#page-feature #sec-important .ttl::before,
main#page-feature #sec-important .ttl::after {
    content: '';
    width: 80px;
    height: 2px;
    background-color: #969696;
    display: block;
    margin-bottom: 8px;
    margin-top: 8px;

}

main#page-feature #sec-important .important_list {
    flex-wrap: nowrap;
    display: flex;
    justify-content: space-between;
}

main#page-feature #sec-important .item {
    width: 31.5%;
    color: #fff;
    height: 362px;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    border-radius: 4px;
}

main#page-feature #sec-important .item:first-child {
    background-image: url(../images/feature/feature_important01.jpg);
}

main#page-feature #sec-important .item:nth-child(2) {
    background-image: url(../images/feature/feature_important02.jpg);
}

main#page-feature #sec-important .item:nth-child(3) {
    background-image: url(../images/feature/feature_important03.jpg);
}

main#page-feature #sec-important .item .num {
    font-family: Oswald;
    font-weight: bold;
    font-size: 120px;
    line-height: 180%;
    margin-left: 16px;
}

main#page-feature #sec-important .item .title-lead {
    font-size: 64px;
    font-weight: bold;
    line-height: 90%;
    margin-left: 16px;
    position: relative;
    bottom: 40px;
    font-feature-settings: "palt";

}

main#page-feature #sec-important .item .title-lead::first-line {
    font-size: 24px;
}

/* アプローチ(#sec-approach)
---------------------------------------- */

/* 強み(#sec-point)
---------------------------------------- */
/* 共通 */
main#page-feature .heading .num {
    content: '01';
    color: #E1E1E1;
    font-size: 180px;
    font-weight: bold;
    font-family: Oswald;
    position: absolute;
    z-index: -1;
    top: 0;
    line-height: 100%;
}

main#page-feature #sec-point .heading {
    position: relative;
}

main#page-feature #sec-point .heading {
    position: relative;
    z-index: 2;
}

main#page-feature #sec-point .heading h3 {
    color: #0B7CE5;
    font-size: 44px;
    font-weight: 900;
}

main#page-feature #sec-point .heading .title-lead {
    font-size: 32px;
    font-weight: 900;
    line-height: 180%;
    font-feature-settings: "palt";
}

/* 一気通貫したサービス */
main#page-feature #sec-point .servicearea {
    margin-bottom: 70px;
}

main#page-feature #sec-point .servicearea .item {
    background-size: cover;
    background-repeat: no-repeat;
    width: 23.3%;
    height: 368px;
    color: #fff;
    padding: 24px 12px 0;
    border-radius: 4px;
}

main#page-feature #sec-important .servicearea .item.is-empty {
    height: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
}

main#page-feature #sec-point .servicearea .item .ttl {
    font-size: 32px;
    font-weight: 900;
    text-align: center;
    margin-bottom: 20px;
    line-height: 180%;
}

main#page-feature #sec-point .servicearea .item:last-child .ttl {
    font-size: 22px;
    line-height: 260%;
}

main#page-feature #sec-point .servicearea .item .ttl::after {
    content: '';
    width: 64px;
    height: 4px;
    background-color: #fff;
    margin: 4px auto 0;
    display: block;
}

main#page-feature #sec-point .servicearea .item:first-child {
    background-image: url(../images/feature/feature_point01-1.jpg);
}

main#page-feature #sec-point .servicearea .item:nth-child(2) {
    background-image: url(../images/feature/feature_point01-2.jpg);
}

main#page-feature #sec-point .servicearea .item:nth-child(3) {
    background-image: url(../images/feature/feature_point01-3.jpg);
}

main#page-feature #sec-point .servicearea .item:nth-child(4) {
    background-image: url(../images/feature/feature_point01-4.jpg);
}

/* 専門性の高さ */
main#page-feature #sec-point .specialtyarea_list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}

main#page-feature #sec-point .specialtyarea .item {
    border: 1px solid #e4e4e4;
    margin-bottom: 1rem;
    text-align: center;
    width: 23.3%;
    height: 268px;
    padding-top: 8px;
}

main#page-feature #sec-point .specialtyarea .item img {
    width: 160px;
}

main#page-feature #sec-point .specialtyarea .item .ttl {
    font-size: 18px;
    font-weight: 700;
    line-height: 180%;
    margin-bottom: 4px;
}

main#page-feature #sec-point .specialtyarea .item .txt {
    font-weight: bold;
}

main#page-feature #sec-point .specialtyarea .parts-btn {
    margin: auto 0 0 0;
}

/* 大手企業含むweb解析の実績 (#sec-achievement)
---------------------------------------- */
main#page-feature #sec-achievement {
    background-color: #1F272F;
    color: #fff;
    margin-bottom: 16px;
}

main#page-feature #sec-achievement .achievement_list {
    justify-content: space-between;
    flex-wrap: nowrap;
}

main#page-feature #sec-achievement .item:first-child {
    padding-top: 20px;
    position: relative;
    width: 33%;
}

main#page-feature #sec-achievement .achievement_txtlist {
    align-items: baseline;
}

main#page-feature #sec-achievement .bg_txt {
    font-family: Oswald;
    font-size: 180px;
    display: inline;
    background: linear-gradient(to right, #FFFDF6, #fff 50%, #A8A7A6 75%, #333);
    -webkit-background-clip: text;
    color: transparent;
    font-weight: 400;
    line-height: 1;
}

main#page-feature #sec-achievement .unit {
    font-weight: bold;
}

main#page-feature #sec-achievement .item:first-child .txt {
    font-weight: bold;
    font-size: 20px;
}

main#page-feature #sec-achievement .item:nth-child(2) .txt {
    margin-bottom: 32px;
}

main#page-feature #sec-achievement .item:nth-child(2) {
    width: 65%;
}

main#page-feature #sec-achievement .item .company-list {
    margin-bottom: 32px;
}
main#page-feature #sec-achievement .item .company-list img {
    width: 100%;
}

main#page-feature #sec-achievement .parts-btn {
    margin: 0;
    border: 2px solid #fff;
}

main#page-feature .achievement_link {
    display: table;
    border-bottom: 1px solid #1F272F;
    margin: 0 0 32px auto;
}

/* お客様の声 (#sec-voice)
---------------------------------------- */
main#page-feature #sec-voice {
    margin-bottom: 0;
}

main#page-feature #sec-voice .title-lead {
    color: #0B7CE5;
    font-weight: bold;
}

main#page-feature #sec-voice .ttl {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    margin-bottom: 48px;
}

main#page-feature #sec-voice h3 {
    margin-bottom: 19px;
}

main#page-feature #sec-voice .item {
    width: 47.6%;
    margin-bottom: 48px;
    display: flex;
    flex-direction: column;
}

main#page-feature #sec-voice .item .txt {
    flex-grow: 1;
    margin-bottom: 16px;
    font-size: 12px;
    line-height: 180%;
}

main#page-feature #bottomarea {
    background-color: #1F272F;
    color: #fff;
    padding: 32px 24px;
    border-radius: 0 0 4px 4px;
    margin-bottom: 72px
}

main#page-feature #bottomarea .ttl {
    font-size: 32px;
    line-height: 180%;
    font-weight: bold;
}

main#page-feature #sec-books .book-list-item {
    margin-bottom: 32px;
}

/*============================================================
GAIQとは(#page-gaiq)
*============================================================*/

/* GAIQの特徴(#sec-special)
---------------------------------------- */
main#page-gaiq #sec-special p.txt:nth-of-type(1) {
    margin-bottom: 40px;
}

main#page-gaiq #sec-special .parts-img {
    width: 58%;
}

/* GAIQの受験準備(#sec-test)
---------------------------------------- */
main#page-gaiq #sec-test .parts-btn {
    display: flex;
    align-items: center;
}

main#page-gaiq #sec-test .parts-btn::before {
    content: "";
    display: inline-block;
    background-image: url(../images/common/icon-external-link.svg);
    background-repeat: no-repeat;
    background-size: 16px;
    background-position: left center;
    padding-right: 22px;
    height: 16px;
    position: absolute;
    left: 40px;
}

/* GAIQの受験(#sec-teststep)
---------------------------------------- */
main#page-gaiq #sec-teststep .ttl {
    display: table;
    width: 100%;
    background-color: #EFEFEF;
    padding: 12px;
    margin-bottom: 16px;
}

main#page-gaiq #sec-teststep .ttl h3 {
    display: table-cell;
    vertical-align: middle;
}

main#page-gaiq #sec-teststep .parts-img {
    width: 47.8%;
}

main#page-gaiq #sec-teststep .txt {
    margin-bottom: 24px;
}

/* プリンシプルのGAIQホルダー(#sec-gaiqholder)
---------------------------------------- */
main#page-gaiq #sec-gaiqholder .parts-img {
    width: 38.2%;
}

main#page-gaiq #sec-gaiqholder .txt {
    margin-bottom: 32px;
}

main#page-gaiq #sec-gaiqholder .btnarea .parts-btn {
    margin: 0;
}

main#page-gaiq #sec-gaiqholder .btnarea .parts-btn:first-of-type {
    margin-right: 24px;
}

main#page-gaiq #sec-gaiqholder .btnarea .parts-btn:last-of-type {
    display: flex;
    align-items: center;
}

main#page-gaiq #sec-gaiqholder .btnarea .parts-btn:last-of-type a {
    text-align: right;
    padding-right: 10px;
}

main#page-gaiq #sec-gaiqholder .btnarea .parts-btn:last-of-type::before {
    content: "";
    display: inline-block;
    background-image: url(../images/common/icon-external-link.svg);
    background-repeat: no-repeat;
    background-size: 16px;
    background-position: left center;
    padding-right: 22px;
    height: 16px;
    position: absolute;
    left: 10px;
}

/*============================================================
プライバシーポリシー (#page-privacy)
*============================================================*/

/* 当社の個人情報の取扱に関するお問い合せ(#sec-contact)
---------------------------------------- */
main#page-privacy #sec-contact {
    background-color: #1F272F;
    color: #fff;
}

main#page-privacy #sec-contact a {
    border-bottom: 1px solid #fff;
}

main#page-privacy #sec-contact .info .email img {
    height: 28px;
    padding: 8px 0 0 0;
}
