/* .header.sub-header .logo .logo-img,.header.fixed .logo .logo-img { background-image: url(../../images/common/logo_top.png); } */

.header.sub-header .fixed-wrap,
.header.fixed .fixed-wrap { background-color: #fff; }

.header.sub-header .pc-nav .menu-list>a,
.header.fixed .pc-nav .menu-list>a { color: var(--indigo); }

.header.sub-header .menu-btn .line,
.header.fixed .menu-btn .line,
.header.sub-header .menu-btn .line:before,
.header.fixed .menu-btn .line:before,
.header.sub-header .menu-btn .line:after,
.header.fixed .menu-btn .line:after { background-color: var(--indigo); }

.header.sub-header .language-wrap .lang,
.header.fixed .language-wrap .lang { color: #d6d6e3; }

.header.sub-header .language-wrap .lang.active,
.header.fixed .language-wrap .lang.active { color: #6d6d7e; border-bottom: 1px solid #6d6d7e; }

body.pc-nav-open {
    overflow: hidden
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: all .4s;
    transition: all .4s;
    z-index: 700
}

@media screen and (min-width: 992px) {
    .header { height: 100px; }
}

.business-nav .header {
    position: fixed !important
}

.business-nav .header .fixed-wrap {
    background-color: transparent
}

.business-nav .header.fixed .fixed-wrap {
    background-color: #fff
}

.business-nav .header.fixed.sub-header {
    position: fixed !important
}

.header.sub-header {
    position: relative
}

@media screen and (min-width: 992px) {
    .header.sub-header {
        height:100px
    }
}

@media screen and (min-width: 992px) {
    .header.is-hide .fixed-wrap {
        top:-75px !important
    }
}

.header.fixed .fixed-wrap {
    box-shadow: 0px 0px 10px rgba(49,49,63,0.1)
}

@media screen and (min-width: 992px) {
    /* .header.fixed .header-inner { height: 75px; } */
}

@media screen and (min-width: 992px) and (min-width: 992px) {
    .header.fixed .sub-menu-list-wrap.active {
        /*top:calc(75px - 15px)*/
		top:calc(100px - 50px)
    }
}

@media screen and (min-width: 992px) {
    /* .header.fixed .fixed-wrap { height: 75px; } */
}

.header.fixed.sub-header {
    position: relative !important
}

.header .fixed-wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    background-color: red;
    transition: all .4s
}

@media screen and (min-width: 992px) {
    .header .fixed-wrap { height: 150px; }
}

.header .header-inner {
    position: relative;
    display: flex;
    justify-content: center;
	flex-flow: wrap;
    margin: 0 auto;
    height: auto;

}

@media screen and (min-width: 992px) {
    .header .header-inner { height: 150px; padding: 0 18px; transition: height .4s; }
}

.header .logo {
    /* position: absolute;
    top: 50%;
    left: 18px;
    transform: translateY(-50%); */
    width: 73px;
	width: 100%;
    /* height: 65px; */
    height: auto;
	max-height: 100px;
    /* z-index: 701; */
}

@media screen and (min-width: 992px) {
    .header .logo {
        /* width: 200px */
    }
}

@media screen and (min-width: 1645px) {
    .header .logo {
        left:calc((100% - 1600px)/2)
    }
}

/* .header .logo .logo-img {
    display: block;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../../images/common/logo_top_wh.png)
} */
.header .logo .logo-img { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; width: 100%; height: 100%; }
.header .logo .logo-img .header-logo { margin-right: 10px; }
.header .logo .logo-img .header-logo:last-child { margin-right: 0; }
.header .logo .logo-img .header-logo.first-ment { font-family: 'Cinzel', serif; font-size: 20px; font-weight: 600; color: #fff; transition: all 0.3s; }
.header .logo .logo-img .header-logo.logo01 { max-width: 70px; }
.header .logo .logo-img .header-logo.logo02 { max-width: 250px; filter: brightness(0%) invert(100%) grayscale(100%); transition: all 0.3s; }

.header.fixed .logo .logo-img .header-logo.first-ment { color: red; }
.header.fixed .logo .logo-img .header-logo.logo02 { filter: brightness(100%) invert(0%) grayscale(0%); }

/* .pc-nav-open .header .logo .logo-img { background-image: url(../../images/common/logo_top_wh.png) !important; } */

@media screen and (min-width: 992px) {
	.header .logo .logo-img .header-logo.logo01 { max-width: 60px; margin: 5px 10px }

    .pc-nav-open .header .logo .logo-img { /* background-image:url(../../images/common/logo_top_wh.png) !important; */ }
	.pc-nav-open .header .header-inner { }
	.pc-nav-open .header .logo { }
	.pc-nav-open .header .logo .logo-img .header-logo.first-ment { }
	.pc-nav-open .header .logo .logo-img .header-logo.logo02 {  }
}

@media screen and (max-width: 640px) {
	.header .logo .logo-img { justify-content: unset; }

    .header .logo .logo-img .header-logo.first-ment { display:none }
	.header .logo .logo-img .header-logo.logo02 { /*display:none*/max-width: 180px }

	.header.fixed .logo .logo-img .header-logo.first-ment { display:none }
	.header.fixed .logo .logo-img .header-logo.logo02 { /*display:none*/max-width: 180px }
}

.pc-nav {
    display: none
}

@media screen and (min-width: 992px) {
    .pc-nav {
        display:flex
    }
}

.pc-nav .menu-list-wrap {
    display: flex
}

.pc-nav .menu-list {
    position: relative;
    display: flex;
    padding: 0 19px
}

@media screen and (min-width: 1260px) {
    .pc-nav .menu-list {
        padding:0 30px
    }
}

.pc-nav .menu-list>a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    transition: color .4s;
    -webkit-transition: color .4s;
    cursor: pointer
}

@media screen and (min-width: 992px) {
    .pc-nav .menu-list>a {
        font-size:16px
    }
}

@media screen and (min-width: 1260px) {
    .pc-nav .menu-list>a {
        font-size:18px
    }
}

.pc-nav .menu-list.on>a {
    color: var(--burgundy) !important
}

.pc-nav .sub-menu-list-wrap {
    display: none;
    position: absolute;
    left: 0;
    top: 100px;
    width: 100%;
    text-align: center;
    z-index: 1;
    transition: top .4s
}

@media screen and (min-width: 992px) {
    .pc-nav .sub-menu-list-wrap {
        display:block;
        visibility: hidden;
        top: 100px;
        left: 50%;
        transform: translateX(-50%);
        width: auto;
        padding: 25px;
        border-radius: 5px;
        background-color: #fff;
        box-shadow: 0px 10px 25px rgba(49,49,63,0.3);
        opacity: 0;
        transition: transform .5s, opacity .5s, top .5s
    }

    .pc-nav .sub-menu-list-wrap.active {
        visibility: visible;
        opacity: 1;
        top: calc(100px - 50px)
    }
}

@media screen and (max-width: 991.98px) {
    .pc-nav .sub-menu-list:nth-of-type(1) {
        padding-top:10px
    }
}

@media screen and (min-width: 992px) {
    .pc-nav .sub-menu-list {
        white-space:nowrap
    }

    .pc-nav .sub-menu-list:not(:last-child) {
        margin-bottom: 15px
    }
}

.pc-nav .sub-menu-list a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    font-size: 14px;
    line-height: 1.5;
    color: #343434;
    text-decoration: underline;
    text-underline-position: under;
    text-decoration-thickness: 1px;
    text-decoration-color: transparent;
    transition: color .4s,text-decoration .4s;
    -webkit-transition: color .4s,text-decoration .4s
}

@media screen and (min-width: 992px) {
    .pc-nav .sub-menu-list a {
        width:100%;
        font-size: 16px;
        height: auto;
        color: #6d6d7e
    }
}

@media screen and (min-width: 992px) {
    .pc-nav .sub-menu-list:hover>a {
        color:var(--indigo);
        text-decoration-color: var(--indigo)
    }
}

.pc-nav .sub-menu-list .text {
    word-break: keep-all
}

.pc-nav .sub-menu-list.on>a {
    color: var(--indigo);
    text-decoration-color: var(--indigo)
}

.header-right-wrap {
    position: absolute;
    right: 18px;
    top: 0;
    height: 100%;
    display: flex;
    align-items: center
}

@media screen and (min-width: 1645px) {
    .header-right-wrap {
        right:calc((100% - 1600px)/2)
    }
}

.pc-nav-open .header-right-wrap {
    z-index: 701
}

.header-right-wrap .menu-btn-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 35px;
    height: 100%;
    z-index: 701;
    cursor: pointer
}

