@charset "UTF-8";

/*///////////////////// font-face 読み込み例 ///////////////////////////*/
@font-face {
    font-family: 'Zen Old Mincho';
    src: url(/fonts/ZenOldMincho-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url(/fonts/ZenOldMincho-Medium.ttf);
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url(/fonts/ZenOldMincho-SemiBold.ttf);
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url(/fonts/ZenOldMincho-Bold.ttf);
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Medium.ttf);
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Bold.ttf);
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Great Vibes';
    src: url(/fonts/GreatVibes-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}
/*///////////////////// font-face 読み込み例 ///////////////////////////*/

.org-header * {
    font-family: "Zen Kaku Gothic New", sans-serif;
}
.org-header {
    display: flex;
    align-items: center;
    width: 100%;
    height: 80px;
    background: #063857;
    position: sticky;
    top: 0;
    z-index: 5;
}
.org-header.top-header {
    width: 1140px;
    height: 70px;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.50);
    backdrop-filter: blur(20px);
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
}
    .org-header__inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin: 0 auto;
        padding-inline: 40px;
    }
    .org-header.top-header .org-header__inner {
        padding-left: 35px;
    }
        .org-header__logo {
            display: block;
            width: 104px;
            height: 33px;
        }
            .org-header__logo img {
                display: block;
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        .org-header__right {
            display: flex;
            align-items: center;
        }
            .org-header-nav__list {
                display: flex;
                align-items: center;
                gap: 30px;
            }
                .org-header-nav__link {
                    font-size: 14px;
                    font-weight: 700;
                    color: #fff;
                }
                .org-header.top-header .org-header-nav__link {
                    color: #333;
                }

.float__wrap {
    position: fixed;
    top: 150px;
    right: 10px;
    z-index: 4;
}
    .float__list {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }
        [class*="float__link"] {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 50px;
            padding-inline: 21px 18px;
            backdrop-filter: blur(20px);
            font-family: 'Zen Old Mincho', sans-serif;
            font-size: 16px;
            font-weight: 600;
            letter-spacing: 0.2em;
            line-height: 1.2;
            color: #fff;
            writing-mode: vertical-lr;
            text-orientation: upright;
        }
        .float__link--contact {
            background: #063857;
        }
        .float__link--line {
            background: #009D0A;
        }
        .float__link--member,
        .float__link--mypage {
            background: #3E799E;
        }
        .float__link--login,
        .float__link--logout {
            background: #333;
        }