@charset "utf-8";

/* Contents
 * ****************************
 *
 * 1: heading
 * 2: paragraph
 * 3: list
 * 4: table,box
 * 5: link
 * 6: others
 *
 * ****************************
 */

/*======= 1: heading ========================================================*/
h1,h2,h3,h4 {
	font-size: 100%;
}
.ttl {
	padding-top: 29px;
	height: 50px;
	text-align: center;
	vertical-align: middle;
	background: #458EDC url(/img/common/bg_ttl.gif) no-repeat center 0;
}
/*----*/
.faq h1 {
	color: #FFF;
	padding: 25px 15px;
	font-size: 129%;
	background: #1C7DCE;
}
/*----*/
.employeePopBox01 p.sttlEmployee {
	color: #FFF;
	margin: 0 -15px 20px;
	padding: 25px 15px;
	font-size: 129%;
	background: #1C7DCE;
  font-weight: bold;
}
/* [ttlType01] 汎用タイプ1 ----------*/
h1.ttlType01 {
	position: relative;
	padding: 10px 15px;
	font-size: 121%;
	border: 1px solid #CCCCCC;
	border-left: none;
	/border-left: 1px solid #CCCCCC;
	/background: #FFFFFF url(/img/common/bg_sttl.gif) no-repeat 0 0;
	background: url(/img/common/bg_sttl.gif) no-repeat 0 0, linear-gradient( to bottom, #EEEEEE, #FFFFFF 50%, #FFFFFF 94%, #EEEEEE 94%, #EEEEEE 100%);
	box-shadow: rgba(255, 255, 255, 1) -1px 1px 0px 0px inset;
}
h1.ttlType01 a.btnList01,
h1.ttlType01 a.btnList01 span {
	position: absolute;
	right: 0;
	bottom: -1px;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(/img/index/btn_catalog01.gif) no-repeat 0 0;
}
h1.ttlType01 a.btnList01 span {
	right: 0;
	bottom: 0;
	background-image: url(/img/index/btn_catalog01_o.gif);
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	h1.ttlType01 a.btnList01,
	h1.ttlType01 a.btnList01 span {
		bottom: 0;
		height: 48px;
	}
}
/*------*/
.entryBox01 h1 {
	border-bottom: 4px solid #1C7DCE;
}
.entryBox01 h1 span {
	color: #042568;
	display: inline-block;
	padding: 15px 20px;
	font-size: 18px;
}
.entryBox01 h1 span.data {
	color: #333;
	display: block;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: normal;
	font-family: Century Gothic;
	border: 1px solid #FFF;
	border-bottom-color: #DDD;
	background: url(/img/info/bg_sttl01.gif) repeat-x 0 0;
}
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
	#recruit h1 img {
		width: 100%;
		height: auto;
	}
}

/*-- h2 --------------------------------------------*/
/* [ttlType01] 汎用タイプ1 ----------*/
h2.ttlType01 {
	position: relative;
	padding: 10px 15px;
	font-size: 121%;
	border: 1px solid #CCCCCC;
	border-left: none;
	/border-left: 1px solid #CCCCCC;
	/background: #FFFFFF url(/img/common/bg_sttl.gif) no-repeat 0 0;
	background: url(/img/common/bg_sttl.gif) no-repeat 0 0, linear-gradient( to bottom, #EEEEEE, #FFFFFF 50%, #FFFFFF 94%, #EEEEEE 94%, #EEEEEE 100%);
	box-shadow: rgba(255, 255, 255, 1) -1px 1px 0px 0px inset;
}
h2.ttlType01 a.btnList01,
h2.ttlType01 a.btnList01 span {
	position: absolute;
	right: 0;
	bottom: -1px;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(/img/index/btn_catalog01.gif) no-repeat 0 0;
}
h2.ttlType01 a.btnList01 span {
	right: 0;
	bottom: 0;
	background-image: url(/img/index/btn_catalog01_o.gif);
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	h2.ttlType01 a.btnList01,
	h2.ttlType01 a.btnList01 span {
		bottom: 0;
		height: 48px;
	}
}
/* [ttlRecruit01] 採用ページ ----------*/
h2.ttlRecruit01 {
	color: #FFF;
	padding: 10px 15px;
	font-size: 122%;
	font-weight: normal;
	background: #003369;
}

/* other --------------------- */
#ln h2,
#ln .sideTtl {
	color: #F7F7F7;
	padding: 12px 10px;
	font-size: 107%;
	font-weight: bold;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	background: #0F4673;
}
#ln h2 a,
#ln .sideTtl a {
	color: #F7F7F7;
	text-decoration: none;
}
/*------*/
.entryBox01 h2 {
	border-bottom: 4px solid #1C7DCE;
}
.entryBox01 h2 span {
	color: #042568;
	display: inline-block;
	padding: 15px 20px;
	font-size: 18px;
}
.entryBox01 h2 span.data {
	color: #333;
	display: block;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: normal;
	font-family: Century Gothic;
	border: 1px solid #FFF;
	border-bottom-color: #DDD;
	background: url(/img/info/bg_sttl01.gif) repeat-x 0 0;
}
/*------*/
.contactBox01 h2 {
	color: #04336C;
	font-size: 115%;
}
/*------*/
.enContactBox01 h2 {
	float: left;
	padding: 32px 27px 32px 14px;
	border-right: 1px solid #DDD;
}
h2.basicSttl {
	color: #042566;
	margin-bottom: 5px;
	font-size: 115%;
}
/*-- h3 --------------------------------------------*/
/* [basicSttl] ----------*/
h3.basicSttl {
	margin-bottom: 30px;
	padding: 5px 10px 7px 14px;
	font-size: 121%;
	border-bottom: 5px solid #1C7DCE;
	background: url(/img/common/bg_sttl.gif) no-repeat 0 0;
}
/* [basicSttl02] ----------*/
h3.basicSttl02 {
	color: #FFF;
	padding: 8px 10px;
	font-size: 122%;
	background: #003369;
}
/* [basicSttl03] ----------*/
h3.basicSttl03 {
	color: #FFF;
	padding: 8px 10px;
	margin-bottom: 25px;
	font-size: 122%;
	background: #003369;
	border-bottom: 3px solid #1D74BC;
}
h3.basicSttl03 span {
	padding-left: 15px;
	border-left: 5px solid #fff;
}
/* [makerSttl] ----------*/
h3.makerSttl {
	display: inline-block;
	width: 510px;
	min-height: 37px;
	padding: 12px 10px 11px;
	overflow: hidden;
	font-weight: normal;
	vertical-align: middle;
	border-left: 1px solid #B8C6DA;
}
#maker h3.makerSttl {
	display: block;
}
#maker .makerBoxL h3.makerSttl {
	display: inline-block;
}
h3.makerSttl span {
	font-size: 85%;
}
h3.makerSttl a {
	display: table-cell;
	vertical-align: middle;
	line-height:1.5;
}
#campaign h3.makerSttl a:link,
#campaign h3.makerSttl a:visited,
#campaign h3.makerSttl a:active {
	color: #B8C6DA;
	text-decoration: none;
}
.makerContainer h3.makerSttl {
	width: 145px;
}
/* other --------------------- */
.relationBox01 h3,
.relationBox01 h4,
.relationBox01 h5
.relationBox01 p.sttl {
	color: #01346A;
	margin-bottom: 12px;
	font-size: 114%;
}
.relationBox02 h3,
.relationBox02 h4,
.relationBox02 h5,
.relationBox02 p.sttl {
	color: #333333;
	padding: 15px 10px 10px;
	font-size: 114%;
	border-bottom: 1px solid #CCCCCC;
}

/*-- h4 --------------------------------------------*/
/* [basicSttl] ----------*/
h4.basicSttl {
	margin-bottom: 20px;
	padding: 10px 5px;
	border: 1px solid #B8C6DA;
	background: #E6EBF2;
}
h4.basicSttl span {
	padding-left: 10px;
	border-left: 5px solid #042568;
}

