@charset "UTF-8";
*{margin: 0;padding: 0;}

body{
  font-family:　Lato, sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 16pt;
  margin: 0;
  padding: 0;
  background-color: #fff;
	overflow-x: hidden;

}





/* メニューのスタイル */
.menu {
  position: fixed;
  top: 0;
  right: -100%; /* 初期状態では画面の外に隠れている */
  width: 300px;
  height: 100%;
  background-color: #ffffff;
  color: #333;
  transition: right 0.3s ease; /* スライドインのアニメーション */
  padding: 20px;
  box-sizing: border-box;
  z-index: 90;
}

/* メニューが開いているとき */
.menu.open {
  right: 0;

}

/* ボタンのスタイル */
.hamburger {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 30px;
  cursor: pointer;
  z-index: 20;
  
}

.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #ffffff;
  margin: 5px 0;
  transition: 0.4s;
}

/* バツ印に変化するスタイル */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
  background-color: #001D60;
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
  background-color: #001D60;
}

.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
  background-color: #001D60;
}

/* メニューリストのスタイル */
.menu ul {
  list-style-type: none;
  padding: 0;
  margin-top: 80px;
}

.menu li {
  padding: 20px 0;
  border-bottom: 3px solid #FFE000;
}

.menu li a {
  color: #001D60;
  text-decoration: none;
  display: block;
}

.menu li :hover {
  color: #FE21A6; /* ホバー時の色 */
  transition: 0.3s; /* 滑らかに変化 */
}


.back{
position: relative;
background-color: #FE21A6;
background-size: cover;
background-attachment: fixed;
width: 100%;
height: 600px;
overflow-x: hidden;
}  

.header1 img{
width: 100dvw;
}
  

.header1{
width: 100vw;
height: 100vh;
text-align: center;
margin: 0 auto;
position: absolute;
top: 0;
display: block;
}

.header2{
display: none;
}


.container {


margin-left: 0px;
margin-right: 0px;
padding: 0px;
width: 100dvw;
}

.x img{width: 10dvw;top:0;position:relative;}
.x{
 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15pt;
  text-align: center;
position: absolute;
top: 25%;
left: 20%;
img:hover{top:5px;
  transition:0.3s;}
}
.x p{
color: #001D60;;
  background-color: #ffffff;}

.blue img{width: 10dvw;top:0;position:relative;}
.blue{
 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15pt;
  text-align: center;
position: absolute;
top: 25%;
left: 41%;
img:hover{top:5px;
  transition:0.3s;}
}

.blue p{
color: #001D60;;
  background-color: #ffffff;}

.wave img{width: 10dvw;top:0;position:relative;}
.wave{
	 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15pt;
  text-align: center;
position: absolute;
top: 25%;
left: 64%;
img:hover{top:5px;
  transition:0.3s;}
}

.wave p{
color: #001D60;;
  background-color: #ffffff;}

.booth img{width: 20dvw;top:0;position:relative;}
.booth{
	 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15pt;
  text-align: center;
position: absolute;
top: 58%;
left: 26%;
img:hover{top:5px;
  transition:0.3s;}
}

.booth p{
color: #001D60;;
  background-color: #ffffff;
}

.pixiv img{width: 18dvw;top:0;position:relative;}
.pixiv{
	 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15pt;
  text-align: center;
position: absolute;
top: 58%;
left: 55%;
img:hover{top:5px;
  transition:0.3s;}
}

.pixiv p{
color: #001D60;;
  background-color: #ffffff;}


/*スマホ用*/

@media screen and (max-width:480px){ 


.back{
position: relative;
background-color: #FE21A6;
background-size: cover;
background-attachment: fixed;
width: 100%;
height: 110vh;} 



.header2 img{
width: 100dvw;
}
  

.header2{
width: 100vw;
text-align: center;
margin: 0 auto;
position: absolute;
top: 0;
display: block;
}

.header1{
display: none;
}

.container {
margin-left: 0px;
margin-right: 0px;
padding: 0px;
width: 100dvw;
}



.x img{width: 14dvw;}
.x{
position: absolute;
top: 100px;
left: 38%;
font-size: 7pt;
}

.blue img{width: 14dvw;}
.blue{
position: absolute;
top: 200px;
left: 37%;
font-size: 7pt;
}

.wave img{width: 14dvw;}
.wave{
position: absolute;
top: 300px;
left: 39%;
font-size: 7pt;
}

.booth img{width: 30dvw;}
.booth{
position: absolute;
top: 410px;
left: 36%;
font-size: 7pt;
}

.pixiv img{width: 29dvw;}
.pixiv{
position: absolute;
top: 510px;
left: 36%;
font-size: 7pt;
}






 }