@charset "utf-8";

/* =======================================

	Structure CSS ストラクチャー

 -----------------------------------------
	INDEX
 -----------------------------------------
 	1.base

	2.LINK STYLES

	3.Layout


========================================== */


/* ---------------------------------------------------------
1.base
--------------------------------------------------------- */

html,body {
	width: 100%;
	height: 100%;
}
html {
  font-size: 62.5%; /* sets the base font to 10px for easier math */
  -webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-overflow-scrolling: touch;
}
body {
  font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体","Yu Gothic","YuGothic","Osaka","ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
  font-size: 1.4rem;   /* sets the default sizing to make sure nothing is actually 10px */
  line-height: 1.7;
  color: #333;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

body {
	min-width: 1100px;
	margin: auto;
}


* {
	-webkit-box-sizing: border-box; /* border-box ------------------------------ */
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

*:before,
*:after  {
	-webkit-box-sizing: border-box; /* border-box ------------------------------ */
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6 {
	line-height: 1.3;
}
html,body,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,code,del,em,img,strong,
dl,dt,dd,ol,ul,li,
fieldset,form,label,
table,caption,tbody,tfoot,thead,tr,th,td{
	margin: 0;
	padding: 0;
	font-style: normal;
}
ul,ol,li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
dl, dl dd  {
  margin: 0;
}
img {
	line-height: 1.0;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
	font-weight: inherit;
}
figure,
figcaption {
  margin: 0;
  font-size: inherit;
}

blockquote, q {
	quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

a {
  color: #00559d;
  text-decoration: underline;
}
#main a:visited {
  color: #7e318e !important;
  text-decoration: underline;
}
a:hover,
#main a:hover {
  text-decoration: none;
}
a:focus {
  outline: none;
}
canvas {
    image-rendering: optimizeQuality;
    image-rendering: -moz-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
}
button {
  border: 0;
  background: transparent;
  -moz-box-shadow: 0 0 0 0 transparent;
  -webkit-box-shadow: 0 0 0 0 transparent;
  box-shadow: 0 0 0 0 transparent;
}
.clearfix:after {
	display: block;
	clear: both;
	content: "";
}

.sp{
  display: none;
}

/*------------------------------------------------------------------------------
 2.LINK STYLES
 -------------------------------------------------------------------------------*/
a:link{
color:#4D4D4D;
text-decoration:none;
}
a:visited{
color:#4D4D4D;
text-decoration:none;
}
a:hover{
color:#0D73BB;
text-decoration:underline;
}
a:active{
color:#4D4D4D;
text-decoration:none;
}



.h_Efect_A:hover{
opacity:0.7;
filter:alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}


/*------------------------------------------------------------------------------
 3.Layout
 -------------------------------------------------------------------------------*/


/*header***************************************/

header,
nav,
#mainVisual {

}

header{
  background:url(../img/header/nav_back.jpg);
  width:100%;
  height:153px;
  position:fixed;
  top:0;
  left:0;
  z-index:21;
}

#header_wrap{
  width:1100px;
  margin:auto;
}

#header_contents{
    overflow: hidden;
}

#header_logo{
  margin:24px 0 0 0;
  width:425px;
  float:left;
}


#header_subnav{
  font-size:90%;
  float:right;
}

#header_subnav li{
  float:left;
  margin:36px 0 0 20px;
}

#header_subnav a:link{
color:#4D4D4D;
text-decoration:none;
}
#header_subnav a:visited{
color:#4D4D4D;
text-decoration:none;
}
#header_subnav a:hover{
color:#0D73BB;
text-decoration:underline;
}
#header_subnav a:active{
color:#4D4D4D;
text-decoration:none;
}

#header_nav{
  height:72px;
  clear:both;
  margin:21px 0 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
  #header_nav {
    margin:22px 0 0 0;
  }
}
#header_nav li{
  float:left;
  width:182px;
  height:72px;
  text-align:center;
  line-height:70px;
  z-index:100;
}

.header_nav_w218{
  width:218px!important;
}

.header_nav_w181{
  width:181px!important;
}

.header_nav_lineA{
  background:url(../img/header/nav_lineA.gif);
  width:1px!important;
}

#header_nav li a{
  width:100%;
  height:100%;
  display:block;
}

#header_nav a:link{
color:#FFFFFF;
text-decoration:none;
}
#header_nav a:visited{
color:#FFFFFF;
text-decoration:none;
}
#header_nav a:hover{
color:#FFFFFF;
text-decoration:none;
background:url(../img/header/nav_backHover.gif);
}
#header_nav a:active{
color:#FFFFFF;
text-decoration:none;
}

/*ドロップダウンメニュー***************************************/

.menu {
    position: relative;
    width: 100%;
    height: 50px;
    max-width: 1000px;
    margin: 0 auto;
}

