@charset "utf-8";

* { zoom: 1; }
html {
//	font-size: 62.5%;
	font-size: 95%;
}

body {
	font-family: "メイリオ","Hiragino Kaku Gothic Pro",Meiryo,"ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	font-size: 16px;
	font-size: 1.0rem;
	line-height: 1.8;
	letter-spacing: 0.1em;
	color: #000000;
}

img {
//	display:block;
	max-width: 100%;
	width:/***/auto; /* IE8用 */
	margin: 0 auto;
}

a:link    {
	color: #000000;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all  0.5s ease-in-out;
}
a:visited {
	color: #000000;
}
a:hover   {
	color: #333333;
}

a:active  {
	color: #333333;
}


.clearfix:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

div {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

nav {
	display block;
}

.fa {
	color: #4377fc;
	margin: 0 0.1em 0 0.1em;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all  0.5s ease-in-out;
}

/*
##################################
# ブレークポイント：1200, 992, 768
##################################
*/

/* トップページ用css */
.box {
	width: 100% !important;
	margin: 0 auto;
}

/* やや狭いデスクトップ用 */
@media screen and (min-width: 768px) {
	.box {
		width: 95% !important;
	}
}

/* やや狭いデスクトップ用 */
@media screen and (min-width: 992px) {
	.box {
		width: 90% !important;
	}
}

/* トップページ用ヘッダー */
#top_siteheader {
	position:fixed;
	top:0;
	background-image: url(../img/top_header_bg.png);
	background-position: 0% 0%;
	background-repeat: repeat no-repeat;
	background-color: transparent;
	z-index: 10;
	height: 4em;
	width: 100%;
	margin: 0;
	font-size:80%;
	color: #ffffff;
	text-align: center;
}

#top_siteheader .container {
	margin: 0 auto;
	padding-top: 5em;
	width: 90%;
	height: 100%;
	max-width:1170px;
}

#top_header_text {
	display: none;
}

@media screen and (min-width: 768px) {
	#top_header_text {
		display: inline-block;
		float:left;
		padding-top: 1.5em;
		text-align: center;
		width: 60%;
	}
}


#copy01,
#copy02 {
	margin: 0 auto;
}

@media screen and (min-width: 768px) {
	#copy01,
	#copy02 {
		margin:0.5em auto;
	}
}

img.logo {
	display: none;
	float: left;
}
@media screen and (min-width: 768px) {
	img.logo {
		display: block;
	}
}
@media screen and (min-width: 992px) {
	img.logo {
//		height: 4em;
	}
}
@media screen and (min-width: 1200px) {
	img.logo {
//		height: 3em;
	}
}

/* トップページ用 */
.top_container {
	margin: 0 auto;
	padding-top: 4em;
	height: 100%;
	width: 90%;
	max-width:1170px;
}

.top_logo {
	width: 100%;
//	float:none;
}

@media screen and (min-width: 768px) {
	.top_logo {
		width: 45%;
		float:left;
		text-align:center;
	//	visibility: hidden;
	}
}

.top_menu {
	padding-top: 1em;
	width:50%;
	float:left;
	text-align: center;
}
.top_menu ul {
	float:left;
	width: 100%;
	-webkit-padding-start: 0px;
	padding-left: 0;
}

.top_menu ul li {
	margin:0;
	padding:0;
	display: inline-block;
	display: inline;  /* IE用 */
	zoom: 1;  /* IE用 */
}
.top_menu ul li img {
	display:inline;
}

/* やや狭いデスクトップ用 */
@media screen and (max-width: 767px) {
	.top_menu {
		margin: 0 auto;
		padding-top: 0;
		width:100%;
		float:none;
	}
	.top_menu li {
		width:25%;
		float:left;
	}

}

.top_news {
	width: 100%;
	margin-bottom: 2em;
	text-align: left;
	float:left;
}

.top_news h3 {
	font-size: 100%;
	margin: 0;
	padding-left: 0.5em;
	line-height: 1.5;
}


/* やや狭いデスクトップ用 */
@media screen and (min-width: 768px) {
	.top_news {
		width: 45%;
	}
}

.top_news_inner {
	max-width: 330px;
	margin: 0 auto;
	font-size: 90%;
	line-height: 1.4 !important;
}
.top_iso {
	width: 100%;
	float:none;
}

/* やや狭いデスクトップ用 */
@media screen and (min-width: 768px) {
	.top_iso {
		width: 50%;
		text-align: left;
		float:left;
	}
}

