@charset "UTF-8";

/* ------------------------------------------
  RESET
--------------------------------------------- */

body, div,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, dl, dt, dd, ol, ul, li, hr,
fieldset, form, label, legend, th, td,
article, aside, figure, footer, header, hgroup, menu, nav, section,
summary, hgroup {
  margin: 0;
  padding: 0;
  border: 0;
}

a:active,
a:hover {
  outline: 0;
}

@-webkit-viewport { width: device-width; }
@-moz-viewport { width: device-width; }
@-ms-viewport { width: device-width; }
@-o-viewport { width: device-width; }
@viewport { width: device-width; }


/* ------------------------------------------
  BASE DEMO STYLES
--------------------------------------------- */

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  color: #37302a;
  background: #fff;
  min-height: 5000px;
  font: normal 100%/1.4 sans-serif;
}

section {
  border-bottom: 1px solid #999;
  float: left;
  width: 100%;
  height: 800px;
}


/* ------------------------------------------
  NAVIGATION STYLES
  (+ responsive-nav.css file is loaded in the <head>)
--------------------------------------------- */

.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}

.nav-collapse,
.nav-collapse * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: sticky; /* ★メニュー固定 */
  position: -webkit-sticky; /* ★メニュー固定 */
  top: 0px; /* ★メニュー固定 */

}

.nav-collapse,
.nav-collapse ul {
  list-style: none;
  width: 100%;
  float: left;
  background: #3d64b2;
  z-index: 2;
}

.nav-collapse ul {
  display: flex; /* ★メニュー固定 */
  width: 100%; /* ★メニュー固定 */
  margin: 0; /* ★メニュー固定 */
  box-sizing: border-box; /* ★メニュー固定 */
}

.nav-collapse li {
  float: left;
  /*width: 100%;*/
  width: calc(100% / 4); /* ★メニュー固定 */
  padding: 0; /* ★メニュー固定 */
  text-decoration: none; /* ★メニュー固定 */
  text-transform: uppercase; /* ★メニュー固定 */
}

.nav-collapse a {
  color: #fff;
  text-decoration: none;
  width: 100%;
  background: #f4421a;
  padding: 0.7em 0.9em;
  float: left;
}

.nav-collapse ul ul a {
  background: #ca3716;
  padding-left: 2em;
}

#footerFloatingMenu {
  display: none;
}




@media screen and (min-width: 40em) {
  .nav-collapse li {
    /*width: 16.6%;*/ /* 2021.11 メニュー数4（25%）→6に増えた */
    *width: 24.9%; /* IE7 Hack */
    _width: 19%; /* IE6 Hack */
  }
  .nav-collapse a {
    margin: 0;
    padding: 0.8em;
    float: left;
    text-align: center;
    border-bottom: 0;
    border-right: 1px solid white;
  }
  .nav-collapse ul ul a {
    display: none;
  }
}




/* ------------------------------------------
  フッターフローティングメニュー（スマホのみ）
  幅430px（iPhone14ProMax想定）以下に適用、431以上はPC相当
--------------------------------------------- */
@media screen and (max-width: 430px) {
#scroll_top {
  display: none;  /* 右下の『TOPに戻る』ボタンを非表示にする */
}

footer {
  margin-bottom: 91px;
}
#footerFloatingMenu {
  display: block;
  width: 100%;
  position: fixed;
  background: #003990;
  left: 0px;
  bottom: 0px;
  z-index: 99;
  text-align: center;
  padding: 0 auto;
  opacity: 0.8;
}
#footerFloatingMenu nav {
  vertical-align: middle !important;
}
#footerFloatingMenu ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding:0;
  margin:0;
  vertical-align: middle !important;
}
}




@media screen and (max-width: 399px) {
footer {
  margin-bottom: 83px;
}
}



/* ------------------------------------------
  NAV TOGGLE STYLES
--------------------------------------------- */

@font-face {
  font-family: "responsivenav";
  src:url("../icons/responsivenav.eot");
  src:url("../icons/responsivenav.eot?#iefix") format("embedded-opentype"),
    url("../icons/responsivenav.ttf") format("truetype"),
    url("../icons/responsivenav.woff") format("woff"),
    url("../icons/responsivenav.svg#responsivenav") format("svg");
  font-weight: normal;
  font-style: normal;
}

.nav-toggle {
  position: fixed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
  text-indent: -999px;
  position: relative;
  overflow: hidden;
  width: 157px;
  height: 47px;
  float: right;
}

.nav-toggle:before {
  color: #f4421a; /* Edit this to change the icon color */
  font-family: "responsivenav", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  font-size: 28px;
  text-transform: none;
  position: absolute;
  content: "MENU ≡";
  text-indent: 0;
  text-align: center;
  line-height: 44px;
  speak: none;
  width: 100%;
  top: 0px;
  left: 0;
}

.nav-toggle.active::before {
  font-size: 24px;
  content:"CLOSE ×";
  text-align: right;
  padding-right: 23px;
}
