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

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

/* ICOMOON */
@import url("icomoon.css");


/*	EXAMPLE STYLES */
body {
	font-family: Meiryo,"メイリオ","ＭＳ Ｐゴシック",Osaka,sans-serif;
	color: #333;
	font-size: 13px;
}

/* ----------   header  --------------------- */
header {
	padding-bottom:0px;
	background-position: 20% center;
	background-repeat: no-repeat;
	background-image:url(../common_img/bg.png);
	background-size:cover;
}

header .inner{
	padding-bottom:0px;
	background-position: center 0;
	background-repeat: repeat;
	background-image:url(../common_img/bg02.png);
}


/* ----------   article  --------------------- */

article {
	margin:0px 0 10px;
}

main{margin:0 0 10px 0;}

/* ----------   section  --------------------- */
section {

}

aside {
	margin:0px 0 10px;
}

#side_bar{
}

/* ----------   footer  --------------------- */
footer {
	padding:0px 0px 0px;
}



/* ----------   メインイメージ系  --------------------- */

#main_img {
	padding:20px 0;
}




.nak_tt{
}

.nak_tt h2{
font-weight:bold;
padding:6% 2% 6%;
font-size:200%;
color:#003668;
text-align:right;
text-shadow:1px 1px 1px #fff,-1px -1px 1px #fff,1px 1px 1px #fff,-1px -1px 1px #fff,1px 1px 1px #fff,-1px -1px 1px #fff;
}


@media only screen and (max-width: 959px) {

.nak_tt{
margin:0px 0px 20px ;
}

.nak_tt h2{
font-weight:bold;
padding:6% 2% 6%;
font-size:140%;
margin:0px 0px 0px ;
color:#003668;
text-shadow:1px 1px 1px #fff,-1px -1px 1px #fff,1px 1px 1px #fff,-1px -1px 1px #fff,1px 1px 1px #fff,-1px -1px 1px #fff;
}


}



/* ----------   menu  --------------------- */

#menu-box{
  margin:0px 0px 0px 0px ;
  padding:0px 0px 0px 0px ;
  background:#00abff;
  position: relative;
}

#menu{
  margin: 0px 0 0px;
  padding: 0;
  font-size:110%;
  background:url(../common_img/g_nav_li.png) no-repeat right center;
}
#menu li{
  float: left;
  text-align:center;
  line-height:1.2;
  width: 16.66%;
  margin: 0;}


#menu li a{
  display: block;
  padding: 20px 0px 17px;
  color: #fff;
  text-align: center;
  font-weight:bold;
  text-decoration: none;
  background:url(../common_img/g_nav_li.png) no-repeat 0 center;
}


#menu li a span{
  color: #fff;
  font-size:80%;
  font-weight:normal;
}

#menu li a:hover{
  color: #fff;
  background-color:#005bb0;
}


#menu li dd{ display:none; position: absolute; z-index:100; top:64px;padding:0; border:solid 1px #003669;background:#00407b;-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}


#menu li ul.sub_nav { padding:0 0 0;display:block; overflow: hidden;margin:0;font-size:90%;} 
#menu li ul.sub_nav li { width:300px;float: none; color:#fff; padding:0 0px; margin-bottom:1px; height:auto; list-style:none; }
#menu li ul.sub_nav li a { background:none!important;color:#fff; text-align:left; padding:10px 20px 10px 20px; height:auto;text-decoration:none;border-bottom:dotted 1px #fff;}
#menu li ul.sub_nav li a:hover { background:#00284d!important;color:#fff; text-align:left;}
#menu li ul.sub_nav li a:before { content:'\e910'; margin-right:15px;font-family:'icomoon';color:#fff;}
#menu li ul.sub_nav li a:hover:before {color:#fff;}

#menu li ul.sub_nav li a {
	opacity:0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
}

#menu li ul.sub_nav li a:hover {
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}


#toggle{ 
 display: none;
}


@media only screen and (max-width: 960px) {

#menu-box{
  margin:0px 0px 0px 0px ;
  padding:0px 0px 0px 0px ;
}

