@charset "UTF-8";

/*----------------------------------------------------
	☆Reset
----------------------------------------------------*/

html {
	background-color:#FFF;
	font-size: 62.5%; /* sets the <strong>base</strong> font to 10px for easier math */
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
ul,
ol,
li,
dl,
dt,
dd,
p,
img {
	margin: 0;
	padding: 0;
}

body {
	background-color:#fff;
	font-family: 'Open Sans', 	Arial, Roboto, 游ゴシック体, 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
		/*
	  font-family:"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;	
	*/
	color:#333;
	font-size: 18px;
	font-size: 1.8rem; /* sets the default sizing to make sure nothing is actually 10px */
	line-height: 1;
	letter-spacing: 0.02em;
	font-feature-settings : "halt" 1;
	font-weight:500;
/*	min-width:1000px;*/
}

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

#fancybox-wrap,
#fancybox-wrap *,
#fancybox-tmp,
#fancybox-loading {
	-webkit-box-sizing: content-box!important;
	-moz-box-sizing: content-box!important;
	-o-box-sizing: content-box!important;
	-ms-box-sizing: content-box!important;
	box-sizing: content-box!important;
}

a,
a:link,
a:hover,
a:focus {
	color: #333;
	text-decoration: none;
	cursor: pointer;
	outline: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;}

a:hover {
	text-decoration: none;
	opacity: 0.8;
}

ul,
ol {
	list-style-type: none;
}

::selection {
	background-color: #888;
	color: #FFF; /* Safari */
}

::-moz-selection {
	background-color: #888;
	color: #FFF; /* Firefox */
}

p{
	line-height: 2.0;
	margin-bottom: 1.5em;
}

/*----------------------------------------------------
	☆Crearfix
----------------------------------------------------*/


.clearfix:after {
	content:".";
	height:0;
	clear:both;
	display:block;
	font-size:0.1em;
	line-height:0;
	visibility:hidden;
}

.clearfix {
	display:inline-block;
	min-height:1%;
}

/* Hides from IE-mac \*/
* html .clearfix {height:1%;}
/* End hide from IE-mac */




/*----------------------------------------------------
	☆br clear
----------------------------------------------------*/


br.clear_noie, 
div.clear_noie {
	display:inline !important;
	display:none;
	clear:both;
	line-height:0px;
}

br.clear_all {
	clear:both;
	line-height:0px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
br.clear_noie  {
	display:block!important;
	content: " ";
}
}


/*----------------------------------------------------
	☆topcontrol
----------------------------------------------------*/

#topcontrol{
	z-index: 99999999999999;
}

#topcontrol a {
	background:url(../cmn_js/scrolltop/scrollup.png) center center no-repeat #000;
	background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat\9 #000; /* IE8 */
	*background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat #000; /* IE7 */
	_background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat #000; /* IE6 */
	display:block;
	height:60px;
	width:60px;
	filter: alpha(opacity=70) !important;
	opacity:0.7 !important;
	
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

#topcontrol a:hover {
	filter: alpha(opacity=10) !important;
	opacity:1 !important;
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
 	-ms-transform: scale(1.2);
 	-o-transform: scale(1.2);
 	transform: scale(1.2);
}



/*----------------------------------------------------
	☆opacity Hack
----------------------------------------------------*/

.roBtn:hover {
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

/* IE8 */

html>/**/body .roBtn:hover {
	display /*\**/: inline-block\9;
	zoom /*\**/: 1\9;
}
 
/* 新旧Firefox */
.roBtn:hover, x:-moz-any-link {
background: #fff;
}
.roBtn:hover, x:-moz-any-link, x:default {
background: #fff;
}




/*----------------------------------------------------
	☆base contents
----------------------------------------------------*/



/*-- HEADER --*/


/*-- pcHeader --*/

div#pcHeader {
	position: fixed;
	background:#fff;
	z-index:100;
	font-weight: bold;
	top: 0;
	left:0;
	width: 100%;
	height:90px;
	-webkit-transition:0.5s;
	-moz-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
}

div#pcHeader h1.logo {
	position:absolute;
	top:20px;
	left:20px;
}

