@charset "UTF-8";


/*---------- ページ全体の指定 ----------*/

html, body, header, section, article, nav, footer,
div, span, p, h1, h2, h3, h4,
ul, ol, li, dl, dt, dd,
table, tr, th, td, tbody, thead, tfoot {
  margin: 0;
  padding: 0;
}

img {border: 0;}

body {
  width: 100%;
  background-color: #ffffff;
  font: 14px/1.231 'ヒラギノ角ゴ pro W3', "Hiragino KaKu Gothic Pro", Osaka, sans-serif;
  line-height: 1.7;
}

a:link {
  color: #005ebb;
}

a:hover {
  color: #004080;
}

a:visited {
  color: #005ebb;
}


/*---------- ヘッダー ----------*/

header {
  width: 100%;
}

header h1 {
  padding: 2px 0 2px 8px;
  text-align: left;
  font-size: 12px;
  color: #ffffff;
  background-color: #167ee5;
}

header h2 {
  padding: 8px 0 0 5px;
  font-size: 18px;
  text-align: left;
  color: #333333;
}

header h2 a {
  color: #333333 !important;
  font-size: 18px;
  text-decoration: none;
}

header h2 a:hover {
  color: #004080 !important;
  font-size: 18px;
  text-decoration: underline;
}

#page_top {
  margin: 0;
  padding: 0;
}


/*---------- コンテンツ ----------*/

article {
  width: 100%;
  margin: 0 0 8px 0;
}

section {
  width: 100%;
  margin: 0 0 8px 0;
}

section h2 {
  margin: 0 0 8px 0;
  padding: 5px 0 3px 22px;
  font-size: 14px;
  border-bottom: solid 1px;
  border-bottom-color: #cccccc;
  background: url(img/h_icon.gif) no-repeat;
  background-position: 5px;
  background-color: #eeeeee;
}

section p {
  margin: 0 0 8px 0;
  padding: 3px 8px 3px 8px;
  line-height: 1.8;
}

section .gray_bg {
  margin: 8px 0 8px 0;
  padding: 2px 8px 2px 8px;
  line-height: 1.7;
  letter-spacing: 1px;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #eeeeee;
}

section .gray_bg p {
  padding: 3px;
  line-height: 1.7;
  letter-spacing: 1px;
}

section img.picture {
  margin: 0 10px 10px 0;
  float: left;
}

section img.picture_r {
  margin: 0 0 10px 10px;
  float: right;
}

section span.red {
  color: #e60033;
}

section span.red_b {
  color: #e60033;
  font-weight: bold;
}

section span.blue {
  color: #007bbb;
}

section span.pink {
  color: #c53d43;
}

section span.brown {
  color: #993300;
}

section span.brown_b {
  color: #993300;
  font-weight: bold;
}

section span.green {
  color: #00ae4f;
}

section table.table_line {
  width: 100%;
  border-collapse: collapse;
  border: solid 1px #bbbbbb;
  margin : 8px  0 8px 0;
}

section td.table_line {
  border-collapse: collapse;
  border: solid 1px #bbbbbb;
  padding : 8px 10px 8px 10px;
}

section .btn {  
  text-decoration: none;  
  font-weight: bold;  
  text-align: center;  
  font-size: 15px;  
  display: block;  
  width: 85%;
  margin: 0.5em auto;
  padding: 10px 10px;  
} 

