/* The New CSS Reset - Elad Shechter (https://github.com/elad2412/the-new-css-reset) */
/* Remove all the styles of all elements */
*,
*::before,
*::after {
  all: unset;
  display: revert;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
  cursor: revert;
}

/* Remove list styles */
ol, ul, menu {
  list-style: none;
}

/* Remove quotes from blockquotes and q elements */
blockquote, q {
  quotes: none;
}

/* Revert styles for tables */
table {
  border-collapse: collapse;
}

/* Ensure images and videos are responsive */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;
}

/*--------------------*/


*{
}


html {
  scroll-behavior: smooth;
}

h2{
  margin-bottom: 10px;
  font-weight: bold;

}

h3{
  margin-bottom: 10px;
  font-weight: bold;
}

body {
  width: 100%;

  display: -webkit-flex;
  display: flex;

  -webkit-justify-content: center;
  justify-content: center;

  flex-direction: column;

  -webkit-align-items: center;
  align-items: center;

  font-family: 'Noto Sans JP', sans-serif;

}

/* ヘッダー */
header {
  max-width: 500px;
  width: 100%;
  font-size: 0.7rem;
}


/* メインコンテンツ */
main {
  max-width: 500px;
  width: 100%;
}


/* フッター */
footer {
  max-width: 500px;
  width: 100%;
  height: 70px;
  font-size: 0.7rem;

}


section{

  border-bottom: 1px dotted rgba(0,0,0,0.25);
  padding: 10px;
  font-size: 0.7rem;

}


section:last-child{

  border-bottom: 0px;

}

table{
  margin: 0px 10px 0px 10px;
  border: 1px solid rgba(0, 0, 0, 0.25);
  width: 100%;
  max-width: 350px;
  font-size: 0.7rem;

}

thead{

  background-color: rgba(0,0,0,0.25);

}

tr{
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
}

tr:last-child{
  border-bottom: 0px;
}

th{
  padding: 5px;

}

td{
  padding: 5px;
  border-right: 1px solid rgba(0, 0, 0, 0.25);

}

p{
 margin-bottom: 10px; 
}

p:last-child{
  margin-bottom: 0px; 
}

article {
  padding: 10px 0px 10px 0px;

}

/**/

.header-title {
  margin-bottom: 10px;
}

.title {
  margin-bottom: 10px;
  padding: 0px 10px 0px 10px;
  font-size: 1.1rem;
  font-weight: bold;
}

.title-sub {
  padding: 0px 10px 0px 10px;

}

.descriptions {
  padding: 0px 10px 0px 10px;
}

.flex{
  display: -webkit-flex;
  display: flex;
}

.center{
  -webkit-align-items: center;
  align-items: center;
}


.column
{
  -webkit-flex-direction: column;
  flex-direction: column;
}

.menu {

  border-top: 1px solid #000;
  border-bottom: 1px solid #000;

}

.menu li {
  margin: 10px;
}

.copyright{
  margin: 10px;
}

.b
{
  font-weight: bold;
}

.closed{
  text-decoration: line-through;
}


.gray{
  color: rgba(0, 0, 0, 0.7);

}

.white{
  color: rgba(255, 255, 255, 1);
}

.button{
  padding: 1px 5px;
  color: #fff;
  font-size: 0.6rem;
  background-color: rgba(0, 0, 0, 0.7);
}

.sub-title
{
  background-color: rgba(0, 0, 0, 0.7);
}

.list{
  margin: 5px;
  border: 1px solid rgba(0, 0, 0, 0.7);
}

.list li{
  padding: 10px 5px;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.7);
}

.list li:last-child{
  border-bottom: 0px;
}


/*photos*/

.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.gallery img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  cursor: pointer;
  transition: transform 0.2s ease;
}

.gallery img:hover {
  transform: scale(1.05);
}

.instagram
{
  margin: 10px 0px 0px 10px ;
  width: 40px;
}

.schedule{
  margin-bottom: 10px;
}

.schedule th:nth-child(odd), .schedule td:nth-child(odd) {
  width: 50px;
}