@charset "UTF-8";
/****************************************************************************
	body設定
*****************************************************************************/

body{
	color: #000;
	font-size: 20px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	line-height: 32px;
	text-align: center;
	overflow-wrap : break-word;
	 -webkit-text-size-adjust: 100%;
}


h2,h3,h4{text-align: left;}

a {color: #000;
	text-decoration:none;
	}
a:hover {
	color: #000;
	text-decoration:underline;
	}
img {
	margin: 0  ;
	padding: 0;}


#container{
	width: 100%;
	max-width:1920px;
	margin: 0 auto ;
	text-align: center;
	overflow: hidden;
	
}

#main {
	width: 100%;
	max-width: 1630px;
	min-width: 990px;
	height: 100%;
	min-height: 1600px;
 	box-sizing: border-box;
	display:table-cell;
	vertical-align: top;
}
#left_column {
	width: 290px;
	padding: 0 0 0 0;
	background-color: #333;
	background-image:url(../img/common/menu_comm.png);
	background-repeat: no-repeat;
	background-position: center 348px;
	display: table-cell;
	position: relative;
}
#mark {
	width: 290px;
	position: absolute;
	background-color: #fff;
	bottom: 0;
	left: 0;
	z-index: 200;
}
.quiz_bnr {
	width: 220px;
	position: absolute;
	background-color: #fff;
	top: 1100px;
	left: 35px;
	z-index: 1;
}
#head_logo {
	width:214px;
	margin:98px auto;
	}

.pc{display:inline;}
.sm{display:none;}
/****************************************************************************
	コンテンツ設定
*****************************************************************************/

/*	ヘッダー
----------------------------------------------------------------------------*/
#header {
	display: none;
}

h1{
	paddning: 13px 0 0 0;
	font-size: 12px;
	line-height:15px;
	height: 30px;
	text-align: left;
	color:#4d4d4d;
}



/*	グローバルナビ
----------------------------------------------------------------------------*/

.navi{
	width:290px;
	position: relative;
	z-index: 100;
	
}
.navi ul:before, .navi ul:after{
	content: "";
	display: table;
}
.navi ul:after{
  clear: both;
}
.navi  ul {
	display: none;
	margin: 0 auto;
	width:290px; 
	background-color: rgba(51,51,51,0.9);
	background-image: url(../img/common/menu_back.png);
	background-repeat: repeat-y;
	background-position: center;
}
.navi  li{
	margin: 0  ;
  	padding:  0 ;
	display: inline;
}
.navi li a{
	width: 260px;
	font-size:20px;
	line-height: 40px;
	font-weight:bold;
	text-decoration:none;
	color:#fff;
	text-align:center;
	padding:6px 0;
	display:block;
	margin:  6px 0 6px 30px;
	text-decoration: none;
}
.navi li a:hover{
	background-color: rgba(255,255,255,0.25);
	text-decoration: none;
}
.navi p span {
	display:block; 
	margin: -32px 0 0 0;
	z-index: 10; 
	position: relative; 
}
.navi p span:hover {
	cursor: pointer;
}

.navi  p span { 
	background-image:url(../img/common/menu_open.png);
	background-position: center;
	background-repeat:no-repeat;
	 }
.navi  p span.open {
	background-image:url(../img/common/menu_close.png);
	background-position:  center ;
	background-repeat:no-repeat;
	
	 }
.navi li.second ul {
	background-color: rgba(51,51,51,0); 
	margin: -16px 0 0 0; 
	background-image: none;
}
.navi li.second p span { 
	width: 260px;
	background-image:none;
	font-size:20px;
	line-height: 40px;
	font-weight:bold;
	text-decoration:none;
	color:#fff;
	text-align:center;
	padding:6px 0;
	display:block;
	margin:  16px 0 16px 30px;
	 }
.navi li.second ul li a{ 
	font-size: 16px; 
	line-height: 20px; 
	padding: 10px 0; 
	background-color: rgba(255,255,255,0.5); 
}
.navi li.second p span:hover {
	background-color: rgba(255,255,255,0.25);
}

.navi li.second p span {
	 background-image:none;
	background-position:90%;
	 background-repeat:no-repeat;
	 }
.navi li.second p span.arrow  {
	 background-image:url(../img/common/naviclose.png);
	background-position:90%;
	 background-repeat:no-repeat;
	 }

.navi .p6 a {width: 204px; border: 1px solid #fff;  box-sizing: border-box; padding:16px 0; border-radius: 4px; margin: 120px 0 50px 57px;}
.navi .p7 a {font-size: 14px; line-height: 16px; padding:10px 0; margin: 10px 0 0 30px;}
.navi .p8 a {font-size: 14px; line-height: 16px; padding:10px 0; margin: 10px 0 0 30px;}
.navi .p9 a {font-size: 14px; line-height: 16px; padding:10px 0; margin: 10px 0 0 30px;}
.navi .p10 a {font-size: 14px; line-height: 16px; padding:10px 0; margin: 10px 0 100px 30px;}
.home .navi .p0 a {background-color: rgba(255,255,255,0.25);}
.product .navi .p1 span {background-color: rgba(255,255,255,0.25);}
.achievement .navi .p2 {background-color: rgba(255,255,255,0.25);}
.company .navi .p3 span {background-color: rgba(255,255,255,0.25);}
.recruit .navi .p4 span {background-color: rgba(255,255,255,0.25);}
.contact .navi .p5 a {background-color: rgba(255,255,255,0.25);}
.privacy .navi .p7 a {background-color: rgba(255,255,255,0.25);}
.sitemap .navi .p8 a {background-color: rgba(255,255,255,0.25);}
.link .navi .p9 a {background-color: rgba(255,255,255,0.25);}

/*	グローバルナビ(スマホ用)
----------------------------------------------------------------------------*/
#category_list{
	display: none;
	
}

/*	フッター
----------------------------------------------------------------------------*/
#footer{
	background-color: #cccccc;
	padding: 105px 0 0 290px;
	text-align: center;
	margin:  0;
	position: relative;
	}

.footer_logo {
	width: 215px;
	padding: 0 ;
	margin: 0 auto 56px auto;
	}	
.footer_logo img {
	width: 100%;
	height: auto;
	margin: 0 ;
}



#footer_copy{
	height:45px;
	font-size:13px;
	line-height:45px;
	padding: 0;
	text-align:center;
	}
.page_top {
	width: 56px;
	position: fixed;
	right: 20px;
	bottom: 100px;
}
.page_top:hover {
	cursor: pointer;
}
/*	共通
----------------------------------------------------------------------------*/

.center{text-align: center;}
.clear{clear: both; overflow: hidden; margin:  auto;}
.int10 {
	text-indent:-1em;
	padding-left:1em;
}

.breadcrumbs {
	font-size: 0.8854vw;
	line-height: 1em;
	text-align: left;
	background-color: #ccc;
	padding: 0.5em 0 0.5em 1.2%;
}
.breadcrumbs a {
	color: #333;
}

.page_title {
	background: rgba(255,255,255,0.85);
	padding: 0 2.8% 1.875vw 2.8%;
}
.page_title span {
	width: 100%;
	font-size: 1.25vw;
	line-height: 1.4em;
	text-align: center;
	padding: 0.83em 0;
	border-bottom: 2px solid #3fa9f5;
	display: block;
}
.title {
	width: 100%;
	margin: 0 auto 0 auto;
	font-size: 1.25vw;
	line-height: 1.4em;
	text-align: center;
	color: #fff;
	padding: 0.5em 0 0.5em 0;
	background-color: #3fa9f5;
}
.cont {
	min-height: 900px;
	width: 80%;
	font-size: 0.833vw;
	line-height: 2em;
	text-align: left;
	margin: 0 auto 80px auto;
}
/*　TOP
----------------------------------------------------------*/
.top_head_img {
	width: 100%;
}
.top_head_img img {
	width: 100%;
	height: auto;
}
.top_catalog {
	width: 95%;
	margin: 7% 2.5% 7% 2.5%;
	padding: 0;
}
.top_catalog img {
	width: 100%;
	height: auto;
}
.top_catalog .lead {
	width: 73%;
	margin: 0 3% 30px 6%;
	float: left;
}
.top_catalog .bt {
	width: 18%;
	margin: 0 0 3% 0;
	float: left;
}
.top_catalog li {
	width: 20%;
	float: left;
	font-size: 0.8854vw;
	line-height: 1.2em;
	text-align: center;	
}
.top_catalog ul:before, .top_catalog ul:after{
	content: "";
	display: table;
}
.top_catalog ul:after{
  clear: both;
}
.top_dict {
	width: 86%;
	margin: 40px auto 80px auto;
	background: linear-gradient(-60deg, rgba(0, 113, 188, .9), rgba(237, 28, 36, .9));
	padding: 1.5em 0;
}
.top_dict_in {
	width: 50%;
	float: left;
	font-size: 0.8854vw;
	line-height: 2em;
	text-align: center;
	color: #fff;
}
.top_dict_in span {font-size: 0.9375vw;}
.top_work {
	width: 92%;
	padding:2% 4% 4% 4% ; 
	margin: 0 auto ;
	background-image: url(../img/top/work_back.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	position: relative;
}
.top_work img {
	width: 100%;
	height: auto;
}
.top_work .title_01 {
	width: 42%;
	margin: 2% 58% 4% 0;
}

.top_work .mean {
	width: 20%;
	/*max-width: 333px;
	height: 20em;
	background-image: url(../img/top/work_mean.png);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	font-size: 0.75vw;
	line-height: 2.86em;
	text-align: center;
	padding: 2.66em 0 0 0;
	margin: 0;
	color: #fff;*/
	position: absolute;
	bottom: 5%;
	right: 3%;
}
.top_work .mean span {font-size: 0.9375vw;}
.top_work .top_img {
	width: 21%;
	margin: 0 6% 0 0;
	float: left;
}
.top_work .top_img img {
	margin-bottom: 5%;
}
.top_work .top_text {
	width: 60%;
	margin: 0 0 0 0;
	font-size: 0.98vw;
	line-height: 2em;
	text-align: left;
	float: left;
}
.top_work .top_text .lead {
	width: 100%;
	height: auto;
	margin-left: -2%; 
	margin-bottom: 1.5%;}
.top_comp {
	width: 92%;
	padding:2% 4% 4% 4% ; 
	margin: 0 auto ;
	background-image: url(../img/top/comp_back.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	position: relative;
}
.top_comp img {
	width: 100%;
	height: auto;
}
.top_comp .title_02 {
	width: 23%;
	margin: 2% 0 4% 77%;
}
.top_comp .mean {
	width: 20%;
	/*max-width: 333px;
	height: 20em;
	background-image: url(../img/top/comp_mean.png);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	letter-spacing: -0.05em;
	font-size: 0.75vw;
	line-height: 2.86em;
	text-align: center;
	padding: 2.66em 0 0 0;
	margin: 0;
	color: #fff;*/
	position: absolute;
	bottom: 8%;
	left: 4%;
}
.top_comp .mean span {font-size: 0.9375vw;}
.top_comp .top_img {
	width: 21%;
	margin: 0 6% 20% 0;
	float: left;
}
.top_comp .top_img img {
	margin-bottom: 5%; 
}
.top_comp .top_text {
	width: 67.6%;
	margin: 0 0 0 0;
	font-size: 0.9375vw;
	line-height: 2em;
	text-align: right;
	float: left;
}
.top_comp .top_text .lead { 
	width: 82.8%;
	height: auto;
	margin-bottom: 20px; 
	margin-left: 17.2%; }
.top_news {
	width: 92%;
	padding: 0;
	margin: 2% 4%;
}
.top_news_title {
	text-align: left;
	margin: 0 auto 40px auto;
}

.top_news .bt a{
	width: 180px;
	font-size: 0.677vw;
	line-height: 1em;
	padding: 11px 0;
	text-align: center;
	margin: 0;
	border: 1px solid #808080;
	color: #666;
	float: right;
}
.top_news .bt a:hover{
	text-decoration: none;
	background-color: #E0E0E0;
}
.top_news ul#newsList{
	margin:0 auto;
	padding:0;

}
.top_news ul#newsList li{
	width: 30%;
	font-size:0.78125vw;
	text-align: left;
	margin:0 3% 0 0;
	padding:0 0;
	line-height:120%;
	list-style-type:none;
	float: left;
}

