@charset "utf-8";
@import url("reset.css");
/* 共通設定 */
body{width:100%; line-height:1.5em; font-size:85%;}
#bg{width:100%; background-image:url(../img/bg01.jpg); background-repeat:repeat-x; background-color:#EDF3FA;}
#wrapper,#footer{width: 940px;margin:0 auto;text-align:left;}
*#content{}
img{
	vertical-align:bottom;
	}

.left{
	float:left;
}
.right{
	float:right;
}
.clear{
	clear:both;
	display:inline-block;
}
.box{
	margin-bottom:20px;
}
#about #main p{
	margin:0 0 20px 0;
}
hr{
	border:dotted 1px #ddd;
}


/*---link---*/
a:hover img{
	opacity:0.5;
	filter:alpha(opacity=50);
}
#top .b1-3 a:hover img,#top .b1-4 a:hover img,#consulting .b1-1 a:hover img,#consulting .b1-2 a:hover img{
	opacity:0.8;
	filter:alpha(opacity=80);
}


#content a:link{color:#136ACA; text-decoration:none;}
#content a:visited{color:#2382EB; text-decoration:none;}
#content a:hover{color:#4E9AEF; text-decoration:underline;}
#content a:active{color:#136ACA; text-decoration:none;}

#content .sonpo a:link{color:#00655A; text-decoration: none;}
#content .sonpo a:visited{color:#00655A; text-decoration: none;}
#content .sonpo a:hover{color:#005148; text-decoration: underline;}
#content .sonpo a:active{color:#00655A; text-decoration: none;}


#topic-path a:link{color:#00468C; text-decoration:none;}
#topic-path a:visited{color:#00468C; text-decoration:none;}
#topic-path a:hover{color:#0062C4; text-decoration:underline;}
#topic-path a:active{color:#00468C; text-decoration:none;}


#s-navi a:link{color:#2C3346; text-decoration:none;}
#s-navi a:visited{color:#465271; text-decoration:none;}
#s-navi a:hover{color:#5B6A91; text-decoration:underline;}
#s-navi a:active{color:#2C3346; text-decoration:none;}


#footer a:link,#top .news a:link{color:#fff; text-decoration:none;}
#footer a:visited,#top .news a:visited{color:#CCC; text-decoration:none;}
#footer a:hover,#top .news a:hover{color:#B9DCFF; text-decoration:underline;}
#footer a:active,#top .news a:active{color:#fff; text-decoration:none;}



/*---header---*/
#header{
	height:187px;
}
#header ul{
	font-size:0;
}
#header ul li{
	display:inline-block;
	*display:inline;
	*zoom:1;
}
#header h1 img {
	margin-top: 5px;
}
#header h1 a {
	display: block;
}
#header .right{
	height:71px;
	margin-bottom:41px;
	position:relative;
	padding:0 0 18px 0;
}
#header .right li{
	padding:0 0 0 2px;
}

#header .right .img{
	position:absolute;
	top:90px;
	right:0;
}
#header .sp_nav {
	display: none;
}

/*---content---*/
#content{
	padding:0 0 55px 0;
}
/*---content-news---*/
#news #content{
	width: 100%;
}
#topic-path{
	color:#00468C;
	padding:10px 0 10px 20px;
	margin:10px 0;
	background-color:#C7D7E7;
}
#topic-path li{
	display:inline-block;
	*display:inline;
	padding:0 10px 0 0;
}
#main{
	width:67%;
	background-color:#fff;
	border:solid 1px #ddd;
	padding:2px;
}
/*---news---*/
#main .h4{
	color:#fff;
	font-size:108%;
	font-weight:bold;
	background:url("../img/title01.jpg") repeat;
	padding:8px 0 7px 25px;
}
#main .b1,#main .b2,#main .b3,#main .b4,#main .b5,#main .b6{
	padding:20px 15px;
	margin:0 0 15px 0;
}