#menu{
  margin: 0px 0 0px;
  padding: 0;
  font-size:100%;
}

#menu li a{
  padding: 15px 0 15px;
}


#menu li a span{
display: none;
}

}

@media only screen and (max-width: 768px) {

#menu{
  margin: 0px auto 0px;
}

#menu li dd{ display:none; position: absolute; z-index:100; top:60px;padding:0; border:solid 1px #003669;background:#003669;-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}
#menu li ul.sub_nav { padding:0 0 0;display:block; overflow: hidden;margin:0;font-size:100%;} 
#menu li ul.sub_nav li { width:100%;float: none; color:#fff; padding:0 0px; margin-bottom:1px; height:auto; list-style:none; }
#menu li ul.sub_nav li a { color:#fff; text-align:left; padding:10px 20px 10px 20px; height:auto;text-decoration:none;}
#menu li ul.sub_nav li a:hover { background:#00284d!important;color:#fff; text-align:left;}
#menu li ul.sub_nav li a:before { content:'\e910'; margin-right:15px;font-family:'icomoon';color:#fff;}
#menu li ul.sub_nav li a:hover:before {color:#fff;}

}
@media only screen and (max-width: 480px) {
  #menu{
    display: none;
  }

#menu-box{
  background:none;
  margin:0px 0px 0px 0px ;
}

  #menu li{
    width: 100%;
    background:#fff;
    border-bottom:dotted 1px #ccc;
  }

  #menu li a{
    display: block;
    padding: 10px 0 10px;
    background:#fff;
    color:#333;
  }

  #menu li.nak{
    width: 100%;
    border-bottom:dotted 1px #fff;
    background:none;
  }
  #menu li.hom{
    width: 100%;
    border-bottom:dotted 1px #fff;
  }


  #toggle{
    display: block;
    position: relative;
    width: 100%;
    background:#00abff;
    border-bottom:solid 1px #fff;
  }

  #toggle a{
    display: block;
    position: relative;
    padding: 10px 0 8px;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  #toggle:before{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: #fff;
  }
  #toggle a:before, #toggle a:after{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    width: 20px;
    height: 4px;
    background: #00abff;
  }
  #toggle a:before{
    margin-top: -6px;
  }
  #toggle a:after{
    margin-top: 2px;
  }

#menu li dt{ position: relative;}
#menu li dd{ display:none; position: absolute; z-index:100; top:155px;padding:0; border:none;width:100%;}
#menu li ul.sub_nav { padding:0 0 0;display:block; overflow: hidden;margin:0;font-size:100%;} 
#menu li ul.sub_nav li { float: none; color:#fff; padding:0 0px; margin-bottom:1px; height:auto; list-style:none; }
#menu li ul.sub_nav li a { background:#00abff!important;color:#fff; text-align:left; padding:10px 20px 10px 20px; height:auto;text-decoration:none;}
#menu li ul.sub_nav li a:hover { background:#0063da!important;color:#fff; text-align:left;}
#menu li ul.sub_nav li a:before { content:'\e910'; margin-right:15px;font-family:'icomoon';color:#fff;}

}





/* ----------   area  --------------------- */

.area_box{
border:solid 1px #ccc;
margin:20px 0;
}

.area_box h3{
margin:10px;
font-size:130%;
color:#003669;
padding:0px 0px 0px 15px ;
border-left:solid 6px #003669;
}


.area_box p{
padding:10px ;
}

@media only screen and (max-width: 768px) {

.area_box{
width:80%;
margin:10px auto;
}

}

/* ----------   バナー  --------------------- */

.banner{
margin:50px auto 20px;
border:solid 1px #ccc;
position:relative;
}

.bar_img{
position:absolute;
top:-30px;
right:10px;
}

.banner dl{
padding:15px 15px 15px 15px ;
}

.banner dl dt{
padding:0px 0px 10px 0px ;
font-weight:bold;
line-height:1.0;
color:#000;
font-size:140%;
}

.banner dl dd img{
margin:10px 15px 0px 0px ;
}

