#fv {
margin: 0 0 100px 0;
}

#fv figcaption {
color: #fff;
text-align: center;
padding: 30px 0;
background-color: var(--sub-color);
}

#fv figcaption h1 {
font-size: 30px;
font-weight: 700;
line-height: 1;
margin: 0 0 20px 0;
}


#solution {
width: 1020px;
padding: 0 20px;
margin: 0 auto 80px auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 50px;
}

#solution figure img {
width: 200px;
margin: 0 auto 35px auto;
}

#solution figcaption h3 {
font-family: "Montserrat", sans-serif;
font-size: 30px;
font-weight: 700;
color: var(--theme-color);
text-align: center;
line-height: 1;
margin: 0 0 10px 0;
}


#products {
padding: 100px 10px 40px 10px;
margin: 0 0 100px 0;
background-color: var(--theme-color);
}

#products article {
width: 1000px;
margin: auto;
}

#products #rajant {
display: flex;
align-items: center;
gap: 50px;
margin: 0 0 90px 0;
}

#products #rajant img {
width: 290px;
}

#products #rajant figcaption {
color: #fff;
text-align: justify;
}

#products ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 50px;
margin: 0 0 50px 0;
}

#products ul li figure img {
margin: 0 0 30px 0;
}

#products ul li figure img:hover {
opacity: 0.5;
transition: 0.3s;
}

#products ul li figure figcaption {
color: #fff;
text-align: center;
}

#products ul li figure figcaption h3 {
font-family: "Montserrat", sans-serif;
font-size: 30px;
font-weight: 700;
line-height: 1;
margin: 0 0 10px 0;
}

#products #link {
display: block;
padding: 20px 0;
margin: 0 0 50px 0;
color: #fff;
text-align: center;
line-height: 1;
background-color: var(--sub-color);
}

#products #link:hover {
color: var(--sub-color);
background-color: #fff;
transition: 0.3s;
}

#products #notice {
padding: 20px 0;
border: 1px solid #fff;
color: #fff;
text-align: center;
line-height: 1;
}


#news {
width: 1020px;
padding: 0 10px;
margin: 0 auto 140px auto;
display: flex;
gap: 40px;
}

#news article {
width: 100%;
display: grid;
gap: 30px;
}

#news h2 {
font-family: "Montserrat", sans-serif;
font-size: 30px;
font-weight: 700;
color: var(--theme-color);
}

#news article dl {
padding: 0 0 20px 0;
border-bottom: 1px solid var(--theme-color);
}

#news article dl dt {
color: var(--theme-color);
margin: 0 0 5px 0;
}

#news article dl span {
font-size: 13px;
}

#news article dl p {
font-size: 13px;
}

