/* BLUE FLAME TOP header, supplied parent v0.2.40.
 * Generated by selecting only header/token rules, preserving source order and breakpoints.
 * TOP's :has(.bf-top-design) header selectors are enabled for this Figma page only.
 * Parent header.php and assets/js/main.js are reused at runtime without modification.
 * No parent font files are bundled.
 */
/* SOURCE parent/assets/css/tokens.css */
body.bfra-approved .bf-site-header{--bf-blue-primary: #2E66B5;
  --bf-blue-dark: #193E6C;
  --bf-blue-light: #E8F2FC;
  --bf-blue-soft: #F3F7FC;
  --bf-cyan-accent: #42B7EE;
  --bf-cta-coral: #F28380;
  --bf-cta-hover: #EF7774;
  --bf-text-main: #243447;
  --bf-text-sub: #596B80;
  --bf-border: #DCE6F2;
  --bf-border-control: #7D8FA6;
  --bf-background: #FFFFFF;
  --bf-error: #B42318;
  --bf-success: #176B45;
  --bf-focus: #193E6C;
  --bf-type-h1-size: 40px;
  --bf-type-h1-weight: 700;
  --bf-type-h1-leading: 1.4;
  --bf-type-h1-tracking: .02em;
  --bf-type-h1-margin-end: 24px;
  --bf-type-h2-size: 30px;
  --bf-type-h2-weight: 700;
  --bf-type-h2-leading: 1.5;
  --bf-type-h2-tracking: .02em;
  --bf-type-h2-margin-end: 24px;
  --bf-type-h3-size: 24px;
  --bf-type-h3-weight: 700;
  --bf-type-h3-leading: 1.5;
  --bf-type-h3-tracking: .02em;
  --bf-type-h3-margin-end: 16px;
  --bf-type-h4-size: 20px;
  --bf-type-h4-weight: 700;
  --bf-type-h4-leading: 1.6;
  --bf-type-h4-tracking: .02em;
  --bf-type-h4-margin-end: 12px;
  --bf-type-body-size: 16px;
  --bf-type-body-weight: 400;
  --bf-type-body-leading: 1.9;
  --bf-type-body-tracking: .02em;
  --bf-type-body-margin-end: 16px;
  --bf-type-small-size: 14px;
  --bf-type-small-weight: 400;
  --bf-type-small-leading: 1.7;
  --bf-type-small-tracking: .02em;
  --bf-type-small-margin-end: 8px;
  --bf-type-label-size: 12px;
  --bf-type-label-weight: 700;
  --bf-type-label-leading: 1.5;
  --bf-type-label-tracking: .08em;
  --bf-type-label-margin-end: 8px;
  --bf-type-button-size: 16px;
  --bf-type-button-weight: 700;
  --bf-type-button-leading: 1.5;
  --bf-type-button-tracking: .02em;
  --bf-type-button-margin-end: 0px;
  --bf-type-handwriting-size: 28px;
  --bf-type-handwriting-weight: 400;
  --bf-type-handwriting-leading: 1.7;
  --bf-type-handwriting-tracking: .04em;
  --bf-type-handwriting-margin-end: 16px;
  --bf-font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --bf-font-handwriting: "Zen Kurenaido", "Noto Sans JP", sans-serif;
  --bf-space-section-y: 128px;
  --bf-space-hero-y: 80px;
  --bf-space-hero-gap: 48px;
  --bf-space-heading-body: 24px;
  --bf-space-body-image: 32px;
  --bf-space-image-next: 32px;
  --bf-space-card-padding: 32px;
  --bf-space-card-compact: 24px;
  --bf-space-card-gap: 24px;
  --bf-space-cta-y: 48px;
  --bf-space-cta-content: 24px;
  --bf-space-button-gap: 16px;
  --bf-space-header-height: 80px;
  --bf-space-footer-y: 64px;
  --bf-space-footer-gap: 32px;
  --bf-space-footer-copy: 32px;
  --bf-space-breadcrumb-y: 16px;
  --bf-space-block-gap: 48px;
  --bf-space-paragraph-gap: 16px;
  --bf-space-faq-y: 24px;
  --bf-space-0: 0px;
  --bf-space-4: 4px;
  --bf-space-8: 8px;
  --bf-space-12: 12px;
  --bf-space-16: 16px;
  --bf-space-20: 20px;
  --bf-space-24: 24px;
  --bf-space-32: 32px;
  --bf-space-40: 40px;
  --bf-space-48: 48px;
  --bf-space-56: 56px;
  --bf-space-64: 64px;
  --bf-space-72: 72px;
  --bf-space-80: 80px;
  --bf-space-96: 96px;
  --bf-container-wide: 1280px;
  --bf-container-default: 1120px;
  --bf-container-narrow: 960px;
  --bf-container-article: 760px;
  --bf-container-gutter: 32px;
  --bf-breakpoint-tablet: 768px;
  --bf-breakpoint-desktop: 1200px;
  --bf-radius-none: 0px;
  --bf-radius-sm: 4px;
  --bf-radius-card: 16px;
  --bf-radius-round: 50%;
  --bf-shadow-none: none;
  --bf-shadow-soft: 0 4px 16px rgba(25,62,108,0.06);
  --bf-shadow-raised: 0 8px 24px rgba(25,62,108,0.10);
  --bf-button-min-height: 48px;
  --bf-button-padding-y: 12px;
  --bf-button-padding-x: 24px;
  --bf-focus-width: 3px;
  --bf-focus-offset: 2px;
  --bf-border-width: 1px;
  --bf-icon-stroke: 1.5px;
  --bf-motion-fast: 150ms;
  --bf-space-section-compact-y: 96px;
  --bf-space-128: 128px;
  --bf-radius-pill: 9999px;
  --bf-radius-card-compact: 12px;
  --bf-radius-hero: 24px;
  --bf-radius-legal-table: 8px;}