.top_news #newsWrap a{color:#333;text-decoration:none;}
.top_news #newsWrap a:hover{color:#333;text-decoration:underline;}
.up_ymd {
	font-size: 0.78125vw;
	padding: 0 40px 0 0;
	}
.news_title {
	width: 100%;
	font-size: 0.9375vw;
	text-align: left;
	padding: 10px 0;
	}
.catName{
	display:inline-block;
	padding:3px 8px;
	border:1px solid #ccc;
	border-radius:6px;
	font-size:11px;
	line-height:100%;
	margin:0 10px;
}
.newMark{
	display:inline-block;
	border:1px solid #F00;
	padding:1px 4px;
	font-size:0.5729vw;
	line-height:100%;
	background:#F00;
	color:#fff;
	box-shadow:1px 1px 1px #999;
	border-radius:8px;
	margin: 0 2%;
	font-style:italic;
}
.comment{
	display:block;
	padding:3px 0;
	float:left;
	overflow:hidden;
	width:100%;/* 本文部分の幅。ここは特に設置ページ合わせて変更下さい */
}
.thumbNailWrap{
	display:block;
	width:100%;
	float:left;
	height:9.375vw;
	margin: 2% 0 2% 0;
	overflow:hidden;
}
.thumbNailWrap img {
	width: 100%;
	height: auto;
}
.top_news_cont dl{
	width: 100%;
	margin: 0 auto ;
}
.top_news_cont dl:before, .top_news_cont dl:after{
	content: "";
	display: table;
}
.top_news_cont dl:after{
  clear: both;
}
.top_news_cont dt{
	width: 180px;
	padding: 17px 20px;
	font-size: 16px;
	line-height: 1em;
	margin: 0 0 5px 0;
	float: left;
	border-bottom: 1px solid #ccc;
}
.top_news_cont dd{
	width: 840px;
	padding: 17px 20px;
	font-size: 16px;
	line-height: 1em;
	margin: 0 0 5px 0;
	float: left;
	border-bottom: 1px solid #ccc;
}
.top_seo {
	width: 1050px;
	margin: 30px auto;
	font-size: 16px;
	line-height: 25px;
	text-align: left;
}
/*　営業案内
----------------------------------------------------------*/
.product .head_img {
	width: 100%;
}
.product .head_img img {
	width: 100%;
	height: auto;
}
.product .lead {
	width: 45%;
	margin: 2% 27.5% 5% 27.5%;
}
.product .lead  img {
	width: 100%;
	height: auto;
}
.itemlist {
	width: 100%;
	margin: -30px  auto 20px auto;
}
.itemlist ul {
	width: 100%;
	padding: 6px 0 6px 0;
	margin: 0 auto 20px auto;
}
.itemlist ul:before, .itemlist ul:after{
	content: "";
	display: table;
}
.itemlist ul:after{
  clear: both;
}
.itemlist li {
	width: calc( 50% - 50px - 1em ) ;
	padding: 0 0 0 1em;
	margin: 0 0 0 50px;
	font-size: 0.8854vw;
	line-height: 2em;
	text-indent: -1em;
	text-align: left;
	float: left;
}

.itemlist li span {
	color: #3fa9f5;
}
.product .comm {
	padding: 1.5em 5%;
	font-size: 0.8854vw;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
}
.product .comm2 {
	padding: 1.5em 5%;
	font-size: 0.8854vw;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
	background-color: #f4f4f4;
}
.product .section {
	width: 100%;
	margin: 0 auto;
}
.product .section .box {
	width: 50%;
	margin: 0;
	float: left;
	position: relative;
}
.product .section .box img {
	width: 100%;
	height: auto;
}
.product .section .box .name {
	font-size: 1.25vw;
	line-height: 1.75em;
	text-align: center;
}
.product .section .box .name span {font-size: 0.8854vw;}
.product .section .box .text {
	width: calc( 100% - 60px ) ;
	padding: 2% 4%;
	font-size: 0.8854vw;
	line-height: 2em;
	
	text-align: left;
	color: #fff;
	box-sizing: border-box;
	position: absolute;
	bottom: 30px;
	left: 30px;
}
.box_w {width: 100%;
	margin: 0;
	
	position: relative;
}
.box_w img {
	width: 50%;
	height: auto;
}
.box_w .name {
	font-size: 1.25vw;
	line-height: 1.75em;
	text-align: center;
}
.box_w .name span {font-size: 0.8854vw;}
.box_w .text {
	width: calc( 50% - 60px ) ;
	padding: 2% 6%;
	font-size: 0.8854vw;
	line-height: 2em;
	
	text-align: left;
	color: #fff;
	box-sizing: border-box;
	position: absolute;
	bottom: 30px;
	left: calc( 25% + 30px );
}
.blue {background-color: rgba(0,113,188,0.9); }
.green {background-color: rgba(30,170,57,0.9);}
.orange {background-color: rgba(241,90,36,0.9);}
.purple {background-color: rgba(152,0,160,0.9);}
.red {background-color: rgba(237,28,36,0.9);}
.black {background-color: rgba(51,51,51,0.9);}

.cost_img {
	width: 80%;
	margin: 5% 10%;
}
.cost_img img{
	width: 100%;
	height: auto;
}
.cost {
	width: 100%;
	background-image: url(../img/product/cost_back.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 20px 0 20px 0;
	margin: 20px 0 -20px 0;
}
.cost_in {background-color: rgba(255,255,255,0.8);}
.cost .box {
	width: calc( 50% - 8% ) ;
	border: 1px solid #3fa9f5;
	margin: 0 4% 2.35em 4%;
	padding: 0 4% 0.59em 4%;
	font-size: 0.833vw;
	line-height: 2em;
	text-align: left;
	float: left;
	box-sizing: border-box;
	
}
.cost .box .name {
	width: 12em;
	font-size: 0.9895vw;
	color: #3fa9f5;
	padding: 1px 3px;
	background-color: #fff;
	display: block;
	margin: -1em 0 0.5em 0;
}
.product .subtitle {
	font-size: 1.25vw;
	line-height: 1.4em;
	text-align: center;
	padding: 0.83em 0;
	margin: 0 3% 1.875em 3%;
	border-bottom: 2px solid #3fa9f5;
	display: block;
}

/*　製作事例
----------------------------------------------------------*/
.achievement .head_img {
	background-image: url(../img/achievement/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 200px 0 0 0;
	overflow: hidden;
}
.achiev_cont:before, .achiev_cont:after{
	content: "";
	display: table;
}
.achiev_cont:after{
  clear: both;
}
.achiev_cont {
	width: 100%;
	min-height: 1300px;
	background-color:  #ededed;
	
}
 ul.catalog {
	 width: 90%;
	margin: 0 5% 80px 5%;
	padding:0;
}
ul.catalog li{
	width: calc(33% - 36px) ;
	height: 18.23vw;
	padding: 20px 10px;
	font-size:1.042vw;
	margin: 8px;
	text-align: center;
	line-height:120%;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
ul.catalog li img{
	width: 70% ;
	margin: 5% 15%;
}
.achievement #newsWrap {
	width: 100%;
	padding: 10px 0;
	
}
.achievement ul#newsList{
	width: 100%;
	margin: 0 auto 80px auto;
	padding:0;
	
}

.achievement ul#newsList li{
	width: calc(50% - 76px) ;
	padding: 20px 30px;
	margin: 8px;
	text-align: left;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
.achievement .thumbNailWrap {
	width: 40%;
	margin: 3% 2% 0 0;
	float: left;
}
.achievement .thumbNailWrap img {
	width: 100%;
	height: auto;
}
.achievement .news_title {
	width: 100%;
	font-size: 1.25vw;
	line-height: 1.25em;
	text-align: center;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
}
.achievement .news_title a {color: #3fa9f5;}
.achievement .comment {
	width: 58%;
	padding: 0 0 20px 0;
	float: right;
	}
.achievement .comment p {
	padding: 2% 8%;
	font-size:0.729vw;
	height: 5.83vw;
	line-height: 2em;
}
.achievement .bt_detail a{
	width: 45%;
	font-size: 1.04166vw;
	line-height: 1em;
	text-align: center;
	color: #fff;
	padding: 1em 0;
	margin: 10% 5% 0 55%;
	background-color: rgba(0,0,0,1);
	display: block;
}
.achievement .bt_detail a:hover{
	background-color: rgba(0,0,0,0.7);
	text-decoration: none;
}
.achievement #detail {
	width: 64%;
	text-align: left;
	margin: auto;
	}
.achievement .bt_list a{
	width: 35%;
	font-size: 1.04166vw;
	line-height: 1em;
	text-align: center;
	color: #3fa9f5;
	padding: 1em 0;
	margin: 10% 0 0 65%;
	background-color: rgba(237,237,237,1);
	display: block;
}
.achievement .bt_list a:hover{
	background-color: rgba(237,237,237,0.7);
	text-decoration: none;
}
.achievement .detail_in #up_ymd{
	width: 100%;
	text-align:right;
	font-size:0.677vw;
	margin:5px 10px;
	float: right;
}

