@charset "utf-8";

* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}


/*
 * ヘッダー
 * ----------------------------------------------- */

.header{
	text-align:left;
	padding:0;
	margin:0 auto;
	max-width:1050px;
	min-height: 70px;
}
.header h1{
	padding:15px 0 15px 1%;
}
.header h1 img{
	max-width: 70%;
	height: auto;
}
.header .headr{
	display:none;
}

/*
 * コンテンツトップページ
 * ----------------------------------------------- */
#contents{
	margin: 0px;
	min-width:600px;
	text-align:center;
	background: url(../img/contents_back.jpg) top center repeat-x;
}
#contents h2{
	margin-bottom:10px;
}
#contentsinner{
	width:898px;
	text-align:left;
	padding:10px 0 0 0;
	margin:0 auto;
	overflow:hidden;
}


#news{
	float:left;
	width:520px;
}
#newswaku{
	height:120px;
	width:520px;
	margin:0;
	padding:10px;
	background:url(../img/info_b.jpg) no-repeat;
}
#newslist{
	overflow:auto;
	height:100px;
	width:500px;
}
#news table {
	width:480px;
}
#news table th{
	color:#39474e;
	font-weight:normal;
	font-size:11px;
	padding:4px 10px 4px 20px ;
	width:80px;
	border-bottom:1px dotted #999999;
}
#news table td{
	color:#333333;
	font-size:12px;
	padding:3px 5px 3px 0px;
	border-bottom:1px dotted #999999;
}
*html #news{
	margin:0;
	padding:0;
}
*html #newswaku{
	width:510px;
	padding:5px;
}
*html #news table th{
	padding:4px 5px 4px 10px ;
	}
*html #news table td{
	padding:3px 2px 4px 0 ;
}

#news p{
font-size:11px;
font-weight:bold;
padding:5px 30px 10px;
color:#FF3300;
}
#bana{
	float:right;
	width:370px;
}
#bana ul li{
	float:left;
	margin-left:5px;
}
*html #bana ul li{
	margin-left:2px;
}

.gnavi{
	display:none;
}


#wrapper{
	background:#fff;
}
.menu-btn {
	position: absolute;
	right: 0;
	top: 0;
	height: 70px;
	width: 70px;
	display: block;
	background: url(../img/common/rightmenu.png) no-repeat left top;
	-webkit-background-size: 100%;
	background-size: 100%;
}

/*#spmenu{
	position:absolute;
	top:0px;
	right:0px;
	z-index:99999;
}*/

.contents{
	clear:both;
	max-width:1000px;
	overflow:hidden;
	text-align:center;
	margin:0 auto;
}
.mainbana{
	float:none;
	width:100%;
}
.top_mission{
	float:left;
	width:100%;
  	height:500px;
	overflow:hidden;
	position:relative;

}
.top_mission li {
	position:absolute;
   height:500px;
   background-position:center top;
   background-repeat:no-repeat;
}
.keyword{
	float:none;
	width:100%;
	}
