@charset "utf-8";

/*-----------------------------------------------------------
ヘッダー
-----------------------------------------------------------*/


.header {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    padding: 20px 15px;
    position: fixed;
    top: 0;
    z-index: 99999;
    transition: all .3s;
}

.header-container {
    max-width: 1840px;
    width: 100%;
    margin: 0 0 0 auto;
}

.header-area {
    max-width: 1529px;
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: flex-end;
}

.header-logo-link {
    display: block;
    max-width: 100px;
    width: 100%;
    margin: 0 auto 0 0;
}

.header-nav-area {
    margin: 10px 0 0 10px;
    max-width: 1236px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 2%;
}

.header-nav-link {
    display: block;
    font-size: clamp(14px, calc(0.875rem + ((1vw - 7.68px) * 0.5208)), 20px);
    font-weight: 300;
    letter-spacing: 0.15em;
    font-family: var(--font-family02);
    color: var(--black);
    position: relative;
    transition: all .3s;
}

.header-nav-link::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background: var(--black);
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transition: all .3s;
}

.header-nav-link:hover {
    color: var(--black);
    opacity: 0.7;
}

.header-nav-link:hover::after {
    width: 100%;
}

.header-nav-link-illust01,
.header-nav-link-illust02 {
    display: flex;
    align-items: center;
}

.header-nav-link-illust01::before {
    content: "";
    display: block;
    margin: 0 8px 0 0;
    width: 15px;
    height: 14px;
    background: url(/system_panel/uploads/images/reserve_icon_black.svg) center / contain no-repeat;
}

.header-nav-link-illust02::before {
    content: "";
    display: block;
    margin: 0 8px 0 0;
    width: 13px;
    height: 14px;
    background: url(/system_panel/uploads/images/recruit_icon_black.svg) center / contain no-repeat;
}

.header-sns-link-area {
    margin: 30px;
    display: flex;
    justify-content: center;
}

/*--固定リンク--*/

.header-right-link-area.is-hidden {
    visibility: hidden;
    opacity: 0;
}

.header-right-link-area {
    padding: 10px;
    display: none;
    align-items: center;
    /* background: rgba(255, 255, 255, 90%); */
    position: fixed;
    right: 0;
    bottom: 0;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transition: all .3s;
    visibility: visible;
    opacity: 1;
    z-index: 999;
}

.header-right-link {
    font-size: clamp(14px, calc(0.875rem + ((1vw - 7.68px) * 0.3472)), 18px);
    font-weight: 300;
    letter-spacing: 0.15em;
    color: var(--black);
    display: flex;
    align-items: center;
    position: relative;
    transition: all .3s;
}

.header-right-link p {
    margin: 0;
}

.header-right-link:hover {
    opacity: 0.7;
    color: var(--black);
}

.header-right-link::before {
    content: "";
    display: block;
    width: 1px;
    height: 0;
    background: var(--black);
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s;
}

.header-right-link:hover::before {
    height: 90%;
    background: var(--black);
}

.header-right-link:last-child:hover::before {
    height: 100%;
    background: var(--black);
}

.header-right-link::after {
    content: "/";
    display: block;
    margin: 0.2rem 0;
    font-size: clamp(14px, calc(0.875rem + ((1vw - 7.68px) * 0.3472)), 18px);
    font-weight: 300;
    letter-spacing: 0.15em;
    color: var(--black);
}

.header-right-link:last-child::after {
    display: none;
}

.header.is-active {
	position: fixed;
	top: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: rgba(234, 234, 234, 80%);
}

/*--is-animation--*/

.header.clone.is-animation {
    top: 0;
    transition: all .5s;
    visibility: visible;
    opacity: 0.9;
}

.header.clone {
    position: fixed;
    top: -96px;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
    border-bottom: 0px solid #ccc;
    background: #356194;
}

/*----- is-hidden -----*/
/*
..is-hidden {
	visibility: hidden;
	transition: all .5s;
	opacity: 0;
}
*/

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

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


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:544px) {

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

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

    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 544px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width: 768px) {


    .header-area {
        flex-direction: column;
        justify-content: flex-end;
    }

    .header-logo-link {
        margin: 0 auto;
        max-width: 120px;
    }

    .header-nav-area {
        justify-content: center;
    }

/*--固定リンク--*/
    
    .header-right-link-area {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width: 1024px) {

    .header-logo-link {
        margin: 0 auto 0 0;
        max-width: 120px;
    }

    .header-area {
        flex-direction: row;
        justify-content: flex-end;
    }

    .header-nav-area {
        justify-content: flex-end;
    }


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 1024px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1200px) {

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

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

    .header-nav-area {
        margin: 0 0 0 10px;
        gap: 4.1%;
    }

    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 1200px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1300px) {

    

    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 1440px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1700px) {

    .header {
        padding: 48px 15px 38px 15px;
    }
    
    /*--固定リンク--*/

    .header-right-link-area {
        display: flex;
        padding: 25px 30px 25px 25px;
    }
    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* min-width: 1520px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */