@charset "utf-8";
/* CSS Document */
/* ヘッダー */
div#headerbox {
	width:100%;
	height:27.33vw;
	border-bottom: #EFEFEF 1px solid;
	box-sizing: border-box;
}
	div#headerbox div.center {
		width:96%;
		height:27.33vw;
		margin: 0 auto;
		text-align: center;
		position: relative;
	}
		div#headerbox div.center div.hmenubox {display: none;}
		div#headerbox div.center a.logo {
			display: block;
			width:20.66vw;
			height:20.66vw;
			border-radius: 20vw;
			position: absolute;
			top:3.73vw;
			left:0px;
			box-sizing: border-box;
		}
/* サイドメニュー */
input.check { display: none;}
label.menu-btn {
	display: block;
	width:10vw;
	height:10vw;
	position: fixed;
	top:10vw;
	right:5%;
	z-index: 100;
}
label.menu-btn:hover span.bar {
	opacity: 0.7;
}
	span.bar {
		position: absolute;
		top:0;
		left: 0;
		display: block;
		width: 100%;
		height: 2px;
		-webkit-transition: all .5s;
		transition: all .5s;
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
	}
	span.bar.middle {
		top: 3vw;
		opacity: 1;
	}
	span.bar.bottom {
		top: 6vw;
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
	}
div#sidemenubox {
	width:100%;
	position: fixed;
	top:0;
	left:100%;
	-webkit-transition: all .5s;
	transition: all .5s;
	z-index: 90;
	overflow-y: scroll;
}
div#sidemenubox div.sidemenubox2 {
	background-size: auto 18px;
	background-position: center top 20px;
	box-sizing: border-box;
	padding: 35vw 0 80px 0;
	position: relative;
}
		div#sidemenubox div.sidemenubox2 div.logo {
			display: block;
			width:20.66vw;
			height:20.66vw;
			border-radius: 20vw;
			position: absolute;
			top:3.73vw;
			left:2%;
			box-sizing: border-box;
		}
	div#sidemenubox div.menubox {
		width:90%;
		margin: 0 auto;
	}
		div#sidemenubox div.menubox div.smenulistbox {
			box-sizing: border-box;
			padding: 10px;
		}
			div#sidemenubox div.menubox div.smenulistbox p.title {
				height:30px;
				line-height: 30px;
				font-size: 14px;
				letter-spacing: 1px;				
				font-weight: bold;
				position: relative;
			}
				div#sidemenubox div.menubox div.smenulistbox p.title span.open, div#sidemenubox div.menubox div.smenulistbox p.title span.close {
					display: block;
					width:15px;
					height:15px;
					position: absolute;
					right:10px;
					top:7px;
				}
				div#sidemenubox div.menubox div.smenulistbox p.title span.close { display: none; }
			div#sidemenubox div.menubox div.smenulistbox div.closebox {
				display: none;
				padding-bottom: 20px;
			}
				div#sidemenubox div.menubox div.smenulistbox div.closebox a, div#sidemenubox div.menubox div.smenulistbox div.closebox input.btnLogOut {
					display: block;
					-webkit-appearance: none;
  					-moz-appearance: none;
					height:30px;
					line-height: 30px;
					text-decoration: none;					
					font-size: 14px;
					background: none;
					border: none;
					font-weight: normal;
					text-align: left;
					padding: 0;
				}
	div#sidemenubox div.memberbtnbox {
		width:90%;
		margin: 20px auto 0 auto;
	}
		div#sidemenubox div.memberbtnbox a {
			display: block;
			width:49%;
			height:40px;
			line-height: 40px;
			text-align: center;
			text-decoration: none;
			font-size: 14px;
			font-weight: normal;
			border: none;
		}
		div#sidemenubox div.memberbtnbox a:nth-of-type(1) { float: left;}
		div#sidemenubox div.memberbtnbox a:nth-of-type(2) { float: right;}
		div#sidemenubox div.memberbtnbox input.btnLogOut {
			display: block;
			-webkit-appearance: none;
  			-moz-appearance: none;
			width:100%;
			height:40px;
			line-height: 40px;
			text-align: center;
			text-decoration: none;			
			font-size: 14px;
			font-weight: normal;
			border: none;
		}
	div#sidemenubox div.bannerbox {
		width:90%;
		margin: 20px auto 0 auto;
	}
	@media screen and (min-width: 420px) {
		div#sidemenubox div.bannerbox a {
			display: block;
			width:49%;
		}
		div#sidemenubox div.bannerbox a:nth-of-type(1) { float: left;} 
		div#sidemenubox div.bannerbox a:nth-of-type(2) { float: right;} 
	}
	@media screen and (max-width: 419px) {
		div#sidemenubox div.bannerbox a {
			display: block;
			width:100%;
		}
	}
		div#sidemenubox div.bannerbox a img { width:100%;}
	div#sidemenubox div.snsbox {
		margin-top: 20px;
		text-align: center;
	}
		div#sidemenubox div.snsbox a {
			display: inline-block;
			width:25px;
			height:25px;
			margin: 0 5px;
		}
			div#sidemenubox div.snsbox a img { width:100%; height:100%;}
