@charset "utf-8";

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Reset CSS
　━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{	margin:0; padding:0; max-height:100%;}
table{	border-collapse:collapse;	border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{	font-style:normal;	font-weight:normal;	}
ul,ol,li{list-style:none;}
caption,th{	text-align:left;}
h1,h2,h3,h4,h5,h6{	font-size:100%;	font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym {	border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
hr {display:none;}




/* clearfix
-------------------------------------*/
.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix {display: inline-block;}/*IE7用*/

/* Hides from IE-mac \*/
* html .clearfix { height:1%;}
.clearfix { display:block;}
/* End hide from IE-mac */


.alpha a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/* フルードイメージ */
img{
	max-width: 100%;
	height:auto;
	vertical-align: bottom;
	margin: 0 auto;
}
.ie8 img{width:auto;}


/* Androidでpタグの横幅が狭まるバグ対策 */
p {background-image:url(image);}



/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 全般設定
　━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
body {
	font-family : "メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic","MS P Gothic",sans-serif, Arial,Helvetica;
	line-height: 1.4em;
	color: #000000;
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
}

#wrapper{
	width:100%;
	overflow:hidden;
	position: relative;
}
.sm {display: none;}

/* リンク設定
-------------------------------*/
a{color:#0044ff;text-decoration: none;}
a:hover{color: #2590ed;}
a:active, a:focus{outline:0;}


/* 全体
-------------------------------*/
#contents{
	margin:0;
	padding:0;
	width:100%;
}
#contents .inner{
	width:98%;
	max-width:1030px;
	margin:0 auto 40px;
}


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

#header .inner{
	overflow:hidden;
	width:100%;
}

* html #header{height:1%;}


/* ロゴ　**/
#header .logo{
	float:left;
	padding:30px 0 0 20px;
	font-size:20px;
	font-weight:bold;
	line-height:1;
	color:#fff;
}

/* サイドのロゴ　**/
.side_logo{	display:none;}

	@media only screen and (min-width:1250px){
		.side_logo{
			display:block;
			position:fixed;
			top:0;
			left:0;
			width:110px;
			height:100%;
			padding-top:100px;
			text-align:center;
			background-color:#000000;
			z-index:999999;
		}
	}



/* フッター
-------------------------------*/
#footer .inner{
	clear:both;
	padding:20px 10px 10px;
	background-color:#72abe2;
	text-align:center;
}
#footer .logo{
	padding:20px 0;
}

.f_navi li{
	width:100%;
	text-align:left;
	float:left;
	border-bottom:solid 1px #fff;
	padding:5px 10px;
}

