/* ① 管理バーを重ねて表示（フロント） */
/* html { margin-top: 0 !important; }       
#wpadminbar { position: fixed; top: 0; }  */

/* アンカーリンクのずれ対策（任意） */
/* :root { --wp-admin-bar: 32px; }
@media (max-width: 782px){ :root { --wp-admin-bar: 46px; } }
html { scroll-padding-top: var(--wp-admin-bar); }  */

/* 移植してきた静的HTMLページでページ内リンクを使いたい時用 */
.pfv-btn-list.no-icon {
    width: auto;
    display: flex !important;
    flex-wrap: wrap;
    /* ← 要素の折り返しを許可 */
    align-items: center !important;
    justify-content: left !important;
    list-style: none;
    margin: 0 auto;
    padding: 0;
}

.pfv-btn-list.no-icon li {
    /* 1行に4つ収まるように、幅を25%に指定 */
    flex: 0 0 25%;
    box-sizing: border-box;
    /* ← paddingを含んだ幅で計算するため追加 */
    text-align: center;
    padding: 0 1.5rem;
    /* min-width: 25%; は flexプロパティで指定するため不要になります */
}

.pfv-btn-list.no-icon li a {
    padding: 1.55rem 2.5rem 1.55rem 2rem;
    text-decoration: none;
    /* width: auto; */
    min-width: 210px;
    text-align: center;
}

/* 画面幅が768px以下の場合（スマホなど）に適用 */
@media screen and (max-width: 991px) {
    .pfv-btn-list.no-icon {
        width: auto;
        display: flex !important;
        flex-wrap: wrap;
        /* ← 要素の折り返しを許可 */
        align-items: center !important;
        justify-content: center !important;
        list-style: none;
        margin: 0 auto;
        padding: 0;
    }

    .pfv-btn-list.no-icon li {
        /* 1行に2つ表示するため、幅を50%に変更 */
        flex: 0 0 50%;
    }

    .pfv-btn-list.no-icon li a {
        padding: 1rem 0 1rem 0 !important;
        text-decoration: none;
        /* width: auto; */
        min-width: 160px;
        text-align: left;
    }
}


/*  よくある質問のアコーディオン */
.accordion_qa {
    /* margin: 3em auto; */
    max-width: 100vw;
}

.accordion_qa .toggle {
    display: none;
}

.accordion_qa .option {
    position: relative;
    margin-bottom: 0.3em;
}

.accordion_qa .title,
.content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}

.accordion_qa .title {
    border: solid 1px #8b8888;
    padding: 0.6em 1em;
    display: block;
    color: #333;
    /* font-weight: bold; */
    font-size: 1rem;
}

.accordion_qa .title .title_q {
    color: #14A83B;
    font-size: 1.4rem;
    font-weight: bold;
    padding-right: 0.5em;
}

.accordion_qa .title::after,
.accordion_qa .title::before {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 1.25em;
    width: 2px;
    height: 0.75em;
    background-color: #999;
    transition: all 0.3s;
}

.accordion_qa .title::after {
    transform: rotate(90deg);
}

.accordion_qa .content {
    max-height: 0;
    overflow: hidden;
}

.accordion_qa .content p {
    margin: 0;
    padding: 0.5em 1em 1em 3em;
    /* font-size: 0.9em; */
    line-height: 1.5;
}

.accordion_qa .content p::before {
    content: "A";
    position: absolute;
    left: 0.75em;
    top: 0.2em;
    color: #a8146d;
    font-size: 1.4rem;
    font-weight: bold;
}

.accordion_qa .toggle:checked+.title+.content {
    max-height: 500px;
    transition: all 1.5s;
}

.accordion_qa .toggle:checked+.title::before {
    transform: rotate(90deg) !important;
}

@media screen and (max-width: 428px) {
    .accordion_qa {
        max-width: 100%;
    }

    .accordion_qa .title {
        padding: 0.6em 2em 0.6em 1em;
    }
}





