@charset "UTF-8";
/* CSS Document */

/* IMPORT RESET */
@import url("reset.css");

/* IMPORT 12 COLUMN RESPONSIVE GS */
@import url("responsive.gs.12col.css");

/* IMPORT FONT-AWESOME */
@import url("font-awesome.min.css");


/* body,html */
*+html body {　　　　　/*IE7だけに適用*/
   overflow-y:auto;
}

body {
   overflow-y:scroll;
}

body,html {
	font-size:90%;
}

html , body {height:100%;}
body > #wrapper {height:auto;}

@media screen and (min-width:769px) {
body,html {
	width:100%;
	min-width: 100% !important;
	height:100%;
	min-height:100% !important;
	margin:0;
	padding:0;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:.93em;
	line-height:2.5em;
	text-shadow:1px 1px 1px #fff;
	color:#292222;
	letter-spacing:1px;
	background:#e8efff;
	}
}

ul,ol {
}

li {
}

hr {
	margin:25px auto;
}

.strong {
	font-weight:600;
}

.clear {
	clear:both;
	}
	
.clear hr {
	display:none;
}

/* 表示させない */
@media only screen and (min-width: 320px)
and (max-width: 768px){
.none {display:none}
} 


/* pagetop要素 */
#pagetop {
  display: none;
  position: fixed;
  bottom: 10px;
  right: 10px;
  padding: 5px;
  cursor: pointer;
}

/* img */
img {
max-width: 100%;
height: auto;
width /***/:auto;　
}

@media screen and (min-width:769px) {
img {
height: auto;
width /***/:auto;
margin:0;
}
}


/* br */
.br-none{
display:block;
}

br{
display:none;
}

@media (min-width: 769px) {
.br-none {
display:none;
}
br {
display:block;
}
}


#menuList .fa { padding-right:0em; }
.fa {
padding-right:0.5em;
}



/* h1, h2, h3, h4, h5, h6 */
h1, h2, h3, h4, h5, h6 {
  padding-bottom: .5em;
  font-family: "futura-pt", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.3;
 }

h1 {
font-size:120%;
height:30px;
font-weight:bold;
	background:#d8e6ff;
width:100%;
padding-top:7px;
padding-left:0.3em;
 margin-bottom: 1em;
}

@media (min-width: 769px) {
h1 {
font-size: 1.6em;
height:45px;
background:none;
padding-top:10px;
padding-left:0.3em;
 margin-bottom: 1em;
}
h1.h1 {
	border-left: solid 5px #681c1c;
	}
}



h2 {
  font-size: 1.4em;
}

h3 {
  font-size: 1.3em; }

h4 {
  font-size: 1.1em; }

h5 {
  font-size: 1.2em; }

h6 {
  font-size: 1em; }

.h-small {
	font-size:80%;
}


/* wrapper */
#wrapper {
	width:100%;
	margin:0;
	padding:0em 0 2em;
	background:#fff;
	/* box-shadow */
box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
-webkit-box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
-moz-box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
}

@media screen and (min-width:769px){
	#wrapper {
	height:100%;/* for IE6 */
	min-height:100%;
	width:100%;
	margin:85px 0 0 0;
	padding:2em 0 0em;
	background:#fff;
	/* box-shadow */
box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
-webkit-box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
-moz-box-shadow:rgba(186, 186, 186, 0.76) 0px 7px 8px 2px;
}
}

/* #contents */
#contents {
	width:100%;
	margin:auto;
}

@media screen and (min-width:769px){
#contents {
	width:790px;
	min-width:769px !important;
	float:left;
	margin:auto;
}
}

/* #side */
#side {
	width:100%;
	margin:auto;
}

@media screen and (min-width:769px){
	#side {
	width:200px;
	float:right;
	margin:auto;
}
}



/* hedaer */
header {
	width:100%;
	height:auto;
	margin:0px auto 0;
	border-top:solid 4px #399edd;
	background: #000;
	color:#fff;
	background: url("../img/head-bg.jpg") repeat;
}


@media screen and (min-width:769px){
header {
	width: 100%;
	height:86px;
	margin: 0;
    position: absolute;  
    top: 0px;  
    left: 0;
	z-index:999;
	border-bottom:0px solid #cca021;
}
}

/* .head */
.head {
	width:98%;
	height:auto;
	padding:0;
	margin:0 auto;
	margin-top: 60px; /* 固定ナビの高さ分のネガティブマージン */
	padding-top: -60px; /* 打ち消し用のパディング */
}