.f_navi li a{ display:block; color:#000;}
.f_navi li a:hover{color:#0044ff;}

	@media  print, screen and (min-width:640px){
		.f_navi li{
			width:auto;
			float:none;
			background-color: transparent;
			border:none;
			display:inline-block;
			padding:0 20px;
			border-right:solid 1px #000;
		}
		.f_navi li:last-child{
			border-right:none;
		}
	}
	
.copy{
	font-size:11px;
	line-height:1.2em;
	padding-top:25px;
}

/*  ページトップへ */
#pageTop{
	position:fixed;
	width: 100px;
	bottom:180px;
	right:20px;
}

/*トップリンクス追加*/

.top_links{
	width: 100%;
	background: #5555550f;
	padding:15px 0;
	margin-bottom:40px;
}

.top_links .links_box{
	width:1030px;
	margin: 0 auto 0;
	display:flex;
	flex-direction: row-reverse;
	flex-wrap: nowrap;
}

.top_links .link_image{
	width: 165px;
	border: solid 1px #eeeeee57;
	border-radius: 8px;
}

/*OtherLinks追加*/

.sp_only{
	display:none;
}

.other-links{
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	box-sizing: border-box;
	padding: 45px 53px;
	align-items: center;
	background: #eeeeee4a;
	margin: 50px 0;
	border-radius: 10px;
}

.other-links .sec_name{
	font-size: 1.4rem;
	color: #1e4499;
	font-weight: 600;
	width: 100%;
	line-height: 2.5rem;
}

.other-links .leftbox{
	width: 70%;
	padding: 0px 55px 0 0;
	box-sizing: border-box;
	text-align: justify;
}

.other-links .leftbox .sec_text{
	letter-spacing: 2px;
}

.other-links .leftbox a{
	line-height: 4rem;
}

.other-links .leftbox a::after{
	content:">";
	padding:0 10px;
}

.other-links .rightbox{
	width: 30%;
}

.other-links .rightbox .link_image{
	zoom: 100%;
}


/* HOME
-------------------------------*/
.slider{margin-bottom:40px;}
.top_copy{
	color:#2590ed;
	font-size:150%;
	text-align:center;
	/* margin-bottom:20px; */
	line-height: 4;
}
.top_copy_sub{
	text-align:center;
	margin-bottom: 49px;
}

.gridx3 li{
	width:48%;
	margin-bottom:1.9%;
	margin-right:1.9%;
	float:left;
}
.gridx3 li:nth-child(2n){
	margin-right:0;
}
	@media print, screen and (min-width:640px){
		.gridx3 li{
			width:32%;
			margin-bottom:1.9%;
			margin-right:1.9%;
			float:left;
		}
		.gridx3 li:nth-child(2n){
			margin-right:1.9%;
		}
		.gridx3 li:nth-child(3n){
			margin-right:0;
		}
	}


/* グレー帯 */
.box_gray{
	width:100%;
	background:#f2f2f2;
	padding:40px 0;
	margin: 30px 0 53px;
}
.box_gray ul{
	width:98%;
	max-width:1030px;
	margin:auto;
}
.box_gray li.boxl,
.box_gray li.boxr{
	float: none;
	width:100%;
	text-align:center;
	margin-bottom:20px;
}

#newsList{
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	width:100%;
}

#newsList .title{
	width:100%;
}

	@media  print, screen and (min-width:640px){
		.box_gray li.boxl{
			float:left;
			width:48.6%;
			max-width:500px;
		}
		.box_gray li.boxr{
			float:right;
			width:48.6%;
			max-width:500px;
		}
	}

/* お知らせ */
.top_news{
	margin-bottom:60px;
}
.top_news table{
	width:100%;
	margin-top:20px;
}
.top_news th,
.top_news td{
	padding:15px 20px;
	vertical-align:top;
}
.top_news th{
	width:140px;
	color:#2590ed;
}
.top_news tr{
	border-bottom: dashed 1px #999999;
}
	@media only screen and (max-width:640px){
		.top_news th,
		.top_news td{
			display:inline-block;
		}

	}



/* お問い合わせ
-------------------------------*/
.boxTitle{
	width:100%;
	text-align:center;
	margin-bottom:40px;
}
.bg_business{background:url(../img/business/back_business.jpg) center top no-repeat;}
.bg_company{background:url(../img/company/back_company.jpg) center top no-repeat;}
.bg_contact{background:url(../img/company/back_contact.jpg) center top no-repeat;}

.boxTitle img{
	width:auto;
	max-height:80px;
}
	@media  print, screen and (min-width:1030px){
		.boxTitle{
			padding:200px 0 80px;
		}
		.boxTitle img{
			max-width:100%;
			height: auto;
			max-height:100%;
		}
	}

.info_tel{
	margin-bottom:60px;
	text-align:center;
}
.info_tel p{ margin-bottom:15px;}

.mailform{
	width:100%;
	max-width:800px;
	margin:30px auto;
	border-top:solid 1px #000;
	border-left:solid 1px #000;
}
.mailform tr{
	
}
.mailform th,
.mailform td{
	padding:20px;
	border-right:solid 1px #000;
	border-bottom:solid 1px #000;
}
.mailform th{
	width:30%;
	padding-right:0;
}

