/* ページトップボタン */
#page-top {
    border: 1px solid var(--wp--preset--color--sm-accent);;
    border-radius: 100%;
    margin: 0 8px 8px 0;
}
.c-page-top {
    background-color: transparent;
}
svg.svg-inline--fa.fa-chevron-up {
    color: var(--wp--preset--color--sm-accent);
}
.svg-inline--fa {
    height: 0.8em;
}
.c-page-top a {
    font-size: 16px;
}

/* 下層タイトル */
.c-entry__title {
	position: relative;
	display: inline-block;
	padding-bottom: 4px;
    padding-right: 60px;
	border-bottom: solid 2px #e3e1d6;
}

.c-entry__title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	display: block;
	width: 30%;
	border-bottom: solid 2px var(--accent-color);
}

/* PCの右クリック禁止 */
img{
    pointer-events: none;
}
/* 追従ボタン */
.sticky-button-group {
    display: none;
}

@media (min-width: 1024px) {
    .sticky-button-group {
        position: fixed;
        top: 40%;
        right: 0;
        transform: translateY(-50%);
        z-index: 9999;
        flex-direction: column;
        gap: 12px;
    }

    .sticky-button {
        width: 60px;
        height: 170px;
        display: block;
        background-color: #F57E4B;
    }

    .sticky-button a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        color: #fff;
        width: 100%;
        height: 100%;
    }

    .sticky-button .icon {
        font-size: 24px;
        margin-bottom: 6px;
    }

    .sticky-button .btn-text {
        font-size: 16px;
        font-weight: bold;
        text-align: center;
        line-height: 1;
        writing-mode: vertical-rl;
    }
}

@media (max-width: 639px) {
    h2.smb-section__title {
        font-size: 1.6rem;
    }
}

/* ドロワー背景色 */
.c-drawer {
    background-color: #ffffff;
    color: var(--sub-accent-color);
}

/* ドロワーメニュー中央寄せ*/
.c-drawer--overall .c-drawer__inner {
    text-align: center;
}

.custom-drawer-image {
		width: 250px;
}
.c-drawer .c-hamburger-btn__bar {
    background-color: var(--sub-accent-color)
}
/* ------------------------------
    トップページ
------------------------------ */
/* 共通 */
.pi-none {
    pointer-events: none;
}
.justify {
    text-align: justify;
}
:root {
  --wp--preset--color--sm-text: #545454;
}
.jfb-btn .smb-btn__label {
    text-align: center;
}

/* メインビジュアル */
.mv-title {
  font-feature-settings: "palt";
}

.zoom-slider .spider .wp-block-cover__image-background {
    transform: scale(1);
    transition: transform 5s ease-in-out;
}
.zoom-slider .spider__slide[data-active="true"] .wp-block-cover__image-background {
    transform: scale(1.1);
}


