ゆびはり|鍼灸整骨院・体操倶楽部・デイサービスのWebサイトプレビュー

DESIGN REFERENCE

ゆびはり|鍼灸整骨院・体操倶楽部・デイサービス

生成りの背景と茶色の丸ゴシックに、変形フレームの写真と手描きイラストを組み合わせた地域医療・福祉サイト。3事業の色分けと、スマートフォンで大胆に組み替わる構図が特徴。

ジャンル
医療・ヘルスケア
元の業種
医療・福祉
デザイン分析日
2026/10/2

design.md

Yubihari — Style Reference

Bright care photography, small painted people, and generous warm-paper space.

Website: yubihari.com Original URL: https://yubihari.com/ Final URL: https://yubihari.com/ Theme: light; warm ivory canvas, brown typography, and three service accents. Inspected: October 2, 2026, 01:50 JST, from the supplied browser inspection recorded at 2026-10-01T16:50:46.051Z. Viewports: desktop 1440 × 1000 and mobile 390 × 844 CSS pixels. Scope: the current homepage: persistent header, introductory photo composition, care statement, three service cards, diary entries, Instagram section, and contact footer. Navigation markup and transition declarations were supplied; opened menus and destination pages were not visually inspected.

Yubihari is a local healthcare and activity-service homepage connecting an acupuncture and osteopathic clinic, a children's exercise club, and a walking-training day service. Its structure supports service discovery, local information, updates, and contact. The opening composition introduces those three services through people and spaces before the page presents conventional information blocks.

The strongest visual relationship is between irregular photographic silhouettes and quiet typography. Bright rooms and natural interactions occupy large, overlapping cutouts. Small watercolor-like figures sit around their edges, while brown rounded Japanese type rests on a nearly white ivory background. Below this expressive opening, three orderly white cards repeat the service identities in green, coral, and blue. Broad gaps between sections keep the page gentle despite its substantial content.

全文を表示閉じる

Yubihari — Style Reference

Bright care photography, small painted people, and generous warm-paper space.

Website: yubihari.com Original URL: https://yubihari.com/ Final URL: https://yubihari.com/ Theme: light; warm ivory canvas, brown typography, and three service accents. Inspected: October 2, 2026, 01:50 JST, from the supplied browser inspection recorded at 2026-10-01T16:50:46.051Z. Viewports: desktop 1440 × 1000 and mobile 390 × 844 CSS pixels. Scope: the current homepage: persistent header, introductory photo composition, care statement, three service cards, diary entries, Instagram section, and contact footer. Navigation markup and transition declarations were supplied; opened menus and destination pages were not visually inspected.

Yubihari is a local healthcare and activity-service homepage connecting an acupuncture and osteopathic clinic, a children's exercise club, and a walking-training day service. Its structure supports service discovery, local information, updates, and contact. The opening composition introduces those three services through people and spaces before the page presents conventional information blocks.

The strongest visual relationship is between irregular photographic silhouettes and quiet typography. Bright rooms and natural interactions occupy large, overlapping cutouts. Small watercolor-like figures sit around their edges, while brown rounded Japanese type rests on a nearly white ivory background. Below this expressive opening, three orderly white cards repeat the service identities in green, coral, and blue. Broad gaps between sections keep the page gentle despite its substantial content.

How to Read This Reference

  • Measured means a value appears in the supplied rendered DOM or computed-style evidence. Dimensions use CSS pixels.
  • Declared means a custom property or transition exists in the evidence; this does not establish that every component uses it.
  • Derived means arithmetic from measured bounds, such as the gap between adjacent cards.
  • Visual estimate means an approximation from the current-page screenshots. Estimated colors were not independently sampled.
  • Recommended means guidance for a new implementation. The Quick Start uses new class names, approximate masks, and proposed breakpoints; it is not the original stylesheet.
  • Computed font stacks identify requested families, not a verified font file for every glyph. Hidden navigation can have measurable bounds without being visible.
  • Desktop images cover the opening, service cards, and lower page. Mobile images cover the opening and lower page. DOM evidence supplies additional measurements for intervening sections.

Tokens — Colors

Main Palette
Name Value Source or reuse token Role and evidence
Warm Ivory #fcfaf6 Source --bg-color, --color-vista-white Measured HTML/body background; the main page canvas
Body Brown #665241 Source --base-text-color, --color-kabul Measured body copy, hero statement, and ordinary links
Heading Brown #6a513e Source --color-shingle-fawn Measured section headings, diary links, and footer text
Navigation Brown #644630 Source --color-spice Measured desktop primary navigation text
White #ffffff Source --color-white Measured service-card and footer backgrounds; white action labels
Taupe #957d6c Source --color-almond-frost Exact declared value; visually consistent with neutral pills and social circles, although their fill-bearing layers were not sampled
Pale Cream #fcf5e4 Source --color-old-lace Exact declared value; visually consistent with the Instagram panel, whose inner background element was not sampled
Fine Gray #ebebeb Source --line-color, --color-cararra Declared rule color; suitable for restrained separators, but individual border bindings were not supplied
Service Accents
Service Approximate value Reuse alias Visible application
Clinic #127868 --color-clinic Green detail pill and corresponding geometric emblem
Exercise club #e98b6d --color-exercise Coral detail pill and corresponding emblem
Day service #223e91 --color-day Deep blue detail pill and corresponding emblem

These three hexadecimal values are visual approximations, not recovered source variables. Replace them with verified artwork or stylesheet colors when those become available.

The palette has distinct responsibilities. Ivory separates the overall page from white cards; brown carries readable information; service colors identify destinations. The illustrations introduce brighter yellow, mint, pink, and turquoise in small areas. Those illustration colors should not become an unrestricted interface palette.

The desktop header has a measured background of rgba(252, 250, 246, 0.9). The initial mobile header is transparent. The mobile lower-page capture also shows artwork behind the persistent identity area. No backdrop blur was established.

Tokens — Typography

Rounded Japanese Body Text

The measured body stack is:

