@charset "UTF-8";

@media print, screen and (min-width:1200px) {

.sidebar {
position: sticky;
flex-basis: 240px;
flex-shrink: 0;
height: 100%;
padding: 40px 0;
overflow: auto;
top: 0;
z-index: 5;
}

#topHead {
position: sticky;
width: 100%;
top: 0;
}

#topHead #logo {
width: 137px;
margin: 0 auto;
margin-bottom: 65px;
}

#topHead #globalNav ul {
position: relative;
display: table;
margin: 0 auto;
margin-bottom: 50px;
}

#topHead #globalNav ul li {
text-align: left;
margin-bottom: 15px;
}

#topHead #globalNav ul li a {
position: relative;
font-family: var(--font-cormorantGaramond);
font-size: 1.8rem;
font-weight: 500;
text-decoration: none;
color: var(--themeColor);
display: table;
margin: 0;
padding: 0;
line-height: 1.5;
}

#topHead #globalNav ul li a::after {
position: absolute;
background-color: var(--themeColor);
content: "";
width: 100%;
height: 1px;
bottom: -3px;
left: 0;
transform: scale(0, 1);
transform-origin: left top;
transition: all .3s ease;
}

#topHead #globalNav ul li a:hover::after {
transform: scale(1, 1);
}

.btnNav {
background-color: #fff;
font-family: var(--font-cormorantGaramond);
width: 120px;
height: 60px;
font-size: 2rem;
color: var(--themeColor);
margin-bottom: 12px;
padding-bottom: 5px;
cursor: pointer;
border: 1px solid var(--themeColor);
transition: .3s;
}

.btnNav:hover {
background-color: var(--themeColor);
color: #fff;
}

.btnNav span {
font-size: 1.1rem;
display: block;
}

#snsWrap {
margin-top: 40px;
display: flex;
justify-content: center;
align-items: center;
}

#snsWrap li {
margin: 0 15px;
}

#snsWrap li img {
width: auto;
height: 20px;
}

.hamburger,
#globalSubNav {
display: none;
}

}

@media print, screen and (max-width:1199px) {

#globalNav {
display: none;
}

.sidebar {
position: fixed;
width: 100%;
top: 0;
z-index: 5;
}

#topHead {
position: absolute;
background-color: #fff;
width: 100%;
height: 80px;
top: 0;
}

#topHead #logo {
position: absolute;
width: 70px;
left: 10px;
top: 8px;
}

#topHead #globalNav ul {
position: relative;
display: table;
margin: 0 auto;
margin-bottom: 50px;
}

#topHead #globalNav ul li {
text-align: left;
margin-bottom: 15px;
}

#topHead #globalNav ul li a {
position: relative;
font-family: var(--font-cormorantGaramond);
font-size: 1.8rem;
font-weight: 500;
text-decoration: none;
color: var(--themeColor);
display: table;
margin: 0;
padding: 0;
line-height: 1.5;
}

#topHead #globalNav ul li a::after {
position: absolute;
background-color: var(--themeColor);
content: "";
width: 100%;
height: 1px;
bottom: -3px;
left: 0;
transform: scale(0, 1);
transform-origin: left top;
transition: all .3s ease;
}

#topHead #globalNav ul li a:hover::after {
transform: scale(1, 1);
}

.btnNav {
background-color: #fff;
font-family: var(--font-cormorantGaramond);
width: 100px;
height: 60px;
font-size: 1.7rem;
color: var(--themeColor);
margin-bottom: 12px;
padding-bottom: 5px;
cursor: pointer;
border: 1px solid var(--themeColor);
transition: .3s;
}

.btnNav span {
font-size: 1rem;
display: block;
}

#snsWrap {
display: none;
}

.hamburger {
position: fixed;
background-color: var(--themeColor);
width: 50px;
height: 50px;
font-size: 1rem;
color: #fff;
right: 10px;
top: 15px;
cursor: pointer;
border-radius: 50%;
transition: .5s;
z-index: 1002;
}

.hamburger span {
position: absolute;
background-color: #fff;
display: block;
width: 20px;
height: 1px ;
margin: auto;
border-radius: 5px;
left: 0;
right: 0;
transition: .3s ease-in-out;
}

.hamburger span:nth-child(1) {
top: 17px;
}

.hamburger span:nth-child(2) {
top: 24px;
}

.hamburger span:nth-child(3) {
top: 31px;
}

.hamburger.active span:nth-child(1) {
top: 24px;
transform : rotate(-135deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 24px;
transform : rotate(135deg);
}

#topHead #globalSubNav {
position: fixed;
background-color: #fff;
z-index : 1001;
top: 0;
left: 0;
text-align: center;
width: 100%;
height: 100%;
padding: 30px 0;
overflow-y: auto;
transform: translateX(100%);
transition: all 0.6s;
}

#topHead #globalSubNav.active {
opacity: 1;
display: block;
transform: translateX(0%);
}

#globalSubNav ul {
position: absolute;
width: auto;
font-size: 1.4rem;
text-align: center;
display: table;
white-space: nowrap;
margin: 0 auto;
line-height: 3;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
}

}