@media screen and (min-width: 1260px) {
    .header-right-wrap .menu-btn-wrap {
        margin-left:50px
    }
}

.language-wrap {
    display: flex;
    align-items: center
}

.language-wrap .lang {
    font-family: "Archivo", sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: rgba(255,255,255,0.5)
}

.language-wrap .lang:not(:last-child) {
    margin-right: 20px
}

.language-wrap .lang.active {
    color: #fff;
    border-bottom: 1px solid #fff
}

.language-wrap .lang a {
    display: block
}

.pc-nav-open .language-wrap .lang {
    color: #d6d6e3
}

.pc-nav-open .language-wrap .lang.active {
    color: #6d6d7e;
    border-bottom: 1px solid #6d6d7e
}

.menu-btn {
    width: 28px
}

@media screen and (min-width: 1260px) {
    .menu-btn {
        width:40px
    }
}

.menu-btn .line {
    margin: 8px 0;
    transition: transform .4s
}

.pc-nav-open .menu-btn .line {
    background-color: rgba(0,0,0,0) !important
}

.menu-btn .line,.menu-btn .line:first-child,.menu-btn .line:last-child {
    content: "";
    display: block;
    height: 2px;
    background-color: #fff;
    transition: transform .4s
}

.menu-btn .line:nth-child(2) {
    width: 19px;
    margin-left: auto
}

