@charset "UTF-8";


/*================================================
/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

/*================================================
/*================================================
 *  一般・共通設定
 ================================================*/

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}



body {
	/*font-size: 16px;*/
	font-family: -apple-system, BlinkMacSystemFont, "Roboto","Helvetica Neue","YakuHanJP","Noto Sans JP","Hiragino Kaku Gothic ProN","游ゴシック Medium",YuGothic,YuGothicM,メイリオ,Meiryo,sans-serif;
	line-height: 1.8;
	-webkit-text-size-adjust: 100%;
	color:#353535;
	background:#fff;
	letter-spacing: 1.5px;

}

_:lang(x)::-ms-backdrop, body {
    font-family: "Segoe UI", Meiryo, sans-serif;
}


/*汎用
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
/*--強調--*/
strong{font-weight:bold;}

/*--フォントアイコン--*/
i {color:#005eae;}

/*--リスト--*/
ul,ol,dl,dt,dd,li{ 
	list-style:none;
 }
ul,ol,dl{ 
	margin-bottom:1em;
 }

hr{
	width:96%;margin:1em auto;
	}

/*--上付き、下付き文字--*/
sup,
sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
	font-size:0.75em
     
}
 
sup {
    bottom: 1ex;
}
 
sub {
    top: .5ex;
}

p {
	margin:0 0 1em 0;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

pre {
	margin:1em 0;
	padding:1em;
	border:none;
}

a:link,a:visited {
color:#005eae;
text-decoration:none;
-moz-outline-style:none;
overflow:hidden;
}
a:hover,a:active,a:after {
color:#42abea;
text-decoration:none;
-moz-outline-style:none;
overflow:hidden;
}
@media screen and (max-width:768px) {
	a{
		word-break: break-all;
	}
}
em {font-style: normal}

/*汎用クラス
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
a.pdf img:hover{
		box-shadow:0px 0px 8px 2px #c5c5c5;
		-moz-box-shadow:0px 0px 8px 2px #c5c5c5;
		-webkit-box-shadow:0px 0px 8px 2px #c5c5c5;}



/*--ポタン　色・基本サイズ--*/


a.btn-default{
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 80px;
    font-size: 1.3em;
	font-weight: 500;
    line-height: 1.4;
    display: inline-block;
    padding: 3% 4%;
    box-shadow: 0 3px 1px rgba(13,13,13,0.21);
}
a.btn-default:before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
	margin-right:5px;
}

a.btn-default_s{
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 40px;
    font-size: 1.1em;
	font-weight: 500;
    line-height: 1.4;
    display: inline-block;
    padding: 4% 4%;
    box-shadow: 0 3px 1px rgba(13,13,13,0.21);letter-spacing: .7px;
}
a.btn-default_s:before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
	margin-right:5px;
}

a.btn-default2{
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	  border-radius: 80px;
	  font-size: 1.3em;
	  font-weight: 500;
	  line-height: 1.4;
	  display: inline-block;
	  padding: 2% 4%;
	  box-shadow: 0 3px 1px rgba(13,13,13,0.21);
  }
  a.btn-default2:before {
	  font-family: "Font Awesome 5 Free";
	  font-weight: bold;
	  content: "\f35a";
	  text-decoration:none;
	  margin-right:5px;
  }
a.btn-normal{
  /*transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;*/
    font-size: 1em;
    line-height: 1;
    display: inline-block;
    text-decoration: none;
}
a.btn-normal:before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
	margin-right:5px;
}
a.btn-normal:hover{
text-decoration: underline;
}

a.btn-detail{
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 40px;
    font-size: 1.1em;
	font-weight: 500;
    line-height: 1.4;
    display: block;
    padding: 5% 4%;
    box-shadow: 0 3px 1px rgba(13,13,13,0.21);margin:0 auto .5em;
	text-align: center;
	width: 90%;
	letter-spacing: .7px
}
a.btn-detail:before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
	margin-right:5px;
}

a.btn-detail:hover.targetblank:hover:after {
		color:#fff;
		transition: background 0.2s ease 0s;
}

a.btn-service{
	border:2px #0856a0 solid;border-radius: 4px;
    box-shadow: 0 3px 2px rgba(13,13,13,0.21);
    font-size: 22px;
    color: #0856a0;
	background: #fff;
    padding: 28px;
    line-height: 1.2;
    display: block;
	text-align: center;
		transition: top 0.35s cubic-bezier(0.4,0,0,1);}
	a.btn-service:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
		margin-right:5px;}
	a.btn-service:hover{
	background: #0856a0;

    color: #fff;
	}
a.btn-service:hover.targetblank:hover:after {
		color:#fff;
		transition: background 0.2s ease 0s;
}

a.btn-service2{
	border:2px #0856a0 solid;border-radius: 4px;
	background: #fff;
    box-shadow: 0 3px 2px rgba(13,13,13,0.21);
    font-size: 24px;
    color: #0856a0;
    padding: 28px;
    line-height: 1.2;
    display: block;
	text-align: center;
		transition: top 0.35s cubic-bezier(0.4,0,0,1);}
	a.btn-service2:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
		margin-right:5px;}
	a.btn-service2:hover{
	background: #0856a0;

    color: #fff;
	}
a.btn-service2:hover.targetblank:hover:after {
		color:#fff;
		transition: background 0.2s ease 0s;
}