font-family: YakuHanJPs, TsukuARdGothicStd-R, 'Hiragino Sans',
  '游ゴシック', 'Yu Gothic', yugothic, 'San Francisco', meiryo,
  'Hiragino Kaku Gothic ProN', sans-serif;

Body text uses weight 300, generally 15px / 27.99px, with 0.375px tracking. Its light strokes, open spacing, and rounded forms are central to the page's calm character. The typography is not uniformly Mincho: a Mincho stack is declared, but the sampled hero copy, paragraphs, and headings use the rounded Gothic stack.

Navigation and Action Labels

Desktop primary navigation requests TsukuARdGothicStd-B, sans-serif at 14px, weight 700. Service action labels request FOT-筑紫A丸ゴシック Std B, while their reported CSS weight is 300. Preserve this distinction between the family name and the numeric weight; do not infer that the action labels use the same regular face as body copy.

The navigation's compact, stronger lettering anchors an otherwise light interface. Service labels are short and centered inside broad pills.

Latin Details

Dates request a stack beginning with Lato. Copyright requests Lato, sans-serif. Both use weight 300 and pronounced tracking. Latin details remain small supporting information rather than a second display typography system.

Brand and Service Lockups

The main wordmark consists of thin, handwritten-looking Japanese lettering with a tiny, widely spaced YUBIHARI line below it. Its measured box is 148 × 41px at both inspected viewport widths. The service cards repeat delicate brand/service lockups beside colored emblems.

The evidence does not identify the lettering's font or expose its asset format. Treat these lockups as artwork to preserve, rather than typesetting an assumed substitute font.

Type Scale
Role Desktop size / line height Mobile size / line height Weight Tracking
Body and service descriptions 15 / 27.99px 15 / 27.99px 300 0.375px
Hero statement 35.568 / 62.244px 17 / 29.75px 300 Normal
Care-statement heading 26 / 45.999px 20 / 40px 400 2.6px desktop; 1px mobile
Care-statement paragraph 17 / 45.999px 16 / 36px 300 0.85px desktop; 0.8px mobile
Diary section heading 26 / 45.999px 20 / 40px 400 2.6px desktop; 2px mobile
Diary introduction 15 / 27.99px 14 / 23.999px 300 0.375px
Diary date 13 / 13.26px Same 300 1.3px
Diary entry title 15 / 24px Same 400 0.375px
Service action label 15 / 15.3px 11 / 11.22px 300, bold-named family 0.375px
Follow/contact link text 15 / 15.3px 15 / 15.3px 300 1.125px
Footer name 24 / 24.48px 20 / 20.4px 400 0.375px
Footer service summary 13 / 19.5px Same 300 0.375px
Copyright 11 / 11.22px Same 300 1.1px

The root font size is measured at 16px. A declared --font-size-base: 12px does not equal the actual body size. Copy the measured component values rather than deriving every size from that variable.

Tokens — Spacing & Shapes

Density: spacious page sections, moderately padded cards, compact navigation. Geometry: irregular hero silhouettes, rectangular photos, 16px service-card corners, pill actions, and circular social links.

Spacing Measurements
Use Desktop Mobile Evidence
General section padding 32px each side 28px each side Measured
Service-card padding 45px 40px 0 37px 32px 0 Measured on the outer link
Gap between service surfaces 42px horizontally 60px vertically Derived from card bounds
Care heading to paragraph About 55.5px 45px Derived
Care section end to services About 225.5px 74px Derived
Service surfaces end to diary 172px 112px Derived; excludes protruding pill clearance
Diary end to social section 126px 90px Derived
Main bottom padding 200px 100px Measured
Footer bottom padding 50px 35px Measured

These gaps are not one uniform spacing scale. The opening and care statement have a slower rhythm than the information sections.

Layout Measurements
Element Desktop 1440 × 1000 Mobile 390 × 844
Initial header 120px high 80px high
Declared compact header height 80px 65px
Main wordmark 148 × 41px, at approximately 33, 38.5 148 × 41px, at 121, 39
Service group 1286px wide, beginning at x=77 334px wide, beginning at x=28
Individual service surface About 400.66 × 549.83px 334px wide; heights 457.61, 458.59, and 430.25px
Service text width About 320.66px 270px
Service action pill 240 × 63.30px 192 × 58px
Pill extension below service surface About 31.65px 29px
Diary link region 756px wide 278px wide
Diary date column 111px 111px
Instagram tiles Three 187 × 187px tiles Four approximately 140.22px square tiles
Follow pill 240 × 63.30px Same
Footer content width 1088px 334px
Contact link 240 × 63.30px 197 × 55.30px
Footer social circles 49px diameter 39px diameter
Document height 4244px, reported rounded 4747px, reported rounded

The mobile contact wrapper is measured at 240px, but its actual anchor is only 197px wide. Use the anchor measurement when reproducing the visible control.

Shape Rules

Service surfaces have a measured 16px radius. Their photos remain rectangular with square corners. Action labels have very large reported radii—1440px desktop and 844px mobile—which simply produce pills at their measured dimensions. A reusable implementation can use 999px.

The diary panel appears similarly rounded, but its radius was not directly sampled. Its approximately 16px treatment is a visual estimate. The social section uses a pale field with a rounded lower edge on desktop and a contained rounded panel on mobile.

Hero masks are custom compositions. The left silhouette combines slanted edges with rounded protrusions, the middle uses a broad arch above an angular base, and the right has a roof-like outline and an irregular lower extension. Replacing all three with identical rounded rectangles would remove the page's primary visual feature.

Components

Persistent Header

Role: identity and access to three services plus supporting information.

At desktop width, the wordmark sits near the left edge within a 120px header. Six primary destinations run across the right: three icon-and-label service links followed by About, Access, and Diary. Service icons are small, colorful geometric emblems, visually around 21–27px high. Primary labels use the stronger rounded face at 14px.

The DOM also contains clinic and day-service sublinks for concepts, facilities, fees, and other details. These use 12px bold-family text. Their presence does not prove a particular hover or click trigger; the supplied screenshots show the closed primary navigation state.

