@charset "UTF-8";

/* ======================
   header-2.css
   .global-header-sns → .header-bogo への置き換え
   .global-header-nav-sns → .header-bogo-nav への置き換え
   ====================== */

/* ================================
   PC・スマホヘッダーバー用 (.header-bogo)
   ================================ */

/* 他CSSからの absolute 指定を上書き */
.header-bogo {
    position: static !important;
    top: auto !important;
}

/* --- PC (751px以上) --- */
@media all and (min-width: 751px) {
    .header-bogo {
        font-size: 0;
    }

    .header-bogo .bogo-language-switcher {
        font-size: .875rem;
    }
}

/* --- スマホ (750px以下) --- */
@media only screen and (max-width: 750px) {
    .header-bogo {
        order: 1;
        flex: 1 0 auto;
        margin-right: 6vw;
        text-align: right;
        z-index: 3;
        transition: all .3s;
    }

    body.is-menuOpen .header-bogo {
        opacity: 0;
    }
}

/* ================================
   スマホメニュー内用 (.header-bogo-nav)
   ================================ */

@media all and (min-width: 751px) {
    .header-bogo-nav {
        display: none;
    }
}

@media only screen and (max-width: 750px) {
    .header-bogo-nav {
        padding: 4.49775vh 0 5.24738vh;
        text-align: center;
    }
}

/* ================================
   Bogo言語スイッチャー共通スタイル
   ================================ */

.header-bogo .bogo-language-switcher,
.header-bogo-nav .bogo-language-switcher {
    display: flex !important;
    justify-content: flex-end !important;
    background: #fff;
}

/* 2番目の言語（日本語）の左に余白 */
.header-bogo .bogo-language-switcher li + li,
.header-bogo-nav .bogo-language-switcher li + li {
    margin-left: 1em !important;
}

/* ================================
   卒業生グリッド (.alumni-grid)
   PC: 4列 / スマホ: 1列
   ================================ */

.alumni-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 40px 30px;
}

.alumni-card {
    width: calc((100% - 90px) / 4);
    text-align: center;
    box-shadow: none;
    border: none;
    background: transparent;
    min-width: 0;
}

/* 写真 */
.alumni-card__photo {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background-color: #e8e8e8;
}

.alumni-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 情報 */
.alumni-card__info {
    margin-top: 15px;
}

.alumni-card__term {
    font-size: .75rem;
    color: #5f9aaa;
    letter-spacing: .1em;
    line-height: 1.5;
    font-weight: bold;
}

.alumni-card__position {
    font-size: .75rem;
    color: #666;
    letter-spacing: .08em;
    line-height: 1.5;
    margin-top: 4px;
}

.alumni-card__name {
    font-size: 1.2rem;
    color: #333;
    letter-spacing: .12em;
    line-height: 1.5;
    margin-top: 6px;
}

.alumni-card__video {
    margin-top: 8px;
}

.alumni-card__video a {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #279082;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #279082;
    border-radius: 50px;
    padding: 0.375rem 2rem;
    font-size: .8rem;
    font-weight: 500;
    letter-spacing: 1px;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
}

.alumni-card__video a:hover {
    color: #fff;
    background-color: #279082;
    border-color: #fff;
    text-decoration: none;
}

/* --- スマホ (750px以下) --- */
@media only screen and (max-width: 750px) {
    .alumni-grid {
        gap: 30px 0;
    }

    .alumni-card {
        width: 100%;
    }

    .alumni-card__photo {
        width: 60%;
        margin: 0 auto;
    }
}