@charset "UTF-8";

/* =====================================================
  HEADER : QUIET STRUCTURE（NO BORDER）
===================================================== */

.fb-header,
.fb-header.is-scrolled,
body.is-scrolled .fb-header,
html.is-scrolled .fb-header{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 140;

  background: var(--fb-bg) !important;

  /* 境界線を完全に削除 */
  border: 0 !important;
  border-bottom: none !important;

  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* 念のため擬似要素も無効化 */
.fb-header::before,
.fb-header::after{
  content: none !important;
  display: none !important;
}

/* =========================================
  INNER
========================================= */
.fb-header__inner{
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;

  width: 100%;
  max-width: calc(var(--bar-max) + (var(--bar-gutter) * 2));
  margin-inline: auto;
  box-sizing: border-box;

  padding-left: var(--bar-gutter);
  padding-right: var(--bar-gutter);
}

/* =========================================
  MENU（左）
========================================= */
.fb-menu-float{
  order: 1;

  display: inline-flex;
  align-items: center;
  gap: 8px;

  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  color: var(--text-soft);

  padding: 0;
  margin: 0;
  cursor: pointer;
  box-shadow: none;

  transition: opacity .3s ease;
}

.fb-menu-float__lines{
  order: 1;
  width: 20px;
  height: 10px;
  position: relative;
  display: block;
  flex: 0 0 auto;
}

.fb-menu-float__lines span{
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: currentColor;
  opacity: .78;
  transition: opacity .3s ease;
}

.fb-menu-float__lines span:first-child{ top: 0; }
.fb-menu-float__lines span:last-child{ bottom: 0; }

.fb-menu-float__label{
  order: 2;
  font-family: var(--fb-en);
  font-size: 11px;
  line-height: 1;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--text-soft);
  opacity: .82;
  transition: opacity .3s ease;
}

@media (hover:hover){
  .fb-menu-float:hover{
    opacity: .6;
  }
}

/* =========================================
  BRAND TEXT（右）
========================================= */
.fb-header__brand{
  order: 2;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
}

.fb-brand-text{
  display: inline-flex;
  align-items: center;

  font-family: var(--fb-en);
  font-size: 11px;
  line-height: 1;
  letter-spacing: .22em;
  text-transform: uppercase;
  white-space: nowrap;

  color: var(--text-soft);
  text-decoration: none;

  opacity: .82;
  transition: opacity .3s ease;
}

@media (hover:hover){
  .fb-brand-text:hover{
    opacity: .6;
  }
}

/* ロゴ非表示保険 */
.fb-logo,
.custom-logo-link,
.custom-logo{
  display: none !important;
}

/* =========================================
  BODY OFFSET
========================================= */
body{
  padding-top: 72px;
}

/* =========================================
  TABLET
========================================= */
@media (max-width: 960px){
  .fb-header__inner{
    max-width: 100%;
  }
}

/* =========================================
  MOBILE
===================================================== */
@media (max-width: 767px){

  .fb-header__inner{
    min-height: 64px;
  }

  .fb-menu-float{
    gap: 6px;
  }

  .fb-menu-float__label{
    font-size: 10px;
    letter-spacing: .20em;
  }

  .fb-menu-float__lines{
    width: 18px;
  }

  .fb-brand-text{
    font-size: 10px;
    letter-spacing: .18em;
  }

  body{
    padding-top: 64px;
  }
}