#home { background:#fff; color:#181818; padding:68px 0 90px; }
#home section { width:min(1180px, calc(100% - 40px)); margin:0 auto; }
#home p { line-height:1.7; word-break:keep-all; }
.home-kicker { margin:0 0 12px; font-size:12px; font-weight:800; color:#d74b38; text-transform:uppercase; letter-spacing:0; }
.home-section-head { max-width:620px; margin:0 auto 28px; text-align:center; }
.home-section-head h2 { margin:0; font-size:34px; line-height:1.25; letter-spacing:0; }
.home-section-head p:last-child { margin:12px 0 0; color:#666; }
.home-visual { position:relative; min-height:560px; display:flex; align-items:center; justify-content:center; overflow:hidden; text-align:center; background:url("../img/flowersforyousault_bg.png") center / cover no-repeat; }
.home-visual::before { content:""; position:absolute; inset:0; background:rgba(0,0,0,.28); }
.home-visual__text { position:relative; z-index:1; max-width:720px; padding:40px 20px; color:#fff; }
.home-visual__text .home-kicker { color:#fff; }
.home-visual__text h1 { margin:0; font-size:54px; line-height:1.12; letter-spacing:0; word-break:keep-all; }
.home-visual__text p:last-child { max-width:560px; margin:22px auto 0; color:rgba(255,255,255,.9); font-size:17px; }
.home-design { padding-top:82px; }
.home-design__grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; }
.home-design__grid article { padding:16px; border:1px solid #e9e9e9; background:#fff; }
.home-design__grid h3 { margin:16px 0 8px; font-size:19px; }
.home-design__grid p { margin:0; color:#666; font-size:15px; }
.home-thumb { display:block; width:100%; aspect-ratio:4 / 3; object-fit:cover; background:#f2f2f2; }
.home-tech { padding-top:86px; }
.home-tech__wrap { display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:stretch; }
.home-tech__board { min-height:360px; background:#eeeeea; overflow:hidden; }
.home-tech__board img { display:block; width:100%; height:100%; min-height:360px; object-fit:cover; }
.home-tech__list { margin:0; padding:0; list-style:none; display:grid; gap:12px; }
.home-tech__list li { padding:22px; border:1px solid #e8e8e8; background:#fafafa; }
.home-tech__list strong { display:block; margin-bottom:8px; font-size:18px; }
.home-tech__list span { display:block; color:#666; line-height:1.65; word-break:keep-all; }
.home-case { padding-top:86px; }
.home-case__grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); border-top:1px solid #222; border-left:1px solid #e7e7e7; }
.home-case__grid article { min-height:210px; padding:24px 20px; border-right:1px solid #e7e7e7; border-bottom:1px solid #e7e7e7; background:#fff; }
.home-case__grid span { display:block; color:#d74b38; font-size:13px; font-weight:800; }
.home-case__grid h3 { margin:48px 0 10px; font-size:20px; }
.home-case__grid p { margin:0; color:#666; font-size:15px; }
@media (max-width:760px){
	#home { padding:42px 0 64px; }
	#home section { width:min(100% - 24px, 1180px); }
	.home-section-head { margin-bottom:22px; }
	.home-section-head h2 { font-size:27px; }
	.home-visual { min-height:420px; }
	.home-visual__text h1 { font-size:38px; }
	.home-visual__text p:last-child { font-size:16px; }
	.home-design, .home-tech, .home-case { padding-top:60px; }
	.home-design__grid { grid-template-columns:1fr; }
	.home-tech__wrap { grid-template-columns:1fr; }
	.home-tech__board { min-height:240px; }
	.home-case__grid { grid-template-columns:1fr; }
	.home-case__grid article { min-height:auto; }
	.home-case__grid h3 { margin-top:28px; }
}
