@charset "UTF-8";

/*! tabiken-theme-bundle FILE_ID=20260406-a — 本番プレビューでこの行を検索。旧 tabiken-top-extensions.css からリネーム（CDN パスキャッシュ回避） */

/* フロントページのみ：style.min の .header__nav（space-between / width:75%）を子テーマヘッダー相当に合わせる */
@media (min-width: 768px) {
    body.tabiken-front .header__inner.header__flex {
        align-items: center;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    body.tabiken-front .header__head {
        margin-bottom: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    body.tabiken-front .header__head h1 {
        margin: 0;
    }

    body.tabiken-front .header__nav {
        width: auto;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        min-width: 0;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -ms-flex-align: center;
        align-items: center;
        gap: 0.75rem;
        margin-top: 0;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    body.tabiken-front .header__nav .header__nav-global__btn {
        display: block;
        width: auto;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        margin-bottom: 0;
    }

    body.tabiken-front .header__nav .header__nav-global__btn img {
        display: block;
        width: auto;
        height: 65px;
        max-height: none;
        -o-object-fit: contain;
        object-fit: contain;
    }
}

/* トップ「留学する国を探す」コンパクト：画像・国名・CTAのみ、4列で折り返し */
.block-seek.block-seek--compact .block-seek__intro {
    max-width: 40rem;
    margin: 0 auto;
    font-size: calc(15 / 16 * 1rem);
    color: #333;
}

.block-seek.block-seek--compact .block-seek__list--compact {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin-top: 1.75rem;
    width: 100%;
}

.block-seek.block-seek--compact .block-seek__list--compact > .block-seek__list__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: stretch;
    align-items: stretch;
    box-sizing: border-box;
    width: auto;
    margin-bottom: 0;
    -ms-flex: 0 0 calc(25% - 0.9375rem);
    flex: 0 0 calc(25% - 0.9375rem);
    max-width: calc(25% - 0.9375rem);
    min-width: 0;
}

.block-seek.block-seek--compact .block-seek__thumb {
    display: block;
    border-radius: 8px;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    margin-bottom: 0.75rem;
}

.block-seek.block-seek--compact .block-seek__thumb:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.block-seek.block-seek--compact .block-seek__thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
    vertical-align: middle;
}

.block-seek.block-seek--compact .block-seek__title {
    font-size: calc(18 / 16 * 1rem);
    text-align: center;
    margin: 0 0 0.75rem;
}

.block-seek.block-seek--compact .block-seek__link {
    margin-top: 0;
}

@media (max-width: 991.98px) {
    .block-seek.block-seek--compact .block-seek__list--compact > .block-seek__list__item {
        -ms-flex: 0 0 calc(50% - 0.625rem);
        flex: 0 0 calc(50% - 0.625rem);
        max-width: calc(50% - 0.625rem);
    }
}

@media (max-width: 575.98px) {
    .block-seek.block-seek--compact .block-seek__list--compact {
        display: -ms-flexbox;
        display: flex;
    }

    .block-seek.block-seek--compact .block-seek__list--compact > .block-seek__list__item {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/* block-seek：アイルランド（親テーマTOP等・style-il 未読込ページ用） */
.block-seek__list__item.il .block-seek__title,
.block-seek__list__item.il .block-seek__title a {
    color: #169b62;
}

.block-seek__list__item.il .block-seek__link {
    background-color: #169b62;
}

.block-seek__list__item.il .block-seek__link:hover {
    background-color: #11774a;
}

/* block-info：アイルランド */
.block-info__sec.il .block-info__title .color,
.block-info__sec.il .block-info__title .icon {
    color: #169b62;
}

.block-info__sec.il .block-info__sec__container {
    background-color: #81c1a4;
}

.block-info__sec.il .block-info__sec__container .link-list__item .icon {
    color: #169b62;
}

.block-info__sec.il .block-info__sec__container .link-list__item a:hover {
    color: #169b62 !important;
}

/* TOP（body.base）留学情報：地図位置 */
body.base .block-info__sec.il .block-info__flex .map {
    top: auto;
    bottom: 0;
    left: auto;
    right: -300px;
}

body.base .block-info__sec.ph .block-info__flex .map {
    top: auto;
    bottom: 0;
    left: -300px;
    right: auto;
}

/* 総合TOP：アイルランド留学ブログ */
.block-blog.il {
    background: #81c1a4;
}

.block-blog.il .block-title .color {
    color: #169b62;
}

.block-blog.il .post-list__block__title .color {
    color: #169b62;
}

.block-blog.il .post-list__title {
    color: #169b62;
}

.block-blog.il .post-list .btn-more {
    color: #169b62;
}

.block-blog.il .btn-more {
    border-color: #169b62;
}

.block-blog.il .post-list .btn-more:hover {
    color: #fff;
    background-color: #169b62;
    border-color: #169b62;
}

.block-blog.il .btn-index {
    background-color: #169b62;
}

.block-blog.il .btn-index:hover {
    background-color: #169b62;
}

/* SP：フッター国ブロック並び */
@media (max-width: 991.98px) {
    .footer .footer-sitemap__nav {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .footer .footer-sitemap__nav > .block-nav.block-nav--footer-nav-il {
        -ms-flex-order: 1;
        order: 1;
    }

    .footer .footer-sitemap__nav > .block-nav.block-nav--footer-nav-ph {
        -ms-flex-order: 2;
        order: 2;
    }
}

/* PC：フッター 2カラム（豪・比） */
@media (min-width: 992px) {
    .footer .footer-sitemap__nav > .block-nav.block-nav--split .block-nav__flex {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .footer .footer-sitemap__nav > .block-nav.block-nav--split .block-nav__flex > .block-nav__main {
        width: 50%;
    }

    .footer .footer-sitemap__nav > .block-nav:not(.block-nav--split) .block-nav__flex {
        display: block;
    }

    .footer .footer-sitemap__nav > .block-nav:not(.block-nav--split) .block-nav__flex > .block-nav__main {
        width: 100%;
    }
}
