@charset "utf-8";



/* -- Parts common style
-------------------------------------------------------------------------------- */
footer:before,
#lead:before,
#sec1:before,
#sec2:before,
#sec2 ul li:before,
#sec4:before,
#sec5:before,
#sec4 .movie:before, /* 20160831 add */
#sec5 .movie:before /* 20160831 add */
{
	content: "";
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
	z-index: 0;
}
footer > *,
#lead > *,
#sec1 > *,
#sec2 ul li > *,
#sec4 > *,
#sec2 h2, /* 20160831 add */
#sec5 > * /* 20160831 add */
{
	position: relative;
	z-index: 2;
}



/* -- Layout
-------------------------------------------------------------------------------- */
header,
footer,
article > div,
article > section {
	text-align: left;
	width: 960px;
	margin: auto;
}
article {
	padding-bottom: 100px;
	width: 100%;
	overflow: hidden;
}
article > section {
	line-height: 1.75;
	width: 960px;
	box-sizing: border-box;
}

header {
	height: 102px;
	position: relative;
}
header p:first-child {
	position: absolute;
	left: 0;
	top: 37px;
}
header p:last-child {
	position: absolute;
	right: 0;
	top: 28px;
}

footer {
	width: 960px;
	height: 239px;
	padding-top: 1px;
}
footer:before {
	height: 177px;
	margin-top: -1px;
	border-top: solid 1px #F3F3F3;
	border-bottom: 62px solid #231815;
}
footer dl {
	display: table;
	width: 100%;
	height: 177px;
}
footer dl dt,
footer dl dd {
	display: table-cell;
}
footer dl dt {
	background: #16ace4;
	text-align: center;
	vertical-align: middle;
	width: 264px;
}
footer dl dd {
	vertical-align: middle;
}
footer dl dd:first-of-type {
	text-align: center;
	width: 400px;
}
footer dl dd:last-of-type {
	text-align: right;
	width: 296px;
}
footer p {
	float: left;
	padding: 16px 0 0;
}
footer small {
	font-size: 10px;
	color: #FFF;
	display: block;
	float: right;
	padding: 26px 10px 0 0;
}



/* -- Contents
-------------------------------------------------------------------------------- */
/*20181204 add*/
#vis {
	text-align: center;
	height: 670px;
	width: 100%;
}
#vis .slide-item {
	position: relative; /*20181204 add*/
	height: 607px; /*20181204 add*/
	overflow: hidden; /*20181204 add*/
}
#vis h1,
#vis .item-list {
	text-align: left;
	width: 950px;
	margin:auto;
}
#vis h1 {
	padding-top: 70px;
	height: 244px;
}
#vis .item-list {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	margin: 35px auto 0;
}
#vis .item-list li {
}
#vis .item-list li img {
	width: 100%;
}
#vis .slider_bg {
	overflow: hidden;
	width: 1500px;
	position: absolute;
	left: 50%;
	transform: translate(-50%,0);
	top: 0;
	z-index: -1;
}
#vis .slider_bg li {
	margin: 0 auto;
}
#vis .slider_bg img {
	width: 100%;
	margin: 0 auto;
}
/*20181204 add end*/

#lead {
	background: url(../img/lead_ti_bg.gif) no-repeat center 116px;
	text-align: center;
}
#lead:before {
	background: #16ace4;
	height: 116px;
}
#lead h2 {
	background: #16ace4;
	height: 98px;
	padding-top: 18px;
	margin-bottom: 40px;
}
#lead ul {
	background: #FFF;
	font-size: 0;
	display: block;
	padding: 0 8px 0;
	/*overflow: hidden;*/
	margin: 0 0 38px 0;
	height: 304px;
}
#lead li {
	display: block;
	float: left;
	padding: 0 12px;
	height: 304px;
}
#lead p {
	text-align:right;
	padding: 0 20px 40px;
}
section[id^="sec"] h2 {
	background: url(../img/bg_sec_ti.png) no-repeat;
	text-align: center;
	display: block;
	margin: auto;
	height: 102px;
	width: 694px;
}

