@charset "utf-8";
/*--- reset */

html {
	overflow-y: scroll; 
}

body,
html {  
    height: 100%;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote {
	margin: 0;
	padding: 0;
}
	
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;}

table {
	border-collapse: collapse;
	border-left:1px #eee solid;
	border-spacing: 0;
	border-top:1px #eee solid;
	font-size:100%;
}

th,
td{
	border-bottom: 1px #eee solid;
	border-right: 1px #eee solid;
	padding: 20px 10px;
}


caption {text-align: left;}

q:before,
q:after {
	content: '';}

object,
embed {vertical-align: top;}

h1,
h2,
h3,
h4,
h5,
h6 {font-size: 100%;}

img,
abbr,
acronym,
fieldset {border: 0;}

img{
	vertical-align: bottom;
	line-height: 0;
}

li {list-style-type: none;}
li img{vertical-align: bottom;}
p{
	text-align: justify;
	text-justify: inter-ideograph;
}

a {text-decoration: none; color: #000;}
a:hover{opacity:0.7;}

/* clearfix */
.clear:before,
.clear:after {
    content: " ";
    display: table;
}

.clear:after {
    clear: both;
}

/*hr reset*/
hr {
	border: 0;
	height: 0;
	margin: 0;
	padding: 0;
}

/*font系*/
.fc-white{color:#fff;}
.fc-orange{color:#F25D00;}
.fc-black{color:#000;}
.fc-blue{color:#08529F;}
.fc-blue2{color:#0FA5FF;}
.fc-green{color:#97CC04;}

.f-center{text-align:center;}
.f-right{text-align: right;}

.f-10{font-size:10px;}
.f-12{font-size:12px;}
.f-13{font-size:13px;}
.f-14{font-size:14px;}
.f-16{font-size:16px;}
.f-18{font-size:18px !important;}

.f-bold{ font-weight: bold;}
.f-normal{ font-weight:normal;}

/*margin*/
.mb10{margin:0 0 10px 0 ;}
.mb20{margin:0 0 20px 0 ;}
.mb30{margin:0 0 30px 0 ;}
.mb40{margin:0 0 40px 0 ;}

.mt20{margin:20px 0 0 0;}
.mt40{margin:40px 0 0 0;}

.mtb20{margin:20px 0;}
.mtb40{margin:40px 0;}

/*padding*/
.pd20{padding:20px;}

/*display*/
.img-auto{
	width:100%;
	height:auto;
}
.pc-none{
	display:none;
}
@media screen and (max-width: 768px){
	.sp-none{
		display:none;
	}
	.pc-none{
		display: inherit;
	}
}

/*====================================
 default 
====================================*/
body {
	background: #fff;
	color: #000;
	font-family: 'メイリオ', 'Meiryo', verdana, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', Sans-Serif;
	font-size: 14px;
	height: 100%;
	line-height: 1.8;
	text-align: left;
}


#wrap{
  position:relative;
  height:auto;
  /*
  overflow:hidden;
  */
}
#wrap:before {
    content: "";
    display: block;
}
#container{
	/*
    min-width: 960px;
	*/
    overflow: hidden;
    box-sizing: border-box;
    background: #f5f5f5;
    width: 100%;
    margin: 0 auto;
    padding: 0 0 70px 260px;
}
.cont-inner, .cont-inner2{
	padding:30px;
}

@media screen and (min-width: 769px){
	.content{
		width:960px; 
		margin:0 auto; 
	}
}
@media screen and (max-width: 768px){
	#wrap, #container, #header{
		width:100%;
	}
	#container{
		overflow: scroll;
		box-sizing: content-box;
		padding: 0;
	}
	.sp-body{
		padding:20px;
	}
	.cont-inner{
		padding:20px;
	}
	.cont-inner2{
		padding:15px;
	}
}

/*====================================
 header
====================================*/
@media screen and (min-width: 769px){
	#header{
		position:absolute;
		width:260px;
		background-color:#fff;
		z-index:1;
		height:100%;
		/*
		padding-bottom: 32768px; 
		margin-bottom: -32768px;
		*/
	}
	#header .logo{
		background:#0852A0; 
		height:200px;
	}
	#header h1{
		text-align:center;
		padding:55px 0 0 0;
		font-weight: normal;
	}
	.drawer-menu > li::before {
	  position: absolute;
	  content: "";
	  top: 50%;
	  left: 20px;
	  width: 20px;
	  height: 20px;
	  margin-top: -12px;
	}
	.drawer-menu > li a {
	  display: block;
	  position: relative;
	  padding: 20px 30px 20px 50px; /* 左右にアイコン分を考慮した余白を指定 */
	  font-weight: bold;
	  font-size:15px;
	  line-height:1.3;
	}
	.drawer-menu > li a span{
		display:block;
		font-size:9px;
		font-weight: normal;
		color:#0852A0;
	}

	.sp-nav{
		display:none;
	}
}
/*nav menu*/
.drawer-menu {
  width: 100%;
  background:#fff;
  margin:0 0 20px 0;
}
.drawer-menu > li {
  position: relative;
  border-bottom: 1px solid #ccc;
}

