/* ===== ページ共通・レスポンシブ ===== */
#wf-superwall, #wf-superwall * { box-sizing: border-box; }
#wf-superwall { background: #fff; }
#wf-superwall a { text-decoration: none; cursor: pointer; }
#wf-superwall a:hover { opacity: 0.78; }
  .fade { opacity: 1; transform: none; transition: opacity 1s ease, transform 1s cubic-bezier(.22,.61,.36,1); }
  html.reveal-on .fade { opacity: 0; transform: translateY(24px); }
  html.reveal-on .fade.in { opacity: 1; transform: translateY(0); }
  .zoom { overflow: hidden; }
  .zoom img { transition: transform 0.6s ease; }
  .zoom:hover img { transform: scale(1.06); }
  [id^="sw"] { scroll-margin-top: 110px; }
  @media (max-width: 767px) {
    [data-body][data-body] { text-align: left !important; }
    [data-sw-no1grid] > div[style*="max-width: 560px"] { text-align: center; max-width: none !important; }
    [data-sw-no1grid] > div > [data-sw-lead][data-sw-lead] { text-align: left !important; }
    [data-sw-no1grid] [data-sw-ibmap][data-sw-ibmap][data-sw-ibmap] { right: auto !important; left: 50% !important; transform: translate(-50%, -50%) !important; }
    [data-sw-no1grid][data-sw-no1grid] { display: block !important; position: relative; }
    [data-sw-no1grid] > div { position: relative; z-index: 1; }
    [data-sw-ibmap][data-sw-ibmap] { position: absolute !important; right: -12px; top: 50%; transform: translateY(-50%); width: 72% !important; max-width: 280px !important; opacity: 0.16 !important; z-index: 0; pointer-events: none; }
    [data-sw-cat] [data-sw-cathead][data-sw-cathead] { position: relative; cursor: pointer; padding-right: 30px !important; }
    [data-sw-cat] [data-sw-catchev] { display: block !important; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); }
    [data-sw-cat][data-open="1"] [data-sw-catchev] { transform: translateY(-50%) rotate(180deg) !important; }
    [data-sw-cat][data-open="0"] > [data-sw-3col] { display: none !important; }
    [data-sw-cat] + [data-sw-cat] { margin-top: 18px !important; }
    [data-sw-kimg][data-sw-kimg] { aspect-ratio: 4/3 !important; object-position: center 60% !important; }
    [data-sw-benimg][data-sw-benimg] { aspect-ratio: 16/9 !important; }
    [data-sw-aboutimg][data-sw-aboutimg] { height: 300px !important; }
    [data-sw-cathead][data-sw-cathead] { flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; }
    [data-sw-measure][data-sw-measure] { display: flex !important; flex-direction: column !important; gap: 0 !important; }
    [data-sw-mtext] { display: contents !important; }
    [data-sw-mtext] > * { order: 3; }
    [data-sw-mtext] > *:nth-child(1) { order: 1; }
    [data-sw-mtext] > *:nth-child(2) { order: 1; }
    [data-sw-measure] > :not([data-sw-mtext]) { order: 2; margin: 22px 0 4px !important; width: 100% !important; }
    [data-sw-lead][data-sw-lead] { text-align: left !important; }
    [data-sw-lead] br { display: none !important; }
    [data-sw-wrap] { padding-left: 20px !important; padding-right: 20px !important; }
    [data-sw-sec] { padding-top: 56px !important; padding-bottom: 56px !important; }
    [data-sw-en] { font-size: 34px !important; }
    [data-sw-catch] { font-size: 20px !important; line-height: 1.85 !important; }
    [data-sw-lead] { font-size: 14px !important; line-height: 2.1 !important; }
    [data-sw-lead] br { display: none !important; }
    [data-sw-2col] { grid-template-columns: 1fr !important; gap: 26px !important; }
    [data-sw-3col] { grid-template-columns: 1fr !important; gap: 20px !important; }
    [data-sw-num] { font-size: 76px !important; }
    [data-sw-big] { font-size: 104px !important; }
    [data-sw-measure] { grid-template-columns: 1fr !important; gap: 24px !important; padding: 36px 22px !important; text-align: center !important; }
    [data-sw-measure] > div:last-child { max-width: 280px; margin: 0 auto; }
    [data-sw-metrics] { grid-template-columns: 1fr !important; }
    [data-sw-awards] { grid-template-columns: repeat(2, 1fr) !important; gap: 14px !important; }
    [data-sw-works] { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
    [data-sw-cta-row] { flex-direction: column !important; align-items: stretch !important; }
    [data-sw-cta-row] a { width: 100% !important; }
    [data-sw-zeh] { grid-template-columns: 1fr !important; gap: 18px !important; margin-top: 20px !important; }
    [data-sw-plaques][data-sw-plaques][data-sw-plaques] { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
    [data-sw-plaques] > div { padding: 8px !important; min-width: 0 !important; }
    [data-sw-plaques] img { width: 100% !important; height: auto !important; }
    [data-sw-feat] { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
    [data-acc-toggle] { grid-template-columns: 1fr !important; gap: 0 !important; padding: 0 !important; }
    [data-acc-toggle] [data-acc-txt] { padding: 20px 20px 0 !important; }
    [data-acc-toggle] [data-acc-btn] { margin: 16px 20px 20px !important; justify-content: center !important; }
    [data-acc-panel] { padding: 24px 20px 28px !important; }
    [data-sw-kpi] { grid-template-columns: 1fr !important; gap: 8px !important; }
    [data-sw-dhead] h3 { font-size: 18px !important; }
    [data-sw-dbody] { font-size: 13px !important; line-height: 2 !important; }
    [data-sw-detail] ul { font-size: 13px !important; line-height: 2 !important; }
    [data-sw-figs] { grid-template-columns: 1fr !important; gap: 14px !important; }
    [data-sw-feat] div[style*="padding: 22px 20px 26px"] { padding: 16px 14px 18px !important; font-size: 13px !important; line-height: 1.9 !important; }
    [data-sw-no1] { gap: 14px !important; flex-direction: column !important; }
    [data-sw-no1] > div:first-child { text-align: center !important; }
    [data-sw-no1] > div:first-child > div { font-size: 15px !important; }
    [data-sw-no1-num] { font-size: 104px !important; }
  }

  /* 本文タイポグラフィのスマホ統一 */
  @media (max-width: 767px) {
    [style*="font-size: 16px"][style*="rgb(92, 85, 75)"],
    [style*="font-size: 15px"][style*="rgb(92, 85, 75)"],
    [style*="font-size: 14px"][style*="rgb(92, 85, 75)"] { font-size: 14px !important; line-height: 2 !important; letter-spacing: 0.02em !important; }
    [style*="font-size: 13px"][style*="rgb(92, 85, 75)"] { font-size: 13px !important; line-height: 1.95 !important; }
    [style*="font-size: 13px"][style*="rgb(122, 114, 104)"],
    [style*="font-size: 12px"][style*="rgb(122, 114, 104)"],
    [style*="font-size: 11px"][style*="rgb(122, 114, 104)"] { font-size: 12px !important; line-height: 1.85 !important; }
  }

/* ===== 要素スタイル（旧 style 属性から移行） ===== */
.u-w9epnz.u-w9epnz { font-family: 'Noto Sans JP', sans-serif; color: #2e2a26; background: #fff; width: 100%; }
.u-twsa4l.u-twsa4l { background: #fff; padding: 88px 0 76px; }
.u-17kws4q.u-17kws4q { max-width: 1200px; margin: 0 auto; padding: 0 32px; }
.u-1rfc3xh.u-1rfc3xh { text-align: center; }
.u-956hz2.u-956hz2 { font-size: 46px; font-weight: 400; letter-spacing: 4px; color: #46a1b5; line-height: 1; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-woexx3.u-woexx3 { font-size: 26px; font-weight: 700; line-height: 2; letter-spacing: 0.08em; margin-top: 28px; }
.u-1500zcj.u-1500zcj { width: 100%; max-width: 560px; height: auto; display: block; margin: 28px auto 0; }
.u-mwuco5.u-mwuco5 { font-size: 15px; color: #5c554b; line-height: 2.4; letter-spacing: 0.06em; margin-top: 30px; }
.u-ocqzq7.u-ocqzq7 { margin-top: 48px; position: relative; }
.u-jvog4e.u-jvog4e { width: 100%; height: 460px; object-fit: cover; display: block; }
.u-1hho1ix.u-1hho1ix { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,0.55) 62%, rgba(0,0,0,0.72) 100%); }
.u-1gv4ri0.u-1gv4ri0 { position: absolute; left: 0; right: 0; bottom: 0; padding: 40px 32px 34px; color: #fff; text-align: center; }
.u-1vo6tt7.u-1vo6tt7 { font-size: 14px; letter-spacing: 0.1em; }
.u-txbxtv.u-txbxtv { font-size: 120px; font-weight: 700; line-height: 1; letter-spacing: -0.02em; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-lapd3t.u-lapd3t { font-size: 0.32em; font-weight: 400; margin-left: 6px; }
.u-1rfocnk.u-1rfocnk { font-size: 11px; color: rgba(255,255,255,0.85); margin-top: 10px; }
.u-1eihbdf.u-1eihbdf { background: #46a1b5; color: #fff; padding: 72px 0; }
.u-99hgc0.u-99hgc0 { max-width: 1080px; margin: 0 auto; padding: 0 32px; }
.u-10pszod.u-10pszod { position: relative; display: grid; grid-template-columns: 1fr; max-width: 760px; margin: 0 auto; align-items: center; }
.u-1vv0tk.u-1vv0tk { position: relative; z-index: 1; max-width: 560px; }
.u-1agh79w.u-1agh79w { font-size: 18px; font-weight: 700; letter-spacing: 0.12em; line-height: 1.9; }
.u-1e6mpnt.u-1e6mpnt { font-size: 160px; font-weight: 700; line-height: 0.9; letter-spacing: -0.02em; margin-top: 10px; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-170myku.u-170myku { font-size: 15px; line-height: 2.3; letter-spacing: 0.06em; margin-top: 28px; color: #fff; text-wrap: pretty; }
.u-1k7hn7c.u-1k7hn7c { white-space: nowrap; }
.u-twm7fw.u-twm7fw { position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 340px; height: auto; display: block; opacity: 0.3; z-index: 0; pointer-events: none; }
.u-x4q59o.u-x4q59o { background: #f7f5f1; padding: 96px 0; }
.u-wiw7ej.u-wiw7ej { font-size: 14px; font-weight: 700; letter-spacing: 1px; }
.u-j550s6.u-j550s6 { font-size: 52px; font-weight: 400; letter-spacing: 3px; color: #46a1b5; line-height: 1; margin-top: 10px; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-oeqdq7.u-oeqdq7 { max-width: 860px; margin: 44px auto 0; text-align: center; }
.u-1y654b8.u-1y654b8 { font-size: 24px; font-weight: 700; line-height: 1.9; letter-spacing: 0.06em; }
.u-mwb3fw.u-mwb3fw { font-size: 15px; color: #5c554b; line-height: 2.4; letter-spacing: 0.06em; margin-top: 28px; }
.u-um0pq3.u-um0pq3 { display: flex; justify-content: center; margin-top: 44px; }
.u-wgb3so.u-wgb3so { width: 100%; max-width: 380px; aspect-ratio: 1/1; object-fit: contain; display: block; }
.u-r4rvjj.u-r4rvjj { background: #fff; padding: 96px 0; }
.u-l24jep.u-l24jep { max-width: 880px; margin: 44px auto 0; text-align: center; }
.u-1az8rie.u-1az8rie { max-width: 600px; margin: 46px auto 0; }
.u-rf72oq.u-rf72oq { width: 100%; height: auto; display: block; }
.u-1au0cdd.u-1au0cdd { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; gap: 14px; margin-top: -6px; }
.u-4vijtk.u-4vijtk { background: #fff; border: 1px solid #46a1b5; color: #46a1b5; font-size: 15px; font-weight: 700; line-height: 1.7; text-align: center; padding: 14px 22px; display: flex; align-items: center; }
.u-12g8lt0.u-12g8lt0 { background: #fff; border: 1px solid #c3bbae; color: #2e2a26; font-size: 15px; font-weight: 700; line-height: 1.7; text-align: center; padding: 14px 22px; display: flex; align-items: center; }
.u-5cdsrl.u-5cdsrl { display: flex; align-items: center; font-size: 21px; color: #7a7268; }
.u-1dg7zgh.u-1dg7zgh { background: #4a6b80; color: #fff; font-size: 15px; font-weight: 700; line-height: 1.7; text-align: center; padding: 14px 26px; display: flex; align-items: center; }
.u-1h44lgp.u-1h44lgp { background: #b14a4a; color: #fff; font-size: 15px; font-weight: 700; line-height: 1.7; text-align: center; padding: 14px 26px; display: flex; align-items: center; }
.u-19w4ngf.u-19w4ngf { background: #fff; border: 1px solid #e3ded4; margin-top: 50px; }
.u-vaibcy.u-vaibcy { all: unset; box-sizing: border-box; display: grid; grid-template-columns: 340px 1fr auto; align-items: center; gap: 28px; width: 100%; cursor: pointer; padding: 0 28px 0 0; }
.u-x7f640.u-x7f640 { position: relative; aspect-ratio: 3/2; background: #1a1a1a; overflow: hidden; }
.u-1rintqa.u-1rintqa { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.72; }
.u-5844vl.u-5844vl { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.35) 42%, rgba(0,0,0,0.1) 100%); }
.u-78fk1o.u-78fk1o { position: absolute; left: 16px; bottom: 14px; display: flex; align-items: flex-end; gap: 10px; color: #fff; }
.u-1zx73h.u-1zx73h { writing-mode: vertical-rl; font-size: 12px; letter-spacing: 0.16em; line-height: 1; padding-bottom: 4px; }
.u-da9wkw.u-da9wkw { font-size: 40px; font-weight: 200; line-height: 0.82; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-11els0q.u-11els0q { padding: 22px 0; }
.u-7on5z9.u-7on5z9 { font-size: 26px; font-weight: 700; color: #46a1b5; letter-spacing: 0.06em; }
.u-z23fj8.u-z23fj8 { font-size: 16px; font-weight: 700; line-height: 1.9; margin-top: 8px; color: #2e2a26; }
.u-1ycw1q3.u-1ycw1q3 { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin-top: 14px; }
.u-zydebu.u-zydebu { font-size: 10.5px; font-weight: 700; letter-spacing: 0.14em; color: #fff; background: #46a1b5; padding: 5px 9px; line-height: 1.4; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-uode0h.u-uode0h { font-size: 14px; font-weight: 700; color: #2e2a26; line-height: 1.8; display: inline-flex; align-items: center; gap: 8px; }
.u-1f85zdw.u-1f85zdw { width: 5px; height: 5px; background: #46a1b5; flex: none; display: block; }
.u-1gp595c.u-1gp595c { display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; border: 1px solid #c3bbae; font-size: 13px; font-weight: 700; color: #2e2a26; white-space: nowrap; }
.u-pxyjt9.u-pxyjt9 { font-size: 10px; transition: transform 0.3s ease; }
.u-1o3wbbh.u-1o3wbbh { display: none; border-top: 1px solid #e8e3da; padding: 32px 28px 36px; }
.u-hpx546.u-hpx546 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 22px; }
.u-6o84as.u-6o84as { background: #f2fafc; border: 1px solid #cbe6ed; padding: 18px 16px; text-align: center; }
.u-1dh8p2z.u-1dh8p2z { font-size: 30px; font-weight: 700; color: #46a1b5; line-height: 1.1; letter-spacing: -0.01em; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-1fj9p8d.u-1fj9p8d { font-size: 0.45em; font-weight: 700; margin-left: 3px; }
.u-rf03yk.u-rf03yk { font-size: 12px; color: #5c554b; line-height: 1.7; margin-top: 8px; }
.u-1spmm6t.u-1spmm6t { margin-top: 22px; font-size: 14px; color: #5c554b; line-height: 2.1; }
.u-p95nsd.u-p95nsd { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 26px; }
.u-1970ff9.u-1970ff9 { margin: 0; }
.u-fyj622.u-fyj622 { font-size: 13px; font-weight: 700; line-height: 1.7; margin-bottom: 10px; color: #2e2a26; }
.u-1cn8o64.u-1cn8o64 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.u-sp776t.u-sp776t { font-size: 10.5px; font-weight: 700; line-height: 1.5; min-height: 3em; }
.u-13b0r8o.u-13b0r8o { width: 100%; height: auto; display: block; border: 1px solid #e8e3da; background: #fff; }
.u-10zlsp5.u-10zlsp5 { font-size: 10.5px; color: #5c554b; line-height: 1.6; margin-top: 5px; }
.u-6h572e.u-6h572e { font-size: 11.5px; color: #7a7268; line-height: 1.8; margin-top: 8px; }
.u-1ihyvme.u-1ihyvme { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; align-items: center; }
.u-nzb70c.u-nzb70c { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; color: #46a1b5; border-bottom: 1px solid #a8d6e2; padding-bottom: 2px; }
.u-vd0x7z.u-vd0x7z { font-size: 10px; }
.u-19tflkx.u-19tflkx { background: #fff; border: 1px solid #e3ded4; margin-top: 16px; }
.u-13iyp6v.u-13iyp6v { width: 100%; max-width: 300px; margin: 0 auto; height: auto; display: block; border: 1px solid #e8e3da; background: #fff; }
.u-1fn0er3.u-1fn0er3 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 26px; }
.u-18h4ypp.u-18h4ypp { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.u-18k26x5.u-18k26x5 { font-size: 11px; color: #5c554b; line-height: 1.7; margin-top: 6px; }
.u-2xj0a6.u-2xj0a6 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 26px; }
.u-c7unwp.u-c7unwp { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 0; }
.u-11r14e2.u-11r14e2 { background: #f2fafc; border: 1px solid #cbe6ed; padding: 18px 16px; text-align: center; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.u-uabr0u.u-uabr0u { font-size: 12px; color: #5c554b; line-height: 1.7; margin-bottom: 8px; }
.u-z4fo2f.u-z4fo2f { font-size: 12px; color: #7a7268; }
.u-c9t4bq.u-c9t4bq { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: start; margin-top: 36px; }
.u-rd30pu.u-rd30pu { margin: 0; font-size: 20px; font-weight: 700; line-height: 1.7; padding-bottom: 12px; border-bottom: 1px solid #e3ded4; }
.u-1slraig.u-1slraig { margin-top: 16px; font-size: 14px; color: #5c554b; line-height: 2.1; }
.u-e1nuyu.u-e1nuyu { font-size: 16px; font-weight: 700; line-height: 1.8; margin-top: 22px; }
.u-1q51q7o.u-1q51q7o { margin-top: 12px; font-size: 14px; color: #5c554b; line-height: 2.1; }
.u-1vanzqc.u-1vanzqc { width: 100%; height: auto; display: block; background: #fff; }
.u-9b75fy.u-9b75fy { font-size: 12px; color: #7a7268; line-height: 1.9; margin-top: 10px; }
.u-1d7wvhd.u-1d7wvhd { display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; border: 1px solid #c3bbae; font-size: 13px; font-weight: 700; }
.u-141jsmd.u-141jsmd { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 22px; }
.u-ttmod6.u-ttmod6 { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 40%; opacity: 0.72; }
.u-1fjmc5z.u-1fjmc5z { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; object-position: center 45%; display: block; border: 1px solid #e8e3da; background: #fff; }
.u-a0yf00.u-a0yf00 { width: 100%; max-width: 192px; margin: 0 auto; height: auto; display: block; border: 1px solid #e8e3da; background: #fff; }
.u-1inuqoo.u-1inuqoo { font-size: 24px; font-weight: 700; line-height: 1.9; letter-spacing: 0.06em; margin-top: 36px; }
.u-xg7n7o.u-xg7n7o { background: #46a1b5; color: #fff; padding: 56px 40px; margin-top: 44px; display: grid; grid-template-columns: 1fr 300px; gap: 40px; align-items: center; }
.u-gzcgcl.u-gzcgcl { font-size: 13px; letter-spacing: 0.16em; opacity: 0.9; }
.u-1p95cmx.u-1p95cmx { font-size: 26px; font-weight: 700; line-height: 1.8; letter-spacing: 0.06em; margin-top: 18px; }
.u-1w7fzp7.u-1w7fzp7 { font-size: 15px; line-height: 2.3; letter-spacing: 0.06em; margin-top: 22px; color: rgba(255,255,255,0.95); }
.u-1fhfs0q.u-1fhfs0q { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 700; color: #46a1b5; background: #fff; padding: 15px 28px; margin-top: 26px; }
.u-vd1oy8.u-vd1oy8 { font-size: 11px; }
.u-13ukdjn.u-13ukdjn { background: #fff; padding: 12px; }
.u-1ppmang.u-1ppmang { width: 100%; height: auto; aspect-ratio: 3/4; object-fit: cover; display: block; }
.u-9oc6ll.u-9oc6ll { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 44px; }
.u-10tjktx.u-10tjktx { border: 1px solid #e3ded4; padding: 34px 28px; text-align: center; }
.u-yjncnt.u-yjncnt { font-size: 22px; letter-spacing: 0.08em; color: #46a1b5; font-weight: 700; line-height: 1.4; }
.u-1rfharb.u-1rfharb { font-size: 14px; color: #5c554b; line-height: 2; margin-top: 14px; }
.u-pc2b3q.u-pc2b3q { margin-top: 18px; padding-top: 18px; border-top: 1px solid #e3ded4; }
.u-1aq545q.u-1aq545q { font-size: 11px; letter-spacing: 0.1em; color: #7a7268; }
.u-19y8ayf.u-19y8ayf { font-size: 40px; font-weight: 700; color: #2e2a26; line-height: 1.1; margin-top: 6px; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-1fyb9f5.u-1fyb9f5 { font-size: 0.4em; margin-left: 4px; }
.u-sfpxol.u-sfpxol { font-size: 11.5px; color: #7a7268; line-height: 1.7; margin-top: 8px; }
.u-3gz91.u-3gz91 { display: grid; grid-template-columns: 1fr 0.72fr; gap: 48px; align-items: center; margin-top: 48px; }
.u-1ushhlx.u-1ushhlx { font-size: 14px; color: #5c554b; line-height: 2; letter-spacing: 0.08em; margin-top: 22px; }
.u-1cauqb3.u-1cauqb3 { font-size: 30px; font-weight: 700; line-height: 1.5; margin-top: 4px; }
.u-n1n9cr.u-n1n9cr { border-top: 1px solid #ddd5c8; margin-top: 28px; padding-top: 28px; }
.u-chd85r.u-chd85r { font-size: 14px; color: #5c554b; letter-spacing: 0.06em; }
.u-1lw6qcg.u-1lw6qcg { font-size: 104px; font-weight: 700; color: #46a1b5; line-height: 1; letter-spacing: -0.02em; margin-top: 6px; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-13s9f2i.u-13s9f2i { font-size: 0.4em; }
.u-stq66f.u-stq66f { font-size: 15px; color: #5c554b; line-height: 2.3; letter-spacing: 0.04em; margin-top: 26px; }
.u-1mggw7p.u-1mggw7p { background: #fff; padding: 20px; border: 1px solid #e3ded4; }
.u-yeybzm.u-yeybzm { width: 100%; aspect-ratio: 3/4; object-fit: contain; display: block; }
.u-1dxl2k5.u-1dxl2k5 { font-size: 150px; font-weight: 700; color: #46a1b5; line-height: 1; letter-spacing: -0.03em; margin-top: 18px; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-cajcvd.u-cajcvd { font-size: 0.3em; font-weight: 400; margin-left: 8px; }
.u-1e69y75.u-1e69y75 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; max-width: 860px; margin: 40px auto 0; }
.u-1o7r78o.u-1o7r78o { border: 1px solid #e3ded4; padding: 22px 16px; text-align: center; font-size: 14px; font-weight: 700; }
.u-1p83ok5.u-1p83ok5 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; max-width: 620px; margin: 40px auto 0; }
.u-mwakeq.u-mwakeq { background: #f7f5f1; padding: 14px; }
.u-a8k1yz.u-a8k1yz { max-width: 860px; margin: 40px auto 0; text-align: center; }
.u-1uk3zfn.u-1uk3zfn { font-size: 20px; font-weight: 700; line-height: 1.9; }
.u-st2ako.u-st2ako { font-size: 15px; color: #5c554b; line-height: 2.3; letter-spacing: 0.04em; margin-top: 18px; }
.u-ulcu4c.u-ulcu4c { display: flex; justify-content: center; margin-top: 36px; }
.u-61uqxe.u-61uqxe { width: 100%; max-width: 760px; aspect-ratio: 4/3; object-fit: cover; display: block; }
.u-1l7dcvo.u-1l7dcvo { margin-top: 52px; }
.u-1uara9p.u-1uara9p { display: flex; align-items: baseline; gap: 16px; border-bottom: 1px solid #ddd5c8; padding-bottom: 14px; }
.u-1qswbjc.u-1qswbjc { font-size: 22px; letter-spacing: 0.14em; color: #46a1b5; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-14bebaj.u-14bebaj { font-size: 14px; font-weight: 700; }
.u-1da5pqm.u-1da5pqm { display: none; margin-left: auto; font-size: 14px; color: #46a1b5; transition: transform 0.25s ease; }
.u-1mcgaei.u-1mcgaei { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-top: 26px; }
.u-nqo4df.u-nqo4df { background: #fff; border: 1px solid #e3ded4; padding: 24px 20px; }
.u-65g5ur.u-65g5ur { font-size: 13px; color: #46a1b5; font-weight: 700; letter-spacing: 0.08em; }
.u-gtvvqi.u-gtvvqi { font-size: 14px; line-height: 1.9; margin-top: 10px; }
.u-1l7gfso.u-1l7gfso { margin-top: 56px; }
.u-9myvxl.u-9myvxl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 26px; }
.u-1fvdv2s.u-1fvdv2s { background: #fff; border: 1px solid #e3ded4; overflow: hidden; }
.u-17a04eg.u-17a04eg { padding: 20px; }
.u-113uo75.u-113uo75 { font-size: 14px; line-height: 1.9; margin-top: 8px; }
.u-p345gr.u-p345gr { display: grid; grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center; }
.u-hdxhfp.u-hdxhfp { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.u-1dp78ze.u-1dp78ze { font-size: 13px; font-weight: 700; letter-spacing: 1px; }
.u-1imfwk6.u-1imfwk6 { font-size: 24px; font-weight: 700; line-height: 1.9; letter-spacing: 0.06em; margin-top: 16px; }
.u-stn39f.u-stn39f { font-size: 15px; color: #5c554b; line-height: 2.3; letter-spacing: 0.04em; margin-top: 22px; }
.u-1opnbwx.u-1opnbwx { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-width: 300px; margin-top: 28px; padding: 18px 28px; background: #46a1b5; color: #fff; font-size: 15px; font-weight: 700; }
.u-zj1ac9.u-zj1ac9 { background: #46a1b5; padding: 96px 0; color: #fff; }
.u-1yxx6jh.u-1yxx6jh { max-width: 1200px; margin: 0 auto; padding: 0 32px; text-align: center; }
.u-1yp8ums.u-1yp8ums { font-size: 46px; font-weight: 400; letter-spacing: 4px; line-height: 1; font-family: Futura, 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN'; }
.u-1qql7x5.u-1qql7x5 { font-size: 26px; font-weight: 700; line-height: 1.9; letter-spacing: 0.06em; margin-top: 26px; }
.u-13ugo1s.u-13ugo1s { font-size: 15px; line-height: 2.4; letter-spacing: 0.06em; margin-top: 26px; color: rgba(255,255,255,0.95); }
.u-103ctjs.u-103ctjs { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; margin-top: 40px; }
.u-q0f4so.u-q0f4so { background: #fff; color: #2e2a26; font-size: 15px; font-weight: 700; padding: 20px 38px; }
.u-redve.u-redve { border: 1px solid #fff; color: #fff; font-size: 15px; font-weight: 700; padding: 20px 38px; }
.u-1pagfgc.u-1pagfgc { background: #fff; }
.u-1xcajvq.u-1xcajvq { max-width: 1200px; margin: 0 auto; padding: 26px 32px 30px; display: flex; align-items: center; gap: 12px; font-size: 13px; color: #5c554b; }
.u-nerib9.u-nerib9 { display: inline-flex; align-items: center; gap: 8px; }
.u-vd2goh.u-vd2goh { font-size: 12px; }
.u-1q1apfi.u-1q1apfi { border-bottom: 1px solid #c3bbae; }
