@charset "utf-8";


@media screen and (max-width: 1200px)  {
body { min-width: 100%; letter-spacing: 0; }
}

@media screen and (max-width:750px){
body { min-width: 100%; letter-spacing: 0; }
}

img { border:0; vertical-align: bottom; }

.clear {
	clear: both;
}
*:after {
  display:block;
  clear:both;
} /* この記述は固定です */

/* End hide from IE-mac */


a         { outline:none; }
a:link,
a:visited {	color: #000000;	text-decoration: none; }
a:hover   { text-decoration: none; }
a:active  { color: #594d41; text-decoration: none; }



/* ヘッダ
------------------------------------------------*/
header { position: relative; background: #666666;}
header::before {content: ""; position:absolute; border-top: 25px solid #000; width: 100%; height: 25px;}

@media screen and (min-width:901px){
	h1#logo { position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; width:200px; }
	h1#logo::before {content: ""; position: absolute;top: 0;right: 0;bottom: 0;left: -50px;z-index: -1; width: 200px; transform: rotate(360deg);border-top: 50px solid #000;border-left: 50px solid transparent;border-right: 50px solid transparent;}	
}
@media screen and (max-width:900px){
	header {position:relative;z-index: 5; width: 100%; background: #ffffff;}
	header::before {content: none;}
	h1#logo { position: relative; text-align: center; padding: 3px 0; box-shadow: 0 3px 5px 0 rgba(0, 0, 0, .2); font-size: 12px; }
	h1#logo::before {content: none;}
}

/* ハンバーガーメニュー設定
--------------------------------------*/
@media screen and (min-width:901px){
	.hamburger {display : none;}
	
}
@media screen and (max-width:900px){
	.hamburger {display : block;position:absolute;z-index : 3;left : 10px;top : 4px;width : 50px;height: 50px; cursor: pointer; text-align: center;border-right: 1px solid #000;}
	.hamburger span {display:block;position:absolute;width:30px;height:2px;left:6px;background:#555;
	  -webkit-transition: 0.3s ease-in-out;
	  -moz-transition:0.3s ease-in-out;
	  transition:0.3s ease-in-out;}
	.hamburger span:nth-child(1) {top: 15px;}
	.hamburger span:nth-child(2) {top: 25px;}
	.hamburger span:nth-child(3) {top: 35px;}
	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {top:25px;left:6px;
	  -webkit-transform: rotate(-45deg);
	  -moz-transform   : rotate(-45deg);
	  transform        : rotate(-45deg);}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {top: 25px;
	  -webkit-transform: rotate(45deg);
	  -moz-transform   : rotate(45deg);
	  transform        : rotate(45deg);}
}


/* sub_nav設定
--------------------------------------*/
@media screen and (min-width:901px){
	#sub_nav { position: relative; padding: 30px 14px 0; text-align: right; margin: auto; width: 900px; overflow: hidden;}
	#sub_nav li { position: relative; width: 155px; float: left; text-align: center; font-size: 12px; background-color:#fff; margin-left: 5px;transform: skewX(45deg);overflow: hidden;}
	#sub_nav li:nth-of-type(3){ margin-left: 232px; }
	#sub_nav li:nth-of-type(3),
	#sub_nav li:nth-of-type(4){ transform: skewX(-45deg);}
	#sub_nav li a { position: relative;display:block;font-size: 12px;z-index: 1;transform: skewX(-45deg);}
	#sub_nav li:nth-of-type(3) a,
	#sub_nav li:nth-of-type(4) a{ transform: skewX(45deg);}
	#nav { margin: auto; width: 100%; }

	#sub_nav li a::before {
		content: "";display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;background: rgba(205,92,92,.9);
		transform: scaleX(0);transition: transform .3s;}
	#sub_nav li a:hover::before {
		transform: scaleX(1.5) skewX(45deg);}
}
/*@media screen and (max-width:900px){
	ul#sub_nav {position: absolute;z-index:2;top:455px;left:0;color: #000;background: rgba(0,0,0,0.70);
		transform: translateX(-100%);transition: all 0.6s;width: 70%;}
	ul#sub_nav li {padding: 0;width: 100%;border-bottom: 1px solid #fff;}
	ul#sub_nav li:hover{ background: rgba(0,0,0,0.90);;}
	ul#sub_nav li a {display: block; color: #fff; padding: 0.2em 1em;}
	ul#sub_nav.active {transform: translateX(0%);}
}*/
/* メインナビゲーション
------------------------------------------------*/
@media screen and (min-width:901px){
	nav {max-width: 850px; margin: auto;}
	nav ul       { overflow: hidden;margin: auto; }
	nav ul li      { float: left; padding: 0; font-size: 1.6rem; width:95px; height: 75px; margin-right:10px;}
	nav ul li>a    { display: block; position: relative; font-weight: bold;text-align: center; padding-top: 46px;}
	nav ul li>a:link,
	nav ul li>a:visited { color: #fff; }
	nav ul li ul { display: none;}
	nav ul li:nth-of-type(1) { background: url("../images/header/menuicon_1.png") center no-repeat; }
	nav ul li:nth-of-type(2) { background: url("../images/header/menuicon_2.png") center no-repeat; }
	nav ul li:nth-of-type(3) { background: url("../images/header/menuicon_3.png") center no-repeat; }
	nav ul li:nth-of-type(4) { background: url("../images/header/menuicon_4.png") center no-repeat; }
	nav ul li:nth-of-type(5) { background: url("../images/header/menuicon_5.png") center no-repeat; }
	nav ul li:nth-of-type(6) { background: url("../images/header/menuicon_6.png") center no-repeat; letter-spacing: -1.2px; }
	nav ul li:nth-of-type(7) { background: url("../images/header/menuicon_7.png") center no-repeat; }
	nav ul li:nth-of-type(8) { margin-right:0; }
	nav ul li:nth-of-type(8) a { padding-top: 5px; }
}
@media screen and (max-width:900px){
	nav {position: absolute;z-index:1000;top:58px;left : 0;color: #000;background: rgba(0,0,0,0.70);
		transform: translateX(-100%);transition: all 0.6s;width: 70%;height: 80vh; overflow: auto; -webkit-overflow-scrolling: touch;}
	nav li {padding: 0;width: 100%;font-weight: bold;font-size:18px;}
	nav>ul>li:nth-of-type(1),
	nav>ul>li:nth-of-type(7) { display: none; }
	nav>ul#sub_nav>li:nth-of-type(1) { display: block; }
	nav li a {display: block; color: #fff; padding: 0.5em 1em;border-bottom: 1px solid #fff;}
	nav li ul {border-bottom: 1px solid #fff;}
	nav li li a {display: block; color: #fff; padding: 0.5em 1em;border-bottom: none;font-size:15px;}
	nav li a:hover{ background: rgba(0,0,0,0.90);}
	nav li a:link {color: #fff;}
	nav li a:visited {color: #fff;}
	/* このクラスを、jQueryで付与・削除する */
	nav.active {transform: translateX(0%);}
	
	nav ul#sub_nav {position: relative; padding-bottom: 50px;}
	nav ul#sub_nav li a {display: block; color: #fff; padding: 0.5em 1em; font-size: 14px;}
}

.fixed      { position: fixed; top: 0; background: rgba(255,255,255,1.00); border-bottom: 1px solid #dddddd; z-index: 100; padding: 10px 0 0; }
.addPadding { padding-top: 72px; }

/*@media screen and (max-width:900px){
#menu-btn { display: block; cursor: pointer; width: 48px; margin: auto auto 20px; color: #fff; text-align: center; }
#menu-btn .close { display: none; }
#menu-btn.menu-open .open { display: none; }
#menu-btn.menu-open .close { display: block;}
}*/
p.boxSearch {position:fixed;top:30px;right:30px;}
@media screen and (max-width:900px){
	p.boxSearch {position:fixed;top:15px;right:15x;}
}


/* 製品情報
------------------------------------------------*/
#slide_itemInfo {position:absolute; width: 100%;z-index: 1000;}
#slide_itemInfo div {position: relative;text-align: center;background: #000;color: #fff; display: none;}
#slide_itemInfo span{display: block;height: 20px; background-color: #000;}
#slide_itemInfo p { position: relative; top: 0; left: 0; right: 0; margin: 0 auto; width:120px; text-align: center;color: #fff; cursor: pointer;}
#slide_itemInfo p::before {content: ""; position: absolute;top: 0;right: 0;bottom: 0;left: -50px;z-index: -1; width: 120px; transform: rotate(360deg);border-top: 45px solid #000;border-left: 45px solid transparent;border-right: 45px solid transparent;}
#slide_itemInfo p::after {content: url("../images/header/btn_slide_itemList.gif"); text-align: center; }
#slide_itemInfo p.open::after {transform: rotate(-180deg); }

ul.top_itemList {position: relative; overflow: hidden; width: 900px; margin:auto auto 30px;}
ul.top_itemList li { position: relative; border: 2px solid #000; width: 200px; float: left; margin-right: 30px; margin-bottom: 10px; text-align: center; overflow: hidden;}
ul.top_itemList li::before { content: url("../images/bg/bg_mark_sankaku.png"); position: absolute; top:-5px; left:5px;}
ul.top_itemList li a { display: block; line-height: 300%; font-weight: bold;}
ul.top_itemList li.bg_gray a { background-color:#aaa;}
ul.top_itemList li:nth-of-type(4n) {margin-right: 0;}
ul.top_itemList li a:hover {color: #fff;}

#slide_itemInfo ul.top_itemList {margin:auto; padding: 40px 0 20px;}
#slide_itemInfo ul.top_itemList li {border: 2px solid #fff; background-color: #fff;}
@media screen and (max-width:900px){
#slide_itemInfo {display: none;}
}


/* フッター
------------------------------------------------*/
p.copy_license {font-size: 10px; margin-top: 100px;width:900px;margin-left: auto;margin-right: auto;}
@media screen and (max-width:900px){
	p.copy_license {width:100%; padding: 0 20px;}
}
footer {position: relative; margin: 40px auto 0; background-color: #CFCFCF; border-top: 5px solid #000; line-height: 180%;}
body#support footer {margin: 0 auto;}
footer section { width: 900px; margin: 50px auto 15px; overflow: hidden;}

footer section div:nth-of-type(1) { width:25%; float: left; }
footer.contact_footer section div:nth-of-type(1) { width:auto; float: none; text-align:center;margin-bottom:40px; }
footer section dl:nth-of-type(1)  { width:20%; float: left; }
footer section dl:nth-of-type(2)  { width:20%; float: left; }
footer section ul                 { width:12%; float: left; border-right: 2px solid #b7b8b8; margin-right: 5px;}
footer section div:nth-of-type(2) { width:22%; float: left; }

footer section div:nth-of-type(1) p span,
footer section dt {font-weight: bold;}
footer section dd {position: relative; padding-left: 28px;}
footer section dd::before {content: ">";position: absolute;left:13px;}
footer section ul li {font-weight: bold; margin-bottom: 25px;}

footer section div:nth-of-type(2) a { display: block;position:relative; margin-left: 17%; }
footer section div:nth-of-type(2) a::before{content: url("../images/footer/bg_yajirusi_footer.gif"); position: absolute;right: 0;}

footer address {background: #59aac7;text-align: center; padding: 5px 0; color: #fff; letter-spacing: 0.3px;font-style:normal;}

.to-top{position: fixed;display: flex;justify-content: center;width: 50px;height: 50px;right: 0;bottom: 0;cursor: pointer;}
.to_contact{position: fixed;display: flex;justify-content: center;width: 176px;height: 160px;right: 0;bottom: 80px;cursor: pointer;}
.to_contact img:nth-of-type(2) {position: absolute;top:7px; left: 0;}
.to_contact_support{position: fixed;display: flex;overflow: hidden;justify-content: center;width: 280px;height: 150px;bottom: 80px;cursor: pointer;right: -215px;z-index: 100;}
.to_contact_support p:nth-of-type(1){position: absolute;top:0;left: 0;}
.to_contact_support p:nth-of-type(2){position: absolute;top:0;left: 65px;}
.to_contact_support p:nth-of-type(3){position: absolute;top:83px;left: 65px;background-color: #6cc06d;width: 215px;height: 67px;vertical-align: middle;color:#fff;font-size: 20px;font-weight: bold;text-align: center;padding-top: 20px}

@media screen and (max-width:900px){
footer {border: none;}
footer section { width: 100%; margin: 30px auto 15px; text-align: center; font-size: 12px;}
footer h2 img  {width: 50%;}
footer section div:nth-of-type(1) { width:100%; float: none; }
footer address {font-size: 16px;}
.to-top{bottom: 90px;}
.to_SPcontact{position: relative;z-index:3;border-top: 5px solid #000;background-color: #D70C18;padding: 0 0 20px 20px; width: 100%;right: 0;bottom: 0;font-size: 12px;line-height: 18px;cursor: pointer;}
.to_SPcontact a {color: #fff; }
.to_SPcontact p:nth-of-type(1) {position:relative;width: 30%; display: inline-block; padding-left: 45px; margin-right: 10px; border-right: 2px solid #fff;}
.to_SPcontact p:nth-of-type(2) {position:relative;width: 30%; display: inline-block; padding-left: 45px;}
.to_SPcontact p:nth-of-type(3) {position:relative;width: 185px; display: inline-block;}
.to_SPcontact p:nth-of-type(3) img {width:100%;}
.to_SPcontact p:nth-of-type(1)::before,
.to_SPcontact p:nth-of-type(2)::before {position: absolute; left:0; top:-8px; content: ""; width:35%; height:45px; background-image:url("../images/footer/icon_phone_sp.png");background-repeat: no-repeat;background-size: contain;} 
}
@media screen and (max-width:530px){
.to_SPcontact p:nth-of-type(3) {width: 35%; }
}
@media screen and (max-width:480px){
.to-top{bottom: 70px;}
.to_SPcontact {height: 70px; padding-top: 10px;font-size: 10px;line-height: 12px;}
.to_SPcontact p:nth-of-type(1) {width: 32%; padding-left: 25px;}
.to_SPcontact p:nth-of-type(2) {width: 32%; padding-left: 25px;}
.to_SPcontact p:nth-of-type(3) {width: 30%; }
.to_SPcontact p:nth-of-type(1)::before,
.to_SPcontact p:nth-of-type(2)::before {width:20px; height:30px;top:0;} 
}
@media screen and (max-width:350px){
.to_SPcontact {height: 60px; padding-top: 10px;letter-spacing: -1px;}
.to-top{bottom: 60px;}
}
/*@media screen and (max-width:750px){
footer { max-width: auto; margin: 120px auto 0; padding-bottom: 0; }
div.footer_menu { width: auto; margin: auto; font-size: 1rem; }
section#footer_contact div { background: #000000; width: 80%; padding: 50px; }
section#footer_contact div h2 { font-size: 22px; font-size: 2.2rem; }
section#footer_contact div p { margin-right: 0; font-size: 1.2rem; }
div.footer_logo { margin-bottom: 10px; padding: 0 20px; }
div.footer_logo img { width: 100%; }

div.footer_menu p { float: none; padding: 0 20px; }
div.footer_menu ul { float: none; padding: 0 20px;  }
div.footer_menu li { display: block; padding-bottom: 5px; }
}*/


/* コンテンツ
------------------------------------------------*/
#topicpath    {  }
#topicpath ul { width: 900px; margin: auto; padding: 30px 0 70px; }
#topicpath li { display: inline-table; background: url(../images/bg/bg_topicpath.png) no-repeat right 3px; padding-right: 22px; margin-right: 8px; }
#topicpath a  { color: #aaaaaa; text-decoration: underline; }
#topicpath li:nth-last-of-type(1) { background: none; }
#catePath {max-width: 900px;position:relative;margin:90px auto 50px;overflow: hidden;border-left: 2px solid #000;}
#catePath li {display:inline-block;padding: 0 30px;float:left;font-weight: bold;border-right: 2px solid #000;}
@media screen and (max-width:900px){
#catePath {max-width: 100%;margin:50px 20px;border-left: none;text-align: center;}
#catePath li {font-size:12px;padding: 0 10px;float: none;font-weight: bold;border: 2px solid #000;}
}
#headerContents {background-color: #D9D9D9;padding-top: 90px;}
#mainContents { max-width: 900px; position: relative; margin: 90px auto 90px; overflow: hidden; zoom: 1; }

/* サイドメニュー
-------------------------------*/
#side h2 { background-color: #3E3E3E; color: #FFFFFF; text-align: center; padding: 7px 0 5px; }

.side_menu      { background-color: #f2f2f2; padding: 15px 15px 5px; }
.side_menu li   { box-shadow: 2px 2px 2px rgba(0,0,0,0.4); margin-bottom: 10px; }
.side_menu li a { display: block; padding: 15px 0 12px 40px; background: url(../images/bg/bg_mark_side.png) #ffffff no-repeat 15px 17px; color: #000; }
.side_menu li a:hover { background: url(../images/bg/bg_mark_side.png) #000 no-repeat 15px 17px; color: #ccc;  }
.side_menu li.current-cat a { display: block; padding: 15px 0 12px 40px; background: url(../images/bg/bg_topicpath.png) #1c6456 no-repeat 15px 17px; color: #FFF; }
.side_menu li.current-cat a:hover { background: url(../images/bg/bg_topicpath.png) #06392f no-repeat 15px 17px; color: #cccF;  }