@charset "UTF-8";



/*MV
---------------------------------------------------------*/
.equipment .m_img {
    background-image: url(../images/equipment/m_img@2x.jpg);
}

/*box1
---------------------------------------------------------*/
.box1 .grid_wrap{
	display: grid;
	grid-template-columns: repeat(3, 1fr);/*横*/
	gap: 60px 7%;
}
.box1 .grid_wrap .img{
	margin-bottom: 30px;
	width: 100%;
}
.box1 .grid_wrap .ttl{
	font-size: 165%;
	text-align: center;
	margin-bottom: 20px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box1 .grid_wrap{
	grid-template-columns: repeat(2, 1fr);/*横*/
}
.box1 .grid_wrap .ttl{
	font-size: 140%;
}
.box1 .grid_wrap .img{
	margin-bottom: 15px;
}
.box1 .grid_wrap .ttl{
	margin-bottom: 10px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box1 .grid_wrap{
	gap: 40px 0;
	grid-template-columns: 1fr;
}
.box1 .grid_wrap .img{
	width: 70%;
	margin: 0 auto 1.0em;
}
.box1 .grid_wrap .ttl{
	font-size: 140%;
	margin-bottom: .2em;
}
.box1 .grid_wrap .txt {
	width: 90%;
	margin: 0 auto;
}
}



/*box2
---------------------------------------------------------*/
.box2{
	position: relative;
	padding-top: 80px;
}
.box2::before{
	content:"";
	display: inline-block;
	width: 100%;
	height:306px;
	position: absolute;
	top:0;
	left:50%;
    transform:translateX(-50%);
	background-color: #326c9f;
	z-index: -1;
}
.box2 .com_intro{
	color:#fff;
}
.box2 .grid_wrap{
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 0 4% 70px 4%;
    border-bottom: 1px dashed #9ca0a6;
	gap: 60px 4%;
}
.box2 .grid_wrap .img{
	margin-bottom: 40px;
	position: relative;
}
.box2 .grid_wrap img{
	width:100%;
}
.box2 .grid_wrap .img::after{
    content: "";
    position: absolute;
    bottom: 28px;
    left: 50%;
    transform: translateX(-50%);
    width: 65%;
    height: 25px;
    box-shadow: 0 40px 15px rgba(0, 0, 0, .2);
    background-color: transparent;
    z-index: -1;
}
.box2 .grid_wrap .txt{
	color:#326c9f;
	font-weight: 600;
	line-height: 1.7em;
	text-align: center;
	margin-bottom: .6em;
}
.box2 .grid_wrap .ttl{
	text-align: center;
	font-size: 150%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box2 .grid_wrap{
	grid-template-columns: repeat(2, 1fr);/*横*/
	padding:0 0 70px 0;
}
.box2 .grid_wrap .img{
	margin-bottom: 30px;
}
.box2 .grid_wrap .txt{
	margin-bottom: .4em;
}
.box2 .grid_wrap .ttl{
	font-size: 140%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box2{
	padding-top:10%;
}
.box2::before{
	height:20%;
}
.box2 .grid_wrap{
	grid-template-columns: 1fr;/*横*/
	gap: 40px 0;
}
.box2 .grid_wrap .ttl{
	font-size: 140%;
	letter-spacing: normal;
}
.box2 .grid_wrap .img{
	width: 90%;
	margin: 0 auto 1.0em;
}
.box2 .grid_wrap .txt{
	margin-bottom: 8px;
}
}



/*box3
---------------------------------------------------------*/
.box3{
	text-align: center;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box3 .txt_intro{
	font-size: 140%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box3 .txt_intro{
	font-size: 135%;
}
}



/*
---------------------------------------------------------*/

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}