On mobile, the full desktop navigation disappears. The wordmark is centered and remains 148px wide. A three-line menu symbol sits at the right. The measured Open Navigation button is 28 × 28px at x=334, y=37 in the initial viewport.

The header remains visible in lower-page captures. Compact-height variables are present, and the logo sits higher in the scrolled mobile capture. Exact positioning rules and the scroll threshold were not supplied. The evidence supports a persistent header with compact states, without establishing whether its source uses fixed or sticky positioning.

A separate navigation structure contains a home link, the main destinations, contact, social links, and Close Navigation. Its open appearance, focus handling, and scrolling behavior remain unverified.

Introductory Photo Composition

Role: introduce the three services through real people, with the brand promise embedded in the composition.

The desktop composition begins below the initial 120px header. A treatment photograph occupies the left, a children's climbing-wall photograph sits lower in the center, and a walking-training photograph rises on the right. Their boundaries overlap spatially, with ivory gaps and cutouts keeping the composition open.

The three-line statement—身体、こころ、 / すこやかな毎日を / ゆびはりから。—sits in the lower-left negative space. Its measured desktop box begins at approximately x=52.7, y=712.4, and its type is 35.568px / 62.244px. It is a paragraph in the supplied DOM; the page's H1 wraps the brand artwork.

On mobile, the composition is deliberately rearranged. The treatment photo moves to the upper left, the statement occupies the upper right, the exercise photo fills the middle right, and the walking scene sits below on the left. The statement begins at approximately x=229.7, y=140.3, using 17px / 29.75px type.

The mobile capture shows an acupuncture close-up and a close view of climbing holds where the desktop capture shows wider scenes. This establishes different captured imagery, but not its cause: responsive asset selection and changes over time cannot be distinguished from these images alone.

Small painted figures connect the scenes: a family, climbing children, and a walking person. Keep them separate from the photographic masks so they can cross edges without being clipped.

A vertical Scroll link sits near the right edge beside a fine vertical line. Its destination is the observed #content anchor. Smooth scrolling or line animation was not verified.

Care Statement

Role: explain the shared philosophy behind the three services.

The section contains a two-line heading followed by an unusually airy paragraph. The desktop DOM records 26px / 46px heading text and 17px / 46px paragraph text. On mobile these become 20px / 40px and 16px / 36px respectively.

The content explains the progression from the clinic to the exercise club and walking-focused day service, emphasizing personal support. Keep this as readable prose with deliberate line breaks and space around it.

The mobile opening capture shows a centered heading near the bottom of the viewport. Desktop alignment for this section is not independently visible in the supplied current-page screenshots; the centered desktop treatment in the Quick Start is a recommendation. The DOM does establish its generous spacing and full available content box.

Service Card

Role: a complete linked introduction to one service.

Each desktop card is a white, rounded surface approximately 401px wide and 550px tall. The anatomy is:

  1. A delicate service lockup at the upper left and a geometric colored emblem at the upper right.
  2. A bright landscape photograph beneath a generous gap.
  3. A short brown paragraph, generally three desktop lines.
  4. A centered service-colored さらに詳しく pill overlapping the bottom edge.

The visible photo is approximately 321 × 186px, a visual estimate from the desktop service capture. Its crop is close to a 1.73:1 landscape ratio. The source image dimensions were not supplied.

The outer card is an anchor to /shinkyu/, /taisou/, or /dayservice/. The pill label is a paragraph inside that anchor, not a nested button. Preserve one interactive target per card in a new implementation.

At mobile width, the cards stack in the same order. They measure 334px across, with 32px inner side padding and 270px text width. Description text stays at 15px; the first two descriptions occupy four lines, while the last occupies three. Card heights therefore differ. Do not force equal mobile heights.

The pill overlaps the desktop surface by half its 63.3px height and the mobile surface by half its 58px height. The outer surface must allow visible overflow.

Pill Action

Role: a calm, recognizable destination cue.

Pills use centered white text with a thin right-pointing arrow near the right edge. They have broad horizontal breathing room, no visible outline, and no elevated shadow. Service pills use green, coral, or blue; contact and Follow actions use taupe.

The Follow pill retains its 240px width on mobile. Service pills shrink to 192px, while the mobile contact anchor becomes 197px. A single universal mobile button width would miss these distinctions.

The sampled label nodes often report a transparent background even though the screenshots show solid pills. Their visual fill belongs to an unsampled surrounding or decorative layer. Reproduce the visible fill without claiming a specific pseudo-element implementation.

Diary Panel and Entry Row

Role: publish current notices within the broader service homepage.

A large white rounded panel follows the service cards. Its heading, ゆびはり日誌, is centered. The desktop capture shows a small illustration of two seated people overlapping its upper-right area.

The desktop heading begins approximately 43px below the panel top. The supporting paragraph uses 15px / 28px type. The entry list is narrower than the panel: 756px, centered at x=342.

Each entry is an anchor laid out with a 111px date column and a flexible title column. Dates use tracked Lato at 13px; titles use rounded Japanese text at 15px / 24px. Sampled rows have 33px vertical padding and measured heights of 81px when the title stays on one line.

On mobile, the inner region is 278px wide, with a 111px + 167px grid. The date remains beside the title. The first measured title wraps and increases its row to 105px. Preserve wrapping instead of truncating notices or automatically converting every row into a stacked date/title block.

The supplied entries concern fees and holiday schedules. Their dates are content, not the website inspection date.

Instagram Health-Tips Section

Role: connect the clinic's educational illustration content with its social account.

Desktop composition is asymmetric. A pale cream field extends to the left viewport edge; explanatory copy and three square tiles sit inside it. A narrow title area appears to the right, with vertically arranged Japanese lettering and small character artwork. Official Instagram is present in the desktop rendered text.

The paragraph is measured at 670px wide, starting at x=177. Three 187px square tiles begin at x=177, 416, and 655, giving derived horizontal gaps of 52px. The taupe Follow pill aligns with the first tile and overlaps the lower panel boundary.

