.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 110; }

.js-header[data-state="2"] {
  pointer-events: none;
}

.header.is-menu-show .header__container {
  -webkit-transform: none !important;
  transform: none !important; }
.header.is-menu-show .meta__logo img {
  width: 107px; }
.header[data-state="1"] .header__container {
  -webkit-transform: translateY(-108px);
  transform: translateY(-108px); }
.header[data-state="1"] .header-menu {
  transition-property: opacity;
  transition-delay: .5s; }
.header[data-state="2"] .header-menu {
  opacity: 0;
  pointer-events: none; }
.header[data-state="2"] .menu-button {
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateY(0);
  transform: translateY(0); }
.header__container {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 51px 200px 41px 52px;
  justify-content: space-between;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .5s;
  background: white; }
.header__container.logout {
  padding: 51px 0 41px 29px;}
.header__container.lease {
  display: flex;
  height: 112px;
  padding: 51px 0 41px 0;
  text-align: center;
}

.meta-lease {
  display: block;
  width: 100%;
}

.meta__logo {
  position: fixed;
  top: 25px;
  left: 53px;
  z-index: 3; }
.header__container.logout .meta__logo {
  left: 35px;}
.header__container.lease .meta__logo {
  position: initial;
  top: initial;
  left: initial;
}
.meta__logo a {
  display: inline-block; }
.meta__logo img {
  width: 167px;
  height: auto;
  transition: width, .5s; }

.header-menu__content-container {
  display: flex;
  align-items: center;
  padding: 0 50px 0 0; }
.header__container.logout .header-menu__content-container {
  padding: 0 20px 0 0;}
.header-menu-content:not(:last-child) {
  margin: 0 25px 0 0; }



.header-menu__content-container .list-count {
  display: inline-block;
  font-size: 16px;
  color: #fff;
  line-height: 20px;
  text-align: center;
  width: 20px;
  height: 20px;
  background-color: #288cd2;
  border-radius: 100%; }


 /* 2024/01/09誰でも乗れるプランページ追加に伴いcss追加 */

  .header-menu-content {
    position: relative;
  }

  .header-menu-content ul{
    font-size: 15px;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #fff;
    z-index: 120;
    display: none;
    padding: 10px 0;
  }



  .header-menu-content:hover ul {
    display: block;
  }

  .no-hover-change:hover {
    color: inherit !important;
}

.header-menu-content__link {
  font-weight: 700;
  transition-property: color;
  transition-duration: .3s;
  color: #000;
  text-decoration: none; }