.banner dl dd p{
font-weight:bold;
color:#666;
font-size:140%;
}

@media only screen and (max-width: 768px) {

.bar_img{
position:absolute;
top:40%;
right:0px;
width:30%;
}

}

@media only screen and (max-width: 480px) {

.bar_img{
display:none;
}

.banner dl dd{
text-align:center;
}

.banner dl dd p{
font-weight:bold;
color:#666;
font-size:100%;
}

}

/* ----------   フッターナビ  --------------------- */

.pagetop {
	display: none;
	position: fixed;
	bottom: 130px;
	right: 2%;
}
.pagetop a {
	display: block;
	width: 99px;
	height: 103px;
	text-align: center;
}


.fotter_bg{
background:#00abff;
}

.fnav {
width:100%;
margin:20px 0 0 20px;
}

.fnav li{
float:left;
margin:0 20px 5px 0;
color:#fff;
}

.fnav li a:before  { content:'>'; float:left;margin-right:5px;font-size:80%;padding:0px 3px;}

.fnav li a{
display:block;
color:#fff;
}

.fnav li a:hover{
text-decoration:none;
}

.f_link{
text-align:center;
margin:20px 0 0 0;
}

.f_link img{
text-align:center;
margin:10px;
}


#site_copy{
text-align:center;
margin:40px 0 0 0;
padding:10px;
color:#fff;
background:#0055a4;
}

/* ----------   デバイス毎の振り分け  --------------------- */


/*PC960px以上 */
@media only screen and (min-width: 960px) {


h1{
font-size:80%;
padding:0px 0 0px;
line-height:23px;
font-weight:normal;
color:#fff;
text-align:left;
}

.logo{float:left;width:320px;padding:0px 0px 10px 0px ;}
.h_info{float:right;width:370px;padding:28px 0px 10px 0px ;text-align:center;}

}

@media only screen and (max-width: 959px) {

h1{
font-size:70%;
padding:0px 0 0px;
line-height:25px;
font-weight:normal;
color:#fff;
text-align:left;
}


.logo{float:left;width:320px;padding:0px 0px 17px 0px ;}
.h_info{float:right;width:370px;padding:28px 0px 10px 0px ;text-align:center;}

}

@media only screen and (max-width: 768px) {

h1{text-align:center;}

.logo{float:none;width:300px;margin:0 auto;padding:0px 0px 10px 0px ;}
.h_info{float:none;width:200px;margin:0 auto;padding:0px 0px 10px 0px ;}


#side_bar{display:none;}
#pan {display:none;}

}

@media only screen and (max-width: 480px) {

h1{text-align:center;
line-height:1.5;
padding:5px 0 0 0;
}


}


/* ロールオーバーで不透明度変更
-------------------------------------------------- */
.hover_img a:hover img,
a.hover_img:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}


/* タイトルのスタイル
-------------------------------------------------- */

.tt_style01{
font-size:130%;
color:#fff;
background:#003669 url(../common_img/h3_bg04.png) no-repeat 10px center;
padding:5px 0px 5px 25px ;
font-weight:bold;
margin:30px 0px 25px;
position: relative;
}

.tt_style01:before  {
	content: "　　";
	background:url(../common_img/h3_bg03.png) no-repeat 0px 0;
	position: absolute;
	bottom: -70%;
	left: 5%;
}

.tt_style01:first-child{
margin:0px 0px 25px;
}

.tt_style01 span{
color:#7a95af;
padding:0px 0px 0px 20px ;
}

@media only screen and (max-width: 768px) {


.tt_style01:first-child{
margin:20px 0px 25px;
}

}


.tt_style02{
font-size: 120%; 
color: #003669;
padding:3px 0 3px 10px;
margin:30px 0px 15px;
font-weight:bold;
border-bottom:dotted 2px #003669;
}

.tt_style02:first-child{
margin:0px 0px 15px;
}

.tt_style02:before { content:'\f012'; margin-right:10px;font-family:'icomoon';color:#00abff;font-size: 100%; }