/**/
h4.txt_lead01 {
	text-align: center;
	font-size: 122% !important;
	color: #FF633F;
}
h4.txt_lead01 span {
  position: relative;
  display: inline-block;
  margin-right: 5px;
  font-size: 18px;
  font-size: 1.1em;
  background: linear-gradient(transparent 65%, #ffff00 0%); 
}
h4.txt_lead01 img {
	display: inline-block;
	margin: 5px;
	vertical-align: middle;
}

/*-- h5 --------------------------------------------*/
/* [basic] ----------*/
.wisywigBox h5,
.wisywigBox h2,
h5.basicSttl {
	color: #042566;
	margin-bottom: 5px;
	font-size: 115%;
}
.wisywigBox h5,
.wisywigBox h2 {
	margin-top: 15px;
}

/*
======= 2: paragraph =======
*/
.entryBox01 p {
	margin-bottom: 1em;
}
.wisywigBox p {
	margin-bottom: 1em;
}
.enContactBox01 p {
	float: left;
	padding: 27px 10px 0px 27px;
}

/* [basicSttl] ----------*/
p.basicSttl3_1 {
	margin-bottom: 30px;
	padding: 5px 10px 7px 14px;
	font-size: 121%;
	border-bottom: 5px solid #1C7DCE;
	background: url(/img/common/bg_sttl.gif) no-repeat 0 0;
}
p.basicSttl3 {
	color: #FFF;
	padding: 8px 10px;
	margin-bottom: 25px;
	font-size: 122%;
	background: #003369;
	border-bottom: 3px solid #1D74BC;
}
p.basicSttl3 span {
	padding-left: 15px;
	border-left: 5px solid #fff;
}
p.basicSttl4 {
	margin-bottom: 20px;
	padding: 10px 5px;
	border: 1px solid #B8C6DA;
	background: #E6EBF2;
}
p.basicSttl4 span {
	padding-left: 10px;
	border-left: 5px solid #042568;
}


/*
======= 3: list =======
*/
/*---- ul ----*/
ul,ol {
	padding: 0;
	list-style: none;
}
/* [basicList01] 基本形 ----------*/
div.basicList01 li,
.wisywigBox ul li {
	padding-left: 1em;
	text-indent: -1em;
}
div.basicList01 li:before,
.wisywigBox ul li:before {
	content: "・";
}
.wisywigBox ol {
	margin-left: 25px;
	list-style: decimal;
}

/* [infoList01] トップ用 ----------*/
ul.infoList01 li {
	padding: 10px 0;
	overflow: hidden;
	border-bottom: 1px solid #DDD;
}
ul.infoList01 li a,
ul.infoList01 li span {
	display: inline-block;
	vertical-align: top;
}
ul.infoList01 li span {
	padding-right: 20px;
}
/* [newsList01] お知らせ ----------*/
ul.newsList01 li {
	margin-bottom: 20px;
}
ul.newsList01 li a,
ul.newsList01 li span {
	display: inline-block;
	vertical-align: top;
}
ul.newsList01 li span {
	padding-right: 15px;
	font-family: Century Gothic;
}
ul.newsList01 li img {
	margin-right: 10px;
}
/* [makerCatTab01] カテゴリタブ ----------*/
ul.makerCatTab01 {
	position: relative;
	padding-top: 9px;
	border-bottom: 1px solid #CCC;
	background: #EDEDED;
}
ul.makerCatTab01 li {
	position: relative;
	bottom: -1px;
	float: left;
	width: 475px;
	margin-left: 10px;
}
ul.makerCatTab01 li.cat {
	background: url(/img/maker/btn_tab01_o.gif) no-repeat 0 0;
}
ul.makerCatTab01 li.kana {
	background: url(/img/maker/btn_tab02_o.gif) no-repeat 0 0;
}
ul.makerCatTab01 li a {
	display: block;
	height: 54px;
	overflow: hidden;
	text-indent: -9999px;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background: no-repeat 0 0;
}
ul.makerCatTab01 li.cat a {
	background-image: url(/img/maker/btn_tab01.gif);
}
ul.makerCatTab01 li.kana a {
	background-image: url(/img/maker/btn_tab02.gif);
}
ul.makerCatTab01 li:hover a,
ul.makerCatTab01 li.active a {
	opacity: 0;
}
/* [makerCatList01] カテゴリ別 ----------*/
ul.makerCatList01 {
	padding: 30px 0 5px;
	overflow: hidden;
	background: #FFF;
}
ul.makerCatList01 li {
	float: left;
	width: 288px;
	min-height: 73px;
	margin: 0 7px 15px 8px;
	padding: 8px 10px 12px;
	font-size: 115%;
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	transition: all 0.1s;
	border: 1px solid #D7D7D7;
	border-radius: 3px / 3px;
	background: #fdfdfd;
	background: -moz-linear-gradient(top,  #FDFDFD 0%, #EFEFEF 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FDFDFD), color-stop(100%,#EFEFEF));
	background: -webkit-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: -o-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: -ms-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: linear-gradient(to bottom,  #FDFDFD 0%,#EFEFEF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FDFDFD', endColorstr='#EFEFEF',GradientType=0 );
	-moz-box-shadow: 0px -5px 0px #CBCBCB inset;
	-webkit-box-shadow: 0px -5px 0px #CBCBCB inset;
	box-shadow: 0px -5px 0px #CBCBCB inset;
}
ul.makerCatList01 li:hover {
	margin-top: 2px;
	padding: 8px 10px 10px;
	border: 1px solid #D7D7D7;
	-moz-box-shadow: 0px -2px 0px #CBCBCB inset;
	-webkit-box-shadow: 0px -2px 0px #CBCBCB inset;
	box-shadow: 0px -2px 0px #CBCBCB inset;
}
ul.makerCatList01 a {
	display: inline-block;
	width: 175px;
	margin-left: 15px;
	text-decoration: none;
	vertical-align: middle;
}
ul.makerCatList01 img {
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #CCC;
}
/* [makerKanaList01] 50音順 ----------*/
ul.makerKanaList01 {
	overflow: hidden;
}
ul.makerKanaList01:nth-child(2n) {
	margin-bottom: 20px;
}
ul.makerKanaList01 li {
	float: left;
	width: 85px;
	min-height: 85px;
	margin: 0 0 10px 10px;
	padding: 0;
	font-size: 172%;
	line-height: 83px;
	text-align: center;
}
ul.makerKanaList01 li a {
	color: #1BA9C2;
	display: block;
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	transition: all 0.1s;
	text-decoration: none;
	border: 1px solid #D7D7D7;
	border-radius: 3px / 3px;
	background: #FDFDFD;
	background: -moz-linear-gradient(top,  #FDFDFD 0%, #EFEFEF 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FDFDFD), color-stop(100%,#EFEFEF));
	background: -webkit-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: -o-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: -ms-linear-gradient(top,  #FDFDFD 0%,#EFEFEF 100%);
	background: linear-gradient(to bottom,  #FDFDFD 0%,#EFEFEF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FDFDFD', endColorstr='#EFEFEF',GradientType=0 );
	-moz-box-shadow: 0px -5px 0px #CBCBCB inset;
	-webkit-box-shadow: 0px -5px 0px #CBCBCB inset;
	box-shadow: 0px -5px 0px #CBCBCB inset;
}
ul.makerKanaList01 li a:hover {
	margin-top: 3px;
	line-height: 80px;
	-moz-box-shadow: 0px -2px 0px #CBCBCB inset;
	-webkit-box-shadow: 0px -2px 0px #CBCBCB inset;
	box-shadow: 0px -2px 0px #CBCBCB inset;
}
ul.makerKanaList01 li span {
	color: #777;
	display: block;
	border: 1px solid #D8D8D8;
	border-radius: 3px / 3px;
	background: #D8D8D8;
}
/* [officesList01] ----------*/
ul.officesList01 li {
	float: left;
	margin: 3px 8px 3px 0;
	padding-right: 8px;
	line-height: 1.3;
	white-space: nowrap;
	border-right: 1px solid #CCC;
}
ul.officesList01 li:last-child {
	border-right: none;
}
/* [pipetteList01] ----------*/
ul.pipetteList01 {
	padding: 5px 0 0 5px;
	overflow: hidden;
	background: #1C7DCE;
}
ul.pipetteList01 li {
	float: left;
	width: 350px;
	text-align: center;
	margin: 0 5px 5px 0;
}
ul.pipetteList01 li a {
	display: block;
	padding: 5px 0;
	text-decoration: none;
	background: #FFF;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}
ul.pipetteList01 li a:hover {
	color: #FFF;
	background: #1C7DCE;
}
/* [employeePopBox01] 医療従事者向けモーダル表示 ----------*/
.employeePopBox01 ul {
	display: inline-block;
	margin: 0 auto 30px;
	padding: 15px 25px;
	overflow: hidden;
	border: 5px solid #DDD;
}
.employeePopBox01 ul li {
	float: left;
	padding: 0 10px;
}
.employeePopBox01 ul li span.arrow01 {
	padding: 10px 0;
}
/* [di2List01] 2カラムリスト ----------*/
div.di2List01 ul {
	overflow: hidden;
}
div.di2List01 li {
	float: left;
	width: 48%;
}
/* [pageLink] お知らせ ----------*/
ul.pageLink {
	display: table;
	width: 100%;
	margin-bottom: 10px;
	overflow: hidden;
	border: 1px solid #DDD;
	background: #FFF;
}
ul.pageLink li {
	display: table-cell;
	padding: 15px;
}
/* [pagenate] ページ送り ----------*/
ul.pagenate {
	clear: both;
}
ul.pagenate li {
	float: left;
	margin-right: 10px;
}
ul.pagenate li a,
ul.pagenate li span {
	display: inline-block;
	padding: 0 15px;
	line-height: 40px;
	border: 1px solid #DDD;
	background: #FFF;
}

/* [linkList01] 関連リンク一覧 ----------*/
ul.linkList01 li {
	margin-bottom: 5px;
}
ul.linkList01 li a:first-child {
	display: inline-block;
	padding-left: 15px;
	background: url(/img/common/icon_arrow01.png) no-repeat 0 0.5em;
}
/* [snsList01] footer - social button ----------*/
.snsList01 {
	float: right;
	padding-top: 10px;
}
.snsList01 li {
	float: left;
	padding-right: 6px;
}
/* [enTopList01] 英語トップページ用 ----------*/
ul.enTopList01 {
	width: 670px;
	margin-left: -25px;
	overflow: hidden;
}
ul.enTopList01 li {
	float: left;
	width: 310px;
	margin: 0 0 20px 25px;
}
ul.enTopList01 li.noBtn {
	background: #EEE;
}
/* [enTopList02] 英語トップページ用 ----------*/
ul.enTopList02 li {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #CCC;
}
ul.enTopList02 li:last-child {
	border-bottom: none;
}
ul.enTopList02 li span {
	color: #1B7DCD;
}
/* [enProRangeList01] product range ----------*/
ul.enProRangeList01 {
	width: 729px;
	margin-right: -14px;
}
ul.enProRangeList01 li {
	float: left;
	display: table;
	width: 219px;
	height: 150px;
	margin: 0 14px 20px 0;
	text-align: center;
	border: 5px solid #FFF;
	background: #FFF;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
}
ul.enProRangeList01 li div {
	display: table-cell;
	vertical-align: middle;
}
ul.enProRangeList01 li span {
	color: #01346A;
	font-size: 85%;
}

/*---- ol ----*/
/* [searchList01] index用ボタン ----------*/
ol.searchList01 {
	padding: 13px 14px 13px 0;
	overflow: hidden;
	list-style: none;
	border: 1px solid #DDD;
	background: #FFF;
	min-width: 480px;
}
ol.searchList01 li {
	float: left;
	width: 218px;
	margin-left: 14px;
}
ol.searchList01 li a,
ol.searchList01 li span {
	position: relative;
	display: block;
	width: 218px;
	height: 185px;
	text-indent: -9999px;
	background: no-repeat 0 0;
}
ol.searchList01 li span {
	position: absolute;
	top: 0;
	left: 0;
}
ol.searchList01 li.category a {
	background-image: url(/img/index/btn_category01.png);
}
ol.searchList01 li.category span {
	background-image: url(/img/index/btn_category01_o.png);
}
ol.searchList01 li.kana a {
	background-image: url(/img/index/btn_kana01.png);
}
ol.searchList01 li.kana span {
	background-image: url(/img/index/btn_kana01_o.png);
}

/* [productsList01] index用ボタン ----------*/
ol.productsList01 {
	padding-top: 13px;
	overflow: hidden;
	list-style: none;
	border: 1px solid #DDD;
	background: #EDEDED;
}
ol.productsList01 li {
	float: left;
	width: 140px;
	height: 90px;
	margin: 0 0 15px 15px;
}
ol.productsList01 li a {
	position: relative;
	display: block;
	width: 140px;
	height: 90px;
	overflow: hidden;
}
ol.productsList01 li a span {
	position: absolute;
	left: 0;
	bottom: -100%;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}
ol.productsList01 li a:hover span {
	bottom: 0;
}
ol.productsList01 li img {
	opacity: 1 !important;
}
/* [productsDetTab01, productsDetTab02] 商品案内詳細タブ ----------*/
ol.productsDetTab01,
ol.productsDetTab02 {
	overflow: hidden;
	list-style: none;
	border-bottom: 5px solid #1C7DCE;
}
ol.productsDetTab02 {
	border-top: 5px solid #1C7DCE;
	border-bottom: none;
}
ol.productsDetTab01 li,
ol.productsDetTab02 li {
	float: left;
	width: 33%;
	text-align: center;
}
ol.productsDetTab01 span,
ol.productsDetTab02 a {
	color: #1B7DCD;
	display: block;
	margin: 0 0 0 8px;
	line-height: 30px;
	cursor: pointer;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	border: 5px solid #1C7DCE;
	border-bottom: none;
}
ol.productsDetTab02 a {
	text-decoration: none;
	border-bottom: 5px solid #1C7DCE;
	border-top: none;
}
ol.productsDetTab01 span:hover,
ol.productsDetTab01 span.active,
ol.productsDetTab02 a:hover,
ol.productsDetTab02 a.active {
	color: #FFF;
	background: #1C7DCE;
}
/* [jcssTab01] JCSSタブ ----------*/
ol.jcssTab01,
ol.jcssTab02 {
	overflow: hidden;
	list-style: none;
	border-bottom: 5px solid #1C7DCE;
}
ol.jcssTab02 {
	border-top: 5px solid #1C7DCE;
	border-bottom: none;
}
ol.jcssTab01 li,
ol.jcssTab02 li {
	float: left;
	width: 33%;
	text-align: center;
}
ol.jcssTab01 a,
ol.jcssTab02 a {
	color: #1B7DCD;
	display: block;
	margin: 0 0 0 8px;
	line-height: 30px;
	cursor: pointer;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	border: 5px solid #1C7DCE;
	border-bottom: none;
}
ol.jcssTab02 a {
	border-bottom: 5px solid #1C7DCE;
	border-top: none;
}
ol.jcssTab01 a:hover,
ol.jcssTab01 a.active,
ol.jcssTab02 a:hover,
ol.jcssTab02 a.active {
	color: #FFF;
	text-decoration: none;
	background: #1C7DCE;
}


/*---- dl ----*/
/* [aboutList01] LMSについてトップページ用 ----------*/
dl.aboutList01 {
	float: left;
	width: 345px;
}
dl.aboutList01 dt {
	padding: 8px 10px;
	background: #02356A;
	box-shadow: -35px 0 0 #022C55 inset;
}
dl.aboutList01 dt a {
	color: #FFF;
	display: block;
	background: url(/img/common/icon_arrow04.png) no-repeat 100% 50%;
}
dl.aboutList01 dd {
	padding: 8px 10px;
	font-size: 86%;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #E6EBF2;
}
/* [officeList01] 事業拠点表示 ----------*/
dl.officeList01 dt {
	color: #FFF;
	padding-left: 10px;
	line-height: 40px;
	background: #1C7DCE;
}
dl.officeList01 dt a {
	color: #FFF;
	display: inline-block;
	float: right;
	padding: 0 20px 0 15px;
	background: #042569 url(/img/common/icon_arrow06.png) no-repeat 92% 50%;
}
dl.officeList01 dd {
	padding: 8px 10px;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #FFF;
}
/* [errorList01] お問い合わせ ----------*/
.errorList01 {
	display: table;
	/display: block;
	width: 972px;
	overflow: hidden;
	border: 4px solid #CCC;
	background: #F5F5F5;
}
.errorList01 p {
	display: table-cell;
	/display: inline-block;
	padding: 0 10px;
	font-size: 115%;
	vertical-align: middle;
}
.errorList01 ul {
	color: #EB7BA9;
	display: table-cell;
	/display: inline-block;
	width: 645px;
	padding: 10px 15px;
	overflow: hidden;
	vertical-align: middle;
	border-left: 1px solid #CCC;
	background: #FFF;
}
/* [faqBox01] FAQ ----------*/
.faq {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10000;
	width: 600px;
	height: 550px;
	margin: -275px 0 0 -300px;
}
.faqBG {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 10000;
	background: #0b0b0b;
	opacity: 0.8;
	filter: alpha(opacity=80);
}
.faqBox01 {
	height: 470px;
	overflow-y: scroll;
	background: #FFF;
}
.faqBox01 dt {
	color: #1C7DCE;
	min-height: 20px;
	padding: 13px 0 13px 50px;
	background: #DDD url(/img/contact/icon_Q01.gif) no-repeat 0 0;
}
.faqBox01 dd {
	font-size: 85%;
	min-height: 20px;
	padding: 13px 0 13px 50px;
	background: url(/img/contact/icon_A01.gif) no-repeat 0 0;
}
/* [jcssList01] JCSSについて ----------*/
dl.jcssList01 {
	border: 1px solid #DDD;
	background: #FFF;
}
dl.jcssList01 dt {
	float: left;
	padding: 30px 10px 0 10px;
}
dl.jcssList01 dd {
	padding: 15px 10px;
	overflow: hidden;
	font-size: 78%;
	border-left: 1px solid #DDD;
}

/*
======= 4: table,box =======
*/
table {
	width: 100%;
}
/* [tblType01] 汎用タイプ1 ----------*/
table.tblType01 {
	border-collapse: collapse;
}
table.tblType01 th,
table.tblType01 td {
	padding: 8px 10px;
	border: 1px solid #CCC;
}
table.tblType01 th {
	font-weight: normal;
	text-align: left;
	background: #EEE;
}
/* [tblType02] 汎用タイプ2 ----------*/
table.tblType02 {
	border-collapse: collapse;
}
table.tblType02 td {
	padding: 8px 10px;
	border: 1px solid #CCC;
}
table.tblType02 tr td:first-child {
	width: 150px;
	font-weight: normal;
	text-align: left;
	background: #EEE;
}
/* [tblHistory01] 沿革 ----------*/
table.tblHistory01 {
	border-collapse: collapse;
}
table.tblHistory01 th,
table.tblHistory01 td {
	padding: 13px 0;
	vertical-align: top;
	border-bottom: 1px solid #CCC;
}
table.tblHistory01 th {
	color: #042569;
	font-weight: normal;
	text-align: right;
}
table.tblHistory01 td {
	padding: 13px 0 13px 20px;
}
/* [tblJcss01] JCSSについて ----------*/
table.tblJcss01 {
	width: 350px;
	border-collapse: collapse;
}
table.tblJcss01 th,
table.tblJcss01 td {
	padding: 8px 15px;
	white-space: nowrap;
	border: 1px solid #CCC;
	background: #FFF;
}
table.tblJcss01 th {
	color: #FFF;
	font-weight: normal;
	text-align: center;
	background: #1C7DCE;
}
table.tblJcss01 td.stripe {
	background: #F5F5F5;
}
/* [tblJcss02] JCSSについて ----------*/
table.tblJcss02 {
	border-collapse: collapse;
	border-top: 1px solid #CCC;
}
table.tblJcss02 th,
table.tblJcss02 td {
	padding: 15px;
	border-bottom: 1px solid #CCC;
}
table.tblJcss02 th {
	text-align: center;
	border-right: 1px solid #CCC;
}
/* [tblJcss03] JCSSについて ----------*/
table.tblJcss03 {
	border-collapse: collapse;
}
table.tblJcss03 th,
table.tblJcss03 td {
	padding: 5px 10px;
	font-weight: normal;
	border: 1px solid #CCC;
	background: #FFF;
}
table.tblJcss03 th {
	background: #E8E8E8;
}

/* [tblRecruit01] 採用情報 ----------*/
table.tblRecruit01 {
	background: #CCC;
}
table.tblRecruit01 caption {
	color: #FFF;
	padding: 10px;
	font-size: 115%;
	text-align: left;
	background: #003369;
}
table.tblRecruit01 th,
table.tblRecruit01 td {
	padding: 15px;
	font-weight: normal;
	text-align: left;
}
table.tblRecruit01 th {
	width: 190px;
	background: #F5F5F5;
}
table.tblRecruit01 td {
	background: #FFF;
}
table.tblRecruit01 td.btnCell {
	width: 165px;
	text-align: center;
	border: 1px solid #FFF;
	background: #EEE;
	background: -moz-linear-gradient(top,  #EEE 0%, #FFF 70%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#EEE), color-stop(70%,#FFF));
	background: -webkit-linear-gradient(top,  #EEE 0%,#FFF 70%);
	background: -o-linear-gradient(top,  #EEE 0%,#FFF 70%);
	background: -ms-linear-gradient(top,  #EEE 0%,#FFF 70%);
	background: linear-gradient(to bottom,  #EEE 0%,#FFF 70%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#EEE', endColorstr='#FFF',GradientType=0 );
}
/* [tblContact01] お問い合わせ ----------*/
table.tblContact01 {
	border-collapse: collapse;
}
table.tblContact01 th,
table.tblContact01 td {
	padding: 10px;
	border: 1px solid #CCC;
}
table.tblContact01 th {
	width: 290px;
	padding-right: 0;
	font-size: 115%;
	font-weight: normal;
	text-align: left;
	background: #F5F5F5;
}
table.tblContact01 th span {
	color: #FFF;
	float: right;
	display: inline-block;
	padding: 0 5px;
	font-size: 13px;
	background: #EC7CA9;
}
table.tblContact01 td {
	background: #FFF;
}
table.tblContact01 td span.example {
	color: #666;
}
/* [tblContact02] お問い合わせ ----------*/
table.tblContact02 {
	border-collapse: collapse;
}
table.tblContact02 th,
table.tblContact02 td {
	padding: 8px 10px;
	text-align: left;
	border: 1px solid #CCC;
}
table.tblContact02 th {
	color: #042567;
	width: 280px;
}
table.tblContact02 td {
	width: 205px;
	background: #FFF;
}
table.tblContact02 td a {
	display: inline-block;
	padding-left: 20px;
	background: url(/img/common/icon_mail01.png) no-repeat 0 50%;
}

/*---- box ----*/
/* [keyv] メインイメージ ----------*/
#keyv {
	overflow: hidden;
}
.en #keyv {
	background: #E9E9E9;
}
#keyv .slideBase {
	position: relative;
	width: 980px;
	height: 450px;
	margin: 0 auto;
}
#keyv .slideWrap {
	position: absolute;
	left: 50%;
	width: 2940px;
	margin-left: -1470px;
}
#keyv .coverL,
#keyv .coverR {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 9990;
	width: 980px;
	height: 380px;
	background: rgba(28,125,206,0.75);
}
#keyv .coverL {
	margin-left: -1470px;
}
#keyv .coverR {
	margin-left: 490px;
}
#keyv .bx-wrapper .bx-viewport {
	border: none;
	background: #fff;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
#keyv .bx-wrapper .bx-pager {
	color: #666;
	height: 10px;
	padding: 10px 0;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	text-align: center;
	background: #FFF;
	box-shadow: 0 0 2px #AAA;
	-moz-box-shadow: 0 0 2px #AAA;
	-webkit-box-shadow: 0 0 2px #AAA;
}
#keyv .bx-wrapper .bx-controls-direction {
	position: relative;
	z-index: 9999;
	width: 980px;
	margin: 0 auto;
}
#keyv .bx-wrapper .bx-prev,
#keyv .bx-wrapper .bx-next {
	position: absolute;
	top: -221px;
	z-index: 9991;
	width: 30px;
	height: 62px;
	margin-top: 0;
	text-indent: -9999px;
}
#keyv .bx-wrapper .bx-prev {
	left: -70px;
	transition: all 0.3s ease 0s;
	background: url(/img/index/btn_keyvPrev01.png) no-repeat 0 0;
}
#keyv .bx-wrapper .bx-next {
	right: -70px;
	transition: all 0.3s ease 0s;
	background: url(/img/index/btn_keyvNext01.png) no-repeat 0 0;
}
#keyv .bx-wrapper .bx-prev:hover,
#keyv .bx-wrapper .bx-next:hover {
	opacity: 0.8;
}
/* [recruitKeyv] 採用メインイメージ ----------*/
#recruitKeyv {
	margin-bottom: 20px;
	background: #C5D6F2;
}
#recruitKeyv div {
	background: #458EDC;
}
#recruitKeyv div.inner {
	color: #FFF;
	width: 980px;
	margin: 0 auto;
	padding: 10px 0 30px;
}

