@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* スクロール時ヘッダー：ロゴ位置・フェード表示調整 */
#fix_header.l-fixHeader {
  transform: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity .35s ease, visibility .35s ease !important;
}

#fix_header.l-fixHeader.codex-show-fixHeader {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (min-width: 960px) {
  #fix_header .l-fixHeader__inner.l-container {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 48px !important;
    padding-right: 48px !important;
  }

  #fix_header .l-fixHeader__logo .c-headLogo {
    width: 300px !important;
    max-width: 300px !important;
  }

  #fix_header .l-fixHeader__logo .c-headLogo__img {
    width: 100% !important;
    height: auto !important;
  }
}

/* 記事ページヘッダー：トップページとロゴ位置・サイズを揃える */
@media (min-width: 960px) {
  body:has(#breadcrumb) #header .l-header__inner.l-container,
  body:has(#breadcrumb) #fix_header .l-fixHeader__inner.l-container {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 48px !important;
    padding-right: 48px !important;
  }

  body:has(#breadcrumb) #header .l-header__logo .c-headLogo,
  body:has(#breadcrumb) #fix_header .l-fixHeader__logo .c-headLogo {
    width: 260px !important;
    max-width: 260px !important;
  }

  body:has(#breadcrumb) #header .l-header__logo .c-headLogo__img,
  body:has(#breadcrumb) #fix_header .l-fixHeader__logo .c-headLogo__img {
    width: 100% !important;
    height: auto !important;
  }
}


/* PCヘッダー：検索ボタンをメニューバー右端に戻す */
@media (min-width: 960px) {
  #header .l-header__customBtn.sp_ {
    display: flex !important;
    position: fixed !important;
    top: 32px !important;
    right: 16px !important;
    z-index: 1001 !important;
    width: 44px !important;
    height: 102px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body:not(.customize-support) #header .l-header__customBtn.sp_ {
    top: 0 !important;
  }

  #header .l-header__customBtn .c-iconBtn {
    display: inline-flex !important;
    width: 40px !important;
    height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #header .l-header__customBtn .c-iconBtn__icon {
    width: auto !important;
    height: auto !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }
}