a.btn-pagebefore{
	border:2px #0856a0 solid;border-radius: 4px;
    box-shadow: 0 3px 2px rgba(13,13,13,0.21);
    font-size: 18px;
    color: #0856a0;
	text-align: center;
    padding: 18px;
    line-height: 1.2;
    display: block;
		transition: top 0.35s cubic-bezier(0.4,0,0,1);}
	a.btn-pagebefore:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f0a8";
	text-decoration:none;color: #0856a0;
		margin-right:5px;}
	a.btn-pagebefore:hover{
	background: #0856a0;
    color: #fff;
	}
	a.btn-pagebefore:hover:before{
		color: #fff;}

a.btn-pagenext{
	border:2px #0856a0 solid;border-radius: 4px;
    box-shadow: 0 3px 2px rgba(13,13,13,0.21);
    font-size: 18px;
	text-align:center;
    color: #0856a0;
    padding: 18px;
    line-height: 1.2;
    display: block;
	transition: top 0.35s cubic-bezier(0.4,0,0,1);}
	a.btn-pagenext:after{
		color: #0856a0;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f0a9";
	text-decoration:none;
		margin-right:5px;}
	a.btn-pagenext:hover{
	background: #0856a0;

    color: #fff;
	}
	a.btn-pagenext:hover:after{
		color: #fff;}




a.btn{
	color:#fff;
	text-align:center;
	text-decoration:none;
}
a.hd-btn{
	display:block;
	width:100%;
	padding:10px 8px;
	font-size: 1.2em;
}
	a.hd-btn i{
		color:#fff;
	}
a.hd-btn_w{
	/*display:block;
    padding: .8em;
    font-size: 1.8em;
	margin: auto;*/
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 80px;
    font-size: 1.7em;
    font-weight: 700;
    line-height: 1;
    display: inline-block;
    width:100%;
    padding: 8% 9%;
	box-shadow: 0 3px 1px rgba(255, 255, 255, .3);

}



a.hd-btn_m{
	display:block;
	font-size:1.2em;
	margin:0.5em auto;
	border-radius: 80px;
	
}
a.hd-btn_m i{
	color:#fff
	
}

a.hd-btn_sw{
	display:block;
	width:90%;
	padding:0.2em 8px;
	font-size:1em;
	margin:0.5em auto;
}
a.hd-btn_s{
	display:block;
	width:100%;
	padding:6px;
	font-size:20px;
	margin:0px auto 20px;
}
a.hd-btn_arrow{
	display:block;
	width:100%;
	font-weight:500;
	margin:auto;
	font-size:1.8em;
	width:auto;

}
	a.hd-btn_arrow:before{
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0a9";
		color:#005eae;
		text-decoration:none;
		padding-left:2px;
		margin-right:5px;
	}
	a.hd-btn_arrow:hover,
	a.hd-btn_arrow:hover:before{
		color:rgba(0,63,117,0.90);
	}

@media screen and (max-width:980px) {
a.hd-btn_w{
font-size: 1.5em;

}
a.btn-detail{
    font-size: 1em;
    padding:2%;

}

a.btn-default_s {
    font-size: 1em;
    padding: 2%;
}
}
@media screen and (max-width:768px) {

/*a.hd-btn{
	display:block;
	width:80%;
	padding:8px 8px 6px;
	margin-right:14px;
	font-size:28px;
}
	a.hd-btn i{
		color:#fff;
	}*/
a.hd-btn_w{

}
a.hd-btn_m{
	display:block;
	padding:0.5em 8px;
	font-size:1.2em;
	margin:0.5em auto;
}

/*a.hd-btn_sw{
	display:block;
	width:90%;
	padding:0.2em 8px;
	font-size:1.3em;
	margin:0.5em auto;
}
a.hd-btn_s{
	display:block;
	width:100%;
	padding:6px;
	margin:auto;
	font-size:20px;
	margin:0px auto 20px;
}*/

}



a.btn-info-primary {
    color: #f9a712;
	background: #fff;
	border:3px solid #f9a712;

}
	a.btn-info-primary:hover {
	background: #f9a712;
		color:#fff;
		transition: background 0.2s ease 0s;
	}

a.btn-info-green{
  		color:#3f901e;
	  background:#fff;
	  border:3px solid #3f901e;
	}
	a.btn-info-green:hover{
	background: #3f901e;
		color:#fff;
		transition: background 0.2s ease 0s;
	 
	}


a.btn-info-gray{
	color:#616161;
	  background: #fff;
		border:3px solid #616161;
	}
	a.btn-info-gray:hover{
		color:#fff;
	background:  #616161;

	}




a.btn-info {
    color:#005eae;
	background: #fff;
    border:3px solid #005eae;
}
a.btn-info:hover {
	background: #005eae;
		color:#fff;
		transition: background 0.2s ease 0s;
}
a.btn-info:hover.targetblank:hover:after {
		color:#fff;
		transition: background 0.2s ease 0s;
}

a.btn-info {
    color:#005eae;
	background: #fff;
    border:3px solid #005eae;
}
a.btn-info:hover {
	background: #005eae;
		color:#fff;
		transition: background 0.2s ease 0s;
}


a.btn-primary {
    color: #fff;
	background: #f9a712;
	border:4px solid #f9a712;
	  text-decoration:none;
	font-weight: 600;
	/*background-color: #d93400;
   	border:4px solid #d93400;*/
}
	.btn-primary:hover {
	  color: #fca404;
	  background-color: #fff;
	}
a.btn-primary2 {
    color: #fff;
	background-color: #e65549;
   	border:4px solid #e65549;
	  text-decoration:none;

}
	.btn-primary2:hover {
	  color: #d93400;
	  background-color: #fff;
	}

a.btn-outline-contact {
	border:1px #353535 solid;
  color: #353535;
	font-size:1.8em;
	display:block;
 line-height: 1;
	padding:4% 8%;
	    width: 90%;
    text-align: center;
    margin: auto;

}

	a.btn-outline-contact:before{
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0e0";
		color:#353535;
		text-decoration:none;
		padding-left:2px;
		margin-right:5px;
	}

	a.btn-outline-contact:hover {
		border:1px #353535 solid;
		background: #353535;
	  color: #fff;transition: background 0.2s ease 0s;

	}
	a.btn-outline-contact:hover:before{
		color:#fff;transition: background 0.2s ease 0s;
	}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #28286e;
  border-color: #313146;
}


a.btn-green{
  		background:#3f901e;
	  color:#fff;
	  /*box-shadow: 0px 3px 0px 0px #3e531c;*/
	  text-decoration:none;
	border:4px solid #3f901e;
	}
	a.btn-green:hover{
	  color:#3f901e;
		background: #fff;
	 
	}


	a.btn-blue{
	  background:#005eae;
	  color:#fff;
		border:4px solid #005eae;
	  /*box-shadow: 0px 3px 0px 0px #216192;*/
	  text-decoration:none;
	}
	a.btn-blue:hover{
		background:#fff;
		color:#005eae;

	 
	}
	a.btn-gray{
	background:#616161;
	  color:#fff;
	  text-decoration:none;
		border:4px solid #616161;
	}
	a.btn-gray:hover{
		background:#fff;
	color:#616161;

	}
	a.btn-lightgray{
	background:#8b8b8b;
	  color:#fff;
	  text-decoration:none;
		border: 4px solid #8b8b8b;
	}
	a.btn-lightgray:hover{
	  color:#8b8b8b;
	background:#fff;

	}

/*--- 揃え ---*/
.text_center { text-align:center; }
.text_left { text-align:left; }
.text_right { text-align:right; }
.text_top {vertical-align:top;}

/*--テキストサイズ--*/
.text_min {font-size:0.7em;}
.text_small {font-size:0.9em;}
.text_xmin {font-size:0.55em;}
.text_large {font-size:1.2em;}
.sm-text{font-size:0.7em;color:#666;line-height:1.5;display:block;}
/*--clearfix--*/
.clearfix {width:100%;}
.clearfix:after{ content: ""; display: block; clear: both; }
/*--画像--*/
a:hover img {opacity: 0.7;}
.img_wrap{text-align:center;margin:1em auto;display:block;}
.img_wrap img{width:auto}
img.responsive-img {width: 100%;}
img.responsive-img-half {width: 50%;}

.caselogo {
    display: block;
    margin: 2em auto;
    text-align: center;
}


/*.img_wrap_col3{text-align:center;margin:1em auto;display:block;}
.img_wrap_col3 img{width:86%}
.img_center{text-align:center;margin:0.5em auto;display:block;}
.img_center img{width:auto}
.img_center_auto{text-align:center;margin:0.5em auto;display:block;}
.img_center_auto img{width:auto}
.img_center_ill{text-align:center;margin:0.5em auto;display:block;}
.img_center_ill img{width:680px}*/


/*================================================
 *  汎用クラス
 ================================================*/
/* 中央寄せ */
.center {
	text-align: center;
}
.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* 左寄せ */
.left {
	text-align: left;
}

/* 右寄せ */
.right {
	text-align: right;
}

/* 写真中央寄せ */
.imgC {
	clear:both;
	overflow:hidden;
	margin: 0 auto 50px auto;
	margin-bottom:50px;
	text-align:center;
}
.imgC img {
	margin-bottom:10px;
}

/* 写真左寄せ */
.imgL {
	clear:both;
	overflow:hidden;
	/*margin-bottom:50px;*/
}
.imgL img {
	float:left;
	margin:0 10px 0 0;
}

@media screen and (max-width:767px) {
	.imgL {
		margin-bottom:20px;
	}
	.imgL img {
		float:none;
		margin:0 0 10px 0;
	}
}

/* 写真右寄せ */
.imgR {
	clear:both;
	overflow:hidden;
	margin-bottom:50px;
}
.imgR img {
	float:right;
	margin:0 0 0 10px;
}

@media screen and (max-width:767px) {
	.imgR {
		clear:both;
		overflow:hidden;
		margin-bottom:20px;
	}
	.imgR img {
		float:right;
		margin:0 0 10px 0;
	}
}
.image {
	width: 100%;
	min-height: 0%;
	/*margin-bottom:1em;*/
}
.image img {
	width:100%;
}

.img_left {
  float: left;
  margin-right: .8em;
  margin-bottom: 1em;
}
.img_right {
  float: right;
  margin-left: .8em;
  margin-bottom: 1em;
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.right-block {
	margin: 0 0 0 auto;
}
/*円アイコン*/
.icon-bg {
    background: #0559a1!important;
    border-radius: 224px!important;
    padding: 28px 24px 24px!important;
    display: block!important;
    margin-left: auto!important;
    margin-right: auto!important;
    text-align: center!important;
    width: 142px!important;
    height:142px!important;
	margin-bottom:2em;
}
.add01{
	color:#878787;
	}
.add02{
	color:#cc3333;
	}

.link_arrow:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f0a9";
	color:#005eae;
	text-decoration:none;
	padding-left:2px;
	margin-right:5px;
}
.link_arrow{
	line-height:15px;
	}
	.link_arrow:hover {
		text-decoration:none;
		background:#f3f3f3
	}
.link_pdf:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f1c1";
	color:#005eae;
	text-decoration:none;
	padding-left:2px;
	margin-right:5px;
}

.link_pdf{
	line-height:15px;
}


.internallink_arrow:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f0ab";
	color:#005eae;
	text-decoration:none;
	padding-left:2px;
	margin-right:5px;
}
.internallink_arrow{
	line-height:15px;
	}
	.internallink_arrow:hover {
		text-decoration:none;
		background:#f3f3f3
	}



