#home { background:#fff; color:#222; padding-bottom:90px; }
#home p { line-height:1.75; }
.home-kicker { margin-bottom:10px; color:#b67855; font-size:12px; font-weight:700; letter-spacing:0; }
.home-visual { width:min(1280px, calc(100% - 40px)); margin:0 auto; padding:76px 0 64px; display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:56px; }
.home-visual-copy h1 { max-width:520px; font-size:54px; line-height:1.08; font-weight:700; letter-spacing:0; word-break:keep-all; }
.home-visual-copy p:last-child { max-width:460px; margin-top:18px; color:#666; font-size:17px; }
.home-visual-stage { min-height:430px; position:relative; overflow:hidden; background:#f5f1ec url('../img/solara-beautyshop_bg.png') center/cover no-repeat; border:1px solid #eadfd5; }
.home-visual-stage::before { content:""; position:absolute; inset:36px; border:1px solid rgba(182,120,85,.25); }
.home-shape { position:absolute; bottom:70px; background:#ddd0c3; border:1px solid #c8b7a8; box-shadow:0 18px 34px rgba(65,43,30,.12); }
.home-shape-tall { left:18%; width:82px; height:230px; border-radius:42px 42px 10px 10px; }
.home-shape-bottle { left:39%; width:118px; height:290px; border-radius:60px 60px 12px 12px; background:#efe2d4; }
.home-shape-jar { right:23%; width:150px; height:92px; border-radius:18px 18px 42px 42px; background:#e7d7c8; }
.home-shape-box { right:12%; width:118px; height:150px; border-radius:6px; background:#d7c5b6; transform:rotate(-6deg); }
.home-category { width:min(1280px, calc(100% - 40px)); margin:88px auto 0; }
.home-category-head { max-width:620px; margin:0 auto 30px; text-align:center; }
.home-category-head h2 { font-size:34px; line-height:1.2; font-weight:700; letter-spacing:0; }
.home-category-head p:last-child { margin-top:12px; color:#6d6d6d; font-size:16px; }
.home-card-row { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:22px; }
.home-card-row article, .home-mask-grid article { padding:16px; border:1px solid #eee6df; background:#fff; }
.home-card-row h3, .home-mask-grid h3, .home-product-list h3 { margin-top:16px; font-size:18px; font-weight:700; }
.home-card-row p, .home-mask-grid p, .home-product-list p { margin-top:7px; color:#686868; font-size:14px; }
.home-placeholder { height:230px; background:linear-gradient(135deg, #eee7df, #f8f8f8); border:1px solid #e5dbd2; overflow:hidden; }
.home-placeholder img { display:block; width:100%; height:100%; object-fit:cover; }
.home-category-cream { padding:56px; background:#f7f7f7; }
.home-split { display:grid; grid-template-columns:1.2fr .8fr; gap:38px; align-items:stretch; }
.home-product-list { display:flex; flex-direction:column; justify-content:center; gap:16px; }
.home-product-list article { padding:22px 0; border-top:1px solid #ddd; }
.home-product-list article:first-child { border-top:0; }
.home-product-list h3 { margin-top:0; }
.home-mask-grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:18px; }
@media (max-width:560px){
	#home { padding-bottom:56px; }
	.home-visual { width:calc(100% - 28px); padding:42px 0 30px; grid-template-columns:1fr; gap:28px; }
	.home-visual-copy h1 { font-size:38px; }
	.home-visual-copy p:last-child { font-size:15px; }
	.home-visual-stage { min-height:310px; }
	.home-shape { bottom:48px; }
	.home-shape-tall { left:11%; width:56px; height:160px; }
	.home-shape-bottle { left:34%; width:82px; height:210px; }
	.home-shape-jar { right:18%; width:104px; height:68px; }
	.home-shape-box { right:8%; width:78px; height:104px; }
	.home-category { width:calc(100% - 28px); margin-top:58px; }
	.home-category-head h2 { font-size:28px; }
	.home-card-row { grid-template-columns:1fr; }
	.home-category-cream { padding:34px 18px; }
	.home-split { grid-template-columns:1fr; gap:22px; }
	.home-mask-grid { grid-template-columns:1fr; }
}