@media screen and (min-width:769px){
.head {
	width: 1000px;
	height: 95px;
	margin: auto;
	font-size:90%;
	padding: 0px 0 10px;
	text-align: center;
	clear: both;
}
}

/* .head a */
.head a {
	text-decoration:none;
	border:0;
}

/* #container */
#container {
	width: 100%;
	text-align: left;
	margin: 1% auto auto auto;
	padding: 20px 0;
	background:#ffffff;
}


@media screen and (min-width:769px){
	#container {
	width: 1000px;
	margin: 0px auto auto auto;
	padding: 0;
	z-index:2;
}
}


/* #main */
#main {
	width: 98%;
	text-align: left;
	margin: 0 auto auto auto;
	padding: 0;
}

@media screen and (min-width:769px){
#main {
	text-align: left;
	margin: 0px auto auto auto;
	padding: 0;
	z-index:2;
}
}


a {
		-moz-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, opacity 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, opacity 0.2s ease-in-out;
		-o-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, opacity 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, opacity 0.2s ease-in-out;
		transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, opacity 0.2s ease-in-out;
		color: #1954BC;
		text-decoration: none;
	}

a:hover {
			color: #278B33;
			border-bottom-color: transparent;
		}

#main a.example-image-link   {
	border: none;
}

#main p {
  padding-bottom: 1.5em;
  -webkit-text-size-adjust: none; }



/* .secondary */
.secondary {
  width: auto;
  text-transform: none;
  color: #333;
  background: #fff;
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4); }
  .secondary .container {
    padding: 5em 1em 4em 1em; }
    @media (min-width: 768px) {
      .secondary .container {
        padding: 5em 0 4em 0; } }
    .secondary .container#puzzle {
      padding-top: 0; }
  .secondary h1 {
    padding-bottom: 0;
    color: #666; }
    .secondary h1 span {
      font-style: italic; }
  .secondary h2 {
    padding-bottom: 0;
    margin-top: 3em;
    color: #666; }
    .secondary h2 span {
      font-style: italic; }
  @media (min-width: 768px) {
    .secondary code {
      font-size: 1.06666666666667em; } }

/*	MAIN CONTAINER 
	Set the width to whatever you want the width of your site to be. */
.container {
  max-width: 1000px;
  margin: 0 auto; }

/*	SELF CLEARING FLOATS - CLEARFIX METHOD */
.container:after,
.row:after,
.col:after,
.clr:after,
.group:after {
  content: "";
  display: table;
  clear: both; }

.col img {
	width:100%;
	padding:;
}

.modules {
	min-width:20%;
	padding:5px 5px 0 5px;
	margin:0 1.5% 0 0;
	font-size:90%;
/* boxshadow*/
-webkit-box-shadow: 0px 0px 5px 0px rgba(179,179,179,1);
-moz-box-shadow: 0px 0px 5px 0px rgba(179,179,179,1);
box-shadow: 0px 0px 5px 0px rgba(179,179,179,1);
}
.modules img {
	width:100%;
}
.modules a {
	color:#333;
}
.modules a:hover {
	text-decoration:underline;
}

@media (max-width: 480px) {
.modules img {
	width:100%;
}
}


.modules1 {
	padding:4px;
	background-color: #F1F1F1;
	border:1px solid #F1F1F1;
	font-size:90%;
}
.modules1 img {
	width:99.9%;
}
.modules1 a {
	color:#333;
}
.modules1 a:hover {
	text-decoration:underline;
}
@media (max-width: 480px) {
.modules1 img {
	width:99%;
}
}

.list {
	border-bottom:1px dotted #535353;
	line-height:1.5em;
	margin-top:1em;
	white-space:normal;
		}
		
		.list a {
		color:#0099ff;
		}
		
		.list a:hover {
		color:#750000;
		}

.list:first-child {
	margin-top:0;
}

.list:before {
	font-family: 'FontAwesome';
	content: "\f0da";
	margin-right:.5em;
	color:#cfa321;
	}
	
.list-box {
	padding:1.2%;
	margin-bottom:2%;
	font-size:90%;
	border-radius:8px;
	background:#FDFDFD;
}

@media screen and (min-width:769px){
.list {
	border-bottom:1px dotted #535353;
	line-height:1.5em;
	margin-top:1em;
}
}

/* #top */
#top {
	width:99%;
	margin:auto;
	padding:10px 0;
	margin:0 auto 20px auto;
}
#top img {
	width:98%;
}