.targetblank{
		padding-right:0px;
		margin-right:0.3em;
		position:relative;
		}

	.targetblank:after{
		font-family: "Font Awesome 5 Free";
		content: "\f2d2";
		font-weight: bold;
		color:#005eae;
		padding-left: 5px;
		text-decoration:none
	}
	.targetblank:hover {
		text-decoration:none;
		background:#f3f3f3
	}
/*movie埋め込み
.movie{
position:relative;
width:100%;
}
.movie iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
} */
/*movie埋め込み */

/*movie埋め込み */

.movie{
position:relative;
width:100%;
padding-top:56.25%;
}
.movie iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}
.sm{display: none}
/*--- 見出し ---*/

h2{
	text-align:center;
	font-size:2.4rem;
	line-height:1.2;
	font-weight:bold;
	/*margin:0 0 1em;*/
}
	h2.page-hl {
		font-size: 2em;
		line-height: 1.2;
		font-weight: bold;
		border-bottom: 1px #ccc solid;
		margin: 0 0 1em;
		padding: 0.3em 0.6em 0.6em 0em;
		text-align: left;
	}
.h2-subtitle {
    margin: 0 auto;text-align: center;font-size: 1.4em;
}
.h2-subtitle span,
.h2-subtitle span.blue{
position: relative;
     display: inline-block;
     padding-bottom:0.5em;
     border-bottom: 1px solid black;
}
.h2-subtitle span::before,
.h2-subtitle span::after,
.h2-subtitle span.blue::before,
.h2-subtitle span.blue::after{
     position: absolute;
     top: 100%;
     left:50%;
     transform:translateX(-50%);
     content: '';
     border: 10px solid transparent;
}
 
.h2-subtitle span::before,
.h2-subtitle span.blue::before{
     border-top: 10px solid black;
}
 
.h2-subtitle span::after {
     margin-top: -1px;
     border-top: 10px solid white;
}
.h2-subtitle span.blue::after {
     margin-top: -1px;
     border-top: 10px solid #eaf4fd;
}

h3{
	text-align:center;
	font-size:1.8rem;
	line-height:1.4;
	font-weight:bold;
	margin:0.5em 0 1em 0;
	
	
}
	h3.page-hl {
    font-size: 1.6em;
    font-weight: bold;
    line-height: 1.2em;
    padding: 0em 0.6em 0em 0.6em;
    border-left: 6px #005eae solid;
    margin: 1em 0;
    border-radius: 5px;
	text-align: left
}

	h3.box-title {
		font-weight: 700;
		text-align: center;
		margin-bottom: .5em;
		font-size:1.2em;
	}
h3.box-title_underline{
	font-weight: 700;
		text-align: center;
        background: #005baa;
    color: #fff;
    padding: .4em .3em;margin:1em .5em;font-size: 1.6em}
/*h3.box-title_underline::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -17%;
    left: 0;
    width: 100%;
    height: 35%;
	background: #f5f5f5;}*/
h3.underline{margin-top: 4%;
    display: inline-block;
    margin-bottom: 9%;
	position: relative;}
h3.underline::before{

	content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -17%;
    left: 0px;
    width: 100%;
    height: 35%;
    background: #f5f5f5;
}
	h3.box-title_s {
		font-weight: 700;
		text-align:left;
		margin-bottom: .5em;
		font-size:1.1em;
	}
h3.feature-title {
		font-weight: 500;
		text-align:left;
		margin-bottom: .5em;
		font-size:1.8em;;
		color:#005ea9;
	}

	h3.inner-title{
	  position: relative;
	  padding: .75em 1em .3em 0;
		font-size:1.8em;
		font-weight: 700;
		border-bottom:1px #ccc dotted;
		margin-bottom:1em;
		text-align: left;
	}
h3.tt-feature{
	text-align: left;
	color: #005eae;
	font-size: 25px;
	line-height: 1.4em; 
	font-weight: 500;
	letter-spacing: 0;
	margin: 0 0 10px;
}
/*h4{
  position: relative;
  padding: 0 0 .5em 2em;
font-size:1.3em
}

h4::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '●';
  width: 28px;
  height: 28px;
  line-height: 28px;
  background-color: #ccc;
  border-radius: 100%;
  color: #fff;
  font-size: .9em;
  text-align: center;
}*/

h4{
	font-weight: 700;
    font-size: 1.4em;
    line-height: 150%;
		margin:0.5em 0 1em 0;
}



.title_h4 {
  position: relative;
  padding: .75em 1em .3em 0;
	font-size:1.2em;
	font-weight: 700;
	border-bottom:1px #ccc dotted;
	margin-bottom:1em;
}
.title_h4::before{
		font-family: "Font Awesome 5 Free";
		content: "\f152";
		font-weight: bold;
		text-decoration:none;
		margin-right:5px;
		color:#005eae;
	}
	h4.box-title {
		font-weight: 700;
		text-align: center;
		margin-bottom: .5em;
		font-size:1.3em;
		line-height: 150%;color:#0559a1;
	}

/*h4::after {
  position: absolute;
  top: 1em;
  left:0;
  z-index: 2;
  content: '';
  width: 20px;
  height: 20px;
  border: 4px solid #005eae;
  border-radius: 100%
}*/
h5 {
  position: relative;
  padding: .75em 1em .3em 0;
	font-size:1.3em;
	font-weight: 700;
	margin-bottom:1em;
}
@media only screen and (max-width: 1160px) {
h2{
	font-size:2em;
}
h3{
	font-size:1.5em;
}
}
/*小見出し*/

/*--リスト--*/
.link_list li{
	line-height:160%;
	margin:0;
	padding:0;
}
	.link_list li:before{
		font-family: "Font Awesome 5 Free";
		font-weight:bold;
		content: "\f0a9";
		color:#005eae;
		padding-right:0.3em;
		}
.pdf_list li{
	line-height:160%;
	margin:0;
	padding:0;
}
	.pdf_list li:before{
		font-family: "Font Awesome 5 Free";
		font-weight:bold;
		content: "\f1c1";
		color:#005eae;
		padding-right:0.3em;
		}

.list_number{
	margin-left:1.5em;
	}
	.list_number li{
		list-style:decimal;
		line-height:180%
		}
.list-note li {
	text-indent:-0.9rem;
	padding-left:0.9rem;
	line-height:160%
	}
.list_arrow{
	margin-left:0.5em;
	}
	.list_arrow li:before,
	.list_arrow dt:before{
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0da";
		color:#005eae;
		padding-right:0.5em;
		}

	.list_arrow li{
		list-style:none;
		margin:0;
		padding:0;
		line-height:160%;
		text-align:left;
		}
	.list_arrow dt{
		list-style:none;
		margin:0;
		padding:0;
		line-height:170%;
		font-weight:bolder;
		}
	.list_arrow dd{
		padding-left: 1em;
		line-height:160%;
		}
.list_faq{
	margin-bottom:2em;
}
.list_faq li{
	border-bottom:1px #eee dotted;
	line-height:160%;
	margin-bottom:1.5em;
}
.list_faq dt{
	border-bottom:1px #eee dotted;
	line-height:170%;
	font-weight:bolder;
	margin-bottom:0.6em;
	font-size:1.2em
}
.list_faq dd{
	line-height:160%;
	margin-bottom:1.8em;
}
.list_flow,
.list_flow_short{
		margin:0 0 2em;
	width:100%
	}
.list_flow li{
		border-radius:3px;
		min-height:113px;
	}
