@charset "utf-8";

/*===============================================
* body
===============================================*/
body {
    font-family:
        "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Arial,
        "Noto Sans JP", Meiryo, sans-serif;
    line-height: 1.8;
    font-size: 16px;
}

/*===============================================
* header
===============================================*/
#header {
    border-bottom: 1px solid #ddd;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

/* nav
-------------------------------*/
.responsive-nav a {
    font-size: 14px !important;
    font-weight: 700;
}

.global-nav-wrapper .sub-menu .menu-item {
    border: 1px solid #ddd;
}

/* breadcrumbs
-------------------------------*/
.breadcrumbs {
    display: block;
    background-color: #f7f9fa;
    padding: 12px 20px;
    border-radius: 8px;
    margin-bottom: 30px!important;
    font-size: 0!important;
    line-height: 0;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
}

.breadcrumbs #text{
    display: none;
}

.breadcrumbs::-webkit-scrollbar {
    display: none;
}

.breadcrumbs a,
.breadcrumbs strong {
    font-size: 13px;
    line-height: 1.5;
    display: inline-block;
    vertical-align: middle;
}

.breadcrumbs a {
    color: #666;
    text-decoration: none;
    padding: 4px 0;
    transition: color 0.2s;
}

.breadcrumbs a:hover {
    color: #000;
    text-decoration: none;
}

.breadcrumbs a::after {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    transform: rotate(45deg);
    margin: 0 12px;
    vertical-align: 1px;
}

.breadcrumbs strong {
    font-weight: 700!important;
    color: #000;
}

/*===============================================
* main
===============================================*/
/* h
-------------------------------*/
/*--- h2 ---*/
#main h2.wp-block-heading {
    background-color: #333;
    color: #fff;
    padding: 15px 20px;
    margin: 40px 0 24px 0;
    font-size: 22px;
    font-weight: bold;
    border-radius: 2px;
    border: none;
}

/*--- h3 ---*/
#main h3.wp-block-heading {
    border-left: 8px solid #333;
    border-bottom: 1px solid #ccc;
    padding: 10px 15px;
    margin: 32px 0 20px 0;
    font-size: 19px;
    font-weight: bold;
    color: #333;
    background: transparent;
}

#main h3.wp-block-heading:before {
    display: none;
}

/*--- h4 ---*/
#main h4.wp-block-heading {
    border-left: 4px solid #888;
    padding: 8px 12px;
    margin: 24px 0 16px 0;
    font-size: 17px;
    font-weight: bold;
    color: #444;
    border-bottom: none;
}

/*--- h5,h6 ---*/
#main h5.wp-block-heading,
#main h6.wp-block-heading {
    border-bottom: 1px solid #ddd;
    padding-bottom: 6px;
    margin: 20px 0 12px 0;
    font-size: 16px;
    color: #555;
}

/* table
-------------------------------*/
.wp-block-table {
    margin: 2em 0;
    font-size: 14px;
    color: #333;
    border: none !important;
}

.wp-block-table table {
    width: 100%;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    border: 1px solid #e5e5e5 !important;
}

.wp-block-table th,
.wp-block-table td {
    padding: 12px 15px !important;
    border: 1px solid #e5e5e5 !important;
    vertical-align: middle;
    line-height: 1.6;
}

.wp-block-table th {
    background-color: #f9f9f9 !important;
    font-weight: 600;
    color: #444;
    white-space: nowrap;
}

.wp-block-table td {
    background-color: #fff !important;
}

@media screen and (max-width: 768px) {

    .wp-block-table th,
    .wp-block-table td {
        display: block;
        width: 100%;
        border-bottom: none !important;
    }

    .wp-block-table th {
        background-color: #eee !important;
        font-size: 12px;
        padding: 8px 10px !important;
        border-bottom: 1px solid #ddd !important;
    }

    .wp-block-table td {
        padding: 10px !important;
        border-bottom: 1px solid #e5e5e5 !important;
    }
}

/* pagenation
-------------------------------*/
.pagination-wrapper .pagination {
    display: flex !important;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 60px 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

.pagination-wrapper .pagination>li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.pagination-wrapper .pagination>li:first-child>a,
.pagination-wrapper .pagination>li:last-child>a {
    border-radius: 50% !important;
    margin-left: 0 !important;
}

.pagination-wrapper .pagination>li>a,
.pagination-wrapper .pagination>li>span {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0 !important;
    background-color: transparent !important;
    color: #444 !important;
    border: none !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    font-weight: bold;
    transition: background-color 0.2s ease;
}

.pagination-wrapper .pagination>li>a:not(.dots):hover {
    background-color: #f2f2f2 !important;
    color: #000 !important;
}

.pagination-wrapper .pagination>li>span.current,
.pagination-wrapper .pagination>li>a.current {
    background-color: #222 !important;
    color: #fff !important;
    cursor: default;
}

.pagination-wrapper .pagination>li>span.dots {
    color: #ccc !important;
    background-color: transparent !important;
    cursor: default;
}

/*===============================================
* footer
===============================================*/
.copyright {
    color: #fff;
    background-color: #333;
}