@charset "utf-8";
/* CSS Document */

/* -----------------------------------------------
 *  	         base style setting
 * ----------------------------------------------- */



/* =========== Reset =========== */

/* =========== font =========== */

*{ margin: 0;padding: 0;}

html {
  font-family: 游明朝, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 ProN W3, ヒラギノ明朝 Pro W3, HiraMinProN-W3, HG明朝E, Hiragino Mincho ProN, Hiragino Mincho Pro, HGS明朝E, ヒラギノ明朝 Pro W6, ＭＳ Ｐ明朝, MS PMincho, MS 明朝, serif;
	font-size: 14px;
	line-height: 1.8;
    color: #000;
}

a {
	text-decoration: underline;
	-webkit-transition: all .3s;
	transition: all .3s;
}

a, a:visited {
	color: #321021;
}

a:hover {
	color: #F39;
}

a.over:hover img {
	opacity: .5;
	-webkit-opacity: .5;
	-moz-opacity: .5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
 
a.over img {
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}

ul, ol {
	list-style: none;
}

em, address {
	font-style: normal;
}

img {
	vertical-align: middle;
	max-width: 100%;
	border: none;
}

body {
	margin: 0;
	padding: 0;
  font-family: 游明朝, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 ProN W3, ヒラギノ明朝 Pro W3, HiraMinProN-W3, HG明朝E, Hiragino Mincho ProN, Hiragino Mincho Pro, HGS明朝E, ヒラギノ明朝 Pro W6, ＭＳ Ｐ明朝, MS PMincho, MS 明朝, serif;
	font-size: 14px;
	line-height: 1.8;
	color: #000;
}


/* =========== media query setting =========== */

/* ==== width 1050px以下の場合 ==== */
@media screen and (max-width : 1049px){
	.contentMax { padding: 0 10px; }
	
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	.contentMax { max-width: 1050px; margin: 0 auto; }
}


article.main_arti{
	height:90px;
	}

/* 768px */
@media only screen and (max-width: 48em) {
article.main_arti{
	height:70vh;
	}
}


/* =========== pageBase =========== */

#pageBase {
	width: 100%;
	text-align: center;
}



/* =========== headerArea =========== */
#headerArea {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#headerArea {
	max-width: 100%;
	background-color: #fff;
}
}

#headerArea:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: "";
}

#headerArea h1 {
	margin: 0;
	padding: 20px 0 0;
	font-size: 0;
	line-height: 0;
}

/* ==== width 767px以下の場合 ==== */
@media screen and (max-width : 767px){
	#headerArea h1 {
		position: fixed;
		left: 0;
		top: 0;
		margin: 0;
		padding: 3px 0 0 5px;
		font-size: 0;
		line-height: 0;
		z-index: 900;
	}
	#headerArea h1 img {
		height: 26px;
	}
}

/* ==== width 767px以下の場合 ==== */
@media screen and (max-width : 767px){
	#headerArea #nav_onlineshop { display: none; }
}

#headerNav {
	width: 100%;
	margin: 0 auto;
	padding: 15px 0 15px;
	position: fixed;
    top: 0;
	overflow: hidden;
	background-color: #fff;
	z-index: 998;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

#A01,
#A02,
#A03,
#A04,
#A05,
#A06,
#A07,
#A08,
#A09{
    margin-top: -50px;
    padding-top: 50px;
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1200px){
	#headerNav { max-width: 100%; }
}


/* ==== width 1050px以上の場合 ==== */
@media screen and (max-width : 1200px){
	#headerNav #menuL li {
		padding: 0;
		margin: 10px 0 10px;
		width: 25%;
	}
}

/* ==== width 767px以下の場合 ==== */
@media screen and (max-width : 767px){
	#headerNav { display: none; }
}

#headerNav:after {
	clear: both;
	display: block;
	content: "";
	height: 0;
	visibility: hidden;
}

#headerNav ul {
	margin: 0;
	padding: 0;
	float: left;
	left: 50%;
	position:relative;
	list-style: none;
}

#headerNav ul li {
	margin: 0 0 0 70px;
	padding: 0;
	float: left;
	left: -50%;
	position:relative;
	font-size: 0;
	line-height: 0;
}

#headerNav ul li:first-child {
	margin: 0;
}

#pageBase.marginTop {
    margin-top: 50px; 
}