On mobile, the section becomes a contained 334px panel with 22px internal side insets, producing a 290px content region. Its heading is above the copy. Four approximately 140px square tiles form a two-by-two grid with roughly 9.5px gutters. A fourth post link is present in the mobile DOM and screenshot; it is not simply the desktop three-tile row stacked vertically.

The Follow pill is centered at x=75, remains 240 × 63.3px, and extends below the cream surface. Mobile copy uses 14px / 24px text.

Role: provide a stable local identity, location link, contact route, and social links.

The footer changes the canvas to pure white. Desktop content is constrained to 1088px, beginning at x=176. The organization name, service summary, linked postal address, and contact pill occupy the left. The lower row places copyright at the left and two taupe social circles at the right.

The page displays ゆびはり and the address 610-1123 京都市西京区大原野上里南ノ町165. The address links to a map destination; no embedded map appears in the inspected footer.

Desktop social circles are 49px with a 20px gap. Mobile circles are 39px with a 25px gap. On mobile they move beneath the contact control and above copyright, all left aligned. The address breaks after the postal code.

Retain the broad empty area to the right on desktop and the deliberate vertical spacing on mobile. This footer is a quiet contact block rather than a dense sitemap.

Tokens — Motion & Interaction

The following are computed transition declarations, not complete recordings of their triggers or visual endpoints.

Element Supplied declaration What can be concluded
Header opacity 0.6s ease-out, background 0.3s ease-out Header opacity and background can transition
Main wordmark wrapper transform 0.25s ease-out A transform transition is defined; exact transform values are unavailable
Ordinary links color 0.2s ease-out Short color feedback is declared
Desktop service sublinks opacity 0.3s ease-out Opacity feedback is defined; opening trigger is unverified
Hero statement and several section text blocks opacity 1s cubic-bezier(0.69, 0, 0.33, 1) A slow text-opacity transition is available
Diary and social post links opacity 0.2s ease-out Short opacity feedback is available
Open-navigation control transform 0.25s ease-out, opacity 0.25s ease-out Compact control transitions are declared
Close-navigation control opacity 0.5s ease-out A longer opacity transition is defined
Navigation entries opacity 0.5s ease-out, plus a zero-duration transform reset delayed 0.6s A staged navigation sequence is suggested by CSS, but its open state was not exercised
Navigation wordmark opacity 0.5s ease-out 0.6s A delayed opacity transition is declared

Sampled nodes report animation: none. This does not rule out animation on omitted wrappers, images, pseudo-elements, or JavaScript-driven properties. Conversely, declared easing variables and Swiper-related variables do not prove a hero carousel.

The capture process waited for document load, image decoding, layout stability, and eligible finite motion, with bounded timeouts. Perpetual animations were temporarily paused during readiness checks. These are settled views, not evidence of every opening sequence or delayed state.

Observed link destinations establish service navigation, diary articles, contact, map access, Instagram posts, and LINE. Hover endpoints, menu opening, smooth-scroll behavior, autoplay, parallax, and image-change timing remain unverified.

For a new implementation, use restrained opacity feedback and preserve content visibility when motion is disabled. Any added arrow movement or scroll reveal should be labeled as an adaptation.

Surfaces

Layer Appearance Purpose
Page canvas Solid #fcfaf6 Connects all sections and softens the photography
Desktop header Ivory at measured 0.9 alpha Maintains navigation over the page
Mobile header Transparent in the initial measured state Allows the composition to extend behind the identity area
Service surfaces White, 16px corners Organizes the three destinations
Diary panel White, visibly rounded Separates notices from the surrounding canvas
Social field Pale cream, asymmetric desktop extent Gives the illustrated health tips a distinct area
Footer Solid white Creates a quiet, practical ending
Action fills Service accents or taupe Identifies destinations without adding elevation

There is no visible general-purpose shadow system. Hierarchy comes from spacing, silhouette, typography, and the small difference between white and ivory.

Imagery

Photography is bright and natural, with white rooms, pale flooring, neutral clothing, and soft daylight. The scenes communicate specific activities: treatment, children learning movement, and supported walking. Preserve the interaction between people and equipment; a crop that removes the therapist's hands, climbing action, or walking frame weakens the service explanation.

The opening uses custom cutouts, while service cards use simple landscape rectangles. The same content world is therefore introduced expressively and then repeated in a more legible informational format.

Decorative people have thin, uneven contours and translucent painted fills. Bright clothing supplies small flashes of yellow, orange, green, and turquoise. They remain small relative to the photographs. Service emblems use a different language: compact, flat geometric shapes in each service color. Keep these two illustration systems distinct.

The health-tip tiles contain sparse hand-drawn linework, muted gray lettering, and pale pink accents. The cat and hedgehog characters appear in the section artwork and posts. These drawings should remain quiet enough to fit the surrounding warm canvas.

Observed Asset References

Image source URLs and original mask files were not included in the supplied evidence. This inventory identifies visible assets without inventing filenames.

Asset group Visible reference Implementation guidance
Main wordmark Thin Japanese lettering above tracked YUBIHARI Preserve authorized artwork and its approximately 148:41 displayed ratio
Three service emblems Green, coral, and blue geometric symbols Reuse the same identities in navigation and cards
Hero photography Treatment, climbing, and walking scenes Supply independently art-directed crops for the custom masks
Service photography Bright landscape scenes in the three white cards Keep rectangular crops and consistent displayed proportions
Decorative people Family, walkers, climbers, seated figures Use transparent assets outside photo clipping layers
Health-tip artwork Illustrated square posts and small characters Preserve square composition and embedded lettering

Use original assets only when authorized. The Quick Start's asset names are proposed local project files, not observed website paths.

Layout & Responsive Behavior

Relationship Desktop observation Mobile observation
Header Left-aligned logo and six visible primary links Centered logo and right-side menu control
Hero composition Three broad overlapping scenes across the viewport Staggered vertical composition with alternating image positions
Hero copy Large, lower left Smaller, upper right
Care statement Measured 26px heading and 17px paragraph 20px heading and 16px paragraph
Services Three equal-height surfaces in one row One column with content-dependent heights
Diary rows 111px date plus wide title Same date width; narrower title wraps
Social tiles Three items in one row Four items in a two-by-two grid
Social title Separate right-hand title area Heading above copy inside the panel
Footer Wide left contact block; social links at lower right Contact, social links, and copyright stacked at the left

