@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP|Oswald:300,400");
html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	background:#000;
	margin:0;
}

article,
aside,
details,
figcaption,
figure,
footer,
/*header,*/
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: 700;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: 700;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*================================================================================
FileName: _base.scss
================================================================================*/
html,
button,
input,
select,
textarea {
	color: #fff;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

::-moz-selection {
	background: #fff;
	text-shadow: none;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

img {
	vertical-align: middle;
}

@media only screen and (max-width: 768px) {
	img {
		width: 100%;
	}
}

li img {
	vertical-align: bottom;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

textarea {
	resize: vertical;
}

body {
	padding: 0;
	margin: 0;
	overflow-x: hidden;
	position: relative;
	word-wrap: break-word;
}

.clearfix::after {
	clear: both;
	content: "";
	display: table;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

ul li {
	list-style: none;
	padding: 0;
	margin: 0;
}

/*
global
------------------------------------------------*/
body,
body > div,
input,
button,
textarea,
select {
	font-family: "Noto Sans Japanese", "游ゴシック", YuGothic,
		"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, sans-serif;
	line-height: 1.55;
	color: #fff;
	font-size: 18px;
	letter-spacing: 0.015em;
}

@media only screen and (max-width: 768px) {
	body,
	body > div,
	input,
	button,
	textarea,
	select {
		font-size: 14px;
	}
}

#en {
	font-family: "Oswald", sans-serif;
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 0.087em;
	line-height: 1.35;
}

h1 {
	margin: 0;
	font-size: 150%;
}

h2 {
	margin: 0;
	font-size: 140%;
}

h3 {
	margin: 0;
	font-size: 130%;
}

h4 {
	margin: 0;
	font-size: 120%;
}

h5 {
	margin: 0;
	font-size: 110%;
}

p {
	margin: 0;
	padding: 0;
}

a {
	outline: none !important;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
	text-decoration: none;
	color: #fff;
}

*:focus {
	outline: none;
}

dl,
ul,
ol,
dt,
dd,
li {
	margin: 0;
	padding: 0;
}

:placeholder-shown {
	opacity: 0.7;
}

::-webkit-input-placeholder {
	opacity: 0.7;
}

:-moz-placeholder {
	opacity: 0.7;
}

::-moz-placeholder {
	opacity: 0.7;
}

:-ms-input-placeholder {
	opacity: 0.7;
}

.spOnly {
	display: none !important;
}

@media only screen and (max-width: 768px) {
	.spOnly {
		display: block !important;
	}
}

.spOnlyIn {
	display: none !important;
}

@media only screen and (max-width: 768px) {
	.spOnlyIn {
		display: inline-block !important;
	}
}

.spOnlyTb {
	display: none !important;
}

@media only screen and (max-width: 768px) {
	.spOnlyTb {
		display: table !important;
	}
}

.pcOnly {
	display: block !important;
}

@media only screen and (max-width: 768px) {
	.pcOnly {
		display: none !important;
	}
}

.pcOnlyIn {
	display: inline-block !important;
}

@media only screen and (max-width: 768px) {
	.pcOnlyIn {
		display: none !important;
	}
}

.pcOnlyTb {
	display: table !important;
}

@media only screen and (max-width: 768px) {
	.pcOnlyTb {
		display: none !important;
	}
}

/*================================================================================
FileName: _layout.scss
================================================================================*/
body {
	/*overflow-x: auto;*/
	width: 100%;
}

@media only screen and (max-width: 768px) {
	body {
		min-width: inherit;
		width: 100%;
		max-width: 100%;
	}
}

/*
header
------------------------------------------------*/
header{
	/*position:relative;*/
}
#header-bg5000 {
	/*
	min-width: 1064px;
	width: 100%;
	padding: 15px;
	z-index: 5;
	background: #000;
	height: 54px;
	position: relative;
	*/
	position:absolute;
	z-index:5;
	/*background:#000;*/
	min-width:1064px;
	width:100%;
	height:54px;
	padding:15px;
	/*margin-top:90px;*/
}
@media only screen and (max-width: 768px) {
	#header-bg5000{
		min-width:auto;
		height:33px;
		/*margin-top:80px;*/
	}
}
/*
#header-bg5000 #logo {
	position: absolute;
	width: 96px;
	left: 29px;
	top: 4px;
}
#header-bg5000 #logo img {
	width: 100%;
}
@media only screen and (max-width: 768px) {
	#header-bg5000 #logo {
		top: 0;
		left: 14px;
		width: 56px;
	}
}
*/
#header-bg5000 ul {
	right: 0;
	font-family: "Oswald", sans-serif;
	font-size: 18px;
	top: 0;
	padding: 13px 30px 0;
	position: absolute;
	letter-spacing: 0.04em;
}

@media only screen and (max-width: 768px) {
	#header-bg5000 ul {
		font-size: 12px;
		padding: 8px 10px;
	}
}

#header-bg5000 ul li {
	display: inline-block;
	opacity: 1;
}

#header-bg5000 ul li.active {
	opacity: 0.2;
}

#header-bg5000 ul li a {
	padding: 0 5px;
}

@media only screen and (max-width: 768px) {
	#header-bg5000 ul li a {
		padding: 0 3px;
	}
}

.floorMap {
	position: fixed;
	z-index: 100;
	right: 50px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media only screen and (max-width: 768px) {
	.floorMap {
		right: 0.7%;
	}
}

.floorMap li {
	text-indent: -10000px;
}

.floorMap li a {
	padding: 0 10px;
	height: 28px;
	display: block;
}

@media only screen and (max-width: 768px) {
	.floorMap li a {
		height: 24px;
	}
}

.floorMap li a span {
	height: 24px;
	width: 2px;
	-webkit-transform: skewY(-40deg);
	transform: skewY(-40deg);
	display: block;
	background: #fff;
	margin: 0 auto 4px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

@media only screen and (max-width: 768px) {
	.floorMap li a span {
		height: 19px;
	}
}

.floorMap li.current a span {
	background: #939393;
}

.floorMap .floor_pageTop a {
	padding-top: 30px;
	background: url("../img/pageTop.png") no-repeat top left 5px;
	color: #f64629;
	font-size: 12px;
	display: block;
	margin-top: 18px;
	font-family: "Oswald", sans-serif;
}

@media only screen and (max-width: 768px) {
	.floorMap .floor_pageTop a {
		height: 49px;
		background: url("../img/pageTop_sp.png") no-repeat top left 5px;
		background-size: 7px;
		margin-top: 10px;
		font-size: 14px;
		padding-top: 25px;
	}
}

@media only screen and (max-width: 768px) {
	.floorMap .floor_pageTop a span {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		display: block;
	}
}

/*
container
------------------------------------------------*/
#container {
	min-width: 1064px;
	overflow: hidden;
	width: 100%;
}

@media only screen and (max-width: 768px) {
	#container {
		min-width: auto;
	}
}

#container #contents {
	position: relative;
	width: 100%;
}

.inner {
	width: 1064px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 20px;
}

@media only screen and (max-width: 768px) {
	.inner {
		width: 92%;
		margin: 0 4%;
		padding: 0;
	}
}

.hide {
	opacity: 0;
}

.ttlArea {
	line-height: 1;
	margin-left: -5px;
}

