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

/* レスポンシブで画像を切り替える（CSS） */
@media screen and (max-width: 800px) {
    .pcnav {
        display:none; /* PC用画像を非表示にする */
    }
}
/* レスポンシブで画像を切り替える（CSS） */
@media screen and (min-width: 800px) {
    .spnav {
        display:none; /* PC用画像を非表示にする */
    }
}


body {
    position: relative;
    left: 0;
}
body.open{
	width: 100%;
    position: fixed;
}

/* ナビゲーション
----------------------------------------------------------------------------- */

/* sp menu setting */

.layer{
    display: none;
    width: 100%;
    height: 100%;
	position: fixed;
    top: 0;
	left: 0;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#DD000000,endColorstr=#DD000000); 
    background: rgba(0, 0, 0, 0.8);
	z-index: 999!important;
}
.layer:not(:target) {
	filter: none;
}

/*==================
header
====================*/

/*トップページナビゲーション*/

header{
	min-width: 100%;
	width:100%;
	z-index:1000;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	position:fixed;
	transition: .3s;
	background:#fff;
	border-bottom:1px solid #dfdfdf;
}
header:after{
  content: "";
  display: block;
  height: 0;
  overflow: hidden;
  clear: both;
}



#header-inner{
	margin:0 auto;
	max-width:1280px;
	position:relative;
	margin: 0 auto;
	background:#fff;
}
h1{
	padding:15px 10px 10px;
}

.btn_en{
	position:absolute;
	top:20px;
	right:10px;
}
/* header SP */

.header-spmenu {
	width: 60px;
	display: none;
	position:absolute;
	top:10px;
	right:10px;
	text-align: center;
	cursor: pointer;
}

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

Navi
=================================================*/

/* header menu */

nav {
	position: relative;
	z-index: 1000 !important;
	width:100%;
	top: 0;
	right: 0px;
	margin-bottom:10px;
}

nav ul {
  width: 100%;
	position: relative;
}

nav > ul > li > a{
    display: block;
    padding: 10px 5px;
	margin:5px;
	background:#000;
	color:#fff;
	font-size:1.6em;
	line-height:1.5em;
}
nav > ul > li.en-button > a{
	background:#fff !important;
}
nav > ul > li > a:hover{
	color:#aaaaaa;
	text-decoration:none;
    -webkit-transition: all .5s;
    transition: all .5s;
}
nav > ul > li > ul {
	background:rgba(255,255,255,0.8);
	padding:10px 0 20px;
}

nav > ul > li > ul > li {
    display: block;
    padding: 3px 8px ;
}
nav > ul > li > ul > li > a{
    display: block;
    padding: 3px 0px;
	/*background:#fff;*/
	color:#333;
	font-size:1.4em;
	line-height:1.5em;
	text-align:left;
	background:url(../img/common/gyaji.png) left 50% no-repeat;
	padding-left:12px;
}
nav > ul > li > ul > li > a:hover{
	color:#007cc8;
}

/* cf */

nav > ul:after {
    content:" ";
    display:block;
    clear:both;
}
nav > ul{
	display:-ms-flexbox;/*--- IE10 ---*/
	display:flex;
	-ms-flex-pack:center;/*--- IE10 ---*/
	justify-content:center;
	-ms-flex-wrap:wrap;/*--- IE10 ---*/
	flex-wrap:wrap;
}

nav > ul > li {
	text-align:center;
	position: relative;
}

.pc-only {
	display: block;
}
.sp-only {
	display: none;
}

nav > ul > li > ul > li > a.active {
	color:#333;
}

@media only screen and (max-width: 1005px) {
nav > ul > li > a{
	font-size:1.4em;
}
}
@media only screen and (max-width: 900px) {
nav > ul > li > a{
	font-size:1.3em;
	letter-spacing: -0.02em;
}
}
@media only screen and (min-width: 821px) {

nav .w20{
	width:20%;
}
nav .w10 {
	width:10%;
}
nav > ul > li > ul > li {
	float:none !important;
}

nav > ul > li > ul{
	position:absolute;
	width:120%;
	display: none;
	}
	
nav {
	right: 0px !important;
}
}

