.pointer-events-none{
  pointer-events: none;
}.absolute{
  position: absolute;
}.fixed{
  position: fixed;
}.inset-0{
  inset: calc(var(--spacing) * 0);
}.top-0{
  top: calc(var(--spacing) * 0);
}.right-0{
  right: calc(var(--spacing) * 0);
}.right-\[40px\]{
  right: 40px;
}.bottom-\[40px\]{
  bottom: 40px;
}.left-0{
  left: calc(var(--spacing) * 0);
}.z-50{
  z-index: 50;
}.z-100{
  z-index: 100;
}.z-110{
  z-index: 110;
}.mx-auto{
  margin-inline: auto;
}.mr-\[12px\]{
  margin-right: 12px;
}.mb-3{
  margin-bottom: calc(var(--spacing) * 3);
}.mb-\[4px\]{
  margin-bottom: 4px;
}.mb-\[12px\]{
  margin-bottom: 12px;
}.mb-\[21px\]{
  margin-bottom: 21px;
}.mb-\[24px\]{
  margin-bottom: 24px;
}.mb-\[30px\]{
  margin-bottom: 30px;
}.ml-\[11px\]{
  margin-left: 11px;
}.ml-\[12px\]{
  margin-left: 12px;
}.block{
  display: block;
}.flex{
  display: flex;
}.grid{
  display: grid;
}.hidden{
  display: none;
}.inline-block{
  display: inline-block;
}.inline-flex{
  display: inline-flex;
}.h-6{
  height: calc(var(--spacing) * 6);
}.h-\[2px\]{
  height: 2px;
}.h-\[20px\]{
  height: 20px;
}.h-\[48px\]{
  height: 48px;
}.h-full{
  height: 100%;
}.w-6{
  width: calc(var(--spacing) * 6);
}.w-\[6px\]{
  width: 6px;
}.w-\[7px\]{
  width: 7px;
}.w-\[25px\]{
  width: 25px;
}.w-\[40px\]{
  width: 40px;
}.w-\[48px\]{
  width: 48px;
}.w-full{
  width: 100%;
}.w-px{
  width: 1px;
}.max-w-\[214px\]{
  max-width: 214px;
}.max-w-\[310px\]{
  max-width: 310px;
}.max-w-\[1200px\]{
  max-width: 1200px;
}.max-w-\[1240px\]{
  max-width: 1240px;
}.min-w-0{
  min-width: calc(var(--spacing) * 0);
}.flex-1{
  flex: 1;
}.shrink-0{
  flex-shrink: 0;
}.origin-center{
  transform-origin: 50%;
}.translate-x-full{
  --tw-translate-x: 100%;
  translate: var(--tw-translate-x) var(--tw-translate-y);
}.translate-y-full{
  --tw-translate-y: 100%;
  translate: var(--tw-translate-x) var(--tw-translate-y);
}.cursor-pointer{
  cursor: pointer;
}.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}.flex-col{
  flex-direction: column;
}.flex-row{
  flex-direction: row;
}.flex-wrap{
  flex-wrap: wrap;
}.items-center{
  align-items: center;
}.items-start{
  align-items: flex-start;
}.justify-between{
  justify-content: space-between;
}.justify-center{
  justify-content: center;
}.justify-end{
  justify-content: flex-end;
}.gap-0{
  gap: calc(var(--spacing) * 0);
}.gap-2{
  gap: calc(var(--spacing) * 2);
}.gap-3{
  gap: calc(var(--spacing) * 3);
}.gap-\[1px\]{
  gap: 1px;
}.gap-\[4px\]{
  gap: 4px;
}.gap-\[5px\]{
  gap: 5px;
}.gap-\[8px\]{
  gap: 8px;
}.gap-\[10px\]{
  gap: 10px;
}.gap-\[16px\]{
  gap: 16px;
}.gap-\[21px\]{
  gap: 21px;
}.gap-\[26px\]{
  gap: 26px;
}.gap-\[30px\]{
  gap: 30px;
}.gap-x-\[20px\]{
  column-gap: 20px;
}.gap-x-\[40px\]{
  column-gap: 40px;
}.gap-y-\[6px\]{
  row-gap: 6px;
}.overflow-hidden{
  overflow: hidden;
}.overflow-y-auto{
  overflow-y: auto;
}.rounded-sm{
  border-radius: var(--radius-sm);
}.border-t{
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}.border-b{
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}.border-gray-200{
  border-color: var(--color-gray-200);
}.border-gray-300{
  border-color: var(--color-gray-300);
}.bg-\[\#000000\]{
  background-color: #000;
}.bg-gray-50{
  background-color: var(--color-gray-50);
}.bg-gray-300{
  background-color: var(--color-gray-300);
}.bg-red{
  background-color: var(--color-red);
}.bg-text\/70{
  background-color: #333333b3;
}@supports (color: color-mix(in lab, red, red)) {.bg-text\/70{
    background-color: color-mix(in oklab, var(--color-text) 70%, transparent);
  }}.bg-white{
  background-color: var(--color-white);
}.bg-yellow{
  background-color: var(--color-yellow);
}.px-4{
  padding-inline: calc(var(--spacing) * 4);
}.px-6{
  padding-inline: calc(var(--spacing) * 6);
}.px-\[10px\]{
  padding-inline: 10px;
}.px-\[11px\]{
  padding-inline: 11px;
}.px-\[16px\]{
  padding-inline: 16px;
}.px-\[20px\]{
  padding-inline: 20px;
}.px-\[40px\]{
  padding-inline: 40px;
}.py-2{
  padding-block: calc(var(--spacing) * 2);
}.py-3{
  padding-block: calc(var(--spacing) * 3);
}.py-\[4px\]{
  padding-block: 4px;
}.py-\[9px\]{
  padding-block: 9px;
}.py-\[10px\]{
  padding-block: 10px;
}.py-\[13px\]{
  padding-block: 13px;
}.py-\[16px\]{
  padding-block: 16px;
}.py-\[20px\]{
  padding-block: 20px;
}.py-\[28px\]{
  padding-block: 28px;
}.py-\[30px\]{
  padding-block: 30px;
}.pt-\[10px\]{
  padding-top: 10px;
}.pt-\[12px\]{
  padding-top: 12px;
}.pt-\[30px\]{
  padding-top: 30px;
}.pt-\[50px\]{
  padding-top: 50px;
}.pb-8{
  padding-bottom: calc(var(--spacing) * 8);
}.pb-\[30px\]{
  padding-bottom: 30px;
}.pb-\[38px\]{
  padding-bottom: 38px;
}.pb-\[40px\]{
  padding-bottom: 40px;
}.text-center{
  text-align: center;
}.text-base{
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}.text-xs{
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}.text-\[10px\]{
  font-size: 10px;
}.text-\[12px\]{
  font-size: 12px;
}.text-\[13px\]{
  font-size: 13px;
}.text-\[15px\]{
  font-size: 15px;
}.text-\[16px\]{
  font-size: 16px;
}.text-\[17px\]{
  font-size: 17px;
}.text-\[20px\]{
  font-size: 20px;
}.text-\[30px\]{
  font-size: 30px;
}.leading-none{
  --tw-leading: 1;
  line-height: 1;
}.leading-normal{
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
}.leading-tight{
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
}.font-bold{
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}.font-medium{
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}.tracking-\[0\.1em\]{
  --tw-tracking: 0.1em;
  letter-spacing: 0.1em;
}.tracking-\[0\.05em\]{
  --tw-tracking: 0.05em;
  letter-spacing: 0.05em;
}.tracking-normal{
  --tw-tracking: var(--tracking-normal);
  letter-spacing: var(--tracking-normal);
}.tracking-widest{
  --tw-tracking: var(--tracking-widest);
  letter-spacing: var(--tracking-widest);
}.text-gray-300{
  color: var(--color-gray-300);
}.text-red{
  color: var(--color-red);
}.text-text{
  color: var(--color-text);
}.text-white{
  color: var(--color-white);
}.text-yellow{
  color: var(--color-yellow);
}.italic{
  font-style: italic;
}.underline-offset-2{
  text-underline-offset: 2px;
}.transition-colors{
  transition-property: color, background-color, border-color, outline-color,
    text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via,
    --tw-gradient-to;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}.transition-opacity{
  transition-property: opacity;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}.transition-transform{
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}.duration-200{
  --tw-duration: 0.2s;
  transition-duration: 0.2s;
}.duration-300{
  --tw-duration: 0.3s;
  transition-duration: 0.3s;
}@media (hover: hover) {.hover\:opacity-70:hover{
    opacity: 0.7;
  }.hover\:opacity-80:hover{
    opacity: 0.8;
  }.hover\:opacity-\[\.8\]:hover{
    opacity: 0.8;
  }}.focus-visible\:outline-2:focus-visible{
  outline-style: var(--tw-outline-style);
  outline-width: 2px;
}.focus-visible\:outline-offset-2:focus-visible{
  outline-offset: 2px;
}.focus-visible\:outline-red:focus-visible{
  outline-color: var(--color-red);
}.disabled\:pointer-events-none:disabled{
  pointer-events: none;
}.disabled\:opacity-50:disabled{
  opacity: 0.5;
}@media not all and (min-width: 749px) {.max-\[749px\]\:mb-0{
    margin-bottom: calc(var(--spacing) * 0);
  }.max-\[749px\]\:contents{
    display: contents;
  }.max-\[749px\]\:hidden{
    display: none;
  }.max-\[749px\]\:flex-col{
    flex-direction: column;
  }.max-\[749px\]\:gap-y-\[26px\]{
    row-gap: 26px;
  }}@media (min-width: 750px) {.min-\[750px\]\:w-\[350px\]{
    width: 350px;
  }}@media (min-width: 48rem) {.md\:block{
    display: block;
  }.md\:flex{
    display: flex;
  }.md\:hidden{
    display: none;
  }.md\:w-\[60px\]{
    width: 60px;
  }.md\:max-w-\[300px\]{
    max-width: 300px;
  }.md\:grid-cols-\[auto_auto_auto\]{
    grid-template-columns: auto auto auto;
  }.md\:flex-col{
    flex-direction: column;
  }.md\:flex-nowrap{
    flex-wrap: nowrap;
  }.md\:gap-\[20px\]{
    gap: 20px;
  }.md\:gap-\[31px\]{
    gap: 31px;
  }.md\:gap-\[60px\]{
    gap: 60px;
  }.md\:gap-x-0{
    column-gap: calc(var(--spacing) * 0);
  }.md\:px-\[10px\]{
    padding-inline: 10px;
  }.md\:px-\[20px\]{
    padding-inline: 20px;
  }.md\:px-\[40px\]{
    padding-inline: 40px;
  }.md\:px-\[60px\]{
    padding-inline: 60px;
  }.md\:py-\[20px\]{
    padding-block: 20px;
  }.md\:py-\[40px\]{
    padding-block: 40px;
  }.md\:py-\[60px\]{
    padding-block: 60px;
  }.md\:text-\[12px\]{
    font-size: 12px;
  }.md\:text-\[24px\]{
    font-size: 24px;
  }.md\:text-\[48px\]{
    font-size: 48px;
  }.md\:leading-\[0\.83\]{
    --tw-leading: 0.83;
    line-height: 0.83;
  }.md\:leading-\[1\.8\]{
    --tw-leading: 1.8;
    line-height: 1.8;
  }.md\:tracking-\[0\.05em\]{
    --tw-tracking: 0.05em;
    letter-spacing: 0.05em;
  }}
