#home { background:#fff; color:#16181d; padding-bottom:90px; }
#home *, #home *::before, #home *::after { box-sizing:border-box; }
#home p { line-height:1.75; }
.home-visual { width:100%; min-height:620px; margin:0 auto; padding:70px 56px; display:flex; align-items:center; justify-content:center; text-align:center; background:url("../img/edu-core_bg.png") center/cover no-repeat; position:relative; overflow:hidden; }
.home-visual::before { content:""; position:absolute; inset:0; background:rgba(0,0,0,.2); }
.home-visual-text { max-width:680px; position:relative; z-index:1; margin:0 auto; }
.home-visual .home-kicker, .home-visual h1, .home-visual-text > p:not(.home-kicker) { color:#fff; }
.home-visual .home-link { border-color:#fff; color:#fff; }
.home-visual .home-link:hover { background:#fff; color:#17191f; }
.home-kicker { margin:0 0 14px; color:#68758a; font-size:12px; font-weight:700; letter-spacing:0; text-transform:uppercase; }
.home-visual h1 { margin:0; font-size:58px; line-height:1.08; font-weight:800; letter-spacing:0; word-break:keep-all; }
.home-visual-text > p:not(.home-kicker) { margin:24px auto 0; color:#555f6f; font-size:17px; word-break:keep-all; }
.home-link { display:inline-flex; align-items:center; justify-content:center; min-height:42px; margin-top:30px; padding:0 20px; border:1px solid #17191f; color:#17191f; font-size:14px; font-weight:700; transition:background .2s, color .2s; }
.home-link:hover { background:#17191f; color:#fff; }
.home-visual-box { display:none; }
.home-section { width:min(1180px, calc(100% - 40px)); margin:92px auto 0; }
.home-heading { max-width:650px; }
.home-heading h2 { margin:0; font-size:38px; line-height:1.2; font-weight:800; letter-spacing:0; word-break:keep-all; }
.home-heading p:not(.home-kicker) { margin:14px 0 0; color:#626b78; font-size:16px; word-break:keep-all; }
.home-smart .home-heading { margin:0 auto; text-align:center; }
.home-card-grid { margin-top:34px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; }
.home-card { padding:18px; border:1px solid #e7eaee; background:#fff; }
.home-card h3 { margin:18px 0 0; font-size:20px; line-height:1.35; font-weight:800; word-break:keep-all; }
.home-card p { margin:8px 0 0; color:#68717e; font-size:15px; word-break:keep-all; }
.home-image-box { min-height:250px; background:center/cover no-repeat #f3f5f7; overflow:hidden; }
.tone-blue { background-image:url("../img/item-1.jpg"); }
.tone-mint { background-image:url("../img/item-2.png"); }
.tone-coral { background-image:url("../img/item-3.jpg"); }
.home-feature { margin-top:32px; display:grid; grid-template-columns:.82fr 1.18fr; gap:32px; align-items:stretch; border:1px solid #e7eaee; background:#f7f8fa; }
.home-feature-copy { padding:44px; align-self:center; }
.home-feature-copy h3 { margin:0; font-size:28px; line-height:1.28; font-weight:800; word-break:keep-all; }
.home-feature-copy p { margin:16px 0 0; color:#626b78; font-size:16px; word-break:keep-all; }
.home-shelf { min-height:360px; background:url("../img/item-4.png") center/cover no-repeat #edf1f5; overflow:hidden; }
.home-mini-grid { margin-top:18px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; }
.home-mini-grid article { padding:24px; border:1px solid #e7eaee; }
.home-mini-grid strong { display:block; font-size:18px; line-height:1.3; word-break:keep-all; }
.home-mini-grid p { margin:8px 0 0; color:#68717e; font-size:15px; word-break:keep-all; }
.home-office { padding:56px; background:#f6f2ed; }
.home-office-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:44px; align-items:center; }
.home-desk { min-height:380px; background:url("../img/item-5.png") center/cover no-repeat #fff; overflow:hidden; }
@media (max-width:860px){
	.home-visual { min-height:520px; padding:58px 24px; }
	.home-visual h1 { font-size:42px; }
	.home-section { margin-top:68px; }
	.home-card-grid { grid-template-columns:1fr; }
	.home-feature { grid-template-columns:1fr; }
	.home-feature-copy { padding:30px; }
	.home-mini-grid { grid-template-columns:1fr; }
	.home-office { padding:34px 20px; }
	.home-office-layout { grid-template-columns:1fr; }
	.home-desk { min-height:310px; }
}
@media (max-width:560px){
	#home { padding-bottom:64px; }
	.home-visual { min-height:430px; }
	.home-visual h1 { font-size:34px; }
	.home-visual-text > p:not(.home-kicker) { font-size:15px; }
	.home-section { width:calc(100% - 28px); margin-top:56px; }
	.home-heading h2 { font-size:29px; }
	.home-image-box { min-height:210px; }
	.home-feature-copy h3 { font-size:24px; }
	.home-shelf { min-height:280px; }
	.home-office { width:calc(100% - 28px); }
	.home-desk { min-height:260px; }
}