:root #headerNav.fixed {
	left: 50% \0/; /* IE9 */
	margin-left: -50% \0/; /* IE9 */
}


#headerNav_SM {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

/* ==== width 768px以上の場合 ==== */
@media screen and (min-width : 768px){
	#headerNav_SM { display: none; }
}

#headerNav_SM:after {
	clear: both;
	display: block;
	content: "";
	height: 0;
	visibility: hidden;
}

#menu {
	display: block;
	height: auto;
	margin: 0;
	padding: 0;
}

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

#menu li a {
	padding: 0 20px 10px;
	border-top: none;
	border-right: none;
	background: none;
	color: #555555;
	display: inline-block;
	margin: auto;
	text-shadow: -1px 1px rgba(255, 255, 255, 0.8);
}

#menu li a:hover {
	background: none;
	color: #97C1F3;
}

#menu li a:active {
	color: #5687F8;
}

#menu {
	display: none;
}

.slickmenuTop {
    display:block;
    position: fixed;
    width: 99%;
	padding: 5px;
    top: 0;
    z-index: 100;
}

/* ==== width 768px以上の場合 ==== */ 
@media screen and (min-width : 768px) {
	#menu {
		display: block;
	}
	.slicknav_menu {
		display: none;
	}
	#navi {
		z-index: 100;
	}
	.menuTop {
		background: #fff;
		border-bottom: 1px solid #ccc;
		-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
		-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
		width: 100%;
		max-width: 960px;
		opacity: .90;    
	}
}


/* =========== contentArea =========== */
#contentArea {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	background-color: #FFFFFF;
}
@media screen and (min-width:768px) and ( max-width:1200px) {
}

/* =========== mainArea =========== */
#mainArea {
	
	clear: both;
	width: 100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 0;
	display: block;
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#mainArea { max-width: 1050px; }
}

/* ==== width 1050px以下の場合 ==== */
@media screen and (max-width : 1049px){
	#mainArea { width: 100%; margin: 0 auto; }
	
}


/* =========== asideArea =========== */
#asideArea {
	width: 100%;
	margin: 0 auto;
	padding: 80px 0 0;
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#asideArea { max-width: 1050px; }
}

#asideArea #asideLink {
	margin: 0;
	padding: 0;
	line-height: 0;
	font-size: 0;
	text-align: center;
}


/* =========== footerArea =========== */
#footerArea {
	width: 100%;
	margin: 0;
	padding: 10px 0 0;
	background: url(/common/img/bg_footer.png) repeat-x left bottom;
}

#footerContent {
	margin: 0 auto;
	padding: 20px 0 50px;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#footerContent { max-width: 1050px; }
}

/* ==== width 768px以下の場合 ==== */ 
@media screen and (max-width : 768px) {
	#footerContent { padding: 20px 10px 50px 10px; }
}

#footerContent:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: "";
}

#footerContent address {
	display: block;
	float: left;
	text-align: left;
	font-size: 12px;
}

/* ==== width 768px以下の場合 ==== */ 
@media screen and (max-width : 768px) {
	#footerContent address { margin-bottom: 20px; }
}

#footerContent address em {
	font-size: 16px;
}
	
#footerContent #footerLink {
	float: right;
	text-align: right;
}

#footerContent #footerLink ul {
	margin: 0 0 10px;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

#footerContent #footerLink ul:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: "";
}

#footerContent #footerLink ul li {
	display: inline;
	background: url(../img/mark_001.svg) no-repeat left 4px;
	margin: 0 0 0 10px;
	padding: 0 0 0 15px;
}

#footerContent #footerLink p {
	font-size: 12px;
  font-family: 游明朝, 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 ProN W3, ヒラギノ明朝 Pro W3, HiraMinProN-W3, HG明朝E, Hiragino Mincho ProN, Hiragino Mincho Pro, HGS明朝E, ヒラギノ明朝 Pro W6, ＭＳ Ｐ明朝, MS PMincho, MS 明朝, serif;
}


/* =========== pageTop =========== */
#pageTop {
	bottom: 0px;
	position: fixed;
	right: 30px;
}

#pageTop a:hover img {
	opacity: .8;
	-webkit-opacity: .8;
	-moz-opacity: .8;
	filter: alpha(opacity=80);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=80)"; /* IE 8 */
}
 
#pageTop a img {
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	-ms-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}


/* =========== loading =========== */
#loading {
}