@layer theme {
  :root,
  :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
      "Liberation Mono", "Courier New", monospace;
    --color-gray-50: #f3f4f5;
    --color-gray-100: #f5f5f5;
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: #ccc;
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: #999;
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-neutral-500: oklch(55.6% 0 0);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-6xl: 72rem;
    --text-xs: 14px;
    --text-xs--line-height: 1.5;
    --text-sm: 18px;
    --text-sm--line-height: 1.5;
    --text-base: 20px;
    --text-base--line-height: 1.5;
    --text-lg: 22px;
    --text-lg--line-height: 1.5;
    --text-xl: 24px;
    --text-xl--line-height: 1.5;
    --text-2xl: 26px;
    --text-2xl--line-height: 1.3;
    --text-3xl: 30px;
    --text-3xl--line-height: 1.3;
    --text-4xl: 36px;
    --text-4xl--line-height: 1.3;
    --text-5xl: 48px;
    --text-5xl--line-height: 1.2;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --tracking-normal: 0em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --default-transition-duration: 0.15s;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-red: #c61022;
    --color-yellow: #fc0;
    --color-yellow-light: #fff8e0;
    --color-text: #333;
  }
}html{
  scroll-behavior: smooth;
}#new-header,#new-footer,#pageimage{
  font-family: "Noto Sans JP", sans-serif;
}@media (min-width: 1300px) {.header-nav-links a{
    font-size: clamp(11px, 0.9333vw, 14px);
  }}.wp-pagenavi.wp-pagenavi a.first,.wp-pagenavi.wp-pagenavi a.last{
  display: none;
}
@keyframes cf7spin {
  to {
    transform: rotate(360deg);
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}/* Fixed header offset for form pages */
div#pageimage{
  margin-top: 160px;
  height: auto;
  background: none;
}/* #pageimage がないページ用 */
div#container{
  margin-top: 160px;
}/* #pageimage がある場合は #container の margin をリセット */
div#pageimage ~ div#container{
  margin-top: 0;
}/* SP: fixed header (65px) 分のオフセット（PC フォームは #pageimage が担う） */
body.sp-page #contents{
  padding-top: 65px;
}.font-montserrat{
  font-family: "Montserrat", sans-serif;
}/* Classes used in ssi_head.htm / sp_ssi_head.htm not generated by Tailwind build */
.gap-\[22px\]{
  gap: 22px;
}.hover\:opacity-\[\.8\]:hover{
  opacity: 0.8;
}.top-\[65px\]{
  top: 65px;
}/* box-sizing: border-box is missing because Tailwind Preflight is disabled */
#new-header{
  box-sizing: border-box;
}/* Form pages are PC-only — hide SP floating phone button */
#floating-phone{
  display: none !important;
}/* ハンバーガーボタン: Preflight なしのブラウザデフォルト button スタイルをリセット */
#hamburger-btn{
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}リセットを打ち消す（inline style を優先させるため !important なし） */
#new-header img,#new-footer img{
  width: auto;
  max-width: none;
  height: auto;
}/* no-underline (リンク下線なし) */
.no-underline{
  text-decoration: none !important;
}/* SP header / footer arbitrary classes missing from Tailwind build */
.py-\[13px\]{
  padding-top: 13px;
  padding-bottom: 13px;
}@media (min-width: 750px) {.min-\[750px\]\:w-\[350px\]{
    width: 350px;
  }}.px-\[37px\]{
  padding-left: 37px;
  padding-right: 37px;
}.gap-7{
  gap: calc(var(--spacing, 0.25rem) * 7);
}.text-m{
  font-size: 16px;
}.pt-\[23px\]{
  padding-top: 23px;
}
/* ===== Header/Footer scoped reset (旧style.cssのグローバル ul/li/p/img 等を打ち消す) =====
   id スコープで詳細度を上げ、旧CSSに勝つ。ただし color/font-size 等ユーティリティが扱う
   プロパティは含めない（id がクラスに勝ってしまい色・サイズを壊すため）。構造系のみ。 */
