@charset "UTF-8";

@media print, screen and (min-width:1200px) {

#topHead {
position: fixed;
background-color: #fff;
width: 100%;
height: 80px;
top: 0;
left: 0;
z-index: 500;
transition: .3s;
line-height: 1;
}

#topHead #logo {
position: absolute;
background: url("../img/logo.svg") no-repeat;
background-size: 158px;
width: 158px;
height: 53px;
transition: .3s;
top: 15px;
left: 30px;
}

#topHead #logo a span {
width: 158px;
height: 53px;
font-size: 0;
display: block;
text-indent: -10000px;
}

#topHead #globalNav ul {
position: absolute;
display: flex;
transition: .3s;
top: 25px;
right: 100px;
}

#topHead #globalNav ul li {
position: relative;
margin-left: 40px;
padding: 5px 0;
}

#topHead #globalNav ul li a {
font-size: 1.5rem;
text-decoration: none;
padding-bottom: 10px;
transition: .3s;
}

#topHead #globalNav ul li a:hover {
color: var(--txtColor);
}

#topHead #globalNav ul li a::after {
position: absolute;
background-color: var(--txtColor);
content: "";
width: 100%;
height: 1px;
bottom: -6px;
left: 0;
-webkit-transform: scale(0, 1);
transform: scale(0, 1);
-webkit-transform-origin: left top;
transform-origin: left top;
-webkit-transition: all .3s ease;
transition: all .3s ease;
}

#topHead #globalNav ul li a:hover::after {
transform: scale(1, 1);
}

#topHead #globalNav ul li a span {
position: absolute;
width: 10px;
height: 10px;
margin: auto;
border-right: 2px solid var(--txtColor);
border-bottom: 2px solid var(--txtColor);
transform: rotate(45deg);
top: -5px;
bottom: 0;
right: 0;
}

#topHead #globalNav ul .pr a {
padding-right: 18px;
}

.globalSubNav {
position: absolute;
background-color: #fff;
width: 220px;
margin: auto;
padding: 0;
display: none !important;
white-space: nowrap;
border: 1px solid #f2f2f7;
left: 0;
top: 31px !important;
overflow: visible;
transition: .6s;
z-index: 510;
}

.globalSubNav li {
margin-left: 0 !important;
padding: 13px 18px !important;
text-align: left !important;
border-bottom: 1px solid var(--txtColor) !important;
line-height: 1.4;
}

.globalSubNav li:last-child {
border-bottom: 0 !important;
}

#topHead .globalSubNav a::after {
width: 0 !important;
}

#topHead .globalSubNav a:hover {
opacity: .7;
}

#topHead #globalNav ul li:hover .globalSubNav {
display: block !important;
animation: fadeIn 0.3s ease-in 0s forwards;
}

@keyframes fadeIn {
0% {
display: none;
opacity: 0;
}

1% {
display: block;
opacity: 0;
}

100% {
display: block;
opacity: 1;
}
}

#busContact {
position: absolute;
background: url("../img/bus_contact.png") no-repeat;
background-size: 137px;
width: 137px;
height: 117px;
line-height: 1.3;
z-index: 500;
transition: .3s;
top: 135px;
right: -5px;
}

#busContact:hover {
right: -2px;
}

#busContact a {
width: 137px;
height: 117px;
color: #fff;
display: block;
padding: 15px 0 0 14px;
}

#busContact span {
display: block;
}

#busRecruit {
position: absolute;
background: url("../img/bus_recruit.png") no-repeat;
background-size: 124px;
width: 124px;
height: 98px;
line-height: 1.3;
z-index: 500;
transition: .3s;
top: 270px;
right: -10px;
}

#busRecruit a {
width: 124px;
height: 98px;
color: #fff;
display: block;
padding: 32px 0 0 8px;
}

#busRecruit:hover {
right: -7px;
}

.hamburger,
#globalSubNav {
display: none;
}

}

@media print, screen and (max-width:1199px) {

#topHead {
position: fixed;
background-color: #fff;
width: 100%;
height: 70px;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
z-index: 500;
transition: .3s;
}

#topHead #logo {
position: absolute;
background: url("../img/logo.svg") no-repeat;
background-size: 160px;
width: 160px;
height: 53px;
left: 15px;
top: 8px;
}

#topHead #logo a span {
width: 160px;
height: 53px;
font-size: 0;
display: block;
text-indent: -10000px;
}

#globalNav {
display: none;
}

#busContact {
position: absolute;
background: url("../img/bus_contact.png") no-repeat;
background-size: 100px;
width: 100px;
height: 85px;
font-size: 1.2rem;
line-height: 1.3;
z-index: 500;
transition: .3s;
top: 80px;
right: -5px;
}

#busContact a {
width: 100px;
height: 85px;
color: #fff;
display: block;
padding: 8px 0 0
}

#busContact span {
display: block;
}

#busRecruit {
position: absolute;
background: url("../img/bus_recruit.png") no-repeat;
background-size: 90px;
width: 90px;
height: 71px;
font-size: 1.2rem;
line-height: 1.3;
z-index: 500;
transition: .3s;
top: 172px;
right: -10px;
}

#busRecruit a {
width: 90px;
height: 71px;
color: #fff;
display: block;
padding: 20px 0 0;
}

.hamburger {
position: absolute;
background-color: var(--themeColor);
width: 50px;
height: 50px;
font-size: 1rem;
color: #fff;
right: 10px;
top: 10px;
cursor: pointer;
border-radius: 5px;
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: 0.3s ease-in-out;
}

.hamburger span:nth-child(1) {
top: 10px;
}

.hamburger span:nth-child(2) {
top: 17px;
}

.hamburger span:nth-child(3) {
top: 24px;
}

.hamburger.active span:nth-child(1) {
top: 17px;
transform : rotate(-135deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 17px;
transform : rotate(135deg);
}

#hamburgerMenu {
position: absolute;
font-family: var(--font-quicksand);
margin: auto;
line-height: 1;
left: 0;
right: 0;
bottom: 8px;
}

#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: left;
display: table;
white-space: nowrap;
margin: 0 auto;
line-height: 2.7;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
}

#globalSubNav ul li {
position: relative;
padding-left: 20px;
}

#globalSubNav ul li::before {
position: absolute;
background-color: var(--txtColor);
width: 9px;
height: 2px;
content: "";
left: 0;
top: 18px;
}

#globalSubNav ul li ul {
position: relative;
width: auto;
display: table;
margin: 0 auto;
margin: 40px 0 -26px 0;
line-height: 2.5;
}

#globalSubNav ul li ul li {
padding-left: 15px;
}

#globalSubNav ul li ul li::before {
display: none;
}

}