@media screen and (min-width:769px){
#top {
	width:1000px;
	padding:10px 0;
	margin:0 auto 20px auto;
}
#top img {
	width:100%;
	border:1px solid #eee;
}
}


/* .map */
.map {
	width:99%;
	height:auto;
}

@media screen and (min-width:769px){
.map {
	width:1000px;
	height:450px;
}
}


/* .frame */
.frame {
	padding:5px;
	font-size:90%;
}
.frame img {
	width:99.9%;
}

.frame-b {
	padding:8px;
	border:solid 1px #ccc;
	background:#eee;
	border-radius:8px;
}



/* .boxs */
.boxs {
/* boxshadow*/
-webkit-box-shadow: 0px 0px 6px 0px rgba(105,94,94,1);
-moz-box-shadow: 0px 0px 6px 0px rgba(105,94,94,1);
box-shadow: 0px 0px 6px 0px rgba(105,94,94,1);
}

/* .border */
.boxborder {
	padding:3%;
	margin-bottom:2%;
	font-size:95%;
	border:1px solid #ccc;
	border-radius:8px;
	background:#FDFDFD;
}


.boxborder-s {
	padding:1% 1% 0 1%;
	margin-bottom:0%;
	font-size:95%;
	border:1px solid #ccc;
	border-radius:8px;
	background:#FDFDFD;
	font-size:90%;
}

.boxborder-title {
	padding:1% 0 1% 3%;
	margin-bottom:0%;
	font-size:95%;
	border-radius:24px;
	background-color:#FDFDFD;
	font-size:95%;
	font-weight:600;
	background:url(../img/bg03.png) repeat-x bottom;
}


.boxborder_blue {
	padding:3% 3% 0 3%;
	margin-bottom:2%;
	font-size:95%;
	border:1px solid #ccc;
	border-radius:8px;
	background:#AEE9FF;
}

.boxborder_white {
	padding:1% 2% 0 2%;
	margin-bottom:2%;
	font-size:95%;
	border:1px solid #ccc;
	border-radius:8px;
	background:#fff;
	/* box-shadow */
box-shadow:rgba(212, 212, 212, 0.63) 2px 1px 2px 1px inset;
-webkit-box-shadow:rgba(212, 212, 212, 0.63) 2px 1px 2px 1px inset;
-moz-box-shadow:rgba(212, 212, 212, 0.63) 2px 1px 2px 1px inset;
}

/* 文字拡大他 */
.text-large {
	font-size:200%;
}

.text-small {
	font-size:80%;
}

.small {
	font-size:80%;
}

.textright {
	text-align:right;
}

.ti5 {
	text-indent:5em;
}

div .texttop {
	margin-top:2em;
}

.textcenter {
	text-align:center;
}
		
		.v-middle {
		vertical-align: middle;
		}
		
.textboder {
	border-bottom:1px dotted #ccc;
	margin-bottom:.5em;
}

.encircle {
	border:1px solid #ccc;
	border-radius:8px;
	padding:2% 2% 0;
	margin-bottom:1em;
	background:url(../img/bg03.png) repeat-x bottom;
}

@media screen and (min-width:769px){
.encircle {
	border:1px solid #ccc;
	border-radius:8px;
	padding:2% 2% 0;
	margin-bottom:1em;
	background:url(../img/bg03.png) repeat-x bottom;
	font-size:.93em;
}
}

.encircle h4{
	color:#065300;
	text-align:center;
}

@media screen and (min-width:769px){
.encircle h4{
	color:#1B5593;
	font-size:1.2em;
	font-weight:600;
	text-align:left;
}
}

.encircle h4 br {
		display:block;
		margin-top:.5em;
}

@media screen and (min-width:769px){
.encircle h4 br {
		display:none;
}
}


@media screen and (min-width:769px){
#footer a.tel  {
	color:#000;
}

#footer a:hover.tel  {
	border:0;
	text-decoration:none;
}
}

/*//////////// footer ////////////*/
footer {
	width:99.9%;
	height:auto;
	margin:0 auto;
	padding:0 ;
	color:#000;
	border-top:3px solid #F5F5F5;
	text-align:center;
}

