@charset "UTF-8";

/* common
------------------------------------------------*/
#main h2 {
	color: #65b843;
}

@media screen and (max-width:949px) {
	#container {
		position: relative;
		border-top: 4px solid #555;
	}

	#container:before,
	#container:after {
		display: block;
		content: "";
		background: -webkit-linear-gradient(#555555 0%, #ffffff 35%, #ffffff 100%);
		background: -o-linear-gradient(#555555 0%, #ffffff 35%, #ffffff 100%);
		background: linear-gradient(#555555 0%, #ffffff 35%, #ffffff 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555', endColorstr='#ffffff', GradientType=0);
		height: 100%;
		width: 4px;
	}

	#container:before {
		position: absolute;
		left: 0;
	}

	#container:after {
		position: absolute;
		right: 0;
		top: 0;
	}

	#gnav .allnav {
		top: -29px;
		left: 50%;
		width: 100%;
		margin: 0 0 0 -50%;
	}
}

@media screen and (max-width:639px) {
	#container {
		border: 0;
	}

	#container:before,
	#container:after {
		height: 0;
	}
}

/* sp-info
------------------------------------------------*/
#sp-info {
	display: none;
}

@media screen and (max-width:639px) {
	#sp-info {
		display: block;
		margin: 20px 0 0;
	}

	#sp-info h3 {
		background: url(img/bg-spinfo.gif) no-repeat 0 0;
		margin: 0 0 10px;
		padding: 0 0 0 65px;
		line-height: 25px;
		font-size: 20px;
		font-weight: bold;
		color: #65b843;
	}

	#sp-info dl {
		margin: 0 0 10px;
	}

	#sp-info dl dt {
		padding: 5px 0 0;
	}

	#sp-info dl dd {
		border-bottom: 1px dotted #d9d9d9;
		padding: 0 0 10px;
	}
}

/* info-box
------------------------------------------------*/
div.info-box {
	margin-bottom: 15px;
	box-sizing: border-box;
	padding: 10px;

	text-align: center;
	font-weight: bold;
	font-size: 27px;
	border-radius: 10px;
	background: #e55167;
	color: #fff;
}

@media screen and (max-width:639px) {
	div.info-box {
		font-size: 17px;
	}

}

/* blogbox
------------------------------------------------*/
#blogbox {
	float: left;
	width: 510px;
	margin: 0 0 20px;
	font-size: 14px;
}

#main #blogbox h2 {
	background: none;
	margin: 0 0 10px;
	padding: 0;
}

#blogbox h2 span {
	display: block;
	width: 100%;
	height: 0;
	border: 4px solid #65b843;
	border-radius: 4px;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

#blogbox a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

#blogbox dl {
	background: #ffeff1 url(img/bg-blogbox.png);
	background: url(img/bg-blogbox.png), -moz-linear-gradient(top, #f2fbd2 0%, #ffffff 100%);
	background: url(img/bg-blogbox.png), -webkit-linear-gradient(top, #f2fbd2 0%, #ffffff 100%);
	background: url(img/bg-blogbox.png), linear-gradient(to bottom, #f2fbd2 0%, #ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2fbd2', endColorstr='#ffffff', GradientType=0);
	background-repeat: no-repeat;
	background-position: right bottom;
	border-radius: 10px;
	padding: 5px 3px 15px;
	zoom: 1;
}

#blogbox dl:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

#blogbox dl dt {
	clear: both;
	float: left;
	background: url(img/bg-blogbox-list.gif) no-repeat right center;
	width: 95px;
	padding: 10px 45px 10px 10px;
	font-size: 18px;
}

#blogbox dl dd {
	background: url(img/bg-blogbox-line.gif) repeat-x left bottom;
	padding: 10px 0 10px 160px;
	font-size: 18px;
}

@media screen and (max-width:949px) {
	#blogbox {
		float: none;
		width: 100%;
		margin: 20px 0;
	}
}

@media screen and (max-width:639px) {
	#main #blogbox h2 img {
		max-width: 100%;
		height: auto;
	}
}

@media screen and (max-width:480px) {
	#blogbox dl dt {
		width: 85px;
		font-size: 16px;
	}

	#blogbox dl dd {
		padding: 10px 10px 10px 150px;
		font-size: 16px;
	}
}

/* movie
------------------------------------------------*/
#movie {
	float: right;
	background: url(img/bg-movie.gif) no-repeat left top;
	width: 330px;
	height: 255px;
	margin: 20px 0 0;
	padding: 25px 0 0 25px;
}

#movie object {
	position: relative;
	z-index: 1;
}

@media screen and (max-width:949px) {
	#movie {
		float: none;
		background: none;
		width: 100%;
		height: auto;
		margin: 0 0 10px;
		padding: 0;
	}

	#movie .textwidget {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}

	#movie .textwidget iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

/* bnr
------------------------------------------------*/
#bnr {
	zoom: 1;
	clear: both;
	margin: 0 0 30px;
}

#bnr:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

#bnr ul {
	display: flex;
	justify-content: center;
}

#bnr li {
	width: 32%;
	/* display: inline;*/
	margin: 0 10px 0 0;
}

#bnr li:last-child {
	margin: 0;
}

#bnr li img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}

@media screen and (max-width:949px) {
	#bnr ul {
		flex-wrap: wrap;
	}

	#bnr li {
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	/*#bnr li {
		display: block;
		float: none;
        text-align: center;
		margin: 0;
        margin-bottom: 10px;
        margin-bottom: 10px;
	}*/
	#bnr li img {
		max-width: 100%;
		height: auto;
	}
}

#bnr p {
	margin-top: 20px;
}

