/* ========================================
    2026.03 add for Smartphone-compatible
 ======================================== */

html, body {
    overflow-x: hidden;
    width: 100%;
}

.pc{display: block;}
.sp{display: none;}

.news_label{
    border: #66663380 1px solid;
    width: 85%;
    height: 23px;
    padding: 0 2px;
    margin-bottom: 2px;
    display: flex;
    justify-content: space-between;
}

.news_label img:nth-child(1){
    height: 23px;
    object-fit: contain;
}

.news_label img:nth-child(2){
    height: 23px;
    object-fit: contain;
}

@media (max-width: 960px) {
    .pc{display: none;}
    .sp{display: block;}

    /* ページ全体にかかっているcontainer */
    .container{
        width: 95%;
        max-width: 920px;
        margin: 0 auto;
        box-sizing: border-box;
    }

    /* mainエリアの高さ保持 */
    .wood_long{
        height: auto;
    }

    .news_long{
        transform: translateY(-1%);
    }

    .news_label{
        height: 27px;
    }

    .news_label img:nth-child(1){
        height: 27px;
    }

    .news_label img:nth-child(2){
        height: 27px;
    }
}


/* =================================
    トップページ index.html
 =================================== */
@media (max-width: 768px) {
    .p_top *:not(header):not(header *):not(.kv *){
        float: none !important;
    }

    .slick-box{
        width: 100%;
        max-width: 920px;
    }

    .content {
        display: flex;
        flex-direction: column;
        background-image: none;
    }

    .wood_long {
        width: 90%;
        height: auto;
        margin-right: auto;
        margin-left: auto;
    }

    /* お知らせ背景画像 */
    .wood_long{
        padding: 30px 0 0 0;
        height: auto;
        background-image: url(../images/index_main_long_4.png);
    }

    .wood_long_container{
        height: 500px;
        display: flex;
        flex-direction: column;
    }

    /* お知らせ */
    .news_long{
        width: 80%;
        padding-left: 0;
        margin: 0 auto;
    }

    .news_label{
        width: 94%;
    }

    .news_label img:nth-child(1){
        height: 24px;
    }

    .news_label img:nth-child(2){
        height: 24px;
    }

    .infobox-c{
        width: 100%;
    }

    /* バナー */
    .box_flex{
        display: flex;
        align-items: center;
        flex: 1;
        transform: translateY(-8px);
    }

    .box_wrap{
        width: 90%;
        max-width: 520px;
        display: grid;
        align-items: center;
        gap: 1%;
        grid-template-columns: repeat(auto-fit, minmax(min(126px, 48%), 1fr));
        justify-content: center;
        padding: 0;
        margin: 0 auto;
    }
    .box{
        margin: 2px auto 0 auto;
    }
    .box a{
        display: block;
    }

    /* 開館時間・アクセスマップ */
    .accessmap{
        width: 90%;
        max-width: 520px;
        height: auto;
        margin-top: 30px;
        margin-left: auto;
        margin-right: auto;
    }
    .accesstxt {
        width: auto;
    }
    .accesstxt,.gmap{
        margin-left: auto;
        margin-right: auto;
    }

    .accessmaptitle{
        width: 100%;
        height: 24px;
        overflow: hidden;
    }

    .accessmaptitle img{
        width: 96%;
        height: 100%;
        border-radius: 5px;
        object-fit: cover;
        object-position: left top;
    }

    .gmap{
        width: 94%;
        margin: 0;
        padding: 0 0 0 1%;
    }

}


/* =================================
   フッター fotter.php
 =================================== */
.footer_content {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    color: #666633;
    padding: 14px 0 20px;
    background-color: #F9F8C8;
    background-image: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 3px,
        #FCFBDF 3px,
        #FCFBDF 6px
    );
}

/* 施設情報エリア */
.info_box {
    width: 50%;
    max-width: 300px;
}

.info_box .info_name {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 4px;
}

.info_box .info_ad {
    font-size: 14px;
    line-height: 1.2;
    margin: 0;
}

/* メルマガ購読ボックス */
.mag_box {
    width: 50%;
    max-width: 264px;
    background: #fff;
    border: 1px solid #666633;
}

.mag_header {
    background-color: #DDF3DD;
    width: 100%;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #666633;
}

.mag_header span {
    font-size: 12px;
    font-weight: bold;
    padding-left: 0.5em;
}

.mag_header img{
    width: 18px;
    height: 13px;
    object-fit: contain;
}

.mag-cont {
    width: 90%;
    max-width: 250px;
    padding: 8px 0;
    margin: 0 auto;
}

.mag_title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 4px;
    display: block;
}

.mag_desc {
    font-size: 14px;
    margin-bottom: 8px;
}

/* 購読ボタン */
.mag-button {
    width: 100%;
    max-width: 240px;
    margin: 0 auto;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-weight: 550;
    background-color: #FDE642;
    color: #64695F;
    text-decoration: none;
    border-radius: 6px;
    transition: 0.3s;
}

.mag-button:visited ,
.mag-button:active,
.mag-button:focus{
    color: #64695F;
    text-decoration: none;
}

.mag-button:hover {
    opacity: 0.7;
}


@media (max-width: 960px) {

    .footer{
        background-image:none;
        background: #F0F0D7;
    }

    .footer-nav {
        background-color: #C7C794;
        border-radius: 0 0 30px 30px;
        padding: 4px 8px;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 20px;
    }

    ul.f_oo {
        /* max-width: 920px; */
        width: 100%;
        height: auto;
        padding-bottom: 0.5rem;
    }

    ul.f_oo li:first-child {
        height:auto;
        margin-left: 0;
    }

}

@media (max-width: 768px) {
    .footer_content {
        flex-direction: column-reverse;
        justify-content: center;
    }
    .info_box {
        width: 90%;
    }
    .mag_box {
        width: 90%;
        max-width: 300px;
    }
    ul.f_oo {
        padding-top: 0.5em;
        padding-bottom: 0.5rem;
    }
    ul.f_oo li{
        font-size: 12px;
        line-height: 1.75;
        margin: 0px 10px;
    }
}