.achievement .detail_in {
	width: 44%;
	margin:0 0 0 6%;
	text-align:left;
	float: right;
	
}
.achievement .detailUpfile{
	width: 50%;
	margin:0 0 0 0;
	text-align:left;
	float: left;
	
}
.achievement .detailUpfile img{
	width: 100%;
	height: auto;
	
}
.achievement .detail_in .news_title {
	width: 100%;
	font-size: 1.25vw;
	line-height: 1.25em;
	text-align: center;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
	
}
.achievement .detail_in .news_title a {color: #3fa9f5;}
.achievement .detail_in .detailText {
	font-size: 0.72916vw;
	line-height: 2em;
	width: 100%;}


.pNav{
	font-size:11px;
	text-align: left;
}
/*　会社案内
----------------------------------------------------------*/
.company .head_img {
	background-image: url(../img/company/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 200px 0 0 0;
	overflow: hidden;
}
.gree {
	width: 100%;
	background-image: url(../img/company/back_01.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 15px 90px;
	margin: 0 0 0 0;
	box-sizing: border-box;
	
}
.gree:before, .gree:after{
	content: "";
	display: table;
}
.gree:after{
  clear: both;
}
.gree .text {
	width: 53%;
	padding: 2% 0 0 0;
	font-size: 0.833vw;
	line-height: 2em;
	text-align: left;
	float: left;
}
.gree .img_pre {
	width: 47%;
	margin: 0 0 0 0 ;
	float: left;
}
.gree .img_pre img {
	width: 100%;
	height: auto;
}
.gree .name {
	width: 35%;
	float: right;
	margin: 30px 3% 5% 0;
}
.gree .name img {
	width: 100%;
	height: auto;
}
.prof_cont {
	width: 100%;
	background-color: #efefef;
	padding: 30px 0 50px 0;
}
.company_table .office_img {
	width: 74%;
	margin: 0 13%;
}
.company_table {
	width: 55%;
	margin: 30px auto 50px auto;
}
.company_table table {
	width: 100%;
	margin: 30px auto 50px auto;
	border-spacing : 0 8px ;
       border-collapse : separate ; 
}
.company_table table th {
	width: 25%;
	font-size: 0.9375vw;
	line-height: 1.458vw;
	text-align: left;
	color: #fff;
	padding: 16px 10px 16px 50px;
	background-color: #3fa9f5;
}
.company_table a {
	color: #3fa9f5;
	text-decoration: underline;
}
.company_table a:hover {
	color: #3fa9f5;
	text-decoration: none;
}
.company_table .name {
	width: 3em;
	float: left;
}
.company_table .add {
	width: calc(100% - 3em);
	float: left;
}
.company_table table td {
	font-size: 0.7291vw;
	line-height: 1.458vw;
	text-align: left;
	padding: 10px 20px 10px 20px;
	background-color: #fff;
}
.company_table .img_l {
	width: 49%;
	margin: 0 2% 20px 0;
	float: left;
}
.company_table .img_r {
	width: 49%;
	margin: 0 0 20px 0;
	float: left;
}

.comp_imgbox {
    width: 100%;
    margin: 3% auto 0 auto;
	display: flex;
	flex-wrap:wrap;	
	justify-content: center;
}


.comp_imgbox .item {
	width: 83.4%;
}
.comp_imgbox .item img {
	width: 32%;
}

.company_table img {
	width: 100%;
	height: auto;
}
.company_table table .addless th{
	width: 2.5em;
	padding: 0 0;
	color: #000;
	font-size: 0.7291vw;
	line-height: 1.5em;
	vertical-align: top;
	background-color: #fff;
}
.company_table table .addless td{
	padding: 0 0;
	font-size: 0.7291vw;
	line-height: 1.5em;
}
.access {
	width: 100%;
	margin: 50px auto 20px auto;
}
.access iframe {
	width: 100%;
	height: 350px;
	margin-bottom: 40px;
}
.access .add {
	width: 44%;
	font-size:0.9375vw;
	line-height: 2em;
	text-align: left;
	padding: 5% 0 0 6%;
	float: left;
}
.access .add .logo {
	width: 44.8%;
	margin: 0 0 20px 0;
}
.access .add .logo img {
	width: 100%;
	height: auto;
}
.access .img {
	width: 50%;
	float: left;
}
.access .img img {
	width: 100%;
	height: auto;
}
.access .em02 {
	width: 2em;
}
.submap {
	width:  44%;
	margin: 50px 3% 50px 3%;
	float: left;
}
.submap iframe {
	width: 100%;
	height: 470px;
}
.submap .add {
	font-size:0.9375vw;
	line-height: 2em;
	text-align: left;
	padding: 0;
	margin: 0 0 20px 0;
	float: left;
}
.history_cont {
	width: 100%;
	background-image: url(../img/company/back_02.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 15px 0;
	box-sizing: border-box;
	
}	
.history_table {
	width: 55%;
	margin: 30px auto 50px auto;
}
.history_table table {
	width: 100%;
	margin: 30px auto 50px auto;
	
}
.history_table table th {
	width: 28%;
	font-size: 14px;
	line-height: 28px;
	text-align: left;
	padding: 16px 0 16px 0;
}
.history_table table td {
	font-size: 14px;
	line-height: 28px;
	text-align: left;
	padding: 10px 0 10px 0;
}
.history_img:before, .history_img:after{
	content: "";
	display: table;
}
.history_img:after{
  clear: both;
}
.history_img {
	width:  76%;
margin: 2% 12% 5% 12%;
}
.history_img img {
	width: 100%;
	height: auto;
}
.history_img .img_l {
	width: 32.5%;
	margin-right: 1.25%;
	float: left;
}
.history_img .img_r {
	width: 32.5%;
	margin-right: 0;
	float: left;
}
.comp_link:before, .comp_link:after{
	content: "";
	display: table;
}
.comp_link:after{
  clear: both;
}
.comp_link {
	width: 83.4%;
	margin: 3% auto 0 auto;
}
.comp_link li {
	width: 47%;
	margin: 0 1.5% 2.5% 1.5%;
	float: left;
}
.comp_link li img {
	width: 100%;
	height: auto;
}
/*　採用案内
----------------------------------------------------------*/
.recruit .head_img {
	background-image: url(../img/recruit/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 200px 0 0 0;
	overflow: hidden;
}
.recruit .head_img-b {
	background-image: url(../img/recruit/head_img-b.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 200px 0 0 0;
	overflow: hidden;
}
.guidance {
	
	background-image: url(../img/recruit/back_01.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 6.77vw 2.6vw 1vw 2.6vw;
	overflow: hidden;
}
.guidance .lead {
	width: 70%;
	font-size: 0.9375vw;
	line-height: 2em;
	text-align: left;
	float: right;
	margin: 0 0 20px 0;
}
.guidance .lead img {
	width: 100%;
	height: auto;
	margin: -1.5vw 0 1vw -1.35vw;
}
.guidance .img_01 {
	width: 22.5%;
	margin: 8% 0 2% 0;
	float: left;
}
.guidance .img_01 img {
	width: 100%;
	height: auto;
	margin: 0 0 5% 0;
	float: left;
}
.guidance .img_02 {
	width: 50%;
	margin: 0 0 0 0;
	float: left;
}
.guidance .img_02 img {
	width: 45.2%;
	height: auto;
	margin: 0 2.5% 0 0;
	float: left;
}
.guidance .img_03 {
	width: calc( 50% - 30px ) ;
	margin: 0 0 0 0;
	float: left;
}
.guidance .img_03 img {
	width: 45.2%;
	height: auto;
	margin: 0 0 0 2.5%;
	float: left;
}

.recruit .link {
	width:  50%;
	float: left;
	margin: 0;
	position: relative;
}
.recruit .link img {
	width: 100%;
	height: auto;
}
.recruit .link .bt_l a{
	width: 44%;
	background-color: rgba(51,51,51,1);
	font-size: 1.104vw;
	line-height: 1em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 1em 0;
	position: absolute;
	bottom: 8.5%;
	left: 28%;
}
.recruit .link .bt_l a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}

.recruit .link_b {
	width:  50%;
	margin: auto;
}

.recruit .link_b .btn a{
	width: 44%;
	background-color: rgba(51,51,51,1);
	font-size: 1.104vw;
	line-height: 1em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 1em 0;
	margin: 30px auto;
}
.recruit .link_b .btn a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}




.recruit .link .bt_r a{
	width: 44%;
	background-color: rgba(0,113,188,1);
	font-size: 1.042vw;
	line-height: 1em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 1em 0;
	position: absolute;
	bottom: 8.5%;
	left: 28%;
}
.recruit .link .bt_r a:hover {
	background-color: rgba(0,113,188,0.7);
	text-decoration: none;
}
.recruit .title_img img {
	width: 100%;
	height: auto;
} 
.recruit .comm {
	background-color: #ededed;
	padding: 1.5em 15%;
	font-size: 0.72916vw;
	line-height: 1.5em;
	text-align: left;
	margin: 0 auto;
}
.recruit .date {
	padding: 1em 0;
	font-size: 0.72916vw;
	line-height: 1.5em;
	text-align: left;
	margin: 0 auto;
}
.recruit .subtitle {
	font-size: 1.25vw;
	line-height: 1.4em;
	text-align: center;
	padding: 0.83em 0;
	margin: 0 3% 1.875em 3%;
	border-bottom: 2px solid #333;
	color: #333;
	display: block;
}
.recruit .gallery {
	width: calc( 50% - 60px ) ;
	margin: 0 10px 0 50px;
	float: left;
}
.recruit .gallery img {
	width: 46%;
	margin: 0 2.5% 5% 0;
	float: left;
}
.recruit_cont {
	width: 100%;
	background-color: #efefef;
	padding: 30px 0 50px 0;
	min-height:1000px;
}
.recruit_table {
	width:55%;
	margin: 30px auto 50px auto;
}
.recruit_table .comm {
	font-size: 0.72916vw;
	line-height: 2em;
	text-align: left;
}
.recruit_table table {
	width: 100%;
	margin: 0 auto 50px auto;
	border-spacing : 0 8px ;
       border-collapse : separate ; 
}
.recruit_table table th {
	width: 22%;
	font-size: 0.9375vw;
	line-height: 1.458vw;
	text-align: left;
	color: #fff;
	padding: 16px 10px 16px 50px;
	background-color: #3fa9f5;
}
.recruit_table table td {
	font-size: 0.7291vw;
	line-height: 1.458vw;
	text-align: left;
	padding: 10px 20px 10px 20px;
	background-color: #fff;
}
.recruit .bt a{
	width: 22%;
	background-color: rgba(51,51,51,1);
	font-size: 1.042vw;
	line-height: 1em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 1em 0;
	margin: 1.042vw auto 2.6vw auto;
}
.recruit .bt a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}
/*　お問い合わせ
----------------------------------------------------------*/
.contact .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.contact_cont {
	min-height:350px;
	padding: 30px 0;
}
.contact_cont .comm {
	font-size: 0.8854vw;
	line-height: 1.6em;
	text-align: center;
}
.contact_table {
	width: 55%;
	margin: 50px auto 80px auto;
	font-size: 0.72916vw;
	line-height: 2em;
	text-align: center;
	
}
.contact_table table {}
.contact_table th {
	width: 22%;
	font-size: 0.8854vw;
	line-height: 1.458vw;
	vertical-align: top;
	text-align: left;
	padding: 15px 10px 15px 0;

}
.contact_table td {
	font-size: 0.8854vw;
	line-height: 1.458vw;
	text-align: left;
	padding: 10px 20px 10px 0;

}
.contact_table span {
	font-size: 0.8854vw;
	line-height: 1em;
	text-align: center;
	padding: 0.5em;
	color:#fff;
	background-color: #3fa9f5;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	display: block;
	float: right;
	}
.contact_comm {
	font-size: 0.8854vw;
	line-height: 1.6em;
	text-align: center;
	margin: 30px 0;
}
.contact_tel {
	width: 24%;
	margin: 30px auto;
	font-size: 14px;
	line-height: 28px;
	text-align: center;
}
.contact_tel img {
	width: 100%;
	height: auto;
	margin: 0 0 30px 0;
}
.submit_btn{
	width: 245px;
	margin: 50px auto 80px auto;
	font-size: 1.042vw;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}
.submit_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
}

.return_btn{
	width: 245px;
	margin: 50px auto 80px auto;
	font-size: 1.042vw;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(0,0,0,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
	}


.return_btn:hover {
	background-color: rgba(0,0,0,0.7);
	text-decoration: none;
	}
.confirm_btn{
	width: 245px;
	margin: 50px auto 80px auto;
	font-size: 1.042vw;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
	}
.confirm_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
	}
.form_style{
	width:96%; 
	height:auto; 
	padding:2% 2% ;
	vertical-align:middle; 
	font-size:16px; 
	
	}
.form_style_s{
	width:50%; 
	height:auto; 
	padding:2% 2% ;
	vertical-align:middle; 
	font-size:16px; 
	}
.form_style_tarea{
	width:96%; 
	height:160px; 
	padding:2% 2% ;
	font-size:16px; 
	
	}
.form_style_file{
	width:100%; 
	height:50px; 
	vertical-align:middle; 
	font-size:16px; 
	}
.complete {
	color: rgba(0,113,188,1);
	font-weight: bold;
	font-size: 120%;
	line-height: 150%
}

/*　キャンペーン応募フォーム
----------------------------------------------------------*/
.campaign .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.campaign_cont {
	min-height:450px;
	padding: 30px 0;
}
.campaign_cont .comm {
	font-size: 0.8854vw;
	line-height: 1.6em;
	text-align: center;
}
.campaign_table{
	height:650px;
	font-size:1rem;
}
.campaign_table table{
	margin-top:30px;
}
.campaign_table table th{
	width:25%;
	font-size:14px;
	vertical-align:middle;
}


/*　thanks
----------------------------------------------------------*/
.thanks .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}



/*　個人情報保護方針
----------------------------------------------------------*/
.privacy .head_img {
	background-image: url(../img/policy/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.privacy .subtitle {
	width: 82%;
	font-size: 1.093vw;
	line-height: 1.5em;
	text-align: left;
	padding: 1.042vw 0 1.042vw 1.042vw;
	color: #3fa9f5;
	border-bottom: 1px solid #333;
	margin: 30px auto 30px auto;
}
.privacy_cont {
	width: 80%;
	font-size: 14px;
	line-height: 28px;
	text-align: left;
	padding: 0 0 0 0;
	margin: 0 10% 50px 10%;		
}
.privacy .bbtm {border-bottom: 1px dotted #333; padding-bottom: 50px;}
.privacy .name {
	text-align: right;
}
.privacy .cont ul {
	padding: 0 ;
}
.privacy .cont li {
	list-style: decimal;
}
.privacy .add {
	margin: 30px 0 30px 0;
}
.privacy .add .name img {
	width: 214px;
	float: left;
}

.privacy_cont .list li {
	text-indent:-1em;
	padding-left:1em;	
}


/*　サイトマップ
----------------------------------------------------------*/
.sitemap .head_img {
	background-image: url(../img/sitemap/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.sitemap_cont {
	width: 55%;
	min-height: 1300px;
	margin: 30px auto;
}
.sitemap_cont ul {
	width: 25%;
	padding: 0 ;
	text-align: left;
	float: left;
	margin: 0;
	
}
.sitemap_cont  li {
	width: 100%;
	display: block;}

.sitemap_cont li > ul  {
	width: calc(100% - 0.5em);
	margin: 0 0 0 0.5em;

}
.sitemap_cont li > ul > li {
	border-bottom: none;
}

.sitemap_cont li span {color: #3fa9f5;
	font-size: 0.8854vw;
	 padding: 0.6em 0 ;
	display: block;
	}
.sitemap_cont li a {
	font-size: 0.8854vw;
	line-height: 2.3em;
	 padding: 0.6em 0 ;
	display: block;
	color: #3fa9f5;
}
.sitemap_cont li > ul > li a {
	width: 100%;
	font-size: 0.72916vw;
	line-height: 2em;
	 padding: 0.6em 0 ;
	display: block;
	color: #333;
}
/*　リンク
----------------------------------------------------------*/
.link .head_img {
	background-image: url(../img/link/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.link_cont {
	width: 55%;
	font-size: 0.72916vw;
	line-height: 2em;
	text-align: left;
	padding: 20px 0;
	margin: 30px auto;
}
.link_cont p {
	font-size: 1.25vw;
	text-align: center;
	margin: 30px auto;
	
}
.link_cont .add {
	width: 40%;
	margin: 20px auto;
	font-size: 0.8854vw;
	line-height: 2em;
	text-align: left;
}
.link_cont .add span {
	width: 6em;
	display: inline-block;
}
.link_cont2 {
	width: 100%;
	background-color: #ededed;
	padding: 20px 0 230px 0;
	text-align: center;
}
.link_cont2 p {
	font-size: 1.25vw;
	text-align: center;
	margin: 30px auto;
	
}
.link_cont2 .logo {
	width: 25%;
	margin: auto;
}
.link_cont2 .add {
	width: 22%;
	margin: 20px auto;
	font-size: 0.8854vw;
	line-height: 2em;
	text-align: left;
}
.link_cont2 .add span {
	width: 7em;
	display: inline-block;
}
/*　新着情報
----------------------------------------------------------*/
.news .head_img {
	background-image: url(../img/news/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.news_cont:before, .news_cont:after{
	content: "";
	display: table;
}
.news_cont:after{
  clear: both;
}
.news_cont {
	width: 84%;
	min-height: 1300px;
	padding: 50px 0;
	margin: auto;
	
}

.news #newsWrap {
	width: 84%;
	padding: 10px 0;
	margin: 0 8%;
	text-align: left;
	
}
.news ul#newsList{
	width: 100%;
	margin: 0 auto 80px auto;
	padding:0;
	
}

.news ul#newsList li{
	width: 100% ;
	padding: 20px 0;
	font-size:1.042vw;
	margin: 0 0 2.6vw 0;
	text-align: left;
	line-height:120%;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
.news .thumbNailWrap {
	width: 32%;
	margin: 0 8% 0 0;
	float: left;
}
.news .thumbNailWrap img {
	width: 100%;
	height: auto;
}
.news .comment {
	width: 38%;
	font-size: 0.72916vw;
	line-height: 1.458vw;
	float: left;
}
.news .up_ymd {
	float: right;
	color: #000;
	font-size:0.677vw;
	display: inline-block;
}
.news .news_title {
	width: 100%;
	font-size: 1.25vw;
	line-height: 2em;
	text-align: left;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
	margin: 0 auto 2vw auto;
}
.news .news_title a {color: #3fa9f5;}
.news #detail {
	width: 100%;
	padding: 10px 0;
	margin: 0 0;
}
.news #up_ymd {
	float: right;
	color: #000;
	font-size:0.677vw;
	display: inline-block;
}
.news .detailUpfile {
	width: 32%;
	margin: 0 8% 0 0;
	float: left;
}
.news .detailUpfile  img {
	width: 100%;
	height: auto;
}
.news .detailText {
	width: 38%;
	font-size: 0.72916vw;
	line-height: 2em;
	margin: 0 22% 0 0;
	float: right;
}
.news .backORcloseBtn a{
	width: 30%;
	font-size: 1.04166vw;
	line-height: 1em;
	text-align: center;
	color: #3fa9f5;
	padding: 1em 0;
	margin: 10% 0 0 0;
	background-color: rgba(237,237,237,1);
	float: right;
	display: block;
}
.news .backORcloseBtn a:hover{
	background-color: rgba(237,237,237,0.7);
	text-decoration: none;
}
/* Pager style（外部化可） */
.pager{
	text-align:right;
	padding:10px;
	clear:both;
}
/*ページャーボタン*/
.pager a{
    border: 1px solid #999;
    border-radius: 5px 5px 5px 5px;
    color: #333;
    font-size: 12px;
    padding: 3px 7px 2px;
    text-decoration: none;
	margin:0 1px;
}

/*現在のページのボタン*/
.pager a.current{
    background: #999;
    border: 1px solid #999;
    border-radius: 5px 5px 5px 5px;
    color: #fff;
    font-size: 12px;
    padding: 3px 7px 2px;
	margin:0 1px;
    text-decoration: none;
}

.pager a:hover{
    background:#999;
    color: #fff;
}

.overPagerPattern{
	padding:0 2px ;	
}
/* /Pager style */


/*　quiz
----------------------------------------------------------*/
.quiz .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 135px 0 0 0;
	overflow: hidden;
}
.quiz .comm {
	width: 90%;
	height: 100%;
	min-height: 1000px;
	padding: 2% 0 0 0;
	font-size: 0.833vw;
	line-height: 2em;
	text-align: center;
	margin: 0 5% ;
}
.quiz .lead {
	width: 28vw;
	padding: 2% 0 0 0;
	font-size: 1.25vw;
	line-height: 2em;
	color: #3fa9f5;
	text-align: left;
	margin: 0 auto 2.5vw auto;
	
}
.quiz .table {
	width: 37.5vw;
	margin: 4vw auto 4vw auto;	
}
.quiz .table .subtitle {
	padding: 1% 0 1% 0;
	font-size: 1.25vw;
	line-height: 2em;
	color: #333;
	text-align: left;
	border-bottom: 1px solid #3fa9f5;
	margin: 0 auto 2.5vw auto;
	
}
.quiz .table .subtitle span {
	font-size: 0.833vw;
	color: #ed1c24;
	display: inline-block;
}
.quiz .table .q_box {
	width: 90%;
	font-size: 1.25vw;
	line-height: 2em;
	text-align: left;
	margin: 0 auto 2.5vw auto;
}
.quiz .table .q_box span {
	font-size: 0.78vw;
	color: #3fa9f5;
}
.quiz .table .kakomi {
	width: 70%;
	padding: 1vw 2vw;
	font-size: 1.25vw;
	line-height: 2em;
	color: #3fa9f5;
	text-align: left;
	margin: 0 auto 2.5vw auto;
	background-image: url(../img/quiz/corner_l.png), url(../img/quiz/corner_r.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top left, bottom right;
}
.quiz .table .q_box_2 {
	width: 70%;
	font-size: 1.25vw;
	line-height: 1.8em;
	text-align: left;
	margin: 0 auto 2.5vw auto;
}

.quiz .table .a_box {
	text-align: left;
	margin: 0 auto 3.5vw auto;
}
.quiz .submit_btn{
	width: 245px;
	margin: 50px auto 80px auto;
	font-size: 1.042vw;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}
.quiz .submit_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
}

.quiz .return_bt a {
	width: 245px;
	margin: 50px auto 80px auto;
	font-size: 1.042vw;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(63,169,245,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}.quiz .return_bt a:hover {
	background-color: rgba(63,169,245,0.7);
	text-decoration: none;
}

.quiz .lead.end {
	text-align: center;
}

.quiz .totop a{
	display:block;
	width:12em;
	margin:auto;
	text-align:center;
	padding:10px 0;
	border:solid 1px #999;
	border-radius:10px;
	box-sizing:content-box;
	
}
.quiz .totop a:hover{
	text-decoration:none;
	background-color:#dfdfdf;
}
.quiz .totop{ padding-bottom:800px;}
.quiz .kotae{text-align:left;}
.space_quiz{height:300px; display:block;}


@media screen and ( max-width:1500px) {
	
	.form_style_file{
	    height:40px; 
	    font-size:14px;
	}
	
}





























/* ===========横幅767px以下================ */


@media screen and ( max-width: 767px) {
	/****************************************************************************
	body設定
*****************************************************************************/
body{
	color: #3a3e4f;
	font-size: 20px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	line-height: 48px;
	text-align: center;
	overflow-wrap : break-word;
	-webkit-text-size-adjust: 100%;
	 
}

h2,h3,h4{text-align: left;}

a {color: #000;
	text-decoration:none;
	}
a:hover {
	color: #000;
	text-decoration:underline;
	}
img {
	margin: 0  ;
	padding: 0;
	width: 100%;
	height: auto;}


#container{
	width:100%;
	margin: 0 auto ;
	text-align: center;
	overflow: hidden;
	
}

#main {
	width: 100%;
	max-width: 100%;
	min-width: 100%;
 	box-sizing: border-box;
	vertical-align: top;
	margin: 0 0;
	display: block;
	min-height:auto;
	padding-bottom: 17vw;
}
#left_column {
	width: 100%;
	padding: 0 0 0 0;
	background-color: #333;
	background-image:none;
	background-repeat: no-repeat;
	background-position: center 348px;
	display: block;
	position: relative;
	
}
#head_logo {
	width:60%;
	height: 10.5%;
	margin: 3% 0 3% 2% ;
	float: left;
	}

	
/****************************************************************************
	コンテンツ設定
*****************************************************************************/

/*	ヘッダー
----------------------------------------------------------------------------*/

h1{
	paddning: 13px 0 0 0;
	font-size: 12px;
	line-height:15px;
	height: 30px;
	text-align: left;
	color:#4d4d4d;
}
.list_close {
	width:12.5%;
	margin:1% 1% 1% 0 ;
	float:right;
	z-index:1000;
	}
.open_menu {
	width:12.5%;
	margin:1% 1% 1% 0 ;
	float:right;
	z-index:1000;
	}


.pc {display:none;}
.sm {display:inline;}

/*	グローバルナビ
----------------------------------------------------------------------------*/

.navi{
	display:none;
}

/*	グローバルナビ(スマホ用)
----------------------------------------------------------------------------*/
#category_list{
	display:none;
	width:100%;
 	position:absolute;
	z-index:999;
	top: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	
}
#category_list > ul {
	margin-top: 14.5%;
	width:100%; 
	background-color:#333;
	border-top: 1px solid #fff;
	}
#category_list li a{
	font-size:18px;
	line-height: 2em;
	font-weight:bold;
	text-decoration:none;
	color:#fff;
	background-image:url(../img/common/arrow.png);
	background-repeat:no-repeat;
	background-position:95%;
	
	text-align:left;
	padding-left:5%;
	padding-top:4%;
	padding-bottom:4%;
	border-bottom:1px solid #fff;
	display:block;
	}
#category_list li a:hover {
	text-decoration:none;
}
#category_list  p {
	font-size:18px;
	font-weight:bold;
	color:#fff;
	margin: 0 0 0 0;
	text-align:left;
	padding-left:5%;
	padding-top:3%;
	padding-bottom:3%;
	border-bottom:1px solid #fff;
	display:block;
	} 
