@charset "UTF-8";

@keyframes txtloop {
0% {
transform: translateX(100%);
}
to {
transform: translateX(-100%);
}
}

@keyframes txtloop2 {
0% {
transform: translateX(0);
}
to {
transform: translateX(-200%);
}
}


/*PC*/
@media print, screen and (min-width: 768px) {
#products_solutions {
position:relative;
margin: 0 auto 160px;
z-index: 5;
}

#products_solutions .red_ttl{
width: 90%;
margin: 0 auto 30px;
}
#products_solutions .red_txt{
width: 90%;
margin: 0 auto 100px;
}



#products_solutions .box{
width: 90%;
margin: 0 auto 100px;
}

#products_solutions .box h3{
font-size: 2rem;
font-weight: 700;
line-height: 1;
margin: 0 0 40px;
position: relative;
padding-left: 20px;
box-sizing: border-box;
}
#products_solutions .box h3::before{
content: "";
position: absolute;
top: 12px;
left: 0;
width: 10px;
height: 10px;
background: #6F59C5;
}

#products_solutions .box ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#products_solutions .box ul li {
width: 31%;
border: 1px solid #443E6E;
padding:10px;
box-sizing: border-box;
margin-bottom: 50px;
}

#products_solutions .box ul li .img {
width: 100%;
margin-bottom: 10px;
}

#products_solutions .box ul li h4{
font-size: 1.2rem;
font-weight: 500;
line-height: 1;
margin: 0 0 15px;
background: #443E6E;
padding: 8px;
color: #FFF;
box-sizing: border-box;
}

#products_solutions .box ul li p {
font-size: 1rem;
margin-bottom: 15px;
}

#products_solutions .common_btn_box {
margin: 80px 0 0;
text-align: center;
}
#products_solutions .box ul li .common_btn_box {
margin: 40px 0 20px;
}


#products_solutions .block{
width: 90%;
margin: 0 auto 60px;
border-top: 1px solid #443E6E;
padding:60px 0 0;
}

#products_solutions .block .red_ttl2{
font-size: 2rem;
font-weight: 700;
line-height: 1;
position: relative;
padding-left:20px;
box-sizing: border-box;
}

#products_solutions .block .red_ttl2::before{
content: "";
position: absolute;
top: 12px;
left: 0;
width: 10px;
height: 10px;
background: #6F59C5;
}

#products_solutions .pr_img{
width:90%;
margin:0 auto 60px;
vertical-align:bottom;
}

#products_solutions .pr_img img{
border-radius: 1rem;
overflow: hidden;
}

#products_solutions .block .list{
margin: 0;
}

#products_solutions .block .list li{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
flex-direction: row;
padding:40px 0 0;
box-sizing: border-box;
position: relative;
}

#products_solutions .block .list li .img img{
border-radius: 1rem;
overflow: hidden;
}

#products_solutions .block .list li .txt p{
font-size: 1.2rem;
}

#products_solutions .block .list li.flex_wrap .img{
width: 35%;
}

#products_solutions .block .list li.flex_wrap .txt{
width: 60%;
}

#products_solutions .block .list li .imgbox{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 30px;
}
#products_solutions .block .list li .imgbox::after{
content: '';
width: 32%;
display: block;
}

#products_solutions .block .list li .imgbox .img{
width: 32%;
}

#products_solutions .block .list li.flex_wrap .txt2{
width: 100%;
}

#products_solutions .block .list li .imgbox .img2{
width:24%;
}

#products_solutions .block .list li .imgbox .img2 img{
border-radius: 1rem;
overflow: hidden;
}


/*
--------------------------------------------*/
#products_solutions .sl_img01{
width:90%;
margin:0 auto 60px;
vertical-align:bottom;
}

#products_solutions .sl_img01 img{
border-radius: 1rem;
overflow: hidden;
}

#products_solutions .block .list_flex_wrap{
display: flex;
flex-wrap:wrap;
justify-content:space-between;
}

#products_solutions .block .list_flex_wrap .img{
width:35%;
}