.header-menu-content__link:hover {
  color: #29abe2; }

.header-menu-cv {
  position: absolute;
  top: 0;
  right: 0;
  width: 200px;
  text-align: center; }
.header-menu-cv__link {
  display: block;
  padding: 46px 0;
  background: #cccccc;
  font-weight: 700;
  transition-property: background, color;
  transition-duration: .3s;
  color: #000;
  text-decoration: none; }
.header-menu-cv__link:hover {
  background: #29abe2;
  color: white; }


/* LINEバナーと電話バナーセクション */
.line-banner {
  position: fixed;
  left: 10%;
  bottom: 0;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  pointer-events: none;
  z-index: 99;
  }

.line-banner-open,
.tel-banner-open {
  position: static !important;   /* flex の流れに戻すために static に */
  transform: none !important;    /* translateX/translateY の余計な指定をリセット */
  cursor: pointer;               /* クリックできる状態に */
  pointer-events: auto;          /* クリックを受け付ける */
  width: 164px;
  height: 64px;
  background-color: #FFFFFF;
  padding: 16px;
  align-items: center;   /* 子要素を縦方向に中央揃え */
  border-radius: 16px 16px 0 0;
  font-weight: 600;
  font-size: 16px !important;
}

.line-banner-open a,
.tel-banner-open a {
  display: flex;
  align-items: center;
}
  
.line-banner__container {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 18px;   /* 左右それぞれ18pxの余白を確保 */
  gap: 18px;  
}


/* .line-banner.is-show .line-banner-open {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  pointer-events: none;
  transition-delay: 0s; } */
.line-banner.is-show .line-banner-content {
  transition-delay: .6s;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  pointer-events: auto; }
.line-banner[data-state="2"] {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.line-banner.is-hide {
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }



.line-banner-open {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .6s;
  transition-delay: .6s;
  pointer-events: auto; }
.line-banner-open__picture-figure img {
  width: 100px;
  height: auto; }

.line-banner-content__title {
  margin: 0 0 20px; }
.line-banner-content__title img {
  width: 225px;
  height: auto; }
.line-banner-content__link {
  display: inline-block;
  margin: 0 0 18px;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .3s; }
.line-banner-content__link:hover {
  -webkit-transform: scale(1.03);
  transform: scale(1.03); }
.line-banner-content__link img {
  width: 240px;
  height: auto; }
.line-banner-content__qr img {
  width: 168px;
  height: auto; }




.plan_list{
  font-weight: bold;
  font-size: 1vw;
}
.plan_list:hover{
  color: #29abe2
}

.material-icons {
  font-size: 18px;
  vertical-align: top;
}

.tel-banner-open__picture-figure img {
  width: 32px;
  height: auto;
  margin-right: 8px;
}

.line-banner-open__picture-figure img {
  width: 32px;
  height: auto;
  margin-right: 8px;
}

.line-banner-open .line-button__text {
  white-space: nowrap; /* 折り返しを禁止 */
  color: #000;
}




@media screen and (min-width: 1023px) and (max-width: 1160px) {
  .meta__logo {
    top: 32px;
    left: 40px; }
  .meta__logo img {
    width: 128px; }
  .header-menu__content-container {
    padding: 0 30px 0 0; }
  .header-menu-content:not(:last-child) {
    margin : 0 18px 0 0; 
  }
  
  .header-menu-content__link {
    font-size: 14px;} 

  }


@media (max-width: 1023px) {
  .header {
    height: 64px; }
  .header.is-menu-show .meta__logo img {
    width: 90px; }
  .header[data-state="1"] .header__container {
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  .header__container {
    padding: 0; }
  .header__container.logout {
    padding: 0}
  .header__container.lease {
    padding: 0;
    height: 64px;
  }
  .meta__logo {
    top: 14px;
    left: 25px; }
  .header__container.logout .meta__logo {
    top: 14px;
    left: 25px; }
  .meta__logo img {
    width: 90px; }
  .header-menu {
    display: none; } }
  .plan_list{
    text-indent: 2rem;
    font-size: 1.7vw;
  } 
@media (max-width: 767px) {
  .line-banner {
    padding:0;
    top: initial;
    left: 0;
    -webkit-transform: translate(0, 100%);
    transform: translate(0, 100%);
  }
  .line-banner[data-state="2"] {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    width: 100%;
  }
  .line-banner.is-hide {
    -webkit-transform: translate(0, 100%);
    transform: translate(0, 100%);
  }
  .line-banner-open{
    position: absolute;
    top: initial;
    bottom: -1px;
    right: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .line-banner-open__picture-figure {
    line-height: 0;
  }
  .line-banner-content {
    padding: 30px 18px 20px;
    -webkit-transform: translate(0, 100%);
    transform: translate(0, 100%);
  }
  .line-banner-content__title {
    margin: 0 0 10px;
  }
  .line-banner-content__title img {
    width: 115px;
  }
  .line-banner-content__link {
    margin: 0;
  }
  .line-banner-content__link img {
    width: 120px;
  }
  .line-banner-content__qr {
    display: none;
  }
  .line-banner-close img {
    width: 10px;
  } 
}
  
.tel-banner-open {
  position: absolute;
  top: 200px;
  right: 0;
  cursor: pointer;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .6s;
  transition-delay: .6s;
  pointer-events: auto;
}
.tel-banner-open .tel-button__text {
  white-space: nowrap; /* 折り返しを禁止 */
  color: #000;
}
@media (max-width: 767px) {
  .line-banner-open,
  .tel-banner-open {
    width: 100%;
    position: absolute;
    top: initial;
    bottom: 0px;
    right: 0px;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .tel-banner-open {
    right: 120px;
  }


  .line-banner-open__picture-figure img,
  .tel-banner-open__picture-figure img {
    /* width: auto;
    height: 64px;
    vertical-align: bottom; */
  }

  .line-banner-content__link:hover {
    -webkit-transform: none;
    transform: none;
  }

  

}

