/*
Theme Name: TCD GENESIS Child
Template: genesis_tcd103
Version: 1.0.0
*/

/* フッター追加バナーエリア ---------------------------------------- */
#footer_extra_banners {
    padding: 150px 0;
    background: #eee;
}
#footer_extra_banners .footer_extra_banners_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    padding: 0 100px;
}
@media screen and (max-width: 1391px) {
    #footer_extra_banners .footer_extra_banners_list {
        padding: 0 60px;
    }
}
@media screen and (max-width: 1100px) {
    #footer_extra_banners .footer_extra_banners_list {
        padding: 0 40px;
    }
}
@media screen and (max-width: 800px) {
    #footer_extra_banners {
        padding: 40px 0;
    }
    #footer_extra_banners .footer_extra_banners_list {
        padding: 0 20px;
    }
}
#footer_extra_banners a.extra_banner_item {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    text-decoration: none;
}

/* Swiper カルーセル無効化（静的レイアウトに変更） -------------------- */

/* ブログ一覧: グリッド表示 */
.blog_carousel_wrap { overflow: visible !important; }
.blog_carousel.swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    transform: none !important;
    width: auto !important;
}
.blog_carousel.swiper-wrapper .swiper-slide { width: auto !important; margin: 0 !important; }

/* ニュース一覧: 縦並び */
.news_carousel_wrap { overflow: visible !important; }
.news_carousel.swiper-wrapper {
    display: block !important;
    transform: none !important;
    width: auto !important;
}
.news_carousel.swiper-wrapper .swiper-slide { width: 100% !important; margin: 0 0 1px !important; }

/* ニュースカテゴリーボタン: 横並び（折り返しあり） */
.news_category_button { overflow: visible !important; }
.news_category_button .swiper-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    transform: none !important;
    width: auto !important;
    gap: 10px !important;
}
.news_category_button .swiper-slide { width: auto !important; }

/* スクロールバー非表示 */
.genesis_carousel_scrollbar { display: none !important; }

/* ニュース・ブログ詳細ページ: サイドバーなし全幅レイアウト ----- */
.single-news #main_col,
.single-post #main_col { width: 100%; }

/* post詳細: サムネイル非表示 --------------------------------- */
.single-post #single_post_header_image { display: none !important; }

/* Vimeo埋め込み: アスペクト比維持・横幅100% --------------- */
.wp-block-embed-vimeo .wp-block-embed__wrapper {
    position: relative;
    padding-top: 56.25%; /* 16:9 */
    height: 0;
    overflow: hidden;
}
.wp-block-embed-vimeo .wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/* /my-account/ 登録リンクボタン ----------------------------- */
.user-registration-register {
    text-align: center;
    margin-top: 16px;
}
.user-registration-register a.q_custom_button {
    width: auto !important;
    padding: 0 2em !important;
    color: #fff!important;
}

/* ヘッダーSNSボタン ----------------------------------------- */
#global_menu {
    right: 40px;
}
/* PC(1251px以上): #global_menuの右隣・サーチボタンの左に配置 */
@media screen and (min-width: 1251px) {
    body.header_type2.active_header #global_menu > ul > li.menu-item-280 a, body.header_type2.header_fixed #global_menu > ul > li.menu-item-280 a {
        background: #b02f5e;
    }
    body.header_type2.active_header #global_menu > ul > li.menu-item-280 a, body.header_type2.header_fixed #global_menu > ul > li.menu-item-280 a {
        color: #fff;
    }
    body:not(.home) #global_menu > ul > li.menu-item-280 {
        background: #b02f5e;
    }
    body:not(.home) #global_menu > ul > li.menu-item-280 a {
        color: #fff;
    }
    #header #header_sns {
        position: absolute;
        top: 0;
        right: 40px; /* サーチボタン80px + 余白10px */
        height: 80px;
        display: flex;
        align-items: center;
        padding: 0;
        margin: 0;
        list-style: none;
    }
    #header #header_sns li {
        margin: 0 5px;
    }
    /* SNSボタン分(~100px)だけグローバルメニューを左にずらす */
    /* ※ SNSアイコン数に応じて right 値を調整してください     */
    #global_menu {
        right: 160px !important;
    }
}
/* SP: ドロワーメニューを使うため非表示 */
@media screen and (max-width: 1250px) {
    #header #header_sns { display: none !important; }
}

/* ハンバーガーメニュー（ドロワー）表示修正 ------------------- */
@media screen and (max-width:1250px) {
    html.open_menu #drawer_menu {
        display: block !important;
        transform: translate3d(0,0,0) !important;
        pointer-events: auto !important;
    }
}
@media screen and (max-width:600px) {
    html.open_menu #container {
        transform: translate3d(-100%,0,0) !important;
    }
    html.open_menu #header {
        transform: translate3d(-100%,0,0) !important;
    }
}

/* ---------------------------------------------------------------- */

#footer_extra_banners a.extra_banner_item img {
    width: 100%;
    height: auto;
    display: block;
}
