.breadcrumbs {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 80px 0 0 0;
    background: #fff;
}

.breadcrumbs ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 15px 0;
    width: 100%;
    max-width: 1080px;
    margin: auto;
}

.breadcrumbs li {
    position: relative;
    font-size: 14px;
    line-height: 1.4;
}

.breadcrumbs li:not(:last-child) {
    margin-right: 20px;
}

.breadcrumbs li:not(:last-child)::after {
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: var(--fo-text-main-color);
    position: absolute;
    right: -15px;
    top: 50%;
    transform: translateY(-50%);
}

.breadcrumbs a {
    color: var(--fo-text-main-color);
    text-decoration: none;
    transition: color 0.3s ease;
    padding: 0 20px;
}

.breadcrumbs a:hover {
    color: var(--fo-text-main-color);
    opacity: 0.4;
}

.breadcrumbs span {
    color: var(--fo-text-main-color);
    padding: 0 20px;
}

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
    .breadcrumbs {
        padding: 10px 15px;
    }

    .breadcrumbs li {
        font-size: 12px;
    }

    .breadcrumbs li:not(:last-child) {
        margin-right: 15px;
    }

    .breadcrumbs li:not(:last-child)::after {
        right: -12px;
    }
}

/* ナビゲーションカスタム後のパンくずリストの調整 */
.navi_base_custom.navi_custom + .theme-fo-base > .breadcrumbs {
    padding-top: 100px;
}

.theme-fo-base .breadcrumbs {
    background: #fff;
    max-width: 100%;
    margin: 0
}

.theme-fo-base .breadcrumbs ul {
    width: 100%;
    max-width: 1080px;
    margin: auto;
    padding: 15px 0
}

.theme-fo-base .breadcrumbs ul li a:hover {
    color: var(--fo-text-main-color);
    text-decoration: unset;
    opacity: .4
}

/* .theme-fo-base .breadcrumbs ul li a::after {
    content: "\f105";
    font-family: "FontAwesome";
    color: var(--fo-text-main-color);
    border-top: none;
    border-bottom: none;
    border-left: none;
    position: absolute;
    padding: 0;
    top: 0;
    right: -1px;
    margin-top: 0
} */

.theme-fo-base .breadcrumbs ul li a,.theme-fo-base .breadcrumbs ul li span {
    font-size: 14px;
    color: var(--fo-text-main-color);
    text-decoration: unset;
    padding: 0 20px
}

@media screen and (min-width: 770px) {
    .navi_base_custom.navi_custom+.theme-fo-base>.breadcrumbs+.wrapper.none .contents section:first-child {
        padding-top:calc(80px * var(--fo-spacing-coef) - 30px)
    }
}