@charset "utf-8";

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: clamp(1rem, 2.6vw, 2rem);
  color: #333333;
  background: #e4e4e46d;
  line-height: 1.6;
}

a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

.layout-wrapper {
  position: relative;
  z-index: 1;
}

.layout-background {
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: bottom center/cover url(../img/bg__l.webp);
}

.content-container {
  position: relative;
  z-index: 2;
  margin: -100vh auto 0;
  width: min(100%, 495px);
  background-color: #fff;
  box-shadow: 2px 4px 10px 3px rgb(0 25 39 / 40%);
}

.sec {
  padding: min(4vw, 20px) min(4vw, 30px) min(4vw, 20px);
  overflow: hidden;
}

._bg {
  background: #f7afbb;
}

.event-list>li+li {
  margin-top: min(3vw, 3vw);
}

.scroll-top-button {
  position: fixed;
  z-index: 11;
  bottom: min(8vw, 60px);
  right: min(4vw, 30px);
  display: block;
  width: min(10.6vw, 60px);
  height: min(10.6vw, 60px);
  background-color: #5C4842;
  border: 2px solid #fff;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s, translate 0.3s;
}

.scroll-top-button::after {
  content: '';
  position: absolute;
  top: 45%;
  left: 50%;
  translate: -50% -50%;
  width: 0;
  height: 0;
  border-left: min(1.4vw, 10px) solid transparent;
  border-right: min(1.4vw, 10px) solid transparent;
  border-bottom: min(2.42vw, 17px) solid #fff;
}

.scroll-top-button.is-view {
  pointer-events: all;
  opacity: 1;
}

@media (hover: hover) {
  .scroll-top-button:hover {
    translate: 0 -10%;
  }
}


.info{
  text-align: center;
  padding: 20px;
  margin: 0 auto;
  background: #f16d83;
}

.info .inner{
  padding: 20px;
  background: #fff;
  border-radius: 12px;
}

.info .inner h2{
  font-size: clamp(1.6rem, 5vw, 2.4rem);
  color: #f16d83;
}

.info p.line{
  display: inline;
  font-size: 21px;
  padding: 0 0.25em 0.1em;
  box-shadow: inset 0 -0.4em 0 #FFFF84;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

@media screen and (max-width: 600px) {
  body {
    font-size: clamp(1.4rem, 4.8vw, 2.4rem);
  }
  .info p {
    font-size: clamp(1.3rem, 3.8vw, 2.1rem);
  }
}