The inspected page uses declared content widths of 720, 752, 904, 1088, 1286, and 1366px. Measured components do not always equal the nearest named token: the diary link region is 756px, for example.

The declared base grid changes from twelve columns with a 16px gap to eight columns with an 8px gap. This is supporting layout infrastructure, not proof that every visible section directly uses that grid.

Only the two supplied viewport widths were inspected. Actual breakpoints, tablet behavior, landscape-phone layouts, maximum hero scaling, and text-zoom behavior are unknown. The Quick Start introduces separate proposed breakpoints for header collapse and content stacking so intermediate widths do not depend on uniform scaling.

Do’s and Don’ts

Do
  • Begin with ivory #fcfaf6, brown body text, and white information surfaces.
  • Preserve the three distinct service accents and repeat them consistently in emblems and actions.
  • Give the hero three different photographic silhouettes with purposeful negative space.
  • Art-direct mobile composition independently, including the statement's move to the upper right.
  • Keep body text light, rounded, and generously led.
  • Preserve the whole-card service links and half-overlapping action pills.
  • Let mobile card heights follow their descriptions.
  • Keep diary dates beside titles at the inspected mobile width.
  • Use small painted people as edge details and transitions between sections.
  • Preserve the footer's simple location, contact, and social structure.
Don’t
  • Replace the opening with a single rectangular banner and a centered oversized headline.
  • Turn every photograph into the same generic blob or rounded card.
  • Apply a clinical blue theme across all services.
  • Replace rounded Japanese text with a heavy geometric sans-serif throughout.
  • Infer a display font from the illustrated wordmark.
  • Add glossy gradients, glass panels, or a universal drop shadow.
  • Make the pill a nested button inside the linked service card.
  • Assume the desktop social section contains the same number of tiles as mobile.
  • Treat transparent sampled label backgrounds as evidence that the visible pills are unfilled.
  • Invent a carousel, parallax sequence, or menu animation from static captures and unused variables.

These are improvements for a new implementation, not verified features of the original page:

  • Give the image-based identity an accessible name. Use empty alternatives for decorative people and concise descriptive alternatives for meaningful service photos.
  • Keep one anchor per service card and provide a visible focus outline around the entire card, including its relationship to the protruding pill.
  • Expand the 28px menu-control hit area and 39px mobile social targets to at least 44px without necessarily enlarging their visible artwork.
  • Verify white-label contrast on coral and taupe. Darken fills or adjust label color where needed; keep the original visual estimates separate from accessibility-adjusted tokens.
  • Consider increasing the measured 11px mobile service-action label to 13–15px for readability.
  • Implement menu state, keyboard access, focus restoration, and background scroll behavior explicitly. The supplied DOM labels do not establish that these behaviors already work.
  • Preserve visible content without JavaScript and under reduced-motion preferences. Avoid a permanently transparent initial state for reveal effects.
  • Use intrinsic image dimensions and art-directed image sources to prevent layout movement while preserving faces, hands, and equipment inside masks.

Agent Prompt Guide

Quick Color Reference
  • Canvas: #fcfaf6.
  • Main copy: #665241.
  • Headings and footer: #6a513e.
  • Primary navigation: #644630.
  • Information surfaces: #ffffff.
  • Neutral-action starting point: declared taupe #957d6c.
  • Social-panel starting point: declared pale cream #fcf5e4.
  • Approximate service accents: green #127868, coral #e98b6d, blue #223e91.
  • Avoid shadows as the main separator; use whitespace and white-on-ivory surface changes.
Overall Prompt

“Create a Japanese local healthcare homepage with three equal service identities: a clinic, a children's exercise club, and a walking-training day service. Use warm ivory, light brown rounded Japanese typography, bright natural photography, and small watercolor-like people. Compose three large photographs inside different irregular masks across the desktop opening, with a quiet three-line statement in the lower-left negative space. Recompose the opening vertically on mobile, placing the statement at the upper right. Follow with spacious explanatory prose, three white rounded service cards with colored pills overlapping their lower edges, a restrained diary panel, an illustrated social section, and a simple white contact footer. Preserve generous whitespace and avoid decorative elevation.”

Example Component Prompts
  1. Opening composition: “Build three overlapping photographic cutouts: a slanted treatment frame with rounded protrusions at left, an arched climbing-wall frame in the lower center, and a roof-like walking-training frame at right. Keep the page ivory visible between shapes. Place small painted figures outside the clipping layers and a vertical Scroll cue at the right.”
  2. Service card: “Create a white service-card anchor with a 16px radius, a delicate service lockup, a geometric colored emblem, a square-cornered landscape photo, and 15px brown text with 28px line height. Center a 240px colored detail pill halfway across the bottom edge. Stack the cards on mobile and reduce the pill to 192px.”
  3. Diary: “Create a white rounded information panel with a centered, lightly tracked Japanese heading. Put dated notices in a narrow list. Use a fixed 111px date column with small tracked Latin numerals and a flexible Japanese title column that wraps naturally on mobile.”
  4. Health tips: “Use a pale cream desktop field bleeding to the left edge, with three square illustrated posts and a separate narrow title area on the right. On mobile use an inset rounded panel, heading above copy, four posts in a two-by-two grid, and a centered taupe Follow pill overlapping the bottom.”
  5. Footer: “Build a quiet white footer with the organization name, small service summary, linked postal address, and taupe contact pill. Use a 1088px desktop container. Keep social circles at the lower right on desktop and move them below contact, above copyright, on mobile.”

Quick Start

CSS Custom Properties

This is a reusable adaptation with a conventional 16px root. Exact observed colors and dimensions are mixed with explicitly approximate service colors and hero geometry. The 78rem header breakpoint and 48rem content breakpoint are recommendations, not recovered source rules. Header compaction and menu opening require application logic.

