@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Abril+Fatface|Judson:400,700);

/*---------------------------------------------
	Browser Default Initialization
  ---------------------------------------------*/
body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, header, address,
figure, figcaption { margin: 0; padding: 0; }
address, caption, cite, code, dfn, em, strong, th, var,i { font-style: normal; font-weight: normal; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th {text-align: left;}
q::before ,q::after {content: '';}
object, embed {vertical-align: top;}
hr, legend {display: none;}
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
img, abbr, acronym, fieldset {border: 0;}
img { max-width: 100%; height: auto; vertical-align: bottom; -ms-interpolation-mode: bicubic; }
ul li { list-style-type: none;}
strong { font-weight: bold; }
.clearfix { /zoom:1; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }

*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
p { padding: 0 0 20px; line-height: 180%; }
a {
	color:#000;
	outline: none;
	text-decoration: none;
	transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
}
a:active,
a:hover {
	text-decoration: none;
}
a:focus,
*:focus {
	outline:none;
}
a:hover img {
	-moz-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	-webkit-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}
.en_menu { font-style:normal; font-weight: 100; font-family: 'Abril Fatface', cursive;}
.en_title { font-style:normal; font-weight: 100; font-family: 'Judson', serif;}
.min {	font-family: "Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;}
.txhd {
	display:block;
	height:0;
	overflow:hidden;
	font-size:1.0rem;
	line-height:2;
}
.nodisp { display:none !important;}
.noborder { border:0px !important;}
.nobg { background:none !important;}
.blockdisp { display:block !important;}
.bold { font-weight: bold !important;}
:root *> .bold { font-weight: 700 !important;}
.clear { clear:both !important;}
.of { overflow:hidden;}
.fl{float:left !important;}
.fr{float:right !important;}
.fn{float:none !important;}
.taL {text-align:left !important;}
.taC {text-align:center !important;}
.taR {text-align:right !important;}
.nowrap { white-space:nowrap !important;}
.ind { text-indent:1em;}
.fit img { width:100%;}
.pc { display: inherit; }
.sp { display: none; }
@media only screen and (max-width: 768px) {
a, a:hover { outline: none; text-decoration: none;}
.pc { display:none !important; }
.sp { display:inherit !important; }
}


/* ==========================================================================
   Global
   ========================================================================== */
html {
	font-size: 62.5%; 
	overflow-y: scroll;
	height: 100%;
}
html.ofyh {
	height:100%;
	overflow-y:hidden;
}
body {
	height: 100%;
	font-size: 1.6rem;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', "游ゴシック", YuGothic, Meiryo, メイリオ, Osaka, 'MS PGothic', sans-serif;
	color: #fff;
	line-height: ;
	text-align: left;
	background-color: #fff;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: auto;
	-webkit-user-select: auto;
}
#wrap {
	width: 100%;
	min-height:100%;
	display:block;
	position:relative;
	padding:0 0 70px;
}

@media only screen and (max-width: 768px) {
body {
	-webkit-text-size-adjust:100%;
	-webkit-overflow-scrolling: touch;
	min-width:inherit;
}
#wrap {
	width: 100%;
	min-height:100%;
	padding:0 0 120px;
}
}



/* header
================================================== */
#header * {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#header *, #header *:before, #header *:after {
	box-sizing: border-box;
}
#header {
	position: absolute;
	top:0;
	left:0;
	right:0;
	height: 66px;
	width: 100%;
	z-index:3;
	background:rgba(0,0,0,0);
}
#header:after {
	content: "";
	display: table;
	clear: both;
}
#header.on {
	position:fixed;
	top:0;
	background:rgba(0,0,0,.5);
	animation-duration: 1.5s;
	animation-name: fade-in-fix;
	-moz-animation-duration: 1.5s;
	-moz-animation-name: fade-in-fix;
	-webkit-animation-duration: 1.5s;
	-webkit-animation-name: fade-in-fix;
}
@keyframes fade-in-fix {
	0% { display: none; opacity: 0; top:-66px; }
	1% { display: block; opacity: 0; top:-66px; }
	100% { display: block; opacity: 1; top:0px; }
}
@-moz-keyframes fade-in-fix {
	0% { display: none; opacity: 0; top:-66px; }
	1% { display: block; opacity: 0; top:-66px; }
	100% { display: block; opacity: 1; top:0px; }
}
@-webkit-keyframes fade-in-fix {
	0% { display: none; opacity: 0; top:-66px; }
	1% { display: block; opacity: 0; top:-66px; }
	100% { display: block; opacity: 1; top:0px; }
}
.header_logo {
	display: block;
	width: 154px;
	height:32px;
	float: left;
	margin: 17px 0 0 20px;
}
.header_logo a {
	display:block;
	width: 154px;
	padding:32px 0 0;
	background:url(../img/item_header_logo.png) no-repeat 50% 50%;
	background-size:contain;
}
.header_nav .slidemenu_body {
	float:right;
	width:auto;
}
.header_nav ul {
	overflow: hidden;
	margin: 16px 0;
	padding: 0 20px 0 0;
}
.header_nav ul > li {
	display: inline-block;
	margin:0 0 0 26px;
}
.header_nav ul > li > a {
	display: block;
	width: auto;
	height: 32px;
	line-height:10px;
	text-decoration:none;
}
.header_nav ul > li > a em {
	display:block;
	color:#FFF;
	font-size:1.4rem;
	letter-spacing:.05em;
	padding:10px 0;
}
.header_nav ul > li > a em i {
	font-size:1.8rem;
}
.header_nav ul > li > a:hover {
	opacity:.5;
}
.header_nav ul > li.current a {
	border-bottom:1px solid #fff;
}
.header_nav ul > li.current > a:hover {
	opacity:1;
}

