@charset "UTF-8";

/* ========================================
	common
======================================== */
img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
body.is-hidden {
	overflow: hidden;
}
.l-wrapper {
	position: relative;
	overflow: hidden;
}
.u-txt-r{
	color: #e71d29;
}

/* ========================================
	header
======================================== */
.l-logo-3ds {
	position: absolute;
	top: 0;
	right: 0;
	width: 34.6666666%; /* 260 / 750 * 100 */
	z-index: 8000;
}

/* ========================================
	footer
======================================== */
.l-footer{
	position: relative;
}
.l-footer_bg{
	position: relative;
	display: block;
}
.l-footer_logo{
	position: absolute;
	width: 62.6666666%; /* 470 / 750 * 100 */
	top: -22%;
	left: 18%;
}
.l-footer_pagetop {
	position: absolute;
	width: 26.13333333%; /* 196 / 750 * 100 */
	top: -34%;
	right: 0;
	display: block;
	z-index: 200;
}
.l-gnav{
	position: absolute;
	width: 100%;
	top: 20.5%;
	left: 0;
}
.l-gnav li{
	width: 50%;
	float: left;
}
@media screen and (min-width: 350px) and (max-width: 360px) {
	.l-gnav li.gnav01, .l-gnav li.gnav02{min-height: 115px;}
}
@media screen and (min-width: 580px) and (max-width: 641px) and (orientation: landscape) {
	.l-gnav li.gnav01, .l-gnav li.gnav02{min-height: 190px;}
}
.l-gnav li.gnav01 img{
	position: relative;
	display: block;
	width: 101.8666666% !important; /* 382 / 375 * 100 */
	max-width: 101.8666666% !important;
}
.l-gnav li a{
	display: block;	
}
.l-footer_info {
	padding: 4% 0 3% 0;
	background:#faebd2 url(../images/common/footer_bg_b.png) no-repeat top center;
	background-size: cover;
	text-align: center;
}
.l-footer_info ul {
	width: 100%;
	font-size: 11px;
}
.l-footer_info li {
	display: inline-block;
}
.l-footer_info li:not(:last-child) {
	margin-right: 15px;
	padding-right: 15px;
	border-right: 1px solid #69420d;
}
.l-footer_info li a{
	color: #69420d;
	text-decoration: none;
}

/* ========================================
	modal
======================================== */
[data-modallink] {
	cursor: pointer;
}
[data-modalbody] {
	visibility: hidden;
	opacity: 0;
	transition: 200ms;
}
[data-modalbody].is-show {
	visibility: visible;
	opacity: 1;
}
.l-modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9500;
	width: 100%;
	height: 100%;
}
.l-modal_bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
	cursor: pointer;
}
.l-modal_body {
	position: relative;
}
.l-modal_inner {
}
.l-modal_prev,
.l-modal_next {
	position: absolute;
	top: 50%;
	width: 34px;
	margin-top: -26px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	cursor: pointer;
}
.l-modal_prev {
	left: -40px;
}
.l-modal_next {
	right: -40px;
}
.l-modal_contents {
	position: relative;
	z-index: 20;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}
.l-modal_movie {
	position: relative;
	width: 100%;
}
.l-modal_movie:before {
	content: '';
	display: block;
	position: relative;
	width: 100%;
    padding-top: 56.25%; /* 100% / 640px * 360px */
}
.l-modal_movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.l-modal_ytTtl {
	margin-top: 9px;
}