:root {
  /* Observed colors and declared source palette */
  --color-paper: #fcfaf6;
  --color-surface: #fff;
  --color-ink: #665241;
  --color-heading: #6a513e;
  --color-navigation: #644630;
  --color-taupe: #957d6c;
  --color-cream: #fcf5e4;
  --color-rule: #ebebeb;

  /* Visual approximations; verify against authorized assets */
  --color-clinic: #127868;
  --color-exercise: #e98b6d;
  --color-day: #223e91;

  --font-body: 'YakuHanJPs', 'TsukuARdGothicStd-R',
    'Hiragino Sans', 'Yu Gothic', meiryo, sans-serif;
  --font-strong: 'TsukuARdGothicStd-B', 'Hiragino Sans', sans-serif;
  --font-latin: 'Lato', sans-serif;

  --page-gutter: 32px;
  --content-wide: 1286px;
  --content-footer: 1088px;
  --header-height: 120px;
  --header-compact: 80px;
  --radius-panel: 16px;
  --radius-pill: 999px;
  --service-gap: 42px;
  --ease-reveal: cubic-bezier(0.69, 0, 0.33, 1);
}

* { box-sizing: border-box; }
html { font-size: 16px; }
body {
  margin: 0;
  color: var(--color-ink);
  background: var(--color-paper);
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.866;
  letter-spacing: 0.025em;
}
img { display: block; max-width: 100%; }
a { color: inherit; }
button { font: inherit; }
h1, h2, h3, p { margin: 0; }

.page-width {
  width: min(var(--content-wide), calc(100% - 2 * var(--page-gutter)));
  margin-inline: auto;
}
.site-main {
  padding-top: var(--header-height);
  padding-bottom: 200px;
}
#content { scroll-margin-top: calc(var(--header-compact) + 24px); }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
  padding-inline: var(--page-gutter);
  background: rgb(252 250 246 / 90%);
  transition: opacity 600ms ease-out, background 300ms ease-out;
}
.site-header[data-compact='true'] { height: var(--header-compact); }
.site-brand img { width: 148px; height: 41px; object-fit: contain; }
.primary-nav { display: flex; align-items: center; gap: 38px; }
.primary-nav a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--color-navigation);
  font-family: var(--font-strong);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.02;
  text-decoration: none;
}
.primary-nav img { width: 24px; max-height: 27px; object-fit: contain; }
.nav-toggle { display: none; }

/* Recommended silhouette placement, approximated from captures */
.hero {
  position: relative;
  height: min(64.74vw, 1040px);
  overflow: hidden;
}
.hero__scene { position: absolute; margin: 0; }
.hero__scene img { width: 100%; height: 100%; object-fit: cover; }
.hero__scene--clinic {
  left: -2%; top: 0; width: 36%; height: 65%;
  clip-path: url(#clinic-cutout);
}
.hero__scene--exercise {
  left: 24.2%; top: 25%; width: 40.7%; height: 57.7%;
  clip-path: url(#exercise-cutout);
}
.hero__scene--day {
  left: 60.4%; top: 0; width: 43%; height: 71.2%;
  clip-path: url(#day-cutout);
}
.hero__copy {
  position: absolute;
  left: 3.66%; top: 63.5%;
  z-index: 2;
  font-size: clamp(22px, 2.47vw, 40px);
  line-height: 1.75;
  letter-spacing: normal;
}
.hero__decoration { position: absolute; z-index: 3; pointer-events: none; }
.hero__decoration--family { left: 28.8%; top: 14.4%; width: 8.5%; }
.hero__decoration--climbers { left: 59.7%; top: 64.2%; width: 15%; }
.hero__decoration--walker { left: 91%; top: 9%; width: 6%; }
.hero__scroll {
  position: absolute;
  right: 26px; top: 77.5%;
  font-size: 11px;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
  text-decoration: none;
}
.hero__scroll::after {
  content: '';
  position: absolute;
  top: 0; right: -8px;
  height: 80px;
  border-right: 1px solid currentColor;
}

/* Centered desktop prose is an adaptation; alignment was not sampled. */
.intro {
  width: min(1366px, calc(100% - 2 * var(--page-gutter)));
  margin-inline: auto;
  text-align: center;
}
.section-heading {
  color: var(--color-heading);
  font-size: 26px;
  font-weight: 400;
  line-height: 1.7692;
  letter-spacing: 0.1em;
}
.intro__copy {
  margin-top: 55.5px;
  font-size: 17px;
  line-height: 46px;
  letter-spacing: 0.05em;
}

.service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--service-gap);
  margin-top: 225px;
}
.service-card {
  --service-color: var(--color-clinic);
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 550px;
  padding: 45px 40px 80px;
  background: var(--color-surface);
  border-radius: var(--radius-panel);
  text-decoration: none;
}
.service-card--exercise { --service-color: var(--color-exercise); }
.service-card--day { --service-color: var(--color-day); }
.service-card__identity {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  min-height: 72px;
}
.service-card__lockup { width: 148px; max-width: 65%; }
.service-card__emblem { width: 68px; max-width: 25%; }
.service-card__photo {
  width: 100%;
  aspect-ratio: 1.73;
  margin-top: 45px;
  object-fit: cover;
}
.service-card__description { margin-top: 18px; }
.pill {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 240px;
  max-width: 100%;
  min-height: 63.3px;
  padding: 18px 42px;
  border-radius: var(--radius-pill);
  color: #fff;
  background: var(--color-taupe);
  font-size: 15px;
  line-height: 1.02;
  letter-spacing: 0.075em;
  text-decoration: none;
}
.pill::after {
  content: '→';
  position: absolute;
  right: 18px;
  font-family: sans-serif;
  font-size: 22px;
  font-weight: 300;
}
.service-card__action {
  position: absolute;
  left: 50%; bottom: -31.65px;
  transform: translateX(-50%);
  background: var(--service-color);
  font-family: var(--font-strong);
  letter-spacing: 0.025em;
}

.diary {
  margin-top: 172px;
  padding: 43px 32px 50px;
  border-radius: var(--radius-panel);
  background: var(--color-surface);
}
.diary > .section-heading, .diary__intro { text-align: center; }
.diary__intro { margin-top: 32px; }
.diary__list { width: min(756px, 100%); margin: 71px auto 0; }
.diary__row {
  display: grid;
  grid-template-columns: 111px minmax(0, 1fr);
  padding-block: 33px;
  color: var(--color-heading);
  text-decoration: none;
  transition: opacity 200ms ease-out;
}
/* Recommended subtle separator; the source border was not sampled. */
.diary__row + .diary__row { border-top: 1px solid var(--color-rule); }
.diary__date {
  padding-top: 1.3px;
  font-family: var(--font-latin);
  font-size: 13px;
  line-height: 1.02;
  letter-spacing: 0.1em;
}
.diary__title { font-size: 15px; font-weight: 400; line-height: 24px; }

.social {
  display: grid;
  grid-template-areas: 'content title';
  grid-template-columns: minmax(0, 1fr) 316px;
  gap: 40px;
  margin-top: 126px;
}
.social__title { grid-area: title; color: var(--color-heading); }
.social__vertical-label { writing-mode: vertical-rl; font-size: 26px; }
.social__content {
  grid-area: content;
  position: relative;
  isolation: isolate;
  padding: 50px 100px 85px;
}
.social__content::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  left: min(0px, calc((1286px - 100vw) / 2));
  border-radius: 0 0 16px 0;
  background: var(--color-cream);
}
.social__copy { max-width: 670px; }
.social__tiles {
  display: grid;
  grid-template-columns: repeat(3, 187px);
  gap: 52px;
  margin-top: 49px;
}
.social__tile img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.social__tile:nth-child(n + 4) { display: none; }
.social__follow { position: absolute; left: 100px; bottom: -31.65px; }