.mailform th span{
	font-size:11px;
	line-height:1em;
	padding:2px 5px;
	color:#fff;
	background-color:#f04050;
	border-radius:5px 5px;
	-moz-border-radius:5px 5px;
	-webkit-border-radius:5px 5px;
}

.btn{
	background: url(../img/company/btn_sousin.png);
	width:280px;
	height:42px;
	border:0px solid;
	cursor:pointer;
}
.btn:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";

}
.length_l{
	width:95%;
	padding:8px;
}
.naiyou{
	width:95%;
	height:250px;
	padding:8px;
}
.thanks{
	text-align:center;
	height:300px;
}





@media only screen and (max-width:640px){
		.mailform th,
		.mailform td{
			width:100%;
			display:inline-block;
		}
		.mailform th{padding-bottom:0;}
		.thanks{height:100px;}
	}





/* 会社案内
-------------------------------*/
table.gaiyou{
	width:100%;
	max-width:800px;
	margin:30px auto 60px;
	border-top:solid 1px #000;
}
table.gaiyou tr{
	border-bottom:solid 1px #000;
}
table.gaiyou th,
table.gaiyou td{
	padding:10px;
}
table.gaiyou th{
	width:25%;
}
.box_blue{
	width:100%;
	max-width:960px;
	padding:30px 10px 30px 10px;
	margin:40px auto;
	background-color:#2590ed;
	border-radius:10px 10px;
	-moz-border-radius:10px 10px;
	-webkit-border-radius:10px 10px;
	color:#fff;
	text-align:center;
}
.box_blue ul{
	margin-bottom:20px;
}
.box_blue li{
	display:inline-block;
	vertical-align:middle;
	margin-bottom:15px;
}
.box_blue li p{
	margin-bottom:10px;
}
.box_blue .lead {
	width: 100%;
	margin-bottom:15px;
}
.box_blue .inbox {
	width: 100%;
	display: table;
}
.box_blue .inbox .title {
	width: 23%;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 0 7% 4% 0;
}
.box_blue .inbox .cont_tel {
	width: 32%;
	display: table-cell;
	text-align: left;
	vertical-align: middle;	
}
.box_blue .inbox .contact {
	width: 45%;
	display: table-cell;
	text-align: center;
	vertical-align: middle;	
}
.box_blue .inbox .contact img {
	width: 60%;
	margin-top: 3%;
}
/* 事業案内
-------------------------------*/
.inner_item{
	width:98%;
	max-width:980px;
	margin:0 auto 40px;
	
}
.process{
	margin-bottom:20px;
	background-color:#dcdddd;
}
.process img{	
	display:none;
}
.process span{
	background-color:#2590ed;
	color:#fff;
	padding:0.5em 1.5em;
	display:block;
}

.desc_l,
.desc_r{
	float: none;
	width:100%;
	text-align:center;
}
.blank{
	clear:both;
	height:30px;
}
.document{
	text-align:left;
	padding:15px;
}
.document .title_blue{
	font-size:125%;
	line-height:1.2em;
	font-weight:bold;
	margin-bottom:10px;
	padding-left:0.8em;
	border-left:solid 10px #2590ed;
	box-sizing:border-box;
}
.document th {
	vertical-align: top;
}
.document td {
	vertical-align: top;
}

	@media print, screen and (min-width:768px){
		.process img{
			display:block;
		}
		.process span{
			display:none;
		}
		.desc_l{
			float:left;
			width:50%;
		}
		.desc_r{
			float:right;
			width:50%;
		}
		.document{
			padding-top:70px;
			line-height:1.8em;
		}
		.document .title_blue{ margin-bottom:20px;}
		
	}
  
  
/* PC用 */
@media print, screen and (min-width:1029px){
	#header{
		position: absolute;
		top:0;
		left:0;
		width:100%;
		z-index:8888;
	}
	
	/* ロゴ　**/
	#header .logo{
		display:none;
	}

	
}