/* ========================================
	animation
======================================== */
.animation-fadeup {
	opacity: 0;
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.animation-fadeup.is-animation {
	transition:
		opacity 200ms,
		-webkit-transform 500ms,
		transform 500ms;
}
.animation-fadeup.is-animation,
.no-js .animation-fadeup {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.animation-pop {
	opacity: 0;
	-webkit-transform: scale(0.6);
	transform: scale(0.6);
}
.animation-pop.is-animation {
	transition:
		opacity 200ms,
		-webkit-transform 500ms cubic-bezier(0.175, 0.885, 0.320, 1.275),
		transform 500ms cubic-bezier(0.175, 0.885, 0.320, 1.275);
}
.animation-pop.is-animation,
.no-js .animation-pop {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.animation-bounds {
	opacity: 0;
}
.animation-bounds.is-animation{
	-webkit-animation: bounds 1000ms linear 1;
	animation: bounds 1000ms linear 1;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}
.no-js .animation-bounds {
	opacity: 1;
}
@-webkit-keyframes bounds {
	0% {	opacity: 0;	-webkit-transform: scale(1);		transform: scale(1);}
	8% {	opacity: 1;	-webkit-transform: scale(1.1);	transform: scale(1.1);}
	17% {	opacity: 1;	-webkit-transform: scale(1.2);	transform: scale(1.2);}
	34% {	opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
	51% {	opacity: 1;	-webkit-transform: scale(1.1);	transform: scale(1.1);}
	68% {	opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
	84% {	opacity: 1;	-webkit-transform: scale(1.05);	transform: scale(1.05);}
	100% {opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
}
@keyframes bounds {
	0% {	opacity: 0;	-webkit-transform: scale(1);		transform: scale(1);}
	8% {	opacity: 1;	-webkit-transform: scale(1.1);	transform: scale(1.1);}
	17% {	opacity: 1;	-webkit-transform: scale(1.2);	transform: scale(1.2);}
	34% {	opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
	51% {	opacity: 1;	-webkit-transform: scale(1.1);	transform: scale(1.1);}
	68% {	opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
	84% {	opacity: 1;	-webkit-transform: scale(1.05);	transform: scale(1.05);}
	100% {opacity: 1;	-webkit-transform: scale(1);		transform: scale(1);}
}
.animation-prolongs {
	opacity: 0;
}
.animation-prolongs.is-animation{
	-webkit-animation: prolongs 250ms linear 1;
	animation: prolongs 250ms linear 1;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}
.no-js .animation-prolongs {
	opacity: 1;
}
@-webkit-keyframes prolongs {
	0% {	opacity: 0;	-webkit-transform: scaleX(1);		transform: scaleX(1);}
	20% {	opacity: 1;	-webkit-transform: scaleX(1.1);	transform: scaleX(1.1);}
	70% {	opacity: 1;	-webkit-transform: scaleX(0.9);	transform: scaleX(0.9);}
	100% {opacity: 1;	-webkit-transform: scaleX(1);		transform: scaleX(1);}
}
@keyframes prolongs {
	0% {	opacity: 0;	-webkit-transform: scaleX(1);		transform: scaleX(1);}
	20% {	opacity: 1;	-webkit-transform: scaleX(1.1);	transform: scaleX(1.1);}
	70% {	opacity: 1;	-webkit-transform: scaleX(0.9);	transform: scaleX(0.9);}
	100% {opacity: 1;	-webkit-transform: scaleX(1);		transform: scaleX(1);}
}
.animation-floating-w{
	-webkit-animation: floatingw 12s linear infinite;
	animation: floatingw 12s linear infinite;
}
@-webkit-keyframes floatingw {
	0% {	-webkit-transform: translateX(0);			transform: translateX(0);}
	25% {	-webkit-transform: translateX(-30px);	transform: translateX(-30px);}
	75% {	-webkit-transform: translateX(30px);	transform: translateX(30px);}
	100% {-webkit-transform: translateX(0);			transform: translateX(0);}
}
@keyframes floatingw {
	0% {	-webkit-transform: translateX(0);			transform: translateX(0);}
	25% {	-webkit-transform: translateX(-30px);	transform: translateX(-30px);}
	75% {	-webkit-transform: translateX(30px);	transform: translateX(30px);}
	100% {-webkit-transform: translateX(0);			transform: translateX(0);}
}
.animation-floating-h{
	-webkit-animation: floatingh 5s linear infinite;
	animation: floatingh 5s linear infinite;
}
@-webkit-keyframes floatingh {
	0% {	-webkit-transform: translateY(0);			transform: translateY(0);}
	25% {	-webkit-transform: translateY(-8px);	transform: translateY(-8px);}
	75% {	-webkit-transform: translateY(8px);		transform: translateY(8px);}
	100% {-webkit-transform: translateY(0);			transform: translateY(0);}
}
@keyframes floatingh {
	0% {	-webkit-transform: translateY(0);			transform: translateY(0);}
	25% {	-webkit-transform: translateY(-8px);	transform: translateY(-8px);}
	75% {	-webkit-transform: translateY(8px);		transform: translateY(8px);}
	100% {-webkit-transform: translateY(0);			transform: translateY(0);}
}

.js-arrowpop {
	animation: arrowpop 1300ms infinite;
}

@keyframes arrowpop {
	0% {transform: scale(1) translateY(0px);}
	18% {transform: scale(1.04) translateY(-2px);}
	36% {transform: scale(1) translateY(0px);}
	54% {transform: scale(1.04) translateY(-2px);}
	72% {transform: scale(1) translateY(0px);}
	100% {transform: scale(1) translateY(0px);}
}

/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
}
.bxslider {
  margin: 0;
  padding: 0;
}
ul.bxslider {
  list-style: none;
}
.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}
/** THEME
===================================*/
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}
/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  text-indent: -9999px;
  display: block;
  outline: 0;
}
.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline;
}
.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
}
.bx-wrapper .bx-next {
  right: 10px;
}
.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  outline: 0;
  text-indent: -9999px;
  z-index: 5000;
}
.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}
