@charset "utf-8";
/* Helper -------------------------- */

.fix-float {
	display: block;
	clear: both;
}

.row {
	margin-left: -20px;
	margin-right: -20px;
}

.container {
	width: 1200px;
}

.mx-auto {
	margin-left: auto;
	margin-right: auto;
}

/* Reset ---------------------- */

* {
	box-sizing: border-box;
}

body {
	font-family: Arial, Helvetica, "微軟正黑體", sans-serif;
	font-size: 15px;
}

a {
	text-decoration: none;
	color: #666;
}

a:hover {
	color: #2ea3f2;
}

/* Layout ------------------------- */

.wrap {
	padding-top: 70px;
}

.main {
}

.post,
.sidebar {
	float: left;
	padding: 20px;
}

.post {
	width: 66.66666%;
	border-right: solid 1px #ddd;
}

.sidebar {
	width: 33.33333%;
}

/* Module ------------------------ */

.btn-switch {
	display: none;
}

.post {
}

.post-list {
	padding: 0;
	list-style-type: none;
}

.post-item {
	margin-bottom: 40px;
}

.post-head {
	margin-bottom: 15px;
}

.post-media,
.widget-media {
	float: left;
}

.post-media {
	width: 40%;
}

.post-content {
	margin-left: 43%;
}

.post-img,
.widget-img {
	display: block;
	width: 100%;
}

a .post-img:hover,
a .widget-img:hover {
	opacity: 0.7;
}

.post-title {
	font-size: 30px;
	font-weight: 600;
	line-height: 1.3;
}

.post-meta {
	margin-bottom: 15px;
}

.post-date,
.post-category,
.post-author {
	padding-right: 15px;
	margin-right: 10px;
	border-right: solid 1px #aaa;
}

.post-date {
	font-style: italic;
}

.post-author {
	border-right: none;
}

.post-desc {
	line-height: 1.6;
	text-align: justify;
	color: #666;
}

.widget-title {
	margin-bottom: 15px;
	font-size: 20px;
	color: #999;
}

.widget-item {
	margin-bottom: 20px;
}

.widget-media {
	width: 30%;
}

.widget-content {
	margin-left: 33%;
}

.widget-list-title {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
}

.post-single .post-content {
	margin-left: 0;
}

.post-single .post-media {
	float: none;
	width: 100%;
	margin-bottom: 20px;
}

.post-single .post-desc {
	margin-bottom: 20px;
}

.header {
	z-index: 1;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: solid 1px #ddd;
	background-color: #fff;
}

.site,
.navi {
	padding: 20px;
}

.site {
	float: left;
	font-size: 30px;
}

.navi {
	float: right;
}

.navi::after {
	content: "";
	display: block;
	clear: both;
}

.navi li {
	float: left;
	margin-left: 20px;
}

.navi a {
	display: inline-block;
	line-height: 30px;
}

@media screen and (max-width: 1200px) {
	.container {
		width: auto;
	}
	.row {
		margin-left: 0;
		margin-right: 0;
	}
	.wrap {
		padding-top: 60px;
	}
	.site,
	.navi,
	.post,
	.sidebar {
		padding: 15px;
	}
	.post-title {
		font-size: 25px;
	}
	.post-desc {
		height: 95px;
		overflow: hidden;
	}
	.widget-item,
	.post-single .post-desc {
		margin-bottom: 15px;
	}
	.post-single .post-desc {
		height: auto;
	}
	.widget-list-title {
		font-size: 14px;
	}
}

@media screen and (max-width: 480px) {
	.header {
		padding: 15px;
	}
	.btn-switch {
		display: inline-block;
	}
	.site {
		float: none;
		display: inline-block;
		padding: 0;
		margin-left: 10px;
		vertical-align: middle;
	}
	.sidebar {
		display: none;
	}
	.post {
		width: auto;
		border: none;
	}
	.navi {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		padding: 0;
		background-color: #ddd;
	}
	.navi li {
		float: none;
		margin-left: 0;
	}
	.navi a {
		display: block;
		padding: 15px;
		color: #000;
		line-height: 1;
	}
	.post-media {
		float: none;
		width: auto;
		margin-bottom: 15px;
	}
	.post-content {
		margin-left: 0;
	}
}
