@charset "utf";


header {
  width: 100%;
  position: fixed;
  z-index: 1001;
  top: 0;
  background-color: #ffffff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  /*---↑影を無くす場合にコメントアウト↑---*/
  position: fixed;
  z-index: 1001;
}


#grobal-nav {
  width: 100vw;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header>.container {
  width: 328.22px;
  margin: 0 auto;
  height: 100%;
  display: flex;
}

.header-left {
  padding: 0 25px 0 0;
  margin-top: 7px;
}

.header-left p {
  font-size: 15px;
  font-family: YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
  color: #454545;
  font-weight: 100;
  letter-spacing: 2px;
  margin-top: 3px;
}

.header-left a {
  font-size: 24px;
  font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', '游明朝体', sans-serif;
  color: #454545;
  font-weight: normal;
}

.header-lefts {
  display: flex;
}

.industry p {
  font-family: "MS PMincho";
  font-weight: normal;
  font-size: 19px;
  animation: color 15.965s infinite;
  color: #C8272D;
  padding: 20px 0;
  margin-left: 1px;
}

.burger-btn {
  display: block;
  width: 39px;
  height: 39px;
  position: relative;
  z-index: 1001;
  margin-top: 15px;
  margin-right: 15px;
}

.bar {
  width: 34px;
  height: 4px;
  display: block;
  position: absolute;
  left: 100%;
  transform: translateX(-50%);
  background-color: dimgrey;
  border-radius: 2px;
  transition: transform .5s, opacity .3s;
}

.bar_top {
  top: 22px;
}

.bar_mid {
  top: 94%;
  transform: translate(-50%, -50%);
}

.bar_bottom {
  bottom: -11px;
}

.burger-btn.close .bar_top {
  transform: translate(-72%, 11px) rotate(45deg);
}

.burger-btn.close .bar_mid {
  opacity: 0;
  transform: translateX(1px);
}

.burger-btn.close .bar_bottom {
  transform: translate(-74.5%, -12px) rotate(-45deg);
}

.close {
  opacity: 1;
  visibility: visible;
}

.nav-box {
  display: none;
}

.sp_menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 127px;
  padding-top: 20px;
  text-align: left;
  font-size: 22px;
  background-color: #fff;
  z-index: 1001;
  transform: translateX(100%);
  transition: .4s all;
}

.sp_menu>ul {
  margin-top: 76px;
  line-height: 45px;
  text-align: center;
  color: #333333;
  background: none;
}

.sp_menu>ul>li {
  transition: all .5s;
  cursor: pointer;
  padding: 11px 0;
}

.sp_menu ul li a:after {
  display: none;
}

.nav-open {
  transform: translateX(0);
}

.nav-end {
  opacity: 0;
}

.nav-open #contents {
  transform: translateX(-150px);
}

.nav-none {
  opacity: 0;
  z-index: 1001;
  transform: translateX(-150px);
}

.fadein {
  opacity: 0;
  transform: translateY(20px);
  transition: all 3.0s;
}

.fadein.show {
  opacity: 1;
  transform: translateY(0px);
  transition: all 2.0s;
}

#nav-btn {
  display: block;
  margin-bottom: 49px;
}

#navigation ul {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
  /* 追加 */
}

#navigation ul.active {
  max-height: 200px;
  /* 適切な最大高さに変更してください */
}

#navigation>li>a {
  font-size: 15px;
  letter-spacing: 2px;
  color: #454545;
  font-family: YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
  font-weight: lighter;
}

.nav-open .sp_menu {
  transform: translateX(0);
}

.subMenu li {
  background-color: #e7e7e7;
  border-bottom: 1px dotted #ffffff;
}

.subMenu a {
  display: inline-block;
  text-align: left;
  letter-spacing: 2px;
  font-size: 11px;
  color: #454545;
  font-family: YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
  font-weight: lighter;
}

.small_font a {
  font-size: 11px;
  transform: scale(0.8);
  letter-spacing: 0.5px;
}

/*------↓ タブレットサイズ 799px ↓------*/
@media screen and (min-width: 600px) {

  header>.container {
    width: 453px;
  }

  img {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
  }

  .header-lefts {
    display: flex;
  }

  .bar {
    width: 50px;
    height: 5px;
    left: 160%;
  }

  .bar_top {
    top: 17px;
  }

  .bar_mid {
    top: 90%;
    transform: translate(-50%, -50%);
  }

  .bar_bottom {
    bottom: -14px;
  }

  .burger-btn.close .bar_top {
    transform: translate(-90%, 15px) rotate(45deg);
  }

  .burger-btn.close .bar_mid {
    opacity: 0;
    transform: translateX(1px);
  }

  .burger-btn.close .bar_bottom {
    transform: translate(-90%, -15px) rotate(-45deg);
  }

  .bars {
    margin-top: 10px;
  }

  #grobal-nav {
    height: 90px;
  }

  .burger-btn {
    margin-top: 32px;
    margin-right: 50px;
  }

  .header-left p {
    font-size: 13px;
    margin-top: 4px;
  }

  .header-left a {
    font-size: 20px;
  }

  .industry p {
    font-size: 13px;
    margin-left: -9px;
  }

  .sp_menu {
    width: 200px;
    padding-top: 40px;
    font-size: 40px;
  }

  #navigation ul.active {
    max-height: 400px;
  }

  #navigation>li>a {
    font-size: 17px;
    margin: 20px 0;
  }

  .subMenu li {
    height: 64px;
  }

  .subMenu a {
    font-size: 13px;
    margin: auto 0;
  }

  .small_font a {
    font-size: 13px;
  }

}