@media only screen and (max-width: 768px) {
	.ttlArea {
		margin-left: 0;
	}
}

.ttlArea .subTxt {
	font-size: 36px;
	letter-spacing: 0.036em;
	font-weight: bold;
}

@media only screen and (max-width: 768px) {
	.ttlArea .subTxt {
		font-size: 18px;
	}
}

.ttlStyle01 {
	font-size: 160px;
	font-family: "Oswald", sans-serif;
	font-weight: normal;
	letter-spacing: 0.03em;
	margin-bottom: 17px;
}

@media only screen and (max-width: 768px) {
	.ttlStyle01 {
		font-size: 80px;
		margin-bottom: 6px;
	}
}

.ttlStyle02 {
	font-size: 72px;
	font-family: "Oswald", sans-serif;
	line-height: 1;
	font-weight: normal;
	margin-top: 15px;
	letter-spacing: 0.0015em;
	position: relative;
	overflow: hidden;
}

@media only screen and (max-width: 768px) {
	.ttlStyle02 {
		margin-top: 0;
		font-size: 44px;
	}
}

.ttlStyle02 span {
	font-size: 30px;
	vertical-align: super;
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
	display: inline-block;
}

@media only screen and (max-width: 768px) {
	.ttlStyle02 span {
		font-size: 15px;
		-webkit-transform: translateY(-10px);
		transform: translateY(-10px);
	}
}

.ttlStyle02.ttlLine:after,
.ttlStyle02.ttlLine:before {
	position: absolute;
	top: 11px;
	bottom: 0;
	height: 2px;
	content: "";
	margin: auto;
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine:after,
	.ttlStyle02.ttlLine:before {
		top: 2px;
	}
}

.ttlStyle02.ttlLine:before {
	background: #fff;
	width: 50%;
	left: 252px;
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine:before {
		left: 172px;
		width: 100%;
	}
}

.ttlStyle02.ttlLine:after {
	background: url("../img/fadebd_img.png") no-repeat left;
	width: 130px;
	left: 122px;
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine:after {
		left: 42px;
		background: url("../img/fadebd_img_sp.png") no-repeat left;
		background-size: 130px;
	}
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine_sp:after,
	.ttlStyle02.ttlLine_sp:before {
		position: absolute;
		top: 11px;
		bottom: 0;
		height: 2px;
		content: "";
		margin: auto;
		top: 2px;
	}
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine_sp:before {
		background: #fff;
		width: 100%;
		left: 172px;
	}
}

@media only screen and (max-width: 768px) {
	.ttlStyle02.ttlLine_sp:after {
		width: 130px;
		left: 42px;
		background: url("../img/fadebd_img_sp.png") no-repeat left;
		background-size: 130px;
	}
}

.ttlStyle03 {
	font-size: 80px;
	font-family: "Oswald", sans-serif;
	font-weight: normal;
	letter-spacing: 0.03em;
	margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
	.ttlStyle03 {
		font-size: 40px;
	}
}

.attention {
	font-size: 14px;
	letter-spacing: 0.1em;
}

.lNav {
	margin-left: 0;
	margin-top: 28px;
}

.lNav li {
	display: inline-block;
}

.lNav li a {
	font-family: "Oswald", sans-serif;
	-webkit-transition: 0.2s all;
	transition: 0.2s all;
	opacity: 0.3;
	letter-spacing: 0.053em;
	padding-right: 4px;
}

.lNav li a.current,
.lNav li a:hover {
	opacity: 1;
}

.txtBoxStyle01 {
	width: 100%;
	margin-top: 17px;
}

.txtBoxStyle01 p {
	background: rgba(116, 61, 40, 0.24);
	padding: 14px 20px;
}

@media only screen and (max-width: 768px) {
	.txtBoxStyle01 p {
		padding: 11px 14px;
		font-size: 16px;
		letter-spacing: 0.11em;
		font-weight: 100;
	}
}

.txtBoxStyle01 .ttl {
	background: rgba(129, 30, 20, 0.7);
	padding: 10px 21px 20px;
	font-size: 36px;
	font-weight: normal;
	letter-spacing: 0.08em;
}

@media only screen and (max-width: 768px) {
	.txtBoxStyle01 .ttl {
		padding: 7px 3px 10px 13px;
		font-size: 24px;
		letter-spacing: 0.14em;
	}
}

.boxWrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

@media only screen and (max-width: 768px) {
	.boxWrapper {
		display: block;
	}
}

.modalArea {
	z-index: 1000;
	position: fixed;
	width: 95%;
	max-width: 1520px;
	text-align: center;
	padding: 0 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background: rgba(0, 0, 0, 0.7);
	display: none;
}

@media only screen and (max-width: 768px) {
	.modalArea {
		padding: 0 10px;
	}
}

.modalArea .modalInner {
	padding: 10.13% 0;
}

@media only screen and (max-width: 768px) {
	.modalArea .modalInner {
		padding: 10.13% 0 30.13%;
	}
}

.modalArea img {
	max-width: 100%;
	max-height: 565px;
}

.modalArea.show .img {
	-webkit-animation: fadeFromB 0.5s 0.4s forwards;
	animation: fadeFromB 0.5s 0.4s forwards;
}

/*
mainVis
------------------------------------------------*/
#mainVis {
	width: 100%;
	height: calc(100vh - 54px);
	background: url("../img/mainVisual.jpg") no-repeat TOP;
	background-size: cover;
	position: relative;
}

@media only screen and (max-width: 768px) {
	#mainVis {
		width: 100%;
		height: auto;
		background: none;
	}
}

#mainVis .scrollDown {
	text-align: center;
	display: block;
	margin: 0 auto;
	width: 35px;
	left: 0;
	right: 0;
	position: absolute;
	bottom: 20px;
}

@media only screen and (max-width: 768px) {
	#mainVis .scrollDown {
		width: 4.66%;
		bottom: 8px;
	}
}

#mainVis .mainTxt {
	position: absolute;
	bottom: 89px;
	max-width: 1188px;
	width: 100%;
	margin: auto;
	left: 0;
	right: 0;
	padding: 0 20px;
}

@media only screen and (max-width: 768px) {
	#mainVis .mainTxt {
		bottom: 6.4%;
		width: 78.5%;
		right: auto;
		padding: 0 5px;
	}
}

/*
sec01
------------------------------------------------*/
#sec01 {
	background: #000;
	padding: 100px;
	z-index: 0;
	position: relative;
}

@media only screen and (max-width: 768px) {
	#sec01 {
		padding: 22px 20px;
	}
}

#sec01 #movie {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 46.68%;
}

@media only screen and (max-width: 768px) {
	#sec01 #movie {
		padding-top: 64%;
	}
}

#sec01 img {
	width: 100%;
}

#sec01 #yt {
	position: absolute;
	width: 100%;
	top: 0;
	height: 100%;
}

#sec01 .thumb {
	z-index: 5;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
}

#sec01 .thumb img {
	width: 100%;
	height: 100%;
	cursor: pointer;
}

/*
sec02
------------------------------------------------*/
.bgWrapper {
	background: url("../img/sec02_bg.jpg") no-repeat center top;
	background-size: cover;
}

