@charset "UTF-8";

@media print, screen and (min-width:1200px) {

#topHead {
position: fixed;
width: 100%;
height: 106px;
padding: 0;
line-height: 1;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
z-index: 200;
}

#topHead a, #topHead {
color: #fff;
text-decoration: none;
}

#topHead #logo {
position: absolute;
background: url("../img/logo.svg") no-repeat;
background-size: 250px;
width: 250px;
height: 65px;
top: 40px;
left: 70px;
z-index: 202;
}

#topHead #logo a span {
display: block;
width: 330px;
height: 65px;
font-size: 0;
text-indent: -10000px;
}

.gNav {
position: fixed;
background: var(--themeColor);
font-family: 'Bebas Neue', cursive;
width: 100%;
height: 100vh;
z-index: -1;
opacity: 0;
top: 0;
transition: all 0.3s;
display: none;
border-left: 20px solid #111;
}

#gNavBg {
opacity: .5;
}

#gNavBg img {
width: 100%;
height: 100%;
object-fit: cover;
}

.gNav.panelactive {
opacity: 1;
z-index: 999;
}

.navLogo {
position: absolute;
background-color: #002772;
width: 350px;
height: 100vh;
left: 0;
top: 0;
z-index: 1;
}

.navLogo img {
position: absolute;
width: 20%;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}

.navAd {
position: absolute;
font-family: 'Roboto', sans-serif;
width: 100%;
font-size: 1rem;
color: #999;
bottom: 60px;
left: 0;
right: 0;
margin: auto;
}

.gNavWrap {
position: absolute;
width: 680px;
display: flex;
justify-content: space-around;
top: 50%;
left: 64%;
transform: translate(-50%,-50%);
z-index: 999;
}

.gNavLr {
width: 400px;
}

.gNavLr img {
width: 310px;
}

.gNav ul {
display: none;
z-index: 999;
}

.gNav.panelactive ul {
display: block;
}

.gNav li {
width: -moz-fit-content;
width: fit-content;
text-align: left;
display: block;
margin-bottom: 12px;
line-height: 1;
}

.gNav li a {
position: relative;
font-size: 5rem;
color: #fff;
text-decoration: none;
display: block;
transition: .3s;
}

.gNavLr li a:hover {
text-decoration: none !important;
}

.gNav li a::after {
position: absolute;
content: "";
width: 100%;
height: 2px;
background-color: #fff;
bottom: 0;
left: 0;
-webkit-transform: scale(0, 1);
transform: scale(0, 1);
-webkit-transform-origin: left top;
transform-origin: left top;
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.gNav li a:hover::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

#snsNav ul {
position: absolute;
display: flex;
justify-content: center;
top: 37px;
right: 100px;
z-index: 201;
}

#snsNav ul li {
font-size: 2rem;
margin: 0 7px;
}

#snsNav ul li a {
color: var(--themeColor);
}

.snsNav {
float: left;
margin-top: 20px;
margin-right: 10px;
}

.snsNav a {
font-size: 3rem !important;
}

.openbtn {
position: fixed;
width: 30px;
height: 16px;
top: 40px;
right: 50px;
cursor: pointer;
z-index: 9999;
}

.openbtn span {
position: absolute;
width: 100%;
height: 3px;
display: inline-block;
left: 0;
transition: all .4s;
}

.openbtn span:nth-of-type(1) {
background-color: var(--themeColor);
top: 0;
}

.openbtn span:nth-of-type(2) {
background-color: var(--themeColor);
top: 12px;
}

.openbtn.active span:nth-of-type(1) {
background-color: #fff;
top: 0;
left: 0;
transform: translateY(6px) rotate(-30deg);
width: 30px;
}

.openbtn.active span:nth-of-type(2){
background-color: #fff;
top: 12px;
left: 0;
transform: translateY(-6px) rotate(30deg);
width: 30px;
}

}

@media print, screen and (max-width:1199px) {

#snsNav {
display: none;
}

#topHead {
position: fixed;
width: 100%;
height: 65px;
padding: 0;
line-height: 1;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
z-index: 500;
}

#topHead #logo {
position: relative;
background: url("../img/logo.svg") no-repeat;
background-size: 220px;
width: 220px;
height: 32px;
padding: 0;
top: 20px;
left: 20px;
z-index: 501;
}

#topHead #logo a span {
display: block;
width: 220px;
height: 32px;
font-size: 0;
text-indent: -10000px;
}

.gNav {
position: fixed;
font-family: 'Bebas Neue', cursive;
width: 100%;
height: 100vh;
z-index: -1;
opacity: 0;
top: 0;
transition: all 0.3s;
}

#gNavBg {
opacity: .3;
}

#gNavBg img {
width: 100vw;
height: 100vh;
object-fit: cover;
}

.gNav.panelactive {
background-color: #002772;
opacity: 1;
z-index: 999;
}

.navLogo {
display: none;
}

.gNavWrap {
position: absolute;
width: 210px;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
z-index: 999;
}

.gNavLr {
width: 100%;
}

.gNavLr img {
width: 100%;
}

.gNav ul {
display: none;
z-index: 999;
}

.gNav.panelactive ul {
display: block;
}

.gNav li {
width: -moz-fit-content;
width: fit-content;
text-align: left;
display: block;
line-height: 1;
}

.gNav li a {
position: relative;
font-size: 3rem;
color: #fff;
text-decoration: none;
margin: 20px 0;
display: block;
}

.gNavLr li a:hover {
text-decoration: none !important;
}

.gNav li a:nth-child(11) {
margin-top: 40px !important;
}

.tbn {
margin-top: 34px;
}

.tbn:last-of-type {
margin-top: 0;
}

.tbn a {
transition: .3s;
}

.tbn a::after {
-webkit-transform: scale(0, 0);
transform: scale(0, 0) !important;
}

.snsNav {
float: left;
margin-top: 0px;
margin-right: 16px;
}

.snsNav a {
font-size: 2.8rem !important;
}

.openbtn {
position: fixed;
width: 40px;
height: 15px;
top: 24px;
right: 20px;
cursor: pointer;
z-index: 9999;
}

.openbtn span {
position: absolute;
width: 100%;
height: 3px;
border-radius: 2px;
display: inline-block;
left: 0;
transition: all .4s;
}

.openbtn span:nth-of-type(1) {
background-color: #002772;
top: 0;
}

.openbtn span:nth-of-type(2) {
background-color: #002772;
top: 12px;
}

.openbtn.active span:nth-of-type(1) {
background-color: #fff;
top: 3px;
left: 0;
transform: translateY(6px) rotate(-30deg);
width: 40px;
}

.openbtn.active span:nth-of-type(2){
background-color: #fff;
top: 15px;
left: 0;
transform: translateY(-6px) rotate(30deg);
width: 40px;
}

}