/*
 * Static rebuild layer.
 *
 * Keep this file for small, intentional edits that should live outside the
 * preserved WordPress/Elementor CSS. It is loaded after the captured site CSS.
 */

:root {
  --neconote-font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --neconote-font-heading: "Zen Maru Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  --neconote-font-number: "Poppins", "Noto Sans JP", sans-serif;
  --neconote-text-sm: 0.875rem;
  --neconote-text-base: 1rem;
  --neconote-text-lead: 1.125rem;
  --neconote-heading-sm: 1.25rem;
  --neconote-heading-md: clamp(1.625rem, 2.4vw, 2.25rem);
  --neconote-heading-lg: clamp(2rem, 3.4vw, 2.75rem);
}

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body,
button,
input,
select,
textarea,
.new-header,
.new-header * {
  font-family: var(--neconote-font-body);
  letter-spacing: 0;
}

body {
  font-size: var(--neconote-text-base);
  font-synthesis: none;
  font-kerning: normal;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Keep display type friendly, while using a highly legible face for copy. */
.new-temp-article .elementor-widget-heading,
.new-temp-article .elementor-widget-heading *,
.new-temp-article .speechBalloon,
.new-temp-article .speechBalloon * {
  font-family: var(--neconote-font-heading) !important;
  letter-spacing: 0 !important;
}

.new-temp-article .elementor-widget-text-editor,
.new-temp-article .elementor-widget-text-editor * {
  font-family: var(--neconote-font-body) !important;
  letter-spacing: 0 !important;
}

.new-temp-article .poppins,
.new-temp-article .poppins * {
  font-family: var(--neconote-font-number) !important;
}

.new-temp-article .yusei-magic,
.new-temp-article .yusei-magic * {
  font-family: "Yusei Magic", var(--neconote-font-heading) !important;
}

.new-temp-article .elementor-widget-heading .elementor-heading-title {
  line-height: 1.35;
  letter-spacing: 0 !important;
}

.new-temp-article .elementor-widget-heading h3.elementor-heading-title {
  font-size: var(--neconote-heading-sm);
  font-weight: 700;
  line-height: 1.45;
}

.new-temp-article .speechBalloon h2.elementor-heading-title {
  font-size: var(--neconote-heading-md);
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  text-align-last: center;
}

.new-temp-article .Bold,
.new-temp-article .Bold * {
  font-weight: 500 !important;
}

.new-temp-article .w600,
.new-temp-article .w600 * {
  font-weight: 600 !important;
}

.new-temp-article .elementor-widget-text-editor .elementor-widget-container {
  line-height: 1.8;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

.new-temp-article .elementor-widget-text-editor p {
  line-height: inherit;
}

/* Main reading areas share one comfortable copy size and rhythm. */
.marker-section .elementor-widget-text-editor .elementor-widget-container,
#victim-claim .elementor-widget-text-editor .elementor-widget-container,
#merit .elementor-widget-text-editor .elementor-widget-container,
#flow .elementor-widget-text-editor .elementor-widget-container,
#testimonial .elementor-widget-text-editor .elementor-widget-container,
.testimonial .elementor-widget-text-editor .elementor-widget-container,
#q_and_a .elementor-widget-text-editor .elementor-widget-container,
#about_us .elementor-widget-text-editor .elementor-widget-container,
[data-id="bdbb84f"] .elementor-widget-text-editor .elementor-widget-container,
[data-id="bddfa45"] .elementor-widget-text-editor .elementor-widget-container,
[data-id="f8f7bbd"] .elementor-widget-text-editor .elementor-widget-container,
[data-id="c6062d6"] .elementor-widget-text-editor .elementor-widget-container {
  font-size: var(--neconote-text-base);
  line-height: 1.85;
}

.marker-section [data-id="36565d1"] .elementor-widget-container,
#victim-claim [data-id="6235a24"] .elementor-widget-container {
  font-family: var(--neconote-font-heading) !important;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 700 !important;
  line-height: 1.55;
}

#flow .line-heighter *,
#q_and_a .elementor-widget-text-editor .elementor-widget-container {
  line-height: 1.9;
}

#q_and_a .toggle-switch .elementor-widget-text-editor,
#q_and_a .toggle-switch .elementor-widget-text-editor * {
  font-weight: 600 !important;
}

#about_us h3.elementor-heading-title,
[data-id="bdbb84f"] h3.elementor-heading-title,
[data-id="bddfa45"] h3.elementor-heading-title {
  font-size: 1.375rem;
}

#about_us .speechBalloon h2.elementor-heading-title {
  font-size: clamp(1.625rem, 2.4vw, 2rem);
}

.new-temp-article .ha-creative-btn,
.new-temp-article .ha-creative-btn *,
.new-temp-article button,
.new-temp-article [role="button"] {
  font-family: var(--neconote-font-body) !important;
  font-size: var(--neconote-text-base);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0 !important;
}

.new-header .menu-image-title,
.new-header .phone-number,
.new-header .sp-phone-number {
  font-weight: 600;
  line-height: 1.4;
}

.new-header .phone-number,
.new-header .sp-phone-number {
  font-family: var(--neconote-font-number);
}

@media (max-width: 767px) {
  :root {
    --neconote-heading-md: 1.625rem;
    --neconote-heading-lg: 2rem;
  }

  .new-temp-article .elementor-widget-text-editor .elementor-widget-container {
    line-height: 1.8;
  }

  .marker-section [data-id="36565d1"] .elementor-widget-container,
  #victim-claim [data-id="6235a24"] .elementor-widget-container {
    font-size: 1.375rem;
    line-height: 1.55;
  }

  .new-temp-article .speechBalloon h2.elementor-heading-title {
    font-size: 1.625rem;
  }

  #about_us h3.elementor-heading-title,
  [data-id="bdbb84f"] h3.elementor-heading-title,
  [data-id="bddfa45"] h3.elementor-heading-title {
    font-size: 1.25rem;
  }

  #about_us .speechBalloon h2.elementor-heading-title {
    font-size: clamp(1.25rem, 5.3vw, 1.375rem);
    white-space: nowrap;
  }
}

/* Headings should carry a consistent, confident visual weight. */
.new-temp-article .elementor-widget h1,
.new-temp-article .elementor-widget h2,
.new-temp-article .elementor-widget h3,
.new-temp-article .elementor-widget h4,
.new-temp-article .elementor-widget h5,
.new-temp-article .elementor-widget h6 {
  font-weight: 700 !important;
}

/* Restore the original display face for the specified speech-balloon titles. */
.new-temp-article [data-id="6537112"] h2,
.new-temp-article [data-id="1ef3c8c"] h2,
.new-temp-article [data-id="0b9eda9"] h2,
.new-temp-article [data-id="1f637f9"] h2,
.new-temp-article [data-id="e8c21d3"] h2,
.new-temp-article [data-id="1d8d552"] h2 {
  font-family: "LanobePOP", var(--neconote-font-heading) !important;
  font-weight: 400 !important;
}