section .btn {  
  background: -moz-linear-gradient(top,#99CC00 0%,#339900);  
  background: -webkit-gradient(linear, left top, left bottom, from(#99CC00),to(#339900));  
  color:#FFF;  
  border-radius: 2px;  
  -moz-border-radius: 2px;  
  -webkit-border-radius: 2px;  
  border: 1px solid #01661C;  
  -moz-box-shadow: 0px 1px 2px rgba(000,000,000,0.2),inset 0px -1px 0px rgba(74,201,0,1);  
  -webkit-box-shadow: 0px 1px 2px rgba(000,000,000,0.2),inset 0px -1px 0px rgba(74,201,0,1);  
  text-shadow: 0px -1px 0px rgba(000,000,000,0),0px 1px 0px rgba(0,0,0,0.5);  
} 

.list3 ul{
border-bottom: 1px solid #ccc;
}
.list3 ul li{
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#f0f0f0));
background: linear-gradient(#fff, #f0f0f0);
border-top: 1px solid #ccc;
height: 100px;
margin: 0px;
}
.list3 ul li a{
background: url(list_mark1.png) no-repeat 100% 50%;
color: #666;
display: block;
height: 100px;
margin: 0;
padding: 0 20px 0 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-decoration: none;
}
.list3 ul li img{
float: left;
height: 100px;
width: 100px;
margin-right: 10px;
}
.list3 ul li a strong{
color: #000;
display: block;
font-weight: bold;
padding-top: 5px;
}

section dl.new {
	width: 95%;			/*What's Newボックスの幅*/
	height: 150px;			/*What's Newボックスの高さ*/
	overflow: auto;
	padding: 10px 0px 10px 10px;
	margin-right: 0px;
	margin-left: 0px;
}

section dl.new dt {
	font-weight: bold;	/*日付の色を太字にする*/
}

section dl.new dd {
	border-bottom: 1px solid #bfbfbf;	/*日付ごとの下線*/
}


/* Browser Resets
*********************************/
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;}

/* Icon Fonts
*********************************/
/* Font-face Icons */
@font-face {
	font-family: 'flexslider-icon';
	src:url('fonts/flexslider-icon.eot');
	src:url('fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'),
		url('fonts/flexslider-icon.woff') format('woff'),
		url('fonts/flexslider-icon.ttf') format('truetype'),
		url('fonts/flexslider-icon.svg#flexslider-icon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* FlexSlider Necessary Styles
*********************************/
.flexslider {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: "\0020"; 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 60px; background: #fff; border: 4px solid #fff; position: relative; -webkit-border-radius: 4px; -moz-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; -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); 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; -o-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 {*height: 0;}
.flex-direction-nav a  { display: block; width: 40px; height: 50px; margin: -20px 0 0; position: absolute; top: 50%; z-index: 10; overflow: hidden; opacity: 0; cursor: pointer; color: rgba(0,0,0,0.8); text-shadow: 1px 1px 0 rgba(255,255,255,0.3); -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }
.flex-direction-nav .flex-prev { left: -50px; }
.flex-direction-nav .flex-next { right: -50px; text-align: right; }
.flexslider:hover .flex-prev { opacity: 0.7; left: 10px; }
.flexslider:hover .flex-next { opacity: 0.7; right: 10px; }
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover { opacity: 1; }
.flex-direction-nav .flex-disabled { opacity: 0!important; filter:alpha(opacity=0); cursor: default; }
.flex-direction-nav a:before  { font-family: "flexslider-icon"; font-size: 40px; display: inline-block; content: '\f001'; }
.flex-direction-nav a.flex-next:before  { content: '\f002'; }

/* Pause/Play */
.flex-pauseplay a { display: block; width: 20px; height: 20px; position: absolute; bottom: 5px; left: 10px; opacity: 0.8; z-index: 10; overflow: hidden; cursor: pointer; color: #000; }
.flex-pauseplay a:before  { font-family: "flexslider-icon"; font-size: 20px; display: inline-block; content: '\f004'; }
.flex-pauseplay a:hover  { opacity: 1; }
.flex-pauseplay a.flex-play:before { content: '\f003'; }

/* Control Nav */
.flex-control-nav {width: 100%; position: absolute; bottom: -60px; text-align: center;}
.flex-control-nav li {margin: 0 6px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 11px; height: 11px; 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; -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); -moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); -o-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); 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 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .flex-active {opacity: 1; cursor: default;}

@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev { opacity: 1; left: 10px;}
  .flex-direction-nav .flex-next { opacity: 1; right: 10px;}
}

/*---------- ナビ ----------*/

nav {
  width: 100%;
  text-decoration: none;
  margin: 0 0 10px 0;
  background: url(img/nav_bg.gif) repeat-x;
}

nav h2 {
  padding: 5px 0 3px 22px;
  font-size: 14px;
  border-bottom: solid 1px;
  border-bottom-color: #cccccc;
  background: url(img/h_icon.gif) no-repeat;
  background-position: 5px;
  background-color: #eeeeee;
}

nav ul {
  width: 100%;
  border-top: solid 1px;
  border-top-color: #cccccc;
}

nav li {
  width: 100%;
  list-style: none;
  text-align: center;
}

nav li a {
  padding: 10px;
  display: block;
  color: #005ebb !important;
  font-weight: bold;
  text-decoration: none;
  border-bottom: solid 2px;
  border-bottom-color: #cccccc;
  background: url(img/nav_bg.gif) repeat-x;
}

nav li a:hover {
  color: #004080 !important;
  display: block;
  font-weight: bold;
  text-decoration: none;
  border-bottom: solid 2px;
  border-bottom-color: #cccccc;
  background: url(img/nav_bg_hover.gif) repeat-x;
}


/*---------- トップに戻る ----------*/

#page_back {
  margin: 0 0 8px 0;
  padding: 0 6px 0 0;
  text-align: right;
}


/*---------- フッター ----------*/

footer {
  width: 100%;
  padding: 10px 0 10px 0;
  color: #333333;
  text-align: center;
  border-top: solid 1px;
  border-top-color: #cccccc;
  background-color: #ffffff;
}

footer p {
  padding: 10px;
  color: #555555;
}

footer a {
  color: #555555 !important;
}

footer a:hover {
  color: #777777 !important;
}

footer a:visited {
  color: #555555;
}

footer p.copy {
  padding: 10px;
  font-size: 12px;
  color: #555555;
}

footer p.copy a {
  color: #005ebb !important;
  text-decoration: none;
}

footer p.copy a:hover {
  color: #004080 !important;
  text-decoration: underline;
}

footer p.copy a:visited {
  color: #005ebb;
  text-decoration: none;
}