/* お知らせtext2 */
.news-list-simple:not(:root) .c-entries--text2 .c-entries__item>a {
    padding-bottom: 2rem;
    padding-top: 2rem
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__body {
    display: flex;
    flex-direction: column;
    letter-spacing: .05rem
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__header {
    margin-top: .75rem;
    order: 2
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__title {
    font-size: .857rem;
    line-height: 2;
    text-align: left
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta {
    font-size: .857rem;
    order: 1
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta>.c-meta {
    display: flex
}
.news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta .c-entry-summary__term {
    background-color: initial;
    border: 1px solid;
    color: var(--accent-color);
    display: inline-block;
    font-weight: 400;
    line-height: 1.2;
    min-width: 100px;
    padding: .25rem .5rem;
    text-align: center
}
.news-list-simple:not(:root) .snow-monkey-taxonomy-posts .c-meta__item--categories {
    display: none
}
@media screen and (min-width: 768px) {
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__body {
        align-items:flex-start;
        flex-direction: row
    }
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__header {
        margin-left: 2rem;
        margin-top: 0
    }
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__title {
        font-size: 1rem
    }
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta {
        font-size: 1rem;
        margin-top: 0
    }
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta>.c-meta {
        flex-wrap: nowrap
    }
    .news-list-simple:not(:root) .c-entries--text2 .c-meta__item--published {
        width: 8.5em
    }
}
@media screen and (min-width: 1024px) {
    .news-list-simple:not(:root) .c-entries--text2 .c-entry-summary__meta .c-meta__item:not(:last-child) {
        margin-right:1.25em
    }
}

/* section-service */
.section-service {
    margin-top: -200px !important;
}
.section-service .smb-section__fixed-background {
    background-color: rgba(255, 255, 255, 0.95); /* 白を80%不透明に */
}

.service-item {
    position: relative;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    height: 200px;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease;
}
.service-title {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.service-details {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    color: white;
    padding: 25px;
    transform: translateY(100%);
    transition: transform 0.4s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.service-item:hover .service-details {
    transform: translateY(0);
}
.service-details h3 {
    border-bottom: 2px solid rgba(255, 255, 255, 0.3);
}
.service-details p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 20px;
    flex-grow: 1;
    text-align: justify;
}
.detail-btn .smb-btn::before{
    display: none;
}

@media (max-width: 768px) {
    .services-grid {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(6, 1fr);
        gap: 20px;
    }
    .service-item {
        height: 180px;
    }
    .service-title {
        font-size: 1.1rem;
    }
    .service-details {
        padding: 20px;
    }
    .service-details h3 {
        font-size: 1.1rem;
    }
    .service-details p {
        font-size: 0.85rem;
    }
}

/* お客様紹介 */


        .slider-container {
            display: flex;
            align-items: center;
            gap: 2rem;
            width: fit-content;
        }

       /* 55個のロゴ用スライダー設定 */
        .scroll-infinity__list--left {
            display: flex;
            align-items: center;
            gap: 3rem;
            white-space: nowrap;
            animation: slideLeft 30s linear infinite;
        }

        .scroll-infinity__list--right {
            display: flex;
            align-items: center;
            gap: 3rem;
            white-space: nowrap;
            animation: slideRight 30s linear infinite;
            margin-top: 2rem;
        }

        .logo {
            flex-shrink: 0;
            width: 150px;
            height: auto;
            background: white;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
            overflow: hidden;
        }


        .logo img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            padding: 10px;
        }

        /* シンプルで確実に動く無限ループアニメーション */
        @keyframes slideLeft {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(-50%);
            }
        }

        @keyframes slideRight {
            0% {
                transform: translateX(-50%);
            }
            100% {
                transform: translateX(0);
            }
        }

        /* レスポンシブデザイン */
        @media (max-width: 768px) {
            .logo {
                width: 100px;
                height: 60px;
            }

            .scroll-infinity__list--left,
            .scroll-infinity__list--right {
                gap: 2rem;
            }

            .scroll-infinity__list--left {
                animation: slideLeft 50s linear infinite;
            }

            .scroll-infinity__list--right {
                animation: slideRight 50s linear infinite;
            }
        }

/* 事例スライダー */
.case-slider {
    margin-top: -80px !important;
}


.case-slider .spider > .spider__arrow {
    top: -15%;
    justify-content: flex-end;
    --spider--arrow-color: #595757;
}

.case-slider .spider__arrow {
    background-color: #fff;
    border-radius: 100%;
    margin-right: 10px;
    height: 36px;
    width: 36px;
}

.case-slider .spider__arrow[data-direction="prev"] {
    left: auto;
    right: 50px;
}

.case-slider .spider__arrow:before {
    height: 8px;
    width: 8px;
}

.case-slider .spider__arrow[data-direction="prev"]:before {
    left: calc(59% - var(--spider--arrow-size) / 2);
    top: calc(51% - var(--spider--arrow-size) / 2);
}

.case-slider .spider__arrow[data-direction="next"]:before {
    top: calc(51% - var(--spider--arrow-size) / 2);
    right: calc(54% - var(--spider--arrow-size) / 2);
}


.case-slider .spider__canvas {
    padding: 0 10px 20px 0;
}

.case-slider .spider__slide {
    box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.36);
}

.case-slider .c-entry-summary {
    height: 100%;
    min-width: 0;
}

.case-slider .c-entry-summary__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;

    width: 100%;
    min-width: 0;

    padding:
        var(--_padding-1)
        var(--_padding1)
        var(--_padding1);

    min-height: 200px;
    height: auto;

    box-sizing: border-box;
    text-align: left;
}


.case-slider .c-entry-summary__header {
    margin-bottom: 4px;
    min-width: 0;
}

.case-slider .c-entry-summary__title {
    min-width: 0;
}

.case-slider .c-entry-summary__content {
    margin-bottom: auto;
    min-width: 0;
}

.case-slider .c-entry-summary__meta {
    width: 100%;
    max-width: 100%;
    min-width: 0;

    margin-top: 10px;

    box-sizing: border-box;
    font-weight: normal;
}


/* ul */
.case-slider .c-entry-summary__meta .c-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;

    width: 100%;
    max-width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;
}


/* li */
.case-slider .c-entry-summary__meta .c-meta__item {
    max-width: 100%;
    min-width: 0;
}



.case-slider span.c-entry-summary__term {
    display: none;
}


/* 非表示にしたカテゴリのli自体も非表示。*/
.case-slider .c-meta__item--categories {
    display: none;
}

.case-slider .c-meta__item--terms {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.case-slider .c-entry-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;

    width: 100%;
    max-width: 100%;
    min-width: 0;

    gap: 3px 6px;
}

.case-slider .c-entry-tags .tag-cloud-link {
    display: inline-block;

    max-width: 100%;

    margin: 0;

    border: none;
    border-radius: 0;

    /*
     * 長いタグでもカードから
     * 横にはみ出さないようにする
     */
    overflow-wrap: anywhere;
    word-break: break-word;
}

.case-slider .c-entry-summary__body,
.case-slider .c-entry-summary__meta,
.case-slider .c-meta,
.case-slider .c-meta__item,
.case-slider .c-entry-tags {
    box-sizing: border-box;
}

/* 640px〜1023pxをタブレットとして2カラムにする */
@media screen and (min-width: 640px) and (max-width: 1023px) {

    .case-slider .spider__slide {
        max-width: calc(50% - var(--entries--carousel--gap, 12px));
        flex: 0 0 calc(50% - var(--entries--carousel--gap, 12px));
    }

}

/* ------------------------------
    会社情報
------------------------------ */
/* 会社概要 */
.is-style-infomation .smb-information__item {
    margin-top: 0
}
.is-style-infomation .smb-information__item>.c-row>.c-row__col:first-child {
    padding-top: 1.5rem
}
.is-style-infomation .smb-information__item>.c-row>.c-row__col:last-child {
    border-bottom: 1px solid #cfcfcf;
    padding-bottom: 1.5rem
}
.is-style-infomation .smb-information__item__label {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.8
}
.is-style-infomation .smb-information__item__body>p {
    line-height: 1.8
}
.is-style-infomation[data-sm-split-column=true] .smb-information__item>.c-row>.c-row__col:first-child {
    border-bottom: 1px solid var(--accent-color);
    padding-bottom: 1.5rem
}
.is-style-infomation[data-sm-split-column=true] .smb-information__item>.c-row>.c-row__col:last-child {
    padding-top: 1.5rem
}
@media screen and (min-width: 640px) {
    .is-style-infomation .smb-information__item>.c-row>.c-row__col:first-child {
        border-bottom:1px solid var(--accent-color);
        padding-bottom: 1.5rem
    }
    .is-style-infomation .smb-information__item>.c-row>.c-row__col:last-child {
        padding-top: 1.5rem
    }
}
@media screen and (min-width: 640px) and (max-width:1023px) {
    .is-style-infomation .smb-information__item>.c-row>.c-row__col--md-1-4 {
        flex-basis:22.5%;
        margin-right: 2.5%;
        max-width: 22.5%
    }
    .is-style-infomation .smb-information__item>.c-row>.c-row__col--md-1-3 {
        flex-basis: 30.8%;
        margin-right: 2.5%;
        max-width: 30.8%
    }
}
@media screen and (min-width: 1024px) {
    .is-style-infomation .smb-information__item>.c-row>.c-row__col:first-child {
        flex-basis:240px;
        margin-right: 2.5rem;
        max-width: 240px
    }
    .is-style-infomation .smb-information__item>.c-row>.c-row__col:last-child {
        flex-basis: calc(100% - 280px);
        max-width: calc(100% - 280px)
    }
}
@media screen and (max-width: 1023px) {
    .is-style-infomation .smb-information__item>.c-row>.c-row__col--1-4 {
        flex-basis:22.5%;
        margin-right: 2.5%;
        max-width: 22.5%
    }
    .is-style-infomation .smb-information__item>.c-row>.c-row__col--1-3 {
        flex-basis: 30.8%;
        margin-right: 2.5%;
        max-width: 30.8%
    }
}
@media screen and (max-width: 1023px) {
  .smb-media-text__figure--fill img {
    object-fit: contain;
    position: static;
  }
}

/* メンバー */
@media screen and (max-width: 1023px) {
    .section-member .wp-block-columns {
        display: block;
        flex-wrap: wrap !important;
    }
    .section-member .title-mtspace {
    margin-top: calc(var(--_margin1) * var(--_margin-top));
}
}
.section-member .smb-panels__item__title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 30px;
}