@media only screen and (max-width: 768px) {
	.bgWrapper {
		background-image: url("../img/sec02_bg_sp.jpg");
	}
}

#sec02 {
	padding-top: 144px;
}

@media only screen and (max-width: 768px) {
	#sec02 {
		padding-top: 75px;
	}
}

#sec02 .inner {
	position: relative;
}

#sec02 .ball {
	position: absolute;
	top: -224px;
	right: -396px;
	z-index: 5;
}

@media only screen and (max-width: 768px) {
	#sec02 .ball {
		top: -94px;
		right: -60px;
		width: 184px;
		z-index: 0;
	}
}

#sec02 .contentsArea {
	margin-top: 87px;
}

@media only screen and (max-width: 768px) {
	#sec02 .contentsArea {
		margin-top: 30px;
	}
}

#sec02 .boxWrapper {
	margin-bottom: 80px;
}

@media only screen and (max-width: 768px) {
	#sec02 .boxWrapper {
		margin-bottom: 36px;
	}
}

#sec02 .txtBox {
	width: 49.218%;
	margin-right: 20px;
}

@media only screen and (max-width: 768px) {
	#sec02 .txtBox {
		width: 100%;
		margin-right: 0;
	}
}

#sec02 .box dl {
	z-index: 5;
	position: relative;
	width: 100%;
	height: 100%;
}

#sec02 .txtBoxStyle01 {
	margin-top: 17px;
}

@media only screen and (max-width: 768px) {
	#sec02 .txtBoxStyle01 {
		margin-top: 20px;
	}
}

#sec02 .txtBoxStyle01 .ttl {
	background: rgba(167, 63, 0, 0.63);
	background-size: cover;
}

#sec02 .txtBoxStyle01 p {
	background: rgba(167, 46, 0, 0.24);
	background-size: cover;
}

#sec02 .lineBox {
	position: relative;
	width: 485px;
	height: 352px;
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox {
		width: 100%;
		margin-top: 28px;
		height: 104.533vw;
	}
}

#sec02 .lineBox dt {
	font-size: 30px;
	letter-spacing: 0.06em;
	font-family: "Oswald", sans-serif;
	-webkit-transform: translateY(-21px) translateX(-9px);
	transform: translateY(-21px) translateX(-9px);
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox dt {
		font-size: 18px;
	}
}

#sec02 .lineBox:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 0;
	height: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-top: 1px solid #fff;
	border-right: 1px solid transparent;
}

#sec02 .lineBox:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 1px solid #fff;
	border-left: 1px solid transparent;
}

#sec02 .lineBox .imgBox {
	text-align: center;
}

#sec02 .lineBox .imgBox .img01 {
	position: absolute;
}

#sec02 .lineBox .imgBox .img02 {
	position: absolute;
}

#sec02 .lineBox .imgBox span {
	display: inline-block;
}

#sec02 .lineBox .imgBox .old {
	margin-top: 9px;
	position: relative;
	font-size: 17px;
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox .imgBox .old {
		margin-top: -6px;
		font-size: 12px;
		display: block;
	}
}

#sec02 .lineBox .imgBox .old:after {
	background: url("../img/arrow01.svg") no-repeat;
	content: "";
	position: absolute;
	display: block;
	width: 91px;
	height: 20px;
	right: -117px;
	top: 3px;
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox .imgBox .old:after {
		content: none;
	}
}

#sec02 .lineBox .imgBox .itemName {
	padding: 4px 26px;
	border-radius: 30px;
	background: #fff;
	color: #a54024;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox .imgBox .itemName {
		font-size: 14px;
		padding: 4px 0;
		width: 90%;
		letter-spacing: 0.17em;
		display: block;
		margin: 0 auto;
	}
}

@media only screen and (max-width: 320px) {
	#sec02 .lineBox .imgBox .itemName {
		font-size: 12px;
		padding: 1px 0;
	}
}

#sec02 .lineBox .imgBox .new {
	font-family: "Oswald", sans-serif;
}

@media only screen and (max-width: 768px) {
	#sec02 .lineBox .imgBox .new {
		font-size: 15px;
	}
}

@media only screen and (max-width: 320px) {
	#sec02 .lineBox .imgBox .new {
		display: block;
		padding-top: 3px;
	}
}

#sec02 .item01 .lineBox dt {
	-webkit-transform: translateY(-24px) translateX(-8px);
	transform: translateY(-24px) translateX(-8px);
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox dt {
		-webkit-transform: translateY(-13px);
		transform: translateY(-13px);
	}
}

#sec02 .item01 .lineBox .img01 {
	top: 69px;
	left: 23px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox .img01:after {
		display: block;
		position: absolute;
		right: 9%;
		bottom: 18%;
		width: 9.3%;
		height: 0;
		padding-top: 12%;
		background: url("../img/arrow01_sp.svg") no-repeat;
		background-size: 100%;
		content: "";
	}
}

#sec02 .item01 .lineBox .img02 {
	top: 19px;
	right: 18px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox .img01 {
		width: 40%;
		top: 6.6%;
		left: 2.6%;
	}
	#sec02 .item01 .lineBox .img02 {
		width: 65.7%;
		top: 26%;
		right: 1%;
	}
}

#sec02 .item01 .lineBox.anime:after {
	left: 197px;
	-webkit-animation: bdAnime01_a 1s forwards;
	animation: bdAnime01_a 1s forwards;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox.anime:after {
		-webkit-animation: bdAnimeSp01_a 1s forwards;
		animation: bdAnimeSp01_a 1s forwards;
		left: 129px;
	}
}

#sec02 .item01 .lineBox.anime:before {
	top: 37px;
	-webkit-animation: bdAnime01_b 1s forwards;
	animation: bdAnime01_b 1s forwards;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox.anime:before {
		-webkit-animation: bdAnimeSp01_b 1s forwards;
		animation: bdAnimeSp01_b 1s forwards;
	}
}

#sec02 .item01 .lineBox .zoomWrapper,
#sec02 .item01 .lineBox .closeWrapper {
	bottom: 10px;
	right: 20px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item01 .lineBox .zoomWrapper,
	#sec02 .item01 .lineBox .closeWrapper {
		right: auto;
		bottom: 6.58%;
		left: 5%;
	}
}

#sec02 .item02 {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 {
		margin-bottom: 43px;
	}
}

#sec02 .item02 .itemName {
	font-size: 16px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .itemName {
		font-size: 14px;
	}
}

#sec02 .item02 .txtBox {
	margin-right: 0;
}

#sec02 .item02 .lineBox dt {
	-webkit-transform: translateY(-21px) translateX(-1px);
	transform: translateY(-21px) translateX(-1px);
	text-align: right;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox dt {
		-webkit-transform: translateY(-14px) translateX(0px);
		transform: translateY(-14px) translateX(0px);
		text-align: left;
	}
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox {
		height: 71.766vw;
	}
}

#sec02 .item02 .lineBox .ttlStyle02 {
	margin-top: 5px;
}

#sec02 .item02 .lineBox .img01 {
	position: absolute;
	left: 12px;
	top: 38px;
}

#sec02 .item02 .lineBox .img01 .itemName {
	margin-top: 20px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox .img01 {
		position: absolute;
		top: 11.2%;
		left: 1%;
		width: 98%;
	}
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox .img01 .itemName {
		margin-top: 9.4%;
	}
}

