@charset "shift-jis";



/*------------------------------------------
    default settings
-------------------------------------------*/

body,div,dl,dt,dd,ul,li,
h1,h2,h3,h4,h5,h6,
pre,form,fieldset,textarea,p,
blockquote,th,td,img{
    margin:0;
    padding:0;
    }
fieldset,iframe{
    border:none;
    }
img{
	border:none;
	vertical-align:top;
	}
ul li{
    list-style:none;
    }
	
body{
	background: #cd0200;
	font-size: 12px;
	font-family: Meiryo, 'メイリオ', 'Lucida Grande', Verdana, 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', sans-serif;
    color: #000000;
	margin: 15px 0 0 0;
	padding: 0;
    }
	
html:not([lang*=""]){
    overflow-y:scroll;
    }/* for firefox */ 
html:not(:only-child:only-child){
	overflow:scroll;
	}/* for chrome */

a {
	color: #9f0500;
	outline: none;
	text-decoration: underline;
}

a:hover {
	color: #e76d00;
	text-decoration: underline;
	}
	
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}
.clear {
	clear: both;
	}

h1 {
	display: none;
	}

p {
	margin: 0 0 30px 0;
	}
	
p.sb {
	margin: 0 0 10px 0;
	}

p.small {
	font-size: 10px;
	line-height: 1.3em;
	margin: 0 0 30px 0;
	}

/*------------------------------------------
    frame
-------------------------------------------*/

.centerFrameInner {
	width: 774px;
	margin: 0 auto;
	}
	


/*------------------------------------------
    hmenu
-------------------------------------------*/

.headerImg ul,
.headerImgC ul {
	width: 370px;
	height: 13px;
	left: 640px;
	position: relative;
	}
.headerImg li,
.headerImgC li {
	display: inline;
	}
.headerImg li img,
.headerImgC li img {
	margin: 0 5px 0 0;
	}


/*------------------------------------------
    tmenu
-------------------------------------------*/

.centerFrameInner ul.tmenu {
	width: 618px;
	height: 36px;
	float: left;
	}
.centerFrameInner ul.tmenu li {
	display: inline;
	padding: 0;
	}
.centerFrameInner ul.tmenu li img {
	float: left;
	}

.centerFrameInner form.key {
	float: right;
	}
.centerFrameInner form.key input.txtfm {
	width: 70px;
	}


/*------------------------------------------
    footer
-------------------------------------------*/

.footer {
	width: 670px;
	margin: 0 auto;
	}

.footer ul {
	float: left;
	}
.footer li {
	margin: 0 10px 0 0;
	padding: 0 0 0 15px;
	display: inline;
	background: url(../img/common/icon_green.jpg) no-repeat left;
	}
	
.footer p {
	float: right;
	font-size: 10px;
	color: #777777;
	}
	
.footerimg {
	background: url(../img/common/bg_bottom.jpg) no-repeat;
	font-size: 1px;
	width: 912px;
	height: 41px;
	}
	
.copyright {
	font-size: 11px;
	font-family: Arial, Helvetica, sans-serif;
	margin: 5px 0 15px 0;
	text-align: center;
	color: #ffffff;
	}

.footerlink {
	width: 750px;
	margin: 0 auto;
	}
	
.footerlink li {
	font-size: 10px;
	background: url(../img/common/icon_footerlink.jpg) no-repeat left;
	padding: 0 0 0 16px;
	margin: 7px 8px 0 0;
	float: left;
	display: inline;
	height: 15px;
	float: left;
	}
.footerlink img {
	float: right;
	margin: 8px 0 0 0;
	}
li.footermenu-sp {
	display: none !important;
}
	
.pagetop {
	clear: both;
	font-size: 12px;
	text-align: right;
	border-top: double 4px #cccccc;
	padding: 8px 15px 0 0;
	margin: 20px 0;
	background: url(../img/common/icon_pagetop.gif) no-repeat right;
	}


/*------------------------------------------
    added for mobile
-------------------------------------------*/	

#header,
.ticker-sp,
h2.title-ticker,
.flexslider,
.banner-top,
.title-info,
.info-top {
	display: none;
}
	
	
	