@media only screen and (max-width: 768px) {
#header {
	position: fixed;
	top:0;
	left:0;
	right:0;
	height: 40px;
	width: 100%;
	background: rgba(0,0,0,0);
	z-index:3;
}
#header.on {
	position:fixed;
	top:0;
	background:rgba(0,0,0,0);
	animation-duration: none;
	animation-name: none;
	-moz-animation-duration: none;
	-moz-animation-name: none;
	-webkit-animation-duration: none;
	-webkit-animation-name: none;
}
.header_logo {
	float:none;
	display: block;
	width:140px;
	text-align:center;
	position: relative;
	top: inherit;
	left: inherit;
	margin:0 auto;
}
.header_logo a {
	display: block;
	width:140px;
	padding: 40px 0 0;
}
.header_spMenu_btn {
	display: table-cell;
	position: fixed;
	top:0px;
	right:0;
	width: 40px;
	height:40px;
	font-size: 10px;
	text-align: center;
	cursor: pointer;
	z-index:10;
	background: rgba(0,0,0,.2)
}
.header_spMenu_btn.open {
	position: fixed;
	top:0px;
	right:0;
}
.header_spMenu_btn .bar {
	position: absolute;
	top: 10px;
	left: 6px;
	display: block;
	width: 28px;
	height: 2px;
	background: #fff;
	-webkit-transition: all .5s;
	transition: all .5s;
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}
.header_spMenu_btn .bar.middle {
	top: 18px;
	opacity: 1;
}
.header_spMenu_btn .bar.bottom {
	top: 26px;
	-webkit-transform-origin: left bottom;
	-ms-transform-origin: left bottom;
	transform-origin: left bottom;
}
.header_spMenu_btn.open .bar.top {
	width: 27.5px;
	height: 2px;
	top: 10px;
	left: 12px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.header_spMenu_btn.open .bar.middle {
 opacity: 0;
}
.header_spMenu_btn.open .bar.bottom {
	width: 27.5px;
	height: 2px;
	top: 29px;
	left: 12px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.header_nav {
	background: rgba(0,0,0,0.7);
	width: 100%;
	height:100%;
	position: fixed;
	top: -100%;
	/*top: 0;*/
	left: 0px;
	right: 0px;
	padding: 60px 0 30px;
	z-index: 9;
	color: #fff;
	overflow-y: auto;
	transition: transform .6s;
	-webkit-transition: -webkit-transform .6s;
}
.menuopen {
	-webkit-transition-property: all;
	transition-property: all;
	-webkit-transition-duration: .6s;
	transition-duration: .6s;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-moz-transition:.6s ease-out;
	-webkit-transition:.6s ease-out;
	-o-transition:.6s ease-out;
	-ms-transition:.6s ease-out;
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;		
	transform: translateY(100%) rotateY(0deg) translateZ(0px);
	-webkit-transform: translateY(100%) rotateY(0deg) translateZ(0px);
}
.header_nav .slidemenu_body {
	float:none;
	width:auto;
}
.header_nav ul {
	height:auto;
	overflow:hidden;
	width: auto;
	padding: 0px;
}
.header_nav ul > li {
	display:block;
	margin: 0 0 30px;
	text-align:center;
}
.header_nav ul > li > a,
.header_nav ul > li > a:hover,
.header_nav ul > li > span {
	display: inline-block;
	float:none;
	width: auto;
	height: inherit;
	line-height: 1em;
	padding: 0 0 2px;
	overflow:hidden;
	text-align:center;
}
.header_nav ul > li > a.touch {
	opacity:0.5;
}
.header_nav ul > li > a em {
	display: inline-block;
	font-size: 2rem;
}
.header_nav ul > li > a em i {
	font-size:2.6rem;
}
}

@media only screen and (max-width: 350px ) {
.header_nav {
	padding: 40px 0 30px;
}
.header_nav ul > li {
	margin: 0 0 25px;
}
}


/* footer
================================================== */
#footer{
	width: auto;
	position: absolute;
	bottom:0;
	left:0;
	right:0;
	height:70px;
	background:#FFF;
}
#footer:after {
	content: "";
	display: table;
	clear: both;
}
#footer .copyright {
	font-size:1.0rem;
	color:#333;
	text-align: center;
	height:70px;
	line-height:70px;
}
#footer .footetPagetop {
	position: absolute;
	bottom: 10px;
	right: 10px;
	z-index:2;
}
#footer .footetPagetop a {
	display:block;
	width: 50px;
	padding:50px 0 0;
	border-radius:200%;
	background: rgba(0,0,0,.5) url(../img/ico/ico_ar_footer.svg) no-repeat 50% 40%;
	background-size: 14px 22px;
}
#footer .footetPagetop a:hover {
	background: rgba(0,0,0,.8) url(../img/ico/ico_ar_footer.svg) no-repeat 50% 40%;
}
@media only screen and (max-width: 768px) {
#footer{
	height:120px;
}
#footer .footetPagetop {
	position: relative;
	bottom: inherit;
	right: inherit;
}
#footer .footetPagetop a,
#footer .footetPagetop a:hover {
	display:block;
	width: 100%;
	border-radius:0;
}
}



/*
 animate
==================================================================================*/

@keyframes f_out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes f_out_sp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: .2;
  }
}
@keyframes f_in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes up {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes down {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes down_sc {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: .7;
  }
}