#sec1 {
	height: 790px;
	padding-top: 60px;
	clear: both;
}
/*
#sec1:before {
	background: url(../img/sec1_bg.gif) repeat;
	height: 790px;
	margin-top: -60px;
}
#sec1 div {
	background: #FFF;
	margin: 47px auto 40px;
	padding: 7px 9px;
	width: 700px;
	height: 390px;
	box-shadow: 0 0 2px #B2B2B2;
	position: relative;
	behavior: url(../js/PIE.htc);
}
*/
#sec2 {
}
#sec2:before {
	background: #16ace4;
	height: 116px;
}
#sec2 h2 {
	background: #16ace4;
    height: 98px;
    padding-top: 18px;
	width: auto;
}
#sec2 ul {
	margin-bottom: 72px;
	display: block;
}
#sec2 ul li {
	display: block;
	height: 405px;
	box-sizing: border-box;
}
#sec2 ul li:before {
	background-position: center 0!important;
	background-repeat: no-repeat!important;
	height: 405px;
}
#sec2 ul li:nth-child(even) { text-align: right; }
#sec2 ul li.li1 { padding: 57px 0 0 0; }
#sec2 ul li.li2 { padding: 64px 18px 0 0; }
#sec2 ul li.li3 { padding: 37px 0 0 39px; }
#sec2 ul li.li4 { padding: 60px 0 0 0; }
#sec2 ul li.li1:before { background: #F4F4F4 url(../img/sec2_bg1.jpg); margin-top: -57px; }
#sec2 ul li.li2:before { background: #FFFFFF url(../img/sec2_bg2.jpg); margin-top: -64px; }
#sec2 ul li.li3:before { background: #F2F2F2 url(../img/sec2_bg3.jpg); margin-top: -37px; }
#sec2 ul li.li4:before { background: #EBEBEB url(../img/sec2_bg4.jpg); margin-top: -60px; }
#sec2 ul li p {
	margin-top: 18px;
}

#sec3 {
	padding-top: 95px;
}
#sec3 h2 {
	margin-bottom: 28px;
}
#sec3 p {
	margin: 48px 0 23px;
}
#sec3 p, #sec3 h2 {
	text-align: center;
}
#sec3 #acMenu dt {
    display:block;
    height:60px;
    line-height:60px;
    cursor:pointer;
    background: #e9eeef url(../img/dw_swich.gif) right top no-repeat;
	color: #010101;
    padding: 0 0 0 25px;
	margin: 0 0 1px 0;
	font-size: 20px;
	text-align: left;
}
#sec3 #acMenu dt span {
	font-size: 16px;
}
#sec3 #acMenu dd {
    display:none;
	text-align: left;
	margin: 0 0 1px 0;
}
#sec3 #acMenu dt.active {
    background: #e9eeef url(../img/up_swich.gif) right top no-repeat;
}
#sec3 table {
	clear: both;
	width: 100%;
	margin-bottom: 20px;
}
#sec3 th {
	vertical-align: middle;
	padding: 10px 25px 8px 25px;
	border: solid 1px #dfdfdf;
	box-sizing: border-box;
	width: 300px;
	text-align: left;
}
#sec3 td {
	vertical-align: middle;
	padding: 10px 0 8px 25px;
	border: solid 1px #dfdfdf;
	box-sizing: border-box;
}
#sec3 td:nth-of-type(1) {
	border-right: none;
	width: 110px;
}
#sec3 td:nth-of-type(2) {
	border-left: none;
	padding: 10px 25px 8px 0;
}
#sec3 td:nth-of-type(3) {
	width: 160px;
}
#sec3 p.entx {
	font-size: 11px;
	color: #666;
	text-align: right;
	margin: 20px 0 0 0;
}
#sec3 dd h5 {
	display:block;
    cursor:pointer;
	color: #FFF;
	background: #087cb2;
	padding: 10px 25px 8px 25px;
	margin: 0 0 1px 0;
}
#sec3 dd div {
	display: none;
}



/* -- print only
-------------------------------------------------------------------------------- */
@media print {
	#lead {
		margin-top: 100px;
	}
	#lead ul {
		margin: 0;
	}
	#sec2 {
		/*margin-top: 150px;
		page-break-before: always;
		padding-top: 0;*/
	}
	/*#sec2 .li2 {
		page-break-before: always;
	}*/
	#sec2 ul li {
		height: 400px;
	}
	#sec4 li {
		margin-bottom: 10px !important;
	}
	#sec4 p {
		margin: 40px 0 !important;
	}
	#sec5 {
		page-break-after: always;
	}
	#sec5 li:nth-child(4) {
		margin: 0 0 20px !important;
	}
	#sec5 li:nth-child(5) {
		margin: 0 !important;
	}
	#lead p {
		display: none\0/;
	}
	#sec3,
	#sec4 .movie,
	#sec5 .movie,
	p.sBtn {
		display: none;
	}
	.ua-firefox #lead:before,
	.ua-firefox #sec1:before,
	.ua-firefox #sec2:before,
	.ua-firefox #sec2 ul li:before,
	.ua-firefox #sec4:before,
	.ua-firefox footer:before {
		display: none;
	}
	.ua-firefox #lead .fpri {
		margin: 100px 0 0 0;
	}
	.ua-firefox #sec4 .movie,
	.ua-firefox #sec5 .movie
	{
		background: none;
	}
	.ua-firefox #sec1 {
		background: url(../img/sec1_bg.gif) repeat;
		top: 354px;
		position: relative;
	}
	.ua-firefox #sec2 ul li.li1 { background: #F4F4F4 url(../img/sec2_bg1.jpg) no-repeat center 0; }
	.ua-firefox #sec2 ul li.li2 { background: #FFFFFF url(../img/sec2_bg2.jpg) no-repeat center 0; }
	.ua-firefox #sec2 ul li.li3 { background: #F2F2F2 url(../img/sec2_bg3.jpg) no-repeat center 0; }
	.ua-firefox #sec2 ul li.li4 { background: #EBEBEB url(../img/sec2_bg4.jpg) no-repeat center 0; }
	.ua-firefox footer dl {
		border-top: solid 1px #F3F3F3;
		border-bottom: 62px solid #231815;
		margin-bottom: -62px;
	}
}