.list_flow_short li{
		border-radius:3px;
		min-height:63px;
	}
	.list_flow li span{
		width:16%;
		height:100%;
		display:block;
		background:#005eae;
		border-radius:3px 0 0px 3px;
		float:left;
		min-height:113px;
		color:#fff;
		font-size:1.2em;
		font-weight:bolder;
		text-align:center;
		padding:0.5em 0 0 0em;
		}
	.list_flow_short li span{
		width:16%;
		height:100%;
		display:block;
		background:#005eae;
		border-radius:3px 0 0px 3px;
		float:left;
		min-height:4.3em;
		color:#fff;
		font-size:1.2em;
		font-weight:bolder;
		text-align:center;
		padding:0.5em 0 0 0em;
		}
	.list_flow li:after{
		content:"▼";
		font-size:2em;
		padding-left:50%;
		float:none;
		}
	.list_flow_short li:after{
		content:"▼";
		font-size:2em;
		padding-left:35%;
		float:none;
		}
@media screen and (max-width:768px) {
	.list_flow_short li span{
		line-height:1.2em;
		}
	

}
	.list_flow li:last-child:after,
	.list_flow_short li:last-child:after{
		content:"";
		}

	.list_flow_step{
		float:right;width:84%;display:block;min-height:113px;
		background:#eee;
		border-radius:0px 3px 3px 0px;
		}
	.list_flow_step_short{
		float:right;width:84%;display:block;min-height:80px;
		background:#eee;
		border-radius:0px 3px 3px 0px;
		}
		.list_flow_step dl,
		.list_flow_step_short dl{margin:0.5em 0 0 1em}	
		.list_flow_step dl dt,
		.list_flow_step_short dl dt{
			font-size:1.4em;
			font-weight:bolder;
			color:#0066cc;}
		.list_flow_step dl dd{
			margin-bottom:10px;
			padding-right:10px;
			line-height:1.6;}

	.list_youto dt{
		line-height:160%;
		padding:0.4em 0.3em;
		border:1px #eee dotted;
		text-align:center;
		background:#ccc;
		
		}
	.list_youto dd{
		padding:0.4em 0.3em;
		line-height:160%;

		}
/*テーブル*/
table{
	border-spacing:0px;
	border-top:1px solid #a7c9e5;
	border-right:1px solid #a7c9e5;
	margin:10px auto 30px;
	border-collapse:collapse;
  width:100%;
	}
.table100{
  width:100%;
	border-spacing:0px;
	border-top:1px solid #a7c9e5;
	border-right:1px solid #a7c9e5;
	margin:10px auto 30px;
	border-collapse:collapse;
  overflow: hidden;
  word-break: break-all;
  word-wrap: break-word;
}
 
	.table100 th{
		background:#e7f3fd;
		border:1px solid;
		border-color:#a7c9e5;
		padding:15px;
	vertical-align: top;
	overflow: hidden;
	white-space:nowrap;
	}
	
	.table100 td{
		border-bottom:solid #a7c9e5 1px;
		border-left:solid #a7c9e5 1px;
		padding:15px;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	background-color:#fff;
	}


.table_wrapper{
    white-space: nowrap;
	width: 100%;
    max-width: 1200px;
    overflow-x:auto;
	overflow-y: hidden;
	}

.table td.blank{
	border-left:none;
	border-top:1px #fff solid}
.table td.border-top {
	border-top:solid #a7c9e5 1px;
	}
.table th{
	background:#e7f3fd;
	border:1px solid;
	border-color:#a7c9e5;
	padding:15px;
	}
.table td{
	border-bottom:solid #a7c9e5 1px;
	border-left:solid #a7c9e5 1px;
	padding:15px;
	background-color:#fff;
	}

.no-border{
	border-spacing:0px;
	border-top:none;
	border-right:none;
	margin:.5em 0;
	border-collapse:collapse;
	background-color:#fff;
	width: auto;
	}
	.no-border th{
		background:#fff;
		border:none;
		padding:5px;
		text-align: left;
		}
	.no-border td{
		border-bottom:none;
		border-left:none;
		padding:5px;
		}

.cell_center{
	text-align:center;
	}
.cell_left{
	text-align:left;
	}
.cell_right{
	text-align:right;
	}
.cell_top{
	vertical-align:top;	
	}
.cell_bottom{
	vertical-align:bottom;	
	}
.cell_middle{
	vertical-align:middle;	
	}

.title{
	background:#c1e0fa !important;
	font-weight:bold

	}
.price {
	/*color:#039*/
}
.value {
	font-weight:bolder;
	color:#cc3333;
}
.batu {
	font-family:'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', "メイリオ", Meiryo, "ＭＳ Ｐゴシック";
	font-size:1.4em;
}

.dottedtable{
  width:100%;
	margin:0px auto 30px;
	border-top:1px dotted #ddd;
	border-right:none;
  overflow: hidden;
  word-break: break-all;
  word-wrap: break-word;
}
 
	.dottedtable th{
		background:#efefef;
		padding:.5em .7em;
		text-align:center;
		border-bottom:1px dotted #ccc;
		border-left:0.5em #005eae solid;
	vertical-align: top;
	overflow: hidden;
	white-space:nowrap;
	}
	
	.dottedtable td{
	padding:0.5em;
	vertical-align: top;
	border-bottom:1px dotted #ccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	}

.list_table{
  overflow: hidden;
  word-break: break-all;
  word-wrap: break-word;
  width:100%;
	border-top:none;
	border-right:none
}

	.list_table td:first-child {
	width:50%;
	padding-right:0.5em;
	
	}

	.list_table td{
	padding:0.2em;
	vertical-align: top;
	border-bottom:none;
	  overflow: hidden;
	  word-break: break-all;
	  word-wrap: break-word;
	
	}
	

@media screen and (max-width:768px) {
	.table th{
	padding:10px;
	}
.table td{
	padding:10px;
	}

}
@media screen and (max-width:480px) {
.table100 th{
	  display:block;
	  margin: 0 auto;
	  border-top:none;
	  border-right:none;
	}
	
	.table100 td{
	  display: list-item;
	  list-style:none;
	}
	.dottedtable th{
	  display:block;
	  margin: 0 auto;
		border-bottom:none;
		border-left:1px dotted #ddd;
		border-right:1px dotted #ddd;
		}
	.dottedtable td{
	  display: list-item;
		border-right:1px dotted #ddd;
		border-left:1px dotted #ddd;
		}

	.list_table td{
	  display:table-cell;
	  border-right:none;
	  border-left:none;
	}
}
/*レイアウト
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
header.globalnavi {
	width: 100%;
	position: relative;
	background:none;
	transition:all .2s linear 0s;
	/*padding:10px 0 0;*/
	z-index:222;
	letter-spacing: 1px;
	
	
}
	header.globalnavi.fixed {
	position: fixed;
	box-shadow:0 6px 4px -4px rgba(0,0,0,.1);
	background: #fff;
	/*transition:all .2s linear 0s;*/

	}

header.globalnavi:after {
	content: ""; 
	display: block;
	clear: both;
}

footer {
	box-sizing:border-box;
	width:100%;
	clear:both;
	background-color:#f7f7f7;
	background-image:url("/images/footer_bg2.gif");
	background-repeat:no-repeat;
	background-position: center top;
	color:#555;
	padding-top:8em;
	letter-spacing: 1px;
}






/*================================================
 *  フッター
 ================================================*/
 
 footer .logo {
	display: flex;
}
footer .logo img {
    vertical-align: middle;
    width: auto;
    height: 58px;
}
	footer .targetblank{
		padding-right:0px;
		margin-right:0.3em;
		position:relative;
		}

	footer .targetblank:after{
		font-family: "Font Awesome 5 Free";
		content: "\f2d2";
		font-weight: bold;
		color:#666;
		padding-left: 5px;
		text-decoration:none
	}
	footer .targetblank:hover {
		text-decoration:none;
		background:#f3f3f3
	}
	#footermenu {line-height: 1;}
	#footermenu span {
		font-size:0.8em;
		font-weight:bold;
		
		
		}
		#footermenu span a {color:#2a61a6;}
	footer .footer_menu {
		padding:0;
		margin: 0.8em 0;
	}
	footer .footer_menu li a {
		color:#777;
		text-decoration:none;
	}
	footer .footer_menu li a:hover{
		text-decoration:underline;
	}

	footer .footer_menu li{
			list-style:none;
			margin:0;
			padding:0;
			line-height:170%;
			text-align:left;
		font-size:0.7em;
		letter-spacing: 0.6px
	}
		footer .footer_menu li:before{
			font-family: "Font Awesome 5 Free";
			font-weight: bold;
			content: "\f0da";
			color:#333;
			padding-right:.3em;
			}
	

	footer a {
		color:#777;
		text-decoration:none;
	}
	footer i{
		color:#777;
	}
	footer a:hover{
		text-decoration:underline;
	}
footer p{font-size:.7em}
.flink_area{

	display: flex;
	padding: 1% 0;
	border-top:1px #777 solid;
}
.flink{
	display: block;
	margin-bottom:0
}
.flink li {
    float: left;
    list-style: none;
    margin: 0;
    padding:0;
    font-size: 0.8em;
    text-align: center;
}

.flink li:after{
    content: " | ";
    color: #333;
    padding:0 .8em;
}
.flink li:last-child:after{
    content: "";
}
	.flink a[target="_blank"]:after{
		font-family: "font awesome 5 free";
		content: "\f2d2";
		font-weight: 700;
		 padding-left: 5px;
		 color: #666;
		text-decoration:none
	}



.flink li a{color:#777;font-size:0.9em;letter-spacing: .04rem;}
.flink li a:hover{text-decoration: underline;}	
.sns {margin:1em}
.sns:after{content: ""; display: block; clear: both;}
.sns li {
	float:left;
	list-style:none;
	margin:0;
	padding:0 0.8em;
	font-size:.8em;

}
.sns li:last-child{
	padding:0 0 0 0.8em ;
}
.sns li a i{color:#666;}
.sns li a i:hover {color:#0073ad;}

.side_seal_wrap{

	margin:auto;
	display: inline-block
	}
.side_seal_wrap span{
	float:left;
	padding-right: 10px;
	}


.copyright {
	clear:both;
	padding:20px 0;
	font-size:11px;
	text-align:center;
		background:rgba(3,92,159,0.94);
	color:#fff;
	line-height:22px;
}
	

/*================================================
 *  フローティング　ページトップへの戻り・コンタクト
 ================================================*/
#page_top{
  width: 60px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: 30px;
  opacity: 0.6;
}
#page_top a{
  width: 60px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f139';
  font-size: 50px;
  color: rgba(173,173,173,0.83);
}

.footer_contact{
	position:fixed;
	bottom:60px;
	right:15px;
}

#contact-widget-container{
	position:fixed;
	top:60%;
	left:100%;
	width:291px;
	z-index:9999;
	}
.contact-widget{
	position:relative;
	-webkit-transition:left 0.2s;
	transition:left 0.2s;
	box-shadow:0 0 15px -5px rgba(0,0,0,.3);
	white-space:nowrap
	}
	.contact-widget.open{
		left:-356px
		}
		.contact-widget.closed{
			left:-70px
			}
		.contact-widget .btn-contact-open{
			width:70px;
			height:146px;
			-webkit-transition:background 0.3s;
			transition:background 0.3s;
			/*background:url(/images/contact-widget-button.png) no-repeat;*/
			background:rgba(3,92,159,0.8);
			border-radius:4px 0 0 4px;
			display:inline-block;
			vertical-align:top
			}
				
			.contact-widget .btn-contact-open:hover{
				background:#1c8cda!important;
				cursor:pointer;
				}
					.contact-widget .btn-contact-open .text{
						/*color:transparent;*/
						/*width:146px;*/
						display:block;
						/*transform:rotateZ(-90deg);*/
						position:relative;
						top:57px;
						text-align: center;
						/*left:-57px;font-size:17px;
						text-transform:uppercase;
						letter-spacing:-.8px;*/}
						.contact-widget .btn-contact-open .text i{color:#fff}
			.contact-widget .panel{
				background:#1e2022;
				box-shadow:inset 0 0 1px 0 rgba(255,255,255,1);
				height:146px;
				width:286px;
				padding:0.6em;
				margin-left:-6px;
				display:inline-block;
				vertical-align:top;
				-moz-box-sizing:border-box;
				-webkit-box-sizing:border-box;
				box-sizing:border-box;
				}
				.contact-widget .panel *{
					color:#fff
					}
					.contact-widget .panel a{
						-webkit-transition:opacity 0.2s;
						transition:opacity 0.2s
						}
					.contact-widget .panel a:hover{
						opacity:.7;
						}
						.contact-widget .panel .contact-buttons{
							position:absolute;
							left:86px;
							}
							.contact-widget .panel .contact-buttons li{
								border-bottom:1px #6f7072 dotted;
								display:block;
								font-size:1em;
								letter-spacing:.1px;
								padding:0.4em 0;
								
								}
								.contact-widget .panel .contact-buttons li:last-child{border-bottom:none;padding-bottom:0;}
#float_btn_webcm_wrap {display: none}
@media screen and (max-width:768px) {
	#contact-widget-container,#page_top{display:none !important;}
	
}
@media screen and (max-width:480px) {
footer .logo {
	display: block;
}
.sns {
    margin: 1em 0;
}

}
/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/

#pankuzu {
  /*margin: 1em auto
	background:rgba(241,241,241,1.00);*/
	padding:1em 0;
  }
ol.pankuzu{
	font-size:0.8em;
	line-height:1.4;
	margin-bottom: 0
	}

	.pankuzu li{
		display:inline;
		margin:0px 7px 0px 0px;
		}
	.pankuzu li:after{
		margin-left:7px;
		content: '\f054';
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		font-size:1em;
		color:#666
  	}
	.pankuzu li:last-child:after{
		content:"";
		}
@media (max-width: 576px) {
#pankuzu {
	padding:1em;
  }
	ol.pankuzu{line-height:1.6;font-size:.7em}
}