/* [bnrBox01] トップバナー ----------*/
#bnrBox01 {
	position: relative;
	width: 950px;
	height: 90px;
	margin: 0 auto;
	padding: 15px;
	background: url(/img/index/bg_slideBox01.png) repeat-x 0 0;
}
#bnrBox01 .bx-wrapper {
	max-width: 950px !important;
}
#bnrBox01 .bx-wrapper .bx-viewport {
	border: none;
	background: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
#bnrBox01 .bx-wrapper .bx-controls-direction {
	position: relative;
	z-index: 9999;
	margin: 0 auto;
}
#bnrBox01 .bx-wrapper .bx-prev,
#bnrBox01 .bx-wrapper .bx-next {
	position: absolute;
	top: -105px;
	z-index: 9999;
	width: 15px;
	height: 120px;
	margin-top: 0;
	text-indent: -9999px;
}
#bnrBox01 img {
	opacity: 1 !important;
}
@-moz-document url-prefix() {
	#bnrBox01 .bx-wrapper .bx-prev,
	#bnrBox01 .bx-wrapper .bx-next {
		top: -107px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	#bnrBox01 .bx-wrapper .bx-prev,
	#bnrBox01 .bx-wrapper .bx-next {
		top: -106px;
	}
}
#bnrBox01 .bx-wrapper .bx-viewport a {
	display: inline-block;
	transition: all 0.3s ease 0s;
	border: 5px solid #8EC5F0;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
}
#bnrBox01 .bx-wrapper .bx-viewport a:hover {
	border-color: #2E92E2;
}
#bnrBox01 .bx-wrapper .bx-prev {
	left: -15px;
	transition: all 0.3s ease 0s;
	background: url(/img/index/btn_prev01.png) no-repeat 0 0;
}
#bnrBox01 .bx-wrapper .bx-next {
	right: -15px;
	transition: all 0.3s ease 0s;
	background: url(/img/index/btn_next01.png) no-repeat 0 0;
}
#bnrBox01 .bx-wrapper .bx-prev:hover {
	background-image: url(/img/index/btn_prev01_o.png);
}
#bnrBox01 .bx-wrapper .bx-next:hover {
	background-image: url(/img/index/btn_next01_o.png);
}
#bnrBox01 .bx-wrapper li {
	text-align: right;
}
#bnrBox01 .bx-wrapper img {
	display: inline;
}