.menu > li {
    float: left;
    width: 25%; /* グローバルナビ4つの場合 */
    height: 50px;
    line-height: 50px;
}

.menu > li a {
    display: block;
    color: #fff;
}

.menu > li a:hover {
    color: #999;
}

ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    border-top:5px solid #00a5a7;
    border-bottom:15px solid #00a5a7;
}


.menu > li:hover {
    background:url(../img/header/nav_backHover.gif);
    -webkit-transition: all .5s;
    transition: all .5s;
}

.menu__second-level li{
	height:35px!important;
	line-height:3!important;
	background-image: none!important;
	text-align:left!important;
	padding-left:15px;
}

.menu__second-level li.h55{
	height:55px!important;
	line-height:1.5!important;
	background-image: none!important;
	text-align:left!important;
	padding-left:15px;
	position:relative;
	top:12px;
}

.menu__second-level li a:hover {
    background-image: none!important;
    background-color:#00a5a7;
    color:#00256D!important;
}



/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

.menu > li.menu__single {
    position: relative;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #00a5a7;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu__single:hover ul.menu__second-level {
    top: 72px;
    visibility: visible;
    opacity: 1;
}





#wrap {
  width:1100px;
  min-height:600px;
  margin:153px auto 150px auto;
  padding-top:35px;
}

#contents {


}

#navigation {
	float: left;
	display: inline;
	width: 200px;
}


/*footer***************************************/


footer {
  clear: both;
}

#footer_contents{
  width:1100px;
  margin:auto;
  overflow: hidden;
}

#footer_subnav{
  font-size:90%;
  float:right;
}

#footer_subnav li{
  float:left;
  margin:10px 0 10px 20px;
}

#footer_subnav a:link{
  color:#4D4D4D;
  text-decoration:none;
}
#footer_subnav a:visited{
  color:#4D4D4D;
  text-decoration:none;
}
#footer_subnav a:hover{
  color:#0D73BB;
  text-decoration:underline;
}
#footer_subnav a:active{
  color:#4D4D4D;
  text-decoration:none;
}

#footer_nav{
  clear:both;
  background:#004098 url(../img/footer/footer_navBack.gif) repeat-x 0 bottom;
  height:350px; /* 2017/07/31 項目追加により「340px」から変更*/
  color:#FFFFFF;
}

#footer_nav a:link{
  color:#FFFFFF;
  text-decoration:none;
}
#footer_nav a:visited{
  color:#FFFFFF;
  text-decoration:none;
}
#footer_nav a:hover{
  color:#FFFFFF;
  text-decoration:underline;
}
#footer_nav a:active{
  color:#FFFFFF;
  text-decoration:none;
}

#footer_nav_wrap{
  width:1100px;
  height:350px;
  margin:auto;
  position:relative;
}

.footer_navBox{
  width:158px;
  float:left;
  margin:30px 30px 0 0;
  font-size:86%;
}

.footer_navBox li{
  line-height:1.5;
  margin-bottom:5px;
}


.footer_navTitle{
  font-size:14px;
  border-bottom:1px solid #FFF;
  margin:0 0 15px 0;
  padding:0 0 3px 0;
}

.footer_iso{
  position:absolute;
  bottom:16px;
  right:0;
}

#footer_company{
overflow: hidden;
}

#footer_company_wrap{
  width:1100px;
  margin:auto;
  padding:20px 0 0 0;
}

.footer_logoBox{
  width:250px;
  height:100px;
  float:left;
}

.footer_logoBox img{
  margin:25px 0 0 0;
}

.footer_comInfoTop{
  height:100px;
  float:left;
  line-height:1.5;
  padding:0 0 0 18px;
}
.footer_comInfo{
  height:100px;
  float:left;
  line-height:1.5;
  border-left:1px dotted #bbb;
  padding:0 0 0 18px;
}

.footer_comTitle{
  font-size:16px;
  margin:5px 0 8px 0;
}

.footer_leftBottom{
  display: inline-block;
  position: absolute;
  bottom: 25px;
  left: 0;
  border-left: 1px solid #FFF;
}
.footer_leftBottom span{
  border-right: 1px solid #fff;
}
.footer_leftBottom span a{
  padding: 0 10px;
}

#footer_copyright{
  clear:both;
  text-align:center;
  margin:37px 0 23px 0;
}

#footer_copyright p{
  font-size:12px
}
#footer_copyright br{
  display: none;
}


/* このサイトについて */
.siteAbout_box{
  width: 1000px;
  margin:auto;
}

.siteAbout_inner{
  width: 900px;
  margin:auto;
}
.siteAbout_inner h3{
  margin-top: 30px;
}


/*TOPへ移動ボタン***************************************/

#to_top{
  width:70px;
  height: 70px;
  text-align:right;
  position: fixed;
  bottom: 0;
  right:0;
}

