﻿@charset "utf-8";

/* =======================================

	BTN

======================================= */


#GNAVI{
	top: 0;
	left: 0;
	width: 100%;
	height:80px;
	position: fixed;
	background: #eee;
	z-index:200;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;

}


.span_menu {display:none;}

#GNAVI ul{margin:0px auto; padding:0; width:970px; height:80px;  list-style-type : none;}

#GNAVI li { display: inline; padding:0; margin:0; }
#GNAVI #gmenu_logo a {background-image:url(btn/gblogo.gif); float: left; width:180px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block; background-color:#eee; background-position: center;}

#GNAVI #gmenu_01 a {background-image:url(btn/gb01.gif); float: left; width:46px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_01 a:hover {background-image:url(btn/gb01o.gif); width:46px; height:80px; background-repeat:no-repeat; margin: 0; padding:0; display:block;}

#GNAVI #gmenu_02 a{float: left; background-image:url(btn/gb02.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0;  display:block;}
#GNAVI #gmenu_02 a:hover {background-image:url(btn/gb02o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_03 a{float: left; background-image:url(btn/gb03.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_03 a:hover {background-image:url(btn/gb03o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_04 a{float: left; background-image:url(btn/gb04.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_04 a:hover {background-image:url(btn/gb04o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_05 a{float: left; background-image:url(btn/gb05.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_05 a:hover {background-image:url(btn/gb05o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_06 a{float: left; background-image:url(btn/gb06.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_06 a:hover {background-image:url(btn/gb06o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_07 a{float: left; background-image:url(btn/gb07.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_07 a:hover {background-image:url(btn/gb07o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_08 a{float: left; background-image:url(btn/gb08.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_08 a:hover {background-image:url(btn/gb08o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}

#GNAVI #gmenu_09 a{float: left; background-image:url(btn/gb09.gif);  width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}
#GNAVI #gmenu_09 a:hover {background-image:url(btn/gb09o.gif); width:102px; height:80px; background-repeat:no-repeat; margin:0; padding:0; display:block;}


#GNAVI .gmenu_00{float:left; background-image:url(btn/gb00.gif);  width:3px; height:64px; background-repeat:no-repeat; margin:0; padding:0; display:block;}


/* =======================================

	スマートフォン

======================================= */

/* SP MAIN MENU */

#spHD{
	top: 0;
	left: 0;
	width: 100%;
	height:50px; 
	position: fixed;
	background-color: #eeeeee;
	z-index:200;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

#spHD .splogo{
	margin:8px 0 0 0;
	max-width: 50%;
	}

.header {

}

.hamburger {
top:2px;
right:10px;
position: fixed;
z-index:201;
	width: 48px;
  height: 48px;
  border: none;
  background: transparent;
  cursor: pointer;
}

.hamburger__line {
  position: absolute;
  left: 11px;
  width: 26px;
  height: 2px;
  background-color: #333;
  transition: all .4s;
}

.hamburger__line:nth-of-type(1) {
  top: 14px;
}
.hamburger__line:nth-of-type(2) {
  top: 23px;
}
.hamburger__line:nth-of-type(3) {
  top: 32px;
}

/* メニューオープン時 */
.hamburger.active .hamburger__line:nth-of-type(1) {
  transform: translateY(9px) rotate(-45deg);
}
.hamburger.active .hamburger__line:nth-of-type(2) {
  opacity: 0;
}
.hamburger.active .hamburger__line:nth-of-type(3) {
  transform: translateY(-9px) rotate(45deg);
}

.nav {
  position: fixed;
  top: 0;
  left: 0;
  width:300px;
  height: 100vh;
  overflow: scroll;
  opacity: 0.9;
  background-color: #eee;
  box-shadow: 2px 0 4px #666;
  transform: translateX(-100%);
  transition: transform .4s;
  z-index: 210;

}

.nav p{
	margin:20px 0 0 0;
	font-size:120%;
	color:#666;
	text-align:center;
	letter-spacing: 0.5em;
	font-weight:bold;
}

.nav.active {
  transform: translateX(0);
}

.nav__list {
  margin: 0;
  padding: 0 0 0 0;
  list-style: none;
	border-bottom:1px dotted #999;
}
.nav__list a {
	display:block;
	width:100%;
}

.nav__item {
	padding: 6px 16px;
	border-top:1px dotted #999;
	color: #333;
	text-decoration: none;
}


.nav__link {
  display: block;
  padding: 15px 0;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid #eee;
}





/* SUB INDEX */

.subidx{
	width:100%;
	display:block;
	position:relative;
	position: -webkit-sticky; /* Safari対応 */
	position: sticky;         /* スティッキー */
	top:50px; /* 上に到達したら固定 */
	z-index: 201;
}

.subindex {
	height:30px;
	font-size:15px;
	color:#666;
	padding:2px 8px 2px 30px; 
	border: 1px solid #999; 
	background: transparent; 
	cursor: pointer;
	background-color:#ddd;
}


.subindex__line {
  position: absolute;
  left: 9px;
  width: 14px;
  height: 2px;
  background-color: #333;
  transition: all .4s;
}
.subindex__line:nth-of-type(1) {
  top: 9px;
}
.subindex__line:nth-of-type(2) {
  top: 14px;
}
.subindex__line:nth-of-type(3) {
  top: 19px;
}


/* メニューオープン時 */
.subindex.active .subindex__line:nth-of-type(1) {
  transform: translateY(5px) rotate(-45deg);
}
.subindex.active .subindex__line:nth-of-type(2) {
  opacity: 0;
}
.subindex.active .subindex__line:nth-of-type(3) {
  transform: translateY(-5px) rotate(45deg);
}

.subnav {
  position: fixed;
  top: 0;
  right: 0;
  width: 300px;
  height: 100vh;
  overflow: scroll;
  opacity: 0.9;
  background-color: #999;
  box-shadow: -2px 0 4px #666;
  transform: translateX(100%);
  transition: transform .4s;
  z-index: 210;
  font-size:100%;
  line-height:1.5em;
}

.subnav p{
	margin:6px 0;
	font-size:120%;
	color:#fff;
	text-align:center;
	letter-spacing: 0.2em;
	font-weight:bold;
}

.subnav ul{
	padding:0;
}


.subnav.active {
  transform: translateX(0);
}

.subnav__list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-bottom:1px dotted #fff;
}

.subnav__list li {
	display:block;
	padding: 1px 14px;
	border-top:1px dotted #fff;
	color: #fff;
	text-decoration: none;
}


.subnav__list a {
	display:block;
	width:100%;
}


.subnav__link {
  display: block;
  padding: 15px 0;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid #eee;
}

p.tcat{
	font-size:100%;
	margin:6px 2px 2px 6px;
	padding:0;
	text-align:left;
}