/* 展示会出展情報 */
section#exhibition .container {
    padding: 0 2rem;
}

section#exhibition .contents-wrapper {
    margin-top: 5rem;
    margin-bottom: 3rem;
}

section#exhibition h2 span::before {
    width: 108px
}

section#exhibition a {
    color: var(--bs-black);
    text-decoration: none;
}

section#exhibition a:hover .card-detail {
    opacity: 0.7;
}


section#exhibition .card {
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    margin-bottom: 3rem;
}

section#exhibition .card:hover {
    transform: none;
}

section#exhibition .card .card-pic {
    position: relative;
}

section#exhibition .card .card-pic {
    background: linear-gradient(to left, var(--bs-light) 50%, transparent 50%);
}



section#exhibition .card .card-detail {
    margin-top: 3rem;
    background: var(--bs-light);
    position: relative;
}

section#exhibition .card .card-detail::after {
    content: url(../img/icon-arrow-box-white.svg);
    transform: scale(0.5);
    position: absolute;
    bottom: 0rem;
    right: 0.5rem;
}

section#exhibition .card picture {
    overflow: hidden;
    display: block;
    padding-bottom: 3rem;
}

section#exhibition .card picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

section#exhibition .card-body {
    padding: 1.5rem 2rem;
}



section#exhibition h3.card-title {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.6;
    color: var(--bs-primary);
    margin: 1.5rem 0 1.0rem;
}

section#exhibition .card-text {
    line-height: 2.0 !important;
    display: block;
    margin-bottom: 2rem;
}

section#exhibition .card-date {
    font-size: 1.2rem;
    line-height: 1.0 !important;
    margin-bottom: 0.3rem;
    /* position: absolute;
    bottom: -2rem; */
}

section#exhibition .card-date::before {
    content: "開催期間";
    font-size: 0.9rem;
    background-color: var(--bs-yellow-green);
    display: inline-block;
    padding: 0.3rem 0.7rem;
    margin-right: 1rem;
    color: var(--bs-white);
    text-align: center;
}

@media (max-width: 1199px) {
    section#exhibition .card .card-pic {
        background: none;
    }

    section#exhibition .card picture {
        padding-bottom: 0;
    }

    section#exhibition .card .card-detail {
        margin-top: 0;
    }
}

@media (max-width: 991px) {
    section#exhibition .container {
        padding: 0 1.5rem;
    }

    section#exhibition .contents-wrapper {
        margin-top: 3rem;
    }

    section#exhibition .card .card-pic {
        background: linear-gradient(to left, var(--bs-light) 93%, transparent 14%);
        background-position: 0px 100%;
        background-size: 100% 80%;
        background-repeat: no-repeat;
        padding: 0 1.5rem 0 0;
    }

    section#exhibition .card .card-detail {
        background: linear-gradient(to left, var(--bs-light) 93%, transparent 14%);
        margin-top: -1px;
    }

    section#exhibition .card-body {
        padding: 1.5rem 1.5rem 1.5rem 4.8rem;
    }

    section#exhibition h3.card-title {
        font-size: 1.125rem;
        margin: 0 0 1rem;
    }

    section#exhibition .card-date {
        font-size: 1rem;
        line-height: 1.6 !important;
        margin-bottom: 1.5rem;
    }

    section#exhibition .card-date::before {
        display: block;
        width: 30%;
        margin-bottom: 0.5rem;
        line-height: 1.0 !important;
    }

    section#exhibition .card-date span {
        display: block;
    }
}



/* iframeの上揃え */
.contentArea.index.article iframe html {
    display: block;
    vertical-align: top;
    align-items: flex-start;
}

/* 念のため、親要素がflexの場合の対策 */
.contentArea.index.article html {
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

@media (max-width: 539px) {
.contentArea.index.article html {
    align-items: flex-start !important;
  }
}