#sec02 .item02 .lineBox.anime:after {
	right: 117px;
	-webkit-animation: bdAnime02_a_en 1s forwards;
	animation: bdAnime02_a_en 1s forwards;
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox.anime:after {
		-webkit-animation: bdAnimeSp03_a 1s forwards;
		animation: bdAnimeSp03_a 1s forwards;
		border-right: 1px solid #fff;
		border-left: none;
		left: 69px;
	}
}

#sec02 .item02 .lineBox.anime:before {
	top: 37px;
	-webkit-animation: bdAnime02_b 1s forwards;
	animation: bdAnime02_b 1s forwards;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	right: 0;
	left: auto;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox.anime:before {
		-webkit-animation: bdAnimeSp03_b 1s forwards;
		animation: bdAnimeSp03_b 1s forwards;
		top: 25px;
		border-left: 1px solid #fff;
		border-right: none;
		left: 0;
		right: auto;
	}
}

#sec02 .item02 .lineBox .zoomWrapper,
#sec02 .item02 .lineBox .closeWrapper {
	bottom: 10px;
	right: 20px;
}

@media only screen and (max-width: 768px) {
	#sec02 .item02 .lineBox .zoomWrapper,
	#sec02 .item02 .lineBox .closeWrapper {
		right: auto;
		bottom: 19.33%;
		left: 5%;
	}
}

#sec02 .pointArea {
	background: rgba(255, 255, 255, 0.9);
	color: #4a2614;
	text-align: center;
	position: relative;
	margin-top: 80px;
	padding: 12px 0 16px;
	font-size: 22px;
	line-height: 1.7;
	letter-spacing: 0.09em;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea {
		margin-top: 0;
		font-size: 16px;
		padding: 16px 0 19px;
	}
}

#sec02 .pointArea:after,
#sec02 .pointArea:before {
	display: block;
	width: 0;
	height: 0;
	content: "";
	position: absolute;
}

#sec02 .pointArea:before {
	border-top: 0 solid #4a2614;
	border-bottom: 17px solid transparent;
	border-left: 17px solid #4a2614;
	top: -4px;
	left: 6px;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea:before {
		top: -2px;
		left: 4px;
		border-top: 0 solid #4a2614;
		border-bottom: 5px solid transparent;
		border-left: 5px solid #4a2614;
	}
}

#sec02 .pointArea:after {
	border-bottom: 0 solid #4a2614;
	border-top: 17px solid transparent;
	border-right: 17px solid #4a2614;
	bottom: -4px;
	right: 6px;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea:after {
		bottom: -2px;
		right: 4px;
		border-bottom: 0 solid #4a2614;
		border-top: 5px solid transparent;
		border-right: 5px solid #4a2614;
	}
}

#sec02 .pointArea .pointTtl {
	font-family: "Oswald", sans-serif;
	-webkit-transform: translateY(-18px);
	transform: translateY(-18px);
	font-size: 36px;
	letter-spacing: 0.055em;
	line-height: 1;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea .pointTtl {
		font-size: 21px;
		-webkit-transform: translateY(-12px);
		transform: translateY(-12px);
	}
}

#sec02 .pointArea .pointTtl span {
	font-size: 20px;
	padding-top: 3px;
	display: block;
	letter-spacing: 0.04em;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea .pointTtl span {
		font-size: 11px;
	}
}

#sec02 .pointArea .bigTxt {
	font-size: 28px;
	font-weight: bold;
	padding-bottom: 5px;
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea .bigTxt {
		font-size: 16px;
		padding-bottom: 10px;
		line-height: 1;
	}
}

@media only screen and (max-width: 768px) {
	#sec02 .pointArea p {
		line-height: 1.35;
	}
}

.zoomWrapper,
.closeWrapper {
	width: 36px;
	font-family: "Oswald", sans-serif;
	font-size: 14px;
	position: absolute;
	cursor: pointer;
	text-align: center;
	right: 20px;
	letter-spacing: 0;
	bottom: 10px;
	line-height: 1.8;
}

@media only screen and (max-width: 768px) {
	.zoomWrapper .txt,
	.closeWrapper .txt {
		font-size: 12px;
	}
}

.zoom,
.close-bg5000 {
	width: 36px;
	height: 35px;
	border: solid 2px #fff;
	border-radius: 100%;
	-webkit-animation: beatAnime 2s infinite;
	animation: beatAnime 2s infinite;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	will-change: transform;
}

@media only screen and (max-width: 768px) {
	.zoom,
	.close-bg5000 {
		border: solid 1px #fff;
		width: 30px;
		height: 29px;
		margin: auto;
	}
}

.zoom .zoomInner,
.close-bg5000 .zoomInner,
.zoom .closeInner,
.close-bg5000 .closeInner {
	width: 8px;
	position: relative;
}

.zoom .zoomInner:after,
.close-bg5000 .zoomInner:after,
.zoom .closeInner:after,
.close-bg5000 .closeInner:after,
.zoom .zoomInner:before,
.close-bg5000 .zoomInner:before,
.zoom .closeInner:before,
.close-bg5000 .closeInner:before {
	width: 100%;
	height: 1px;
	content: "";
	background: #fff;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.zoom .zoomInner:before,
.close-bg5000 .zoomInner:before,
.zoom .closeInner:before,
.close-bg5000 .closeInner:before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.zoom:after,
.close-bg5000:after {
	content: "";
	position: absolute;
	top: -2px;
	left: -2px;
	border: 2px solid rgba(255, 255, 255, 0.5);
	opacity: 0;
	border-radius: 50%;
	width: 100%;
	height: 100%;
	-webkit-animation: sonar 2s infinite;
	animation: sonar 2s infinite;
}

.closeWrapper {
	bottom: 7%;
	left: 0;
	right: 0;
	margin: auto;
}

.closeInner {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*
sec03
------------------------------------------------*/
#sec03 {
	background: url("../img/sec03_bgScreen.png") no-repeat center top;
	margin-top: -116px;
	padding-bottom: 277px;
	padding-top: 383px;
}

@media only screen and (max-width: 768px) {
	#sec03 {
		background: url("../img/sec03_bg_sp.png") no-repeat center top;
		background-size: 100%;
		margin-top: 7px;
		padding-top: 132px;
		padding-bottom: 60px;
	}
}

#sec03 .contentsArea {
	z-index: 5;
	position: relative;
	padding-top: 53px;
}

@media only screen and (max-width: 768px) {
	#sec03 .contentsArea {
		padding-top: 0;
		margin-top: -43px;
	}
}

#sec03 .ttlStyle01 {
	margin-bottom: 21px;
}

@media only screen and (max-width: 768px) {
	#sec03 .ttlStyle01 {
		margin-bottom: 4px;
	}
}

#sec03 .txtBoxStyle01 {
	width: 100%;
	margin-top: 19px;
}

#sec03 .txtBoxStyle01 p {
	background: url("../img/sec02_txtBg.jpg") no-repeat;
	padding: 17px 20px 14px;
}

@media only screen and (max-width: 768px) {
	#sec03 .txtBoxStyle01 p {
		padding: 12px 13px 11px;
	}
}