/*---TOP consulting #main---*/
#top .b1-3 .img,#top .b1-4 .img,#consulting .b1-1 .img,#consulting .b1-2 .img{
	position:absolute;
	top:0;
	right:0;
}
#top .b1-3 ul,#top .b1-4 ul,#consulting .b1-1 ul,#consulting .b1-2 ul{
	font-size:93%;
	width:auto;
	color:#fff;
	padding:10px 0 0 25px;
	margin:0 0 20px 0;
	line-height:1.4;
}
#top .b1-3 .li,#top .b1-4 .li,#consulting .b1-1 .li,#consulting .b1-2 .li{
	color:#BFCDFF;
	font-size:85%;
	margin:3px 0 0 0;
}

#top .b1-5,#consulting .b2-1,#consulting .b2-2{
	padding:10px;
	border:solid 1px #ddd;
}
#top .b1-5 ul,#consulting .b2-1 ul,#consulting .b2-2 ul{
	margin: 0 0 20px 0;
}
#top .b1-5 ul{
	display:flex;
	flex-wrap: wrap;
}
#top .b1-5 li{
	padding: 2% 2%;
    width: 21%;
}

#consulting .b2-1 ul li,#consulting .b2-2 ul li{
	float:left;
}
#top .b1-3,#top .b1-4,#consulting .b1-1,#consulting .b1-2{
	width:100%;
	position:relative;
	margin:0 0 15px 0;
}
.migi{
	text-align:right;
}
.h-policy{
	padding: 5px 0 5px 20px;
	margin-bottom: 10px;
    font-size: 16px;
    font-weight: bold;
	color: #222c39;
	background: rgb(239,225,196);
	background: linear-gradient(90deg, rgba(239,225,196,1) 1%, rgba(240,226,197,1) 100%);
}
.min {
	font-size: 80%;
}




/*---s-navi---*/
#s-navi,#main{
	background-color:#fff;
	border:solid 1px #DDDDDD;
	padding:2px;
	float:left;
	box-sizing: border-box;
}
#s-navi{
	width:30%;
	margin-right:3%;
	align-self:flex-end;
}
#s-navi dt{
	margin-bottom:1px;
	text-align: center;
}
#s-navi dd{
	font-size:108%;
	background:url("../img/s-navi-mark.gif") no-repeat;
	background-position:10% 40%;
	border-bottom:dotted 1px #DDDDDD;
	padding:12px 10px 10px 55px;
}
#news #s-navi dd,#news-page #s-navi dd{
	background-position:10% 28%;
}

/*---table---*/
table.type01 {
	width:100%;
	border-collapse:collapse;
	border:solid 1px #ddd;
	position:relative;
}
table.type01 caption {
	text-align:left;
}
table.type01 th{
	border:solid 1px #ddd;
	padding:10px 30px;
	width:110px;
	background-color:#F6F6F6;
	white-space:nowrap;
	vertical-align:top;
	text-align:left;
}
table.type01 td{
	border-top:solid 1px #ddd;
	padding:10px 30px;
}



/*---footer---*/
#f-wrapper{
	width:100%; background-image:url(../img/bg02.jpg); background-repeat:repeat-x;
	}
#footer{
	font-size:88%;
	color:#3B8FEC;
	position:relative;
	padding:0 10px;
}
#f-wrapper #btn{
	position:absolute;
	top:-36px;
	right:0;

}
#footer .pc_hide {
	display: none;
}
#footer ul{
	padding:15px 0;
	background-color:#2B86EA;
}
#footer ul li{
	color:#fff;
	padding:0 20px 0 0;
	display:inline-block;
	*display:inline;
}
#footer div{
	padding:25px 0 50px 0;
	position:reletive;
}
#footer div .img{
	position:absolute;
	top:60px;
	right:0;

}
#footer p{
	text-align:center;
}
.seal {
	border: 0px;
    text-align: center;
    float: right;
    padding: 0 !important;
    margin-left: 10px;
}

	/*about*/