ul.accordion span {display:block; }
ul.accordion ul { 
	display:none; 
	background-color: #000;
	
	}
ul.accordion  li  p span { 
	background-image:url(../img/common/open.png);
	background-position:95%;
	 background-repeat:no-repeat;
	
	 
	 }
ul.accordion li p span.open {
	 background-image:url(../img/common/close.png);
	
	background-position:95%;
	 background-repeat:no-repeat;
	
	 }

/*	フッター
----------------------------------------------------------------------------*/
#footer{
	width: 100%;
	background-color: #cccccc;
	padding: 5% 0 2% 0;
	text-align: center;
	margin: 0 0 0 0;
	position: relative;
	}

.footer_logo {
	width: 40%;
	padding: 0 ;
	margin: 0 30%;
	}	
.footer_logo img {
	width: 100%;
	height: auto;
	margin: 0 0 2% 0;
}

#mark {
	display: none;
	width: 118px;
	position: absolute;
	bottom: 53px;
	left: -213px;
	z-index: 200;
}
.quiz_bnr {
	
	width: 25vw;
	position: absolute;
	background-color: #fff;
	top: -17vw;
	left: 2%;
	z-index: 100;
}

#footer_copy{
	height:2em;
	font-size:11px;
	line-height:2em;
	padding: 0;
	text-align:center;
	}