/* [infoBox01, infoBox02] トップ 情報表示 ----------*/
.infoBox01,
.infoBox02 {
	position: relative;
	width: 478px;
	height: auto;
	margin: 0 auto;
	border: 1px solid #CCC;
	border-top: none;
	background: #FFF;
}
.infoBox01 .bx-wrapper,
.infoBox02 .bx-wrapper {
	margin-bottom: 30px;
}
.infoBox01 .bx-wrapper .bx-viewport,
.infoBox02 .bx-wrapper .bx-viewport {
	border: none;
	background: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.infoBox01 .bx-wrapper .bx-pager,
.infoBox02 .bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding: 10px 0;
	border-top: 1px solid #CCC;
	background: #EEE;
}
.infoBox01 .bx-wrapper .bx-controls-direction,
.infoBox02 .bx-wrapper .bx-controls-direction {
	position: relative;
	z-index: 9999;
	margin: 0 auto;
}
.infoBox01 .bx-wrapper .bx-prev,
.infoBox01 .bx-wrapper .bx-next,
.infoBox02 .bx-wrapper .bx-prev,
.infoBox02 .bx-wrapper .bx-next {
	position: absolute;
	top: 9px;
	z-index: 9999;
	width: 8px;
	height: 14px;
	margin-top: 0;
	text-indent: -9999px;
}
.infoBox01 .bx-wrapper .bx-prev,
.infoBox02 .bx-wrapper .bx-prev {
	background: url(/img/index/btn_infoPrev01.png) no-repeat 0 0;
}
.infoBox01 .bx-wrapper .bx-next,
.infoBox02 .bx-wrapper .bx-next {
	background: url(/img/index/btn_infoNext01.png) no-repeat 0 0 !important;
}
.infoBox01 .bx-wrapper li,
.infoBox02 .bx-wrapper li {
	padding: 10px 0;
	line-height: 0;
	text-align: center;
}
.infoBox01 .bx-wrapper li span,
.infoBox02 .bx-wrapper li span {
	display: inline-block;
	margin: 10px auto 0;
	padding: 0 10px;
	line-height: 1.5;
	text-align: left;
}
.infoBox01 .bx-wrapper li span.thumb,
.infoBox02 .bx-wrapper li span.thumb {
	display: table-cell;
	/display: inline;
	/zoom: 1;
	width: 217px;
	height: 140px;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	border: 4px solid #DDD;
}
.infoBox01 .bx-wrapper img,
.infoBox02 .bx-wrapper img {
	display: inline;
	width: auto;
	height: auto;
	max-width: 217px;
	max-height: 140px;
}
.infoBox01 .bx-wrapper .bx-viewport a,
.infoBox02 .bx-wrapper .bx-viewport a {
	display: inline-block;
	width: 225px;
	transition: all 0.3s ease 0s;
}
.infoBox01 .bx-wrapper .bx-viewport a:hover img,
.infoBox02 .bx-wrapper .bx-viewport a:hover img {
	border-color: #BBB;
}