@media only screen and (max-width: 820px) {

.btn_en{
	display:none;
}	
#wrapper {
	width: 100%;
	min-width: 100%;
}
	
	
h1{
	width:70%;
	margin-bottom:0;
}

	/* header SP*/
	.header-spmenu {
		display: block;
	}
	
	/*==================================================
	
	Navi
	=================================================*/
	
	nav {
		width: 240px;
		height: 100%;
		position: fixed;
		background:#ffffff;
		top: 0;
		right: -240px;
	}
	
	nav > ul {
		width: 100%;
		height: 100%;
		position: relative;
		display: block;
		padding: 10px 0;
 		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	
	nav > ul > li {
		width: 100%;
		line-height:2.0em;
		padding:0px 10px;
		text-align:left;
		position: relative;
		float: none;
		display: block;
		border-left: none;
		border-bottom: 1px solid #6f7fa6;
	}
nav > ul > li > a{
		color:#fff;
		text-align:center;
		font-size:1.4em;
	line-height:1.5em;
}
nav > ul > li > a{
    padding: 8px 5px;
}
nav > ul > li:hover {
	color:#222;
	text-decoration:none;
    -webkit-transition: all .5s;
    transition: all .5s;
}
nav > ul > li > ul{
	background:#fff;
	padding:0px 0 10px;
	}

nav > ul > li > ul > li > a{
    padding:1px 5px;
	color:#333;
	font-size:1.3em;
	line-height:1.5em;
	padding-left:12px;
}	
	nav > ul > li,
	nav > ul > li:nth-of-type(1),
	nav > ul > li:nth-last-of-type(2) {
		/* bg image reset */
		background: none;
	}
	
	nav > ul > li:nth-last-of-type(1) {
		border-bottom: none;
	}
	
	.en-button{
		text-align: center;
		margin: 10px auto;
		border-bottom:none;
	}
	.close-button {
		width: 30%;
		cursor: pointer;
		text-align: center;
		color: #333;
		margin: 10px auto;
		padding: 8px;
		font-size:1.2em;
		font-weight:bold;
	}
	#side-navi {
		display: none;
	}
	.sp-only {
		display: block;
	}
	.pc-only {
		display: none;
	}

	
}

/*----------------------------------------------------
FooterNav
----------------------------------------------------*/
.FooterNav{
	margin-top:50px;
	padding:20px 0 30px;
	background:#eaeeec;
}
.FooterNavInner{
	max-width:1080px;
	margin:0 auto;
	overflow:hidden;
}
.FooterNavBox{
	float:left;
	padding:0 10px;
}
.footerl{
	width:33.3333%;
}
.footers{
	width:33.3333%;
}
.FooterNavBox h2{
	font-size:1.4em;
	font-weight:bold;
	margin:10px 0px;
	background:url(../img/common/gyaji.png) left 50% no-repeat;
	padding-left:12px;
}
.FooterNavBox h2 a{
	color:#333;
	display:block;
	text-decoration:none;
}
.FooterNavBox ul {
	margin:10px 0 10px 10px;
}
.FooterNavBox ul li{
	list-style:none;
	margin:4px 10px 4px 0;
	font-size:1.3em;
}
.FooterNavBox ul li a{
	color:#333;
	display:block;
	text-decoration:none;
	background:url(../img/common/gyaji.png) left 50% no-repeat;
	padding-left:12px;
}
.FooterNavBox h2 a:hover,
.FooterNavBox ul li a:hover{
	color:#0084ff;
	text-decoration:none;
    -webkit-transition: all .5s;
    transition: all .5s;
}

@media screen and (max-width:800px) { 
.FooterNav{
	padding:10px 0 10px;
	background:#efefef;
}
.FooterNavBox{
	width:50%;
	float:left;
}
.FooterNav p{
	padding:20px 0 0;
	font-size:1.3em;
	line-height:1.5em;
}

}
@media screen and (max-width:480px) { 
.FooterNav{
	display:none;
}
}


/*FOOTER*/

#globalFooter{
	background:#000;
	overflow:hidden;
}
.footer{
	color:#fff;
	padding:15px 20px;
	font-size:1.2em;
	font-family:Verdana, Geneva, sans-serif;
	text-align:center;
}

@media screen and (max-width:480px) { 

#globalFooter{
	margin-top:10px;
}
}
