
@import url("../css/variable.css");


  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1000;
   
  }

  #header.is-active {
  background: #FFF;
  color: var(--text-color-normal);
  box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.05);
    }


    #header.is-active.is-active-shadow  {
      box-shadow: none;
    }
    #header.is-active-shadow {
      box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.05);
    }


    #header.is-active .header__content--logo .color-logo {
      display: block;
    }
  
    #header.is-active .header__content--logo .white-logo {
      display: none;
    }

    #header.is-active   .header__content__list ul li a:hover {
      color: var(--text--hover-blue);
    }




    #header.is-active   .header__content__list  a {
      color: var(--text-color-normal);
    }

    #header.open   .header__content::after {
      display: none;
    }




  .header__content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 3.25rem 1.25rem 3.25rem;
    width: 100%;
    position: relative;
  }

  .header__content::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 13rem;
    background: linear-gradient(to bottom, rgba(29, 82, 116, .63) 0%, rgba(49, 76, 94, .4) 53%,rgba(128, 128, 128, 0) 100%);
    background-size: 150%;
    z-index: -1;
    opacity: .5;
  }

  /* ヘッダーロゴ */
  .header__content--logo {
    display: block;
    width: 11rem;
    height: auto;
    cursor: pointer;

    img {
        width: 100%;
    }

    .color-logo {
      display: none;
    }
    .white-logo {
      display: block;
    }
  }


  .header__content__list  {
    width:100%;
    height: 100%;

    ul {
        display: flex;
        justify-content: flex-end;
        column-gap: 2rem;
        height: 100%;
    }

    li {
      display: flex;
      place-items: center;

        a {
            width: 100%;
            display: block;
            height: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            color: var( --text-color-w);
            transition: .3s ease;
            font-size: 0.875rem;
            font-style: normal;
            font-weight: 500;
            letter-spacing: 0.04375rem;

            
        }
        a:hover {
          color: var(--text--hover-blue);
        }
    }

  }


.btn.mid {
    background: var(--button-bg-blue);
    box-shadow: var(--buttonContact--shadow);
    border-radius: var(--buttonContact--borderRadius);
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s ease all;

    a {
      width: 100%;
      height: 100%;
      padding: var(--buttonContact--padding);
      font-size: 0.9375rem;
      font-style: normal;
      font-weight: 500;
      display: flex;
      justify-content: space-around;
      column-gap: 1rem;
      align-items: center;

      span {
        color: var(--text-color-w);
        transition: .3s ease all;
      }

      .border {
        display: block;
        background: var(--text-color-w);
        width: 0.07rem;
        height: 1.6rem;
      }

      img {
        display: block;
        width: 1.25rem;
        height: 1.25rem;
        transition: .3s ease all;
      }

      .normal {
        display: block;
      }
      .hover {
        display: none;
      }

    }
}


.btn.mid:hover {
  background: var(--button-bg-blue-hover);

  a {
    span {
      color: var(--text-color-normal);
    }
      .border {
        background: var(--text-color-normal);
      }
    .normal {
      display: none;
    }
    .hover {
      display: block;
    }
  }

}


/*　-------------

contact btn (white) 

-------------*/
.btn.mid.white {
  background: transparent;
  border-radius: var( --buttonContact--borderRadius);
  border: var( --buttonContact--border);

}

.btn.mid.white:hover {
  background: var(--text-color-w);
  border: var( --buttonContact--border);

  span {
    color: var(--text-color-normal);
  }

  .border {
    display: block;
    background: var(--text-color-normal);
    width: 0.07rem;
    height: 1.6rem;
  }
}

#footer .btn.mid.white:hover .border {
  background: var(--text-color-normal);
}

#footer .btn.mid .border {
  width: 0.07rem;
  height: 1.6rem;
}

  /* ハンバーガーメニュー */
  .hamburger {
    display: none;
  }



 /*ーーーーーーーーーーーーー
      


      デスクトップ小さめのスタイル 

   
      ーーーーーーーーーーーーーーー*/

  @media screen and (max-width: 1300px) {
  .header__content {
    padding: 1.25rem 3% 1.5rem 1.5%;
  }
}

@media screen and (max-width: 1200px)  {

    /* ヘッダーのリストを削除 */
    .header__content__list {
      display: none

    }


    #header.is-active {
      background: #FFF;
      color: var(--text-color-normal);
      box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.05);
        }
    

    .header__content {
      min-height: 5.4rem;
      padding: 1.25rem 6.25rem 1.5rem 3.25rem;
    }
  
  .header__content--logo {
    position: fixed;
    top: 1%;
    left: 3%;
  }

  /* ハンバーガーを開いた際に、ロゴの色を変更 */
  .header__content--logo.active .color-logo{
    display: block;
  }
  .header__content--logo.active .white-logo {
    display: none;
  }

  #header.open {
    background: #FFF;
    height: 100vh;
    box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.05);
    width: 100%;
    overflow: scroll;
  }