#about #main .b3 .img img {
	width: auto; 
}
	/*privacy*/
	#privacy table.type01 th{
	padding: 10px 10px;
	white-space: normal;
	width: 245px;
}
	/*other-servics*/
	#other-services .service__wrap__icn{
	max-width: 130px;
    height: 100%;
	width: 100%;
}
	/*consulting*/
	.sonpo-sp{
		display: none;
	}
	#consulting .top-list {
		padding: 0;
		margin-bottom: 30px;
	}
	#consulting .h-sonpo{
	margin-bottom: 20px;
	}
	/*news*/
	#news .news-style{
	display: flex;
    flex-wrap: wrap-reverse;
}


@media only screen and (max-width: 960px) {
	#wrapper {
		width: 100%;
		padding: 0;
	}
	#wrapper img {
		width: 100%;
	}
	
	#header .gnav {
		text-align: center;
	}
	#header .gnav li {
		width: 16%;
	}
	#content {
		padding: 0 10px 30px 10px;
	}
	#content .box p {
		width: 100%;
	}
	#footer {
		width: 100%;
	}
	/*privacy*/
	#privacy #main #b8 .type01 img {
	width: auto; 
}
	/*partner*/
	#partner .center img {
	width: 180px;
	}
	/*consulting*/
	#consulting h6 img{
		width: auto;
	}
	#top .b2{
		display:flex;
		flex-wrap: wrap;
		float: none;
	}
	#top .b2 a{
		padding: 2% 2%;
		width: 21%;
	}
}