@media only screen and (min-width: 320px) and (max-width: 480px) {

	body {
		margin: 0 0 0 0;
		font-size: 100%;
		position: relative;
    	right: 0;
    	overflow-x: hidden;
		background: #fff;
	}
	
	#container {
		margin: 0 auto !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	.headerImg {
		display: none;
	}
	
	ul.tmenu {
		display: none;
	}
	
	.form {
		display: none;
	}

	.middleBg {
		background: none !important;
	}

	.headerFlash  {
		display: none;
	}

	#header {
		display: block;
		position: relative;
		background: #cd0200;
		padding: 5px 0;
	}
	
	#header h1 {
		width: 100%;
		display: block;
	}

	#header h1 img {
		width: 100%;
	}
	
	#header img.btn-program {
		width: 10%;
		float: left;
		padding: 0 0 0 10px;
	}

	#header img.btn-menu {
		width: 10%;
		float: right;
		padding: 0 10px 0 0;
	}
	
	#header h1 img.logo {
		width: 50%;
		position: absolute;
		top: 10px;
		left: 25%;
	}	
	
	#header ul {
		position: fixed;
    	top: 0;
    	right: -160px;
    	width: 160px;
    	height: 100%;
    	background: #fdf1f1;
		z-index: 999;
	}
	
	#header:after{
		content: "."; 
		display: block; 
		height: 0; 
		font-size:0;	
		clear: both; 
		visibility:hidden;
	}
	
	#header ul li a {
		text-decoration: none;
		display: block;
		padding: 20px 10px 20px 20px;
		border-bottom: 1px solid #f4c1c1;
		background: url(../img/sp/icon_menu.png) no-repeat 3%;
		background-size: 8%;
		font-size: 80%;
	}
	
	.centerFrameInner,
	.knewsFrame-l {
		width: 100vw;
		margin: 0 auto;
	}
	
	.centerFrame {
		width: 100% !important;
		float: none !important;
		margin: 0 !important;
	}
	
	.bannerFrameR {
		width :100%;
		float: none;
		padding: 0;
	}
	
	#bansen table {
		margin: 0 0 0 0;
		width: 100%;
	}
	
	.banner-top {
		width: 95%;
		margin: 25px auto 10px auto;
		display: block;
	}
	
	.title-info {
		width: 95%;
		display: block !important;
		box-sizing: border-box;
		margin: 0 auto;
	}

	.title-info img {
		width: 100%;
		display: block;
	}
	
	.info-top {
		width: 95%;
		margin: 0 auto;
		padding: 0 0 10px 0;
		display: block !important;
		box-sizing: border-box;
		background: #ce0201;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
	}
	
	.info-top p {
		width: 88%; 
		font-size: 90%;
		margin: 0 auto;
		display: block !important;
		background: #fff;
		padding: 10px;
	}
	
	.banner-top img,
	.title-info img {
		width: 100%;
		display: block;
	}
	
	
	
/* ticker
-------------------------------------------*/		

	.ticker {
		display: none;
	}
	
	h2.title-ticker {
		display: block;
		padding: 5px 0 0 0;
	}
	
	h2.title-ticker img {
		position: relative;
		display: block;
		width: 30%;
	}
	
	.ticker-sp {
		display: block;
		margin: 0 auto;
		padding: 0;
		width: 100%;
		background: #fff7eb;
		box-sizing: border-box;
		text-align: left;
		border: 1px solid #ff9800;
		position: relative;
		overflow: hidden;
	}

	.ticker-sp ul {
		width: 100%;
		position: relative;
	}

	.ticker-sp ul li {
		width: 100%;
		display: none;
	}

	.ticker-sp ul li a {
		text-decoration: none;
		color: #000 !important;
		padding: 0 0 0 0 !important;
		font-size: 70% !important;
		top: 10% !important;
	}
	
	#newsitick_outside {
		width: 100% !important;
	}
	
	.footerTop {
		width: 100% !important;
		height: auto !important;
		background: none !important;
	}
	
	.footerlink {
		width: 95%;
		margin: 0 auto;
	}
	
	.footerlink {
		width: 100% !important;
		margin: 0 auto;
	}

	.footerlink li {
		font-size: 80%;
		margin: 0 auto;
		padding: 0;
		display: block;
		height: auto;
		float: none;
		background: none;
	}
	
	.footerlink li a {
		background: #eaeaea url(../img/sp/arrow_footerlink.gif) no-repeat  97% 50%;
		background-size: 2%;
		padding: 0 0 0 10px;
		margin: 0 0 0 0;
		float: none;
		display: block;
		height: auto;
		line-height: 3em;
		text-decoration: none;
		border-bottom: 1px solid #bbbbbb;
	}
	
	.footerlink img {
		float: none;
		margin: 10px auto;
		display: block;
	}
	
	li.footermenu-sp {
		display: block !important;
	}

	
	