#new-header *,#new-footer *,#pageimage *{box-sizing:border-box;}
#new-header ul,#new-footer ul,#pageimage ul,
#new-header ol,#new-footer ol,#pageimage ol{margin:0;padding:0;list-style:none;}
#new-header li,#new-footer li,#pageimage li{list-style:none;}
#new-header p,#new-footer p,#pageimage p{margin:0;}
#new-header img,#new-footer img,#pageimage img{vertical-align:middle;border:0;}
/* ===== 本家ヘッダー/フッター同期: 不足クラス補充 ===== */
.\!rounded-none{border-radius:0!important}
.h-\[26px\]{height:26px}
.px-\[15px\]{padding-inline:15px}
.py-\[11px\]{padding-block:11px}
.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.w-\[100px\]{width:100px}
.w-\[120px\]{width:120px}
.w-\[26px\]{width:26px}
@media (min-width:48rem){.md\:py-\[12px\]{padding-block:12px}.md\:text-\[14px\]{font-size:14px}.md\:w-\[138px\]{width:138px}}
@media (min-width:1300px){.wide\:\!rounded-sm{border-radius:var(--radius-sm)!important}.wide\:block{display:block;visibility:visible}.wide\:flex-row{flex-direction:row}.wide\:gap-\[10px\]{gap:10px}.wide\:gap-\[22px\]{gap:22px}.wide\:h-\[18px\]{height:18px}.wide\:hidden{display:none}.wide\:pb-6{padding-bottom:calc(var(--spacing)*6)}.wide\:pl-\[24px\]{padding-left:24px}.wide\:pr-\[20px\]{padding-right:20px}.wide\:pt-5{padding-top:calc(var(--spacing)*5)}.wide\:pt-5\.75{padding-top:calc(var(--spacing)*5.75)}.wide\:px-10{padding-inline:calc(var(--spacing)*10)}.wide\:px-\[37px\]{padding-inline:37px}.wide\:py-\[9px\]{padding-block:9px}.wide\:text-\[14px\]{font-size:14px}.wide\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.wide\:w-\[138px\]{width:138px}.wide\:w-\[18px\]{width:18px}}