.drawer-menu > li a::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 10px;
  width: 8px;
  height: 15px;
  margin-top: -8px;
  background: url("../img/arrow_r_left.gif") top left no-repeat;
  background-size: 8px 15px;
}
.drawer-menu > li.home::before {
  background: url(../img/icon_home_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.shaken::before {
  background: url(../img/icon_shaken_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.tenken::before {
  background: url(../img/icon_tenken_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.torituke::before {
  background: url(../img/icon_toritsuke_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.bankin::before {
  background: url(../img/icon_toso_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.hanbai::before {
  background: url(../img/icon_hanbai_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.coating::before {
  background: url(../img/icon_coating_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.hoken::before {
  background: url(../img/icon_hoken_b.png) top left no-repeat;
  background-size: 20px 20px;
}

.drawer-menu > li.corporate::before {
  background: url(../img/icon_corporate_b.png) top left no-repeat;
  background-size: 20px 20px;
}

@media screen and (max-width: 768px){
	.sp-none{
		display:none;
	}
	.sp-nav{
		padding:10px 20px;
		background:#0852A0;
	}
	.pc-nav{
		display:none;
	}
	.menu-body{
		background:#0852A0;
		padding:40px 20px 20px 20px;
	}
	.menu-ttl{
		color:#fff;
		font-size:14px;
		font-weight:bold;
		position:absolute;
		top:10px;
	}
	
	.drawer-menu > li:last-child { border-bottom: none;}
	.drawer-menu > li::before {
	  position: absolute;
	  content: "";
	  top: 50%;
	  left: 10px;
	  width: 20px;
	  height: 20px;
	  margin-top: -12px;
	}
	.drawer-menu > li a {
	  display: block;
	  position: relative;
	  padding: 10px 30px 10px 40px; /* 左右にアイコン分を考慮した余白を指定 */
	  font-weight: bold;
	}
	.spnav-btn{
		width:100%;
		height:auto;
	}
}

/*iphone reset*/
input[type="submit"], input[type="reset"], 
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="reset"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


/*====================================
 contents
====================================*/
.side-info{
	margin:30px 20px;
}
.side-info h3{
	color:#0852A0;
	border-bottom:1px #000 dashed;
	padding:10px 0;
	margin:0 0 10px 0;
}
.side-contact{
	background:url(../img/side_bg.gif) repeat;
	padding:20px;
	margin:0 20px;
}

#maincont{
}


@media screen and (max-width: 768px){
	#scrollUp img{
		display:none;
	}
}

/*pagescroll*/
#scrollUp {
    bottom: 20px;
    right: 20px;
}
#scrollUp img {
	width:70px;
	height:70px;
}

/*====================================
 footer
====================================*/
#footer{
	border-left:260px #fff solid;
	padding:70px 0 0 0;
	background:#f5f5f5;
	color:#fff;
}
/**/
.foot-menu{
	padding:40px 0;
	background:#0582CA;
}
.foot-menu ul{
	float:left;
}


.foot-link1 {
  width: 20%;
  border-left:1px #82C1E5 solid;
}
.foot-link2 {
  width: 50%;
  border-left:1px #82C1E5 solid;
}

.foot-link1 > li, .foot-link2 > li {
  position: relative;
}

.foot-link1 > li::before, .foot-link2 > li::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 30px;
  width: 6px;
  height: 10px;
  margin-top: -8px;
  background: url(../img/arrow_l_white.png) top left no-repeat;
  background-size: 6px 10px;
}
.foot-link1 > .link-sub::before, .foot-link2 > .link-sub::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 40px;
  width: 4px;
  height: 8px;
  margin-top: -5px;
  background: url(../img/arrow_l_white.png) top left no-repeat;
  background-size: 4px 8px;
}
.foot-link1 > .link-sub a, .foot-link2 > .link-sub a {
  display: block;
  position: relative;
  padding: 0px 0 0 50px;
  font-weight: normal;
  font-size:13px;
  color:#fff;
}
.foot-link1 > li a, .foot-link2 > li a {
  display: block;
  position: relative;
  padding: 0 0 0 50px; 
  font-weight: bold;
  color:#fff;
}

@media screen and (max-width: 768px){
	.foot-menu{
		padding:0;
	}
	.foot-menu ul{
		float: none;
		width:100%;
	}
	
	.foot-link3{
		float: none;
		left: auto;
	}

	.foot-link-home a{
		display:block;
		color:#fff;
		border-bottom:1px #82C1E5 solid;
		line-height:40px;
	}

	.foot-link3 .onelist{
		width:100%;
		display:block;
	}
	.foot-link3 li{
		float:left;
		width:49.8%;
		line-height:40px;
		border-bottom:1px #82C1E5 solid;
		letter-spacing:-0.7px;
	}
	.foot-link3 li a, .foot-link4 li a{
		color:#fff;
		text-decoration:none;
		display:block;
	}
	.foot-link3 li a::before,
	.foot-link4 li a::before,
	.foot-link-home a::before{
		margin:0 0 0 10px;
		content:" ";
		display:inline-block;
		width:11px;
		height:10px;
	  background: url(../img/arrow_l_white.png) top left no-repeat;
		background-size:6px 10px;
		vertical-align: middle;
	}

	.foot-link3 li:nth-child(even){ 
		border-left:1px #82C1E5 solid;
	}
	/*開閉部*/
	.foot-toggle{
		position: relative;
		display: block;
		cursor:pointer;
		width:100%;
		border-bottom:1px #82C1E5 solid;
		padding:8px 0;
		
	}
	.foot-toggle::after{
		position: absolute;
		content: "";
		top: 50%;
		right: 15px;
		margin-top: -5px;
		width:13px;
		height:13px;
		background: url(../img/arrow_close.png) no-repeat right center #0582CA;
		background-size:13px 13px;
	}
	.foot-toggle::before {
	  position: absolute;
	  content: "";
	  top: 50%;
	  left: 10px;
	  width: 10px;
	  height: 10px;
	  margin-top: -5px;
	  background: url(../img/arrow_l_white.png) top left no-repeat;
	background-size:6px 10px;
	}
	.foot-toggle a{
		color:#fff;
		padding: 0 0 0 25px;
	}
	.row{display: none;} 
	
	.foot-toggle.active::after{
		background:url(../img/arrow_open.png) no-repeat right center #0582CA;
		background-size:13px 13px;
		z-index:600;
	}
	.row .foot-link4{
		background:#036DBC;
	}
	.row .foot-link4 li{
		float:left;
		width:100%;
		border-bottom:1px #82C1E5 solid;
		font-size:12px;
		letter-spacing:-0.7px;
		line-height:1.4;
	}
	.row .foot-link4 li a{
		padding:7px 10px;
	}
}


/*会社情報部*/
.foot-info{
	background:#0852A0;
	padding:20px 0;
}
.foot-info ul{
	float:left;
}
.foot-info li{
	float:left;
	margin:0 20px 0 0;
	font-size:12px;
	line-height:1.4;
}
.foot-info li img{
	width:160px;
	height:auto;
}
.foot-info p{
	float:right;
}
@media screen and (max-width: 768px){
	.foot-info ul, .foot-info li{
		float: none;
	}
	.foot-info li{
		text-align:center;
		margin:0 0 10px 0;
	}
	.foot-info p{
		display:none;
	}
}


/*コピー部*/
.foot-copy{
	background:#001A64;
	padding:10px 0;
}
.foot-copy p{
	font-size:11px;
	text-align:center;
}

@media screen and (max-width: 768px){
	#footer{
		border-left: none;
		padding:70px 0 0 0;
	}
}

/*フッター固定*/
@media screen and (min-width: 769px){
	.fixed-btn {
		display:none;
	}
}
@media screen and (max-width: 768px){
	.fixed-btn {
		overflow: hidden;
		position: fixed;
		 background-color: rgba(0,0,0,0.3);
		bottom: 0px;
		left: 0;
		z-index: 10000;
		width: 100%;
		height:auto;
	}
	.fixed-btn ul {
		margin: 0 0 0 0;
		padding: 0;
		position: relative;
		height:50px;
	}
	.fixed-btn ul li {
		float: left;
		position: relative;
	}
	.fixed-btn ul li a{
		display:block;
	}
	.fixed-btn ul li img{
		width: 100%;
		height:auto;
	}
	.fixed-btn .one{
		width:50.5%;
	}
	.fixed-btn .two{
		width:36%;
	}
	.fixed-btn .three{
		width:13.5%;
	}
}