@charset "utf-8";
#top {
	z-index: 1;
	position: relative;
	overflow: hidden;
}
.toplogo {
	position: absolute;
	top: 51%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	z-index: 30;
 transition-duration: .5s;
}
.toplogo img {
	width: 100%;
	animation: bounce-in 0.35s ease-out forwards;
}
.top_copy {
	top: 49vw;
	left: 22vw;
	width: 54vw;
	z-index: 29;
	animation: bounce-in 0.35s ease-out forwards;
}
.c-btn {
	position: absolute;
	bottom: 60px;
	left: -10px;
	width: 70px;
	height: 200px;
	z-index: 20;
}
.btn_exhibit {
	color: #26c494;
	background: #fff;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	writing-mode: vertical-rl;
	text-orientation: upright;
	vertical-align: middle;
	border: solid 6px #26c494;
	border-radius: 6px;
}
.btn_exhibit p {
	font-weight: 700;
}
a:hover .btn_exhibit {
	background:linear-gradient(to bottom, #26C494, #FFF28F);
	color: #fff;
}
#topinfo {
	background: transparent;
	position: relative;
	height: auto;
	width: 100%;
	overflow: hidden;
	margin: 0 auto 0;
	text-align: center;
	z-index: 31;
}
#topinfo .schedule {
	background-color: #fff;
	max-width: 1200px;
	margin: 0 auto 2rem;
	border-radius: 20px;
	text-align: center;
	padding: 20px;
	box-sizing: border-box;
}
#topinfo .schedule p {
	font-weight: 600;
	font-feature-settings: "palt";
}
#topinfo H4 {
	font-size: 3rem;
	line-height: 1;
	font-weight: 900;
	margin: 2rem 0;
	padding: 0;
	color: #299cd2;
	letter-spacing: -0.1rem;
}
#topinfo h5 {
	font-size: 1.6rem;
	font-weight: 800;
	color: #299cd2;
	margin: 0 0 1rem;
}
#topinfo h5 s {
	text-decoration: none;
	font-size: 12px;
	font-weight: 800;
}
.schedule i {
	background: #299cd2;
	color: #fff !important;
	position: relative;
	height: 50px;
	padding: 0 10px !important;
	border-radius: 50px;
	font-style: normal;
	font-size: 1.2rem;
}
#topinfo s {
	text-decoration: none;
	font-size: 12px;
}
.topABOUT {
	margin: 3rem 0;
}
.topABOUT p {
	line-height: 2;
	color: #299cd2;
}
.bgset {
	position: relative;
	position: relative;
	width: 100%;
	height: 150vw;
}
.bg_base {
	position: absolute;
	top: 0;
	width: 100%;
	height: 150vw;
	background: url('../img/top_bg_sp2.png')no-repeat 50% 50%;
	background-size:  auto 100%;
	animation: moku 1.8s forwards;
	z-index: 1;
}
.bg_waku {
	position: absolute;
	top: 0;
	width: 100%;
	height: 150vw;
	background: url('../img/top_mokumoku_sp.png')no-repeat 50% 50%;
	background-size:  auto 100%;
 animation: moku .5s forwards;
	z-index: 2;
}
.bg_ribbon {
	position: absolute;
	top: 0;
	width: 100%;
	height: 150vw;
	background: url('../img/top_ribbon_sp.png')no-repeat 50% 50%;
	background-size:  auto 100%;
	animation: ribbon 1.8s forwards;
	animation-timing-function: cubic-bezier(0.4, 0.0, 0.2, 1);
	z-index: 10;
}
.bg_item {
	position: absolute;
	top: 0;
	width: 100%;
	height: 150vw;
	background: url('../img/top_item_sp.png')no-repeat 50% 50%;
	background-size:  auto 100%;
	animation: item 1s forwards;
	animation-timing-function: cubic-bezier(0.4, 0.0, 0.2, 1);
	z-index: 11;
}
.i_01, .i_02, .i_03, .i_04, .i_05, .i_06, .cat_01, .cat_02, .cat_03, .cat_04, .top_copy {
	position: absolute;
	height: auto;
}
.i_01, .i_02, .i_03, .i_04, .i_05, .i_06, .cat_01, .cat_02, .cat_03, .cat_04 {
	animation: bgroom 1s forwards;
}
.i_01 img, .i_02 img, .i_03 img, .i_04 img, .i_05 img, .i_06 img, .cat_01 img, .cat_02 img, .cat_03 img, .cat_04 img, .top_copy img {
	width: 100%;
	height: auto;
}
.i_01 {
	bottom: 29%;
	left: -16%;
	width: 38%;
	z-index: 5;
}
.i_02 {
	bottom: 5%;
	left: 11%;
	width: 47%;
	z-index: 6;
}
.i_03 {
	bottom: 3%;
	right: 9%;
	width: 57%;
	z-index: 7;
}
.i_04 {
	top: 4%;
	right: -3%;
	width: 66%;
	z-index:8;
}
.i_05 {
	top: 0%;
	left: -9%;
	width: 66%;
	z-index: 9;
}
.i_06 {
	bottom: 26%;
	right: -9%;
	width: 39%;
	z-index: 10;
}
.cat_01 {
	top: 3vw;
	left: 2vw;
	width: 20%;
	z-index: 11;
}
.cat_02 {
	bottom: 3vw;
	left: 17vw;
	width: 20%;
	z-index: 12;
	transform: rotate(-15deg);
}
.cat_03 {
	top: 5vw;
	right: 2vw;
	width: 20%;
	z-index: 13;
}
.cat_04 {
	bottom: 5vw;
	right: 6%;
	width: 20%;
	z-index: 14;
	transform: rotate(30deg);
}
.hidden {
	opacity: 0;
	display:  none;
	transform: scale(0);
	transition: all 1s ease-in-out;
}
.visible {
	opacity: 1;
	display:  block;
	width: 100%;
	height: 100%;
	transform: scale(1);
}

 @media screen and (min-width: 768px) {
 .bgset, .bg_base, .bg_waku, .bg_ribbon {
 height: 100vw;
 overflow: hidden;
 background-size: cover;
}
 .bgset, .bg_base, .bg_ribbon {
 background-size: cover;
}
 .bg_item {
 position: absolute;
 top: 0;
 width: 100%;
 height: 800px;
 background: url('../img/top_item_tab.png')no-repeat 50% 50%;
 background-size:  auto 100%;
}
 .bg_waku {
 position: absolute;
top: 0;
width: 100%;
 height: 800px;
 background: url('../img/top_mokumoku_tab.png')no-repeat 50% 50%;
 background-size:  auto 100%;
 z-index: 2;
}
 .toplogo img {
 width: 70%;
 max-width: 600px;
}
.i_01 {
 bottom: 12%;
 left: -1%;
 width: 32%;
}
 .i_02 {
 bottom: 3%;
 left: 23%;
 width: 37%;
}
 .i_03 {
 bottom: 0;
 right: 20%;
 width: 40%;
}
 .i_04 {
 top: 5%;
 right: 7%;
 width: 49%;
}
 .i_05 {
 top: -2%;
 left: 0%;
 width: 52%;
}
 .i_06 {
 bottom: 37%;
 right: -4%;
 width: 37%;
}
.cat_01 {
 top: 1%;
 left: 8%;
 width: 13%;
}
 .cat_02 {
 bottom: 2%;
 left: 15%;
 width: 13%;
}
 .cat_03 {
 top: 4%;
 right: 3%;
 width: 13%;
 transform: rotate(-15deg);
}
 .cat_04 {
 bottom: 5%;
 right: 2%;
 width: 13%;
}
 .top_copy {
 top: 31%;
 left: 35%;
 width: 29%;
}
}
@media screen and (min-width: 960px) {
 .spV {
 display: none;
}
 .toplogo img {
 width: 55%;
 max-width: 600px;
}
 .c-btn {
 height: 18vw;
 max-height: 220px;
 width: 80px;
}
 .btn_exhibit p {
 font-size: 1.8rem;
}
 .bg {
 position: fixed;
 top: 0;
 background-size:cover;
 width: 100vw;
 height: 100vh;
}
 .bgset {
position: relative;
width: 100%;
height: 800px;
}
 .bg_base {
position: absolute;
top: 0;
width: 100%;
height: 800px;
background:  url('../img/top_bg_pc2.png')no-repeat 50% 0;
background-size:  auto 100%;
animation: moku 1.8s forwards;
z-index: 1;
}
 .bg_waku {
 position: absolute;
top: 0;
width: 100%;
 height: 800px;
 background: url('../img/top_mokumoku.png')no-repeat 50% 50%;
 background-size:  auto 100%;
 z-index: 2;
}
 .bg_ribbon {
 position: absolute;
 top: 0;
 width: 100%;
 height: 800px;
 background: url('../img/top_ribbon.png')no-repeat 50% 50%;
 background-size:  auto 100%;
}
 .bg_item {
 position: absolute;
 top: 0;
 width: 100%;
 height: 800px;
 background: url('../img/top_item.png')no-repeat 50% 50%;
 background-size:  auto 100%;
}
 .i_01 {
 bottom: 12%;
 left: 10%;
 width: 20%;
}
 .i_02 {
 bottom: 3%;
 left: 25%;
 width: 23%;
}
 .i_03 {
 bottom: 0;
 right: 28%;
 width: 27%;
}
 .i_04 {
 top: -5%;
 right: 26%;
 width: 26%;
}
 .i_05 {
 top: -3%;
 left: 23%;
 width: 26%;
}
 .i_06 {
 bottom: 19%;
 right: 5%;
 width: 21%;
}
.cat_01 {
 top: 4%;
 left: 23%;
 width: 10%;
 max-width: 	100px;
}
 .cat_02 {
 bottom: 4%;
 left: 27%;
 width: 10%;
 max-width: 	100px;
}
 .cat_03 {
 top: 9%;
 right: 20%;
 width: 10%;
 max-width: 	100px;
}
 .cat_04 {
 bottom: 18%;
 right: 9%;
 width: 10%;
transform: none;
 max-width: 	100px;
}
 .top_copy {
 top: 29%;
 left: 40%;
 width: 20%;
}
#topinfo H4 {
font-size: 4rem;
}
#topinfo h5 {
font-size: 2.4rem;
}
.topABOUT p {
font-size: 1.6rem;
}
}
@media screen and (min-width: 1280px) {
.cat_01 {
 top: 2%;
 left: 20%;
 width: 10%;
}
 .cat_02 {
 bottom: 7%;
 left: 25%;
 width: 10%;
}
 .cat_03 {
 top: 9%;
 right: 16%;
 width: 10%;
}
 .cat_04 {
 bottom: 18%;
 right: 9%;
 width: 10%;
}
}
/*animation*/
@keyframes ribbon {
 0%, 100% {
 opacity: 1;
}
 20% {
 opacity: .5;
 filter: hue-rotate(90deg);
}
 60% {
 opacity: .5;
 filter: hue-rotate(180deg);
}
 80% {
 opacity: .5;
 filter: hue-rotate(270deg);
}
}
@keyframes moku {
 0% {
 transform: scale(1)
}
 100% {
 top:0;
 transform: scale(1.1)
}
}
@keyframes item {
 0% {
 transform: scale(1)
}
 100% {
 transform: scale(1.05)
}
}
@keyframes bgroom {
 0% {
 opacity: 0.5;
}
 100% {
 opacity: 1;
}
}
@keyframes bounce-in {
 0% {
 opacity: 0;
 transform: scale(0.8);
}
 100% {
 opacity: 1;
 transform: scale(1);
}
}