/* ------------------------------
    事業案内ページ
------------------------------ */
.wp-block-separator.border-thin {
    border-top: 1px solid;
    border-color: #e9e9e9;
}

/* モーダルスタイル */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
}
.modal.show {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
}
.modal-content {
    background-color: white;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    max-width: 900px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
    transform: translateY(20px);
    transition: transform 0.3s ease;
    position: relative;
}
.modal.show .modal-content {
    transform: translateY(0);
}
.close {
    position: absolute;
    top: 20px;
    right: 20px;
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    line-height: 1;
}
.close:hover,
.close:focus {
    color: #333;
}
.modal-header {
    display: flex;
    justify-content: center;
}
@media (max-width: 768px) {
    #eventBox.wp-block-columns {
        padding: 0 !important;
    }
    .close {
        top: 10px;
        right: 10px;
    }
}
/* エディター画面編集 */
.editor-styles-wrapper .modal{
    display:block;
    background-color: transparent;
    opacity: 1;
}
.editor-styles-wrapper .btn-triangle:hover::before {
    border-left: 0 ;
    border-bottom: 0;
}
.editor-styles-wrapper .btn-triangle::before {
    border-left: 0;
    border-bottom: 0;
}
/* ボタン三角 */
.btn-triangle{
    position: relative;
    cursor: pointer;
    overflow: hidden;
    transition: color 0.4s ease;
}
.btn-triangle::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-bottom: 20px solid #7a7a7a;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: bottom right;
}
.btn-triangle:hover::before {
    border-left: 700px solid transparent;
    border-bottom: 400px solid #ececec;
}


