body {
	font-family: 'Jost',-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","游ゴシック Medium",YuGothic,YuGothicM,メイリオ,Meiryo,sans-serif;
	color:#222;
	text-align:center;
	line-height:1.75;
	-webkit-font-feature-settings : "pwid";
	        font-feature-settings : "pwid";
	letter-spacing:1px;
	font-size:16px;
	background: #fff url(../img/bg_common.svg) right top/88% no-repeat;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; 
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
.formBox iframe{overflow-x: visible;}
/**** slide banner ****/
.slider img{
	width: 98%;
	display: block;
	margin: 0 auto;
}
.slick-prev:before,
.slick-next:before {
	color: #999 !important;
}
.mainImage{
	display: flex;
	text-align: left !important;
	align-items: center;
	justify-content: space-between;
	margin: 0 2em;
}
.mainImage div{
	flex-basis: 50%;
}
.logo{
	height: 44px;
}
.productLogo{
	height: 55px;
}
/**** badge ****/
.badge{
	position: relative;
}
.badgeItem{
	position: absolute;
	top:-2em;
	right: -.5em;
	z-index: 2;
	max-width: 25%;
}
/**** contents ****/
main{
	padding-top: 4em;
	min-height: 66vh;
}
section{
	width: 100%;
	overflow: hidden;
}
.innerL2{
	max-width: 1920px;
	padding:2em 0;
	margin: 0 auto;
	text-align: left;	
}
.innerL{
	max-width: 1366px;
	padding:2em;
	margin: 0 auto;
	text-align: left;
}
.inner{
	max-width: 1120px;
	padding:2em;
	margin: 0 auto;
	text-align: left;
}

main section:last-of-type .inner{
	padding-bottom: 3em;
}
blockquote{
	background: #f9f9f9;
	padding: 3%;
	border-radius: .5em;
	margin-bottom: 1.75em;
}
.tag{
	display: inline-block;
	padding: .25em 1em;
	border-radius: 1em;
	font-weight: bold;
	margin: 0 1em;
	text-align: center;
}
.listContent .tag{
	min-width: 14em;
}
.tags{
  position: relative;
  display: inline-block;
  padding: .1em .5em;
  margin-right: 1.5em;
  color: #fff;
  background: rgba(0,0,0,.1);
  font-size: .9em;
}
.tags:before {
  position: absolute;
  top: 0;
  right: -1em;
  content: '';
  border-width: 1.1em 0 1.1em 1em;
  border-style: solid;
  border-color: transparent  transparent transparent rgba(0,0,0,.1);
}

.tags:after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: -.1em;
  width: .25em;
  height: .25em;
  content: '';
  border-radius: 50%;
  background: #fff;
}
.box{
	padding:3%;
}
.card{
	border-radius: .5em;
	overflow: hidden;
	background: #fff;
	transition: .3s;
//	box-shadow: 0 0 1em rgba(0,0,0,.1)
}
.card:hover{
	transform: scale(1.025);
}

/**** contents related ****/





