@charset "utf-8";
/* ===normalize=================== */
html {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
}
body {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 16px;
	font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: normal;
	font-weight:  normal;
	line-height: 1rem;
	vertical-align: baseline;
	background: transparent;
	color: #666666;
}
article, section, aside, header, nav, footer {
	display: block;
}
img,a img{
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	background:transparent;
}
/* ===base=================== */
body{
      margin: 0 auto 0 auto;
      padding: 0;
      font-size: 75%;
      max-width: 100%;
      color: #666666;
      line-height: 1.5;
      border-top: solid 20px #455B86;
}
header{
    max-width: 960px;
    margin: -18px auto 0 auto;
    height: 94px;
}
header img{
	  max-width: 100%;
	  margin-top: 20px;
	  float: left;
}
header h1{
	    margin: 0px auto 0 auto;
	    padding: 0;
	    text-align: left;
	    font-size: 10px;
	    color: #ffffff;
	    background-color: #455B86;
}
header div{
		max-width: 330px;
		margin: 10px 10px 0  0;
		padding: 20px 0 0 0;
		float: right;
}
header div p.tel{
	  margin: 0;
	  padding: 0;
	  font-size: 1.7em;
	  color: #6B99E0;
	  line-height: 1.2;
	  text-align: right;
}
header div p.tel span{
  color: #CCCCCC;
}
header div p.address{
	  margin: 0;
	  padding: 0;
	  line-height: 1.2;
	  text-align: right;
}
#topimg {
    clear:both;
    max-width: 100%;
    text-align:center;
    padding:0px;
	background: -webkit-linear-gradient(top, #5776AE 0%, #8AA9E1 100%);
	background: -moz-linear-gradient(top, #5776AE 0%, #8AA9E1 100%);
	background: -o-linear-gradient(top, #5776AE 0%, #8AA9E1 100%);
	background: -ms-linear-gradient(top, #5776AE 0%, #8AA9E1 100%);
	background: linear-gradient(top, #5776AE 0%, #8AA9E1 100%);
    border-bottom: ridge 4px #5E79A8;
    max-height: 440px;
}
#topimg img{
    max-width: 960px;
    width: 100%;
}
.slider-wrapper {
		max-width: 960px;
		margin: 10px auto;
  	max-height:100%;
}
.clear {
	clear:both;
}
.resources{
    margin:30px auto;
    padding:30px;
    max-width:90%;
    height:auto;
    border:3px solid #455B86;
    border-radius: 1em;
}
.left-side{
    max-width: 70%;
    margin:15px auto 20px 15%;
    padding:30px;
    border:1px solid #455B86;
    border-radius: 1em;
}
.right-side{
    max-width: 70%;
    margin:15px 20% 15px auto;
    padding:30px;
    border:1px solid #455B86;
    border-radius: 1em;
}
nav {
    clear:both;
    max-width: 100%;
    text-align:center;
    margin: 0px auto 0px auto;
    padding:0px auto 0px auto;
    background: #FEFEFE;
    border-bottom: 2px solid #CCCCCC;
    border-top: 1px solid #415F95;
    min-height: 48px;
}
nav ul{
  max-width: 1000px;
  margin:0px auto 0px auto;
  padding:0px auto 0px auto;
  list-style-type: none;
}
nav ul:after{
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
nav li{
    float: left;
    display: inline;
    font-size: 20px;
    line-height: 48px;
    height: 48px;
    overflow: hidden;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #CCCCCC;
}
nav li a{
    display: block;
    height: 47px;
    overflow: hidden;
    padding-left: 3em;
    padding-right: 3em;
}
nav a:link{
    background-image : url(../mainmenu_1Ae_01.png);
    background-position: top left;
    background-repeat: no-repeat;
}
nav a:visited{
    background-image : url(../mainmenu_1Ae_01.png);
    background-position: top left;
    background-repeat: no-repeat;
}
nav a:hover{
    background-image : url(../mainmenu_1Ae_01_on.png);
    background-position: left top;
    background-repeat: repeat-x;
}
nav a:active{
    background-image : url(../mainmenu_1Ae_01_on.png);
    background-position: left top;
    background-repeat: repeat-x;
}
nav li a{
    font-weight: bold;
}
nav li a:link{
    color: #666666;
    text-decoration: none;
}
nav li a:visited{
    color: #666666;
    text-decoration: none;
}
nav li a:hover{
    color: #ffffff;
    text-decoration: none;
}
nav li a:action{
    color: #ffffff;
    text-decoration: none;
}
.nav04 {
  margin: 5px 20px 10px 0px;
  display: flex;
  list-style:none;
}
.nav04 li {
    margin: 10px 0px 5px 0px;
}
.nav04 li:last-child {
  margin-left: auto;
}
.nav04 a {
        display: inline-block;
        text-decoration: none;
}
#container{
    margin:0 auto 0 auto;
    max-width: 950px;
    clear: both;
}
h2{
    margin-top: 15px auto 0.5em 0;
    line-height: 1em;
    text-align: left;
    font-size:2em;
}
h3{
    margin: 0 30px 0 30px;
    padding: 5px;
    text-align: left;
    line-height: 1.2;
    color: #3260A7;
    border-bottom : solid 3px #415f95;
    font-size: 2em;
}
h4{
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 2px;
    padding-left: 2px;
    text-align: left;
    line-height: 1.2;
    color: #3260A7;
    border-bottom : solid 3px #415f95;
    font-size: 1.2em;
}
h6{
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 2px;
    padding-left: 2px;
    text-align: left;
    font-size: 1.1em;
    line-height: 1.2;
    color: #3260A7;
}
main{
    max-width : 950px;
    float: none;
    text-align: left;
}
main nav{
  float: left;
  text-align: left;
}
main dl:after{
    content: ".";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}
main img.left{
    margin-top: 5px;
    margin-right: 20px;
    margin-bottom: 10px;
    float: left;
}
main nav img.right{
    margin: 0px 5px 0px auto;
      text-align: right;
    float: right;
}
main img.right{
    margin-top: 5px;
    margin-bottom: 10px;
    margin-left: 20px;
    float: right;
}
a:link{
    color: #3260A7;
    text-decoration: underline;
}
a:visited{
    color: #3260A7;
    text-decoration: underline;
}
a:hover{
    color: #3260A7;
    text-decoration: none;
}
a:active{
    color: #3260A7;
    text-decoration: none;
}
p{
    margin-top: 0.5em;
    margin-bottom: 2em;
    padding-right: 0.1em;
    padding-left : 1em;
    line-height: 1.4;
    text-align: left;
}
p.large{
    color: #3260A7;
    font-weight: bold;
}
p.indent{
    padding-left: 25px;
}
.left{
    float: left;
}
.right{
    float: right;
}
hr{
    width: 100%;
    height: 1px;
    margin-top: 10px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: auto;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    clear: both;
    border-top-width: 1px;
    border-top-style: none;
    border-right-width: 1px;
    border-right-style: none;
    border-left-width: 1px;
    border-left-style: none;
    color: #ffffff;
    border-bottom-width: 1px;
    border-bottom-style: none;
}
section h3{
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    height: 26px;
    overflow: hidden;
    background-position: top left;
    background-repeat: no-repeat;
    line-height: 28px;
    padding-left: 30px;
    text-align: left;
    color: #3260A7;
    font-size: 1.2em;
}
#companyinfo{
    padding-top: 0px;
    padding-bottom: 10px;
    background-color: #F3F3F3;
}
#companyinfo h3{
    color: #FFFFFF;
    text-align: left;
    font-weight: bold;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 5px;
    background-color: #536B98;
    font-size: 1em;
}
#companyinfo p{
    margin-bottom: 10px;
    padding-left: 15px;
    padding-right: 5px;
}
#hpb-main{
    max-width: 690px;
    margin : 5px auto;
    float: left;
    text-align: left;
    padding-top: 5px;
}
#pagetop{
    margin-top: 10px;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    text-align: right;
  float : none;
  clear : both;
}
#pagetop a{
    display: block;
    margin-left: auto;
    width : 150px;
    height: 21px;
    overflow: hidden;
    background-image : url(returnTop_1Ae.png);
    background-position: top left;
    background-repeat: no-repeat;
    text-align: left;
    text-indent: -9999px;
}
footer{
		clear:both;
		display:block;
		margin:0 auto;
		padding:0;
		position:relative;
		background:#fff;
		color:#666;
		width:100%;
}
footer a{
		color:#dddddd;
		text-decoration:none;
}
footer small{
		display:block;
		text-align:center;
		margin:0 auto;
		padding:1em 0 1em 0;
		width:100%;
		text-align:center;
		position:relative;
		z-index:2;
}
footer dl{
		margin:0 auto;
		padding:10px 0 10px 0;
		max-width:100%;
		position:relative;
		z-index:2;
		text-align:center;
}
footer dl dt{
		text-align:center;
		text-transform:uppercase;
		font-size:24px;
		margin:0 0 10px 0;
		padding:0 0 7px 0;
		position:relative;
		display:inline-block;
}
footer dl{
		margin:0 auto;
		padding:10px 0 10px 0;
		max-width:100%;
		position:relative;
}
footer dl dt{
		text-align:center;
		text-transform:uppercase;
		font-size:24px;
}
footer dl dt:after{
		content:"";
		display:block;
		width:100%;
		height:3px;
		bottom:0;
		left:0;
		background:#356ebb;
}
footer dl dd{
		text-align:center;
		margin:0;
		padding:0;
		font-weight:200;
}
footer dl dd p{
		font-size:110%;
}
footer dl .mail{
		margin:30px 0;
}
footer dl .mail a{
		display:inline-block;
		padding:1em 2em 1em 2em;
		line-height:1;
		position:relative;
		background:#356ebb;
		font-size:1.2em;
}
footer dl .mail a:hover{
		opacity:0.6;
}
footer dl .tel{
		display:block;
		margin:3px 0;
		line-height:1;
		vertical-align:middle;
		font-size:14px;
}
footer dl .tel span{
		display:block;
		font-size:1em;
}
footer dl .tel a{
		font-size:24px;
		padding:0;
		margin:0;
		position:relative;
		vertical-align:middle;
}
#jumptop{
		text-align:center;
		margin:0 auto;
		max-width:100%;
		position:relative;
		border-bottom:solid 2px #455B86;
}
#jumptop a{
		display:block;
		width:100%;
		position:relative;
		margin:0px 0 -0.46em 0;
		padding:0px 0 0px 0;
		font-size:50px;
		color:#455B86;
		text-decoration: none;
}
#jumptop a:hover{
		transform:translateY(-10px);
}
#sec04_02{
		background: url(../images/bgSec04.jpg) no-repeat 100% 100% fixed;
		background-size: cover;
		-webkit-background-size: cover;
		text-align: center;
		padding: 220px 20px;
}
#sec04_02 img{
		text-align: center;
}
@media screen and (max-width:640px)
{
nav li{
      min-width: 245px;
}
.nav04 {
    display: block;
}
main section h4{
      clear: both;
}
.resources{
    margin:30px auto;
    padding:30px;
    max-width:90%;
    height:auto;
    border:3px solid #455B86;
}
.left-side{
    max-width: 90%;
     margin:30px auto;
    padding:15px;
}
.right-side{
    max-width: 90%;
    margin:30px auto;
    padding:15px;
}
}