#products_solutions .block .list_flex_wrap .img img{
border-radius: 1rem;
overflow: hidden;
}

#products_solutions .block .list_flex_wrap .txt{
width: 60%;
}


}
/*sp*/
@media only screen and (max-width: 767px) {
#products_solutions {
position:relative;
margin: 0 auto 80px;
z-index: 5;
}

#products_solutions .red_ttl{
width: 90%;
margin: 0 auto 20px;
}
#products_solutions .red_txt{
width: 90%;
margin: 0 auto 40px;
}



#products_solutions .box{
width: 90%;
margin: 0 auto 50px;
}

#products_solutions .box h3{
font-size: 1.6rem;
font-weight: 700;
line-height: 1;
margin: 0 0 20px;
position: relative;
padding-left: 20px;
box-sizing: border-box;
}
#products_solutions .box h3::before{
content: "";
position: absolute;
top: 12px;
left: 0;
width: 10px;
height: 10px;
background: #6F59C5;
}

#products_solutions .box ul {  }
#products_solutions .box ul li {
border: 1px solid #443E6E;
padding:10px;
box-sizing: border-box;
margin-bottom: 30px;
}

#products_solutions .box ul li .img {
width: 100%;
margin-bottom: 10px;
}

#products_solutions .box ul li h4{
font-size: 1rem;
font-weight: 500;
line-height: 1;
margin: 0 0 15px;
background: #443E6E;
padding: 8px;
color: #FFF;
box-sizing: border-box;
}

#products_solutions .box ul li p {
margin-bottom: 15px;
}

#products_solutions .common_btn_box {
margin: 40px 0 0;
text-align: center;
}
#products_solutions .box ul li .common_btn_box {
margin: 40px 0 20px;
}


#products_solutions .block{
width: 90%;
margin: 0 auto 40px;
border-top: 1px solid #443E6E;
padding:40px 0 0;
}

#products_solutions .block .red_ttl2{
font-size: 1.4rem;
font-weight: 700;
line-height: 1.4;
position: relative;
padding-left:20px;
box-sizing: border-box;
}

#products_solutions .block .red_ttl2::before{
content: "";
position: absolute;
top: 12px;
left: 0;
width: 10px;
height: 10px;
background: #6F59C5;
}

#products_solutions .pr_img{
width:90%;
margin:0 auto 40px;
vertical-align:bottom;
}

#products_solutions .pr_img img{
border-radius: 0.5rem;
overflow: hidden;
}

#products_solutions .block .list{
margin: 0;
}

#products_solutions .block .list li{
padding: 20px 0 0;
box-sizing: border-box;
position: relative;
}

#products_solutions .block .list li .img img{
border-radius: 0.5rem;
overflow: hidden;
}

#products_solutions .block .list li .txt p { font-size: 0.9rem; }

#products_solutions .block .list li.flex_wrap .img{
margin-bottom: 10px;
}

#products_solutions .block .list li .imgbox{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 30px;
}
#products_solutions .block .list li .imgbox::after{
content: '';
width: 32%;
display: block;
}

#products_solutions .block .list li .imgbox .img{
width: 32%;
}

#products_solutions .block .list li.flex_wrap .txt2{
width: 100%;
}

#products_solutions .block .list li .imgbox .img2{
width:48%;
margin-bottom: 10px;
}

#products_solutions .block .list li .imgbox .img2 img{
border-radius: 1rem;
overflow: hidden;
}


/*
--------------------------------------------*/
#products_solutions .sl_img01{
width:90%;
margin:0 auto 60px;
vertical-align:bottom;
}

#products_solutions .sl_img01 img{
border-radius: 0.5rem;
overflow: hidden;
}

#products_solutions .block .list_flex_wrap{  }
#products_solutions .block .list_flex_wrap .img{ margin-top: 10px; }
#products_solutions .block .list_flex_wrap .img img{
border-radius: 0.5rem;
overflow: hidden;
}

#products_solutions .block .list_flex_wrap .txt p{ font-size: 0.9rem; }


}