header {position: relative;padding: 1.5rem 0; border-bottom: 1px solid #eee; z-index: 100;}
header h1 {display: flex; justify-content: center; align-items: center;}
header h1 a {height: 3.5rem; text-align: center;}
header h1 a img {height: 100%;}
header > div {position: absolute; top:50%; height: 3rem; margin-top: -1rem;}
header .open_nav { left: 1.5rem;}
header .back {right: 1.5rem;}
header div img {height: 100%;}

nav {display: none;position: absolute; left: 0; top:0; width: 70%; z-index: 150; background: #fff; height: 100vh;}
nav.on {display: block;}
nav h1 {height: 3rem; margin: 1.5rem 1.5rem 1.5rem 6rem;}
nav h1 img {height: 100%;}
nav ul {display:flex; flex-flow:column; margin-top: 5rem;}
nav ul li {display: flex; align-items: center; flex-flow: column;}
nav ul li a {display: inline-block; text-align: center; font-size:2rem; font-weight: bold; margin: 1rem 2.5rem 2rem; color:#171c61; border-bottom: 1px solid #171c61;}
nav .close_nav {position: absolute; left: 1.5rem; top:1.5rem; height: 3rem;}
nav .close_nav img {height: 100%;}
.nav_bg {background: rgba(0,0,0,0.6); position: absolute; left: 0; top:0; width: 100%; height: 100vh; z-index: 140; display: none;}
.nav_bg.on {display: block;}

footer {position: fixed; width: 100%; left: 0; bottom:0; border-top: 1px solid #ccc; background: #fff;z-index:1000 }
footer ul {display:flex;}
footer ul li {width: 50%; border-right: 1px solid #ccc; display: flex; align-items: center; justify-content: center; }
footer ul li:nth-child(2) a {font-size: 1.6rem; letter-spacing: -0.22rem; white-space: nowrap;}
footer ul li:last-child {border-right: 0;}
footer ul li a {display: block;text-align: center; line-height: 1.2; font-size:1.8rem;padding: 0 .5rem;  display: flex; align-items: center; justify-content: center; padding: 0.5rem 0;}
footer ul li a.active {color:#fff; position: relative; background: #b7dbea;}