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

html{
	overflow-x:hidden;
	}

.inner {
	overflow: hidden;
}
.container {
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 56px;
}
.bg_container .container {
	margin-bottom: 0;
}
.bg_container {
	padding-top: 40px;
	padding-bottom: 40px;
	margin-bottom: 56px;
}
#wrap {
	width: 100%;
	/*position: relative;*/
}
#side_bg {
	width: 7.81%;
	height: 100%;
	position: fixed;
	z-index: 100;
	background-color: #f8f8f8;
}
#side {
	text-align: center;
	padding-top: 30%;
	padding-bottom: 10%;
}
#g_nav li a {
	display: block;
	/*padding-top: 10%;*/
	/*padding-bottom: 10%;*/
	/*padding:10% 20%;*/
	margin:0 auto;
}
#g_nav li a:hover {
	opacity: 1;
	background-image: url(img/index/nav_hover.png);
}
#g_nav li .hover {
	background-image: url(img/index/hover_page.png);
}
#main {
	width: 92.19%;
	margin-left:7.81%;
}
#main .main_image {
	width: 100%;
	position: relative;
}
#main .main_image header {
	z-index: 900;
	width: 960px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 20px;
	margin-bottom: 20px;
}
.main_image header .inner .logo {
	float: left;
	width: 488px;
	display: block;
	padding-top: 10px;
}
.main_image header .inner .add {
	float: right;
	width: 225px;
	text-align: left;
}
header .inner .tel_area .tel.webfont {
	font-size: 24px;
	font-size:2.4rem;
	font-weight: 600;
}
.main_image header .inner .tel_area {
	width: 220px;
	float: left;
	margin-right: 20px;
	text-align: center;
	padding-top: 15px;
}
.main_image header h1 {
	color: #333;
	font-size: 10px;
	margin-bottom: 10px;
}
.inner .add .form a {
	background-color: #FFF;
	border: 2px solid #1169aa;
	display: inline-block;
	padding: 4px 20px 4px 15px;
	font-weight: bold;
	color: #1169aa;
	font-size: 13px;
	font-size: 1.3rem;
	text-align: center;
}
.inner .add .form a:hover {
	background-color: #1169aa;
	color: #FFF;
	opacity: 1;
}
.inner .add .form {
	margin-left: auto;
	margin-right: 0px;
	text-align: center;
	margin-top: 10px;
	display: block;
}

/*******コンテンツ*********/

#contents {
	width: 100%;
	padding-top: 56px;
}
.main_ment {
	font-size: 30px;
	font-size:3.0rem;
	letter-spacing: 0.2em;
}
.container.top3 .inner .name {
	font-size: 20px;
	text-align: center;
	margin-top: 15px;
}
.container.top3 .inner .box {
	width: 230px;
	margin-right: 10px;
	float: left;
}
.container.top3 .company_area .inner .box  {
	width: 220px;
}
.container.top3.inner .company_area .inner .box2 {
	margin-right: 0;
	width: 220px;
}
.container.top3 .inner .box2 {
	width: 230px;
	float: left;
}
.container.top3 .inner .box3 {
	width: 250px;
	margin-right: 55px;
	float: left;
}
.inner.top1 .box {
	width: 300px;
	margin-right: 14px;
	float: left;
}
.inner.top1 .box.m_off {
	margin-right: 0;
}
.top1 .img_block {
	display: block;
	margin-bottom: 16px;
}
.inner.top1 .box .name a {
	display: block;
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	color: #333;
	margin-bottom: 8px;
	font-weight: bold;
}
.inner.top1 .box .name {
	display: block;
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	color: #333;
	margin-bottom: 8px;
	font-weight: bold;
}
.inner.top1 .box .name a:hover {
	opacity: 1;
	text-decoration: underline;
}
#contents .container .inner.topics {
	position: relative;
}
.container .inner.topics .list {
	position: absolute;
	top: 12px;
	right: 0px;
}

.container .inner.top2 .ta_c.mb30.main_ment {
	float: left;
}

