@import url("base.css");
/***************************************************************************  COMMON STYLE  **************************************************************************/
.notoSan { font-family: 'Noto Sans JP', sans-serif; }

body { background-color: #FFFFFF; font-size: 14px; line-height: 1.5; color: #000000; font-family: 'Noto Sans JP', sans-serif; }
body.fixed { overflow: hidden; }

.inner { max-width: 1522px; width: 100%; margin: 0 auto; }

body.load { width: 100%; height: 100%; overflow: hidden; position: fixed; }
body.close { width: 100%; height: auto; overflow: inherit; position: static; }

.loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background: #000c1f; z-index: 99999; }
.loading.close { opacity: 0; visibility: hidden; z-index: -1; }
.loading .imgLoad { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 999991; }

/* HEADER */
#header, #content, #footer { width: 100%; }

#header { position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; }
#header .main__menu { background: #000; position: relative; text-align: center; }
#header .main__menu .logo { display: inline-block; vertical-align: middle; margin-right: 20px; }
#header .main__menu .logo__images { position: absolute; bottom: -60px; width: 283px; left: 50%; transform: translateX(-50%); z-index: 9; }
#header .main__menu .menu { display: inline-block; vertical-align: middle; padding: 26px 0; }
#header .main__menu .menu li { display: inline-block; vertical-align: middle; }
#header .main__menu .menu li a { color: #fff; font-weight: bold; font-size: 16px; margin: 0 30px; position: relative; }
#header .main__menu .menu li a:after { content: ""; width: 0%; height: 1px; position: absolute; bottom: -3px; left: 50%; transform: translateX(-50%); border-bottom: 1px solid #fff; transition: all 0.5s; opacity: 0; }
#header .main__menu .menu li a:hover:after { width: 70%; opacity: 1; }

/* FOOTER */
.sp { display: none; }

@media (max-width: 1250px) and (min-width: 769px) { #header .main__menu .logo { width: 60px; }
  #header .main__menu .menu li a { margin: 0 10px; } }
@media (max-width: 1200px) { #header .main__menu .menu li a { font-size: 1.3vw; margin: 0 15px; } }
@media (max-width: 880px) and (min-width: 769px) { #header .main__menu .logo { width: 50px; }
  #header .main__menu .menu li a { margin: 0 8px; } }
/* STYLE MOBILE */
@media (max-width: 768px) { .pc { display: none; }
  .sp { display: block; }
  .inner { width: 100%; padding: 0 4%; }
  /* MENU */
  #header .main__menu { background: #000; position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; padding-bottom: 24px; overflow: hidden; }
  #header .main__menu .logo { float: left; width: 59px; display: none; }
  #header .main__menu .hambuger { width: 51px; height: 40px; padding: 0 5px; z-index: 9991; display: flex; justify-content: center; flex-direction: column; text-align: center; margin: 0 auto; }
  #header .main__menu .hambuger span { display: block; height: 5px; width: 100%; background: #fff; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; transition: .25s ease-in-out; }
  #header .main__menu .hambuger span:nth-child(1) { margin-bottom: 5px; }
  #header .main__menu .hambuger span:nth-child(2) { opacity: 1; }
  #header .main__menu .hambuger span:nth-child(3) { margin-top: 5px; }
  #header .main__menu .hambuger.open span:nth-child(1) { margin-bottom: -5px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }
  #header .main__menu .hambuger.open span:nth-child(2) { opacity: 0; }
  #header .main__menu .hambuger.open span:nth-child(3) { margin-top: -5px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
  #header .main__menu .menu { display: none; position: fixed; top: 40px; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); z-index: 99; padding: 30px 40px; }
  #header .main__menu .menu li { border-bottom: 1px solid rgba(132, 132, 132, 0.3); display: block; width: 100%; }
  #header .main__menu .menu li a { font-size: 16px; text-align: center; width: 100%; margin: 0; padding: 10px 0; display: block; letter-spacing: 2px; }
  #header .main__menu .logo__images { bottom: -31px; width: 185px; }
  #footer { padding: 10px 0 35px; }
  #footer .button__top { margin-bottom: 20px; }
  #footer .button__top a { display: block; color: #000; background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.86) 48%, transparent); padding: 5px 0; font-weight: 600; } }

/*# sourceMappingURL=common.css.map */