.page_top {
	width: 10%;
	position: fixed;
	right: 2%;
	bottom: 10%;

	}
/*	共通
----------------------------------------------------------------------------*/

.center{text-align: center;}
.clear{clear: both; overflow: hidden; margin:  auto;}
.int10 {
	text-indent:-1em;
	padding-left:1em;
}
.breadcrumbs {
	display: none;
	font-size: 17px;
	line-height: 17px;
	text-align: left;
	background-color: #ccc;
	padding: 9px 0 9px 20px;
}
.breadcrumbs a {
	color: #333;
}

.page_title {
	background: rgba(255,255,255,0.85);
	padding: 0 3% 3% 3%;
}
.page_title span {
	width: 100%;
	font-size: 18px;
	line-height: 1.2em;
	text-align: center;
	padding: 2% 0;
	border-bottom: 2px solid #3fa9f5;
	display: block;
}
.title {
	width: 100%;
	margin: 0 auto 0 auto;
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	padding: 2% 0 2% 0;
	background-color: #3fa9f5;
}

.cont {
	min-height: 50%;
	width: 90%;
	font-size: 16px;
	line-height: 2em;
	text-align: left;
	margin: 0 5% 5% 5%;
}
/*　TOP
----------------------------------------------------------*/
.top_head_img {
	width: 100%;
}
.top_head_img img {
	width: 100%;
	height: auto;
}
.top_catalog {
	width: 100%;
	margin: 5% 0 5% 0;
	padding: 0;
}
.top_catalog .lead {
	width: 96%;
	margin: 0 2% 3% 2%;
	float: left;
}
.top_catalog .bt {
	width: 30%;
	margin: 0 35% 3% 35%;
	float: left;
}
.top_catalog li {
	width: 32.333%;
	float: left;
	font-size: 10px;
	line-height: 1.3em;
	text-align: center;
	margin: 0 0.5%;
}
.top_catalog ul:before, .top_catalog ul:after{
	content: "";
	display: table;
}
.top_catalog ul:after{
  clear: both;
}
.top_dict {
	width: 86%;
	margin: 4% auto 8% auto;
	background: linear-gradient(-60deg, rgba(0, 113, 188, .9), rgba(237, 28, 36, .9));
	padding: 1em 0;
}
.top_dict_in {
	width: 90%;
	margin: 2% 5%;
	float: left;
	font-size: 12px;
	line-height: 2em;
	text-align: center;
	color: #fff;
}
.top_dict_in span {font-size: 14px;}
.top_work {
	width: 90%;
	padding:5% ; 
	margin: 0 auto ;
	background-image: url(../img/top/work_back.jpg);
	background-repeat: no-repeat;
	background-position: center 8vw;
	background-size: 100% auto;
	position: relative;
}
.top_work .title_01 {
	width: 67.2%;
	margin: 2% 32.8% 3% 0;
}
.top_work .mean {
	width: 56%;
	position: relative;
	margin: 2% 22% 2% 22%;
	bottom: 0;
	left: 0;
}
.top_work .mean span {font-size: 16px;}
.top_work .top_img {
	width: 100%;
	margin: 0 0 3% 0;
	float: left;
}
.top_work .top_img img {width: 30%; float: left; margin-bottom: 2%; margin-left: 3%; }
.top_work .top_text {
	width: 96%;
	margin: 0 2% 2% 2%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	float: left;
}
.top_work .top_text .lead {margin-left: 0; margin-bottom:2%; }
.top_comp {
	width: 90%;
	padding:5% ; 
	margin: 0 auto ;
	background-image: url(../img/top/comp_back.jpg);
	background-repeat: no-repeat;
	background-position: center 16vw;
	background-size: 100% auto;
	position: relative;
}
.top_comp .title_02 {
	width: 36.8%;
	margin: 2% 63.2% 3% 0;
}
.top_comp .mean {
	width: 56%;
	position: relative;
	margin: 2% 22% 2% 22%;
	bottom: 0;
	left: 0;
}
.top_comp .mean span {font-size: 16px;}
.top_comp .top_img {
	width: 100%;
	margin: 0 0 3% 0;
	float: left;
}
.top_comp .top_img img {width: 30%; float: left; margin-bottom: 2%; margin-left: 3%; }
.top_comp .top_text {
	width: 96%;
	margin: 0 2% 2% 2%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	float: left;
}
.top_comp .top_text .lead { margin-bottom: 2%; margin-left: 0; margin-top: 2%; }
.top_news {
	width: 90%;
	padding: 0;
	margin: 2% 5% 2% 5%;
}
.top_news_title {
	text-align: left;
	margin: 0 auto 5% auto;
}
.top_news_title img {
		width: 50%;
	}
