@charset "UTF-8";

/* imgArea:TOP */ 
.imgArea_re {
	position: relative;
	margin: 0 0 40px;
}

.imgArea_re p.pc,
.imgArea_re p.smp {
	font-size: 0;
	line-height: 1;
}

.imgArea_re img {
	width: 100%;
}

.imgArea_re .imgArea-txt {
	position: absolute;
	width: 100%;
	height: 100%;

	display: -webkit-flex; /* Safari用 */
	display: flex;
	-webkit-justify-content: center; /* Safari用 */
	justify-content: center;
	-webkit-align-items: center; /* Safari用 */
	align-items: center;
}

.imgArea_re h1 {
	font-size: 24px;
	line-height: 1.4;
	text-align: center;
	margin: 0;
	padding: 1em ;
	background: rgba(255, 255, 255, 0.8);
	font-family: "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	letter-spacing: 0.1em;
	color: #000;
	font-weight: normal;
}
.imgArea_re .b-type h1 {
	padding: 1em 2em;
}
/* 2017年8月3日（コピー変更に伴い追加） */
.imgArea_re .b-type h1 br {
	display: none;
}


/* --------------------------------
 * smart phone
 * -------------------------------- */
/* 1024px以下 */ 
@media (max-width: 1024px) {
	.imgArea_re {
		width: 100%;
		height: auto;
	}
	.imgArea-txt {
		width: auto;
	}
	.imgArea_re h1 {
		width: auto;
	}
}

/* --- 768px以下 --- */
@media (max-width: 768px) {
	.imgArea_re {
		margin: 0px 0 20px;
	}
	.imgArea_re h1 {
		font-size: 20px;
	}
}

/* --- 599px以下 --- */
@media (max-width: 599px) {
	.imgArea_re .b-type h1 {
		padding: 1em 1em;
	}
	.imgArea_re h1 {
		font-size: 18px;
	}
}

@media (max-width: 499px) {
	.imgArea_re {
		background-size: cover;
	}
	.imgArea_re .b-type h1 br {
		display: block;
	}
	.imgArea_re h1 {
		letter-spacing: 0.05em;
		padding: 0.75em 0.75em;
		font-size: 16px;
		/* 2017年8月3日（コピー変更に伴い追加） */
		font-size: 20px;
	}
}
@media (max-width: 400px) {
	.imgArea_re h1 {
		/* 2017年8月3日（コピー変更に伴い追加） */
		font-size: 18px;
	}
}
@media (max-width: 321px) {
	.imgArea_re h1 {
		letter-spacing:  0.05em;
		padding: 0.75em 0.75em;
		font-size: 14px;
		/* 2017年8月3日（コピー変更に伴い追加） */
		font-size: 16px;
	}
}


@media (min-width: 500px) {
	.imgArea_re .pc {
		display: block;
	}
	.imgArea_re .smp {
		display: none;
	}
}
@media (max-width: 499px) {
	.imgArea_re .pc {
		display: none;
	}
	.imgArea_re .smp {
		display: block;
	}
}




/* banner */ 
@media screen and (min-width: 769px) {
	.banner {
		float: right;
		width: 220px;
	}
	.banner ul {
		list-style: none;
		margin: 0 0 20px;
		padding: 0;
	}
	.banner ul li {
		float: none;
		width: 100%;
		margin-bottom: 10px;
		display: block;
		box-shadow: 0 0 4px rgba(0, 0, 0, 0);
		line-height: 1;
	}
	.banner ul li a {
		margin: 0;
		padding: 0;
		display: block;
		padding: 0;
		background-color: #ccc;
		height: auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: center;
		/* 逆順設定 */
		-webkit-flex-direction: row-reverse; /* Safari */
		flex-direction: row-reverse;
	background: #1c9b73;
	}
	
	.banner ul li a .icon {
		/*background-color: rgba(0, 0, 0, 0.2);*/
	background: #016e4c;
	background: -webkit-gradient(linear, left top, left bottom, from(#0f815e), to(#016e4c));
	background: linear-gradient(to bottom, #0f815e 0%, #016e4c 100%);
	}
	.banner ul li a .icon img {
		margin: 0;
		padding: 0;
		width: 80px;
		vertical-align: bottom;
	}
	.banner ul li a p.b_name {
		text-align: center;
		font-size: 14px;
		line-height: 1.3;
		width: calc(100% - 80px);
		color: #fff;
	}
	
}


@media screen and (max-width: 768px) {
	.news,
	.banner {
		float: none;
		width: 100%;
		display: block;
	}
	.banner ul {
		max-width: 600px;
		margin: 0 auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	.banner ul li {
		float: none;
		width: calc(100%/3 - 10px);
	}
	.banner ul li a {
		text-align: center;
		display: block;
		padding: 0;
	background: #1c9b73;
	}
	
	.banner ul li a .icon {
		margin: 0;
		padding: 0;
	background: #016e4c;
	background: -webkit-gradient(linear, left top, left bottom, from(#0f815e), to(#016e4c));
	background: linear-gradient(to bottom, #0f815e 0%, #016e4c 100%);
	}
	.banner ul li a .icon img {
		margin: 0;
		padding: 0;
		width: 100%;
		max-width: 80px;
		vertical-align: bottom;
	}
	.banner ul li a p.b_name {
		margin: 0;
		padding: 0;
		text-align: center;
		font-size: 14px;
		line-height: 1.3;
		height: 5em;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: center;
	}
	.banner ul li a p.b_name span {
		text-align: center;
		display: block;
		width:100%;
		color: #fff;
	}
}

@media screen and (max-width: 425px) {
	.banner ul li {
		float: none;
		width: calc(100%/3 - 5px);
	}
	.banner ul li a p.b_name {
		font-size: 13px;
	}
}

@media screen and (max-width: 325px) {
	.banner ul li {
		float: none;
		width: calc(100%/3 - 2px);
	}
	.banner ul li a p.b_name {
		font-size: 12px;
		letter-spacing: -0.05em;
	}
}


@media screen and (max-width: 769px) {
	.banner ul li a:hover {
		opacity: 1;
		filter: alpha(opacity=100);
		-moz-opacity:1;
	}
}


