@charset "utf-8";
/*共通設定*/
/*終わり*/  


#contents .inner {
    justify-content: center;
}

.special-fv-wrap {
    margin-bottom: 30px;
}

.special-txt {
    margin-bottom: 30px;
    color: #555;
}

.news dt {
    color: #555;
}

.special-banner-wrap {
    margin-top: 30px;
}

.special-banner-flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
}

.special-banner-img-wrap-01 {
    width: 49%;
}

.special-banner-img-wrap-02 {
    margin-top: 2%;
}


/* モーダルの基本スタイル */
.Mb80{
    position: relative;
}

/* モーダル全体（背景含む） */
.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    display: none; /* is-active が付くまで非表示 */
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

/* JS で付与されるクラス */
.modal-overlay.is-active {
    display: flex;
}

/* モーダル内コンテンツ */
.modal-content {
    position: relative;
    background: #fff;
    padding: 40px;
    width: 90vw;
    height: 90vh;
    overflow: hidden;
    z-index: 10000; /* 背景より前 */
}

/* 動画サイズ調整 */
.modal-content video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 閉じるボタン */
.modal-close {
    position: absolute;
    top: 6vh;
    right: 5vw;
    background: #fff;
    color: #555;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    z-index: 10001; /* コンテンツより前 */
    box-shadow: 0 2px 6px rgba(0,0,0,0.3);

    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    padding: 0;
}

/* 閉じるボタンのホバー */
.modal-close:hover {
    background: #f0f0f0;
}



/*終わり*/

/*タブレット*/
@media (max-width: 1024px) {  
/*共通設定*/
/*終わり*/  


/* モーダル内コンテンツ */
    .modal-content {
        height: 50vh;
    }

/* 閉じるボタン */
    .modal-close {
        top: 15vh;
        right: 5vw;
        width: 48px;
        height: 48px;
        font-size: 40px;
    }
/*終わり*/ 
}
  
  
/*スマホ*/
@media (max-width: 599px) {
/*共通設定*/
/*終わり*/  


/* モーダル内コンテンツ */
    .modal-content {
        padding: 24px 5vw;
    }

/* モーダル内コンテンツ */
    .modal-content {
        width: 90vw;
        height: auto;
    }


/* 動画サイズ調整 */
    .modal-content video {
        display: block;
        width: 100%;
        height: auto;
        object-fit: inherit;
    }

/* 閉じるボタン */
    .modal-close {
        top: 22%;
    }

/*終わり*/  
}