.top_news .bt a{
	width: 35%;
	font-size: 11px;
	line-height: 1em;
	padding: 0.75em 0;
	text-align: center;
	margin: 0;
	border: 1px solid #808080;
	color: #3fa9f5;
	float: right;
}
.top_news .bt a:hover{
	text-decoration: none;
	background-color: #E0E0E0;
}
.top_news ul#newsList{
	width: 100%;
	margin:0 auto;
	padding:0;

}
.top_news  ul#newsList li{
	width: 90%;
	font-size: 11px;
	line-height: 2em;
	text-align: left;
	margin:0 5% 3% 5%;
	padding:0 0;
	color: #666;
	list-style-type:none;
	display: block;
	float: left;
}
	
.top_news #newsWrap a{color:#fff;text-decoration:underline;}
.top_news #newsWrap a:hover{color:#fff;text-decoration:none;}
.up_ymd {
	font-size: 11px;
	padding: 0 2em 0 0;
	}
.news_title {
	width: 100%;
	font-size: 13px;
	text-align: left;
	padding: 0.5em 0;
	}
.catName{
	display:inline-block;
	padding:3px 8px;
	border:1px solid #ccc;
	border-radius:6px;
	font-size:9px;
	line-height:100%;
	margin:0 2px;
}
.newMark{
	display:inline-block;
	border:1px solid #F00;
	padding:1px 4px;
	font-size:9px;
	line-height:100%;
	background:#F00;
	color:#fff;
	box-shadow:1px 1px 1px #999;
	border-radius:4px;
	font-style:italic;
}
.comment{
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	display:block;
	padding:3px 0;
	float:left;
	overflow:hidden;
	width:100%;/* 本文部分の幅。ここは特に設置ページ合わせて変更下さい */
}
.thumbNailWrap{
	display:block;
	width:100%;
	float:left;
	height:160px;
	margin: 2% 0 2% 0;
	overflow:hidden;
}
.thumbNailWrap img {
	width: 100%;
	height: auto;
}
.top_news_cont dl{
	width: 100%;
	margin: 0 auto ;
}
.top_news_cont dl:before, .top_news_cont dl:after{
	content: "";
	display: table;
}
.top_news_cont dl:after{
  clear: both;
}
.top_news_cont dt{
	width: 30%;
	padding: 2% 2%;
	font-size: 16px;
	line-height: 1em;
	margin: 0 0 5px 0;
	float: left;
	border-bottom: 1px solid #ccc;
}
.top_news_cont dd{
	width: 62%;
	padding: 2% 2%;
	font-size: 16px;
	line-height: 1em;
	margin: 0 0 5px 0;
	float: left;
	border-bottom: 1px solid #ccc;
}
.top_seo {
	width: 90%;
	margin: 3% 5%;
	font-size: 16px;
	line-height: 25px;
	text-align: left;
}
	/*　営業案内
----------------------------------------------------------*/
.product .head_img {
	width: 100%;
}
.product .head_img img {
	width: 100%;
	height: auto;
}
.product .lead {
	width: 90%;
	margin: 2% 5% 2% 5%;
}
.product .lead  img {
	width: 100%;
	height: auto;
}
.itemlist {
	width: 100%;
	margin: 0  auto 2% auto;
}
.itemlist ul {
	width: 96%;
	padding: 5% 2% 5% 2%;
	margin: 0 auto 2% auto;
}
.itemlist ul:before, .itemlist ul:after{
	content: "";
	display: table;
}
.itemlist ul:after{
  clear: both;
}
.itemlist li {
	width: calc(96% - 1em);
	padding: 2% 0 1% 1em;
	margin: 0 2% 0 2%;
	text-indent: -1em;
	font-size: 15px;
	line-height: 1.5em;
	text-align: left;
	float: left;
}