/*******更新記事一覧*********/

.bg_container.top2 {
	background-color: #fdfdfd;
}
.top2  .title    {
	float: left;
}
.top2 .list {
	float: right;
	margin-top: 6px;
	padding-bottom: 16px;
}
.top2 .wp_list li {
	display: block;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e0e0e0;
	font-size: 15px;
	position: relative;
}

.wp_list li.new a.updatetitle {
	/*padding-right: 40px;*/
	/*background-image: url(img/index/new025_15.gif);*/
	/*background-repeat: no-repeat;*/
	/*background-position: right center;*/
}

.top2 .wp_list li a:hover {
	opacity: 1;
}
.top2 .wp_list li .readmore {
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	color: #3498db;
	display: inline-block;
	padding: 4px 12px;
	border: 1px solid #3498db;
	background-color: #FFFFFF;
	position: absolute;
	right: 0px;
	top: 15px;
	font-family: 'Source Sans Pro', sans-serif;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.top2 .wp_list li .readmore:hover {
	color: #FFFFFF;
	background-color: #3498db;
	opacity: 1;
}
.top2 .wp_list li .cat a {
	text-align: center;
	width: 80px;
	display: inline-block;
	font-size: 11px;
	font-weight: bold;
	color: #FFF;
	padding: 2px;
	background-image: url(img/index/cat_bg.png);
	background-repeat: repeat;
}
.fuld .inner .box {
	width: 33.33%;
	float: left;
}
.container.top3.inner .soft_area {
	width: 470px;
	float: left;
	padding-right: 19px;
	border-right: 1px solid #ccc;
}
.company_area .inner .box2 .img_block {
	display: block;
}
.container.top3.inner .company_area {
	width: 450px;
	float: left;
	padding-left: 20px;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align:bottom;
}
section.fuld {
}
.access.white .container.inner .box .title {
	color: #FFF;
}
.access {
	width: 100%;
	padding-top: 56px;
	padding-bottom: 40px;
	background-image: url(img/index/access_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	margin-bottom: 30px;
}
.access.white .container.inner .box {
	width: 600px;
	float: left;
	padding-top: 15px;
}
.access.white .container.inner figure {
	float: left;
	width: 350px;
	margin-top: 15px;
}

/*******メガメニュー*********/

.mega{
	color: #333;
  	background-image: url(img/index/hover_opacity.png);
	width:0px;
	position:fixed;
	top:0px;
	left:7.81%;
	/*height:100%;*/
	padding-top:3.3%;
	padding-bottom:3.3%;
	display:none;
	/*background: rgba(255,255,255, 0.8);*/
}

.mega img{
	padding:4px;
}

.img_outer{
	border:#6cc1e0 solid 1px;
	}

#g_nav .mega ul li{
	color:#333;
	width:100%;
}

#g_nav .mega ul li a{
	display:block;
	font-size:14px;
	color:#333;
	background-image:url(img/index/bg_arrow.png);
	background-repeat:no-repeat;
	background-size:4%;
	background-position:center left 10%;
	text-align:left;
	padding:10% 5% 10% 20%;
}
#g_nav .mega ul li a:hover{
	display:block;
	color:#333;
	
	background-image: url(img/index/bg_arrow.png), url(img/index/hover2.png);

    background-position: center left 10%, left top;

    background-repeat: no-repeat, repeat;

    background-size: 4%, auto;

}

/*全画面＆スライドショー用*/
.kvc {
    position: absolute;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    background-image: url(img/index/slide1.jpg);
    background-size: cover;

    padding-top: 0px;
	background-repeat:no-repeat;
}

.slide_text {
text-align: center;
    display: block;
    width: 10%;
    position: absolute;
    top: 50%;
    right: 5%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
	padding-top:130px;
}

.slide_text img{
	max-width:100%
	}