@media screen and (min-width:769px){
footer {
	width:99.9%;
	height:auto;
	margin:0 auto;
	padding:1em 0 ;
	color:#000;
	background-color:#e8efff;
	border-top:3px solid #F5F5F5;
	text-align:center;
}
}


/* .foot */
.foot {
	width:99.9%;
	margin:auto;
	padding-top:20px;
	font-size:80%;
}

@media screen and (min-width:769px){
.foot {
	width:100%;
	margin:2em auto;
	padding-top:20px;
	font-size:100%;
	background-color:#e8efff;
}
}
.text-large15 {
font-size:150%;
}
.foot strong  {
	font-weight:600;
	font-size:200%;
}

.foot ul,li {
line-height:2em;

}

.footlink {
	}


.footlink:before {
	font-family: 'FontAwesome';
	content: "\f04d";
	margin-right:.5em;
	color:#000;
	}


.foot ul,li a {
color:#000;
text-decoration:none;
}

.foot ul,li a:hover {
color:;
text-decoration:none;
}


/* copyright */
.copyright {
	color:#000;
	font-size:70%;
	text-align:center;
	margin-top:2em;
}


/* table */
section table { width: 100%; border-collapse: collapse;}
section table th, section table td  { padding: 10px; border: 1px solid #ddd;}
section table th  { background: #f4f4f4;  font-weight:bold;}

@media (max-width: 480px) {
section table { width: 100%; border-collapse: collapse;}
section table th, section table td  { padding: 10px; border: 1px solid #ddd; display: block;}
section table th  { background: #f4f4f4;  font-weight:bold;}
}


		
.must {
	display: block;
	background-color: #C00;
	border: solid 1px #C00;
	text-shadow: 0px 1px 2px #933;
	padding: 0px 5px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px;
	border-radius: 4px;
	box-shadow: 0px 0px 5px #CCC;
	background-image: url(../img/header_bg.png);
	background-size: 100% 100%;
}

.optional {
	display: block;
	background-color: #265EC0;
	border: solid 1px #265EC0;
	text-shadow: 0px 1px 2px #933;
	padding: 0px 5px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px;
	border-radius: 4px;
	box-shadow: 0px 0px 5px #CCC;
	background-image: url(../img/header_bg.png);
	background-size: 100% 100%;
}

.detail {
	display: block;
	background-color: #007B0E;
	border: solid 1px #007B0E;
	text-shadow: 0px 1px 2px #933;
	padding: 0px 5px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px;
	border-radius: 4px;
	box-shadow: 0px 0px 5px #CCC;
	background-image: url(../img/header_bg.png);
	background-size: 100% 100%;
}


/* ///// 文字色 ///// */
.red {
	color:red;
		}
		
.green {
		color:green;
		}
		
.underline {
		border-bottom:solid #000 1px;
		}
		.underline-g {
		border-bottom:solid #ccc 1px;
		}

.underline-b {
		border-bottom:solid #004cff 1px;
		}
/* /////h背景・文字色///// */
.title {
		-moz-appearance: none;
		-webkit-appearance: none;
		-o-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
		-o-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;

		background-image: -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.15)), url("../img/bg03.png");
		background-image: -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.15)), url("../img/bg03.png");
		background-image: -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.15)), url("../img/bg03.png");
		background-image: -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.15)), url("../img/bg03.png");
		background-image: linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.15)), url("../img/bg03.png");
		border-radius: 5px;
		border: 0;
		padding:7px;
}

.bred {
	background-color:red;
	color:#fff;
}

.bblue {
	background-color:#37c0fb;
	color:#fff;
}

.bdarkblue {
	background-color:#192E4B;
	color:#fff;
}

.blightblue {
	background-color:#DCE4FB;
	color:#000;
}

.bgray {
	background-color:#606060;
	color:#fff;
}

.blightgray {
	background-color:#ccc;
	color:#292828;
}

.bgreen {
	background-color:#C8F5CE;
}

.borange {
	background-color:#FFEAAD;
}

.bo_bgray {
	border:.5px solid #ccc;
	font-weight:600;
}

.bo_bblue {
	color:#0044BD;
	border-bottom:.5px solid #C7383B;
}


/* navi */
div.navi {
	padding:5px;
	margin:5px 0 10px;
	float:right;
	clear:both;
	width:100%;
	font-size:85%;
	color:#565050;
	text-align:right;
}

div.navi a {
	color#293F73;
}

div.navi .current {
	color:#2D363A;
	font-weight:600;
}