@media screen and (min-width: 1260px) {
    .menu-btn .line:nth-child(2) {
        width:27px
    }
}

.menu-btn .line:first-child,.menu-btn .line:last-child {
    width: 28px
}

@media screen and (min-width: 1260px) {
    .menu-btn .line:first-child,.menu-btn .line:last-child {
        width:40px
    }
}

.pc-nav-open .menu-btn .line:first-child,.pc-nav-open .menu-btn .line:last-child {
    background-color: var(--indigo) !important
}

.pc-nav-open .menu-btn .line:first-child {
    width: 34px;
    -webkit-transform: translateY(10px) rotateZ(135deg);
    transform: translateY(10px) rotateZ(135deg)
}

.pc-nav-open .menu-btn .line:last-child {
    width: 34px;
    -webkit-transform: translateY(-10px) rotateZ(-135deg);
    transform: translateY(-10px) rotateZ(-135deg)
}

.open-nav-wrap {
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100vh;
    background-color: #fff;
    opacity: 0;
    z-index: 700;
    overflow-y: auto
}

@media screen and (min-width: 992px) {
    .open-nav-wrap {
        display:flex;
        align-items: center
    }
}

@media screen and (min-width: 1430px) {
    .open-nav-wrap .nav-bg {
        opacity:0;
        position: relative;
        width: 30%;
        height: 100%;
        overflow: hidden;
        transition: opacity .4s 0.2s
    }

    .open-nav-wrap .nav-bg::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        transform: translate(-50%, -50%);
        background: url(../../images/common/nav_bg.jpg) no-repeat center right/cover;
    }
}

@media screen and (min-width: 1600px) {
    .open-nav-wrap .nav-bg {
        width:38%
    }
}

.pc-nav-open .open-nav-wrap .nav-bg {
    opacity: 1
}

.open-nav-wrap .inner-wrap {
    position: relative;
    width: 100%;
    padding: 105px 50px 0
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .inner-wrap {
        display:flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        padding: 0 6.25391vw
    }
}

@media screen and (min-width: 1430px) {
    .open-nav-wrap .inner-wrap {
        width:70%
    }
}

@media screen and (min-width: 1600px) {
    .open-nav-wrap .inner-wrap {
        width:62%
    }
}

@media screen and (min-width: 1920px) {
    .open-nav-wrap .inner-wrap {
        padding:0 12% 0 10%
    }
}