/*--banner--*/
#page-title,
#no-banner{
	
	width:100%;
	/*margin-bottom:0rem;
	margin-top:4em;*/
	}
#page-title .container {
  width: 100%;

  margin:0 auto;
}

@media (min-width: 576px) {
  #page-title .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  #page-title .container {
    max-width: 760px;
  }
}

@media (min-width: 992px) {
  #page-title .container {
    max-width: 1000px;
  }
}

@media (min-width: 1200px) {
  #page-title .container {
    /*ax-width: 1140px;*/
   max-width: 1240px;
  }
}
#page-title .inner,
#no-banner .inner,
#page-title_bnr .inner{
	padding:5% 0;
    color: #fff;
    width: 100%;
	position: relative
	}

#page-title h1,
#no-banner h1,
#page-title_bnr h1{
font-size:2.4em;
font-weight:700;
line-height:1.2;
	}
#page-title em,
#page-title_bnr em{
	color: #fff;
    font-size: 1.4em;
    font-weight:400;
    line-height: 1.4;
    margin: 0 !important;
    padding: 0 !important;

}
#page-title p,
#no-banner p,
#page-title_bnr p{
font-size:1em;
line-height:1.5;
margin:.8em auto;
}

#page-title .subtitle,
#no-banner .inner .subtitle,
#page-title_bnr .inner .subtitle{
margin: 0 auto;
padding:0px 0 10px 0;
}	
#page-title .subtitle span,
#no-banner .subtitle span,
#page-title_bnr .subtitle span{
    border: 1px #fff solid;
    padding: 6px 20px;
    border-radius: 18px;
    color: #fff;
    margin-bottom: 5px;
    font-size: .9em;
}
#page-title_bnr .bnr_no1{position: absolute;
    bottom: 20%;
    right: 0;
    text-align: right;
    padding: 0;
    margin: 0;
    width: 288px;}
#page-title_bnr .bnr_no1-2{position: absolute;
    bottom: 20%;
    right: 0;
    text-align: right;
    padding: 0;
    margin: 0;
    max-width: 389px;}
#page-title_bnr .bnr_no1 img,#page-title_bnr .bnr_no1-2 img{ display:block}
#page-title_bnr .bnr_notes{font-size:6px;color:#E5E5E5;text-align: right;display: block}

#page-title a.hd-btn,
#page-title_bnr a.hd-btn{
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 80px;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1;
    display: inline-block;
    width:100%;
    padding: 6% 7%;
	box-shadow: 0 3px 1px rgba(255, 255, 255, .3);
	text-align: center

}
	#page-title a.hd-btn:before,
#page-title_bnr a.hd-btn:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f35a";
	text-decoration:none;
	margin-right:5px;
	}