/* 旧 li/p{line-height:1.6em} の継承を断つ（本家=1.5相当）。header/footer/pageimage 限定 */
header li,footer li{line-height:1.5;}
header p,footer p{line-height:1.5;}

/* フッター基準フォントを本家(16px)に。旧body{font-size:14px}の継承を上書き。
   子要素はexplicit指定なので不変、li等の行高だけ本家(24px)に揃う */
#new-footer{font-size:16px;}

/* ヘッダー基準フォントを本家(16px)に。旧body{font-size:14px}の継承を上書き。
   子はexplicit指定で不変、nav li等の行高だけ本家(24px)に揃う */
#new-header{font-size:16px;}

/* フロート（旧 .menu_btn .btn{float:left} 等）の回り込みでフッターが崩れるのを防ぐ */
#new-footer{clear:both;}

/* 本家レスポンシブヘッダー用 追加クラス */
.px-\[32px\]{padding-inline:32px;}
.top-\[67px\]{top:67px;}

/* 本家ナビは黒(#000)。旧 style.css の a{color:#00348c} の漏れを打ち消す(.header-nav-links a=0,1,1 で a=0,0,1 に勝つ) */
.header-nav-links a{color:#000;}

/* ==========================================================================
   phone-section（電話CTA：本体サイトより移植 / _data/html/phone-section.html）
   - 追記は new-layout.css のみ。既存18クラスは重複追加しない。
   - フォントサイズ var(--text-*) は member 側スケール(26/20/18px)を継承しヘッダー
     /フッターと統一（本体は24/16/14px）。
   ========================================================================== */
/* ---- 不足ユーティリティ（通常）---- */
.mb-8{margin-bottom:calc(var(--spacing) * 8);}
.h-auto{height:auto;}
.max-w-6xl{max-width:var(--container-6xl);}
.max-w-\[calc\(33\.333\%-11px\)\]{max-width:calc(33.333% - 11px);}
.min-w-\[60px\]{min-width:60px;}
.gap-4{gap:calc(var(--spacing) * 4);}
.gap-6{gap:calc(var(--spacing) * 6);}
.border{border-style:var(--tw-border-style);border-width:1px;}
.object-contain{object-fit:contain;}
.py-5{padding-block:calc(var(--spacing) * 5);}
.py-\[100px\]{padding-block:100px;}
.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height));}
.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);}
.whitespace-nowrap{white-space:nowrap;}
/* ---- 不足ユーティリティ（sm: >=40rem）---- */
@media (min-width:40rem){
  .sm\:h-10{height:calc(var(--spacing) * 10);}
  .sm\:w-10{width:calc(var(--spacing) * 10);}
  .sm\:text-\[length\:28px\]{font-size:28px;}
  .sm\:text-\[length\:44px\]{font-size:44px;}
}
/* ---- 不足ユーティリティ（md: >=48rem）---- */
@media (min-width:48rem){
  .md\:mb-10{margin-bottom:calc(var(--spacing) * 10);}
  .md\:h-6{height:calc(var(--spacing) * 6);}
  .md\:h-\[90px\]{height:90px;}
  .md\:w-6{width:calc(var(--spacing) * 6);}
  .md\:max-w-none{max-width:none;}
  .md\:flex-row{flex-direction:row;}
  .md\:items-center{align-items:center;}
  .md\:justify-between{justify-content:space-between;}
  .md\:gap-6{gap:calc(var(--spacing) * 6);}
  .md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading, var(--text-3xl--line-height));}
  .md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height));}
  .md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height));}
}
/* ---- #phone-section スコープ上書き（旧 style.css のグローバル指定対策）---- */
#phone-section{font-family:"Noto Sans JP",sans-serif;}
#phone-section *,#phone-section *::before,#phone-section *::after{box-sizing:border-box;}
#phone-section a{text-decoration:none;}
/* ---- 新ヘッダー/フッター: ホバー時は下線でなくopacityのみ（旧 style.css の a:hover{underline}対策）---- */
#new-header a,#new-footer a{text-decoration:none;}
#new-header a:hover,#new-footer a:hover{text-decoration:none;}
