.l-mv{position:relative}.l-mv-inner{width:min(64.5rem,94%);margin-inline:auto;position:absolute;inset-block-start:50%;inset-inline:0;transform:translate(0, -50%)}.l-mv-ttl{margin-block:0;display:flex;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:1rem}.l-mv-ttl img{width:1.875rem;height:auto}.l-mv-img{margin:0}.l-mv-img img{height:20rem}.l-breadcrumb{margin-block-start:clamp(2rem,1.71rem + 1.43vw,3rem);color:hsl(0,0%,45%);font-size:.8125rem}@media screen and (min-width: 768px){.l-breadcrumb{font-size:.8125rem}}.l-breadcrumb{font-family:var(--font-sans);font-optical-sizing:auto;font-weight:400;font-style:normal;line-height:1.7538461538;letter-spacing:0}@supports(text-box-trim: trim-both){.l-breadcrumb{text-box-trim:trim-both;text-box-edge:text}}.l-breadcrumb>span>a,.l-breadcrumb>span>span{text-decoration:none;color:inherit}.l-sec-ttl{position:relative;margin-block:0;font-weight:400}.l-sec-ttl::after{content:"";display:block;width:3.5rem;height:2px;background:hsl(66,68%,44%);margin-block:.8571428571em}.c-box{margin-block-start:clamp(2rem,1.71rem + 1.43vw,3rem);background:hsl(146deg, 76%, 18%, 8%);border-radius:.5rem;padding-block:1.5rem;padding-inline:clamp(1.375rem,1.05rem + 1.61vw,2.5rem)}.c-box h3.c-h3{color:hsl(146,76%,18%);margin-block:0 .6666666667em}.c-box-list{list-style:none;margin-block:0;padding-inline-start:0;display:grid;grid-template-columns:1fr;row-gap:.5rem}.c-box-list>li{position:relative;padding-inline-start:1.0625rem}.c-box-list>li::before{content:"";position:absolute;left:0;top:.72em;transform:translateY(-50%);inline-size:.25rem;block-size:.25rem;border-radius:50%;background:hsl(66,68%,44%)}.c-box-list--col2{grid-template-columns:repeat(2, minmax(0, 1fr));column-gap:2.5rem}.p-healthy-aging01{margin-block-start:clamp(3rem,2.43rem + 2.86vw,5rem)}.p-healthy-aging01-hd .c-h1{text-align:center;margin-block:0 .6em}.p-healthy-aging01-hd .c-txt{width:min(53.5rem,100%);margin-inline:auto}.p-healthy-aging02{margin-block-start:clamp(4.125rem,3.16rem + 4.82vw,7.5rem)}.p-healthy-aging02-hd{margin-block-end:clamp(3rem,2.43rem + 2.86vw,5rem)}.p-healthy-aging02-hd .c-h1{text-align:center;margin-block:0}.p-healthy-aging02-hd .c-h3{text-align:center;margin-block:.5rem 0}.p-healthy-aging03{margin-block-start:clamp(4.125rem,3.16rem + 4.82vw,7.5rem)}.p-healthy-aging03-hd .c-h1{text-align:center;margin-block:0}.p-muscle-health02{margin-block-start:clamp(5rem,3.57rem + 7.14vw,10rem)}.p-muscle-health02 .c-h1{text-align:center;margin-block:0}.p-muscle-health02 .c-h3{margin-block:0}.p-muscle-health02 .c-h3.--center{text-align:center}.p-muscle-health02 .c-h3+.c-h3{margin-block-start:.5rem}.p-muscle-health02 .c-img{margin-block-end:clamp(4.125rem,3.16rem + 4.82vw,7.5rem)}.p-muscle-health03{margin-block-start:clamp(5rem,3.57rem + 7.14vw,10rem)}.p-muscle-health03 .c-h1{text-align:center}.p-muscle-health04{margin-block:clamp(5rem,3.57rem + 7.14vw,10rem)}

/* --- merged from healthy-aging-tw.css (Traditional root) --- */
@charset "UTF-8";
/* Traditional Chinese healthy-aging page (/tw/healthy-aging/) — overrides on top of healthy-aging.css */

/* Intro */
.p-ha-intro {
  max-width: 60rem;
  margin-inline: auto;
  text-align: center;
}

.p-ha-intro .c-h1 {
  margin-block: 0 1em;
}

/* Centered section dividers + English sub-label */
.p-healthy-aging02-hd,
.p-healthy-aging04-hd {
  text-align: center;
}

.p-healthy-aging02-hd .c-h1,
.p-healthy-aging04-hd .c-h1 {
  margin-block: 0 0.4em;
}

.p-ha-sub {
  margin-block: 0 clamp(2.5rem, 1.79rem + 3.57vw, 5rem);
  color: hsl(0, 0%, 35%);
  font-family: "Exo 2", var(--font-sans);
  font-size: clamp(1rem, 0.93rem + 0.36vw, 1.25rem);
}

/* 機制 / 益處 / 自信 / 強健 / 自在 labels in brand green */
.c-flex-dl h3.c-h3 {
  color: hsl(146, 76%, 18%);
  margin-block: 1.25rem 0.35rem;
}