/* [relatedProductList01] maker ----------*/
.relatedProductList01 {
	position: relative;
	width: 713px;
	height: auto;
	margin: 0 auto;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #E6EBF2;
}
.relatedProductList01 .bx-wrapper {
	margin-bottom: 30px;
}
.relatedProductList01 .bx-wrapper .bx-viewport {
	border: none;
	background: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.relatedProductList01 .bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding: 10px 0;
	border-top: 1px solid #CCC;
	background: #EEE;
}
.relatedProductList01 .bx-wrapper .bx-controls-direction {
	position: relative;
	z-index: 9999;
	margin: 0 auto;
}
.relatedProductList01 .bx-wrapper .bx-prev,
.relatedProductList01 .bx-wrapper .bx-next {
	position: absolute;
	top: 9px;
	z-index: 9999;
	width: 8px;
	height: 14px;
	margin-top: 0;
	text-indent: -9999px;
}
.relatedProductList01 .bx-wrapper .bx-prev {
	background: url(/img/index/btn_infoPrev01.png) no-repeat 0 0;
}
.relatedProductList01 .bx-wrapper .bx-next {
	background: url(/img/index/btn_infoNext01.png) no-repeat 0 0 !important;
}
.relatedProductList01 .bx-wrapper li {
	padding: 10px 0;
	text-align: center;
}
.relatedProductList01 .bx-wrapper img {
	display: inline;
	line-height: 0;
}
.relatedProductList01 .bx-wrapper li span.txt {
	display: inline-block;
	margin: 0 auto;
	padding: 0 10px;
	text-align: left;
}
.relatedProductList01 .bx-wrapper li span.frame5 {
	display: inline-block;
	width: 150px;
	height: 90px;
	border: 5px solid #FFF;
	background: #FFF;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
}
.relatedProductList01 .bx-wrapper a {
	display: inline-block;
}
.relatedProductList01 .bx-wrapper img {
	max-width: 150px;
	max-height: 90px;
}
/* [campaignList01] maker ----------*/
.campaignList01 {
	position: relative;
	width: 978px;
	height: auto;
	margin: 0 auto;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #E6EBF2;
}
.campaignList01 .bx-wrapper {
	margin-bottom: 30px;
}
.campaignList01 .bx-wrapper .bx-viewport {
	border: none;
	background: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.campaignList01 .bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding: 10px 0;
	border-top: 1px solid #CCC;
	background: #EEE;
}
.campaignList01 .bx-wrapper .bx-controls-direction {
	position: relative;
	z-index: 9999;
	margin: 0 auto;
}
.campaignList01 .bx-wrapper .bx-prev,
.campaignList01 .bx-wrapper .bx-next {
	position: absolute;
	top: 9px;
	z-index: 9999;
	width: 8px;
	height: 14px;
	margin-top: 0;
	text-indent: -9999px;
}
.campaignList01 .bx-wrapper .bx-prev {
	background: url(/img/index/btn_infoPrev01.png) no-repeat 0 0;
}
.campaignList01 .bx-wrapper .bx-next {
	background: url(/img/index/btn_infoNext01.png) no-repeat 0 0 !important;
}
.campaignList01 .bx-wrapper li {
	width: 210px !important;
	padding: 20px 2px 10px 27px;
	text-align: center;
}
.campaignList01 .bx-wrapper img {
	display: inline;
	line-height: 0;
}
.campaignList01 li .thumb {
	display: block;
	margin-bottom: 10px;
}
.campaignList01 .bx-wrapper li span.txt {
	display: inline-block;
	margin: 0 auto;
	text-align: left;
}
.campaignList01 .bx-wrapper a {
	display: inline-block;
}
/* [makerCatList] カテゴリ一覧 ----------*/
.makerCatList_base {
	border: 1px solid #CCC;
	background: #FFF;
}
/* [makerBox, itemBox] maker ----------*/
.makerContainer {
	position: relative;
	width: 740px;
	margin-right: -25px;
	zoom: 1;
}
/**/
.makerBox,
.makerBoxL,
.itemBoxL {
	float: left;
	width: 343px;
	margin: 0 25px 25px 0;
	padding-top: 5px;
	font-size: 85%;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #FFFFFF url(/img/maker/bg_makerBox.gif) no-repeat 0 0;
}
.makerBoxL {
	float: none;
	width: 713px;
	margin: 0;
}
#campaign .makerBoxL,
.itemBoxL {
	float: none;
	width: 100% !important;
	margin: 0;
	background: #FFFFFF url(/img/maker/bg_makerBox_l.gif) no-repeat 0 0 !important;
}
/**/
.makerBox .nameBox .logo,
.makerBoxL .nameBox .logo,
.itemBoxL .nameBox .thumb {
	width: 171px;
	text-align: center;
	vertical-align: middle;
}
.makerBox .nameBox .logo {
	float: left;
}
.makerBoxL .nameBox .logo,
.itemBoxL .nameBox .thumb {
	display: inline-block;
}
.itemBoxL .nameBox .thumb {
	width: 175px;
	padding: 10px 0;
	border-right: 1px solid #B8C6DA;
}
/**/
.makerBox .nameBox .logo p,
.makerBox .nameBox .logo div,
.makerBoxL .nameBox .logo p,
.itemBoxL .nameBox .thumb p {
	color: #1C7DCE;
	display: inline-block;
	font-size: 15px;
	font-weight: bold;
	line-height: 1.3;
	word-break: break-all;
	vertical-align: middle;
}
.makerBox .nameBox .logo p,
.makerBox .nameBox .logo div {
	display: table-cell;
	width: 171px;
}
.itemBoxL .nameBox .thumb p {
	display: table-cell;
	width: 175px;
}
.itemBoxL .nameBox .thumb p img {
	max-width: 150px;
	max-height: 97px;
}
/**/
.makerBoxL .nameBox .btnBox,
.itemBoxL .nameBox .btnBox {
	display: inline-block;
	min-width: 205px;
}
#campaign .makerBoxL .nameBox .btnBox {
	display: inline-block;
	min-width: 205px;
}
.makerBoxL .nameBox .btnBox *,
.itemBoxL .nameBox .btnBox * {
	font-size: inherit !important;
}
/**/
.makerBox .txtBox {
	display: none;
	padding: 15px 10px;
}
.makerBoxL .txtBox {
	display: none;
	padding: 15px 10px;
}
/**/
.itemBoxL .txtBox {
	display: inline-block;
	width: 510px;
	min-height: 37px;
	margin-left: -5px;
	padding: 12px 10px 11px;
	overflow: hidden;
	font-weight: normal;
	vertical-align: middle;
}
.itemBoxL .txtBox h3 span {
	font-size: 85%;
}
.itemBoxL .txtBox h3 a {
	color: #B8C6DA;
	text-decoration: none;
	font-weight: normal;
	line-height:1.5;
}
.itemBoxL .txtBox p {
	line-height:1.5;
}
.makerlogBox {
	float: right;
	display: table;
	width: 235px;
	height: 120px;
	margin: 0 0 20px 30px;
	text-align: center;
	border: 5px solid #FFF;
	background: #FFF;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
}
.makerlogBox p {
	display: table-cell;
	vertical-align: middle;
}
.makerlogBox p strong {
	color: #01346A;
	font-size: 115%;
}

/* [productBox] maker ----------*/
.productContainer {
	position: relative;
	width: 740px;
	margin-right: -25px;
	zoom: 1;
}
.productBox {
	float: left;
	width: 343px;
	margin: 0 25px 25px 0;
	padding-top: 5px;
	font-size: 85%;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #EFEFEF url(/img/maker/bg_makerBox.gif) no-repeat 0 0;
}
.productBox h3 {
	font-size: 117%;
}
.productBox .nameBox {
	padding: 10px;
	background: #FFF;
}
.productBox .txtBox {
	padding: 8px 10px;
	border-top: 1px solid #DDD;
}
.productBox .nameBox .left {
	width: 92px;
	height: 92px;
	box-sizing: border-box;
	text-align: center;
	line-height: 90px;
	border: 1px solid #DDD;
}
.productBox .nameBox .left img {
	visibility: hidden;
	max-width: 90px;
	max-height: 90px;
}
/* [productContact01] products ----------*/
.productContact01 {
	padding: 10px 15px;
	border: 1px solid #b8c6da;
	background: #FFF;
}
.productContact01 h4 span {
	padding-left: 10px;
	border-left: 5px solid #042568;
}
/* [relationBox01] common - blue ----------*/
.relationBox01 {
	margin-bottom: 30px;
	padding: 15px 10px 10px;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #E6EBF2 url(/img/common/bg_box01.gif) no-repeat 0 0;
}
.relationBox01 div {
	padding: 10px 15px;
	border: 1px solid #D8DCE3;
	background: #FFF;
}
.relationBox01 div.bgOffice01 {
	padding-right: 250px;
	min-height: 165px;
	background: #FFF url(/img/company/index/bgimg01.jpg) no-repeat 100% 0;
}
/* [relationBox02] common - white ----------*/
.relationBox02 {
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #FFF url(/img/common/bg_box01.gif) no-repeat 0 0;
}
.relationBox02 .section {
	margin: 0 10px;
	padding: 15px 0;
	border-bottom: 1px solid #CCC;
	background: #FFF;
}
/**/
.relationBox02 .left {
	display: table-cell;
	/display: inline;
	/zoom: 1;
	width: 220px;
	height: 165px;
	/height: auto;
	text-align: center;
	vertical-align: middle;
	background: #FFFFFF;
}
.relationBox02 .left {
	width: 150px;
	height: 94px;
	/height: auto;
}
.relationBox02 .left img {
	max-width: 150px;
	max-height: 94px;
}
/* [linkBox01] common ----------*/
.linkBox01 {
	border-top: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
}
/* [linkBox01] common ----------*/
.mapBox01 {
	padding: 10px;
	background: #FFF;
	-moz-box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
}