#sec03 .inner {
	position: relative;
}

@media only screen and (max-width: 768px) {
	#sec03 .ballWrapper {
		position: relative;
		margin-top: -23px;
		width: 521px;
		margin-bottom: -40px;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		left: 50%;
	}
}

#sec03 .ballWrapper .zoomWrapper,
#sec03 .ballWrapper .closeWrapper {
	z-index: 5;
	position: absolute;
}

#sec03 .ballWrapper .itemNum {
	position: absolute;
	left: -27px;
	font-size: 23px;
	top: 3px;
}

#sec03 .ballWrapper .itemNum:before {
	content: "#";
	font-size: 10px;
	vertical-align: top;
	padding-top: 2px;
	display: inline-block;
}

#sec03 .ballWrapper .zoom01 {
	top: 173px;
	right: auto;
	left: 144px;
}

#sec03 .ballWrapper .zoom02 {
	top: 361px;
	right: auto;
	left: 173px;
}

#sec03 .ballWrapper .zoom03 {
	top: 271px;
	right: 111px;
}

#sec03 .ball_logo {
	position: absolute;
	right: -537px;
	-webkit-transition: opacity 1s,
		right 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9),
		-webkit-transform 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9);
	transition: opacity 1s, right 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9),
		-webkit-transform 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9);
	transition: opacity 1s, right 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9),
		transform 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9);
	transition: opacity 1s, right 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9),
		transform 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9),
		-webkit-transform 0.5s cubic-bezier(0.62, -0.06, 0.44, 0.9);
	top: -30px;
}

#sec03 .ball_logo.big {
	right: 0;
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

@media only screen and (max-width: 768px) {
	#sec03 .ball_logo {
		top: 0;
		right: auto;
		left: 0;
		width: 521px;
		margin: auto;
	}
}

#sec03 .ball {
	position: absolute;
	right: -537px;
	-webkit-transition: all 1s;
	transition: all 1s;
	top: -30px;
}

@media only screen and (max-width: 768px) {
	#sec03 .ball {
		position: relative;
		top: 0;
		right: auto;
		left: 0;
		width: 521px;
		margin: auto;
	}
}

#sec03 .smoke {
	position: absolute;
	top: 56px;
	right: -335px;
	z-index: 4;
	opacity: 0;
}

@media only screen and (max-width: 768px) {
	#sec03 .smoke {
		width: 100%;
		right: auto;
		left: 0;
		margin: auto;
		top: 0;
	}
}

#sec03 .anime .smoke {
	-webkit-animation: smoke linear forwards 1.5s;
	animation: smoke linear forwards 1.5s;
}

#sec03 .anime .ball {
	opacity: 0;
}

#sec03 .txtBoxStyle01 {
	width: calc(100% - 520px);
}

@media only screen and (max-width: 768px) {
	#sec03 .txtBoxStyle01 {
		width: 100%;
	}
}

#sec03 .txtBoxStyle01 .ttl {
	background: rgba(129, 30, 20, 0.7);
	padding: 7px 13px 10px;
}

#sec03 .txtBoxStyle01 p {
	background: rgba(129, 30, 20, 0.5);
}

#sec03 .txtBox {
	position: relative;
}

#sec03 .blockWrapper {
	position: absolute;
	height: 170px;
	overflow: hidden;
	-webkit-transform: translateX(-20px);
	transform: translateX(-20px);
	top: 40px;
	z-index: 5;
}

#sec03 .blockWrapper:after {
	position: absolute;
	height: 2px;
	content: "";
	margin: auto;
	top: 58px;
}

#sec03 .blockWrapper:after {
	background: url("../img/fadebd_img.png") no-repeat left;
	width: 130px;
	left: 0;
}

#sec03 .blockWrapper .block {
	position: absolute;
	left: 0;
}

#sec03 .blockInner {
	position: absolute;
	width: 150px;
	height: 150px;
	right: 0;
}

@media only screen and (max-width: 768px) {
	#sec03 .blockInner {
		position: relative;
	}
}

#sec03 .zoomWrapper,
#sec03 .closeWrapper {
	position: absolute;
	right: 35px;
	top: 20px;
}

#sec03 .line01 {
	left: 130px;
	position: absolute;
	top: 58px;
	width: calc(100% - 198px);
}

#sec03 .line01:after {
	background: #fff;
	right: 139px;
	width: 100%;
	height: 2px;
	content: "";
	display: block;
	top: 58px;
}

#sec03 .line02 {
	position: absolute;
	width: 89px;
	border-top: 2px #fff solid;
	left: -83px;
	top: 26px;
	-webkit-transform: rotate(-40deg);
	transform: rotate(-40deg);
	-webkit-transform-origin: right;
	transform-origin: right;
	display: none;
}

#sec03 .item01 .blockWrapper {
	left: 122px;
	top: -13px;
}

#sec03 .item01 .block {
	width: 730px;
}

#sec03 .item01 .zoomWrapper,
#sec03 .item01 .closeWrapper {
	top: 17px;
	right: 31px;
}

#sec03 .item01 .line02 {
	top: 54px;
	left: 0;
	width: 102px;
	-webkit-transform: rotate(27deg);
	transform: rotate(27deg);
}

#sec03 .item01 .line02:before {
	left: 0;
	top: 0;
}

#sec03 .item01 .blockWrapper.anime {
	-webkit-animation: sec03item01 7s forwards
		cubic-bezier(0.62, -0.06, 0.44, 0.9);
	animation: sec03item01 7s forwards cubic-bezier(0.62, -0.06, 0.44, 0.9);
}

#sec03 .item02 {
	margin-top: 32px;
}

@media only screen and (max-width: 768px) {
	#sec03 .item02 {
		margin-top: 37px;
	}
}

#sec03 .item02 .blockWrapper {
	left: 122px;
	top: -13px;
}

#sec03 .item02 .block {
	width: 540px;
}

#sec03 .item02 .zoomWrapper,
#sec03 .item02 .closeWrapper {
	top: 17px;
	right: -19px;
}

#sec03 .item02 .zoom,
#sec03 .item02 .close-bg5000,
#sec03 .item02 .zoom:after,
#sec03 .item02 .close-bg5000:after {
	-webkit-animation-delay: 400ms;
	animation-delay: 400ms;
}

#sec03 .item02 .line01 {
	top: 58px;
	width: calc(100% - 147px);
}

#sec03 .item02 .line02 {
	top: 119px;
	left: -41px;
	width: 144px;
	-webkit-transform: rotate(50.2deg);
	transform: rotate(50.2deg);
}

#sec03 .item02 .blockWrapper.anime {
	-webkit-animation: sec03item02_en 7s forwards
		cubic-bezier(0.62, -0.06, 0.44, 0.9);
	animation: sec03item02_en 7s forwards cubic-bezier(0.62, -0.06, 0.44, 0.9);
}

#sec03 .item03 {
	margin-top: 30px;
}

#sec03 .item03 .blockWrapper {
	height: 170px;
	top: -119px;
	width: 0;
	left: 122px;
}

#sec03 .item03 .blockWrapper:after {
	bottom: 0;
	top: auto;
}

#sec03 .item03 .block {
	width: 780px;
	height: 170px;
}

