@charset "utf-8";

/* =========================================================
Common
========================================================= */

:root {
	--main-color: #000;
	--border-color: #444;
	--border-hover-color: #444;
}

*,
*::before,
*::after {
	box-sizing: border-box;
	font-family: "castoro", serif;
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

html,
body {
	width: 100%;
}

html,
body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
li,
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	word-break: keep-all;
}

body {
	font-size: 62.5%;
	font-weight: 700;
	text-align: center;
	-webkit-overflow-scrolling: touch;
	-webkit-user-select: none;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: transparent;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-bottom: 1em;
	color: rgba(0, 0, 0, 0.9);
	text-align: center;
}

h1 { font-size: 3.6em; }
h2 { font-size: 3em; }
h3 { font-size: 2.4em; }
h4 { font-size: 1.8em; }
h5 { font-size: 1.4em; }
h6 { font-size: 1.2em; }

ul,
ol,
dl {
	list-style: none;
}

table {
	border-collapse: collapse;
}

img {
	max-width: 100%;
	border: 0;
	vertical-align: top;
}

a {
	display: inline-block;
	padding: 0;
	border-radius: 0;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	text-decoration: none;
}

a[class*="btn-"] {
	border-radius: 3px;
}

.hidden {
	display: none;
}

/* =========================================================
Layout
========================================================= */

#wrap {
	position: relative;
	width: 100%;
	min-height: 100%;
	height: auto !important;
	overflow: hidden;
	background-color: var(--main-color);
	text-align: center;
}

/* =========================================================
Content
========================================================= */

#content {
	width: 100%;
	margin: 0 auto;
}

#content .title {
	text-align: center;
}

#content .title img {
	width: 54%;
}

/* =========================================================
Content List / Masonry
========================================================= */

.content-list {
	position: relative;
	width: 76%;
	margin: 0 auto;
	padding-bottom: 20%;
	overflow: hidden;
}

.content-list > ul,
.content-list > ul > li {
	display: block;
	overflow: hidden;
	text-align: left;
}

.content-list > ul > li img {
	width: 100%;
}

.grid-item {
	margin-bottom: 1.2%;
}

.grid-item:hover {
	box-shadow: 1px;
	color: #;

}

.grid-item a {
	color: #fff;
}

.grid-item img {
/*border: 1px solid var(--border-color);*/
}

.grid-item .video {
	position: relative;
}

.grid-item .video::after {
	content: url("../img/ico-video.png");
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -17px;
	margin-left: -24px;
}
.content-list > ul > li .content-thumb {
	transform: scale(1);
	transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.grid-item:hover .content-thumb {
	transform: scale(1.04);
}


/* =========================================================
Content Description
========================================================= */

.content-desc {
	display: block;
	padding: 1.2vw 0;
	text-align: left;
}

.content-headline {
	display: block;
	font-size: 1.7em;
	line-height: 1.7em;
}

.content-tag {
	display: block;
	margin-top: 10px;
	color: rgba(200, 200, 200, 1);
	font-size: 1em;
}

.grid-item:hover .content-headline {
	text-decoration: underline;
}

/* =========================================================
Desktop
========================================================= */

@media (min-width: 970px) {
	.grid-sizer,
	.grid-item {
		width: 24.1%;
	}

	.gutter-sizer {
		width: 1.2%;
	}
}

/* =========================================================
Tablet
========================================================= */

@media (max-width: 969px) {
	.grid-sizer,
	.grid-item {
		width: 100%;
	}

	.gutter-sizer {
		width: 1.2%;
	}

	.grid-item {
		margin-bottom: 10%;
	}

	#content .title {
		
	}

	#content .title img {
		width: 100%;
	}

	.content-desc {
		
	}

	.content-list > ul > li .content-thumb {
		transform: scale(1);
		transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	}

	.grid-item:hover .content-thumb {
		transform: scale(1.04);
	}

	.content-headline {
		font-size: 1.5em;
	}
}

/* =========================================================
Mobile
========================================================= */

@media (max-width: 480px) {
	.grid-sizer,
	.grid-item {
		width: 100%;
		height: auto;
	}

	.gutter-sizer {
		width: 0;
	}

	.content-desc {
		
	}

}
