section {
	border-top: 1px solid #ccc;
}
section h3 {
	line-height: 1.3;
}
section h3 small {
	display: block;
	font-size: 50%;
}

@media all and (max-width: 640px) {
	section {
		margin: 2rem auto;
		padding: 0 1rem;
	}
	section h3 {
		line-height: 1.3;
	}
	section h3 small {
		display: block;
	}
	section .link {
		margin-top: 1rem;
	}
}

@media all and (min-width: 641px) {
	section {
		position: relative;
		text-align: left;
		width: 49rem;
		margin: 1rem auto;
	}
	section .link {
		position: absolute;
		text-align: right;
		right: 0;
		top: 1.5rem;
	}
}

/*==================== thums ====================*/
.thums ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.thums li {
	display: inline-block;
	vertical-align: top;
}

.thums li a {
	color: inherit;
	text-decoration: none;
}
.thums .image {
	display: inline-block;
	overflow: hidden;
}
.thums .image img {
	display: block;
	position: relative;
	left: 50%;
	top: 50%;
	width: auto;
	min-width: 100%;
	min-height: 100%;
	max-width: 150%;
	max-height: 150%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

@media all and (max-width: 640px) {
	.thums {
		font-size: 80%;
	}
	.thums li {
		width: 11rem;
		margin: 0.1rem 0.2rem;
	}
	.thums li:nth-of-type(even) {
		margin-right: 0;
	}
	.thums .image {
		width: 4em;
		height: 3em;
		font-size: calc(11rem / 4);
	}
	.thums .text {
		display: none;
	}
}

@media all and (min-width: 641px) {
	.thums {
		font-size: 80%;
	}
	.thums li {
		width: 16rem;
		margin: 0.1rem 0.2rem;
	}
	.thums li:nth-of-type(3n) {
		margin-right: 0;
	}
	.thums li:nth-of-type(n+4) {
		margin-top: 0.5rem;
	}
	.thums .image {
		width: 16em;
		height: 9em;
		font-size: calc(16rem / 16);
	}
	.thums .text {
		line-height: 1.4;
		min-height: 3em;
	}

}
