header,nav,h1,p,pre,dl,footer {
  font-family: Hiragino Kaku Gothic ProN W3, serif;
  text-align: center;
}

header{
  background-color: rgba(255, 249, 231, 0.698);
}

#Shop {
  color: #5c4730;
  font-weight: lighter;
  margin: 30px auto 0;
  padding-top: 30px;
}

#Days {
  color: rgb(138, 214, 190);
  font-size: 500%;
  margin: 0 auto 50px;
  padding-bottom: 60px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-shadow: 5px 6px 7px rgba(103, 157, 140, 0.375);
  position: relative;
}

#icon{
  position: absolute;
  right: 50px;
  top: 255px;
  filter: drop-shadow(0px 4px 3px #918f8f);
}

#cape{
  position: absolute;
  top: 12%;
  left: 63.5%;
  filter: drop-shadow(0px 4px 3px #918f8f);
  object-fit: contain;
}

#boater{
  position: absolute;
  top: 25%;
  right: 62%;
  filter: drop-shadow(0px 4px 3px #918f8f);
}

@media(max-width: 750px){
  #Days{
    z-index: 1;
  }
}

.navi{
  padding: 20px;
}

a:hover{
  color: rgb(138, 214, 190);
}
a:active{
  color: rgb(128, 180, 163);
  font-weight: bold;
}

ul {
  display: flex;
  flex-flow: row nowrap;
}


li {
  list-style: none;
  width: 33.3%;
}

li a{
  color: #5c4730;
}

.slide,h1{
  margin-top: 50px;
  margin-bottom: 50px;
}


/* スライドの外枠 */
.slide-wrapper{
  width: auto;
  height: auto;
  position: relative;
  overflow: hidden;
  padding-bottom: 50px;
}

/*スライド全体*/
.slide{
  width: 100%;
  height: 100%;
  display: flex;
  animation: slide 80s linear infinite;
  overflow-x: scroll;
}

.slide-wrapper > .slide:hover{
  animation-play-state: paused;
}

/*スライド*/
.slide img{
  width: 300px;
  height: 400px;
  flex-shrink: 0;
  object-fit: cover;
}


/* スクロールバー */
.slide::-webkit-scrollbar{
  width: 900px;
  height: 10px;
  scrollbar-width: thin;
}

.slide::-webkit-scrollbar-track{
  background: rgb(255, 250, 237,0.5);
  border-radius: 5px;
}
.slide::-webkit-scrollbar-thumb{
  width: 10px;
  background:  rgb(224, 216, 197);
  border-radius: 5px;
}

/*コラージュ*/
.collage{
  display: grid;
  width: 600px;
  grid-template-columns: 1fr 1fr; /* デフォルトで2列 */
  justify-items: center;
  align-items: center;
  margin: 0 auto;
}

.collage img {
  text-align: center;
  justify-self: center;
  align-self: center;
}

@media (max-width: 750px) {
  .collage{
  grid-template-columns: 1fr; /* 画面幅が600px以下の場合は1列に変更 */
  }
}

/*スクロールに応じてフェードイン*/
@keyframes fadeIn{
  from{
    opacity: 0;
    transform: translateY(2rem);
  }
  to{
    opacity: 1;
    transform: translateY(0);
  }
}

.collage img,h1{
  animation: fadeIn linear;
  -webkit-animation: fadeIn linear;
  animation-timeline: view();
  animation-range: entry 0% cover 30%;
}



/* ABOUT */
p{
  line-height: 2;
  overflow-wrap: anywhere;
  line-break: normal;
}



/* SCHEDULE */
.calendar-container {
  width: 500px;
  margin: 0 auto;
  border-radius: 5px;
  background: #f6f5f4;
  color: #1a1a1a;
}

h2 {
  height: 80px;
  line-height: 80px;
  text-align: center;
  font-size: 24px;
  margin: 0;
}

.calendar {
  padding: 0 30px 30px 30px;
}

table {
  width: 100%;
}

th,
td {
  text-align: center;
  padding: 10px;
}

th {
  font-weight: normal;
  font-size: 14px;
}

td {
  font-weight: bold;
}

.day *:nth-child(6) {
  color: #6fb5ff;
}

.day *:last-child {
  color: #ff838b;
}

.event{
  width: 10px;
  height: 10px;
  padding-top: 10px;
  border: 1px solid black;
  border-radius: 50%;
  text-align: center;
  box-sizing: border-box;
}


section {
  margin: 50px 0 0 auto;
}



/*共通フッター*/
.SNS {
  margin-right: 5px;
  display: grid;
  place-items: center;
}

.link {
  margin: 50px auto;
  padding: 50px 100px;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  display: flex;
  flex-flow: row nowrap;
  width: 33.3%;
  background-size: 300px 200px;
  background-color: rgba(255, 249, 231, 0.698);
}