.open-nav-wrap .menu-list-wrap {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: auto
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list-wrap {
        flex-wrap:nowrap;
        flex-direction: column
    }
}

.open-nav-wrap .menu-list-wrap>* {
    width: 100%
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list-wrap>* {
        flex:1 1 0%
    }
}

.open-nav-wrap .menu-list { position: relative; padding-left: 60px; opacity: 0; transition: opacity .4s 0.2s; }
.open-nav-wrap .menu-list::before { content: ""; position: absolute; left: 0; top: 0; width: 40px; height: 100%; background: url(../../images/common/logo_hover.png) no-repeat center; background-size: contain; opacity: 0; transition: all 0.3s; }
.open-nav-wrap .menu-list:hover::before { opacity: 1; }

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list {
        display:flex
    }

    .open-nav-wrap .menu-list:not(:last-child) {
        margin-bottom: 45px
    }
}

.pc-nav-open .open-nav-wrap .menu-list {
    opacity: 1
}

.open-nav-wrap .menu-list>a {
    display: flex;
    align-items: center;
    height: 60px;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.33;
    color: var(--indigo);
    transition: color .4s
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list>a {
        font-size:3.41952vw
    }
}

@media screen and (min-width: 1200px) {
    .open-nav-wrap .menu-list>a {
        font-size:41px
    }
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list>a {
        height:auto
    }
}

.open-nav-wrap .menu-list .has-sub {
    position: relative
}

.open-nav-wrap .menu-list .has-sub .text {
    position: relative;
    padding-right: 29px
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list .has-sub .text {
        padding-right:50px
    }
}

.open-nav-wrap .menu-list .has-sub .text:before,.open-nav-wrap .menu-list .has-sub .text:after {
    content: '';
    display: block;
    position: absolute;
    top: 21px;
    right: 0;
    display: inline-block;
    width: 19px;
    height: 1px;
    z-index: 1;
    background-color: var(--indigo);
    transition: transform .2s linear
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .menu-list .has-sub .text:before,.open-nav-wrap .menu-list .has-sub .text:after {
        display:none
    }
}

.open-nav-wrap .menu-list .has-sub .text:before {
    transform: rotate(-90deg)
}

.open-nav-wrap .menu-list .has-sub.open .text:before {
    transform: rotate(0)
}

.open-nav-wrap .menu-list .has-sub.open .text:after {
    transform: rotate(180deg)
}

.open-nav-wrap .menu-list.on>a {
    color: var(--burgundy)
}

.open-nav-wrap .menu-list.on .has-sub .text::before,
.open-nav-wrap .menu-list.on .has-sub .text::after { background-color: var(--burgundy); }

@media screen and (min-width: 992px) {

	.open-nav-wrap .menu-list:hover > a { color: var(--mustard); }

}

.open-nav-wrap .sub-menu-list-wrap {
    display: none;
    padding-left: 20px;
    margin-bottom: 20px
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .sub-menu-list-wrap {
        display:flex !important;
        align-items: center;
        padding-left: 0;
        margin-bottom: 0
    }
}

.open-nav-wrap .sub-menu-list {
    font-size: 18px;
    line-height: 1.67;
    color: #6d6d7e
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .sub-menu-list {
        font-size:20px
    }
}

.open-nav-wrap .sub-menu-list:not(:last-child) {
    margin-right: 30px
}

.open-nav-wrap .sub-menu-list a {
    display: block
}

.open-nav-wrap .sub-menu-list .text {
    position: relative;
    display: block;
    padding: 5px 0;
    text-decoration: underline;
    text-underline-position: under;
    text-decoration-thickness: 1px;
    text-decoration-color: transparent;
    transition: color .4s,text-decoration .4s
}

@media screen and (min-width: 992px) {
    .open-nav-wrap .sub-menu-list .text:hover {
        text-decoration-color:var(--indigo);
        color: var(--indigo)
    }
}

.open-nav-wrap .sub-menu-list.on {
    color: var(--burgundy)
}

.open-nav-wrap .sub-menu-list.on .text {
    text-decoration-color: var(--indigo);
    color: var(--indigo)
}
