/* SEIMEI header/footer (scoped for SWELL child theme) */

/* ===== Header (desktop) ===== */
#header{
  z-index: 3;
  width: 100%;
  background: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0,0,0,.1);
  box-shadow: 0 0 3px rgba(0,0,0,.1);
  background: linear-gradient(108deg, #fff 37%, #323d98 3%, #434EB2 49%, #1d2678 77%);
}
#header .content{padding:0;max-width:1170px;width:100%;margin:0 auto;}
#header .row:after{content:"";display:block;clear:both;}
#header .header-logo{float:left;margin:10px 0;}
#header .header-logo img{width:69px;vertical-align:text-bottom;}

#header nav{float:right;background-size:auto 100px;}
#header nav ul{display:flex;font-size:14px;list-style:none;margin:0;padding:0;}
#header nav ul li{margin:0;padding:0;}
#header nav ul li:first-child a{border-left:none;}
#header nav ul li a{
  padding:0px 20px;
  display:block;
  color:#ffffff;
  font-size:12px;
  font-weight:500;
  line-height:1.2;
  text-decoration:none;
  border-left:#e3e26c solid 1px;
  box-sizing:border-box;
}
#header nav ul li.current-menu-item a{color:#e3e26c;}
#header nav .menu-header-nav-container{padding-top:40px;text-align:right;}

/* menu button (desktop hidden) */
#menu-btn{display:none;}

/* ===== Footer ===== */
footer{clear:left;}
footer .copyright{
  padding:30px 0;
  text-align:center;
  font-size:13px;
  color:#808080;
}
.page-top{
  position:fixed;
  right:10px;
  bottom:20px;
  z-index:2;
  line-height:inherit !important;
}
.page-top a{
  background:#1d2678;
  width:33px;
  height:33px;
  display:block;
  padding:10px;
  border-radius:2px;
  transition:0.3s;
}
.page-top a:hover{opacity:0.6;}
.page-top img{
  width:12px;
  margin:0 auto;
  display:block;
}

/* ===== Mobile menu (SEIMEI behavior) ===== */
@media (max-width: 880px){
  /* constrain header height on mobile */
  #header{
    position:relative;
    overflow:visible;
  }
  #header .content{
    display:flex;
    align-items:center;
    height:55px;
  }
  #header .row{
    display:flex;
    align-items:center;
    width:100%;
  }

  /* show menu button */
  #menu-btn{
    display:block;
    position:absolute;
    z-index:10;
    top:5px;
    right:5px;
    height:45px;
    width:45px;
  }

  /* logo sizing */
  #header .header-logo{margin:3px 0;float:none;}
  #header .header-logo img{width:50px;height:auto;vertical-align:middle !important;}

  /* full-screen overlay via #page.is-active */
  #page.is-active{
    width:100%;
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    z-index:1;
    transition:0.5s;
    -webkit-transition:0.5s;
    opacity:0.9;
  }

  /* nav overlay */
  #header-nav{
    z-index:5;
    position:fixed;
    right:0;
    top:0;
    bottom:0;
    opacity:0;
    width:0;
    transition:0.5s;
    -webkit-transition:0.5s;
    background:rgba(0,0,0,0.95);
  }
  #page.is-active #header-nav{
    width:100%;
    opacity:1;
  }

  /* menu container centers vertically */
  #header-nav .menu-header-nav-container{
    display:table;
    left:0;
    width:100%;
    height:100%;
    padding-top:0;
    text-align:center;
  }
  #header-nav ul{
    float:none;
    display:table-cell;
    margin:0;
    -webkit-transition:all .5s;
    transition:all .5s;
    opacity:1;
    vertical-align:middle;
    list-style:none;
    top:0;
    left:0;
    width:100%;
    height:100%;
    flex-direction:column;
    justify-content:center;
  }
  #header-nav ul li{margin-bottom:0;}
  #header-nav ul li a{
    padding:15px 10px;
    color:#fff;
    text-align:center;
    border-left:none;
    font-size:14px;
  }

  /* hamburger lines */
  #menu-btn.menu-trigger span{
    position:absolute;
    left:8px;
    display:block;
    width:28px;
    height:1px;
    background:#ffffff;
    -webkit-transition:all 0.3s ease-out;
    transition:all 0.3s ease-out;
    top:10px;
  }
  #menu-btn.menu-trigger span:nth-of-type(1){top:13px;}
  #menu-btn.menu-trigger span:nth-of-type(2){top:22px;}
  #menu-btn.menu-trigger span:nth-of-type(3){top:31px;}

  #menu-btn.menu-trigger.is-active span:nth-of-type(1){
    top:22px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    background:#fff;
  }
  #menu-btn.menu-trigger.is-active span:nth-of-type(2){opacity:0;}
  #menu-btn.menu-trigger.is-active span:nth-of-type(3){
    top:22px;
    -webkit-transform:rotate(135deg);
    transform:rotate(135deg);
    background:#fff;
  }
}

/* 採用情報 と お問い合わせ の間の黄色線を消す */
#menu-header-nav li:nth-child(4) a::after,
#menu-header-nav li:nth-child(5) a::after{
  display:none !important;
}