.top_iso_inner {
	width: 330px;
	margin: 0.5em auto;
	font-size: 90%;
	line-height: 1.4;
	text-shadow: 0 0 5px #ffffff, 0 0 5px #ffffff, 0 0 10px #ffffff;
}





/* 共通ヘッダー */
#siteheader {
	position:fixed;
	top: 0;
	background-color: #4377fc;
	z-index: 11;
	height: 60px;
	width: 100%;
	margin: 0;
	visibility: hidden;
}

#siteheader .box {
	max-width: 1170px; /* bootstrap合わせ */
}




#toggle {
	display: block;
	position: relative;
	width: 100%;
	background: #4377fc;
}
#toggle a{
	display: block;
	padding: 1em 0;
	color: #fff;
	text-decoration: none;
	margin-left: 1em;
}

@media screen and (min-width: 768px) {
	#toggle {
		display: none;
	}
}

#headernav{
	display: none;
}

@media screen and (min-width: 768px) {
	#headernav {
		display: block;
	}
}

#headernav {
	float: right;
//	position:fixed;
//	top: 0;
	list-style-type: none;
	z-index: 20;
//	width: 100%;
	padding: 0;
	margin:0;
//	visibility: hidden;
}

#headernav li{
	width: 100%;
	border-bottom: 1px solid #cccccc;
	padding:0;
	margin-bottom: -9px;
}

@media screen and (min-width: 768px) {
	#headernav li {
		float:left;
		margin:0;
		padding:0;
		display: inline-block;
		width: 70px;
		border-bottom: none;
		-webkit-transition: all 0.5s ease-in-out;
		-moz-transition: all 0.5s ease-in-out;
		-ms-transition: all 0.5s ease-in-out;
		-o-transition: all 0.5s ease-in-out;
		transition: all  0.5s ease-in-out;
	}
}
@media screen and (min-width: 832px) {
	#headernav li {
		width: 80px;
	}
}

@media screen and (min-width: 1055px) {
	#headernav li {
		width: 100px;
	}
}

/* やや狭いデスクトップ用 */
@media screen and (min-width: 768px) {
	#headernav img {
		max-width:100%;
	}
}

#mn01 a,
#mn02 a,
#mn03 a,
#mn04 a,
#mn05 a,
#mn06 a,
#mn07 a,
#mn08 a {
	float: left;
	display: block;
	background-image: none;
	background-color: #eeeeee;
	text-indent: 0;
	width: 100%;
	height: 2em;
	overflow: hidden;
}

@media screen and (min-width: 768px) {
	#mn01 a,
	#mn02 a,
	#mn03 a,
	#mn04 a,
	#mn05 a,
	#mn06 a,
	#mn07 a,
	#mn08 a {
		float: left;
		display: block;
		width: 100%;
		height: 2.5em;
		background-repeat: no-repeat;
		-moz-background-size:cover;
		background-size:cover;
		text-indent:-7777px;
	}
	
	#mn01 a {
		background-image: url(../img/header/mn_info_off.png);
	}
	#mn01 a:hover {
		background-image: url(../img/header/mn_info_on.png);
	}
	#mn02 a {
		background-image: url(../img/header/mn_prod_off.png);
	}
	#mn02 a:hover {
		background-image: url(../img/header/mn_prod_on.png);
	}
	#mn03 a {
		background-image: url(../img/header/mn_tech_off.png);
	}
	#mn03 a:hover {
		background-image: url(../img/header/mn_tech_on.png);
	}
	#mn04 a {
		background-image: url(../img/header/mn_qc_off.png);
	}
	#mn04 a:hover {
		background-image: url(../img/header/mn_qc_on.png);
	}
	#mn05 a {
		background-image: url(../img/header/mn_env_off.png);
	}
	#mn05 a:hover {
		background-image: url(../img/header/mn_env_on.png);
	}
	#mn06 a {
		background-image: url(../img/header/mn_bcp_off.png);
	}
	#mn06 a:hover {
		background-image: url(../img/header/mn_bcp_on.png);
	}
	#mn07 a {
		background-image: url(../img/header/mn_rec_off.png);
	}
	#mn07 a:hover {
		background-image: url(../img/header/mn_rec_on.png);
	}
	#mn08 a {
		background-image: url(../img/header/mn_inq_off.png);
	}
	#mn08 a:hover {
		background-image: url(../img/header/mn_inq_on.png);
	}
}

@media screen and (min-width: 1055px) {
	#mn01 a,
	#mn02 a,
	#mn03 a,
	#mn04 a,
	#mn05 a,
	#mn06 a,
	#mn07 a,
	#mn08 a {
		width: 100px;
		height: 60px;
	}
}

