@charset "UTF-8";
.center {
  text-align: center;
}

section {
  padding: 3em 0;
}

section.section {
  padding: 8vw 0;
}
section.section .copy {
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 1em;
}
section.section .copy.-left {
  text-align: left;
}
section.section .copy .marker {
  background: linear-gradient(transparent 60%, #FFEF9E 60%);
  display: inline-block;
  padding: 0 5px;
}
section.section .kadomaru-box {
  position: relative;
}
section.section .kadomaru-box h2.heading {
  margin-top: 0;
}
section.section .kadomaru-box p br {
  display: none;
}
@media screen and (max-width: 767px) {
  section.section .kadomaru-box p {
    margin: 2em 0;
  }
  section.section .kadomaru-box p br {
    display: block;
  }
}
section.section .table-01 td {
  text-align: left;
}
@media screen and (max-width: 767px) {
  section.section .table-01 th, section.section .table-01 td {
    display: block;
    width: 100%;
  }
}

.sec-nav {
  padding: 0 0 50px;
}
@media screen and (max-width: 1022px) {
  .sec-nav .within {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .tab-contents .tab-list ul {
    justify-content: center;
  }
}

section.daylife .daylife-list li {
  border-radius: 5px;
  list-style: none;
  padding: 10px;
  line-height: 1.5;
}
section.daylife .daylife-list li:nth-child(2n) {
  background: #fff;
}
@media print, screen and (min-width: 1023px) {
  section.daylife .daylife-list li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border-radius: 50px;
  }
  section.daylife .daylife-list li .time {
    width: 15%;
    text-align: center;
  }
  section.daylife .daylife-list li .summary {
    width: 85%;
    text-align: left;
  }
}

.sec-yearevent .annual-events-wrap {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 0;
}
.sec-yearevent .annual-events-wrap .season-block {
  display: flex;
  align-items: flex-start;
  margin-bottom: 120px;
  position: relative;
  gap: 40px;
}
.sec-yearevent .annual-events-wrap .season-block:last-child {
  margin-bottom: 0;
}
.sec-yearevent .annual-events-wrap {
  /* -----------------------
     テキストエリア (.info-wrap)
  ----------------------- */
}
.sec-yearevent .annual-events-wrap .info-wrap {
  width: 30%;
  flex-shrink: 0;
}
.sec-yearevent .annual-events-wrap .info-wrap .season-label {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  margin-bottom: 30px;
}
.sec-yearevent .annual-events-wrap .info-wrap .text-wrap dl {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
}
.sec-yearevent .annual-events-wrap .info-wrap .text-wrap dl dt {
  width: 3em;
  font-weight: bold;
  margin-bottom: 15px;
}
.sec-yearevent .annual-events-wrap .info-wrap .text-wrap dl dd {
  width: calc(100% - 3em);
  margin: 0 0 15px 0;
  line-height: 1.8;
}
.sec-yearevent .annual-events-wrap {
  /* -----------------------
     写真エリア (.photo-wrap)
  ----------------------- */
}
.sec-yearevent .annual-events-wrap .photo-wrap {
  position: relative;
  flex: 1;
  padding-bottom: 15%;
}
.sec-yearevent .annual-events-wrap .photo-wrap .img-box {
  background-color: #e6e6e6;
  border: 6px solid #fff;
  border-radius: 30px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.sec-yearevent .annual-events-wrap .photo-wrap .img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-yearevent .annual-events-wrap .photo-wrap .photo-main {
  width: 75%;
  aspect-ratio: 4/3;
}
.sec-yearevent .annual-events-wrap .photo-wrap .photo-sub {
  position: absolute;
  width: 45%;
  aspect-ratio: 1/1;
}
.sec-yearevent .annual-events-wrap .photo-wrap .photo-sub-2 {
  position: absolute;
  width: 40%;
  aspect-ratio: 1/1;
}
.sec-yearevent .annual-events-wrap .photo-wrap .photo-sub-3 {
  position: absolute;
  width: 40%;
  aspect-ratio: 1/1;
}
.sec-yearevent .annual-events-wrap {
  /* -----------------------
     各季節のレイアウトと色
  ----------------------- */
}
.sec-yearevent .annual-events-wrap .spring .season-label {
  background-color: #ff9eb5;
}
.sec-yearevent .annual-events-wrap .spring .photo-wrap {
  display: flex;
  justify-content: flex-end;
}
.sec-yearevent .annual-events-wrap .spring .photo-wrap .photo-sub {
  left: -5%;
  bottom: 0;
  transform: rotate(-4deg);
}
.sec-yearevent .annual-events-wrap .summer {
  flex-direction: row-reverse;
}
.sec-yearevent .annual-events-wrap .summer .info-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
}
.sec-yearevent .annual-events-wrap .summer .info-wrap .text-wrap dl dt {
  text-align: left;
}
.sec-yearevent .annual-events-wrap .summer .info-wrap .text-wrap dl dd {
  text-align: left;
}
.sec-yearevent .annual-events-wrap .summer .season-label {
  background-color: #5cc2d6;
}
.sec-yearevent .annual-events-wrap .summer .photo-wrap {
  display: flex;
  justify-content: flex-start;
  padding-bottom: 40%;
}
.sec-yearevent .annual-events-wrap .summer .photo-wrap .photo-sub {
  right: 0;
  bottom: 35%;
  transform: rotate(3deg);
}
.sec-yearevent .annual-events-wrap .summer .photo-wrap .photo-sub-2 {
  left: 5%;
  bottom: 10%;
  transform: rotate(-3deg);
  width: 45%;
}
.sec-yearevent .annual-events-wrap .summer .photo-wrap .photo-sub-3 {
  width: 50%;
  right: -15%;
  bottom: 0;
  transform: rotate(10deg);
}
.sec-yearevent .annual-events-wrap .autumn .season-label {
  background-color: #ffaa55;
}
.sec-yearevent .annual-events-wrap .autumn .photo-wrap {
  display: flex;
  justify-content: flex-end !important;
}
.sec-yearevent .annual-events-wrap .autumn .photo-wrap .photo-sub {
  left: -10%;
  bottom: 0;
  transform: rotate(-3deg);
}
.sec-yearevent .annual-events-wrap .autumn .photo-wrap .photo-sub-2 {
  right: 20%;
  bottom: -5%;
  transform: rotate(4deg);
}
.sec-yearevent .annual-events-wrap .winter {
  flex-direction: row-reverse;
}
.sec-yearevent .annual-events-wrap .winter .info-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.sec-yearevent .annual-events-wrap .winter .info-wrap .text-wrap dl dt {
  text-align: left;
}
.sec-yearevent .annual-events-wrap .winter .info-wrap .text-wrap dl dd {
  text-align: left;
}
.sec-yearevent .annual-events-wrap .winter .season-label {
  background-color: #8faada;
}
.sec-yearevent .annual-events-wrap .winter .photo-wrap {
  display: flex;
  justify-content: flex-start;
}
.sec-yearevent .annual-events-wrap .winter .photo-wrap .photo-sub {
  right: -5%;
  bottom: 0;
  transform: rotate(-3deg);
}

/* --- スマホ用レスポンシブ --- */
@media screen and (max-width: 767px) {
  .sec-yearevent .annual-events-wrap {
    padding: 20px 0;
  }
  .sec-yearevent .annual-events-wrap .season-block {
    flex-direction: column !important;
    align-items: center !important;
    margin-bottom: 80px;
    gap: 20px;
  }
  .sec-yearevent .annual-events-wrap .info-wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center !important;
    justify-content: center;
  }
  .sec-yearevent .annual-events-wrap .info-wrap .season-label {
    width: 60px;
    height: 60px;
    font-size: 1.2rem;
    margin-bottom: 20px;
  }
  .sec-yearevent .annual-events-wrap .info-wrap .text-wrap {
    width: 55%;
    margin: 0 auto;
    white-space: nowrap;
  }
  .sec-yearevent .annual-events-wrap .photo-wrap {
    width: 100%;
    justify-content: flex-start !important;
    padding-bottom: 15%;
  }
  .sec-yearevent .annual-events-wrap .photo-wrap .img-box {
    border-width: 4px;
    border-radius: 20px;
  }
  .sec-yearevent .annual-events-wrap .photo-wrap .photo-main {
    width: 85%;
  }
  .sec-yearevent .annual-events-wrap .photo-wrap .photo-sub {
    width: 50%;
  }
  .sec-yearevent .annual-events-wrap .autumn .photo-wrap {
    padding-bottom: 25%;
  }
  .sec-yearevent .annual-events-wrap .autumn .photo-wrap .photo-sub-2 {
    right: 15%;
    bottom: -10%;
  }
}/*# sourceMappingURL=life.css.map */