.top_keyword8{
	background:url(../img/top/keywords.png) center top no-repeat;
	width:100%;
	height:189px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_keyword8 a{
	width:100%;
	height:250px;
	display:block;
}
.keywordsub{
	display:none;
}
.subbana{
	float:none;
	width:100%;
}
.subbana2{
	float:none;
	width:100%;
	overflow:hidden;
}
.top_sub01{
	background:url(../img/top/sub01.png) center top no-repeat;
	width:33%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub01 h2,
.top_sub03 h2,
.top_sub05 h2{
	padding-top:170px;
	text-align:center;
	font-size:15px;
	font-weight:bold;
	color:#0d6fb8;
}
.top_sub01 p,
.top_sub03 p,
.top_sub05 p{
	padding:10px;
	text-align:center;
	font-size:12px;
	color:#727171;
}
.top_sub02 h2,
.top_sub04 h2,
.top_sub06 h2{
	padding-top:18px;
	line-height:1.4em;
	text-align:center;
	font-size:15px;
	font-weight:bold;
	color:#0d6fb8;
}
.top_sub02 p,
.top_sub04 p,
.top_sub06 p{
	padding:10px 10px 170px 10px;
	text-align:center;
	font-size:12px;
	color:#727171;
}
.top_sub02{
	background:url(../img/top/sub02.png) center top no-repeat;
	width:34%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub03{
	background:url(../img/top/sub03.png) center top no-repeat;
	width:33%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub04{
	background:url(../img/top/sub04.png) center top no-repeat;
	width:33%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub05{
	background:url(../img/top/sub05.png) center top no-repeat;
	width:34%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub06{
	background:url(../img/top/sub06.png) center top no-repeat;
	width:33%;
	height:250px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub07{
	background:url(../img/top/sub07.png) center top no-repeat;
	width:33%;
	height:125px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub08{
	background:url(../img/top/sub08.png) center top no-repeat;
	width:34%;
	height:125px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub09{
	background:url(../img/top/sub09.png) center top no-repeat;
	width:33%;
	height:125px;
	float:left;
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
}
.top_sub07 h2,
.top_sub08 h2,
.top_sub09 h2{
	padding-top:100px;
	text-align:center;
	font-size:15px;
	font-weight:bold;
	color:#0d6fb8;
}
.top_info{
	clear:both;
	float:none;
	width:100%;
	height:auto;
	border-right:1px solid #cfcfcf;
}
.top_info h2{
	background:url(../img/top/info_title.png) left top no-repeat;
	text-indent:-9999px;
	height:32px;
	margin:20px 10px;
}
.top_info table{
	margin:10px;
}
.top_info table th{
	font-size:12px;
	font-weight:normal;
	padding:5px 10px;
	color:#727171;
	vertical-align:top;
	text-align:left;
}
.top_info table td{
	font-size:12px;
	padding:5px 10px;
	color:#727171;
	vertical-align:top;
	text-align:left;
}
.subbana a:hover,
.subbana2 a:hover{
	text-decoration:underline;
	color:#0d6fb8;
}


/* additional */
.maincontent {
	width: 100%;
}
.top-slidearea {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 47.777%;
  margin: 0 auto;
}
#loading {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #eeeeee;
    z-index: 1;
}
#loading:before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: -12px 0 0 -12px;
  border: 0.25rem solid rgba(0,0,0, 0.2);
  border-top-color: rgba(0,0,0, 0.5);
  -webkit-animation: spin 1s infinite linear;
          animation: spin 1s infinite linear;
}
#loading.fadeout {
  -webkit-animation: fadeout 0.5s linear;
          animation: fadeout 0.5s linear;
}
@-webkit-keyframes fadeout {
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes fadeout {
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
@keyframes spin {
  0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
.top-copy {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: inline-block;
  width: 314px;
  height: 38px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url(../img/top/bg_topcopy.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  -webkit-background-size: 314px 38px;
  background-size: 314px 38px;
  margin: auto;
  z-index: 1;
  opacity: 0;
}
.fadeup {
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-name: fadeInUp;
          animation-name: fadeInUp;
  visibility: visible;
}
@-webkit-keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }
}
@keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }
}
.top-slide {

}
.top-slide .top-slideitem {
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 3s;
  opacity: 1;
  width: 100%;
  height: 0;
  padding-top: 47.777%;
  background-size: cover;
}
.top-slide .top-slideitem.bg01 {
  background-image: url(../img/top/bg_topslide01.jpg);
}
.top-slide .top-slideitem.bg02 {
  background-image: url(../img/top/bg_topslide02.jpg);
}
.top-slide .top-slideitem.bg03 {
  background-image: url(../img/top/bg_topslide03.jpg);
}
.top-slide .top-slideitem.is-hidden {
  opacity: 0;
}
.picup {
	width: 100%;
	width: calc(100% - 20px);
	margin: 20px auto 0;
}
.picup-mainttl {
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 5px;
}
.picup-mainttl .inner {
	display: inline-block;
	width: 201px;
	height: 13.5px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background-image: url(../img/top/bg_ttl_picup_sp.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  -webkit-background-size: 201.5px 13.5px;
  background-size: 201.5px 13.5px;
}
.picup-area {
	width: 100%;
	margin-top: 15px;
}
.picup-list {

}
.picup-item {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	margin: 30px 0 0 0;
}
.picup-item:first-child {
	margin: 0;
}
.picup-img {

}
.picup-img img {
	width: 100%;
	height: auto;
}
.picup-body {

}
.picup-ttl {

}
.picup-ttl a {
	position: relative;
	display: inline-block;
	text-align: left;
	width: 100%;
	font-size: 18px;
	color: #000;
	line-height: 44px;
	border-bottom: 2px solid #000;
}
.picup-ttl a:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  display: inline-block;
  width: 20px;
  height: 10.06px;
  background-image: url(../img/top/icon_toparrow.svg);
  background-repeat: no-repeat;
  background-position: 0 0;
  -webkit-background-size: 20px 10.06px;
  background-size: 20px 10.06px;
  margin: auto;
}
.picup-lead {
	font-size: 12px;
	line-height: 1.6;
	margin-top: 10px;
}
.infoarea {
  background-image:url(../img/top/bg_infoarea.svg);
  background-repeat: repeat;
  background-position: 0 0;
  -webkit-background-size: 3px 3px;
  background-size: 3px 3px;
  margin-top: 50px;
}
.infoarea-inner {
  width: 100%;
  width: calc(100% - 20px);
  padding: 15px 0 30px;
  margin: 0 auto;
  overflow: hidden;
}
.infosec {
  width: 100%;
  height: 240px;
  background: #fff;
  box-sizing: border-box;
  padding: 10px;
}
.infosec-ttl {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
.infosec-ttl .inner {
  display: inline-block;
  width: 145px;
  height: 14px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url(../img/top/bg_ttl_info_sp.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  -webkit-background-size: 145px 14px;
  background-size: 145px 14px;
}
.infosec-list {
  height: 180px;
  overflow-y: auto;
}
.infosec-item {
  margin-top: 10px;
}
.infosec-item:first-child {
  margin-top: 0;
}
.infosec-area {

}
.infosec-meta {
  font-size: 12px;
  font-weight: bold;
}
.infosec-lead {
  font-size: 14px;
}
.infobtn-list {
  width: 100%;
  margin-top: 30px;
}
.infobtn-item {
  margin-top: 15px;
}
.infobtn-item a {
  display: block;
  font-size: 18px;
  color: #fff;
  line-height: 52.5px;
  text-align: center;
  background: #eb5c02;
}
.infobtn-item.sp a {
  background: #000;
}
.infobtn-item.secondary a {
  background: #006ab4;
}
.infobtn-item .inner {

}
.infobtn-item .sublead {
  display: none;
}



/*
 * FOOTER
 * ----------------------------------------------- */

#footer{
	color:#39474e;
	font-size:11px;
	background:#eeefef;
	border-top:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
	overflow:hidden;
	margin-top:0px;
	}
#footerinner{
	text-align:center;
	width:100%;
	margin:0 auto;
	}

.fmail{
	float:none;
	padding:5px 20px 10px;
	}
.fcopy{
	padding:10px 10px 5px;
	font-size:10px;
	float:none;
}