/*------↓ タブレットサイズ ↓------*/
@media screen and (min-width: 800px) {

  header>.container {
    width: 648px;
  }

  .bar {
    left: 170%;
  }

  .header-left {
    padding: 0 40px 0 0;
  }

  img {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
  }

  .bar {
    width: 50px;
    height: 5px;
  }

  .bar_top {
    top: 17px;
  }

  .bar_mid {
    top: 90%;
    transform: translate(-50%, -50%);
  }

  .bar_bottom {
    bottom: -14px;
  }

  .burger-btn.close .bar_top {
    transform: translate(-90%, 15px) rotate(45deg);
  }

  .burger-btn.close .bar_mid {
    opacity: 0;
    transform: translateX(1px);
  }

  .burger-btn.close .bar_bottom {
    transform: translate(-90%, -15px) rotate(-45deg);
  }

  .bars {
    margin-top: 10px;
  }

  .header-lefts {
    display: flex;
  }

  #grobal-nav {
    height: 90px;
  }

  #nav-btn {
    margin-top: 20px;
    margin-right: 50px;
  }

  .burger-btn {
    margin-top: 40px;
    margin-right: 30px;
  }

  .header-left p {
    margin-top: 6px;
    font-size: 15px;
  }

  .header-left a {
    font-size: 21px;
  }

  .industry p {
    font-size: 15px;
  }

  .sp_menu {
    width: 220px;
    padding-top: 40px;
    font-size: 40px;
  }

  #navigation ul.active {
    max-height: 400px;
  }

  #navigation>li>a {
    font-size: 20px;
    margin: 35px 0;
  }

  .subMenu li {
    height: 64px;
  }

  .subMenu a {
    font-size: 15px;
    margin: auto 0;
  }

  .small_font a {
    font-size: 15px;
  }

  /*------↓ パソコンサイズ ↓------*/
  @media screen and (min-width: 1024px) {
    .sp_menu {
      display: none;
    }

    header>.container {
      width: 1000px;
    }

    header .container {
      width: 100%;
      height: 100%;
      display: flex;
    }

    #grobal-nav {
      width: 920px;
      height: 90px;
      margin: 0 auto;
    }

    .header-lefts {
      margin-left: 1px;
    }

    .header-left {
      width: 190px;
      padding: 0 25px;
    }

    .header-left p {
      font-size: 13px;
      margin-top: 3px;
      letter-spacing: 2px;
    }

    .industry p {
      font-size: 16px;
      margin-left: -64px;
    }

    .nav-box {
      padding: 0 0 0 70px;
      margin-left: auto;
      transition: all 1s ease;
      display: block;
    }

    .pc_menu {
      margin-left: auto;
      width: 470px;
      margin-left: auto;
    }

    .pcMenu {
      display: flex;
      justify-content: space-around;
      margin-right: 15px;
    }

    .menu {
      width: 25%;
      text-align: center;
      margin: auto 0;
    }

    .accordion {
      cursor: pointer;
      padding: 38.5px 0;
      width: 100%;
      outline: none;
      transition: 0.4s;
    }

    .accordion>a {
      color: #454545;
      font-family: YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
      font-weight: normal;
      text-decoration: none;
      display: block;
      padding: 0 8px;
      font-size: 14px;
    }

    .accordion:hover {
      background-color: #eee;
      padding-right: 20px;
      padding-left: 20px;
      transition: 0.8s;
    }

    .pcSubMenu {
      background-color: white;
      position: absolute;
      bottom: 0;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.6s ease-out, transform 0.6s ease-out;
      transform: translateY(100%);
      margin-left: -20px;
    }

    .pcSubMenu a {
      padding: 24px 33px;
      font-size: 12px;
      color: #454545;
      background-color: white;
      border-bottom: 1px dotted #e7e7e7;
      font-family: YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
      font-weight: lighter;
    }

    .pcSubMenu a:hover {
      background-color: #eee;
      transition: 0.9s;
    }

    #nav-btn {
      display: none;
    }
  }

  @media screen and (min-width: 1200px) {
    #grobal-nav {
      width: 97%;
      padding: 0 90px;
    }

    .header-left p {
      font-size: 18px;
    }

    .header-left a {
      font-size: 27px;
    }

    .industry p {
      font-size: 20px;
      margin-left: -34px;
    }

    #nav-btn {
      display: none;
    }

    .pc_menu {
      width: 500px;
    }
    
    .accordion>a {
      font-size: 14px;
    }

    .pcSubMenu a {
      font-size: 12px;
    }

  }

}