@media only screen and (max-width: 768px) {
	#content {
		padding-top: 70px;
	}
	#header {
		width: 100%;
		height: 64px;
		position: fixed;
		background: #fff;
		border-top: solid 5px #4E9AEF;
		z-index: 10;
	}
	#header h1 {
		float: none;
		width: 140px;
		margin-left: 10px;
	}
	#header h1 img {
	}
	
	/*スマホナビゲーション*/
	#header .sub_nav,
	#header .gnav {
		display: none;
	}
	#header ul li {
		display: block;
	}
	#header .sp_nav_btn {
		position: absolute;
		right: 10px;
		top: 16px;
		width: 30px;
		height: 30px;
		background: #fff;
	}
	#header .sp_nav_btn:before,
	#header .sp_nav_btn:after,
	#header .sp_nav_btn span{
		display: block;
		width: 80%;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}
	#header .sp_nav_btn span{
		height: 3px;
		background-color: #4E9AEF;
		top: calc(50% - 1.5px);
	}
	#header .sp_nav_btn:before{
		content: "";
		top: calc(25% - 3px);
		border-top: 3px solid #4E9AEF;
	}
	#header .sp_nav_btn:after{
		content: "";
		bottom: calc(25% - 3px);
		border-bottom: 3px solid #4E9AEF;
	}
	#header .sp_nav_btn.on span{
		display: none;
	}
	#header .sp_nav_btn.on:before{
		top: calc(50% - 1.5px);
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#header .sp_nav_btn.on:after{
		bottom: calc(50% - 1.5px);
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#header .sp_nav {
		font-size: 13px;
		width: 100%;
		background: #fff;
		border-top: solid 5px #4E9AEF;
		margin-top: 5px;
	}
	#header .sp_nav .dropdown_link {
		color: #4E9AEF;
		padding: 15px;
	}
	#header .sp_nav .menu_list {
		cursor: pointer;
		display: block;
		border-bottom: 1px solid #aaa;
		color: #4E9AEF;
		position: relative;
		transition: all 0.4s ease-out;
		background: #fff;
	}
	#header .sp_nav .menu_list a {
		display: block;
		padding: 15px;
	}
	#header .sp_nav .sub_menu_list {
		display: none;
		background: #eee;
	}
	#header .sp_nav .sub_menu_list li {
		border-bottom: 1px solid #ddd;
		display: block;
		font-size: 13px;
		text-indent: 1em;
	}
	 #header .sp_nav .sub_menu_list a {
	 	display: block;
	 	color: #4E9AEF;
	 	padding: 15px;
	 	transition: all 0.4s ease-out;
	}
	#header .sp_nav a:link { color: #4E9AEF; text-decoration: none;}
	#header .sp_nav a:visited { color: #4E9AEF; text-decoration: none;}
	#header .sp_nav a:active { color: #4E9AEF; text-decoration: none;}
	
	#f-wrapper {
		background: #07396a;
		border-top: solid 5px #4E9AEF;
	}
	#news #f-wrapper {
		margin-top: auto;
	}
	#f-wrapper #btn {
		top: -41px;
		right: 0;
		left: 0;
	}
	#footer {
		padding: 0;
	}
	#footer .sp_hide {
		display: none;
	}
	#footer .pc_hide {
		display: block;
	}
	#footer .f_contact {
		text-align: center;
		color: #4E9AEF;
		font-size: 25px;
		line-height: 1.7;
		padding: 20px 0;
	}
	
	#footer .f_contact small {
		font-size: 14px;
	}
	#footer .f_contact .open_daytime {
		color: #F4560F;
		font-size: 11px;
	}
	#footer p {
		font-size: 10px;
	}
	/*スマホサイドナビ*/

	#s-navi{
		display: none;
	}
	/*スマホコンテンツ*/
	#content{
		width: 100%;
		padding: 75px 0;
	}
	#main{
		float: none;
		width: 100%;
		box-sizing: border-box;
		padding: 6px 5px;
	}
	#bg{
		background-image: none;
	}
	#news #bg{
		display: flex;
		flex-direction: column;
		min-height: 100vh;
	}
	#news #s-navi{
		display: block;	
		margin: 10px auto 0 auto;
		width: 100%;
	}
	#news #s-navi dl{
		display: none;
	}
	#news #s-navi h5{
	background: rgb(220,227,236);
	background: linear-gradient(90deg, rgba(220,227,236,1) 1%, rgba(235,240,246,1) 100%);
	}
	#topic-path{
		font-size: 10px;
	}
	/*company*/
	#company table.type01 th{
	padding:10px 10px;
	width:85px;
	}
	#company table.type01 td{
	padding: 10px 10px;
	}
	#company table.type01 .area{
	padding: 10px 0 10px 10px;
	font-size: 11px;
	}
	#company table.customer td{
	padding: 5px 20px;
	}
	/*privacy*/
	#privacy table.type01 th{
	white-space: nowrap;
	width:auto;
	font-size: 13px;
	}
	
	#privacy table.insurance th{
	white-space: normal;
	width:245px;
	font-size: 13px;
	}
	
	#privacy #b3 table.type01 td{
	padding: 10px 10px;
	font-size: 12px;
	}
	#privacy #b8 table.type01 td{
	padding: 10px 10px;
	}
	/*consulting*/
	.sonpo-pc{
	display: none;
	}
	.sonpo-sp{
	display: block;
	}
	.conpo-sp__ttl-img__koala,
	.conpo-sp__ttl-img__logo{
	width: auto!important;
	}
	.conpo-sp__text{
	background: url("../../img/consulting/link.jpg") no-repeat;
    background-position: right top;
    background-color: #a01437;
	}
	.conpo-sp__text ul{
	padding: 10px 40px 10px 25px;
	color: #fff;
	}
	.conpo-sp__ttl-img{
	text-align: center;
		margin: 30px 0 0 0;
	}
	.hoken-list ul{
	display: flex;
	flex-wrap: wrap;
	}
	.hoken-list li{
	width: 21%;
	float: none;
	padding: 2% 2%;
	}
}

@media only screen and (max-width: 530px) {
	.hoken-list li,
	#top .b1-5 li{
	width: 25%;
	padding: 2% 4%;
	}
	#top .b2 a{
	width: 29%;
	}
}
@media only screen and (max-width: 375px) {
	/*スマホコンテンツ*/
	#content{
		width: 100%; 
	}
	#privacy #main #b8 .type01 img {
	width: 100%; 
}
	.hoken-list li,
	#top .b1-5 li{
    width: 46%;
    padding: 2% 2%;
	}
	#top .b2 a{
	width: 46%;
	}
}