.site-footer {
  padding: 55px 0 50px;
  color: var(--color-heading);
  background: var(--color-surface);
}
.footer-inner {
  width: min(var(--content-footer), calc(100% - 2 * var(--page-gutter)));
  margin-inline: auto;
}
.footer-name { font-size: 24px; font-weight: 400; line-height: 1.02; }
.footer-services { margin-top: 13px; font-size: 13px; line-height: 1.5; }
.footer-address { margin-top: 24px; font-style: normal; }
.footer-address a { text-decoration: none; }
.footer-contact { margin-top: 36px; }
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 61px;
}
.footer-copyright {
  font-family: var(--font-latin);
  font-size: 11px;
  line-height: 1.02;
  letter-spacing: 0.1em;
}
.footer-socials { display: flex; gap: 20px; }
.footer-socials a {
  display: grid;
  place-items: center;
  width: 49px;
  height: 49px;
  border-radius: 50%;
  color: #fff;
  background: var(--color-taupe);
  text-decoration: none;
}

/* Proposed intermediate layout, not an observed source breakpoint */
@media (max-width: 78rem) {
  :root { --header-height: 80px; --header-compact: 65px; }
  .site-header { background: transparent; }
  .site-brand { position: absolute; left: 50%; top: 39px; transform: translateX(-50%); }
  .site-header[data-compact='true'] .site-brand { top: 25px; }
  .primary-nav { display: none; }
  .nav-toggle {
    position: absolute;
    right: calc(var(--page-gutter) - 8px);
    top: 29px;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 8px;
    border: 0;
    color: inherit;
    background: transparent;
  }
  .social { grid-template-columns: minmax(0, 1fr) 180px; }
  .social__content { padding-inline: 40px; }
  .social__tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .social__follow { left: 40px; }
}

@media (max-width: 48rem) {
  :root { --page-gutter: 28px; }
  .site-main { padding-bottom: 100px; }
  .hero { height: 179vw; }
  .hero__scene--clinic { left: -4%; top: 0; width: 58%; height: 37.4%; }
  .hero__scene--exercise { left: 31%; top: 22.7%; width: 66%; height: 35%; }
  .hero__scene--day { left: 5.4%; top: 45.4%; width: 68%; height: 38.5%; }
  .hero__copy { left: 58.9%; top: 8.65%; font-size: 17px; line-height: 1.75; }
  .hero__decoration--family { left: 3%; top: 23.5%; width: 15%; }
  .hero__decoration--climbers { left: auto; right: 3%; top: 52%; width: 28%; }
  .hero__decoration--walker { left: 4%; top: 64.5%; width: 15%; }
  .hero__scroll { right: 16px; top: 75.9%; }
  .section-heading { font-size: 20px; line-height: 40px; }
  .intro .section-heading { letter-spacing: 0.05em; }
  .intro__copy { margin-top: 45px; font-size: 16px; line-height: 36px; text-align: left; }
  .service-grid { grid-template-columns: 1fr; gap: 60px; margin-top: 74px; }
  .service-card { min-height: 0; padding: 37px 32px 46px; }
  .service-card__identity { min-height: 60px; }
  .service-card__photo { margin-top: 29px; }
  .service-card__action { width: 192px; min-height: 58px; bottom: -29px; font-size: 11px; }
  .diary { margin-top: 112px; padding: 27px 28px 36px; }
  .diary__intro { margin-top: 19px; font-size: 14px; line-height: 24px; }
  .diary__list { margin-top: 36px; }
  .social {
    display: block;
    margin-top: 90px;
    border-radius: 16px;
    background: var(--color-cream);
  }
  .social__title { padding: 28px 22px 0; }
  .social__vertical-label { writing-mode: horizontal-tb; font-size: 20px; }
  .social__content { padding: 21px 22px 74px; }
  .social__content::before { display: none; }
  .social__copy { font-size: 14px; line-height: 24px; }
  .social__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9.5px; margin-top: 35px; }
  .social__tile:nth-child(4) { display: block; }
  .social__follow { left: 50%; transform: translateX(-50%); }
  .site-footer { padding-block: 39px 35px; }
  .footer-name { font-size: 20px; }
  .footer-address { line-height: 24px; }
  .footer-contact { width: 197px; min-height: 55.3px; }
  .footer-bottom { flex-direction: column-reverse; align-items: flex-start; gap: 35px; margin-top: 64px; }
  .footer-socials { gap: 25px; }
  .footer-socials a { width: 39px; height: 39px; }
}