/* ------------------------------
    実績紹介ページ
------------------------------ */
.archive .c-entries--panel .c-entry-summary__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column; /* 縦並び */
    padding: var(--_padding-1) var(--_padding1) var(--_padding1);
}
.archive .c-entry-summary__content {
    margin-bottom: auto; /* 上に固定される */
}
.archive .tag-cloud-wrapper {
    margin-top: 6px; /* 下に押し出される */
}


/* ------------------------------
    フッター
------------------------------ */
/* フッターの上の線消す */
.l-footer {
    border-top: 0px;
    overflow: hidden;
}
/* コピーライト色 */
.c-copyright--inverse {
    background-color: #f7f7f7;
    color: #595757;
}
/* フッターナビ上余白 */
.l-footer--default .l-footer-widget-area {
    padding-bottom: 0;
}
/* フッターナビ */
.p-footer-sub-nav .c-navbar {
    justify-content: center;
}
.p-footer-sub-nav {
    background-color: #f7f7f7;
}
/* 下層ページフッター上余白 */
.page:not(.home) .l-footer--default .l-footer-widget-area, .archive .l-footer--default .l-footer-widget-area, .blog .l-footer--default .l-footer-widget-area, .single .l-footer--default .l-footer-widget-area{
    padding-top: 0;
}
/* フッターウィジェット左右余白なし */
.l-footer-widget-area .c-fluid-container {
    padding: 0;
}
/* cta非表示 */
.page-id-110 .section-cta{
    display: none;
}

