/* タイトル背景透過調整 */
.title .bg:before {
    background: rgba(255,255,255,0);
}

/* ここから各説明文 */
#rpa1 .container {
	padding-bottom: 0;
}

#rpa1 .subtitle {
	position: relative;
}
#rpa1 .subtitle .bg {
	position: absolute;
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index: -1;
}

#rpa1 .subtitle .bg::before {
	content: "";
    position: absolute;
	opacity: 0.3;
	z-index: -1;
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	background-repeat: repeat;
    background-image: radial-gradient(#33a8f1  0.6px, transparent 0.6px);
    background-size: 12px 12px;
}

#rpa2 .container {
	max-width: 1200px;
}

#rpa2 div.text div.head{
    line-height: 1.2;
    padding: 30px 0;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
}

#rpa2 div.grids{
    display: flex;
    flex-wrap: wrap;
}

#rpa2 div.grid{
    width: calc(25% - 10px);
    margin : 0 5px;
}

/* ieだとflex-wrap対象の要素にborderやpaddingを直接指定するとうまく動かないため、
子要素を作成してborderやpaddingを記述 */
#rpa2 div.grid-inner{
	padding: 20px;
	border: 3px solid black;
	/* box-shadow: 0px 6px 10px -6px #777777; */
	background-color: white;
	width: 100%;
	height: 100%;
}

#rpa2 div.grid .img {
    max-width: 300px;
    margin: 0 auto;
}

#rpa2 div.grid div.img1{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
	background: url(../img/pic/home/rpa2-1.png) no-repeat center center;
	background-size: cover;
}
#rpa2 div.grid div.img2{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
	background: url(../img/pic/home/rpa2-2.png) no-repeat center center;
	background-size: cover;
}
#rpa2 div.grid div.img3{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
	background: url(../img/pic/home/rpa2-3.png) no-repeat center center;
	background-size: cover;
}
#rpa2 div.grid div.img4{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
	background: url(../img/pic/home/rpa2-4.png) no-repeat center center;
	background-size: cover;
}

/* #rpa2 div.grid img{
    max-width: 100%;
    width: 100%;
} */

section#rpa3 .container .center{
	display: flex;
	justify-content: center;
	text-align: right;
}
section#rpa3 .container .center img{
    max-width: 100%;
    height: auto;
}

#rpa3 .subtitle {
	position: relative;
}
#rpa3 .subtitle .bg {
	position: absolute;
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index: -1;
}

#rpa3 .subtitle .bg::before {
	content: "";
    position: absolute;
	opacity: 0.3;
	z-index: -1;
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	background-repeat: repeat;
    background-image: radial-gradient(#33a8f1  0.6px, transparent 0.6px);
    background-size: 12px 12px;
}



/* 701以上1200以下 */
@media only screen and (min-width:701px) and (max-width: 1200px){
    #rpa2 div.grid{
        flex-basis: calc(50% - 10px);
        margin-bottom: 10px;
    }
}

/* 700以下 */
@media only screen and (min-width:0px) and (max-width: 700px) {
    #rpa2 div.grids{
        flex-direction: column;
    }

    #rpa2 div.grid{
        width: 100%;
        margin-bottom: 10px;
    }
}