/* Recommended interaction additions, not verified source states */
:where(a, button):focus-visible {
  outline: 2px solid var(--color-ink);
  outline-offset: 5px;
}
@media (hover: hover) {
  .diary__row:hover, .social__tile:hover { opacity: 0.75; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header, .diary__row { transition: none; }
}

The service card's extra bottom padding in this adaptation accommodates its absolute-positioned pill. It differs from the source outer link's measured padding-bottom: 0. Diary rows are allowed to grow naturally with line boxes rather than being forced to the measured desktop row height.

Markup Contract and Approximate Masks

Place the definitions once in the document. These normalized SVG paths are recommended approximations with rounded and angular sections, not extracted original masks. All image paths below are example local assets that must be supplied by the implementer.

<svg width='0' height='0' aria-hidden='true' focusable='false'
     style='position:absolute'>
  <defs>
    <clipPath id='clinic-cutout' clipPathUnits='objectBoundingBox'>
      <path d='M0 .05 L.20 .08 C.27 -.03 .57 -.02 .58 .13
               L1 .19 L.93 .78 L.73 .79
               C.78 1 .40 1.05 .31 .86 L0 .88 Z'/>
    </clipPath>
    <clipPath id='exercise-cutout' clipPathUnits='objectBoundingBox'>
      <path d='M.18 .20 C.20 -.05 .89 -.08 .95 .20
               L1 .55 L.82 .94 L.59 .87 L.18 1
               L.04 .66 L.12 .59 Z'/>
    </clipPath>
    <clipPath id='day-cutout' clipPathUnits='objectBoundingBox'>
      <path d='M.30 0 L1 .38 L1 .80 L.84 .78
               L.76 1 L.44 .99 L.53 .76 L.02 .71 L0 .33 Z'/>
    </clipPath>
  </defs>
</svg>

<section class='hero' aria-label='Yubihari services'>
  <figure class='hero__scene hero__scene--clinic'>
    <picture>
      <source media='(max-width: 48rem)' srcset='/assets/clinic-mobile.webp'>
      <img src='/assets/clinic-desktop.webp'
           alt='A practitioner treating a patient' fetchpriority='high'>
    </picture>
  </figure>
  <figure class='hero__scene hero__scene--exercise'>
    <img src='/assets/exercise.webp' alt='Children practicing on a climbing wall'>
  </figure>
  <figure class='hero__scene hero__scene--day'>
    <img src='/assets/walking.webp' alt='A staff member supporting walking practice'>
  </figure>
  <p class='hero__copy'>身体、こころ、<br>すこやかな毎日を<br>ゆびはりから。</p>
  <img class='hero__decoration hero__decoration--family'
       src='/assets/painted-family.webp' alt=''>
  <a class='hero__scroll' href='#content'>Scroll</a>
</section>

<a class='service-card' href='/shinkyu/'>
  <div class='service-card__identity'>
    <img class='service-card__lockup' src='/assets/clinic-lockup.svg'
         alt='ゆびはり鍼灸整骨院'>
    <img class='service-card__emblem' src='/assets/clinic-emblem.svg' alt=''>
  </div>
  <img class='service-card__photo' src='/assets/clinic-card.webp'
       alt='' loading='lazy'>
  <p class='service-card__description'>身体の“今ツラい”部分を緩和するだけではなく、いつも快適な状態へ。私たちの想いや処置についてお話しします。</p>
  <span class='pill service-card__action'>さらに詳しく</span>
</a>

Add explicit intrinsic image dimensions when preparing actual files. Apply equivalent mobile art direction to the exercise image when appropriate. The proposed <picture> mechanism is implementation guidance; the original image-switching mechanism was not exposed.

Tailwind v4 Token Mapping

Optional aliases for a project already using Tailwind v4. This is not evidence that the original website uses Tailwind. Define the properties above first.

@theme inline {
  --color-paper: #fcfaf6;
  --color-surface: #fff;
  --color-ink: #665241;
  --color-heading: #6a513e;
  --color-taupe: #957d6c;
  --color-cream: #fcf5e4;
  --color-clinic: #127868;
  --color-exercise: #e98b6d;
  --color-day: #223e91;
  --font-care: var(--font-body);
  --font-care-strong: var(--font-strong);
  --font-numerals: var(--font-latin);
  --text-body: 15px;
  --text-section: 26px;
  --text-date: 13px;
  --radius-panel: 16px;
  --radius-pill: 999px;
  --spacing-page: var(--page-gutter);
}

Sources & Evidence

  • Yubihari homepage: both the requested original URL and the final URL; supplied HTTP status 200.
  • Capture timestamp: 2026-10-01T16:50:46.051Z, equivalent to October 2, 2026, 01:50 JST.
  • Desktop evidence: 1440 × 1000 CSS-pixel viewport; three supplied current-page screenshots covering the opening, services, and lower page; rendered document height approximately 4244px.
  • Mobile evidence: 390 × 844 CSS-pixel viewport; two supplied current-page screenshots covering the opening and lower page; rendered document height approximately 4747px.
  • Rendered DOM and computed styles: element bounds, text, link destinations, font stacks, colors, padding, grid columns, radii, transitions, and custom properties at both widths. Offscreen sections have DOM measurements even where a current-page screenshot does not show their full appearance.
  • Observed state coverage: settled initial views and supplied scrolled captures. Persistent header placement and responsive composition are visible; menu activation, link destination rendering, hover endpoints, and temporal hero behavior were not tested in the supplied interaction record.
  • Inspection limitations: readiness waits were bounded; delayed content and unexercised states may remain. SharedWorkers and service workers were disabled during capture. Original image URLs, exact mask paths, full selector rules, and font-file resolution were not supplied.

This reference describes the current homepage represented by that evidence. Source measurements, visual approximations, and recommended implementation choices are identified separately throughout.

← デザイン一覧に戻る