@charset "utf-8";
/******************/
#masonry {
	width:auto;
	margin:0 auto;
}
#masonry1,#masonry2,#masonry3,#masonry4,#masonry5,#masonry6,#masonry7,#masonry8 {
	width:auto;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 40px;
	margin-left: auto;
}

.box {
	width:240px;
	float:left;
	/*background: -webkit-gradient(linear, left top, right top, from(#f5f3f3), to(#eaeaea));
	background: -moz-linear-gradient(left,  #f5f3f3,  #eaeaea);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f5f3f3', endColorstr='#eaeaea', GradientType=1);*/
	margin:20px;
	position: relative;
}
.box2 {
	width:230px;
	float:left;
	margin:20px;
	position: relative;
	background-color: #f8f8f8;
}
.box2 p {
	font-size: 16px;
	padding: 30px 20px 0px 20px;
	border-top: 3px solid #00ac97;
	text-align: center;
	line-height: 1.4em;
}

.box-height1 {
	padding-bottom: 20px;
	min-height:380px;
	line-height: 1.7;
}
.box-height2 {
	min-height:150px;
	margin:15px 15px 60px 15px !important;
}
.box-height3 {
	min-height:110px;
	margin:15px 15px 30px 15px !important;
}
.box-height4 {
	min-height:150px;
	margin:15px 15px 80px 15px !important;
}
.box-height5 {
	min-height:150px;
	margin:15px 15px 180px 15px !important;
}


.boxIMG {}
.imgArrow {
	position: absolute;
	left: 0px;
	top: 0px;
}
.boxTTL {
	margin: 15px 20px 0px 20px;
	font-size: 16px;
	font-weight: bolder;
}
.boxTTL2,.boxTTL2_b {
	font-size: 16px;
	position: absolute;
	left: 10px;
	top: 160px;
	background-color: #f7f7f7;
	width: 210px;
	padding: 5px 20px 5px 20px;
	border-bottom: 3px solid #00ac97;
	text-align: center;
	line-height: 1.6em;
}
.boxTTL2_b {
	border-bottom: 3px solid #666 !important;
}
.boxTTL2_b span {
	border-left: 7px solid #00ac97;
	padding-left: 10px;
}
.boxTTL2_b span.c01 {
	border-left-color: #ee5561 !important;
}
.boxTTL2_b span.c02 {
	border-left-color: #40b6a7 !important;
}
.boxTTL2_b span.c03 {
	border-left-color: #b19912 !important;
}


.boxTTL3 {
	font-size: 16px;
	position: absolute;
	left: 10px;
	top: 160px;
	width: 250px;
	text-align: center;
	line-height: 1.6em;
}
.boxTTL3 .ttl {
	padding-bottom: 5px;
	border-bottom: 3px solid #00ac97;
	background-color: #f7f7f7;
	margin-bottom: 10px;
	padding-top: 5px;
	padding-right: 20px;
	padding-left: 20px;
}

.boxTTL3 .ex {
	font-size: 14px;
	text-align: left !important;
	letter-spacing: 0em;
}
.boxCAP {
	margin: 10px 20px 0px 20px;
	font-size: 90%;
}
a .box,a .box2 {
	color: #333;
}
a:hover .box,a:hover .box2 {
	color: #666;
}
/******************/

.boxIMG {
    overflow: hidden;
    position: relative;
}

/*マウスオーバーするマスク*/
.boxIMG .mask{
    width:100%;
	min-height:100%;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0
}

/*黒にする*/
.box-view .mask {
    opacity: 0;
    background-color: #fff;
    transition: all 0.3s ease-in-out;
	opacity: 0;
}


/*マウスオーバーしたとき　不透明度を下げる**/
.box-view:hover .mask {
    opacity: 0.3;
}


