#tab-contents .tab-contents-item {
    display: none;
}
#tab-contents .tab-contents-item.active {
    display: block;
}
.tab-btn .btn a {
    cursor: pointer;
}
.tab-btn .btn.active a {
    font-weight: bold;
}

article{ margin-bottom: 128px; }

article .box{ margin-bottom: 96px; }

article h2{ padding: 12px 24px; margin-top: 40px; background: var(--beige); font-size: 24px!important; text-align: left; }

.tab-btn{ display: flex; justify-content: center; align-items: center; gap: 32px; margin-top: 40px; }

.tab-btn.content-nav.fixed{ top: 40px; }

.tab-btn.content-nav.fixed a{ font-size: 16px; }

.tab-btn .btn{ 
    line-height: 40px;
    position: relative;
}

.tab-btn .btn a{
    padding-left: 17px;
    font-size: 20px;
    font-weight: 600;
    transition: all .3s ease-in-out;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 4px;
}

.tab-btn .btn a::before {
    content: '';
    width: 8px;
    height: 8px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    position: absolute;
    left: 0;
    top: 17px;
    transform: rotate(135deg);
    transition: all .3s;
}

.tab-btn .btn a:hover::before{ top: 21px; }

.tag{ display: flex; gap: 8px; padding-left: 24px; margin: 24px 0; }

.tag li{ font-weight: 600; }

.tag .shizen{ color: #077a1e; }
.tag .career{ color: #ff9059; }
.tag .shokuno{ color: #ffb74d; }

.access ul{
    display: flex;
    justify-content: space-between;
}

.access li.img{ width: 54%; height: 360px; border: 1px solid var(--beige); }

.access li img{ object-position: top; }

.access li iframe{ width: 100%; height: 100%; }

.access li.txt{ width: fit-content; }

.access li p{
    margin-bottom: 24px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
}

.access li p .shi{
    margin-left: 102px;
}

.access dl:last-child{
    margin-top: 24px;
}

.access dt{
    width: 432px;
    margin-bottom: 8px;
    background: var(--beige);
    font-size: 18px;
    font-weight: 600;
}

.access dd{
    width: fit-content;
    padding-left: 8px;
    text-align: left;
    line-height: 2;
}

.gallery{ display: flex; gap: 16px; margin: 32px auto; }

.gallery li{ width: 33%; }

.is-layout-flex.wp-block-buttons-is-layout-flex{ justify-content: flex-end; }

.arrow-btn .wp-block-button__link{ display: block; width: 192px; }

.demae ul{ display: flex; gap: 32px; margin-top: 40px; }

.demae .img{ width: 36%; }

.demae .txt{ display: flex; flex-direction: column; justify-content: space-between; }

.demae .txt p{ text-align: left; }

@media (max-width: 979px) {

    .tab-btn.content-nav.fixed{ top: 17.067vw; margin: 0; }

    article{ margin-bottom: 0; }

    article .box{ margin-bottom: 21.333vw; }

    .tab-btn{ gap: 4.267vw; margin: 5.333vw 0; }

    .tab-btn .btn a{ font-size: 3.733vw; }

    article h2{ padding: 3.2vw 5.333vw; margin-top: 0; }

    .tag{ padding-left: 0; margin: 3.2vw 0; }

    .access ul,.demae ul{ flex-direction: column; }

    .tag li{ font-size: 3.2vw; }

    .access li.img{ width: 100%; height: 42.667vw; }

    .access li p{ margin: 3.2vw 0; }

    .access dt,.demae .img{ width: 100%; }

    .gallery{ gap: 2.133vw; margin: 3.2vw auto 0; }

    .demae ul{ margin-top: 5.333vw; gap: 4.267vw; }

    .demae .is-layout-flex.wp-block-buttons-is-layout-flex{ margin: 5.333vw 0 12.8vw; }

}

@media(max-width: 979px) and (min-width: 743px)  {

    .content-nav li a::before{ width: 20px; height: 20px; }

}