/* ------------------------------
    お問い合わせフォーム
------------------------------ */
.snow-monkey-form input.smf-text-control__control {
    width: 100%;
}
.snow-monkey-form {
    padding-left: 5px;
    padding-right: 5px;
}
.smf-error-messages {
    color: #f20c10;
    margin-top: var(--_margin-2);
}
.smf-form [data-invalid="1"] {
    border-color: red;
}
[data-screen="confirm"] .input {
    display:none;
}
[data-screen="input"] .confirm,
[data-screen="invalid"] .confirm {
    display:none;
}
.smf-form--business .smf-item__col--label {
    background-color: transparent;
    border-right: none;
}
.smf-form--business .smf-item {
    border: 1px solid #c1c1c1;
    border-left: none;
    border-right: none;
}
.smf-form--business .smf-item:last-child {
    border: none;
}
.smf-form--business .smf-item__col--label {
    border-bottom: none;
}
.checkboxes-policy .smf-item__controls {
    text-align: center;
}
.checkboxes-policy .smf-item__controls p.has-text-align-left.input {
    text-align: center;
}
.address .smf-placeholder{
    width: 100%;
}
.snow-monkey-form .smf-action .smf-button-control__control {
    border-radius: 50px;
    padding: 7px 60px 7px 50px;
    background: #ffffff;
    border: 1px solid  #333333;
    font-weight: bold;
    transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.smf-button-control__control  {
    margin-left: -1rem;
}
.smf-button-control {
    position: relative;
    transition: 0.3s ease-in-out;
}
.smf-button-control:after {
    content: "";
    position: absolute;
    top: 52%;
    right: 2rem;
    display: flex;
    transition: right 0.3s;
    width: 8px;
    height: 8px;
    border-top: solid 2px currentColor;
    border-right: solid 2px currentColor;
    transform: translateY(-50%) rotate(45deg);
}
.smf-button-control:hover:after {
    right: 1.4rem;
}
[data-screen="confirm"] .input {
    display:none;
}
@media (min-width: 640px) {
    .smf-form--business .smf-item__col--label {
        flex: 0 0 15em;
        max-width: 15em;
    }
}
/* メールアドレス確認 */
.custom-error-message {
    position: relative;
    top: 12px;
}


/* ------------------------------
    販路開拓ページ
------------------------------ */
.under-bg {
    margin-top: -100px;
    z-index: 999;
}
@media (min-width: 640px) {
    .smf-form--business .smf-item__col--label {
        flex: 0 0 15em;
        max-width: 15em;
    }
}

@media (max-width: 639px) {
    .step .c-container {
        padding-left: 16px;
        padding-right: 16px;
    }

}

/* ------------------------------
    イベント事業ページ
------------------------------ */
/* フローパネル */
.flow_panels:not(:root)>.c-row {
    --_gap: 3.75rem;
    counter-reset: flow-no;
    margin: calc(var(--_gap)*.5*-1);
}
.flow_panels:not(:root)>.c-row>.c-row__col {
    flex-direction: row;
    margin-bottom: 0;
    padding-bottom: calc(var(--_gap)*.5);
    padding-top: calc(var(--_gap)*.5);
    position: relative;
}
.flow_panels:not(:root)>.c-row>.c-row__col:after {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    width: 0;
}
.flow_panels:not(:root)>.c-row>.c-row__col:last-child:after {
    display: none;
}
.flow_panels:not(:root) .smb-panels__item {
    counter-increment: flow-no;
    padding: 2rem 1.5rem 2rem;
    position: relative;
}
.flow_panels:not(:root) .smb-panels__item:before {
    color: var(--accent-color);
    content: counter(flow-no);
    display: block;
    font-size: 2.5rem;
    font-weight: 700;
    left: .3em;
    line-height: 1;
    position: absolute;
    top: -.25em;
}
.flow_panels:not(:root) .smb-panels__item:after {
    background: var(--accent-color);
    content: "";
    display: block;
    height: 1px;
    left: 1rem;
    position: absolute;
    top: 1rem;
    transform: rotate(-60deg);
    width: 5rem;
}
.flow_panels:not(:root) .smb-panels__item__figure>img {
    max-height: 92px;
    width: auto;
}
.flow_panels:not(:root) .smb-panels__item__body {
    padding: 1.5rem 0 0;
}
.flow_panels:not(:root) .smb-panels__item__title {
    font-weight: 700;
    letter-spacing: .12em;
    line-height: 1.8;
}
.flow_panels:not(:root) .smb-panels__item__content {
    font-size: .875rem;
    letter-spacing: .05em;
    line-height: 2;
    margin-top: 1rem;
    text-align: left;
}
.flow_panels:not(:root)>.c-row>.c-row__col:not(:nth-child(7n)):after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -0.6rem;
    border-width: 0.75rem 0 0.75rem 1rem;
    border-style: solid;
    border-color: transparent transparent transparent #ccc;
    transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
    .flow_panels:not(:root)>.c-row>.c-row__col:after {
        content: "";
        display: block;
        position: absolute;
        bottom: -1rem;
        left: 50%;
        border-width: 1rem 0.75rem 0;
        border-style: solid;
        border-color: #ccc transparent transparent transparent;
        transform: translateX(-50%);
    }
    .flow_panels:not(:root)>.c-row>.c-row__col:not(:nth-child(7n)):after {
        right: auto;
        top: auto;
        bottom: -0.5rem;
        left: 50%;
        border-width: 1rem 0.75rem 0;
        border-color: #ccc transparent transparent transparent;
        transform: translateX(-50%);
    }
}