/* slider
-------------------------------------------*/

	.flexslider {
		display: block;
		margin: 0;
		padding: 0;
	}
	
	.flexslider .slides > li {
		display: none;
		-webkit-backface-visibility: hidden;
	} /* Hide the slides before the JS is loaded. Avoids image jumping */
	
	.flexslider .slides img {
		width: 100%;
		display: block;
	}
	
	.flex-pauseplay span {
		text-transform: capitalize;
	}
	
	/* Clearfix for the .slides element */
	.slides:after {
		content: ".";
		display: block;
		clear: both;
		visibility: hidden;
		line-height: 0;
		height: 0;
		}
		 
	html[xmlns] .slides {
		display: block;
	}
	 
	* html .slides {
		height: 1%;
	}
	
	/* No JavaScript Fallback */
	/* If you are not using another script, such as Modernizr, make sure you
	 * include js that eliminates this class on page load */
	.no-js .slides > li:first-child {
		display: block;
	}
	
	
	/* FlexSlider Default Theme
	*********************************/
	.flexslider {
		margin: 0 0 10px;
		background: #fff;
		border: 4px solid #fff;
		position: relative;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		-o-border-radius: 4px;
		border-radius: 4px;
		box-shadow: 0 1px 4px rgba(0,0,0,.2);
		-webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2);
		-moz-box-shadow: 0 1px 4px rgba(0,0,0,.2);
		-o-box-shadow: 0 1px 4px rgba(0,0,0,.2);
		zoom: 1;
	}
	
	.flex-viewport {
		max-height: 2000px;
		-webkit-transition: all 1s ease;
		-moz-transition: all 1s ease;
		transition: all 1s ease;
	}
		
	.loading .flex-viewport {
		max-height: 300px;
	}
		
	.flexslider .slides {
		zoom: 1;
	}
	
	.carousel li {margin-right: 5px}
	
	
	/* Direction Nav */
	.flex-direction-nav a {
		width: 30px;
		height: 30px;
		margin: -20px 0 0;
		display: block;
		background: url(/img/common/global/bg_direction_nav.png) no-repeat 0 0;
		position: absolute;
		top: 50%;
		cursor: pointer;
		text-indent: -9999px;
		opacity: 0;
		-webkit-transition: all .3s ease;
	}
	
	.flex-direction-nav .flex-next {
		background-position: 100% 0;
		right: -36px;
	}
	
	.flex-direction-nav .flex-prev {
		left: -36px;
	}
	
	.flexslider:hover .flex-next {
		opacity: 0.8;
		right: 5px;
	}
	
	.flexslider:hover .flex-prev {
		opacity: 0.8;
		left: 5px;
	}
	
	.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
		opacity: 1;
	}
	
	.flex-direction-nav .disabled {
		opacity: .3!important;
		filter:alpha(opacity=30);
		cursor: default;
	}
	
	/* Control Nav */
	.flex-control-nav {
		width: 100%;
		margin: 0 auto !important;
		position: absolute;
		top: 105%;
		text-align: center;
		padding: 0;
	}
	
	.flex-control-nav li {
		margin: 0 2px;
		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	
	.flex-control-paging li a {
		width: 6px;
		height: 6px;
		display: block;
		background: #666;
		background: rgba(0,0,0,0.5);
		cursor: pointer;
		text-indent: -9999px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		-o-border-radius: 20px;
		border-radius: 20px;
		box-shadow: inset 0 0 3px rgba(0,0,0,0.3);
	}
	
	.flex-control-paging li a:hover {
		background: #333;
		background: rgba(0,0,0,0.7);
	}
	
	.flex-control-paging li a.flex-active {
		background: #000;
		background: rgba(0,0,0,0.9);
		cursor: default;
	}
	
	.flex-control-thumbs {
		margin: 5px auto !important;
		position: static;
		overflow: hidden;
		width: 100%;
		padding: 0;
	}
	
	.flex-control-thumbs li {
		width: 25%;
		text-align: center;
		margin: 0;
	}
	
	.flex-control-thumbs img {
		width: 100%;
		display: block;
		opacity: .7;
		cursor: pointer;
	}
	
	.flex-control-thumbs img:hover {
		opacity: 1;
	}
	
	.flex-control-thumbs .active {
		opacity: 1;
		cursor: default;
	}

}