@media (min-width: 768px) and (max-width: 1199px){
body.bfra-approved .bf-site-header{--bf-type-h1-size: 34px;
  --bf-type-h1-margin-end: 20px;
  --bf-type-h2-size: 26px;
  --bf-type-h2-margin-end: 20px;
  --bf-type-h3-size: 22px;
  --bf-type-h4-size: 18px;
  --bf-type-handwriting-size: 24px;
  --bf-space-section-y: 96px;
  --bf-space-hero-y: 64px;
  --bf-space-hero-gap: 32px;
  --bf-space-heading-body: 20px;
  --bf-space-body-image: 24px;
  --bf-space-image-next: 24px;
  --bf-space-card-padding: 24px;
  --bf-space-card-compact: 20px;
  --bf-space-cta-y: 40px;
  --bf-space-button-gap: 12px;
  --bf-space-header-height: 72px;
  --bf-space-footer-y: 48px;
  --bf-space-footer-gap: 24px;
  --bf-space-footer-copy: 24px;
  --bf-space-breadcrumb-y: 12px;
  --bf-space-block-gap: 40px;
  --bf-space-faq-y: 20px;
  --bf-container-gutter: 24px;
  --bf-space-section-compact-y: 72px;}
}
@media (max-width: 767px){
body.bfra-approved .bf-site-header{--bf-type-h1-size: 28px;
  --bf-type-h1-margin-end: 16px;
  --bf-type-h2-size: 24px;
  --bf-type-h2-margin-end: 16px;
  --bf-type-h3-size: 20px;
  --bf-type-h4-size: 18px;
  --bf-type-handwriting-size: 20px;
  --bf-space-section-y: 80px;
  --bf-space-hero-y: 40px;
  --bf-space-hero-gap: 24px;
  --bf-space-heading-body: 16px;
  --bf-space-body-image: 24px;
  --bf-space-image-next: 24px;
  --bf-space-card-padding: 24px;
  --bf-space-card-compact: 16px;
  --bf-space-card-gap: 16px;
  --bf-space-cta-y: 32px;
  --bf-space-cta-content: 20px;
  --bf-space-button-gap: 12px;
  --bf-space-header-height: 64px;
  --bf-space-footer-y: 40px;
  --bf-space-footer-gap: 24px;
  --bf-space-footer-copy: 24px;
  --bf-space-breadcrumb-y: 12px;
  --bf-space-block-gap: 32px;
  --bf-space-faq-y: 20px;
  --bf-container-gutter: 20px;
  --bf-space-section-compact-y: 64px;
  --bf-radius-hero: 20px;}
}
body.bfra-approved .bf-site-header{--bf-visual-container: var(--bf-container-wide);
  --bf-visual-section-gap: 24px;
  --bf-visual-card-gap: 24px;
  --bf-visual-card-radius: 6px;
  --bf-visual-heading-size: 32px;
  --bf-visual-heading-leading: 1.35;
  --bf-visual-copy-size: 16px;
  --bf-visual-button-min-height: 44px;
  --bf-visual-button-primary-radius: var(--bf-radius-pill);
  --bf-visual-border: 1px solid var(--bf-border);}
