@charset "UTF-8";

/* header
-------------------------------------------------- */
header {
  display:block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
}

header #header-box {
  width:100%;
  position: relative;
  box-sizing: border-box;
  padding:0 2% ;
  background: #FFF;
  border-bottom:1px solid #000;
}

@media only screen and  (max-width: 810px) {
header #header-box {
  padding:0;
}
}

.headerArea{
  margin:0 auto;
  width:100%;
  max-width:1200px;
  max-width:initial;
  padding:0;
  position: relative;
}

/* header #logo */

header #logoArea{
  width:30%;
  vertical-align: middle;
  display:inline-block;
  padding:17px 0 ;
}

header #logoArea #logo{
  width:246px;
  height:45px;
  vertical-align: middle;
  display:inline-block;
  background-size:auto 45px;
  background-repeat: no-repeat;
  background-image: url(../images/common/logo.png);
}

header #logo a{
  width:246px;
  height:45px;
  text-decoration:none;
  text-indent:-9999px;
  display:block;
}

@media only screen and  (max-width: 810px) {
header #logoArea{
  width:70%;
  padding:10px 0 10px 10px;
}

header #logo{
  width:219px;
  height:40px;
  background-size:auto 40px;
}

header #logo a{
  width:219px;
  height:40px;
}
header .logo-p{
  padding-left:10px;
}
}

/*gnav
-------------------------------------------------- */
.gnav-wrapper{
  position: relative;
  width:70%;
  display:inline-block;
  box-sizing: border-box;
  vertical-align: top;
  text-align: right;
}


@media only screen and  (max-width: 810px) {
.gnav-wrapper {
  display:none;
}
}

.fixed {
  position: fixed;
  top: 0;
  z-index: 1000;
  -moz-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
}

.gnav {
 width:100%;
 margin: 0 auto;
}

.main-wrapper {
  text-align: center;
  text-align: right;
}

.main-wrapper li {
  display:inline-block;
  margin:0 15px;
  width:auto;
  font-size:15px;
  vertical-align: top;
}

@media screen and (max-width: 1150px) {
.main-wrapper li {
  margin:0 10px;
}
}

.main-wrapper li .gmtx {
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  line-height: 1.5;
  font-size:13px;
  text-align: left;
  text-align: center;
}

.main-wrapper li .gmtx span {
  font-size:16px;
  font-family: 'Alata', sans-serif;
  font-weight: 300;
  letter-spacing:0.05em;
}

.main-wrapper li .gmtx a{
  display:block;
  box-sizing: border-box;
  padding: 16px 2px;
  text-decoration: none;
  color:#2E3092;
}

.main-wrapper li .gmtx a:hover {
  text-decoration: none;
  color: #E23535;
  transition: .5s;
}


/* .megamenu
-------------------------------------------------- */
.gnav .mgl:hover {
  background-image: url(../images/common/popup_arrow.png);
  background-repeat: no-repeat;
  background-position: center bottom;
}

.gnav > li:hover .megamenu {
  max-height: 9999px;
  opacity: 1;
  padding: 1% 0;
}

.megamenu li:hover {
  background-color:#00194C;
}

.megamenu {
  background: #00194C;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  width: 100%;
  position: absolute;
  top: 56px;
  left: 0;
  z-index: 999;
  transition: .8s;
}

.megamenu-inner {
  text-align: center;
  width:100%;
  box-sizing: border-box;
  padding:0.5% 1%;
  margin:0 auto;
}

.megamenu-inner li {
  width:25%;
  display:inline-block;
  padding: 10px 1%;
  box-sizing: border-box;
  height: auto;
  text-align: center;
  vertical-align: top;
}

.megamenu-inner img {
  width: 100%;
  height:auto;
}

.megamenu-inner li a:hover { opacity: 0.7;transition: .2s;}


.megamenu-inner-img {
  margin: 0 0 10px;
}

.megamenu-inner-text p {
  font-size:1.05em;
  text-align: center;
  display:inline-block;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#FFF;
  line-height:1.6;
  letter-spacing : 0em;
}

.megamenu-inner-text p span{
  font-family: 'Roboto', sans-serif;
  font-weight:400;
}

a .megamenu-inner-text p { text-decoration: none; }
a:hover .megamenu-inner-text p { text-decoration: none;color:#6393F5;transition: .5s;}
