@charset "UTF-8";

/*///////////////////// font-face 読み込み例 ///////////////////////////*/
/*Noto Sans JP 400*/
@font-face {
    font-family: 'Zen Kaku Gothic Antique';
    src: url(/fonts/ZenKakuGothicAntique-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}
/*Noto Sans JP 500*/
@font-face {
    font-family: 'Zen Kaku Gothic Antique';
    src: url(/fonts/ZenKakuGothicAntique-Medium.ttf);
    font-weight: 500;
    font-display: swap;
}
/*Noto Sans JP 700*/
@font-face {
    font-family: 'Zen Kaku Gothic Antique';
    src: url(/fonts/ZenKakuGothicAntique-Bold.ttf);
    font-weight: 700;
    font-display: swap;
}
/*///////////////////// font-face 読み込み例 ///////////////////////////*/

.org-header * {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
}
.org-header {
    width: 100%;
    height: 60px;
    background: #fff;
    z-index: 5;
    position: sticky;
    top: 0;
    transition: .4s;
}
.org-top__header {
    position: fixed;
}
.scroll__header {
    background: transparent;
}
    .org-header__inner {
        display: flex;
        justify-content: space-between;
    }
        .org-header__logo {
            width: 240px;
            height: 60px;
        }
            .org-header__logo img {
                width: 100%;
                height: 100%;
                object-fit: contain;
            }
        .org-header__nav {
            visibility: visible;
            opacity: 1;
            transition: .4s;
        }
        .org-top__header.scroll__header .org-header__nav {
            visibility: hidden;
            opacity: 0;
        }
            .org-header-nav__list {
                display: flex;
                gap: 1px;
            }
                .org-header-nav__list li {
                    position: relative;
                }
                .org-header-nav__list li:not(:last-of-type)::after {
                    content: '';
                    width: 1px;
                    height: 50px;
                    background: rgba(37, 37, 37, .1);
                    position: absolute;
                    top: 50%;
                    transform: translateY(-50%);
                    right: -1px;
                }
                    .org-header-nav__link {
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        height: 60px;
                        padding-inline: 20px;
                        font-size: 16px;
                        font-weight: 500;
                        color: #252525;
                    }
                    @media screen and (max-width: 1300px) {
                        .org-header-nav__link {
                            font-size: 13px;
                        }
                    }

.float__wrap {
    position: fixed;
    top: 180px;
    right: 10px;
    z-index: 4;
}
.float__wrap::before {
    content: '';
    width: 65px;
    height: 98px;
    background: url(/images/top/float_ttl-icn.svg) no-repeat center / contain;
    position: absolute;
    top: -88px;
    left: -11px;
    z-index: -1;
    animation: floatSoftY 1.2s ease-in-out infinite alternate;
}
@keyframes floatSoftY {
    from { transform: translateY(0); }
    to { transform: translateY(-6px); }
}
    .float__list {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }
        [class*="float__link"] {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 7px;
            width: 50px;
            padding-inline: 15px 18px;
            border-radius: 5px;
            font-size: 16px;
            font-weight: 500;
            letter-spacing: 0.13em;
            color: #fff;
            writing-mode: vertical-rl;
            text-orientation: upright;
            position: relative;
            z-index: 1;
            overflow: hidden;
        }
        [class*="float__link"]::before {
            content: '';
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1;
            border: 1px solid transparent;
            border-radius: 5px;
            box-shadow: inset 0 0 0 0 rgba(255, 255, 255, 0);
        }
            [class*="float__link"] .float__icn {
                display: block;
                width: 35px;
                height: 35px;
                flex-shrink: 0;
                color: inherit;
                transition: color 0.4s;
            }
            .float__link--satei::before {
                background: linear-gradient(88deg, #DF0B0B -1%, #A41010 100.28%);
            }
            .float__link--mail {
                padding-inline: 10px 17px;
                gap: 2px;
            }
            .float__link--mail::before {
                background: linear-gradient(88deg, #18AEEE 0.74%, #057CAF 99.03%);
            }
            .float__link--line {
                padding-inline: 12px 16px;
                gap: 0;
            }
            .float__link--line::before {
                background: linear-gradient(88deg, #06C755 0.86%, #0B863D 99.14%);
            }