/* コンテンツページ用 */
.container {
	margin: 0 auto;
	padding-top: 60px;
//	width: 90%;
	height: 100%;
	background-color: rgba(255,255,255,0.8);
//	filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#e4ffffff,endcolorstr=#e4ffffff,gradienttype=0);
//	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#e4ffffff,endColorstr=#e4ffffff)";
	zoom:1;
	padding-right: 0;
	padding-left: 0;
	max-width: 1200px;
}

.container h1 {
	margin:0;
	padding:0;
}

.content {
//	padding-left: 1em;
//	padding-right: 1em;
	padding-bottom: 3em;
	height: 90%;
	text-align: left;
	line-height: 1.5;
}

/* デスクトップ用（狭い画面） */
@media screen and (max-width: 767px) {
	.content {
		padding-left: 0.5em;
		padding-right: 0.5em;
		padding-bottom: 7em;
	}
}

.content h2 {
	border-top:#4377fc dotted 1px;
	border-bottom:#4377fc dotted 1px;
	font-size: 140%;
	font-weight: bold;
	margin-bottom: 0.4em;
	letter-spacing: 0.2em;
	background-color: #f5faff;
	padding: 0.2em 0.5em;
	margin-top: 0;
}

.content h3 {
	border-left:#4377fc solid 3px;
	border-bottom:#cccccc dotted 1px;
	font-size: 110%;
	font-weight: bold;
	margin-top: 1em;
	margin-bottom: 0.5em;
	letter-spacing: 0.2em;
	padding-left: 0.5em;
}

.section .scrollable {
	height: 100% !important;
}


/* 企業情報 */

dl.info {
	width: 95%;
	margin: 0 auto;
//	background-color:#ffffff;
	border-bottom: 1px #999999 dotted;
	font-size:90%;
}
.info dt {
	float: left;
	width: 7em;
	padding: 0.7em 0 0.5em 0;
	text-indent: 1em;
	border-top: 1px #999999 dotted;
}
.info dd {
	margin: 0 0 0 7em;
	padding: 0.5em 0 0.5em 0;
	border-top: 1px #999999 dotted;
//	background-color:#eeeeee;
	line-height:1.7;
	letter-spacing: 0em;
}


.content table {
	border-collapse: collapse;
	width:100%;
//	background-color:#ffffff;
}
.content th {
	border-bottom: #e3e3e3 1px dotted;
	text-align: center;
	padding: 0.3em;
	font-weight: bold;
	background-color:#4377fc;
	color: #ffffff;
	width:9em;
}
.content tr {
	background: #f5faff;
}
.content td {
	/*border-bottom: #e3e3e3 1px dotted;*/
	border-bottom: 1px dotted;
	text-align: center;
	padding: 0.3em;
}
.content tr:hover {
    background: #a0d8ef;
}


.submenu {
	width:100%;
	text-align:left;
	margin-bottom: 0.5em;
}

.submenu .s_ttl{
	float: none;
	max-width: 100%;
}

@media screen and (min-width: 768px) {
	.submenu .s_ttl{
		float: left;
		margin: 0.5em 1em 0.5em 1em;
	}
}

.submenu ul	{
	margin:0;
}

/* デスクトップ用（狭い画面） */
@media screen and (max-width: 767px) {
	.submenu ul	{
		margin:0 1em;
	}
}

.toggle_sub {
	display: none;
}

.submenu .tilelist {
	padding-top: 1.2em;
}

.submenu .tilelist li {
	margin: 0.1em 0.4em 0.3em 0.1em;
	padding: 0.1em 0 0.1em 0.1em;
//	font-size: 90%;
	list-style-type:none;
	color: #333;
	border-bottom: 3px solid #4377fc;
	float:left;
	min-width:9em;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all  0.5s ease-in-out;
}

.submenu .tilelist a {
	display: block;
	text-decoration: none;
	line-height: 1.2;
}

	
.tilelist li:hover {
	background-color: #fef263;
	border-bottom: 3px solid #f8b500;
}

.tilelist li:hover > a:hover {
	color: #f8b500;
}
.tilelist li:hover > a:hover > .fa {
	color: #f8b500;
}

