@charset "UTF-8";

/*================================================
 *  一般・共通設定
 ================================================*/


nav {
		background:#FFFFFF;
	}
nav ul {
		margin:0;
		padding:0;
		}

nav .inner > ul {
		z-index:2;
		overflow:auto;
		position:fixed;
		top:53px;
		right:0;
		width:100%;
		height:88%;
		height:-webkit-calc(100% - 53px);
		height:calc(100% - 53px);
	}
nav li {
		position:relative;
		width:30%;
		float:none;
		left:70%;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #cccccc;
		background:#98c2e1;

	}

nav li:first-child {
		border-top:1px solid #cccccc;
	}
nav li:last-child {
		border-bottom:1px solid #cccccc;
	}

nav li a {
		display:block;
		padding:10px 30px;
		color:#222222;
		text-decoration:none;
		background:#FFFFFF;
	}
nav li a:hover {
		color:#fff;
		background:#000000;
	}
nav ul ul {
		display:none;
		position:relative;
	}
nav li li a {
		box-sizing:border-box;
		width:100%;
		padding:10px 30px 10px 50px;
		text-align:left;
	}

.subnav > a:before {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-5px;
		background:#cccccc;
	}
.subnav > a:after {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-10px;
		background:#FFFFFF;
	}
.subnav a:hover:after {
	  background:#5e8bb0;
	}

.active > a:before {
		margin-top:0;
	}
.active > a:after {
		margin-top:5px;
	}

.gnav {
		display:none;
	}
.menufit {
    font-size: 0.8em;
    margin-left: 15px;
    margin-top: -5px;
    color: #FFFFFF;
	}

#spMenu {
		display:block;
		z-index:2;
		position:fixed;
		top:9px;
		right:10px;
	}
#spMenu:hover {
		cursor:pointer;
	}

#navBtn {
    display: inline-block;
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 5%;
    margin-top: 4px;
	margin-right: 20px;
	}
#navBtnIcon {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 1px;
    margin: -1px 0 0 -7px;
    background: #FFFFFF;
    transition: .2s;
	}
#navBtnIcon:before,
#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:40px;
		height:1px;
		background:#FFFFFF;
		transition:0.3s;
	}
#navBtnIcon:before {
		margin-top:-14px;
	}
#navBtnIcon:after {
		margin-top:12px;
	}
#navBtn .close {
		background:transparent;
	}
#navBtn .close:before,
#navBtn .close:after {
		margin-top:0;
	}
#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}


/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
	.lock {
		overflow:hidden;
	}

nav li {
		position:relative;
		width:100%;
		float:none;
	margin:0;
		left:0px;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #cccccc;
		background:#98c2e1;
	}
.menufit {
    font-size: 0.7em;
    margin-left: 13px;
    margin-top: -18px;
    color: #FFFFFF;
	}
	
#spMenu {
		display:block;
		z-index:2;
		position:fixed;
		top:1px;
		right:7px;
	}	
#navBtn {
    display: inline-block;
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 5%;
    margin-top: 2px;
	margin-right: 5px;
	}
#navBtnIcon {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 1px;
    margin: -1px 0 0 -7px;
    background: #FFFFFF;
    transition: .2s;
	}
#navBtnIcon:before,
#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:30px;
		height:1px;
		background:#FFFFFF;
		transition:0.3s;
	}
#navBtnIcon:before {
		margin-top:-10px;
	}
#navBtnIcon:after {
		margin-top:8px;
	}