#sec03 .item03 .zoomWrapper,
#sec03 .item03 .closeWrapper {
	top: 0;
	right: 16px;
}

#sec03 .item03 .zoom,
#sec03 .item03 .close-bg5000,
#sec03 .item03 .zoom:after,
#sec03 .item03 .close-bg5000:after {
	-webkit-animation-delay: 200ms;
	animation-delay: 200ms;
}

#sec03 .item03 .blockInner {
	height: 170px;
	width: 310px;
}

#sec03 .item03 .line02 {
	bottom: 0;
	left: 0;
	width: 287px;
	-webkit-transform: rotate(-25deg);
	transform: rotate(-25deg);
	-webkit-transform-origin: left bottom;
	transform-origin: left bottom;
	height: 0;
	top: auto;
	right: auto;
}

#sec03 .item03 .line01 {
	bottom: 0;
	top: auto;
	width: 319px;
}

#sec03 .item03 .blockWrapper.anime {
	-webkit-animation: sec03item03 7s forwards
		cubic-bezier(0.62, -0.06, 0.44, 0.9);
	animation: sec03item03 7s forwards cubic-bezier(0.62, -0.06, 0.44, 0.9);
}

/*
sec04
------------------------------------------------*/
#sec04 {
	background: #ffeeee;
	color: #f64629;
	padding: 120px 0 111px;
}

@media only screen and (max-width: 768px) {
	#sec04 {
		padding: 58px 0;
	}
}

#sec04 a {
	color: #f64629;
}

#sec04 .note {
	padding: 28px 0 17px;
	line-height: 1.35;
}

@media only screen and (max-width: 768px) {
	#sec04 .note {
		padding: 13px 0 0;
		font-size: 16px;
		line-height: 1.35;
		letter-spacing: 0.09em;
	}
}

#sec04 .lNav {
	margin-top: 14px;
}

#sec04 .contentsArea {
	margin-top: 73px;
}

@media only screen and (max-width: 768px) {
	#sec04 .contentsArea {
		margin-top: 13px;
	}
}

@media only screen and (max-width: 768px) {
	#sec04 .logo {
		width: 56px;
	}
}

#sec04 .map {
	height: 550px;
	background: url("../img/sec03_map.png") no-repeat center top;
	margin-top: -9px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map {
		background-size: 92.26%;
		margin-top: 39px;
		height: 45.33333vw;
	}
}

#sec04 .map .inner {
	position: relative;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .inner {
		height: 100%;
	}
}

#sec04 .map .loc {
	position: absolute;
}

#sec04 .map .loc01 {
	top: 204px;
	left: 174px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .loc01 {
		top: 37.5%;
		left: 19.3%;
		width: 14.92%;
	}
}

#sec04 .map .loc02 {
	top: 135px;
	left: 486px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .loc02 {
		top: 23.6%;
		left: 47.7%;
		width: 11.88%;
	}
}

#sec04 .map .loc03 {
	top: 402px;
	left: 522px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .loc03 {
		top: 72.7%;
		left: 51%;
		width: 11.3%;
	}
}

#sec04 .map .loc04 {
	top: 178px;
	left: 782px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .loc04 {
		top: 31.6%;
		left: 75.5%;
		width: 8.11%;
	}
}

#sec04 .map .loc05 {
	top: 388px;
	left: 867px;
}

@media only screen and (max-width: 768px) {
	#sec04 .map .loc05 {
		top: 70.5%;
		left: 81.6%;
		width: 12.89%;
	}
}

/*
sec05
------------------------------------------------*/
#sec05 {
	background: #1e1e1e;
	padding: 110px 0 111px;
}

@media only screen and (max-width: 768px) {
	#sec05 {
		padding: 54px 0 30px;
	}
}

#sec05 .note {
	padding: 3px 0 0;
	line-height: 1.6;
}

#sec05 .lNav {
	margin-top: 16px;
}

#sec05 .boxWrapper {
	margin-bottom: 93px;
	width: 843px;
	margin: 0 auto;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

@media only screen and (max-width: 768px) {
	#sec05 .boxWrapper {
		margin: 0;
		width: auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

#sec05 .box {
	text-align: center;
	margin-bottom: 38px;
	width: 350px;
}

@media only screen and (max-width: 768px) {
	#sec05 .box {
		margin-bottom: 18px;
		width: 50%;
	}
}

#sec05 .box .itemImg {
	text-align: left;
}

@media only screen and (max-width: 768px) {
	#sec05 .box .itemImg {
		width: 86.95%;
		margin: 0 auto;
	}
}

#sec05 .box:nth-child(even) .itemImg {
	text-align: right;
}

@media only screen and (min-width: 769px) {
	#sec05 .box:nth-child(even) .itemImg {
		padding-right: 12px;
	}
}

@media only screen and (min-width: 769px) {
	#sec05 .box:nth-child(odd) .itemImg {
		padding-left: 12px;
	}
}

#sec05 .itemName {
	font-family: "Oswald", sans-serif;
	display: inline-block;
	padding: 21px 5px 0 0;
	font-size: 24px;
	letter-spacing: -0.03em;
	line-height: 1;
}

@media only screen and (max-width: 768px) {
	#sec05 .itemName {
		font-size: 16px;
		letter-spacing: 0.04em;
		padding: 15px 3px 0 0;
	}
}

#sec05 .itemNum {
	display: inline-block;
	font-family: "Oswald", sans-serif;
	font-size: 14px;
	vertical-align: text-top;
	margin-top: 18px;
}

@media only screen and (max-width: 768px) {
	#sec05 .itemNum {
		font-size: 10px;
		padding-right: 10px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin-top: 7px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}

#sec05 .itemNum .ttl {
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 2px 4px 2px 5px;
	border: solid #fff 1px;
	font-size: 11px;
	vertical-align: top;
}

@media only screen and (max-width: 768px) {
	#sec05 .itemNum .ttl {
		font-size: 10px;
		padding: 2px 1px 2px 4px;
		line-height: 1;
		vertical-align: baseline;
		vertical-align: initial;
		margin: 0 5px 0 0;
		width: 49px;
		display: block;
	}
}

@media only screen and (max-width: 768px) {
	#sec05 .itemNum .num {
		width: calc(100% - 49px);
		line-height: 1.5;
	}
}

#sec05 .itemNum .delimiter {
	padding-left: 3px;
}

#sec05 .price {
	display: inline-block;
	font-size: 18px;
	vertical-align: text-top;
	line-height: 1.2;
}

@media only screen and (max-width: 768px) {
	#sec05 .price {
		font-size: 14px;
		line-height: 1;
	}
}

#sec05 .price span {
	display: inline-block;
	margin: 0 7px 0 0;
	font-size: 11px;
}

@media only screen and (max-width: 768px) {
	#sec05 .price span {
		font-size: 10px;
	}
}

#sec05 .detail {
	width: 275px;
	margin: 22px auto;
	text-align: left;
	padding-left: 15px;
	font-family: "Noto Sans Japanese", "游ゴシック", YuGothic,
		"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, sans-serif;
	font-weight: 100;
	letter-spacing: 0.07em;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail {
		margin: 11px auto;
		padding-left: 4%;
		width: 100%;
	}
}