/* -- 公開前
-------------------------------------------------------------------------------- */
.soon{
	background-color:#E3E3E3;
	padding:20px;
	font-size:50px;
}


/* -- add css
-------------------------------------------------------------------------------- */
#sec4 {
	background: url(../img/lead_ti_bg.gif) no-repeat center 116px;
	text-align: center;
	padding: 0 0 100px 0;
}
#sec4:before {
	background: #16ace4;
	height: 116px;
}
#sec4:after {
	content: "";
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
	z-index: 0;
	border-bottom: 2px solid #16ace4;
}
#sec4 h3 {
	background: #16ace4;
	height: 98px;
	padding-top: 18px;
	margin-bottom: 40px;
}
#sec4 ul {
	background: url(../img/sec4_bg.jpg) no-repeat top right;
}
#sec4 li {
	text-align: left;
	margin: 0 0 20px 0;
}
#sec4 li:nth-child(1) { margin: 0 0 28px 0;}
#sec4 li:nth-child(5) { margin: 0 0 105px 0;}
#sec4 li.annotation { position: absolute; top:0; right:0;} /* 20160831 edit */

/* 20181205 add */
#sec4 li.antibacterial_model-01 {
	text-align: center;
	margin-bottom: 50px;
}
#sec4 li.antibacterial_model-02 {
	text-align: center;
	margin-bottom: 78px;
}
#sec4 li.antibacterial_model-03 {
	text-align: center;
  margin: 80px 0 45px;
}
/* 20160831 edit */
#sec4 p {
	text-align: center;
	margin: 80px 0 45px;
}
p.sBtn {
	text-align: center !important;
	padding: 0!important;
	margin: 0 0 80px 0!important;
}

#sec5 ul {
	background: url(../img/sec5_bg.jpg) no-repeat top right;
}
#sec5 li {
	text-align: left;
}
#sec5 li:nth-child(1) { margin: 0 0 37px 0;}
#sec5 li:nth-child(2) { margin: 0 0 105px 0;}
/* #sec5 li:nth-child(3) { margin: 0 0 80px 0;} 20160831 add */
#sec5 li:nth-child(4) {
	margin: 80px 0 45px 0; /* 20160831 edit */
	text-align: center;
}
/* 20160831 add */
#sec5 li:nth-child(5) {
	margin: 0 0 45px 0;
	text-align: center;
}
#sec4 .movie,
#sec5 .movie
{
	margin: 0;
	position: relative;
	padding: 45px 0;
	background: url(../img/sec1_bg.gif) repeat;
	width: 100vw;
}
/*
#sec4 .movie:before,
#sec5 .movie:before
{
	display: block;
	top: 0;
	left: 0;
	background: url(../img/sec1_bg.gif) repeat;
	width: 100%;
	height: 100%;
}
*/
#sec4 .movie div,
#sec5 .movie div
{
	background: #FFF;
	margin: 0 auto;
	padding: 7px 9px;
	width: 946px;
	height: 522px;
	box-shadow: 0 0 2px #B2B2B2;
	position: relative;
	behavior: url(../js/PIE.htc);
}

.slick-dots {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 62px;
}
.slick-dots li {
	display: inline-block;
	width: 13px;
	height: 13px;
	background: #e7e7e7;
	margin: 0 10px;
	text-indent: -9999px;
	border-radius: 50%;
	transition: background .75s cubic-bezier(.23, 1, .32, 1);
}
.slick-dots li.slick-active {
	background: #16ace4;
}