/* [mvBox01] 関連動画 ----------*/
.mvBox01 {
	padding: 0 14px;
}
.mvBox01 .section {
	padding: 14px 0;
	overflow: hidden;
	border-bottom: 1px solid #B8C6DA;
}
.mvBox01 .section p {
	float: left;
	padding-right: 15px;
}
.mvBox01 .section p a {
	position: relative;
	display: inline-block;
}
.mvBox01 .section p a span {
	position: absolute;
	top: 50%;
	left: 50%;
	display: inline-block;
	width: 43px;
	height: 33px;
	margin: -16px auto auto -21px;
	background: url(/img/common/img_mvPlay01.png) no-repeat 0 0;
}
.mvBox01 .section dl {
	overflow: hidden;
}
.mvBox01 .section dt {
	margin-bottom: 10px;
}
.mvBox01 .section dd {
	font-size: 85%;
}
/* [relatedFilesBox01] 関連ファイル ----------*/
.relatedFilesBox01 {
	padding: 14px 2px 0;
}
.relatedFilesBox01 ul {
	overflow: hidden;
}
.relatedFilesBox01 li {
	float: left;
	width: 330px;
	padding: 0 12px 14px;
}
.relatedFilesBox01 li a {
	display: block;
	text-align: left;
}
/* [relatedLinkBox01] 関連リンク ----------*/
.relatedLinkBox01 {
	padding: 14px 0 0 5px;
}
.relatedLinkBox01 ul {
	overflow: hidden;
}
.relatedLinkBox01 li {
	margin-bottom: 14px;
	padding: 0 14px;
	line-height: 1.3;
}
/* [recruitBox01] 採用情報 ----------*/
.recruitBox01 {
	padding: 10px 9px;
	overflow: hidden;
	border: 1px solid #B8C6DA;
	border-top: none;
	background: #E6EBF2;
}
.recruitBox01 div {
	float: left;
	width: 438px;
	margin: 10px;
	padding: 10px;
	border: 1px solid #D8DCE3;
	background: #FFF;
}
.recruitBox01 div p {
	float: left;
	margin-right: 10px;
}
.recruitBox01 div dl {
	overflow: hidden;
}
.recruitBox01 div dt {
	margin-bottom: 5px;
}
.recruitBox01 div dd {
	font-size: 85%;
}
/* [contactBox01] お問い合わせ ----------*/
.contactBox01 {
	width: 620px;
	min-height: 160px;
	padding-right: 360px;
	background: url(/img/contact/bgimg01.jpg) no-repeat 100% 100%;
}
/* [agreeBox01] 規約表示 ----------*/
.agreeBox01 {
	height: 150px;
	padding: 15px;
	overflow-y: scroll;
	font-size: 85%;
	border: 1px solid #DDD;
}
/* [employeeBox01] 医療従事者向け表示 ----------*/
.employeeBox01 {
	color: #EC7CA9;
	padding: 20px 0;
	text-align: center;
	border: 5px solid #EC7CA9;
	background: #FFF4F4;
}
/* [employeePopBox01] 医療従事者向けモーダル表示 ----------*/
.employeeBG {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 10000;
	background: #FFF;
	opacity: 0.8;
	filter: alpha(opacity=80);
}
.employeePopBox01 {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10000;
	width: 606px;
	height: 500px;
	margin: -250px 0 0 -320px;
	padding: 0 15px;
	border: 2px solid #1C7DCE;
	background: #FFF;
}

/* [enContactBox01] 英語トップページ用 ----------*/
.enContactBox01 {
	clear: both;
	overflow: hidden;
	border: 1px solid #DDD;
	background: #EEE;
}

/* [borderBox01] 実線 - 角丸 - 白背景 ----------*/
.borderBox01 {
	border: 1px solid #CCC;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	background: #FFF;
}
#home .borderBox01 {
	position: relative;
}
/* [borderBox02] 実線 - 白背景 ----------*/
.borderBox02 {
	border: 1px solid #B8C6DA;
	background: #FFF;
}
/* [jcssBox01] 実線 - 白背景 ----------*/
.jcssBox01 {
	border: 1px solid #DDD;
	background: #FFF url(/img/afterservice/logo_jcss02.jpg) no-repeat 95% 50%;
}
/* [makerCatList] カテゴリ一覧 ----------*/
.entryBox01 {
	width: 718px;
	border: 1px solid #DDD;
	background: #FFF;
}
/* [di2Box] 2カラム - w50% ----------*/
.di2Box {
	float: left;
	width: 50%;
}
/* [di2Box01] 2カラム - w480px ----------*/
.di2Box01_base {
	width: 1000px;
	margin: 0 -10px;
	overflow: hidden;
}
.di2Box01 {
	float: left;
	width: 480px;
	margin: 0 10px;
}
/* [di2Box02] 2カラム - w445px ----------*/
.di2Box02 {
	float: left;
	width: 445px;
}
/* [di2Box03] 2カラム - w350px ----------*/
.di2Box03_base {
	width: 730px;
	margin: 0 -15px 0 0;
	overflow: hidden;
}
.di2Box03 {
	float: left;
	width: 350px;
	margin: 0 15px 20px 0;
}
/* [di3Box01] 3カラム - w235px ----------*/
.di3Box01_base {
	width: 735px;
	margin: 0 -10px;
	overflow: hidden;
}
.di3Box01 {
	float: left;
	width: 225px;
	margin: 0 10px 20px;
}
/* [di4Box01] 4カラム - w230px ----------*/
.di4Box01_base {
	width: 1000px;
	margin: 0 -10px;
}
.di4Box01 {
	float: left;
	width: 230px;
	margin: 0 10px 40px;
}

/* other --------------------- */
.divideBox,
.break {
	overflow: hidden;
	zoom: 1;
}
.left {
	float: left;
}
.right {
	float: right;
}

