:root{
	--ink:#202020;
	--soft:#5e5b57;
	--pale:#8b8580;
	--line:#eadfd2;
	--line2:rgba(223,206,184,.55);
	--orange:#f28a16;
	--deep:#d96f00;
	--cream:#fff1df;
	--shadow:0 18px 45px rgba(77,54,25,.08);
	--softshadow:0 10px 30px rgba(77,54,25,.06);
	--w:1180px;
	--font-heading:"Noto Serif JP","Yu Mincho","YuMincho","Hiragino Mincho ProN",serif;
	--font-body:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic",Meiryo,sans-serif;
	--serif:var(--font-heading);
	--sans:var(--font-body);
	/* 本文・セクションリードは同一サイズ（読みやすさ・SEOのため可変1系統） */
	--text-root:clamp(0.9375rem,0.88rem + 0.22vw,1rem);
	--text-sm:clamp(0.8125rem,0.76rem + 0.18vw,0.875rem);
	--text-xs:clamp(0.6875rem,0.64rem + 0.12vw,0.75rem);
	--text-lead:var(--text-root);
	--text-caption:clamp(0.6875rem,0.62rem + 0.15vw,0.75rem);
	--lh-body:1.75;
	--lh-prose:1.85;
	--lh-heading:1.45;
}
.ph-sub-svg--media.ph-sub-svg--tint-deep{display:block;width:44px;height:44px;max-width:100%;flex-shrink:0;background-color:var(--deep);-webkit-mask-image:var(--ph-icon-src);mask-image:var(--ph-icon-src);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}
*{box-sizing:border-box}
html{scroll-behavior:smooth;font-size:100%}
body{margin:0;color:var(--ink);font-family:var(--font-body);font-size:var(--text-root);line-height:var(--lh-body);background:#fff;-webkit-font-smoothing:antialiased;text-size-adjust:100%}
a{color:inherit;text-decoration:none}
.asset-img{display:block;width:100%;height:100%;object-fit:cover}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;clip-path:inset(50%)}
.subpage-prose,.subpage-prose p,.entry-content,.entry-content p{font-family:var(--font-body);font-size:var(--text-root);line-height:var(--lh-prose)}
.entry-content h2{font-family:var(--font-heading);font-size:clamp(1.0625rem,1rem + 0.22vw,1.1875rem);font-weight:600;margin:1.65em 0 .5em;line-height:var(--lh-heading);letter-spacing:.06em;color:var(--ink)}
.entry-content h2:first-child{margin-top:0}
/* 明朝：見出しのみ。本文・リード・UIラベルはゴシック（--font-body）を各所で指定 */
.title,.title--lg,.page-hero .title,h1.ph-fv__title,.concept__copy .title,.journal-feature h3,.journal-list__title,.strength-card h3,.service-card h3,.work-card h3,.process-card h3,.panel-card h2,.panel-card h3,.ph-sub-split__title,.ph-sub-message__title,.ph-sub-profile__title,.ph-sub-faq-split__title,.ph-sub-form-card__title,.ph-about-mock__title,.final-cta .title{font-family:var(--font-heading);line-height:var(--lh-heading)}
.lead,.section-heading .lead,.concept__copy .lead,.process__head .lead,.journal .section-heading .lead,.company__head .lead{font-family:var(--font-body);font-size:var(--text-root);line-height:var(--lh-prose);letter-spacing:.05em}