/* pickup
------------------------------------------------*/
#pickup {
	background: url(img/bg-pickup.gif) no-repeat left bottom;
	margin: 0 0 30px;
	padding: 0 0 15px 15px;
	zoom: 1;
}

#pickup:before {
	content: " ";
	display: block;
	background: url(img/bg-pickup-top.gif) no-repeat 0 0;
	width: 100%;
	height: 10px;
	margin: 0 0 0 -15px;
	padding: 0 15px 0 0;
}

#pickup:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

#pickup div {
	float: left;
	background: #fff;
	border: 1px solid #dfe8bf;
	width: 162px;
	margin: 0 11px 0 0;
}

#pickup div h3 {
	border-bottom: 2px solid #65b843;
	margin: 7px 2px 5px;
	padding: 0 0 5px 5px;
	text-align: center;
}

#pickup div p {
	margin: 0 5px 5px;
	line-height: 1.5;
	font-size: 14px;
}

#pickup div p a {
	font-weight: bold;
}

#pickup p.more {
	display: none;
}


@media screen and (max-width:949px) {
	#pickup {
		background: none;
		padding: 0;
	}

	#pickup:before {
		background: none;
		height: 0;
	}

	#pickup div {
		clear: both;
		float: none;
		width: 100%;
		border: 0;
		margin: 0;
	}

	#pickup div h3 {
		display: inline-block;
		background: #65b843;
		border: 0;
		border-radius: 5px;
		margin: 0 0 5px 120px;
		padding: 2px 15px;
		text-align: left;
		font-size: 16px;
		font-weight: bold;
		color: #fff;
	}

	#pickup div p img {
		float: left;
		width: 105px;
		height: auto;
		margin: -30px 10px 20px 0;
	}

	#pickup p.more {
		clear: both;
		display: block;
	}

	#pickup p.more a {
		display: block;
		border: 1px solid #888;
		border-radius: 5px;
		padding: 10px 0;
		text-align: center;
		text-decoration: none;
		font-size: 15px;
		color: #888;
	}

	#pickup p.more a:after {
		content: ">";
		float: right;
		margin: 0 10px 0 0;
	}
}

@media screen and (max-width:639px) {
	#pickup {
		display: none;
	}
}


/* news
------------------------------------------------*/
.news {
	background: url(img/bg-news.gif) no-repeat left bottom;
	margin: 0 0 30px;
	padding: 0 0 20px;
	zoom: 1;
}

.news:before {
	content: " ";
	display: block;
	background: url(img/bg-news-top.gif) no-repeat 0 0;
	width: 100%;
	height: 10px;
}

.news:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

.news h2 {
	margin: 0 10px;
}

.news h2 span {
	display: block;
	width: 100%;
	height: 0;
	border: 2px solid #65b843;
	border-radius: 2px;
	margin: 0 0 0 -50px;
	padding: 0 45px 0 0;
}

.news img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 5px auto;
}

.news div {
	width: 49%;
}

.news .news01 {
	float: left;
}

.news .news02 {
	float: right;
}

.news .news03 {
	float: left;
}

.news .news04 {
	float: right;
	box-sizing: border-box;
	padding: 0 20px;
}

.news dl {
	padding: 5px 10px 0;
	zoom: 1;
}

.news dl:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

.news dl dt {
	clear: both;
	float: left;
	width: 75px;
	padding: 5px 35px 5px 10px;
}

.news dl dd {
	border-bottom: 1px dotted #d9d9d9;
	padding: 5px 0 5px 115px;
}

.news dl+p {
	margin: 20px 15px 0;
	font-size: 14px;
	color: #777;
}

.news .news04 ul {
	border-top: 1px dotted #d9d9d9;
	margin: 20px 0 0;
	padding: 10px 0 0;
}


@media screen and (max-width:949px) {
	.news {
		background: none;
		padding: 0;
	}

	.news:before {
		background: none;
		height: 0;
	}

	.news h2 {
		margin: 0 0 10px;
	}

	.news dl {
		margin: 0 0 20px;
		padding: 0;
	}

	.news div {
		width: 100%;
	}

	.news .news01,
	.news .news02,
	.news .news03,
	.news .news04 {
		float: none;
	}
}

@media screen and (max-width:639px) {
	.news dl dt {
		float: none;
		width: 100%;
		padding: 5px 0 0;
	}

	.news dl dd {
		padding: 0 0 10px;
	}

	.news .news04 {
		padding: 0;
	}

	.news .news04 .sp-cp {
		display: none;
	}

	.news .news04 ul {
		border-top: none;
	}
}

/* mobile
------------------------------------------------*/
p#mobile {
	float: left;
	margin: 0 0 20px;
	zoom: 0.9;
	width: 650px;
}

p#mobile:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	line-height: 0;
	visibility: hidden;
}

p#mobile img.f-r {
	float: right;
	margin: 0 0 0 15px;
}


@media screen and (max-width:949px) {
	p#mobile {
		display: none;
	}
}

/* bnrarea
------------------------------------------------*/
#bnrarea {
	overflow: hidden;
	float: right;
	width: 290px;
	/*height: 102px;*/
	height: 80px;
	margin: 0 0 30px;
}

#bnrarea li {
	float: left;
	margin: 0 10px 0 0;
}


@media screen and (max-width:949px) {
	#bnrarea {
		float: none;
		width: 100%;
	}

	#bnrarea li {
		float: none;
		margin: 0;
		text-align: center;
	}
}

/* responsive
------------------------------------------------*/
.pc-hidden {
	display: none;
}

@media screen and (max-width:639px) {
	.pc-hidden {
		display: inline !important;
	}

	.sm-hidden {
		display: none;
	}
}