/* モニター幅940px以下 */
@media only screen and (max-width:1029px){
	*{
    -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 .inner{margin:0;padding:0;}
	
	#header .logo{
	background-color:#000;
	float:none;
	text-align:center;
	padding:10px 5px;
	}


/*トップリンクス追加*/

.top_links{
	width: 100%;
	background: #5555550f;
	padding:15px 0;
	margin-bottom:40px;
}

.top_links .links_box{
	width:100%;
	padding: 0 8px;
	margin: 0 auto 0;
	display:flex;
	flex-direction: row-reverse;
	flex-wrap: nowrap;
	
}

.top_links .link_image{
	width: 130px;
	border: solid 1px #eeeeee57;
	border-radius: 8px;
}


/*OtherLinks追加_SP*/

.sp_only{
	display:block;
	width:100%;
	text-align:center;
}

.other-links{
	padding: 30px 0 0;
	justify-content: space-between;
	align-items: flex-start;
}

.other-links .sec_name{
	font-size: 1.4rem;
	color: #2590ed;
	font-weight: 600;
	width: 100%;
	line-height: 2.5rem;
	border-left: solid 10px #2590ed;
	padding: 0px 0 0px 10px;
	margin-bottom: 15px;
}

.other-links .leftbox{
	width: 100%;
	padding: 20px 10px;
	box-sizing: border-box;
}

.other-links .leftbox a{
	display:block;
	width:100%;
	line-height: 4rem;
	text-align:right;
	
}

.other-links .leftbox a::after{
	content:">";
	padding:0 10px;
}

.other-links .rightbox{
	width: 100%;
	display:none;
}

.other-links .rightbox .link_image{
	zoom: 40%;
}

}


/* iPad 縦 */
@media only screen and (max-width:1029px){
  #header{padding-bottom:0;}	
	
	#header .logo{
	float:none;
	text-align:center;
	padding:10px 5px 20px;
	background-color:#000;
	}

.box_blue .inbox .title {
	width: 23%;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 0 3% 4% 0;
}
.box_blue .inbox .cont_tel {
	width: 32%;
	display: table-cell;
	text-align: left;
	vertical-align: middle;	
}
.box_blue .inbox .contact {
	width: 50%;
	font-size: 80%;
	display: table-cell;
	text-align: center;
	vertical-align: middle;	
}
.document th {
	width: 100%;
	vertical-align: top;
	display: block;
}
.document td {
	width: 100%;
	vertical-align: top;
	display: block;
}	
#pageTop{
	position:fixed;
	width: 12.5%;
	bottom:10%;
	right:3%;
}
.top_copy{
	color:#2590ed;
	font-size:140%;
	line-height: 1.4em;
	text-align:center;
	margin-bottom:20px;
}
}


/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
body {
	font-size:4.375vw;
	line-height:1.5em;
}	
.box_blue .lead {
	width: 70%;
	margin-bottom:15px;
	margin-left: 15%;
	font-size: 80%;
}
.box_blue .inbox {
	width: 100%;
	display: table;
}
.box_blue .inbox .title {
	width: 30%;
	display: block;
	text-align: center;
	vertical-align: middle;
	padding: 0 0 4% 0;
	margin: 0 35%;
}
.box_blue .inbox .cont_tel {
	width: 80%;
	display: block;
	text-align: left;
	vertical-align: middle;
	margin: 0 10% 5% 10%;
}
.box_blue .inbox .contact {
	width: 100%;
	display: block;
	text-align: center;
	vertical-align: middle;
	margin: 0 ;
}
.box_blue .inbox .contact img {
	width: 60%;
	margin-top: 3%;
}
.top_copy{
	font-size:5.625vw;
	line-height: 1.5em;
}
.document .title_blue{
	font-size:5.3125vw;
	line-height:1.5em;
}
.sm {display: inline;}
}


}


/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){

	/* フッター
	-------------------------------*/
	.address{font-size:85%;}

}



/* 印刷用 */

@media print{
	body{
		width:1030px;
		margin:auto;
	}
	.side_logo{ display:none;}


}