div#pcHeader nav {
	position:absolute;
	top:50px;
	right:180px;
	font-size: 18px;
	font-size: 1.8rem;
	letter-spacing: 0.02em;
}

div#pcHeader nav ul li {
	display:inline-block;
	margin-left:20px;
}

div#pcHeader nav ul li a {
	padding:0 0 15px 0;
	position:relative;
	display: inline-block;
}

div#pcHeader nav ul li a:after{
	content:'';
	width:0%;
	transition:all 0.3s ease;
	left:50%;
}

div#pcHeader nav ul li a:before{
	content:'';
	width:0%;
	transition:all 0.3s ease;
	left:50%;
}

div#pcHeader nav ul li a:hover {
	color: #D01119;
}

div#pcHeader nav ul li a:hover:after{
	content:'';
	position:absolute;
	bottom:4px;
	left:50%;
	background:#D01119;
	height:3px;
	width:50%;
}

div#pcHeader nav ul li a:hover:before{
	content:'';
	position:absolute;
	bottom:4px;
	left:0px;
	background:#D01119;
	height:3px;
	width:50%;
}




div#pcHeader .headerContact {
position:absolute;
top:0;
right:0;
width:130px;
display: block;
background:#D01119;
color:#FFF;
text-align:center;
line-height:90px;
}




/*-- spHeader --*/

.cd-main-content {
	display: none;
}


header#spHeader {
	display: none;
}


.cd-main-nav {
	line-height: 1;
	padding: 0;
	background: transparent;

}

#telList {
	position: absolute;
	top: 15px;
	right: 180px;
}

#telList li {
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0;
	margin-left: 2em;
}


/*-- GNAV --*/

#gNav {
	margin:0 auto;
	width:1000px;
}

#gNav ul {
	width:1000px;
}

#gNav ul li {
	float:left;
	text-align:center;
	width:20%;
}

#gNav ul li a {
	color:#448CBC;
	display:block;
	padding:10px 0;
}

#gNav ul li.li1 a { background-color:#F9F9F9;}
#gNav ul li.li2 a { background-color:#F9F9F9;}
#gNav ul li.li3 a { background-color:#F9F9F9;}
#gNav ul li.li4 a { background-color:#F9F9F9;}
#gNav ul li.li5 a { background-color:#F9F9F9;}



/*-- MV --*/

#mv {
	background-color:#eee;
	width:100%;
	margin-top:90px;
}

/* デバイスの横幅が画像サイズを超えた場合 */
@media only screen and (min-width: 2000px) {
.mv {
	background-size:100% auto;
}
}

#mv div.mvInr {
	display: table;
	margin: 0 auto;
	max-width: 1000px;
	width: 100%;
}

#mv div.mvInr h1.mvHead {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-size: 3.8rem;
	line-height: 0.7;
	letter-spacing: 0.2em;
	padding: 1.4em 0;
}

#mv div.mvInr h1.mvHead.productDetail {
	font-size: 3.0rem;
	padding: 2.22em 0;
}

#mv div.mvInr h1.mvHead span {
	color: #E32B37;
	display: inline;
	line-height: 0.9;
	padding: 1px 6px 0 10px;
	margin: 0;
	letter-spacing: 0;
	font-weight: 700;
}

#mv div.mvInr h1.mvHead small {
	display: inline;
	font-size: 1.8rem;
	padding: 3px 0;
	letter-spacing: 0.02em;
	margin: 0;
	
}





/*-- BREADCHUMBS --*/


#breadChumbs {
	margin: 10px 0;
	padding: 10px 30px;
	width:100%;
	text-align:right;
}

#breadChumbs p {
	font-size: 1.2rem;
	margin: 0 auto;
	width: 100%;
}

#breadChumbs p span {
	position: relative;
	padding: 0 1.4em 0 0;
}

#breadChumbs p span:before{
	position: absolute;
	top: -1px;
	right: 0;
	content: "｜";
	width: 1em;
	height: 1em;
}


#breadChumbs p span:last-child:before {
	display:none;
}


#breadChumbs p span a {
	color: #106685;
}

#breadChumbs p span.currentPoint {
	font-weight: bold;
}





/*-- CONTENTS --*/

#contents {
	margin:0 auto;
	width:100%;
}