/* -- チェックをつけた場合 */
input.check:checked ~ label.menu-btn span.bar.top {
	top:7px;
	left:13px;
	width: 35px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
input.check:checked ~ label.menu-btn span.bar.middle {
	opacity: 0;
}
input.check:checked ~ label.menu-btn span.bar.bottom {	
	width: 35px;
	top: 32px;
	left:13px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
input.check:checked ~ label.menu-btn p.menu { opacity: 0;}
input.check:checked ~ label.menu-btn p.close { opacity: 1;}
input.check:checked ~ div#sidemenubox { left:0%;}

/* フッター */
div#footerbox {}
	div#footerbox div.fmenubox1 {}
		div#footerbox div.fmenubox1 div.center {
			width:100%;
			margin: 0 auto;
		}
			div#footerbox div.fmenubox1 div.center div.fmenulistbox:nth-of-type(odd) {
				box-sizing: border-box;
				padding: 0 20px;
			}
			div#footerbox div.fmenubox1 div.center div.fmenulistbox:nth-of-type(even) {				
				box-sizing: border-box;
				padding: 0 20px;
			}
				div#footerbox div.fmenubox1 div.center div.fmenulistbox p.title {
					height:50px;
					line-height: 50px;
					font-size: 16px;
					letter-spacing: 2px;					
					font-weight: bold;
					position: relative;
				}
					div#footerbox div.fmenubox1 div.center div.fmenulistbox p.title span {
						width:15px;
						height:15px;
						position: absolute;
						left:120px;
						top:18px;
					}
					div#footerbox div.fmenubox1 div.center div.fmenulistbox p.title span.close { display: none; }
				div#footerbox div.fmenubox1 div.center div.fmenulistbox div.closebox {
					display: none;
					padding-bottom: 20px;
				}
					div#footerbox div.fmenubox1 div.center div.fmenulistbox div.closebox a {
						display: block;
						height:30px;
						line-height: 30px;
						text-decoration: none;
						font-size: 14px;
					}
	div#footerbox div.fmenubox2 {
		padding: 25px 0 25px 0;
	}
		div#footerbox div.fmenubox2 div.center {
			width:90%;
			margin: 0 auto;
		}
			div#footerbox div.fmenubox2 div.center small {
				display: block;
				font-size: 10px;
				letter-spacing: 1px;
				margin-top: 25px;
				text-align: center;
			}
			div#footerbox div.fmenubox2 div.center div.snsbox {
				text-align: center;
			}
				div#footerbox div.fmenubox2 div.center div.snsbox a {
					display: inline-block;
					width:25px;
					height:25px;
					margin: 0 5px;
				}
					div#footerbox div.fmenubox2 div.center div.snsbox a img { width:100%; height:100%;}
/* パンくずリスト */
div#breadcrumb { display: none;}
/* 共通 */
div#mainContents {
	width:100%;
	padding-bottom: 60px;
}
/* タイトル */
h2.title {
	text-align: center;
}
	h2.title span.alfa {
		display: block;
		font-size: 16px;
		letter-spacing: 2px;
		font-weight: bold;
	}
	h2.title span.jp {
		display: block;
		font-size: 12px;
		letter-spacing: 2px;
		margin-top: 5px;
	}
/* 一覧ボタン */
a.listbtn {
	display: block;
	width:110px;
	height:40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	margin: 40px auto 0 auto;
	border-radius: 22px;
	letter-spacing: 5px;
	font-weight: bold;
	font-size: 14px;
}
