@charset "utf-8";
@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none}*:focus{outline:none}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
body{
	-webkit-text-size-adjust:100%;
	color:#000;
	background:#69e7df;
	font-family:'Roboto','BIZ UDPGothic', sans-serif;
	font-style:normal;
	font-size:17px;
	letter-spacing:0.1em;
	line-height:1.8;
	word-wrap:break-word;
}
a{color:#000}
a:hover{text-decoration:none}
.ah{transition:opacity .3s ease}
.ah:hover{opacity:.7}
::selection{
	background:#00eee3;
	color:#000;
}
::-moz-selection{
	background:#00eee3;
	color:#000;
}
:root{
	--catch_color:#00eee3;
}
@media screen and (max-width:768px){
	html{
		font-size:62.5%;
		/*-webkit-overflow-scrolling:auto;*/
	}
	body{
		font-size:10px;
		font-size:1rem;
		min-width:320px;
		-webkit-overflow-scrolling:auto;
	}
	@supports (-webkit-touch-callout:none){
		html{
			height:-webkit-fill-available;
		}
		body{
			min-height:100vh;
			min-height:-webkit-fill-available;
		}
	}
	.pc{display:none}
	.ah:hover{opacity:1}
}
@media screen and (min-width:769px){
	.sp{display:none}
}
.kv {}
.kv img {
	width:100%;
	height:auto;
	display: block;
}
.about {
	border:5px solid #69e7df;
	background:#FFF;
	padding:60px 5%;
}
@media screen and (max-width:768px){
	.about {
		border:4px solid #69e7df;
		background:#FFF;
		padding:8vw;
	}
}
.about__inner {
	max-width:1060px;
	margin:0 auto;
}
.about__title {
	font-size:24px;
	line-height:1;
	margin-bottom: 20px;
	font-weight: 700;
	transform:scale(0.77,1);
	transform-origin: left center;
}
@media screen and (max-width:768px){
	.about__title {
		font-size:4.5333vw;
		margin-bottom:5vw;
	}
}
.about__list {
	display: flex;
	margin-bottom:10px;
	line-height:1.6;
}
@media screen and (max-width:768px){
	.about__list {
		margin-bottom:2vw;
		font-size:3.2vw;
		flex-wrap: wrap;
	}
}
.about__list dt {
	white-space: nowrap;
	margin-right:10px;
}
@media screen and (max-width:768px){
	.about__list dt {
		margin-right:2vw;
	}
}
.about__list dd {
	flex:1;
}
.content {
	padding:60px 0 0;
}
@media screen and (max-width:768px){
	.content {
		padding:8vw 0 0;
	}
}
.content__inner {
	max-width: 1200px;
	margin:0 auto;
}
.content__nav {
	width:75%;
	margin:0 auto;
	border-left:2px solid #000;
	border-top:2px solid #000;
	display: flex;
}
@media screen and (max-width:768px){
	.content__nav {
		width:90.6666vw;
		border-left:unset;
		border-top:1px solid #000;
		justify-content: center;
		flex-wrap: wrap;
	}
}
.content__nav li {
	width:calc(100% / 3);
	border-right:2px solid #000;
	border-bottom:2px solid #000;
}
@media screen and (max-width:768px){
	.content__nav li {
		width:50%;
		border:1px solid #000;
		border-top:unset;
	}
	.content__nav li:nth-child(even){
		border-left:unset;
	}
}
.content__nav li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height:46px;
	font-size:min(23.4px,2vw);
	text-decoration: none;
}
@media screen and (max-width:768px){
	.content__nav li a {
		height:9.3333vw;
		font-size:4vw;
	}
}
.content__nav li a:hover {
	background:#000;
	color:#69e7df;
}
.content__nav li a span {
	transform:scale(0.77,1);
	display: block;
	width:130%;
	margin:0 -15%;
	text-align: center;
}

.backto__nav {
	width:80%;
	margin:0 auto;
	border-left:2px solid #000;
	border-top:2px solid #000;
	display: flex;
}
@media screen and (max-width:768px){
	.backto__nav {
		width:90.6666vw;
		border-left:unset;
		border-top:1px solid #000;
		justify-content: center;
		flex-wrap: wrap;
	}
}
.backto__nav li {
	width:calc(100% / 1);
	border-right:2px solid #000;
	border-bottom:2px solid #000;
}
@media screen and (max-width:768px){
	.backto__nav li {
		width:50%;
		border:1px solid #000;
		border-top:unset;
	}
	.backto__nav li:nth-child(even){
		border-left:unset;
	}
}
.backto__nav li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height:46px;
	font-size:min(23.4px,2vw);
	text-decoration: none;
}
@media screen and (max-width:768px){
	.backto__nav li a {
		height:9.3333vw;
		font-size:4vw;
	}
}
.backto__nav li a:hover {
	background:#000;
	color:#69e7df;
}
.backto__nav li a span {
	transform:scale(0.77,1);
	display: block;
	width:130%;
	margin:0 -15%;
	text-align: center;
}