/**** background****/
.bgWhite{
	background: #fff;
}
.bgWhiteOpacity{
	background: rgba(255,255,255,.75);
}
.bgPearYellow{
	background:#FFFCF0;
}
.bgLightYellow{
	background:#FCF4D0;
}
.bgLightYellowOpacity{
	background: rgba(255,208,11,.3);
}
.bgYellowVivid{
	background: #ff0;
}
.bgYellow{
	background: #FFE57B;
}
.bgRed{
	background: #FF5353;
}
.bgOrange{
	background: #F4C804;
}
.bgLightGray{
	background:#F9F9F9;
}
.bgGray{
	background:  rgba(0,0,0,.1);
}
.borderLightYellow{
	border: #FCF4D0 .5em solid;
}
.borderRed{
	border: #FF5353 .5em solid;
}
.bgPattern{
	background:url(../img/bg_pattern.png)100% 100%/cover fixed;
}
.bgExpo{
	background:#fff url(../img/bg_expo.png)top center;
	background-size: contain;
	padding: 3% 0;
}
.bgImg{
	margin-top: -6em;
	padding-top: 6em;	
}
.bgImg h1{
	text-shadow: 0 0 .5em #fff;
}
.bgMapsAdvance{
	background: linear-gradient(to right bottom, rgba(255,255,255,.8), rgba(255,255,255,0)) ,linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,0)) 70%, url(../img/bg_map_advance.jpg) center /cover;
}
.productSubtitle{
	font-size: .6em;
	line-height: 1.5;
	display: inline-block;
	margin-left: 1em;
}
/**** headline ****/
h1{
	text-align: center;
	font-size: 2em;
	line-height: 1.5;
}
h2{
	text-align: center;
	font-size:1.25em;
	line-height: 1.5;
	margin-bottom: .5em;

}
h3{
	font-size:1.25em;
	line-height: 1.3;
	margin-bottom: .75em;
	text-align:center;
}
h4{
	font-size: 1.25em;
	margin-bottom: .75em;
	text-align: center;
}
.mainImage h1{
	text-align: left;
	font-size: 4.5em;
	border-bottom: #FF5353 3px dashed;
	margin-right:-3em;
	padding-right: 3em;
	z-index: -1;
}
.h_underline,.single h2.h_underline{
	font-size:2em;
	text-align: center;
	padding:0 0 .5em;
	margin:0 0 1.25em;
	position: relative;
	background: none;
	border: none;
}
.h_underline:after{
	position: absolute;
	content: "";
	height: 3px;
	width: 2em;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: -webkit-gradient(linear,left top, right top,from(#FFD00B),color-stop(70%, #FFD00B),color-stop(70%, #F4AE00),to(#F4AE00));
	background: -o-linear-gradient(left,#FFD00B,#FFD00B 70%,#F4AE00 70%,#F4AE00);
	background: linear-gradient(to right,#FFD00B,#FFD00B 70%,#F4AE00 70%,#F4AE00);
}
.h_leftLine{
	border-left: #F4AE00 .25em solid;
	padding-left: .5em;
	text-align: left;
}
.h_bgOrange{
	background: #F4C804;
	padding: .5em 1em;
	border-radius: 1em;
	margin: 0 0 .5em;
}
.single h1{
	line-height: 1.5;
	text-align: left;
	padding:0 0 .5em;
	margin:0 0 1.25em;
	position: relative;
}
.single h1:after{
	position: absolute;
	content: "";
	height: 3px;
	width: 2em;
	bottom: 0;
	left: 0;
	width: 100%;
	margin: auto;
	background: -webkit-gradient(linear,left top, right top,from(#FFD00B),color-stop(70%, #FFD00B),color-stop(70%, #F4AE00),to(#F4AE00));
	background: -o-linear-gradient(left,#FFD00B,#FFD00B 70%,#F4AE00 70%,#F4AE00);
	background: linear-gradient(to right,#FFD00B,#FFD00B 70%,#F4AE00 70%,#F4AE00);
}
.single h2{
	margin-top: 6%;
	padding: .25em 0 .25em .5em;
	font-size: 1.5em;
	border-left: #F4AE00 .25em solid;
	background: rgba(0,0,0,.025);
	text-align: left;
}
.single h3{
	text-align: left;
	position: relative;
}
.single h3:before{
	content: "● ";
	color:  #F4AE00;
	font-size: .75em;
}
/**** inline ****/
p{
	margin-bottom:3%;
	line-height:2;
	text-align: justify;
}
p:last-child{
	margin-bottom:0;
}
p.columns{
	-webkit-columns: 2;
	   -moz-columns: 2;
	        columns: 2;
	-webkit-column-gap: 3em;
	   -moz-column-gap: 3em;
	        column-gap: 3em;
}
hr{
	border: none;
	border-bottom: #ccc 1px solid;
	margin: 3% 0;
}

/***** list content ****/
ol{
	padding-left: 1.5em;
}
ol li{
	padding: .25em 0;
}
ol ol{
	padding-left: 4.5em;
	counter-reset: li;
	list-style: none;
	text-indent: -1.5em;
}
ol ol li:before{
	counter-increment: li;
	content: counter(li)'） ';
}
ol ol ol{
	padding-left: 3em;
	text-indent: 0;
	list-style-type: katakana-iroha !important;
}
ol ol ol li:before{
	counter-increment: li;
	content:'';
}
.listContent{
	list-style: none;
	margin-bottom: 3%;
}
.listContent li:first-child{
	border-top:#ccc 1px solid;
}
.listContent li a{
	display: block;
	padding: 1em 2em 1em 1em;
	border-bottom:#ccc 1px solid;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: .3s;
	position: relative;
}
.listContent li a span{
	font-size: .75em;
}
.listContent li a:hover{
	background:rgba(0,0,0,.02);
	padding: 1em 1.5em;
}
.listContent li a:after{
	position: absolute;
	content: "";
	top:0;
	bottom: 0;
	right: 1em;
	margin: auto;
	width: .5em;
	height: .5em;
	border-top: 1px solid #222;
	border-right: 1px solid #222;
	transform: rotate(45deg);
	transition: .3s;
}
.listContent li a:hover:after{
	right: .5em;
}
.listCheck li{
	list-style: none;
	font-size: 1.25em;
	line-height: 1.5;
	padding: .5em 0 .5em 2em;
	background: url(../img/check.svg) left center/1.25em no-repeat;
	border-bottom: 1px dotted #ccc;
}
.w1em{ width: 1em; display: inline-block;vertical-align:middle;}
.listCommon ul{
	list-style: none;
}
.listCommon li{
	padding: .25em 0;
	text-indent: -1em;
	margin-left: 1em;
}
.listCommon li:before{
	content: "● ";
	font-size: .75em;
}
/**** link ****/
a{
	color:#333;
	-webkit-transition:.3s;
	-o-transition:.3s;
	transition:.3s;
}
a:visited,a:active,a:link{
	text-decoration:none;
	color:#333;
}
a img:hover,.lo:hover,.badge > a:hover{
	opacity: .7;
}
a:hover{
	color: #FF5353;
}
a.red:hover{
	text-decoration: underline;
}
.hoverUP{
	transition: .3s;
}
.hoverUP:hover{
	transform: translateY(-.5em);
}
.card a:hover,.listContent li a:hover{
	color: #333;
}
/**** table ****/
th,td{
	padding: .25em;
	vertical-align: middle;
}
.spec{
	width: 100%;
	margin-bottom: 1%;
	line-height: 1.5;
	border-top:#333 1px solid;
	border-bottom: #333 1px solid; 
}
.spec tr{
	background: #fff
}
.spec tr:nth-child(even){
	background: #fbfbfb;
}
.spec th,.spec td{
	padding: 1em;
}
.spec th{
	font-weight: bold;
}
.tableComparison{
	width: 100%;
	margin-bottom: 3%;
	line-height: 1.5;
}
.tableComparison img{
	display: block;
	margin: 0 auto .5em;
}
.tableComparison th,.tableComparison td{
	padding: .75em;
	vertical-align: middle;
	text-align: center;
}
.tableComparison th{
	background: -webkit-gradient(linear,left top, left bottom,from(transparent),color-stop(35%, transparent),color-stop(35%, #FCF4D0),to(#FCF4D0));
	background: -o-linear-gradient(transparent,transparent 35%,#FCF4D0 35%,#FCF4D0);
	background: linear-gradient(transparent,transparent 35%,#FCF4D0 35%,#FCF4D0);
	vertical-align: bottom;
	font-weight: bold;
}
.tableComparison th:nth-child(2){
	background: #FFD00B;
	border-left: #FFD00B 3px solid;
	border-right: #FFD00B 3px solid;
}
.tableComparison th:nth-child(4){
	background:-webkit-gradient(linear,left top, left bottom,from(transparent),color-stop(35%, transparent),color-stop(35%, #F9F0D0),to(#F9F0D0));
	background:-o-linear-gradient(transparent,transparent 35%,#F9F0D0 35%,#F9F0D0);
	background:linear-gradient(transparent,transparent 35%,#F9F0D0 35%,#F9F0D0); 
}
.tableComparison td{
	border-bottom: #eee 3px solid;
	background: #fff;
	width: 22%;
	font-size: .75em;
	vertical-align: top;
}
.tableComparison td:first-child{
	width: 12% !important;
	vertical-align: middle;
	font-weight: bold;
}
.tableComparison td:nth-child(2){
	background: #FFF9DE;
	border-left: #FFD00B 3px solid;
	border-right: #FFD00B 3px solid;
}
.tableComparison td:nth-child(4){
	background: #f9f9f9;
}
.tableComparison tr:last-child td:nth-child(2){
	border-bottom: #FFD00B 3px solid;
}
.tableComparison td span{
	font-size: .75em;
}
.commonTable,.single table{
	border-top:#999 1px solid;
	border-bottom:#999 1px solid;
	margin-bottom: 3%;
	min-width: 50%;
}
.commonTable tr,.single tr{
	border-bottom: #ccc 1px dotted;
}
.commonTable th,.commonTable td,.single th,.single td{
	padding: 1em; 
}

/**** form ****/
.formBox{
	background: #fff;
	padding: 3% 3% 6%;
	border-radius: .5em;
	box-shadow: 0 0 2em rgba(0,0,0,.05);
}
.formBox btn-primary{border-color: #FF5353 !important; background-color: #FF5353 !important; }
.formBox iframe{overflow: visible;}
.formBox th{
	min-width: 10em;
}
label{
	margin-top:1.5em;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
select,
textarea{
	font-size:1.25em;
	width:100%;
	padding:.5em;
	border:none;
	border: #ccc 1px solid;
	outline:none;
	background: #f9f9f9;
	border-radius: .3em;
	-webkit-transition:.3s;
	-o-transition:.3s;
	transition:.3s;
	margin:.25em 0;
}
select{
	height: 2.5em;
	color: #777;
}
textarea{
	height:8em;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
select:focus,
textarea:focus{
	background:#DEFCFF;
	-webkit-box-shadow:0 0 0 3px #A8EBFF;
	        box-shadow:0 0 0 3px #A8EBFF;
}
input[type="checkbox"] {
	margin: 0;
	padding: 0;
}
input[type="radio"]{
	vertical-align: baseline;
} 
.mwform-checkbox-field{
	display: block;
	margin: 0 !important;
}
.required{
	background: #FF5353;
	padding:.25em .75em;
	font-size: .5em;
	color: #fff;
	margin-left: .5em;
	border-radius: 1em;	
}
.error{
	color: #f00;
	font-size: .75em;
	margin-bottom: 1em;
}
/**** button ****/
.btn,.navHight a,.btnDisabled{
	display: inline-block;
	background: #fff;
	font-weight: bold;
	min-width: 10em;
	border: #333 2px solid;
	border-radius: 1.5em;
	padding: .25em 2em;
	outline: none;
	transition: .3s;
	position: relative;
}
.btn:hover,.navHight a:hover{
	background: #FF5353;
	color: #fff !important;
	border: #FF5353 2px solid;
	opacity: 1;
	transform: scale(1.05);
	text-decoration: none;
}
.btn:after,.navHight a:after{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	right:.75em;
	margin:auto;
	width: .3em;
	height: .3em;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	transform: rotate(45deg);
	transition:.3s;
}
.btn:hover:after,.navHight a:hover:after{
	right:.5em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btnMidle,.navHight a{
	color: #FF5353 !important;
	border: #FF5353 2px solid;
}
.btnMidle:after,.navHight a:after{
	border-top: 2px solid #FF5353;
	border-right: 2px solid #FF5353;
}
.btnHigh{
	background: #FF5353;
	color: #fff !important;
	border: #FF5353 2px solid;
}
.btnHigh:hover{
	background: #B93A3A;
	border: #B93A3A 2px solid;
}
.btnHigh:after{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btnDisabled{ background: .f4f4f4;color: #ccc;	border: #ccc 2px solid;}
/**** pagenavi ****/
.wp-pagenavi{
	text-align: center;
}
.page-numbers{
	padding: .5em;
}
.current{
	opacity: .5;
}
/**** BreadcrumbNavi ****/
.breadcrumb{
	display: block;
	width: 96%;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
    padding: 4em 1em 0;
}
.breadcrumb+*{margin-top: -4em;}

.breadcrumb li{
	color: #999;
	display: inline-block;
	font-size: .75em;
	padding-right: 1.5em;
	position: relative;
}
.breadcrumb li a{
	color: #999;
}
.breadcrumb li a:hover{ text-decoration: underline;}
.breadcrumb li:after{
	position: absolute;
	content: "";
	top:0;
	bottom: 0;
	right: .5em;
	margin: auto;
	width: .4em;
	height: .4em;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.breadcrumb li:last-child:after{
	border: none;
}

/**** works ****/
.beforeafter{
	display: flex;
	border-top: #ccc 1px solid;
	align-items: center;
	padding: 3em 2em;
}
.beforeafter:last-of-type{
	border-bottom: #ccc 1px solid;
}
.beforeafter div:first-of-type{
	color: #FF5353;
	font-size: 2em;
	flex-basis: 4.5em;
}
.beforeafter ul{
	width: 100%;
}
/**** single ****/
figure{
	width: auto;
	text-align: center;
}
ul.related-post{
	width:100%;
	overflow:hidden;
	margin:20px 0;
	height:100%;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
 
ul.related-post li {
	float: left;
	width:22%;
	display: block;
	margin-right: 4%;
	margin-bottom: 20px;
}
 
ul.related-post li:nth-child(4n) {
	margin-right: 0;
}
 
ul.related-post li a:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}
 
ul.related-post li p.title{
	line-height: 1.8;
    font-size: 95%;
}
 
ul.related-post li p.title a{
	text-decoration: none;
}
 
ul.related-post li img{
	width: 100%;
}
 
@media (max-width: 599px) {
/* small devices */
 
ul.related-post li {
	width:48%;
}
 
ul.related-post li:nth-child(2n) {
	margin-right: 0;
}
 
}
/**** sideber ****/
.main2col{
	display: flex;
}
.sideber{
	flex-basis: 400px;
	text-align: left;
	margin: 2em 0 2em 3em;
}
.sideber ul{
	list-style: none;
}
.widget_categories ul > li a{
	display: block;
	border-bottom: #999 1px solid;
	padding: .25em 1.25em .25em 0;
	position: relative;
}
.widget_categories ul > li a:before{
	content: "";
	position: absolute;
	top:0;
	bottom: 0;
	right:.5em;
	margin: auto;
	height: .5em;
	width: .5em;
	border-top: #666 1px solid;
	border-right:#666 1px solid;
	transform: rotate(45deg);
}
.widget_categories ul > li a:before:hover{
	right:0;	
}
.npcatch li{
	border-top: 1px solid #e1e2e3;
	padding-top: .25em;
}
.npcatch li:first-child{
	border-top:none;
	padding-top: 0; 
}
.npcatch figure{
	width: 30% !important;
}
.npcatch .detail{
	width: 70%
}
/**** expo ****/
.bgExpo h1{
	text-align: left;
	font-size: 3.5em;
	line-height: 1.75;
	margin-bottom: .5em;
}
.bgExpo h1 span{
	padding:0 .25em;
}
.bgExpo img{
	width: 100%;
}
#seminar,#solution,#case,#content{
	margin-top:-3em;
	padding-top:8em;
	animation: 
}
.main_expo_navi{
	transition: .3s;
    animation: bounce 1s ease infinite;
}
@keyframes bounce {
	0%,100% {translateY(0);}
	50% {transform: translateY(-.5em);}
	90% {translateY(.8em);}
}
.main_expo_navi:nth-child(2),
.main_expo_navi:nth-child(4){
	 animation-delay: .1s;
}
.main_expo_navi:hover{
	 filter: brightness(70%);
}
html{
	scroll-behavior: smooth;
}