figure {
	position: relative;
	overflow: hidden;
	
}
figure figcaption .top_mainservice {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding-bottom: 15px;
	background-repeat: no-repeat;
	background-position: left bottom;
	margin-bottom: 20px;
}
figure figcaption .top_mainservice.type_g {
	background-image: url(img/index/contents3_border1.png);
}
figure figcaption p {
	max-width: 82%;
	font-size: 14px;
	line-height: 2.2;
}
figure figcaption .top_mainservice.type_o {
	background-image: url(img/index/contents3_border2.png);
}
figure figcaption .top_mainservice.type_b {
	background-image: url(img/index/contents3_border3.png);
}

/*ホバーキャプションデモ３*/

figure.snip1194 {
  /*font-family: 'Raleway', Arial, sans-serif;*/
  color: #fff;
  position: relative;
  float: left;
  overflow: hidden;
  min-width: 220px;
  max-width: 100%;
  width: 100%;
  background: #333;
  color: #000000;
  text-align: center;
}
figure.snip1194 * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
figure.snip1194 img {
  opacity: 1;
  width: 100%;
  -webkit-transition: opacity 0.35s;
  transition: opacity 0.35s;
}
figure.snip1194 figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
figure.snip1194 h3,
figure.snip1194 p {
  margin: 0;
  position: absolute;
  width: 100%;
  left: 0;
  opacity: 0;
  color:#FFFFFF;
}
figure.snip1194 h3 {
  text-align:left;
  display: inline-block;
  text-transform: uppercase;
  bottom: 72%;
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
  margin-left:9%;
}
figure.snip1194 h3 span {
  font-weight: 400;
}
figure.snip1194 p {
  top: 32%;
  margin-left:9%;
  
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
  text-align:left;
}
figure.snip1194 a {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
}
figure.snip1194:hover img,
figure.snip1194.hover img {
  opacity: 0.3;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}
figure.snip1194:hover figcaption h3,
figure.snip1194.hover figcaption h3,
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}
figure.snip1194:hover figcaption h3,
figure.snip1194.hover figcaption h3 {
  opacity: 1;
}
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
  opacity: 1;
}

/*ホバーキャプション用ここまで*/

#side #g_nav li a img{
	max-width:101%;
	}
	
#mega_about{
	margin-top:3.8%;
	}
	
#mega_corporate-service{
	margin-top: 10.2%;
	padding-top:1.6%;
	padding-bottom:1.6%;
	}

#mega_private-service{
	margin-top:13.25%;
	}
	
#mega_souzoku{
	margin-top:20.3%;
	padding-top:1%;
	padding-bottom:1%;
	}
	
#mega_useful{
	margin-top:22.7%;
	}
	
#mega_access{
	padding-top:30.75%;
	}

.fuld .box a{
	opacity:1;
	}

body .access .toMap{

    background-color: #FFF;
    display: inline-block;
    padding: 4px 20px 4px 15px;
    font-weight: bold;
    color: #1169aa;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
}

.access.white .container.inner .box .title{
	margin-bottom:40px;
	}

@media screen and (max-width: 1500px) {
	
	#g_nav li a{
		/*padding:15% 30%;*/
		}
		
	figure figcaption p{
		line-height:1.4em;
		}
		
	figure figcaption .top_mainservice{
		margin-bottom:10px;
		}
	
	#mega_about{
		margin-top:3.5%;
	}
	
	#mega_corporate-service{
		margin-top: 10.15%;
	}

	#mega_private-service{
		margin-top:12.95%;
	}
	
	#mega_private-service{
	margin-top:12.85%;
	}
	
	#mega_souzoku{
	margin-top:20.1%;
	}
	
	#mega_useful{
	margin-top:22.2%;
	}
	
	.mega{
		padding-top:3.6%;
		padding-bottom:3.6%;
	}
	
}

/*---------- サイドバー テキスト可変 ----------*/
@media screen and (max-width: 1280px) {
	
	#g_nav .mega ul li a{
		font-size:11px;
		}
		
	
}
	
/*---------- サイドバー テキスト可変 ----------*/
@media screen and (max-width: 1000px) {
	
	#g_nav .mega ul li a{
		font-size:9px;
		}
	
	}
	
