@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Bungee+Inline&display=swap');

@import url('https://fonts.googleapis.com/css?family=Montserrat:900i&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Faster+One&display=swap');



footer p {
	
  text-align: center;

}

#tytle  {
 
 /* transform: translate(-100%,-100%);*/
  font-size:4rem;
	letter-spacing:0.1em;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 3px;
  -webkit-text-stroke-color: white;
  text-shadow: 
						8px 8px #ff1f8f,
						20px 20px #000000;
	font-family: 'Montserrat', sans-serif;
	
	text-align: center; 
	
}
html, body {
  margin:0;
  padding:0;
	font-family: 'Bungee Inline', cursive;
	background:yellow;
	 animation: bg-color 10s infinite;
  -webkit-animation: bg-color 10s infinite;
}

@-webkit-keyframes bg-color {
  0% { background-color:yellow; }
  20% { background-color:green; }
  40% { background-color: #1abc9c; }
  60% { background-color: #3498db; }
  80% { background-color: #9b59b6; }
  100% { background-color: #e74c3c; }
}
@keyframes bg-color {
  0% { background-color: #e74c3c; }
  20% { background-color: #f1c40f; }
  40% { background-color: #1abc9c; }
  60% { background-color: #3498db; }
  80% { background-color: #9b59b6; }
  100% { background-color: #e74c3c; }
}
footer {
	
	font-family: 'Bungee Inline', cursive;
	color: #fff;
	
}


#nav {
  list-style: none;
font-family: 'Bungee Inline', cursive;
	text-align: center;
	
}
 
#nav li {
  width: 200px;
	font-size: 150%;
  display: inline-block;
 
}
 
#nav li a {
  text-decoration: none;
color: #fff;
}
.comic {
  display:flex;
  flex-wrap:wrap;
  
  padding:1vmin;
}


.grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.item {
 border:solid 2px #000;
  border-radius: 15px;
  background: #edf;
  padding: 15px;
  text-align: center;
}
img {
  max-width: 100%;
  height: auto;
}
p {
  text-align: left;
}


ul {
	list-style: none;
}
.contents {
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* ++++ トグルボタン ++++ */
	
#navTgl {
	display: none;
}
label {
	cursor: pointer;
	position: fixed;
	top: 0;
	right: 0;
}
.open {
	z-index: 2;
	width: 60px;
	height: 48px;
	transition: background .5s, transform .5s cubic-bezier(0.76, 0.52, 0.29, 1.25);
}
.open::before,
.open::after {
	content: "";
}
.open span,
.open::before,
.open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom: 2px solid white;
	transition: transform .5s cubic-bezier(0.76, 0.52, 0.29, 1.25);
}
.open::before {
	transform: translateY(-8px);
}
.open::after {
	transform: translateY(8px);
}
.close {
	z-index: 1;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transition: background .5s;
}
#navTgl:checked + .open span {
	transform: scaleX(0);
}
#navTgl:checked + .open::before {
	transform: rotate(45deg);
}
#navTgl:checked + .open::after {
	transform: rotate(-45deg);
}
#navTgl:checked ~ .close {
	background: rgba(0,0,0,.7);
}

/* ++++ ドロワーメニュー ++++ */
.menu {
	z-index: 1;
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 6%;
	margin: 0;
	box-sizing: border-box;
	transform: translateX(-100%);
	transition: transform .5s cubic-bezier(0.33, 1.01, 0.33, 0.97);
}
.menu h2,
.menu a {
	color: white;
	font-family: 'Bungee Inline', cursive;
	
}
.menu h2 {
	text-align: center;
}
.menu ul {
	padding: 0;
	text-align: center;
	width: 250px;
	margin: 0 auto;
}
.menu li {
	font-size: .9em;
	line-height: 1.4;
}
.menu a {
	display: block;
	padding: 1.4em 2em;
	text-decoration: inherit;
	transition: background .5s;
}
.menu li:hover:after {
	display: block;
	content: '';
	width: 100px;
	margin: 0 auto;
	border-bottom: 1px solid #fff;
}
#navTgl:checked ~ .menu {
	transform: none;
}

@media screen and (min-width:640px) {
	 label {   
    display: none;
  }
	
	}
@media screen and ( max-width : 640px ){
	/* 480px以下に適用されるCSS（スマホ用） */
	#nav  {
    display: none;
	}
}