/*
======= 5: link =======
*/
a:link,
a:visited,
a:active {
	color: #1C7DCE;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}

a img {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
a:hover img {
	opacity: 0.7;
}

/*----*/
#topicPath p a {
	color: #525252;
	text-decoration: underline;
}
#topicPath p a:hover,
.btnBasic:hover,
.btnBlue:hover {
	text-decoration: none;
}
.contactBtn {
	margin: 0 auto 40px;
	text-align: center;
}
/* [iconWindow] window ----------*/
.iconWindow {
	display: inline-block;
	padding-left: 13px;
	font-size: 85%;
	background: url(/img/common/icon_window.png) no-repeat 0 50%;
}
.iconWindow02 {
	display: inline-block;
	padding-right: 13px;
	font-size: 85%;
	background: url(/img/common/icon_window.png) no-repeat right 50%;
}
/* [iconArrow01] arrow - left ----------*/
.iconArrow01 {
	display: inline-block;
	padding-left: 20px;
	font-size: 85%;
	background: url(/img/common/icon_arrow02.png) no-repeat 0 50%;
}
.linkBox01 .iconArrow01 {
	padding: 14px 10px 13px 20px;
}
/* [iconArrow02] arrow - right ----------*/
.iconArrow02 {
	display: inline-block;
	padding-right: 20px;
	font-size: 85%;
	background: url(/img/common/icon_arrow03.png) no-repeat 100% 50%;
}
/* [iconArrow03] arrow - right ----------*/
.iconArrow03 {
	display: inline-block;
	padding-right: 20px;
	background: url(/img/common/icon_arrow05.gif) no-repeat 100% 50%;
}
/* [iconNew01] new ----------*/
.iconNew01 {
	display: inline-block;
	padding-right: 55px !important;
	background: url(/img/common/icon_new01.png) no-repeat 100% 50%;
}
/* [iconMail01] Mail ----------*/
.iconMail01 {
	color: #1C7DCE;
	display: inline-block;
	padding-left: 40px !important;
	line-height: 30px;
	background: url(/img/en/common/icon_mail01.gif) no-repeat 0 50%;
}


.newicon {
	display: inline-block;
	vertical-align: sub;
}
.new_products,
.commercial,
.recommend {
	color: #ffffff;
	display: inline-block;
	padding: 2px 15px;
	min-width: 70px;
	text-align: center;
}
.new_products {
	background: #86C0F0;
}
.commercial {
	background: #868AF0;
}
.recommend {
	background: #B686F0;
}

/*
	[btnBasic]	common
	[btnBlue]	blue
*/
.btnBasic,
.btnBlue {
	color: #1C7DCE;
	min-width: 160px;
	/width: auto;
	padding: 2px 15px 4px;
	display: inline-block;
	font-size: 92%;
	text-align: center;
	cursor: pointer;
	border: 1px solid #CCC;
	border-radius: 4px;
	background: #EEE;
	box-shadow: rgba(0, 0, 0, 0.2) 0px -2px 0px 0px inset;
	transition: all 0.3s ease 0s;
}
.btnBasic:hover {
	background: #DDD;
}
.btnBlue {
	color: #FFF !important;
	border: 1px solid #1C7DCE;
	background: #1C7DCE;
	box-shadow: rgba(0, 0, 0, 0.2) 0px -2px 0px 0px inset;
}
.btnBlue:hover {
	background: #1665A5;
}
#recruit .btnBlue {
	min-width: 130px;
	padding: 0 15px;
	font-size: 100%;
	line-height: 40px;
}
/**/
.btnBasic span,
.btnBlue span {
	display: block;
}
.btnBasic span.arrow01 {
	padding-right: 25px;
	background: url(/img/common/icon_arrow04.png) no-repeat right 50%;
}
.btnBasic span.pdf01 {
	padding-right: 25px;
	background: url(/img/common/icon_pdf.png) no-repeat right 50%;
}
.btnBasic span.docx01 {
	padding-right: 25px;
	background: url(/img/common/icon_word.png) no-repeat right 50%;
}
.btnBasic span.doc01 {
	padding-right: 25px;
	background: url(/img/common/icon_word.png) no-repeat right 50%;
}
.btnBasic span.word01 {
	padding-right: 25px;
	background: url(/img/common/icon_word.png) no-repeat right 50%;
}
.btnBasic span.xls01 {
	padding-right: 25px;
	background: url(/img/common/icon_excel.png) no-repeat right 50%;
}
.btnBasic span.xlsx01 {
	padding-right: 25px;
	background: url(/img/common/icon_excel.png) no-repeat right 50%;
}
.btnBasic span.excel01 {
	padding-right: 25px;
	background: url(/img/common/icon_excel.png) no-repeat right 50%;
}
.btnBasic span.ppt01 {
	padding-right: 25px;
	background: url(/img/common/icon_pp.png) no-repeat right 50%;
}
.btnBasic span.pptx01 {
	padding-right: 25px;
	background: url(/img/common/icon_pp.png) no-repeat right 50%;
}
.btnBasic span.pp01 {
	padding-right: 25px;
	background: url(/img/common/icon_pp.png) no-repeat right 50%;
}
.btnBasic span.balloon01 {
	padding-right: 25px;
	background: url(/img/common/icon_balloon01.png) no-repeat right 50%;
}
.btnBlue span.pc01 {
	padding-right: 25px;
	background: url(/img/common/icon_pc.png) no-repeat right 50%;
}
.btnBlue span.arrow01 {
	padding-right: 15px;
	background: url(/img/common/icon_arrow07.png) no-repeat right 50%;
}
/* [btnOffice01] トップ用 ----------*/
.btnOffice01 {
	position: absolute;
	top: 326px;
	right: -4px;
}
.btnOffice01::after {
	content: '';
	position: absolute;
	top: -5px;
	right: -3px;
	z-index: -1;
	border: 5px solid transparent;
	border-right-width: 3px;
	border-left: 3px solid #12568D;
}
.btnOffice01 a {
	display: inline-block;
	padding: 7px 20px 7px 13px;
	transition: all 0.3s ease 0s;
	border-radius: 3px 0 0 3px / 3px 0 0 3px;
	-moz-border-radius: 3px 0 0 3px / 3px 0 0 3px;
	-webkit-border-radius: 3px 0 0 3px / 3px 0 0 3px;
	-o-border-radius: 3px 0 0 3px / 3px 0 0 3px;
	-ms-border-radius: 3px 0 0 3px / 3px 0 0 3px;
	background: #1C7DCE;
}
.btnOffice01 a:hover {
	background: #338AD3;
}
/* [btnBack01]	エントリーページ用 ----------*/
.btnBack01 {
	padding-right: 50px;
	vertical-align: middle;
}
/* [btnClose01] お問い合わせ FAQ,医療従事者表示用 ----------*/
.btnClose01 {
	color: #FFF;
	position: absolute;
	top: 18px;
	right: 13px;
	padding: 10px 15px;
	font-size: 85%;
	line-height: 1.3;
	cursor: pointer;
	border: 1px solid #61A4DD;
}

/*
======= 6: others =======
*/
img {
	border: 0;
	vertical-align: bottom;
}
/*
	[frame5]	frame 5px
	[frame10]	frame 10px
*/
img.frame5,
img.frame10,
#products p > span.frame5,
#maker .di2Box03 .frame5,
.campaignList01 .frame5,
.frame5_proInfo,
.frame5_proInfo2 {
	border: 5px solid #FFFFFF;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 1px 0px;
}
img.frame10 {
	border: 10px solid #FFFFFF;
}
#products p > span.frame5,
#maker .di2Box03 .frame5,
.campaignList01 .frame5,
.frame5_proInfo,
.frame5_proInfo2 {
	display: table-cell;
	/display: inline;
	/zoom: 1;
	width: 220px;
	height: 165px;
	/height: auto;
	text-align: center;
	vertical-align: middle;
	background: #FFFFFF;
}
#maker .di2Box03 .frame5 {
	width: 94px;
	height: 60px;
}
.campaignList01 .frame5 {
	width: 200px;
	height: 128px;
	/height: auto;
}
.frame5_proInfo,
.frame5_proInfo2 {
	width: 340px;
	height: 220px;
	/height: auto;
}
/**/
.frame5_proInfo img,
.frame5_proInfo2 img {
	width: auto;
	height: auto;
}
#maker .di2Box03 .frame5 img {
	width: auto;
	height: auto;
	max-width: 94px;
	max-height: 60px;
	margin: 0 -8px\9;
}
.campaignList01 .frame5 img {
	height: auto;
	max-width: 200px;
	max-height: 128px;
}
.frame5_proInfo img {
	max-width: 340px;
	max-height: 220px;
}
.frame5_proInfo2 img {
	max-width: 340px;
}
/**/
.hidden {
	display: none;
}
/* [form] --------------------- */
.tblContact01 input,
.tblContact01 textarea,
.tblContact01 select {
	padding: 8px 10px;
	line-height: 1.7;
	transition: all 0.3s ease 0s;
}
.tblContact01 input:focus,
.tblContact01 textarea:focus,
.tblContact01 select:focus {
	background: #FFFFBF;
}
.tblContact01 input.err,
.tblContact01 textarea.err,
.tblContact01 select.err {
	background: #FFE6E6;
}
.tblContact01 input.err:focus,
.tblContact01 textarea.err:focus,
.tblContact01 select.err:focus {
	background: #FFFFBF;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset;
}
input:-webkit-autofill:focus,
textarea:-webkit-autofill:focus,
select:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0px 1000px #FFFFBF inset;
}

#btnTelSide {
	position: fixed;
	right: 0;
	top: 300px;
	z-index: 2000;
}

/* [line] --------------------- */
.line01 { /* 実線 */
	border: 1px solid #DDD;
}
.line02 { /* 破線 */
	border: 1px dashed #DDD;
}
.line03 { /* 実線 */
	border: 1px solid #CCC;
}
/* [atten] --------------------- */
.atten01 {
	color: #003369 !important;
}
.atten02 {
	color: #458EDC;
}
.atten03 {
	color: #1C7DCE;
}
.atten04 {
	color: #FF2626;
}
/* [fs]文字サイズ変更 --------------------- */
/* 14px相当 */
.f10 { font-size: 71% !important; }
.f11 { font-size: 78% !important; }
.f12 { font-size: 85% !important; }
.f13 { font-size: 92% !important; }
.f16 { font-size: 115% !important; }
.f17 { font-size: 122% !important; }
.f20 { font-size: 143% !important; }

