// site-extensions.jsx — TOP page intro to the two extension detail pages. // Two large editorial cards linking to feather_extensions.html / seal_extensions.html. // 羽 = pink-led (premium), シール = gold-led — matching each detail page. const EXT_CARDS = [ { no: '01', en: 'Feather Extension', jp: '羽エクステ', tag: '次世代の最高級ヘア', lead: '羽のように軽く、柔らかい。', desc: '韓国発・最高級の人毛エクステ。特殊な紐で地毛と極小の接合面を結ぶ、付けていることを忘れるほど自然な仕上がり。', points: ['極小の結び目', '約半年〜1年再利用', '究極にナチュラル'], img: 'assets/img/feather_hero.png', href: 'feather_extensions.html', accentKey: 'pink', }, { no: '02', en: 'Seal Extension', jp: 'シールエクステ', tag: 'あっという間にイメージチェンジ', lead: '手軽に短時間で、自然な仕上がり。', desc: 'ドイツ生まれのテープイン方式。薄いシールで地毛を挟み、短時間で長さもボリュームも自在。コスパに優れた定番メニュー。', points: ['スピーディーな施術', '色数・毛質が豊富', '圧倒的にコスパ◎'], img: 'assets/img/seal_hero.png', href: 'seal_extensions.html', accentKey: 'gold', }, ]; function ExtCard({ c }) { const [hov, setHov] = React.useState(false); const accent = c.accentKey === 'pink' ? BRAND.pink : BRAND.gold; const accentSoft = c.accentKey === 'pink' ? BRAND.pinkSoft : BRAND.goldSoft; return ( setHov(true)} onMouseLeave={() => setHov(false)} style={{ display: 'flex', flexDirection: 'column', background: BRAND.white, border: `1px solid ${BRAND.hair}`, textDecoration: 'none', color: BRAND.ink, overflow: 'hidden', transition: 'transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease', transform: hov ? 'translateY(-6px)' : 'none', boxShadow: hov ? '0 28px 60px -30px rgba(26,26,26,.35)' : 'none', }}> {/* Photo */}
{`${c.jp}
N° {c.no}
{/* Body */}
{c.tag}

{c.jp}

{c.en}
{c.lead}

{c.desc}

{/* Key points */}
{c.points.map((p) => ( {p} ))}
{/* CTA */}
詳しく見る
); } function Extensions() { return (
Extensions — 04.5

YuHouseが誇る2つの主力技術。それぞれの特長を知り、お客様に最適なご提案を。各ページで詳しくご紹介しています。

{EXT_CARDS.map((c) => )}
); } window.Extensions = Extensions;