.bg_sv{background: url('/images/service/bg_title.jpg') no-repeat center center;background-size: cover;}
.bg_partner{background: url('/images/partner/bg_title.jpg') no-repeat center center;background-size: cover;}
.bg_solution{background: url('/images/service/solution/bg_title.jpg') no-repeat center center;background-size: cover;}
.bg_aeg{background: url('/images/service/solution/bg_aeg_title.jpg') no-repeat center center;background-size: cover;}
.bg_os{background: url('/images/service/codesign/bg_title.jpg') no-repeat center center;background-size: cover;}
.bg_epki{background: url('/images/service/clientcert/main_img.jpg') no-repeat center center;background-size: cover;}
.bg_ds{background: url('/images/service/documentsign/bg_title_v2.jpg') no-repeat center center;background-size: cover;}
.bg_knowledge{background: url('/images/knowledge/bg_title.jpg') no-repeat center center;background-size: cover;}
.bg_ssl{background: url('/images/top_main/main_image31.jpg') no-repeat center center;background-size: cover;}
.bg_iot{ background:url("/internet-of-things/images/bg_main.jpg") no-repeat center center;background-size: cover;color:#fff;}

.bg_ekyc{background: url('/images/service/bg_title_ekyc.jpg') no-repeat center center;background-size: cover;}
.bg_mn{background: url('/images/service/bg_title_mn.jpg') no-repeat center center;background-size: cover;}

.no-bg{	background: rgba(3,92,159,0.94)}

/*section background*/
#conversion,#docs{
background:#021b2d;
color:#fff;
}
#conversion2{
background:#efefef;

}
	/*#conversion a.hd-btn_m,
	#conversion a.hd-btn_m i{
	color:#bbb;
	}
	#conversion a.hd-btn_m:hover,
	#conversion a.hd-btn_m:hover i{
	color:#fff
	}*/

.bg-gray {
    background: #ecefef;
}
.bg-lightgray {
    background: #f9f9f9;
}
.bg-lightblue{
   background:#eaf4fd;
}
.bg-white{
   background:#fff;
}
@media screen and (max-width:1200px) {
#page-title_bnr .bnr_no1{
	position: absolute;
    bottom:15%;
    right: 0;
    text-align: right;
    padding: 0;
    margin: 0;
    width: 228px;}
#page-title_bnr .bnr_no1-2{
	position: absolute;
    bottom:15%;
    right: 0;
    text-align: right;
    padding: 0;
    margin: 0;
    max-width: 298px;}

}
@media screen and (max-width:996px) {
		
.pc{display: none}
	
.sm{display: block}


.entry {
    display: block;
    position: absolute;
    right: 56px;
}	
	#page-title h1,
#no-banner h1,
	#page-title_bnr h1{
font-size:2.6em;

	}
#page-title p,
#no-banner p,
	#page-title_bnr p{
font-size:1em;
line-height:1.5;
margin:1em auto;
	}
	
#page-title em,
	#page-title_bnr em{
    font-size: 1.2em;
}

}
@media screen and (max-width:768px) {
	#page-title_bnr .inner{
		padding: 5% 0 10rem
			}
	#page-title_bnr .bnr_no1{
		position: absolute;
		bottom:3%;
		width: 248px;}
	#page-title_bnr .bnr_notes{position: absolute;bottom:0;right:0;font-size:8px}	

	#page-title_bnr .bnr_no1-2{display:none}
	#footermenu{display:none}

	footer {
		background-image:none;
		padding-top:2em;
	}
/*a.hd-btn{
	display:block;
	width:80%;
	padding:8px 8px 6px;
	margin-right:14px;
	font-size:28px;
}
	a.hd-btn i{
		color:#fff;
	}*/
a.hd-btn_w{
	display:block;
	/*width:90%;*/
	padding:.7em 8px;
	font-size:1.6em;
	margin: auto;
}
a.hd-btn_m{
	display:block;
	padding:0.5em 8px;
	font-size:1.2em;
	margin:0.5em auto;
}

/*a.hd-btn_sw{
	display:block;
	width:90%;
	padding:0.2em 8px;
	font-size:1.3em;
	margin:0.5em auto;
}
a.hd-btn_s{
	display:block;
	width:100%;
	padding:6px;
	margin:auto;
	font-size:20px;
	margin:0px auto 20px;
}*/


}
@media screen and (max-width:480px) {
#page-title,
#no-banner,
#page-title_bnr{
padding:2em 0;
	}

#page-title h1,
#no-banner h1{
font-size:2em;

	}
#page-title p,
#no-banner p{
font-size:.8em;
line-height:1.5;
margin:1em auto;
	}
	
#page-title em {
    font-size: 1.4em;
}

#page-title a.hd-btn{
    font-size: 1em !important;
	margin: auto
}
	#page-title .no-pc{display:none}

#page-title .subtitle span,
#no-banner .subtitle span{
font-size:.9em;
}

	
	.flink li {
		font-size: 0.7em;}

}

.h2-subtitle span {

    font-size: .9em;
}


/* TABS */
ul.tabs-list{
  list-style: none;
  text-align: center;
  border-bottom: 1px solid #dfdfdf;
  margin: 0;
  padding: 0;
}
 
label.panel-label {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: block;
  width: 100%;
 color:#92979b;
 /*  color: #bdc3c7;*/
  cursor: pointer;
  background-color: #ecf0f1;
  -webkit-transition-property: border-top, background-color, color;
  transition-property: border-top, background-color, color;
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
}
label.panel-label:hover {
  color: #005eae;
}
 
.panels{
  background:#fff;
  width: 100%;
  margin:auto;
}
/*.panels .container {
  margin: 0 auto;
}*/


.panels div div.panel_wrap{
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-height: 0;
  opacity: 0;
  -webkit-transition: opacity 600ms;
  transition: opacity 600ms;
  overflow: hidden;


}
#panel-1-ctrl:checked ~ .panels #panel-1 div.panel_wrap,
#panel-2-ctrl:checked ~ .panels #panel-2 div.panel_wrap,
#panel-3-ctrl:checked ~ .panels #panel-3 div.panel_wrap{
  max-height: initial;
  max-height: 100%;
  opacity: 1;
  padding: 24px 0px;
	

}
	#panel-1-ctrl:checked ~ .tabs-list #li-for-panel-1{
    pointer-events: none;
    cursor: default;
    -webkit-transform: translate(0, 1px);
    -ms-transform: translate(0, 1px);
    transform: translate(0, 1px);
    -webkit-box-shadow: none;
    box-shadow: none;
    border-top: none;
    border-right: 1px solid #dfdfdf;
	border-left: 1px solid #dfdfdf;
  }

	