/* Landscape infographics & photos: wider column, keep aspect ratio */
.p-healthy-aging01 img,
.p-healthy-aging02 img,
.p-healthy-aging03 img,
.p-healthy-aging04 img {
  height: auto;
}

.c-flex-img img {
  width: 100%;
  height: auto;
}

/* ── 由內而外守護 (Nurturing Wellness from Within) ──────────────── */
.p-healthy-aging04 {
  margin-block-start: clamp(5rem, 3.57rem + 7.14vw, 10rem);
}

.p-ha-wellness-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.p-ha-wellness-item {
  position: relative;
  display: block;
  cursor: pointer;
}

.p-ha-wellness-item img {
  display: block;
  width: 100%;
  height: auto;
}

/* click-to-open overlay (Figma: energy4/5/6_hover) — toggled by js-productsToggle */
.p-ha-wellness-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-inline: 16.6667%;
  background: rgba(11, 82, 42, 0.75);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.p-ha-wellness-item.is-open .p-ha-wellness-overlay {
  opacity: 1;
  pointer-events: auto;
}

.p-ha-wellness-close {
  position: absolute;
  inset: 1rem 1rem auto auto;
  padding: 0;
  background: none;
  border: none;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.p-ha-wellness-desc {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

.p-ha-wellness-desc p {
  margin: 0;
}

.p-ha-wellness-desc p + p {
  margin-block-start: 16px;
}

@media screen and (max-width: 767px) {
  .p-ha-wellness-list {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   No.146〜147 / No.195〜196: 由內而外守護・Integrated Support のカード
   画像一枚絵（card0X.png）から「アイコン画像 + HTML テキスト」に変更。
   ============================================================ */
.p-ha-wellness-item {
  background: hsl(146deg, 76%, 18%, 5%);
}

.p-ha-wellness-item:nth-child(even) {
  background: hsl(146deg, 76%, 18%, 8%);
}

.p-ha-wellness-body {
  aspect-ratio: 960 / 1040;
  padding: clamp(2rem, 1.43rem + 2.86vw, 4rem) clamp(1.25rem, .9rem + 1.79vw, 2.5rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.p-ha-wellness-item img.p-ha-wellness-icon {
  width: clamp(7.5rem, 5rem + 12.5vw, 11.25rem);
  height: auto;
  margin-block-end: clamp(1.5rem, 1.14rem + 1.79vw, 2.75rem);
}

.p-ha-wellness-ttl {
  margin: 0;
  line-height: 1.4;
}

.p-ha-wellness-sub {
  margin: .4em 0 0;
  font-weight: 500;
}

.p-ha-wellness-lead {
  margin: 1em 0 0;
  color: hsl(0, 0%, 45%);
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-ha-wellness-body {
    aspect-ratio: auto;
  }
}


/* No.136 / No.184: 導入ブロック（テキスト左・画像右）。画像が無い間はテキストだけを中央幅で出す。 */
.p-ha-lead {
  margin-block-end: clamp(4.125rem, 3.16rem + 4.82vw, 7.5rem);
}

.p-ha-lead .c-flex-box .c-txt {
  margin: 0;
}


/* No.144 / No.192: 應用方向（Ideal For）の写真。
   表示比率は Figma 未確認のため、ここで一括変更できるようにしておく。 */
.p-ha-photo {
  --photo-ratio: 1060 / 720; /* 2026-10-13 Figma 書き出しに合わせる */
}

.p-ha-photo img {
  aspect-ratio: var(--photo-ratio);
  object-fit: cover;
}



/* 2026-10-13: Figma（node 814-1516）準拠。研究チャートは正方形の枠付きカード（表示 450px）、
   導入グラフは 640px。どちらも画面端へはみ出させず本文幅の中に置く。 */
@media screen and (min-width: 768px) {
  .p-healthy-aging02 .c-flex .c-flex-img.p-ha-chart {
    width: min(28.125rem, 44%);
    margin-inline: 0;
  }

  .p-healthy-aging02 .c-flex .c-flex-img.p-ha-introImg {
    width: min(40rem, 60%);
    margin-inline: 0;
  }
}

.p-ha-chart img,
.p-ha-introImg img {
  width: 100%;
  height: auto;
}


/* 2026-10-13: カードのアイコンを Figma 書き出しの SVG（160×160）に差し替え。Figma の表示サイズ 160px を上限にする。 */
.p-ha-wellness-item img.p-ha-wellness-icon {
  width: clamp(6.5rem, 5.07rem + 7.14vw, 10rem);
}


/* No.208: SP でカードの説明文が入りきらない場合は、テキストだけをスクロールさせる。
   カード（オーバーレイ）自体は固定し、閉じるボタンは常に右上に表示したままにする。 */
@media screen and (max-width: 767px) {
  .p-ha-wellness-overlay,
  .p-ha-wellness-hoverItem,
  .p-mh-energy-overlay,
  .p-mh-energy-hoverItem {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: hidden;
    padding: 3.25rem 1.5rem 1.5rem;
  }

  .p-ha-wellness-desc,
  .p-ha-wellness-hoverItem > .c-txt,
  .p-mh-energy-desc,
  .p-mh-energy-hoverItem > .c-txt {
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    margin: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .p-ha-wellness-close,
  .p-mh-energy-close {
    z-index: 2;
  }
}