/* ---------

ハンバーガーメニュー

------------- */

 /* ハンバーガー表示 */
    .hamburger {
      display: block;

    }

    /* ハンバーガーボタン */
    .hamburger__button {
      position: fixed;
      top: 1.5%;
      right: 3%;
      width: var(--hamburger--width-height);
      height: var(--hamburger--width-height);
        border-radius: 50%;
        background: var(--hamburger--bg);
        display: flex;
        justify-content: center;
        align-items: center;
        row-gap: 10%;
        flex-direction: column;
        cursor: pointer;
        z-index: 2000;
    }

    .hamburger .hamburger__line{
      width: 45%;
      height: 0.1rem;
      background: var(--text-color-w);
      transition: transform 0.3s ease, opacity 0.3s ease;
    }
    

    /* ハンバーガーアイコンのアニメーション (オープン時) */
 .hamburger__button.open .hamburger__line:first-child {
  transform: rotate(45deg) translate(2.8px, 2.8px);
}

 .hamburger__button.open .hamburger__line:last-child {
  transform: rotate(-45deg) translate(2.8px, -2.8px);
}

/* ------

ハンバーガーコンテンツ 

-----------*/

.hamburger .hamburger__content.active {
  display: block;
}


.hamburger .hamburger__content {
  padding: 10rem 4rem;
  width: 100%;
  display: none; /* 初期状態ではメニュー非表示 */
  position: absolute;
  top: 0;
  left: 0;
  overflow: scroll;
  z-index: -1;

}
.provacy-link {
  color: #989898;
  text-decoration: underline;
  cursor: pointer;
  transition: 3s ease all;
font-size: 0.75rem;
font-style: normal;
font-weight: 500;
line-height: 1.5rem; /* 200% */
letter-spacing: 0.0375rem;
}

.hamburgerBG.open {
  height: 5rem;
  width: 100%;
  background: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  transition: .3s ease all;
}

/* --------------

ドロップダウンメニュー

--------------*/

.menu-item {
  padding: 1rem .95rem;
  border-bottom: var( --dropMenu--border);
  color: #101010;
font-size: 0.875rem;
font-weight: 500;
line-height: 1.5rem; /* 171.429% */
letter-spacing: 0.04375rem;
}
.menu-item--btn{
  display: flex;
  align-items: center;
  justify-content: space-between;
}


.toggle-button {

  font-size: 18px;
  width: var( --dropMenu-plus-width-height);
  height: var( --dropMenu-plus-width-height);
  border: none;
  cursor: pointer;
  outline: none;
  position: relative;
  transition: .3s ease all;
}
.toggle-button .border.top {
  background: var(--dropMenu--toggle--color);
  width: .1rem;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.toggle-button .border.bottom {
  background: var(--dropMenu--toggle--color);
  width: 100%;
  height: .1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.dropdown-list {
  display: none; /* 初期状態ではリストを非表示 */
  list-style: none;
  padding-left: 20px;
  margin-top: 10px;
}

.dropdown-list li {
  margin-bottom: 5px;
}

/* active時の挙動 */
.menu-item.active .dropdown-list {
  display: block; /* アクティブ時にリストを表示 */
}

.menu-item.active .dropdown-list li a {
  width: 100%;
  display: block;
}

.menu-item.active .toggle-button .border.top{
  transform: rotate(90deg);
  opacity: 0;
}



.hamburger__contactContent {
  margin-top: 3rem;
  text-align: center;
}
.hamburger .btn.mid {
  display: inline-flex;

}

.hamburger__contentMenu--bottom {
  display: flex;
  flex-direction: column;
  row-gap: 3.56rem;
  margin-top: 3.56rem;
}



.hamburger__contentMenu--bottom .textContent span {
  color: var(--dropMenu-message--color);
  font-size: 2.6875rem;
  font-weight: 700;
  line-height: 3.125rem; /* 116.279% */
  letter-spacing: 0.18813rem;
  display: block;
}

.hamburger__contentMenu--bottom .textContent span:last-child {
font-family: var(--font--openSans);
font-size: 1rem;
font-weight: 600;
line-height: normal;
margin-top: 1rem;
letter-spacing: 0.25rem;
}
}






        /*ーーーーーーーーーーーーー
      
      スマホ向けのスタイル 
      
      ーーーーーーーーーーーーーーー*/
  @media screen and (max-width: 768px) {

        

    .header__content {
      min-height: 4.9rem;
      padding: 1.25rem 6.25rem 1.25rem 3.25rem;
    }

    .header__content::after {
      height: 10rem;
    }

    .hamburger .hamburger__content {
      padding: 7rem 1.5rem 10rem;
    
    }

    .hamburger__contentMenu--bottom .textContent span {
      font-size: 2.25rem;
      line-height: 2.75rem; /* 122.222% */
      letter-spacing: 0.1575rem;
    }

    .hamburger__contentMenu--bottom .textContent span:last-child {
      font-size: .8rem;
      }

      .hamburger__contentMenu--bottom {
        row-gap: 1.6rem;
      }
  }
  