#panel-1-ctrl:checked ~ .tabs-list #li-for-panel-1:last-child{
    border-right: 1px solid #dfdfdf;
  }
  #panel-1-ctrl:checked ~ .tabs-list #li-for-panel-1 + li{
    border-left: 1px solid #dfdfdf;
  }
  #panel-1-ctrl:checked ~ .tabs-list #li-for-panel-1 label.panel-label{
    background-color: white;
    color: #005eae;
    border-top: 6px solid #005eae;
    padding-top: 26px;
  }
 
   #panel-2-ctrl:checked ~ .tabs-list #li-for-panel-2{
    pointer-events: none;
    cursor: default;
    -webkit-transform: translate(0, 1px);
    -ms-transform: translate(0, 1px);
    transform: translate(0, 1px);
    -webkit-box-shadow: none;
    box-shadow: none;
    border-top: none;
    border-right: 1px solid #dfdfdf;border-left: 1px solid #dfdfdf;
  }
  #panel-2-ctrl:checked ~ .tabs-list #li-for-panel-2:last-child{
    border-right: 1px solid #dfdfdf;
  }
  #panel-2-ctrl:checked ~ .tabs-list #li-for-panel-2 + li{
    border-left: 1px solid #dfdfdf;
  }
  #panel-2-ctrl:checked ~ .tabs-list #li-for-panel-2 label.panel-label{
    background-color: white;
    color: #005eae;
    border-top: 6px solid #005eae;
    padding-top: 26px;
  }

 
  #panel-3-ctrl:checked ~ .tabs-list #li-for-panel-3 {
    pointer-events: none;
    cursor: default;
    -webkit-transform: translate(0, 1px);
    -ms-transform: translate(0, 1px);
    transform: translate(0, 1px);
    -webkit-box-shadow: none;
    box-shadow: none;
    border-top: none;
    border-right: 1px solid #dfdfdf;border-left: 1px solid #dfdfdf;
  }
  #panel-3-ctrl:checked ~ .tabs-list #li-for-panel-3:last-child {
    border-right: 1px solid #dfdfdf;
  }
  #panel-3-ctrl:checked ~ .tabs-list #li-for-panel-3 + li {
    border-left: 1px solid #dfdfdf;
  }
  #panel-3-ctrl:checked ~ .tabs-list #li-for-panel-3 label.panel-label {
    background-color: white;
    color: #005eae;
    border-top: 6px solid #005eae;
    padding-top: 26px;
  }
 
  ul.tabs-list{
    text-align: center;
    border-bottom: 1px solid #dfdfdf;
	width:100%;
	margin:auto
  }
  ul.tabs-list li{
    display: inline-block;
    text-align: center;
    font-size: 1.1em;
    width: 44.666%;
    -webkit-box-shadow: 0px -2px 2px rgba(0, 0, 0, 0.05);
    box-shadow: 0px -2px 2px rgba(0, 0, 0, 0.05);
    border-top: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
	  border-left: 1px solid #dfdfdf;
    -webkit-transition-property: border-top;
    transition-property: border-top;
    -webkit-transition-duration: 200ms;
    transition-duration: 200ms;
  }
  ul.tabs-list li:hover{
    border-top: none;
    border-right: none;
  }
  ul.tabs-list li:hover:last-of-type{
    border-right: 1px solid #dfdfdf;
  }
  ul.tabs-list li:hover + li{
    border-left: 1px solid #dfdfdf;
  }
  ul.tabs-list li label.panel-label{
    border-top: 0px solid #005eae;
    padding: 14px 3px;
  }
  ul.tabs-list li label.panel-label:hover{
    border-top-width: 6px;
    padding-top: 18px;
  }
 
  .panel-radios,
  #open-nav-label,
  #close-nav-label {
    display: none;
  }
  
  
  @media all and (max-width: 768px) {
.panel{
  margin:auto;

}

ul.tabs-list{
  margin: auto;
position: relative;
}
  ul.tabs-list li{
    font-size:0.9em;
  }
 
 
  .panels div header{
    display: block;
  }
}


@media all and (max-width:480px) {
  ul.tabs-list li {
    font-size:0.8em;
    width: 47.333%;
  }
}

/*申し込みフロー*/
.list_flow_order{
		margin-bottom:2em;
	}
.list_flow_order li{
		border-radius:3px;
		float:left;
		width:15.95%;
		margin-right:0.5em;
		display:inline;
	position: relative;
	}
.list_flow_order li:last-child {
		margin-right:0;
	}
	.list_flow_order li span{
		width:100%;
		min-height:2.3em;
		display:inline-block;
		background:#005eae;
		border-radius:3px 3px 0px 0px;
		color:#fff;
		font-size:1em;
		font-weight:bolder;
		text-align:center;
		padding:0.5em 0 0 0em;
		}
	.list_flow_step_order{
		min-height:6em;
		display:block;
		background:#eee;
		border-radius:0px 0px 3px 0px;
		}
		.list_flow_step_order dl{padding:0.5em 0.7em}	
		.list_flow_step_order dl dt{
			font-size:1em;
			line-height:130%;
			font-weight:bolder;
			color:#0066cc;
			margin:0.5em auto}
		.list_flow_step_order dl dd{
			font-size:0.9em;
			line-height:1.6;}
	
		.list_flow_order li:after {
			content: ' ';
			height: 0;
			position: absolute;
			width: 0;
			border: 1.2em solid transparent;
			border-left-color: #333;
			left: 100%;
			top: 50%;
			z-index:3
			}
		.list_flow_order li:last-child:after{
			border:none;
			}
	@media screen and (max-width:767px) {
		.order_h2{
			font-size:1.4em;
			padding:0.3em 0 0 0;
				line-height:1.2;
			}
			.order_h2 span{
				line-height:1.2;
				margin:0 0.4em 0 0;
		
				float:left;
				}
			.order_h2:after {
				content: "";
				clear: both;
				display: block;
				}
					.order_btn_1 a.hd-btn{
						margin: 0 auto;
						font-size:1.2em;
						width:90%;
					}
					.order_btn_1 a.hd-btn_s{
						display:block;
						margin:0px auto 1em;
						padding:12px 4px 11px;
						font-size:14px;
						width:90%;
					}
		
			.list_flow_order li{
					height:90%;
					border-radius:3px;
					min-height:3.6em;
					float:none;
					width:100%;
					margin-right:0;
					display:block;
					margin-bottom:2em;
					
				}
			
			.list_flow_order li span{
					width:16%;
					height:100%;
					display:block;
					background:#005eae;
					border-radius:3px 0 0px 3px;
					float:left;
					min-height:3.6em;
					color:#fff;
					font-size:1em;
					font-weight:bolder;
					text-align:center;
					padding:0.5em 0 0 0em;
					line-height:1.2em;
					}
			
					.list_flow_order li:after {
						border:none;
					content:"▼";
					font-size:1.6em;
					float:none;
					top:90%;
					left:50%;
						}
					.list_flow_order li:last-child:after {
					content:"";
						}
			
				.list_flow_step_order{
					display:block;
					min-height:4em;
					float:right;
					width:84%;
					border-radius:0px 3px 3px 0px;
					}
					.list_flow_step_order dl{padding:0.5em}	
					.list_flow_step_order dl dt{
						font-size:1em;letter-spacing:0;
						text-align:left;
						margin:0 auto
						}
					.list_flow_step_order dl dd{
						font-size:0.9em;
						line-height:1.6;
						margin-bottom:10px;
						padding-right:10px;}
	
		}

/*--コラム枠--*/
.column_wrap{
	border-top:4px solid #005eae;
	border-left:1px solid #eee;
	border-right:1px solid #eee;
	border-bottom:1px solid #eee;
	margin:2em auto;

	background:#fff;
	}

	.column_wrap h2,
	.column_wrap h3,
	.column_wrap h4,
	.column_wrap .hl{
		background:#f9f9f9;
		padding:1.2em 1em;
		margin: 0;
		line-height:1.2;
		text-align:left;
		font-size:1.2em;
		font-weight: 700
		}
	
	.column_contents{
		padding:1em !important;
		}

/*--リンクボックス--*/
.link_wrap{
	border:1px solid #dfdfdf;
	margin:0em auto 2em;
	padding-top:0px;
	border-radius:8px;
	background:#fafafa;
	}
	
	.link_title01:before,
	.link_title02:before{
		padding-right: 5px;
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0c1";
		}


	.link_title01{
		font-size:1em;
		padding:8px 10px 6px 10px;
		margin:0px 0px 20px 10px;
		width:auto;
		height:20px;
		color:#555;
		background:#d6eeff;
		display:inline;
		border-radius:0px 0px 5px 5px;
		}
	.link_title02{
		font-size:1em;
		padding:8px 10px 6px 10px;
		margin:0px 0px 20px 10px;
		width:auto;
		height:20px;
		color:#666;
		background:#eee;
		display:inline;
		border-radius:0px 0px 5px 5px;
		}
		
	.link_subtitle{
		font-weight:bolder;
		color:#666;
		}
	.link_contents{
		margin:10px 20px 10px;
		padding:5px 0px 10px;
		}
	.link_contents a{
		margin:10px 10px 10px 0;
		}
		.link_hr{
			border-bottom:dotted 1px #ccc;
			}





/*--最終更新--*/
.date_knowledge {
	padding : 0px 0px 5px 0px;
	margin :1em 0;	
}

	.date_knowledge .date00:before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f017";
	color:#005eae;
	padding-left:2px;
	margin-right:5px;
	}
	.date00{text-align:right;}	
/*--最終更新--*/