@media (min-width:768px) and (max-width:1199px){
body.bfra-approved .bf-site-header{--bf-visual-heading-size: 28px;
  --bf-visual-card-gap: 18px;}
}
@media (max-width:767px){
body.bfra-approved .bf-site-header{--bf-visual-heading-size: 25px;
  --bf-visual-section-gap: 26px;
  --bf-visual-card-gap: 16px;}
}

/* SOURCE parent/assets/css/main.css */
body.bfra-approved .bf-site-header{--bf-blue:var(--bf-blue-primary); --bf-coral:#E88976; --bf-coral-dark:#D87362;
 --bf-ink:var(--bf-text-main); --bf-muted:var(--bf-text-sub); --bf-bg-soft:var(--bf-blue-soft); --bf-white:var(--bf-background);
 --bf-font-sans:var(--bf-font-body); --bf-font-hand:var(--bf-font-handwriting);
 --bf-container:var(--bf-container-default); --bf-section-space:var(--bf-space-section-y); --bf-section-space-small:var(--bf-space-section-compact-y); --bf-gutter:var(--bf-container-gutter);
 --bf-radius-md:var(--bf-radius-card); --bf-radius-lg:var(--bf-radius-hero); --bf-shadow-card:var(--bf-shadow-none); --bf-transition:var(--bf-motion-fast) ease;
 --bf-cta-active-background:#E88976; --bf-cta-active-text:#FFFFFF;}
body.bfra-approved .bf-site-header *,
body.bfra-approved .bf-site-header *::before,
body.bfra-approved .bf-site-header *::after{box-sizing: border-box;}
body.bfra-approved .bf-site-header{margin: 0;
	color: var(--bf-ink);
	background: var(--bf-white);
	font-family: var(--bf-font-sans);
	font-size: 16px;
	line-height: 1.9;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;}
body.bfra-approved .bf-site-header img{max-width: 100%;
	height: auto;
	display: block;}
body.bfra-approved .bf-site-header a{color: var(--bf-blue);
	text-decoration-thickness: .08em;
	text-underline-offset: .18em;}
body.bfra-approved .bf-site-header a:hover{color: var(--bf-blue-dark);}
body.bfra-approved .bf-site-header button,
body.bfra-approved .bf-site-header input,
body.bfra-approved .bf-site-header textarea,
body.bfra-approved .bf-site-header select{font: inherit;}
body.bfra-approved .bf-site-header :focus-visible{outline: 3px solid rgba(91, 120, 166, .35);
	outline-offset: 3px;}
body.bfra-approved .bf-skip-link{position: fixed;
	left: 16px;
	top: 16px;
	z-index: 9999;
	padding: 10px 16px;
	background: var(--bf-ink);
	color: #fff;
	border-radius: 8px;
	transform: translateY(-160%);
	transition: transform var(--bf-transition);}
body.bfra-approved .bf-skip-link:focus{transform: translateY(0);}
body.bfra-approved .bf-site-header .bf-container{width: min(calc(100% - (var(--bf-gutter) * 2)), var(--bf-container));
	margin-inline: auto;}
body.bfra-approved .bf-site-header .bf-container--wide{width: min(calc(100% - (var(--bf-gutter) * 2)), var(--bf-container-wide));
	margin-inline: auto;}
body.bfra-approved .bf-site-header p{margin-top: 0;}
body.bfra-approved .bf-site-header .bf-button{display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 13px 28px;
	border: 1px solid transparent;
	border-radius: var(--bf-radius-pill);
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none;
	transition: transform var(--bf-transition), background var(--bf-transition), border-color var(--bf-transition), color var(--bf-transition);}
body.bfra-approved .bf-site-header .bf-button:hover{transform: translateY(-1px);}
body.bfra-approved .bf-site-header .bf-button--coral{background: var(--bf-coral);
	color: #fff;}
body.bfra-approved .bf-site-header .bf-button--coral:hover{background: var(--bf-coral-dark);
	color: #fff;}
body.bfra-approved .bf-site-header .bf-button--blue{background: var(--bf-blue);
	color: #fff;}
body.bfra-approved .bf-site-header .bf-button--blue:hover{background: var(--bf-blue-dark);
	color: #fff;}
body.bfra-approved .bf-site-header .bf-button--outline{border-color: var(--bf-blue);
	color: var(--bf-blue);
	background: transparent;}
body.bfra-approved .bf-site-header{position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(255, 255, 255, .94);
	border-bottom: 1px solid rgba(221, 229, 237, .75);
	backdrop-filter: blur(12px);}
body.bfra-approved .bf-site-header .bf-header-inner{min-height: 78px;
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 28px;
	align-items: center;}
body.bfra-approved .bf-site-header .custom-logo{max-height: 50px; width: auto;}
body.bfra-approved .bf-site-header .bf-site-title{color: var(--bf-ink);
	font-size: 1.1rem;
	font-weight: 800;
	text-decoration: none;}
body.bfra-approved .bf-site-header .bf-primary-nav{justify-self: end;}
body.bfra-approved .bf-site-header .bf-menu{list-style: none;
	margin: 0;
	padding: 0;}
body.bfra-approved .bf-site-header .bf-menu{display: flex;
	gap: 24px;
	align-items: center;}
body.bfra-approved .bf-site-header .bf-menu a{color: var(--bf-ink);
	font-size: .94rem;
	font-weight: 600;
	text-decoration: none;}
body.bfra-approved .bf-site-header .bf-menu a:hover{color: var(--bf-blue);}
body.bfra-approved .bf-site-header .bf-nav-toggle{display: none;
	border: 0;
	background: transparent;
	color: var(--bf-ink);
	padding: 10px;
	cursor: pointer;}
body.bfra-approved .bf-site-header .bf-nav-toggle__icon,
body.bfra-approved .bf-site-header .bf-nav-toggle__icon::before,
body.bfra-approved .bf-site-header .bf-nav-toggle__icon::after{display: block;
	width: 24px;
	height: 2px;
	background: currentColor;
	content: "";}
body.bfra-approved .bf-site-header .bf-nav-toggle__icon{position: relative;
	margin-left: 10px;}
body.bfra-approved .bf-site-header .bf-nav-toggle__icon::before{position: absolute; top: -7px;}
body.bfra-approved .bf-site-header .bf-nav-toggle__icon::after{position: absolute; top: 7px;}
body.bfra-approved .bf-site-header .bf-nav-toggle{align-items: center;}
@media (max-width: 1024px){
body.bfra-approved .bf-site-header .bf-header-inner{grid-template-columns: auto auto;}
body.bfra-approved .bf-site-header .bf-nav-toggle{display: inline-flex; justify-self: end;}
body.bfra-approved .bf-site-header .bf-header-cta{display: none;}
body.bfra-approved .bf-site-header .bf-primary-nav{display: none;
		grid-column: 1 / -1;
		width: 100%;
		padding-bottom: 22px;}
body.bfra-approved .bf-site-header .bf-primary-nav.is-open{display: block;}
body.bfra-approved .bf-site-header .bf-menu{flex-direction: column;
		align-items: stretch;
		gap: 0;}
body.bfra-approved .bf-site-header .bf-menu a{display: block;
		padding: 13px 0;
		border-bottom: 1px solid var(--bf-border);}
}
@media (max-width: 680px){
body.bfra-approved .bf-site-header{font-size: 15.5px; line-height: 1.85;}
body.bfra-approved .bf-site-header .bf-header-inner{min-height: 68px;}
body.bfra-approved .bf-site-header .bf-nav-toggle__label{display: none;}
}
body.bfra-approved .bf-site-header{font-size:var(--bf-type-body-size);font-weight:var(--bf-type-body-weight);line-height:var(--bf-type-body-leading);letter-spacing:var(--bf-type-body-tracking);}
body.bfra-approved .bf-site-header small{font-size:var(--bf-type-small-size);font-weight:var(--bf-type-small-weight);line-height:var(--bf-type-small-leading);letter-spacing:var(--bf-type-small-tracking);}
body.bfra-approved .bf-site-header .bf-button{font-size:var(--bf-type-button-size);font-weight:var(--bf-type-button-weight);line-height:var(--bf-type-button-leading);letter-spacing:var(--bf-type-button-tracking);}
body.bfra-approved .bf-site-header{overflow-wrap:anywhere;}
body.bfra-approved .bf-site-header p{margin-block:0 var(--bf-space-paragraph-gap);}
body.bfra-approved .bf-site-header :focus-visible{outline:var(--bf-focus-width) solid var(--bf-focus);outline-offset:var(--bf-focus-offset);}
body.bfra-approved .bf-site-header [hidden]{display:none!important;}
body.bfra-approved .bf-site-header .bf-button{min-height:var(--bf-button-min-height);padding:var(--bf-button-padding-y) var(--bf-button-padding-x);white-space:normal;text-align:center;gap:16px;max-width:100%;border-radius:var(--bf-radius-pill);}
body.bfra-approved .bf-site-header .bf-button--outline{background:white;border-radius:var(--bf-radius-legal-table);}
body.bfra-approved .bf-site-header .bf-button--coral{background:var(--bf-cta-active-background);color:var(--bf-cta-active-text);}
body.bfra-approved .bf-site-header .bf-button--coral:hover{background:var(--bf-cta-active-background);color:var(--bf-cta-active-text);text-decoration:underline;}
body.bfra-approved .bf-site-header{background:#fff;backdrop-filter:none;border-color:var(--bf-border);}
body.bfra-approved .bf-site-header .bf-header-inner{min-height:var(--bf-space-header-height);gap:20px;}
body.bfra-approved .bf-site-header .bf-menu{gap:18px;}
body.bfra-approved .bf-site-header .bf-menu a{font-size:14px;}
body.bfra-approved .bf-site-header .bf-menu a span{display:none;}
body.bfra-approved .bf-site-header .bf-header-cta{font-size:14px;padding:12px 20px;}
body.bfra-approved .bf-site-header .bf-drawer-cta{display:none;}
body.bfra-approved .bf-site-header .bf-nav-toggle{min-width:48px;min-height:48px;}
@media (min-width:1200px){
body.bfra-approved .bf-site-header .bf-primary-nav{display:block;}
body.bfra-approved .bf-site-header .bf-nav-toggle{display:none;}
body.bfra-approved .bf-site-header .bf-header-cta{display:inline-flex;}
}
@media (max-width:1199px){
body.bfra-approved .bf-site-header .bf-header-inner{grid-template-columns:minmax(0,1fr) auto;}
body.bfra-approved .bf-site-header .bf-header-cta{display:none;}
body.bfra-approved .bf-site-header .bf-primary-nav{display:block;grid-column:1/-1;justify-self:stretch;width:100%;padding-bottom:24px;}
body.bfra-approved .bf-site-header .bf-nav-toggle{display:none;}
body.bfra-approved .bf-site-header .bf-menu{flex-direction:column;align-items:stretch;gap:0;}
body.bfra-approved .bf-site-header .bf-menu a{display:block;padding:14px 0;border-bottom:1px solid var(--bf-border);}
body.bfra-approved .bf-site-header .bf-drawer-cta{display:block;margin-top:24px;}
html.bf-menu-enhanced body.bfra-approved .bf-site-header .bf-nav-toggle{display:inline-flex;}
html.bf-menu-enhanced body.bfra-approved .bf-site-header .bf-primary-nav:not(.is-open){display:none;}
html.bf-menu-enhanced body.bfra-approved .bf-site-header .bf-primary-nav.is-open{display:block;max-height:calc(100dvh - var(--bf-space-header-height) - 48px);overflow-y:auto;}
body.bfra-approved.bf-menu-open{overflow:hidden;}
}
@media (max-width:767px){
body.bfra-approved .bf-site-header .bf-nav-toggle__label{display:inline;}
body.bfra-approved .bf-site-header .bf-header-inner{min-height:var(--bf-space-header-height);}
}
@media (prefers-reduced-motion:reduce){
body.bfra-approved .bf-site-header *,
body.bfra-approved .bf-site-header *::before,
body.bfra-approved .bf-site-header *::after{transition:none!important;animation:none!important;}
body.bfra-approved .bf-site-header .bf-button:hover{transform:none;}
}

/* SOURCE parent/assets/css/top.css */
@media (min-width:1200px){
body.bfra-approved .bf-site-header .bf-header-inner{min-height:90px;max-width:1320px}
body.bfra-approved .bf-site-header .bf-site-title{letter-spacing:.06em;font-weight:600;font-size:20px}
}
@media (min-width:1200px){
body.bfra-approved .bf-site-header .bf-menu{gap:38px}
body.bfra-approved .bf-site-header .bf-menu a{font-size:16px}
body.bfra-approved .bf-site-header .bf-header-cta{font-size:16px;min-width:222px}
}

/* SOURCE parent/assets/css/footer.css */
body.bfra-approved .bf-site-header .bf-site-title--logo{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;text-decoration:none}
body.bfra-approved .bf-site-header .bf-logo--header{display:block;height:40px;width:auto}
body.bfra-approved .bf-site-header .bf-site-title__sub{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--bf-text-main,#243447);padding-left:52px;line-height:1}
@media (max-width:767px){
body.bfra-approved .bf-site-header .bf-logo--header{height:32px}
body.bfra-approved .bf-site-header .bf-site-title__sub{font-size:9px;padding-left:42px}
}
/* Structural support only; visual tokens above come from TOP v0.2.40. */
body.bfra-approved .bf-site-header{box-sizing:border-box;width:100%;}
body.bfra-approved .bf-site-header button{font-family:var(--bf-font-body);}
body.bfra-approved .bf-site-header .bf-site-branding{min-width:0;}
body.bfra-approved .bf-site-header .bf-header-inner{min-width:0;}
body.bfra-approved .bf-site-header .bf-primary-nav{min-width:0;}
body.bfra-approved.admin-bar .bf-site-header{top:32px;}
body.bfra-approved .bf-skip-link{background:#243447;transition:transform .2s ease;}
@media(max-width:782px){body.bfra-approved.admin-bar .bf-site-header{top:46px;}}
@media(max-width:600px){body.bfra-approved.admin-bar .bf-site-header{top:0;}}
/* When text zoom or a longer saved menu cannot fit, keep all navigation reachable. */
@media(min-width:1200px){
 body.bfra-approved .bf-site-header .bf-menu{flex-wrap:wrap;justify-content:flex-end;}
}
@media print{body.bfra-approved .bf-site-header{position:static;}}