/*----*/
.note {
	padding-left: 1em;
	text-indent: -1em;
}
/*----*/
.align_l {
	text-align: left;
}
.align_r {
	text-align: right;
}
.align_c {
	text-align: center;
}
/*----*/
.clear {
	clear: both;
	height: auto;
}
/*----*/
.mt0, .mv0, .ma0 { margin-top:    0 !important; }
.mr0, .mh0, .ma0 { margin-right:  0 !important; }
.mb0, .mv0, .ma0 { margin-bottom: 0 !important; }
.ml0, .mh0, .ma0 { margin-left:   0 !important; }
.pt0, .pv0, .pa0 { padding-top:   0 !important; }
.pr0, .ph0, .pa0 { padding-right: 0 !important; }
.pb0, .pv0, .pa0 { padding-bottom:0 !important; }
.pl0, .ph0, .pa0 { padding-left:  0 !important; }
.mt5, .mv5, .ma5 { margin-top:    5px !important; }
.mr5, .mh5, .ma5 { margin-right:  5px !important; }
.mb5, .mv5, .ma5 { margin-bottom: 5px !important; }
.ml5, .mh5, .ma5 { margin-left:   5px !important; }
.pt5, .pv5, .pa5 { padding-top:   5px !important; }
.pr5, .ph5, .pa5 { padding-right: 5px !important; }
.pb5, .pv5, .pa5 { padding-bottom:5px !important; }
.pl5, .ph5, .pa5 { padding-left:  5px !important; }
.mt10, .mv10, .ma10 { margin-top:    10px !important; }
.mr10, .mh10, .ma10 { margin-right:  10px !important; }
.mb10, .mv10, .ma10 { margin-bottom: 10px !important; }
.ml10, .mh10, .ma10 { margin-left:   10px !important; }
.pt10, .pv10, .pa10 { padding-top:   10px !important; }
.pr10, .ph10, .pa10 { padding-right: 10px !important; }
.pb10, .pv10, .pa10 { padding-bottom:10px !important; }
.pl10, .ph10, .pa10 { padding-left:  10px !important; }
.mt15, .mv15, .ma15 { margin-top:    15px !important; }
.mr15, .mh15, .ma15 { margin-right:  15px !important; }
.mb15, .mv15, .ma15 { margin-bottom: 15px !important; }
.ml15, .mh15, .ma15 { margin-left:   15px !important; }
.pt15, .pv15, .pa15 { padding-top:   15px !important; }
.pr15, .ph15, .pa15 { padding-right: 15px !important; }
.pb15, .pv15, .pa15 { padding-bottom:15px !important; }
.pl15, .ph15, .pa15 { padding-left:  15px !important; }
.mt20, .mv20, .ma20 { margin-top:    20px !important; }
.mr20, .mh20, .ma20 { margin-right:  20px !important; }
.mb20, .mv20, .ma20 { margin-bottom: 20px !important; }
.ml20, .mh20, .ma20 { margin-left:   20px !important; }
.pt20, .pv20, .pa20 { padding-top:   20px !important; }
.pr20, .ph20, .pa20 { padding-right: 20px !important; }
.pb20, .pv20, .pa20 { padding-bottom:20px !important; }
.pl20, .ph20, .pa20 { padding-left:  20px !important; }
.mt25, .mv25, .ma25 { margin-top:    25px !important; }
.mr25, .mh25, .ma25 { margin-right:  25px !important; }
.mb25, .mv25, .ma25 { margin-bottom: 25px !important; }
.ml25, .mh25, .ma25 { margin-left:   25px !important; }
.pt25, .pv25, .pa25 { padding-top:   25px !important; }
.pr25, .ph25, .pa25 { padding-right: 25px !important; }
.pb25, .pv25, .pa25 { padding-bottom:25px !important; }
.pl25, .ph25, .pa25 { padding-left:  25px !important; }
.mt30, .mv30, .ma30 { margin-top:    30px !important; }
.mr30, .mh30, .ma30 { margin-right:  30px !important; }
.mb30, .mv30, .ma30 { margin-bottom: 30px !important; }
.ml30, .mh30, .ma30 { margin-left:   30px !important; }
.pt30, .pv30, .pa30 { padding-top:   30px !important; }
.pr30, .ph30, .pa30 { padding-right: 30px !important; }
.pb30, .pv30, .pa30 { padding-bottom:30px !important; }
.pl30, .ph30, .pa30 { padding-left:  30px !important; }
.mt40, .mv40, .ma40 { margin-top:    40px !important; }
.mr40, .mh40, .ma40 { margin-right:  40px !important; }
.mb40, .mv40, .ma40 { margin-bottom: 40px !important; }
.ml40, .mh40, .ma40 { margin-left:   40px !important; }
.pt40, .pv40, .pa40 { padding-top:   40px !important; }
.pr40, .ph40, .pa40 { padding-right: 40px !important; }
.pb40, .pv40, .pa40 { padding-bottom:40px !important; }
.pl40, .ph40, .pa40 { padding-left:  40px !important; }
.mt50, .mv50, .ma50 { margin-top:    50px !important; }
.mr50, .mh50, .ma50 { margin-right:  50px !important; }
.mb50, .mv50, .ma50 { margin-bottom: 50px !important; }
.ml50, .mh50, .ma50 { margin-left:   50px !important; }
.ml55 { margin-left:   55px !important; }
.mt60, .mv60, .ma60 { margin-top:    60px !important; }
.mr60, .mh60, .ma60 { margin-right:  60px !important; }
.mb60, .mv60, .ma60 { margin-bottom: 60px !important; }
.ml60, .mh60, .ma60 { margin-left:   60px !important; }
.mt90, .mv90, .ma90 { margin-top:    90px !important; }
.mr90, .mh90, .ma90 { margin-right:  90px !important; }
.mb90, .mv90, .ma90 { margin-bottom: 90px !important; }
.ml90, .mh90, .ma90 { margin-left:   90px !important; }
.bt0, .ba0 { border-top:none !important; }
.br0, .ba0 { border-right:none !important; }
.bb0, .ba0 { border-bottom:none !important; }
.bl0, .ba0 { border-left:none !important; }

/*---- clearfix ----*/
/* For modern browsers */
.cf:before,
.cf:after {
    content:"";
    display:table;
}
.cf:after { clear:both; }
/* For IE 7 (trigger hasLayout) */
.cf { zoom:1; }
/* clearfix end */



/*TOP Animation
----------------------------*/
#s01 a {
    position: relative;
    display: block;
    width: 980px;
    height: 380px;
    background: url(/img/index/keyv01/bg_keyv01.jpg) no-repeat 0 0;
}
#s01 a img.img01 {
    position: absolute;
    top: 50px;
    right: 80px;
    z-index: 10;
}
#s01 a img.img02 {
    position: absolute;
    top: 100px;
    right: 73px;
    z-index: 11;
}
#s01 a img.img03 {
    position: absolute;
    top: 240px;
    right: 86px;
    z-index: 12;
}

#s01 .img02 {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s01 .img03 {
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  animation-delay:1.1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

#s02 a {
    position: relative;
    display: block;
    width: 980px;
    height: 380px;
    background: url(/img/index/keyv02/bg_keyv02.jpg) no-repeat 0 0;
}
#s02 .img01 {
	position: absolute;
	left: 50%;
	top: 103px;
	margin-left: -171px;
}
#s02 .txt {
	position: absolute;
	left: 50%;
	top: 165px;
	margin-left: -217px;
	text-align: center;
}
#s02 .img02 {
	position: absolute;
	left: 50%;
	top: 230px;
	margin-left: -130px;
}

#s02 .img01 {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s02 .txt01 {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
	animation-delay:1.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s02 .txt02 {
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  animation-delay:1.6s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}


#s03 a {
    position: relative;
    display: block;
    width: 980px;
    height: 380px;
    background: url(/img/index/keyv03/bg_keyv03.jpg) no-repeat 0 0;
}
#s03 .sttl {
	position: absolute;
	right: 25px;
	top: 82px;
}
#s03 .txt {
	position: absolute;
	right: 31px;
	top: 141px;
}
#s03 .btn {
	position: absolute;
	right: 71px;
	top: 208px;
}
#s03 .img01 {
	position: absolute;
	left: 251px;
	top: 88px;
}
#s03 .img02 {
	position: absolute;
	left: 422px;
	top: 88px;
}
#s03 .sttl {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s03 .img01 {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
	animation-delay:1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s03 .img02 {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
	animation-delay:1.1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s04 a {
    position: relative;
    display: block;
    width: 980px;
    height: 380px;
    background: url(/img/index/keyv04/bg_keyv04.jpg) no-repeat 0 0;
}
#s04 .img01 {
	position: absolute;
	left: 191px;
	top: 102px;
}
#s04 .txt {
	position: absolute;
	left: 148px;
	top: 164px;
}
#s04 .btn {
	position: absolute;
	left: 149px;
	top: 230px;
}
#s04 .img01 {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
#s04 .txt01 {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
	animation-delay:1.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/* PAGE CONTACT PICUP
-------------------------------------*/
.pageContact {
  position: relative;
  width: 715px;
  margin: 56px auto 10px;
  box-sizing: border-box;
}
.pageContact.maker {
  margin: 20px auto 10px;
}
.pageContact .freeobj {
  position: absolute;
  right: -22px;
  top: -26px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content:         center;
  -webkit-align-items: center;
  align-items:         center;
  width: 100px;
  height: 100px;
  background: #f0e618;
  border-radius: 100px;
  text-align: center;
}
.pageContact .freeobj span {
  display: block;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  color: #1f3667;
}
.pageContact .sttl {
  padding: 5px 15px;
  background: #1f3667;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
}
.pageContact .inbox {
  padding: 20px;
  border: 1px solid #c1cadb;
  border-top: none;
}
.pageContact .makerName {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: bold;
	color: #1f3667;
}
.pageContact .phbox {
  float: left;
  width: 288px;
}
.pageContact .txtbox {
  float: right;
  width: 360px;
}
.pageContact .checklist {
  margin-top: -6px;
  margin-bottom: 5px;
}
.pageContact .checklist li {
  position: relative;
  float: left;
  width: 39%;
  margin-bottom: 8px;
  padding-left: 22px;
	font-size: 16px;
	color: #1f3667;
  z-index: 10;
  line-height: 1.2;
}
.pageContact .checklist li::before {
	content: '';
	position: absolute;
	top: 9px;
	left: 5px;
	z-index: 2;
	display: block;
	width: 4px;
	height: 6px;
	margin-top: -3px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
  border-radius: 4px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pageContact .checklist li span::before {
	content: '';
	position: absolute;
	top: 10px;
	left: -16px;
	z-index: 1;
	width: 16px;
	height: 16px;
	display: inline-block;
	box-shadow: 16px 0px #1C7DCE;
	margin-top: -8px;
  border-radius: 50%;
}
.pageContact .checklist li strong {
  position: relative;
  display: inline-block;
  background: linear-gradient(transparent 65%, #ffff00 0%); 
}
.pageContact .comment {
  margin-bottom: 10px;
  line-height: 1.45;
  font-size: 16px;
  font-weight: bold;
	color: #1f3667;
}