.drawer-overlay { z-index: 0; }

body header { display: table; width: 100%; height: 100px; position: fixed; background-color: white; z-index: 1; border-bottom: none; }
body header h1.logo { display: block; height: 40px; }
body header h1.logo a { display: block; height: 40px; }
body header h1.logo a img { height: 100%; width: auto; }
body header h1.sp { display: block; height: 60px; }
body header h1.sp a { display: block; height: 60px; }
body header h1.sp a img { height: 100%; width: auto; }
body header div.sp { display: block; }
body header div.sp .drawer-hamburger { background-color: #E93A29; width: 100px; height: 100px; box-sizing: border-box; background-image: url(../img/sp_menu.gif); background-size: cover; background-position: center; }
body header div.sp .drawer-nav { background-color: #E93A29; }
body header div.sp .drawer-nav .drawer-menu ul.menu li.menu-item a { display: block; color: #fff; padding: 2em 1em; border-bottom: 1px solid rgba(255, 255, 255, 0.5); font-size: 1rem; }
body header .nav { display: none; }
body .mainVi { padding-top: 100px; }
body .mainVi img { display: block; width: 100%; height: auto; }
body .container.red { background-color: #E93A29; }
body .container.yellow { background-color: #FFF100; margin-top: 0; }
body .container.green { background-color: #90C421; margin-top: 0; }
body .container > .inner { padding: 1rem; }
body .container > .inner h2 { font-size: 1.5rem; color: white; font-weight: bold; background-color: #E93A29; -webkit-border-radius: 100em; -moz-border-radius: 100em; -ms-border-radius: 100em; -o-border-radius: 100em; border-radius: 100em; text-align: center; padding: 0.5em 0; max-width: 80%; margin: 1rem auto; }
body .container > .inner .top p { text-align: center; }
body .container > .inner .top p img { max-width: 100%; }
body .container > .inner .intro iframe { width: 100%; min-height: 320px; display: block; margin: 1rem auto; }
body .container > .inner .intro p { width: 100%; margin: 1rem auto; text-align: left; font-size: 1rem; line-height: 1.5em; }
body .container > .inner .kc { padding-top: 1rem; margin-bottom: 1rem; }
body .container > .inner .kc .base { padding: 1rem 0; position: relative; width: 100%; margin: 0 auto; background-color: white; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; }
body .container > .inner .kc .base .title { position: absolute; top: -2.2em; width: 100%; }
body .container > .inner .kc .base > p { font-size: 16px; padding: 1em 1em 0 1em; text-align: center; }
body .container > .inner .kc .base ul { padding: 1rem; overflow: hidden; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: -moz-flex; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
body .container > .inner .kc .base ul li { float: left; }
body .container > .inner .kc .base ul li img { display: block; width: 100%; padding-bottom: 10px; }
body .container > .inner .kc .base ul li p { line-height: 1.5em; text-align: center; }
body .container > .inner .kc .base ul li h3 { text-align: center; font-weight: bold; line-height: 1.5em; }
body .container > .inner .kc .base ul.col3 { margin: 0 -2%; }
body .container > .inner .kc .base ul.col3 li { width: 45%; margin: 2%; }
body .container > .inner .kc .base ul.col3 li p { font-size: 14px; }
body .container > .inner .kc .base ul.col3 li h3 { font-size: 16px; }
body .container > .inner .kc .base ul.col4 { margin: 0 -1%; }
body .container > .inner .kc .base ul.col4 li { width: 30%; margin: 1%; }
body .container > .inner .kc .base ul.col4 li p { font-size: 14px; }
body .container > .inner .kc .base ul.col4 li h3 { font-size: 16px; }
body .container > .inner .event { padding-top: 1rem; margin-bottom: 1rem; }
body .container > .inner .event .base { padding: 1rem 0; position: relative; width: 100%; margin: 0 auto; background-color: white; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; }
body .container > .inner .event .base .title { position: absolute; top: -2.2em; width: 100%; }
body .container > .inner .event .base > p { font-size: 16px; padding: 1em 1em 0 1em; text-align: center; }
body .container > .inner .event .base ul { padding: 20px 0; overflow: hidden; width: 100%; min-height: 100%; margin: 0 auto; }
body .container > .inner .event .base ul li { float: none; width: 100%; margin: 1rem 0; padding: 1rem; }
body .container > .inner .event .base ul li img { display: block; width: 50%; height: auto; margin: 0 auto; padding-bottom: 10px; }
body .container > .inner .event .base ul li time { display: block; font-size: 14px; color: #e83928; font-weight: bold; text-align: center; }
body .container > .inner .event .base ul li p { line-height: 1.6em; text-align: left; font-size: 14px; text-align: left; }
body .container > .inner .event .base ul li p.cap { font-size: 12px; }
body .container > .inner .event .base ul li h3 { text-align: left; font-weight: bold; line-height: 1.6em; font-size: 18px; text-align: center; }
body .container > .inner .access { padding-bottom: 1rem; }
body .container > .inner .access p, body .container > .inner .access h4 { text-align: center; line-height: 1.5em; padding: 0.5rem; }
body .container > .inner .access h4 { font-size: 20px; font-weight: bold; }
body .container > .inner .access p { font-size: 14px; }
body .container > .inner .access a { font-size: 14px; text-decoration: underline; }
body .container > .inner .access a:hover { text-decoration: none; }
body .container > .inner .access iframe { display: block; margin: 0 auto; width: 100%; min-height: 320px; }
body .line { text-align: center; }
body .line img { display: block; max-width: 100%; margin: 0 auto; }
body footer { background-color: #EEEEEE; margin-top: 0; padding-top: 1rem; }
body footer .inner .logo { text-align: center; }
body footer .inner .cap { width: 100%; margin: 0 auto; }
body footer .inner .cap h6, body footer .inner .cap h5 { font-weight: bold; font-size: 14px; line-height: 1.5em; text-align: center; }
body footer .inner .cap p { font-size: 12px; line-height: 1.5em; text-align: center; padding: 0.5em 0 1em 0; }
body footer .copyright { background-color: #23AC3A; color: white; text-align: center; font-size: 12px; padding: 1em; }
body .topBtn { display: block; width: 70px; height: 70px; position: fixed; right: 0; bottom: 0; }
body .topBtn img { display: block; }