#sec05 .detail .tag {
	color: #fff;
	margin-top: 28px;
	font-family: "Oswald", sans-serif;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag {
		margin-top: 19px;
		margin-bottom: 5px;
	}
}

#sec05 .detail .tag dd,
#sec05 .detail .tag dt,
#sec05 .detail .tag li {
	padding: 3px 6px;
	letter-spacing: 0.11em;
	font-size: 11px;
	margin-right: 2px;
	display: inline-block;
	line-height: 1.2;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag dd,
	#sec05 .detail .tag dt,
	#sec05 .detail .tag li {
		padding: 0 3px 1px;
		margin-right: 1px;
		margin-bottom: 0;
		font-size: 9px;
	}
	#sec05 .detail .tag dd:last-child,
	#sec05 .detail .tag dt:last-child,
	#sec05 .detail .tag li:last-child {
		margin-right: 0;
	}
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag dt {
		display: block;
		width: 54px;
	}
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag dd,
	#sec05 .detail .tag li {
		display: block;
		line-height: 0.6;
		float: left;
		padding: 4px;
		margin: 6px 5px 0 0;
	}
}

#sec05 .detail .tag .cl01 {
	background-color: #dd281d;
	display: inline-block;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag .cl01 {
		display: block;
		width: 54px;
	}
}

#sec05 .detail .tag .cl02 {
	background-color: #2e9c43;
	display: inline-block;
}

#sec05 .detail .tag.other {
	margin-top: 5px;
	padding-left: 72px;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail .tag.other {
		padding-left: 0;
		border-top: solid 1px #ffeeee;
		margin-right: 20px;
	}
}

#sec05 .detail ul {
	margin-top: 4px;
	line-height: 0.9;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail ul {
		margin-top: 8px;
	}
}

#sec05 .detail ul li {
	display: inline-block;
	font-size: 11px;
	padding-right: 7px;
	letter-spacing: 0;
}

@media only screen and (max-width: 768px) {
	#sec05 .detail ul li {
		font-size: 10px;
		display: block;
		line-height: 1.4;
		margin-bottom: 1px;
	}
}

@media only screen and (min-width: 769px) {
	#sec05 .item01 .detail {
		width: 320px;
		margin: 17px auto;
	}
	#sec05 .item02 .detail {
		width: 295px;
		padding-left: 56px;
	}
	#sec05 .item03 .detail {
		width: 295px;
		margin: 20px auto;
		padding-left: 0;
	}
	#sec05 .item04 .detail {
		width: 100%;
		margin: 21px auto;
		padding-left: 73px;
	}
	#sec05 .item05 .detail {
		width: 100%;
		padding-left: 0;
		margin-bottom: 60px;
	}
	#sec05 .item06 .detail {
		width: 100%;
		padding-left: 73px;
	}
	#sec05 .item07 .detail {
		width: 320px;
	}
}

#sec05 .moreLInk a {
	color: #f64629;
	font-size: 12px;
	text-decoration: underline;
}

#sec05 .contentsArea {
	margin-top: 61px;
}

#sec05 .cart{
	text-align:center;
	margin-top:20px;
}
#sec05 .cart a{
	display:inline-block;
	background:#0072bf;
	color:#fff;
	font-size:14px;
	border-radius:256px;
	padding:4px 16px;
}
@media only screen and (max-width: 768px){
	#sec05 .cart a{
		font-size:12px;
	}
}




/*
pagetop
------------------------------------------------*/
.pageTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	padding: 0;
}

.pageTop a {
	display: block;
	width: 50px;
	height: 50px;
	margin: 0 auto;
	padding: 12px 0;
	background: #000;
	color: #fff;
	font-size: 20px;
	text-align: center;
}

/*
footer
------------------------------------------------*/
#copyright {
	background: #f64a2e;
	padding: 7px;
	text-align: center;
	font-family: "Oswald", sans-serif;
	color: #fff;
	font-size: 10px;
	min-width: 1064px;
}

@media only screen and (max-width: 768px) {
	#copyright {
		min-width: auto;
		padding: 3px 4px 6px;
	}
}

/*01.border
--------------------------------------*/
@-webkit-keyframes bdAnime01_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 288px;
		height: 0;
	}
	100% {
		width: 288px;
		height: 100%;
	}
}
@keyframes bdAnime01_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 288px;
		height: 0;
	}
	100% {
		width: 288px;
		height: 100%;
	}
}

@-webkit-keyframes bdAnime01_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: 315px;
		width: 0;
	}
	100% {
		height: 315px;
		width: 100%;
	}
}

@keyframes bdAnime01_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: 315px;
		width: 0;
	}
	100% {
		height: 315px;
		width: 100%;
	}
}

@-webkit-keyframes bdAnime02_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 418px;
		height: 0;
	}
	100% {
		width: 418px;
		height: 100%;
	}
}

@keyframes bdAnime02_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 418px;
		height: 0;
	}
	100% {
		width: 418px;
		height: 100%;
	}
}

@-webkit-keyframes bdAnime02_a_en {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 369px;
		height: 0;
	}
	100% {
		width: 369px;
		height: 100%;
	}
}

@keyframes bdAnime02_a_en {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 369px;
		height: 0;
	}
	100% {
		width: 369px;
		height: 100%;
	}
}

@-webkit-keyframes bdAnime02_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 0;
		height: 315px;
	}
	100% {
		width: 100%;
		height: 315px;
	}
}

@keyframes bdAnime02_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 0;
		height: 315px;
	}
	100% {
		width: 100%;
		height: 315px;
	}
}

@-webkit-keyframes bdAnime03_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 387px;
		height: 0;
	}
	100% {
		width: 387px;
		height: 100%;
	}
}

@keyframes bdAnime03_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: 387px;
		height: 0;
	}
	100% {
		width: 387px;
		height: 100%;
	}
}

@-webkit-keyframes bdAnime03_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 37px);
		width: 0;
	}
	100% {
		height: calc(100% - 37px);
		width: 100%;
	}
}

@keyframes bdAnime03_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 37px);
		width: 0;
	}
	100% {
		height: calc(100% - 37px);
		width: 100%;
	}
}

@-webkit-keyframes bdAnimeSp01_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 129px);
		height: 0;
	}
	100% {
		width: calc(100% - 129px);
		height: 100%;
	}
}

@keyframes bdAnimeSp01_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 129px);
		height: 0;
	}
	100% {
		width: calc(100% - 129px);
		height: 100%;
	}
}

@-webkit-keyframes bdAnimeSp01_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 37px);
		width: 0;
	}
	100% {
		height: calc(100% - 37px);
		width: 100%;
	}
}

@keyframes bdAnimeSp01_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 37px);
		width: 0;
	}
	100% {
		height: calc(100% - 37px);
		width: 100%;
	}
}

@-webkit-keyframes bdAnimeSp02_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 50px);
		height: 0;
	}
	100% {
		width: calc(100% - 50px);
		height: 100%;
	}
}

@keyframes bdAnimeSp02_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 50px);
		height: 0;
	}
	100% {
		width: calc(100% - 50px);
		height: 100%;
	}
}

@-webkit-keyframes bdAnimeSp02_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 24px);
		width: 0;
	}
	100% {
		height: calc(100% - 24px);
		width: 100%;
	}
}