/*-- FOOTER --*/

#footer {
	background-color:#fff;
	margin-top:0;
	width:100%;
}

#categoryNav {
	webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#categoryNav ul {
	background-color: #000;
	display: table;
	width: 100%;
	overflow: hidden;
}
#categoryNav ul li {
	display: table-cell;
	overflow: hidden;
	vertical-align: top;
}

#categoryNav ul.clm3List li {
	width: 33.3%;
}

#categoryNav ul li a {
	background-position: center center;
	background-repeat: no-repeat;
	display: block;
	height: 400px;
	vertical-align: middle;
	text-align: center;
	text-decoration: none;
	width: 100%;
	position: relative;
	overflow: hidden;
	transition: 2s;
	-moz-transform: scale(1.02);
	-webkit-transform: scale(1.02);
	-ms-transform: scale(1.02);
	transform: scale(1.02);
}
#categoryNav ul li a:after {
	background: rgba(0,35,64,0.6);
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	width: 100%;
	transition: 0.5s;
}
#categoryNav ul li a div.tbl {
	display: table;
	height: 400px;
	width: 100%;
}
#categoryNav ul li a div.tblCell {
	color: #EEE;
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: 300;
	display: table-cell;
	vertical-align: middle;
	height: 400px;
	text-align: center;
	width: 100%;
	position: relative;
	z-index: 11;
	transition: 0.5s;
	/*--
	text-shadow: 1px 2px 1px rgba(0,0,0,0.5);
	 --*/
}
#categoryNav ul li a div.tblCell span {
	letter-spacing: 0.15em;
	font-weight: bold;
	font-size: 2.6rem;
}
#categoryNav ul li a div.tblCell span.englishTl {
	font-size: 1.8rem;
	letter-spacing: 0;
	font-weight: 700;
	border: #fff solid 1px;
	padding: 0.6em 0.3em;
	min-width: 180px;
	max-width: 250px;
	display: block;
	margin: 0 auto 1em;
}

#categoryNav ul li a:hover {
	-moz-transform: scale(1.05);
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}
#categoryNav ul li a:hover:after, #categoryNav ul li.current a:after {
	background: rgba(32,58,72,0.25);
}











#footer div.ftInr {
	margin:0 auto;
	width:1000px;
}

#footer div.ftInr .ftTagline {
	color:#FFF;
	font-size:1.1rem!important;
	font-weight:normal;
}


#footer #footerBtm {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
	padding: 3.5em 0;
	border-bottom: #DADCD6 1px solid;
}

#footer #footerBtm div {
	float: left;
	width: 16.6%;
}

#footer #footerBtm div dl {
	font-size: 14px;
	font-size: 1.4rem;
	letter-spacing: 0;
}

#footer #footerBtm div dl dt {
	font-weight: bold;
	margin-bottom: 1em;
}

#footer #footerBtm div dl dd {
	margin-bottom: 1em;
	position: relative;
	padding-left: 1.0em;
}

#footer #footerBtm div dl dd:before{
	position: absolute;
	top: 0px;
	left: -3px;
	content: "─";
	width: 1em;
	height: 1em;
}


#footer #footeInfo {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
	padding: 3.5em 0 3em;
}

#footer #footeInfo .ftInfoLeft {
	float: left;
	width: 40%;
	font-size: 1.4rem;
}

#footer #footeInfo .ftInfoLeft .ftAddress {
	font-size: 13px;
	
}

#footer #footeInfo .ftInfoLeft .ftAddress span {
	font-size: 20px;
	font-size: 2.0rem;
	margin-right: 0.2em;
}


#footer #footeInfo .ftInfoRight {
	float: right;
	width: 40%;
	text-align: right;
	font-size: 13px;
	font-size: 1.3rem;
}

#footer #footeInfo .ftInfoRight ul li {
	position: relative;
	top: 4px;
	left: 0;
	padding: 0 1.2em 0.6em 0;
	display: inline-block;
	margin: 0 auto;
}

#footer #footeInfo .ftInfoRight ul li:first-child:before {
	position: absolute;
	top: -1px;
	right: 0;
	content: "|";
	width: 1em;
	height: 1em;
}



