@media print, screen and (min-width: 769px) {
.key-visual {
	position:relative;
	width:1400px;
	height:530px;
	margin:0 auto;
}
.key-visual p.catch {
	position:absolute;
	top:140px;
	left:100px;
	color:#FFF;
	font-size:38px;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .5);
}
.key-visual p.text {
	position:absolute;
	top:215px;
	left:100px;
	color:#FFF;
	font-size:16px;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .5);
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
}
.key-visual a {
	display:block;
	background:#fb6400;
	position:absolute;
	width:300px;
	height:60px;
	text-align:center;
	line-height:60px;
	top:320px;
	left:100px;
	color:#FFF;
	font-size:18px;
	text-decoration:none;
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .5);
    border-radius:30px;
    -webkit-border-radius:30px;
    -moz-border-radius:30px;
	transition:all 0.5s 0s ease;
	-moz-transition:all 0.5s 0s ease;
	-webkit-transition:all 0.5s 0s ease;
	-o-transition:all 0.5s 0s ease;
	-ms-transition:all 0.5s 0s ease; 
}
.key-visual a:before {
	content: "\f0da";
	font-family:FontAwesome;
	margin-right:6px;
	font-weight:normal;
}
.key-visual a:hover {
	background:#333;
}
.main-banner {
	background:#f0f0f0 url(../img/bg_halftone.png);
	padding:60px 0;
}
.main-banner a {
	text-decoration:none;
	color:#333;
}
.main-banner .main-banner-header {
	position:relative;
	width:1150px;
	margin:0 auto;
	height:60px;
}
.main-banner .main-banner-header h2 {
	position:absolute;
	top:0;
	left:0;
	font-size:24px;
	font-weight:bold;
	width:6em;
}
.main-banner .main-banner-header h2:after {
	position:absolute;
	content:" ";
	display:block;
	border-top:solid 2px #fb6400;
	top: -15px;
	width:48px;
}
.main-banner .main-banner-header p {
	position:absolute;
	top:8px;
	left:170px;
	font-size:14px;
}
.main-banner ul {
	clear:both;
	width:1100px;
	margin:0 auto;
	display:flex;
}
.main-banner ul li {
	position:relative;
	width:340px;
	margin-right:40px;
}
.main-banner ul li:last-child {
	margin:0;
}
.main-banner ul li a img {
	border:1px #e7e7e7 solid;
	margin-bottom:15px;
}
.main-banner ul li a:hover {
	color:#666;
}
.main-banner ul li a:hover img {
	opacity:0.8;
}
.main-banner ul li .tag {
	position:absolute;
	left:-10px;
	top:10px;
	background:#F60;
	color:#FFF;
	font-size:12px;
	padding:5px;
	z-index:1000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}
.main-banner ul li dl dt {
	margin-bottom:5px;
	font-weight:bold;
	font-size:16px;
}
.main-banner ul li dl dt:before {
	content: "\f0da";
	font-family:FontAwesome;
	margin-right:4px;
	font-weight:normal;
	color:#fb6400;
}
.main-banner ul li dl dd {
	font-size:14px;
}
.main .contents h3 {
	padding-bottom:10px;
	border-bottom: solid 2px #cecece;
	position: relative;
	margin-bottom:20px;
	font-weight:bold;
	font-size:18px;
}
.main .contents h3:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #fb6400;
	bottom: -2px;
	width: 10%;
}
.main .contents h3 span a {
	display:block;
	float:right;
	font-size:12px;
	border:#d4d4d3 1px solid;
	padding:5px 12px;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
	text-decoration:none;
	color:#333;
}
.main .contents h3 span a:hover {
	background:#eaeaea;
}
.main .contents h3 span a:before {
	content: "\f0da";
	font-family:FontAwesome;
	margin-right:4px;
	font-weight:normal;
	color:#fb6400;
}
.main .contents ul {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:30px;
}
.main .contents ul li {
	width:50%;
	display: table;
	box-sizing: border-box;
	margin-bottom:10px;
}
.main .contents ul li a {
	color:#333;
	text-decoration:none;
}
.main .contents ul li a:hover {
	color:#999;
}
.main .contents ul li:nth-of-type(odd) {
	padding-right:10px;
}
.main .contents ul li:nth-of-type(even) {
	padding-left:10px;
}
.main .contents ul li .works-photo,
.main .contents ul li .works-txt {
	position:relative;
	display: table-cell;
	vertical-align:top;
	width:50%;
}
.main .contents ul li a:hover img {
	opacity:0.8;
}
.main .contents ul li .works-photo {
	padding-right:15px;
}
.main .contents ul li .works-photo p {
	position:absolute;
	background:url(../img/bg_op80.png);
	top:5px;
	left:0;
	padding:5px;
	color:#FFF;
	font-size:12px;
}
.main .contents ul li .works-txt h4 {
	font-size:16px;
	font-weight:bold;
	line-height:1.8;
}
.main .contents ul li .works-txt h4:before {
	content: "\f0da";
	font-family:FontAwesome;
	margin-right:4px;
	font-weight:normal;
	color:#fb6400;
}
.main .contents ul li .works-txt p {
	font-size:14px;
	margin:0;
}
.main .contents ul li .works-txt .date {
	text-align:right;
	color:#999;
	margin-bottom:5px;
	font-size:12px;
}
.main .news dt {
	width:10em;
	float:left;
}
.main .news dt:before {
	content: "\f0da";
	font-family:FontAwesome;
	margin-right:4px;
	font-weight:normal;
	color:#fb6400;
}
.main .news dd {
	margin-bottom:1em;
	border-bottom:#CCC 1px dotted;
	padding-bottom:5px;
}
}