.itemlist li span {
	color: #3fa9f5;
}
.product .comm {
	padding: 5% 5%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
}
.product .comm2 {
	padding: 5% 5%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
	background-color: #f4f4f4;
}
.product .section {
	width: 100%;
	margin: 0 auto;
}
.product .section .box {
	width: 100%;
	margin: 0;
	float: left;
	position: relative;
}
.product .section .box img {
	width: 100%;
	height: auto;
}
.product .section .box .name {
	font-size: 16px;
	line-height: 2em;
	text-align: center;
}
.product .section .box .name span {font-size: 12px;}
.product .section .box .text {
	width: 100% ;
	padding: 2% 5%;
	margin: 0 0 3% 0;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
	position: relative;
	bottom: 0;
	left: 0;
}
.box_w {width: 100%;
	margin: 0;
	
	position: relative;
}
.box_w img {
	width: 100%;
	height: auto;
}
.box_w .name {
	font-size: 16px;
	line-height: 2em;
	text-align: center;
}
.box_w .name span {font-size: 14px;}
.box_w .text {
	width: 100% ;
	padding: 2% 5%;
	margin: 0 0 3% 0;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
	position: relative;
	bottom: 0;
	left: 0;
}
.blue {background-color: rgba(0,113,188,0.9); left: 0;}
.green {background-color: rgba(30,170,57,0.9);}
.orange {background-color: rgba(241,90,36,0.9);}
.purple {background-color: rgba(152,0,160,0.9);}
.red {background-color: rgba(237,28,36,0.9);}
.black {background-color: rgba(51,51,51,0.9);}
.cost_img {
	width: 94%;
	margin: 1.5% 3%;
}
.cost_img img{
	width: 100%;
	height: auto;
}
.cost {
	width: 100%;
	background-image: url(../img/product/cost_back.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	padding: 2% 0 2% 0;
}
.cost_in {background-color: rgba(255,255,255,0.8);}
.cost .box {
	width: 90% ;
	border: 1px solid #3fa9f5;
	margin: 0 5% 7% 5%;
	padding: 0 3% 2% 3%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	float: left;
	box-sizing: border-box;
	
}
.cost .box .name {
	width: 12em;
	font-size: 16px;
	color: #3fa9f5;
	padding: 1px 3px;
	background-color: #fff;
	display: block;
	margin: -1em 0 0 0;
}
.product .subtitle {
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	padding: 2% 0;
	margin: 0 2.5% 8% 2.5%;
	border-bottom: 2px solid #3fa9f5;
	display: block;
}
/*　製作事例
----------------------------------------------------------*/
.achievement .head_img {
	background-image: url(../img/achievement/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.achiev_cont:before, .achiev_cont:after{
	content: "";
	display: table;
}
.achiev_cont:after{
  clear: both;
}
.achiev_cont {
	width: 100%;
	min-height: 100%;
	background-color:  #ededed;
	
}
 ul.catalog {
	 width: 90%;
	margin: 0 5% 5% 5%;
	padding:0;
}
ul.catalog li{
	width: 42% ;
	height: 30%;
	padding: 2%;
	font-size:8px;
	margin: 2%;
	text-align: center;
	line-height:120%;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
ul.catalog li img{
	width: 70% ;
	margin: 5% 15%;
}
.achievement #newsWrap {
	width: 96%;
	padding: 2% 2%;
	
}
.achievement ul#newsList{
	width: 100%;
	margin: 0 auto 8% auto;
	padding:0;
	
}

.achievement ul#newsList li{
	width: 92% ;
	padding: 2% 2%;
	margin: 2%;
	text-align: left;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
.achievement .thumbNailWrap {
	width: 70%;
	margin: 3% 15% 0 15%;
	float: left;
}
.achievement .thumbNailWrap img {
	width: 100%;
	height: auto;
}
.achievement .news_title {
	width: 100%;
	font-size: 14px;
	line-height: 2em;
	text-align: center;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
}
.achievement .news_title a {color: #3fa9f5;}
.achievement .comment {
	width: 100%;
	padding: 0 0 2% 0;
	float: left;
	}
.achievement .comment p {
	padding: 2% 8%;
	font-size:14px;
	height: auto;
	line-height: 2em;
}
.achievement .bt_detail a{
	width: 90%;
	font-size: 14px;
	line-height: 1em;
	text-align: center;
	color: #fff;
	padding: 1em 0;
	margin: 10% 5% 0 5%;
	background-color: rgba(0,0,0,1);
	display: block;
}
.achievement .bt_detail a:hover{
	background-color: rgba(0,0,0,0.7);
	text-decoration: none;
}
.achievement #detail {
	width: 96%;
	text-align: left;
	margin: 0 2%;
	}
.achievement  .bt_list a{
	width: 70%;
	font-size: 14px;
	line-height: 1em;
	text-align: center;
	color: #3fa9f5;
	padding: 1em 0;
	margin: 10% 15% 0 15%;
	background-color: rgba(237,237,237,1);
	display: block;
}
.achievement  .bt_list a:hover{
	background-color: rgba(237,237,237,0.7);
	text-decoration: none;
}
.achievement .detail_in #up_ymd{
	width: 100%;
	text-align:right;
	font-size:8px;
	margin:2% 2% 0 2%;
	float: right;
}

.achievement .detail_in {
	width: 100%;
	margin:0 0 2% 0;
	text-align:left;
	float: right;
	
}
.achievement .detailUpfile{
	width: 70%;
	margin:0 15% 2% 15%;
	text-align:left;
	float: left;
	
}
.achievement .detailUpfile img{
	width: 100%;
	height: auto;
	
}
.achievement .detail_in .news_title {
	width: 100%;
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
	
}
.achievement .detail_in .news_title a {color: #3fa9f5;}
.achievement .detail_in .detailText {
	font-size: 14px;
	line-height: 2em;
	width: 100%;}


.pNav{
	font-size:11px;
	text-align: left;
}

/*　会社案内
----------------------------------------------------------*/
.company .head_img {
	background-image: url(../img/company/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.gree {
	width: 100%;
	background-image: url(../img/company/back_01.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 2% 3%;
	box-sizing: border-box;
	
}
.gree:before, .gree:after{
	content: "";
	display: table;
}
.gree:after{
  clear: both;
}
.gree .text {
	width: 90%;
	padding: 2% 5% 5% 5%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	float: left;
}
.gree .img_pre {
	width: 70%;
	margin: 0 15% 2% 15%;
	float: left;
}
.gree .img_pre img {
	width: 100%;
	height: auto;
}
.gree .name {
	width: 60%;
	float: right;
	margin: 5% 0 0 0;
}
.gree .name img {
	width: 100%;
	height: auto;
}
.prof_cont {
	width: 100%;
	background-color: #efefef;
	padding: 3% 0 5% 0;
}
.company_table .office_img {
	width: 80%;
	margin: 2% 10%;
}
.company_table {
	width: 90%;
	margin: 3% 5% 5% 5%;
}
.company_table table {
	width: 100%;
	margin: 3% auto 5% auto;
	border-spacing : 0 0 ;
       border-collapse : separate ; 
}
.company_table table th {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	color: #fff;
	padding: 2% 2% 2% 2%;
	background-color: #3fa9f5;
	float: left;
}
.company_table table td {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	background-color: #fff;
	float: left;
}
.company_table .img_l {
	width: 100%;
	margin: 0 0 2% 0;
	float: left;
}
	
.company_table .img_r {
	width: 100%;
	margin: 0 0 2% 0;
	float: left;
}
	
.comp_imgbox .item img {
	width: 90%;
	margin: 2.5% 5% 2.5% 5%
}	
	
	
.company_table img {
	width: 100%;
	height: auto;
}
.company_table table .addless th{
	width: 3em;
	padding: 0 0;
	color: #000;
	font-size: 14px;
	line-height: 1.5em;
	vertical-align: top;
	background-color: #fff;
}
.company_table table .addless td{
	width: calc(100% - 3em);
	padding: 0 0;
	font-size: 14px;
	line-height: 1.5em;
}
.access {
	width: 100%;
	margin: 5% auto 5% auto;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
}
.access iframe {
	width: 100%;
	height: 200px;
	margin-bottom: 5%;
}
.access .add {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	float: left;
}
.access .add .logo {
	width: 50%;
	margin: 0 0 2% 0;
}
.access .add .logo img {
	width: 100%;
	height: auto;
}
.access .img {
	width: 100%;
	float: left;
}
.access .img img {
	width: 100%;
	height: auto;
}
.submap {
	width:  94%;
	margin: 2% 3% 5% 3%;
	float: left;
}
.submap iframe {
	width: 100%;
	height: 200px;
}
.submap .add {
	width:  96%;
	font-size:14px;
	line-height: 2em;
	text-align: left;
	padding: 0;
	padding: 0 2% 2% 2%;
	float: left;
}
.history_cont {
	width: 100%;
	background-image: url(../img/company/back_02.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 2% 0;
	box-sizing: border-box;
	
}	
.history_table {
	width: 90%;
	margin: 3% 5% 5% 5%;
}
.history_table table {
	width: 100%;
	margin: 3% auto 5% auto;
	
}
.history_table table th {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	background-color: rgba(63,169,245,0.5);
	float: left;
}
.history_table table td {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	float: left;
}
.history_img {
	width:  76%;
margin: 2% 12% 5% 12%;
}
.history_img img {
	width: 100%;
	height: auto;
}
.history_img .img_l {
	width: 100%;
	margin-right: 0;
	margin-bottom: 3%;
	float: left;
}
.history_img .img_r {
	width: 100%;
	margin-right: 0;
	float: left;
}
.comp_link:before, .comp_link:after{
	content: "";
	display: table;
}
.comp_link:after{
  clear: both;
}
.comp_link {
	width: 90%;
	margin: 5% 5% 2.5% 5%;
}
.comp_link li {
	width: 100%;
	margin: 0 0 1.5% 0;
	float: left;
}
.comp_link li img {
	width: 100%;
	height: auto;
}
/*　採用案内
----------------------------------------------------------*/
.recruit .head_img {
	background-image: url(../img/recruit/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.recruit .head_img-b {
	background-image: url(../img/recruit/head_img-b.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}	
.guidance {
	
	background-image: url(../img/recruit/back_01.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 2% 5% 2% 5%;
	overflow: hidden;
}
.guidance .lead {
	width: 100%;
	font-size: 16px;
	line-height: 1.6em;
	text-align: left;
	float: right;
	margin: 0 0 2% 0;
}
.guidance .lead img {
	width: 100%;
	height: auto;
	margin: 0 0 5% 0;
}
.guidance .img_01 {
	width: 100%;
	margin: 0 0 0 0;
	float: left;
}
.guidance .img_01 img {
	width: 48%;
	height: auto;
	margin: 0 1% 5% 1%;
	float: left;
}
.guidance .img_02 {
	width: 100%;
	margin: 0 0 0 0;
	float: left;
}
.guidance .img_02 img {
	width: 48%;
	height: auto;
	margin: 0 1% 5% 1%;
	float: left;
}
.guidance .img_03 {
	width: 100% ;
	margin: 0 0 0 0;
	float: left;
}
.guidance .img_03 img {
	width: 48%;
	height: auto;
	margin: 0 1% 5% 1%;
	float: left;
}

.recruit .link {
	width:  100%;
	float: left;
	margin: 0 0 5% 0;
	position: relative;
}
.recruit .link img {
	width: 100%;
	height: auto;
}
.recruit .link .bt_l a{
	width: 70%;
	background-color: rgba(51,51,51,1);
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 3% 0;
	position: relative;
	margin: 3% 15% 3% 15%;
	bottom: 0;
	left: 0;
}
.recruit .link .bt_l a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}
	
.recruit .link_b {
	width:  100%;
	margin: 0 0 5% 0;
}

.recruit .link_b .btn a{
	width: 70%;
	background-color: rgba(51,51,51,1);
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 3% 0;
	margin: 3% 15% 3% 15%;
	bottom: 0;
	left: 0;
}
.recruit .link_b .btn a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}	
	
	
	
	
.recruit .link .bt_r a{
	width: 70%;
	background-color: rgba(0,113,188,1);
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 3% 0;
	position: relative;
	margin: 3% 15% 3% 15%;
	bottom: 0;
	left: 0;
}

	
.recruit .link .bt_r a:hover {
	background-color: rgba(0,113,188,0.7);
	text-decoration: none;
}
.recruit .title_img img {
	width: 100%;
	height: auto;
} 
.recruit .comm {
	background-color: #ededed;
	padding: 3% 5%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
}
.recruit .date {
	padding: 3% 0;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto;
}
.recruit .subtitle {
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	color: #333;
	padding: 2% 0;
	margin: 0 2.5% 8% 2.5%;
	border-bottom: 2px solid #333;
	display: block;
}
.recruit .gallery {
	width: calc( 100% - 10% ) ;
	margin: 0 5% 0 5%;
	float: left;
}
.recruit .gallery img {
	width: 100%;
	margin: 0 0 4% 0;
	float: left;
}
.recruit_cont {
	width: 100%;
	background-color: #efefef;
	padding: 3% 0 5% 0;
	min-height:auto;
}
.recruit_table {
	width: 90%;
	margin: 3% 5% 5% 5%;
}
.recruit_table .comm {
	font-size: 14px;
	line-height: 2em;
	text-align: left;
}
.recruit_table table {
	width: 100%;
	margin: 3% auto 5% auto;
	border-spacing : 0 0 ;
       border-collapse : separate ; 
}
.recruit_table table th {
	width: 96%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	color: #fff;
	background-color: #3fa9f5;
	float: left;
}
.recruit_table table td {
	width: 96%;
	font-size: 15px;
	line-height: 2em;
	text-align: left;
	padding: 2% 2% 2% 2%;
	background-color: #fff;
	float: left;
}
.recruit .bt a{
	width: 70%;
	background-color: rgba(51,51,51,1);
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 3% 0;
	margin: 2% 15% 5% 15%;
}
.recruit .bt a:hover {
	background-color: rgba(51,51,51,0.7);
	text-decoration: none;
}

/*　お問い合わせ
----------------------------------------------------------*/
.contact .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.contact_cont {
	min-height: auto;
	padding: 3% 3%;
}
.contact_cont .comm {
	font-size: 14px;
	line-height: 2em;
	text-align: center;
}
.contact_comm {
	font-size: 14px;
	line-height: 2em;
	text-align: center;
	margin: 3% 0;
}
.contact_tel {
	width: 80%;
	margin: 3% 10%;
	font-size: 14px;
	line-height: 28px;
	text-align: center;
}
.contact_table {
	width: 96%;
	padding: 3% 0;
	margin: 0 2% 8% 2%;
	font-size: 14px;
	line-height: 2em;
	text-align: center;
	
}
.contact_table table {
	width:100%;
	margin: 3% 0 0 0 ;
	}
.contact_table th {
	width:96%;
	padding: 2% 2% 2% 2%;
	font-size: 14px;
	line-height: 2em;
	text-align:left;
	vertical-align:top;
	float: left;
	background-color: #eee;
	}
.contact_table td {
	width:96%;
	padding: 5% 2% 5% 2%;
	font-size:14px;
	line-height: 2em;
	text-align:left;
	float: left;
	}
.contact_table span {
	font-size: 12px;
	line-height: 1em;
	text-align: center;
	padding: 0.5em;
	color:#fff;
	background-color: #3fa9f5;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	display: block;
	float: right;
	}
.submit_btn{
	width: 70%;
	margin: 5% 15% 5% 15%;
	font-size: 14px;
	line-height: 1em;
	padding: 21px 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}
.submit_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
}

.return_btn{
	width: 70%;
	margin: 5% 15% 5% 15%;
	font-size: 14px;
	line-height: 1em;
	padding: 21px 0;
	text-align: center;
	color: #fff;
	background-color: rgba(0,0,0,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
	}
.return_btn:hover {
	background-color: rgba(0,0,0,0.7);
	text-decoration: none;
	}
.confirm_btn{
	width: 70%;
	margin: 5% 15% 5% 15%;
	font-size: 14px;
	line-height: 1em;
	padding: 21px 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
	}
.confirm_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
	}
.form_style{
	width:96%; 
	height:auto; 
	padding:2% 2% ;
	vertical-align:middle; 
	font-size:16px; 
	
	}
.form_style_s{
	width:50%; 
	height:auto; 
	padding:2% 2% ;
	vertical-align:middle; 
	font-size:14px; 
	}
.form_style_tarea{
	width:96%; 
	height:200px; 
	padding:2% 2% ;
	font-size:14px; 
	
	}
.form_style_file{
	width:100%; 
	height:40px; 
	vertical-align:middle; 
	font-size:14px; 
	}
	
/*　キャンペーン応募フォーム
----------------------------------------------------------*/
.campaign .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.campaign_cont {
	min-height: auto;
	padding: 3% 3%;
}
.campaign_cont .comm {
	font-size: 14px;
	line-height: 2em;
	text-align: center;
}
.campaign_table{
	height:auto;
}
.campaign_table table th{
    width:96%;
}
.campaign_table .comm {
	font-size: 14px;
	line-height: 2em;
	text-align: center;
}
.campaign_cont {
	min-height: auto;
	padding: 3% 3%;
}
	
/*　個人情報保護方針
----------------------------------------------------------*/
.privacy .head_img {
	background-image: url(../img/policy/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.privacy .subtitle {
	width: 95%;
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	padding: 2% 0;
	color: #3fa9f5;
	border-bottom: 1px solid #333;
	margin: 0 2.5% 4% 2.5%;
}
.privacy_cont {
	width: 90%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 3% 5% 3% 5%;
	margin: 0 0 5% 0;

		
}
.privacy .bbtm {border-bottom: 1px dotted #333; padding-bottom: 5%;}
.privacy .name {
	text-align: right;
}
.privacy .cont ul {
	padding: 0 ;
}
.privacy .cont li {
	list-style: decimal;
}
.privacy .add {
	width: 70%;
	margin: 3% 30% 3% 0;
}
.privacy .add .name img {
	width: 100%;
	float: left;
}
/*　サイトマップ
----------------------------------------------------------*/
.sitemap .head_img {
	background-image: url(../img/sitemap/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.sitemap_cont {
	width: 80%;
	min-height: 50%;
	margin: 3% 10% 10% 10%;
}
.sitemap_cont ul {
	width: 100%;
	padding: 0 ;
	text-align: left;
	float: left;
	margin: 0;
}

.sitemap_cont li > ul > li {
	list-style-type: disc;
	margin: 0 0 0 1.5em;
	
}
.sitemap_cont li > ul {
	padding: 0 0 5% 0;
	border-bottom: 1px solid #ccc;
	}
.sitemap_cont li span {
	color: #3fa9f5;
	font-size: 16px;
	line-height: 1.5em;
	padding: 2% 0 2% 0 ;
	
	display: block;
	}
.sitemap_cont li a {
	font-size: 16px;
	line-height: 1.5em;
	 padding: 2% 0 2% 0 ;
	color: #3fa9f5;
	border-bottom: 1px solid #ccc;
	display: block;
}
.sitemap_cont li > ul > li a {
	font-size: 14px;
	line-height: 1.5em;
	 padding: 1% 0 1% 0 ;
	color: #333;
	border-bottom: none;
	
}
/*　リンク
----------------------------------------------------------*/
.link .head_img {
	background-image: url(../img/link/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.link_cont {
	width: 94%;
	min-height: 50%;
	font-size: 14px;
	line-height: 2em;
	text-align: left;
	padding: 2% 3%;
	margin: 3% auto;
}
.link_cont p {
	font-size: 16px;
	text-align: center;
	margin: 3% auto;
	
}
.link_cont .add {
	width: 90%;
	margin: 2% 5%;
	font-size: 14px;
	line-height: 1.5em;
	text-align: left;
}
.link_cont2 {
	width: 100%;
	background-color: #ededed;
	padding: 2% 0 10% 0;
	text-align: center;
}
.link_cont2 p {
	font-size: 16px;
	text-align: center;
	margin: 3% auto;
	
}
.link_cont2 .logo {
	width: 80%;
	margin: 0 10%;
}
.link_cont2 .add {
	width: 80%;
	margin: 2% 10%;
	font-size: 14px;
	line-height: 1.5em;
	text-align: left;
}
/*　新着情報
----------------------------------------------------------*/
.news .head_img {
	background-image: url(../img/news/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.news_cont:before, .news_cont:after{
	content: "";
	display: table;
}
.news_cont:after{
  clear: both;
}
.news_cont {
	width: 100%;
	min-height: 100%;
	padding: 5% 0;
	margin: auto;
	
}

.news #newsWrap {
	width: 96%;
	padding: 2% 2%;
	margin: 0 0;
	text-align: left;
	
}
.news ul#newsList{
	width: 100%;
	margin: 0 auto 8% auto;
	padding:0;
	
}

.news ul#newsList li{
	width: 100% ;
	padding: 20px 0;
	font-size:14px;
	margin: 0 0 1em 0;
	text-align: left;
	line-height:120%;
	list-style-type:none;
	background-color: #fff;
	float: left;
}
.news .thumbNailWrap {
	width: 90%;
	margin: 0 5% 2% 5%;
	float: left;
}
.news .thumbNailWrap img {
	width: 100%;
	height: auto;
}
.news .comment {
	width: 90%;
	font-size: 14px;
	line-height:2em;
	margin: 0 5%;
	float: left;
}
.news .up_ymd {
	float: right;
	color: #000;
	font-size:8px;
	display: inline-block;
}
.news .news_title {
	width: 100%;
	font-size:16px;
	line-height: 1.5em;
	text-align: left;
	color: #3fa9f5;
	padding: 0.5em 0;
	display: block;
	border-bottom: 1px solid #3fa9f5;
	margin: 0 auto 3% auto;
}
.news .news_title a {color: #3fa9f5;}
.news #detail {
	width: 100%;
	padding: 10px 0;
	margin: 0 0;
}
.news #up_ymd {
	float: right;
	color: #000;
	font-size:8px;
	display: inline-block;
}
.news .detailUpfile {
	width: 90%;
	margin: 0 5% 0 5%;
	float: left;
}
.news .detailUpfile  img {
	width: 100%;
	height: auto;
}
.news .detailText {
	width: 100%;
	font-size: 14px;
	line-height: 2em;
	margin: 0 0 0 0;
	float: right;
}
.news .backORcloseBtn a{
	width: 70%;
	font-size: 14px;
	line-height: 1em;
	text-align: center;
	color: #3fa9f5;
	padding: 1em 0;
	margin: 10% 15px 0 15px;
	background-color: rgba(237,237,237,1);
	float: right;
	display: block;
}
.news .backORcloseBtn a:hover{
	background-color: rgba(237,237,237,0.7);
	text-decoration: none;
}
	
/*　quiz
----------------------------------------------------------*/
.quiz .head_img {
	background-image: url(../img/contact/head_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 20% 0 0 0;
	overflow: hidden;
}
.quiz .comm {
	width: 90%;
	height: 100%;
	min-height:100%;
	padding: 2% 0 30vw 0;
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 5% ;
}
.quiz .lead {
	width: 90%;
	padding: 2% 0 5% 0;
	font-size: 16px;
	line-height: 1.5em;
	color: #3fa9f5;
	text-align: left;
	margin: 0 5% 3% 5%;
	
}
.quiz .table {
	width: 90%;
	margin: 5% 5%;	
}
.quiz .table .subtitle {
	padding: 1% 0 1% 0;
	font-size: 18px;
	line-height: 2em;
	color: #333;
	text-align: left;
	border-bottom: 1px solid #3fa9f5;
	margin: 0 auto 2.5vw auto;
	
}
.quiz .table .subtitle span {
	font-size: 13px;
	color: #ed1c24;
}
.quiz .table .q_box {
	width: 90%;
	font-size: 16px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto 2.5vw auto;
}
.quiz .table .q_box span {
	font-size: 14px;
	color: #3fa9f5;
}
.quiz .table .kakomi {
	width: 95%;
	padding: 4vw 3%;
	font-size: 16px;
	line-height: 2em;
	color: #3fa9f5;
	text-align: center;
	text-align: left;
	margin: 0 auto 2.5vw auto;
	background-image: url(../img/quiz/corner_l.png), url(../img/quiz/corner_r.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top left, bottom right;
}
.quiz .table .kakomi span{display: inline-block;}
.quiz .table .q_box_2 {
	width: 90%;
	font-size: 16px;
	line-height: 2em;
	text-align: left;
	margin: 0 auto 2.5vw auto;
}

.quiz .table .a_box {
	text-align: left;
	margin: 0 auto 3.5vw auto;
}
.quiz .submit_btn{
	width: 70vw;
	margin: 10% auto 10% auto;
	font-size: 18px;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(237,28,36,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}
.quiz .submit_btn:hover {
	background-color: rgba(237,28,36,0.7);
	text-decoration: none;
}

.quiz .return_bt a {
	width: 70vw;
	margin: 10% auto 10% auto;
	font-size: 18px;
	line-height: 1em;
	padding: 1em 0;
	text-align: center;
	color: #fff;
	background-color: rgba(63,169,245,1);
	border: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	display:block;
	cursor: pointer;
	behavior: url(css/PIE.htc);
}
.quiz .return_bt a:hover {
	background-color: rgba(63,169,245,0.7);
	text-decoration: none;
}	


.quiz .totop{ padding-bottom:200px;}
.space_quiz{height:0;}

}


@media print {
body {
zoom: 50%; 
}
#container{
	 width:100%;
	height: 100%;
	margin: 0 auto ;
	text-align: center;
	overflow:visible;
	
}

#main {
	width: 100%;
	height: auto;
	min-height: 100%;
 	box-sizing: border-box;
	display:table-cell;
	vertical-align: top;
}
#left_column {
	display: none!important;
	width: 10.6%;
	padding: 0 0 0 0;
	background-color: #333;
	background-image:url(../img/common/menu_comm.png);
	background-repeat: no-repeat;
	background-position: center 348px;
	background-size: 100% auto;
	display: table-cell;
	position: relative;
	
}
#mark {
	width: 100%;
	position: absolute;
	background-color: #fff;
	bottom: 0;
	left: 0;
	z-index: 200;
}
.quiz_bnr {
	display: none;
	width: 30%;
	position: absolute;
	background-color: #fff;
	bottom: 20vw;
	left: 5%;
	z-index: 200;
}
#head_logo {
	width:74%;
	margin:10% 13%;
	}

.page_top {
	display: none;
	width: 56px;
	position: fixed;
	right: 20px;
	bottom: 100px;
}

}