.stage {
	padding-top:60px;
}
@media screen and (max-width:768px){
	.stage {
		padding-top:10vw;
		font-size: 3.2vw
	}
}
.stage__incontainer {
	padding:0 5%;
}
@media screen and (max-width:768px){
	.stage__incontainer {
		padding:0 8.5333vw;
	}
}
.stage__incontent {
	max-width: 1080px;
	margin:0 auto;
}
.stage__title {
	font-size:24px;
	font-weight: 700;
	transform:scale(0.77,1);
	transform-origin: center center;
	line-height:1;
	text-align: center;
	margin:0 -14.935% 20px;
}
@media screen and (max-width:768px){
	.stage__title {
		font-size:4.5333vw;
		margin-bottom:5vw;
	}
}
.stage__lists {
	margin-bottom:40px;
}
@media screen and (max-width:768px){
	.stage__lists {
		margin-bottom:6vw;
	}
}
.stage__list {
	display: flex;
	margin-bottom:10px;
	line-height:1.6;
}
@media screen and (max-width:768px){
	.stage__list {
		margin-bottom:3vw;
		flex-wrap: wrap;
	}
}
.stage__list dt {
	white-space: nowrap;
	margin-right:10px;
}
@media screen and (max-width:768px){
	.stage__list dt {
		margin-right:2vw;
	}
}
.stage__list dd {
	flex:1;
}
.stage__imgs {
	display: flex;
	margin-bottom:40px;
}
@media screen and (max-width:768px){
	.stage__imgs {
		width:94.6666vw;
		display: flex;
		justify-content: center;
		margin:0 auto 5vw;
		flex-wrap: wrap;
	}
}
.stage__img {
	width:20%;
}
@media screen and (max-width:768px){
	.stage__img {
		width:calc(100% / 3);
	}
}
.stage__img img {
	width:100%;
	height:auto;
}
.booth {
	padding:60px 0;
}
@media screen and (max-width:768px){
	.booth {
		padding:12vw 0;
		font-size:3.2vw;
	}
}
.booth__list {
	display: flex;
	margin-bottom:10px;
	line-height:1.6;
}
.booth__list dt {
	white-space: nowrap;
	margin-right:10px;
}
.booth__list dd {
	flex:1;
}
.booth__texts {
	margin-bottom:1.6em;
}
.goods {
	padding-top:60px;
	background:url(../img/goods_bg.png) no-repeat center center / cover;
	padding-bottom:60px;
}
@media screen and (max-width:768px){
	.goods {
		padding-top:12vw;
		padding-bottom:12vw;
		background-position: right center;
	}
}
.goods__maker {
	font-weight: 700;
	background:var(--catch_color);
	font-size:18px;
	padding:0 8px;
	margin-top:0px;
}
.goods__maker_sub {
	font-weight: 700;
	background:var(--catch_color);
	font-size:18px;
	padding:0 8px;
	margin-top:0px;
}
@media screen and (max-width:768px){
	.goods__maker {
		width:calc(100% + 10vw);
		margin:0 -5vw 5vw;
		font-size:3.8vw;
	}
	.goods__maker_sub {
		width:calc(100%);
		margin:0 -5vw 5vw;
		font-size:3.8vw;
	}
}
.goods__maker span {
	transform:scale(0.77,1);
	transform-origin:left center;
	display: block;
}
.goods__lists {
	display: flex;
	flex-wrap: wrap;
	width:calc(100% + 36px);
	margin:20px -18px 20px;
}
@media screen and (max-width:768px){
	.goods__lists {
		display: flex;
		flex-wrap: wrap;
		width:calc(100% + 12vw);
		margin:0 -6vw 5vw;
	}
}
.goods__lists li {
	padding:0 18px 36px;
	width:25%;
}
@media screen and (max-width:768px){
	.goods__lists li {
		padding:0 1.5vw 4vw;
		width:calc(100% / 3)
	}
}
.goods__lists li a {
	display: block;
	text-decoration: none;
}
.goods__thumb {
	position: relative;
	width:100%;
	padding-top:100%;
	background:#FFF;
	margin-bottom:20px;
	overflow: hidden;
}
@media screen and (max-width:768px){
	.goods__thumb {
		margin-bottom:2vw;
	}
}
.goods__thumb img {
	position: absolute;
	display: block;
	left:0;
	top:0;
	width:100%;
	height:100%;
	object-fit:contain;
	transition: all 1s ease;
}
.goods__lists li a:hover .goods__thumb img {
	transform:scale(1.1);
}
.goods__name {
	font-size:16px;
	font-weight: 500;
	line-height:1.538;
	width:130%;
	margin:0 -15%;
	transform:scale(0.77,1);
}
@media screen and (max-width:768px){
	.goods__name {
		font-size:3.2vw;
	}
}
.goods__name span {
	background:#FFF;
	padding:0 2px;
}
.goods__only {
	font-size:18px;
	text-align: center;
	transform:scale(0.77,1);
	font-weight: 700;
	margin-bottom:1em;

}
@media screen and (max-width:768px){
	.goods__only {
		font-size:3.8vw;
	}
}
.modal{
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	overflow:hidden;
	z-index:12000;
	background:#000;
	display:none
}
.modal__inner{
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	overflow:auto;
}
.modal__close{
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0
}
.modal__close a{
	position:absolute;
	right:10px;
	top:10px;
	width:60px;
	height:60px;
	display:block;
	overflow:hidden
}
.modal__close a:before,
.modal__close a:after{
	content:'';
	position:absolute;
	left:50%;
	top:50%;
	width:120px;
	height:1px;
	margin-top:-1px;
	background:var(--catch_color);
	margin-left:-60px;
	transition:all 0.3s ease
}
.modal__close a:before{
	transform:rotate(45deg)
}
.modal__close a:after{
	transform:rotate(-45deg)
}
.modal__close a:hover:before,
.modal__close a:hover:after{
	transform:rotate(180deg)
}
.modal__cont{
	display:flex;
	justify-content:center;
	align-items:center;
	min-height:100%;
	min-width:100%;
	color:#FFF;
	pointer-events:none;
	position: relative;
	z-index:2;
	pointer-events: none;
}
.modal__movie{
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	display:flex;
	justify-content:center;
	align-items:center
}
.modal__movieinner{
	position:absolute;
	top:128px;
	bottom:100px;
	left:200px;
	right:200px;
	display:flex;
	justify-content:center;
	align-items:center;
	pointer-events: auto;
}
.modal__movieframe{
	display:block;
}
.modal__movieframe iframe{
	width:100%;
	height:100%
}
@media screen and (max-width:768px){
	.modal__close a{
		right:4.8vw;
		top:auto;
		bottom:4.8vw;
		width:10vw;
		height:10vw;
	}
	.modal__movieinner{
		position:absolute;
		top:32vw;
		bottom:32vw;
		left:0;
		right:0;
	}
}
.goods__itembg {
	position: fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:url(../img/goods_bg.png) no-repeat center center / cover;
}
.goods__inner {
	width:100%;
}
.goods__item {
	position: relative;
	display: block;
	min-height:100vh;
	z-index:500;
	min-width:100%;
	margin: 0 auto;
	pointer-events: auto;
}
.goods__itemcont {
	padding-top:64px;
	position: relative;
}
@media screen and (max-width:768px){
	.goods__itemcont {
		padding-top:5vw;
	}
}
.goods__itemName {
	font-size:30px;
	font-weight:500;
	margin-bottom:93px;
	padding-right:100px;
	width:130%;
	margin:0 -15% 80px;
	transform:scale(0.77,1);
}
@media screen and (max-width:768px){
	.goods__itemName {
		font-size:5vw;
		margin-bottom:8vw;
		padding-right:0;
	}
}
.goods__itemName span {
	padding:0 5px;
	background:#FFF;
	color:#000;
}
.goods__itemimg {
	background:#FFF;
	padding-top: 56.41%;
	position: relative;
	margin-bottom:1.5em;
}
.goods__itemimg img {
	position: absolute;
	left:0;
	top:0;
	object-fit: contain;
	display:block;
	width:100%;
	height:100%;
}
.goods__texts {
	color:#000;
}
@media screen and (max-width:768px){
	.goods__texts {
		font-size:3.2vw;
	}
}
.goods__specs {
	display: grid;
	grid-template-columns:auto 1fr;
	color:#000;
}
@media screen and (max-width:768px){
	.goods__specs {
		padding:0 3.2vw;
		font-size:3.8vw;
	}
}
.goods__specs dt {
	margin-right:1em;
}
.goods__specs dt:before {
	content:'●';
	color: #FFF;
}
.goods__itemClose {
	position: absolute;
	right:0;
	top:64px;
	width:76px;
	height:76px;
}
@media screen and (max-width:768px){
	.goods__itemClose {
		position: fixed;
		right:0;
		top:0;
		width:9.6vw;
		height:9.6vw;
	}
}
.goods__itemClose a {
	display: block;
	position: relative;
	z-index: 500;
	overflow: hidden;
	height:76px;
	background:#FFF;
}
@media screen and (max-width:768px){
	.goods__itemClose a {
		height:9.6vw;
	}
}
.goods__itemClose a:before,
.goods__itemClose a:after {
	content:'';
	position: absolute;
	left:-50%;
	right:-50%;
	top:50%;
	height:2px;
	background:#000;
	margin-top:-1px;
}
.goods__itemClose a:before {
	transform:rotate(45deg);
}
.goods__itemClose a:after {
	transform:rotate(-45deg);
}
.goods__main {
	max-width:1280px;
	margin:0 auto;
	padding:40px 120px 65px 120px;
}
@media screen and (max-width:768px){
	.goods__main {
		max-width:1280px;
		margin:0 auto;
		padding:8vw 0 12vw 0;
	}
}