/* デスクトップ用（狭い画面） */
@media screen and (max-width: 767px) {
	.submenu .tilelist {
		padding-top: 0;
	}

	.toggle_sub {
		display: block;
		position: relative;
		width: 100%;
		background: #CEE3F6;
	}
	.toggle_sub a{
		display: block;
		padding: 0.5em 0 0.5em 1em;
		color: #fff;
		text-decoration: none;
	}

	.submenu .tilelist {
		display: none;
	}

	.submenu .tilelist li {
		width: 90%;
//		height: 1em;
		background-image: none;
		background-color: #eeeeee;
		overflow:hidden;
		margin:0;
		padding: 0.8em 1em;
		border-bottom: 1px solid #cccccc;
		float:none;
		font-size:100%;
	}

	@media screen and (orientation:landscape) {
		.submenu .tilelist li {
			//padding: 0.5em 1em;
		}
	}

}

@media screen and (min-width: 768px) {
	#section0,
	#section1,
	#section2,
	#section3,
	#section4,
	#section5,
	#section5a,
	#section6,
	#section6a,
	#section7{
		background-size: cover;
	}
	#section0{
		background-image: url(../img/bg/top_bg.jpg);
	}
	#section1{
		background-image: url(../img/bg/bg_01.jpg);
	}
	#section2{
		background-image: url(../img/bg/bg_02.jpg);
	}
	#section3{
		background-image: url(../img/bg/bg_03.jpg);
	}
	#section4{
		background-image: url(../img/bg/bg_04.jpg);
	}
	#section5{
		background-image: url(../img/bg/bg_05.jpg);
	}
	#section5a{
		background-image: url(../img/bg/bg_05.jpg);
	}
	#section6{
		background-image: url(../img/bg/bg_06.jpg);
	}
	#section6a{
		background-image: url(../img/bg/bg_06.jpg);
	}
	#section7{
		background-image: url(../img/bg/bg_07.jpg);
	}
}

.slide {
	height: 100%;
//	display:block;
}

#sitefooter {
	width: 100%;
	position:fixed;
	bottom: 0;
	background-color: rgba(67,119,252,0.8);
}

#sitefooter .box {
	zoom:1;
	overflow:hidden;
	margin: 0 auto;
	padding-top: 0.2em;
	text-align: left;
	color: #f3f3f3;
	font-size: 50%;
	max-width: 1170px;
}
#sitefooter .box:after {
	content:"";
	display:block;
	clear:both;
	height:0.01px;
}

@media screen and (orientation:landscape) {
	#sitefooter {
		//display: none;
	}
}

/* やや狭いデスクトップ用 */
@media screen and (max-width: 992px) {
	.controlArrow.prev {
		left: 5px;
		border-width: 38.5px 15px 38.5px 0;
	}
	.controlArrow.next {
		right: 5px;
		border-width: 38.5px 0 38.5px 15px;
	}
}

@media screen and (max-width: 767px) {
	.controlArrow.prev {
		display: none;
	}
	.controlArrow.next {
		display: none;
	}
}

.slimScrollDiv {
	height: 100% !important;
//	padding-bottom: 1em;
}

.fancybox-skin {
	padding: 0.5em;
}

.fancybox-title a:link,
.fancybox-title a:visited { color: #ffffff; }
.fancybox-title a:hover   { color: #ffffff; }
.fancybox-title a:active  { color: #ffffff; }

@media screen and (max-width: 767px) {
	.pc_only {
		display: none;
	}
}

article {
	padding: 0 1em;

}

p.caption {
	margin: 0 5px;
	position:relative;
	top: -36px;
	color: #ffffff;
	background-color: rgba(0,0,0,0.5);
}

p.prd_caption {
	margin: 0 5px;
	position:relative;
	top: -26px;
	color: #ffffff;
	background-color: rgba(0,0,0,0.5);
	font-size: 90%;
}


.row h3 {
	margin:0.5em 1em;
}

.row p.desc {
	margin:0 1em 1em 1em;
}

#prd_base {
	display: block;
//	max-width:500px;
	-moz-background-size:cover;
	background-size:cover;
}
#prd01a,
#prd02a,
#prd03a,
#prd04a,
#prd05a,
#prd06a,
#prd07a {
	max-width:150px;
	-moz-background-size:cover;
	background-size:cover;
}

@media screen and (min-width: 768px) {
	#prd01a,
	#prd02a,
	#prd03a,
	#prd04a,
	#prd05a,
	#prd06a,
	#prd07a {
		max-width:120px;
		-moz-background-size:cover;
		background-size:cover;
	}
}

@media screen and (min-width: 992px) {
	#prd01a,
	#prd02a,
	#prd03a,
	#prd04a,
	#prd05a,
	#prd06a,
	#prd07a {
		max-width:150px;
		-moz-background-size:cover;
		background-size:cover;
	}
}

#prod_nav {
	list-style-type: none;
}


#prod_nav li {
	float:left;
}