/*サイトマップ
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
.list_sitemap {margin-bottom:2em}
.list_sitemap dt {
	margin-bottom:5px;
}

.list_sitemap dt a:before{
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	content: "\f0a9";
	color:#005eae;
	text-decoration:none;
	padding-left:2px;
	margin-right:5px;
}
	.list_sitemap dt a:hover {
		text-decoration:none;
		background:#f3f3f3
	}


.list_sitemap dd {
	margin-left:1em;
	margin-bottom:5px;
}

	.list_sitemap dd a:before{
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0da";
		color:#005eae;
		padding-right:0.5em;
		}
	.list_sitemap dd a:hover {
		text-decoration:none;
	}
/*サービススペック*/
dl.sslspec{
		width:100%;
		margin:2em auto;
		}
		dl.sslspec dt{
			display:block;
			background:#dedede;
			padding:1em 0;
			line-height:1.2;
			text-align:center;
			font-size:0.9em
			}
		dl.sslspec dd{
			padding:1em;
			line-height:1.6;
			background-color:#fff;
}


/*SSLの選び方
.sslspec{
		width:100%;
		margin:1em auto 0;
		}
		.sslspec dt{
			display:block;
			background:rgba(26,132,199,.72);
			padding:1em 0;
			line-height:1.2;
			text-align:center;
			font-size:0.9em;
			font-weight: 500;
			color: #fff
			}
		.sslspec dd{
			padding:1em .5em;
			line-height:1.6;
			background: #f4f4f4
}*/
.em_arrow {
    text-align: center;
    font-size: 36px;
    display: block;
}
/*リポジトリ
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/

.column_repository{
	width:100%;
	margin:0px auto 20px auto;
	padding:1em;
		background:#f7f7f7;

	}

.column_repository li {
	padding-bottom:5px;
}
.column_repository li:last-child  {
	padding-bottom:0px;
}
	.btn_cer{padding:0em 0 1em 0;}
	.btn_cer a.btn{margin-right:0}
	.btn_cer a.hd-btn{
		display:block;
		width:36%;
		padding:0.3em 0 0.2em;
		font-size:12px;
		
	}
.column_repository .root-list-note{
	margin-left:0.5em;

	}
.column_repository .root-list-note dt:before{
		font-family: "Font Awesome 5 Free";
		font-weight: bold;
		content: "\f0da";
		color:#005eae;
		padding-right:0.5em;
		}

.column_repository .root-list-note dt{
		list-style:none;
		margin:1em;
		padding:0;
		line-height:170%;
		font-weight:normal;
	
		}
.column_repository .root-list-note dd{
		margin:1em 1em 1em 2em;
		line-height:170%;
		}
.column_repository .root-list-note dd:nth-child(3){
		margin:1em 1em 1em 3em;
		line-height:170%;
		}



@media screen and (max-width:768px) {

	.column_repository{
		width: 100%;
		overflow:scroll !important;
		white-space: nowrap;
		}
		.column_repository::-webkit-scrollbar{
		 height: 5px;
		}
		.column_repository::-webkit-scrollbar-track{
		 background: #F1F1F1;
		}
		.column_repository::-webkit-scrollbar-thumb {
		 background: #BCBCBC;
		}
		.btn_cer a.hd-btn{
			width:46%;
		}
}



/*WebTrust(ウェブトラスト)について
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
.webtrust_box {
	margin:0 auto 2em auto ;
}
.webtrust_left {
	float:left;display:block;
}
.webtrust_left img {
	margin-right:10px;
	width:80px;
}
.webtrust_right {
	padding-left:3em;
}

.webtrust_ti {
	font-weight:bolder;
	font-size:16px;
}
.webtrust_dl {
	margin:20px;
}
.webtrust_dl dt {
	font-weight:bolder;
	font-size:14px;
	color:#cc3333;
}
.webtrust_dl dd {
	padding-bottom:15px;
}
.webtrust_em {
	font-weight:bolder;
	font-size:16px;
	color:#fc943f;
}
@media screen and (max-width:768px) {
	/*ウェブトラスト*/
	.webtrust_box {
		margin:auto;
	}
	.webtrust_left {
		float:none;
	}
	.webtrust_right {
		float:none;
		padding-left:0;
	}

}

/*資料ダウンロード*/
	.btn_case{margin-bottom: 0}
		.btn_case a.btn{
			color:#fff;
			text-align:center;
			text-decoration:none;
		}
		.btn_case a.hd-btn{
			display:block;
			margin:1em auto;
			padding:0.9em;
			font-size:1.2em;    font-weight: 500;
    line-height: 1.4;
			width:100%
		}
				.btn_case a.btn-blue-border{
			color: #005eae;
    background: #fff;
    border: 3px solid #005eae;
			  text-decoration:none;
					transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    border-radius: 80px;


    display: inline-block;
    padding: 4% 6%;
    box-shadow: 0 3px 1px rgb(13 13 13 / 21%);
			}

.btn_case a.btn-blue-border:before {
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    content: "\f019";
    text-decoration: none;
    margin-right: 5px;
}

			.btn_case a.btn-blue-border:hover{
			  color:#fff;
				background-color:#005eae;
				transition: background 0.2s ease 0s;
			  text-decoration:none;
			 
			}
/* navigation-label */
.sec-inner {
    width: 80%;
    max-width: 1200px;
    margin: auto;
    margin-top: 20px;
    position: relative;
}
.nav-label{
    display: flex;
    flex-flow: wrap;
    /* margin-bottom: 60px; 
     width: 80%;
    max-width: 1150px; */   
    background: #fff;
    /* top: 0;
    position: absolute; */
    width: 100%;    
}
.nav-label.fix {
    position: fixed;
    top: 87px;    
    width: 80%;
    max-width: 1150px;
    z-index: 2;
    left: 50%;
    background: rgba(255,255,255,0);
    transform: translateX(-50%);
}
.nav-label.fix::after{
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: calc(-50vw + 50%);
    width: 100vw;
    height: 100%;
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, 0.8);
    border-top: 1px solid #cdcdcd;
}
.nav-label.centering{
    justify-content: center;
}
.nav-label li{
    /* width: 20%;
    min-width: 240px; */
    width: calc(20% - 21px);
    min-width: 234px;
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
    /*border-left: 1px solid #cdcdcd;
    border-right: 1px solid #cdcdcd;*/
    position: relative;
    margin: 20px 0;
    letter-spacing: 0.9px;
    font-weight:bold;
}
.nav-label li::after{
    position: absolute;
    content: "\f078";
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #005bac;
    bottom: 0;
    left: calc(50% - 10px);
    transition: 0.35s cubic-bezier(0.4,0,0,1);
}
.nav-label li:hover::after{

    color: #42abea;
	cursor: pointer

}

.nav-label li:hover::after{
    /*bottom: -5px;*
    transition: 0.35s cubic-bezier(0.4,0,0,1);*/
}
.nav-label.fix li{
    padding-bottom: 0;
}
.nav-label.fix li::after{
    display: none;
}
.nav-label a{
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 100%;
    width: 100%;
    /* display: inline-block; */
}
@media screen and (min-width:1430px){
    .nav-label li{
        border-right: none;   
    }
    /* .nav-label li:nth-of-type(5n+1){
        border-left: none;
    } */
    .nav-label li:first-of-type{
        border-left: none;
    }
}
@media screen and (max-width:950px){	
    .nav-label.fix{
        top: 84px;
    }
	}
@media screen and (max-width:768px){
.sec-inner {
    width: 100%;
}
.nav-label.fix{
        width: 92%;
        top: 55px;
    }

    .nav-label li {
        width: calc(100% / 2 - 22px);
        font-size: 10px;
        min-width: unset;
        margin: 10px 0;
        border-left: 0;    padding-left: 0px;
    padding-right: 0px;
    }
    .nav-label li:nth-of-type(2n){
        border-right: 0;
    }
    .nav-label.sp-mini li{
        font-size: .9em;
    }
	}

/*cookiebot用*/
#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogHeader {display:none !important;}
#CybotCookiebotDialog * {font-size: 12px !important;}
#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-main-logo {
display: none !important;
}


@media screen and (min-width: 1280px){
#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton,
#CybotCookiebotDialogBodyButtons .CybotCookiebotDialogBodyContentControlsWrapper:not(.CybotCookiebotDialogHide) + #CybotCookiebotDialogBodyButtonsWrapper .CybotCookiebotDialogBodyButton {
width: 186px !important;
}
#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {padding: .7em !important;}
#CybotCookiebotDialogBodyContentTitle{text-align:left !important;}
}
