.header {
  width: 100%;
  height: 60px;
  background: #fff;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1)
}

.header .hamburger {
  display: none;
  position: relative
}

.header .hamburger span {
  display: block;
  width: 24px;
  height: 1px;
  border-bottom: #333 4px solid;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%)
}

.header .hamburger::before,
.header .hamburger::after {
  display: block;
  content: "";
  width: 24px;
  height: 1px;
  border-bottom: #333 4px solid;
  position: absolute;
  bottom: 14px;
  left: 10px;
  transition: all 0.5s;
}

.header .hamburger::before {
  top: 14px;
}

.header .hamburger.is-active span {
  border: none;
}

.header .hamburger.is-active::before,
.header .hamburger.is-active::after {
  width: 30px;
  top: 24px;
  left: 7px
}

.header .hamburger.is-active::before {
  transform: rotate(-45deg)
}

.header .hamburger.is-active::after {
  transform: rotate(45deg)
}

.header__logoArea {
  padding-left: 30px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  line-height: 1
}

.header__logo a {
  color: #e82212;
  text-decoration: none;
  transition: all 0.3s linear
}

.header__logo a:hover {
  opacity: 0.7
}

.header__logo img {
  width: 89px;
  height: 35px;
}

.header__shoulder {
  padding-left: 10px;
}

.header__shoulder p {
  font-size: 9px;
  line-height: 1;
  color: #777;
  margin: inherit;
}

.header__nav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center
}

.header__nav .pcNav__list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}

.header__nav .pcNav__item a {
  display: block;
  font-size: 1.2rem;
  color: #333;
  text-decoration: none;
  padding: 0 1vw 0 0;
  transition: all 0.3s linear
}

.header__nav .pcNav__item a:hover {
  color: #e82212
}

#rightMenu.is-active {
  display: block;
}

.dropbtn {
  display: flex;
  width: 360px;
  height: 60px;
  padding: 12px 28px 12px 0;
  background-color: #333;
  color: white;
  font-size: 13px;
  border: none;
  cursor: pointer;
  vertical-align: middle;
  text-align: left;
  justify-content: center;
  align-items: center;
}

.dropbtn .left-content {
  display: flex;
  top: 0;
  left: 0;
  width: 60px;
  height: 60px;
  margin-right: 30px;
  justify-content: center;
  align-items: center;
  background: #2B2B2B;
}

.dropbtn .center-content {
  width: 238px;
}

.dropbtn .right-content {
  margin-left: 10px;
  color: #E82212;
}

.dropdown-content {
  position: absolute;
  display: none;
  width: 360px;
  min-width: 294px;
  height: 41px;
  background-color: #FFFFFF;
  z-index: 999;
  font-size: 13px;
}

.dropdown-content a {
  position: relative;
  color: #333;
  padding: 15px 20px 15px 55px;
  text-decoration: none;
  display: block;
  background-color: #FFFFFF;
  border: 1px solid #E7E7E7;
}

.dropdown-content a:hover {
  background-color: #FFF0F0;
}

.dropdown-content i {
  margin-right: 10px;
}

.dropdown-content ul li:first-of-type {
  display: flex;
}

.dropdown-content i {
  margin-right: 16px;
  font-size: 18px;
}

.dropdown-content li.lower {
  display: none;
}

.dropbtn .left-content i {
  font-size: 22px;
}

.dropbtn .center-content {
  font-size: 12px;
}

#service li:first-of-type,
#lead li:first-of-type {
  position: relative;
  color: #333;
  padding: 15px 20px 15px 55px;
  text-decoration: none;
  display: block;
  border: 1px solid #E7E7E7;
  background: #F3F3EF;
  cursor: pointer;
}

#service li:first-of-type:after,
#lead li:first-of-type:after {
  position: absolute;
  content: '\f078';
  font-size: 19px;
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  right: 20px;
  font-size: 16px;
  transition: all .3s;
}

#service li:first-of-type:before {
  font-size: 19px;
}

.header .dropbtn .left-content .list-svg {
  height: 22px;
  width: 22px;
}

#logout:before,
.header .dropdown-content .sp-only-svg {
  position: absolute;
  height: 28px;
  top: calc((100% - 28px)/2);
  font-weight: 900;
  left: 20px;
  font-size: 16px;
  transition: all .3s;
}

.service-svg {
  position: absolute;
  display: block;
  height: 28px;
  top: calc((100% - 28px)/2);
  font-weight: 900;
  left: 20px;
  font-size: 16px;
  transition: all .3s;
}

#lead li a:before {
  position: absolute;
  display: block;
  font-size: 19px;
  font-weight: 900;
  left: 20px;
  font-size: 16px;
  transition: all .3s;
}

.lead-svg {
  position: absolute;
  display: block;
  font-weight: 900;
  left: 20px;
  font-size: 16px;
  transition: all .3s;
}

.dropdown-content .accordion.open:after {
  transform: rotate(180deg);
}

.dropdown-content #logout {
  background: #F3F3EF;
}

.dropdown-content a .fa-chevron-up {
  position: absolute;
  right: 0;
  font-size: 18px;
}

.header .hamburger {
  display: none;
}

.header .dropdown-content .sp-only {
  display: none;
}

.header__nav ul {
  margin: inherit;
}

/*** [有料プランの詳細はこちら]ボタン ***/
#pagetop > .plan-btn {
  display: none;
}

.plan-btn {
  width: 252px;
  height: 60px;
}

.plan-btn a {
  display: block;
  background: #E82212;
  color: #fff;
  padding: 17px 0 0;
  text-align: center;
  transition: all 0.3s linear;
  text-decoration: none;
  font-size: 16px;
  height: 100%;
}

.plan-btn a:hover {
  background-color: #c02518;
  cursor: pointer;
}

@media only screen and (max-width: 1250px) {
  .plan-btn a {
    font-size: 14px;
  }
}


@media only screen and (max-width: 1023px) {
  .wrapper {
    width: 100%;
  }

  .header__logoArea {
    display: block;
    padding-left: 0;
    text-align: center;
    width: 100%;
  }

  .header .hamburger__notLogin {
    display: block;
    width: 5%;
    height: 100%;
  }

  .header__shoulder {
    width: auto;
    padding-left: 0;
    margin: 0 auto;
    font-size: 0.8rem;
    text-align: center;
  }

  .header__logo img {
    width: 66px;
    height: 26px;
  }

  .header__nav .pcNav {
    display: none;
  }

  .header.sp-center {
    justify-content: center;
  }

  .header .dropdown-content .sp-only {
    display: block;
    background: #F3F3EF;
  }

  .header.logged-out .dropdown-content {
    left: 0;
  }

  .header__nav .plan-btn {
    display: none;
  }

  #pagetop > .plan-btn {
    height: 40px;
    position: fixed;
    top: 60px;
    left: 0;
    width: 100%;
    display: block;
    z-index: 900;
  }

  #pagetop > .plan-btn a {
    font-size: 12px;
    padding: 10px 0 0;
    text-decoration: underline;
  }
}

@media only screen and (max-width: 768px) {
  .header .hamburger {
    display: block;
    width: 10%;
    height: 100%;
  }

  .dropbtn {
    display: none;
  }

  .dropdown-content {
    width: 100%;
  }

  #rightMenu {
    display: none;
  }

  #rightMenu.dropdown-content.is-active {
    display: block;
    left: 0;
    top: 60px;
  }
}