@keyframes bdAnimeSp02_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 24px);
		width: 0;
	}
	100% {
		height: calc(100% - 24px);
		width: 100%;
	}
}

@-webkit-keyframes bdAnimeSp03_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 69px);
		height: 0;
	}
	100% {
		width: calc(100% - 69px);
		height: 100%;
	}
}

@keyframes bdAnimeSp03_a {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		width: calc(100% - 69px);
		height: 0;
	}
	100% {
		width: calc(100% - 69px);
		height: 100%;
	}
}

@-webkit-keyframes bdAnimeSp03_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 25px);
		width: 0;
	}
	100% {
		height: calc(100% - 25px);
		width: 100%;
	}
}

@keyframes bdAnimeSp03_b {
	0% {
		width: 0;
		height: 0;
	}
	50% {
		height: calc(100% - 25px);
		width: 0;
	}
	100% {
		height: calc(100% - 25px);
		width: 100%;
	}
}

/*02.zoom
--------------------------------------*/
@-webkit-keyframes sonar {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
		opacity: 1;
	}
	80% {
		-webkit-transform: scale3d(2, 2, 2);
		transform: scale3d(2, 2, 2);
		opacity: 0;
	}
}
@keyframes sonar {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
		opacity: 1;
	}
	80% {
		-webkit-transform: scale3d(2, 2, 2);
		transform: scale3d(2, 2, 2);
		opacity: 0;
	}
}

@-webkit-keyframes beatAnime {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	20% {
		-webkit-transform: scale3d(1.2, 1.2, 1.2);
		transform: scale3d(1.2, 1.2, 1.2);
	}
	40% {
		-webkit-transform: scale3d(1.05, 1.05, 1.05);
		transform: scale3d(1.05, 1.05, 1.05);
	}
	60% {
		-webkit-transform: scale3d(1.15, 1.15, 1.15);
		transform: scale3d(1.15, 1.15, 1.15);
	}
	80% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes beatAnime {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	20% {
		-webkit-transform: scale3d(1.2, 1.2, 1.2);
		transform: scale3d(1.2, 1.2, 1.2);
	}
	40% {
		-webkit-transform: scale3d(1.05, 1.05, 1.05);
		transform: scale3d(1.05, 1.05, 1.05);
	}
	60% {
		-webkit-transform: scale3d(1.15, 1.15, 1.15);
		transform: scale3d(1.15, 1.15, 1.15);
	}
	80% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

/*03.fade
--------------------------------------*/
@-webkit-keyframes fadeFromB {
	0% {
		-webkit-transform: translate3D(0, 20px, 0);
		transform: translate3D(0, 20px, 0);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate3D(0, 0, 0);
		transform: translate3D(0, 0, 0);
		opacity: 1;
	}
}
@keyframes fadeFromB {
	0% {
		-webkit-transform: translate3D(0, 20px, 0);
		transform: translate3D(0, 20px, 0);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate3D(0, 0, 0);
		transform: translate3D(0, 0, 0);
		opacity: 1;
	}
}

@-webkit-keyframes fadeFromL {
	0% {
		-webkit-transform: translate3D(-20px, 0, 0);
		transform: translate3D(-20px, 0, 0);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate3D(0, 0, 0);
		transform: translate3D(0, 0, 0);
		opacity: 1;
	}
}

@keyframes fadeFromL {
	0% {
		-webkit-transform: translate3D(-20px, 0, 0);
		transform: translate3D(-20px, 0, 0);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate3D(0, 0, 0);
		transform: translate3D(0, 0, 0);
		opacity: 1;
	}
}

.fadeFromB {
	opacity: 0;
}

.fadeFromB.anime {
	-webkit-animation: fadeFromB 1s forwards;
	animation: fadeFromB 1s forwards;
}

.fadeFromL {
	opacity: 0;
}

.fadeFromL.anime {
	-webkit-animation: fadeFromL 1s forwards;
	animation: fadeFromL 1s forwards;
}

.anime .fadeFromL {
	-webkit-animation: fadeFromL 1s forwards;
	animation: fadeFromL 1s forwards;
}

@media only screen and (min-width: 769px) {
	.delay300ms.anime,
	.anime .delay300ms {
		-webkit-animation-delay: 300ms;
		animation-delay: 300ms;
	}
	.delay500ms.anime,
	.anime .delay500ms {
		-webkit-animation-delay: 500ms;
		animation-delay: 500ms;
	}
	.delay700ms.anime,
	.anime .delay700ms {
		-webkit-animation-delay: 700ms;
		animation-delay: 700ms;
	}
	.delay1000ms.anime,
	.anime .delay1000ms {
		-webkit-animation-delay: 1000ms;
		animation-delay: 1000ms;
	}
}

@-webkit-keyframes slideAnime {
	0% {
		-webkit-transform: translateX(-80px);
		transform: translateX(-80px);
		opacity: 0;
	}
	15% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
}

@keyframes slideAnime {
	0% {
		-webkit-transform: translateX(-80px);
		transform: translateX(-80px);
		opacity: 0;
	}
	15% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
}

@-webkit-keyframes slideAnime02 {
	1% {
		-webkit-transform: translateX(-30px);
		transform: translateX(-30px);
		opacity: 0;
	}
	14% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
}

@keyframes slideAnime02 {
	1% {
		-webkit-transform: translateX(-30px);
		transform: translateX(-30px);
		opacity: 0;
	}
	14% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}
}

@-webkit-keyframes sec03item01 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 730px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 730px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@keyframes sec03item01 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 730px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 730px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@-webkit-keyframes sec03item02 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 540px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 540px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@keyframes sec03item02 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 540px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 540px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@-webkit-keyframes sec03item02_en {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 600px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 600px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@keyframes sec03item02_en {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 600px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 600px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@-webkit-keyframes sec03item03 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 780px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 780px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

@keyframes sec03item03 {
	0% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	3% {
		width: 0;
		-webkit-transform: translateX(-50px);
		transform: translateX(-50px);
	}
	20% {
		width: 780px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
	100% {
		width: 780px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}
}

/*03.ballandSmoke
--------------------------------------*/
@-webkit-keyframes smoke {
	0% {
		opacity: 0;
		-webkit-transform: translateY(80px);
		transform: translateY(80px);
	}
	20% {
		opacity: 0.8;
	}
	100% {
		opacity: 0;
		-webkit-transform: translateY(-80px);
		transform: translateY(-80px);
	}
}
@keyframes smoke {
	0% {
		opacity: 0;
		-webkit-transform: translateY(80px);
		transform: translateY(80px);
	}
	20% {
		opacity: 0.8;
	}
	100% {
		opacity: 0;
		-webkit-transform: translateY(-80px);
		transform: translateY(-80px);
	}
}

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

body{
	padding:0;
	padding-top:60px;
}
body.nav-open{}
body.nav-open .floorMap,
body.nav-open .modalArea{
	z-index:0;
}
header{
	z-index:1001;
}
header img{
	width:auto;
}
div.modal{
	z-index:1002;	
}
@media screen and (min-width: 768px){
/* TB -------------------------------------------------------------- */
	body{
		padding-top:80px;
	}
}
@media screen and (min-width: 1025px){
/* PC -------------------------------------------------------------- */
}