/* よくある質問 */
.accordion-simple>.smb-accordion__item {
    border: 1px solid #cfcfcf;
    padding: 1.5rem 1.25rem
}
.accordion-simple>.smb-accordion__item:not(:first-child) {
    margin-top: 1.5rem
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title {
    background-color: unset;
    flex-direction: row-reverse;
    font-weight: 700;
    padding: 0
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon {
    height: 15px;
    margin-left: unset;
    margin-right: 1.25rem;
    position: relative;
    width: 15px
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon:after,.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon:before {
    background-color: var(--accent-color,#000);
    content: "";
    display: block;
    position: absolute
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon:before {
    height: 1px;
    left: 0;
    top: 7px;
    width: 15px
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon:after {
    height: 15px;
    left: 7px;
    top: 0;
    width: 1px
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__title__icon svg {
    display: none
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__body {
    border-top: 1px solid #cfcfcf;
    margin-top: 1.5rem;
    padding: 1rem 0 0
}
.accordion-simple>.smb-accordion__item .smb-accordion__item__control:checked+.smb-accordion__item__title .smb-accordion__item__title__icon {
    transform: rotate(45deg);
    transform-origin: center
}

@media screen and (min-width: 768px) {
    .accordion-simple>.smb-accordion__item {
        padding-left:2.5rem;
        padding-right: 2.5rem
    }
    .accordion-simple>.smb-accordion__item .smb-accordion__item__body {
        padding-top: 1.5rem
    }
}

/* 沿革2 */
.timeline {
    position: relative;
}
.timeline .smb-information__body {
    position: relative;
}
.timeline .smb-information__item {
    position: relative;
}
.timeline-date.smb-information__item {
  overflow: visible;
  padding: 0;
}
.timeline-content {
    position: relative;
    width: 100%;
    padding-left: 30px;
}
.timeline .smb-information__body::before {
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: calc(25% + 7px);
    width: 1px;
    background: var(--sub-accent-color);
}
.timeline-content::before {
    content: "";
    width: 12px;
    height: 12px;
    background: var(--accent-color);
    position: absolute;
    left: -6px;
    top: 8px;
    border-radius: 50%;
    z-index: 1;
}
@media (min-width: 640px) and (max-width: 760px) {
    .timeline .c-row__col--md-1-4,
    .timeline .c-row__col--md-2-8,
    .timeline .c-row__col--md-3-12 {
        --_item-width: 16%;
    }
    .timeline .c-row__col--md-3-4,
    .timeline .c-row__col--md-6-8,
    .timeline .c-row__col--md-9-12 {
        --_item-width: 84%;
    }
    .timeline-content {
        padding-bottom: 20px !important;
    }
    .timeline .smb-information__body::before {
        left: calc(16% + 4px);
    }
}
@media (max-width: 639px) {
    .timeline .smb-information__item {
        margin-top: 30px;
    }
    .timeline .c-row > .c-row__col {
        padding-left: 22px;
        margin-bottom: 0;
    }
    .timeline .smb-information__item__label {
        margin-left: 20px;
    }
    .timeline-content {
        padding-left: 24px;
    }
    .timeline-content::before {
        left: -6px;
        top: 10px;
    }
    .timeline .smb-information__body::before {
        left: 7px;
        top: 24px;
        bottom: 8px;
    }
	.timeline-date .timeline-content {
	    margin-bottom: 20px;
  	}
}

/* snsアイコン */
.sns-link .svg-inline--fa {
    font-size: 30px;
    color: #686866;
}

/* サブタイトル */
.c-entry__title__subtitle {
	display: block;
	margin-bottom: 0px;
	font-size: 16px;
}


/* 実績紹介タグフィルター */

.achievement-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 48px;
}


/* ボタン */
.achievement-filter__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 100px;
	padding: 8px 16px;
	border: 1px solid var(--accent-color);
	background-color: #fff;
	color: var(--accent-color);
	font-size: 1rem;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;

	transition:
		background-color .2s ease,
		color .2s ease,
		border-color .2s ease;
}


/* hover */
.achievement-filter__button:hover {
	background-color: var(--accent-color);
	border-color: var(--accent-color);
	color: #fff;
	text-decoration: none;
}


/* 選択中 */
.achievement-filter__button.is-active {
	background-color: var(--accent-color);
	border-color: var(--accent-color);
	color: #fff;
}

@media (max-width: 639px) {
	.achievement-filter {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-bottom: 32px;
	}

	.achievement-filter__button {
		width: 100%;
		min-width: 0;
		min-height: 46px;
		padding: 10px 8px;
		font-size: 14px;
		line-height: 1.4;

		white-space: normal;
	}

	/* 「すべて」は1段いっぱい */
	.achievement-filter__button--all {
		grid-column: 1 / -1;
	}

	/* インフルエンサーマーケティングも1段いっぱい */
	.achievement-filter__button--wide {
		grid-column: 1 / -1;
	}

}