@charset "UTF-8";
/* ---------------------------------------*/
/* keyvisual */
/* ---------------------------------------*/
#keyvisual {
  aspect-ratio: 750/1074;
  background: url(../img/260203/index_keyvisual_bg.webp) no-repeat center/cover;
  position: relative;
}

.keyvisual-week {
  display: block;
  width: 20%;
  position: absolute;
  top: 4%;
  left: 4%;
}

.keyvisual-copy {
  display: block;
  width: 11%;
  position: absolute;
  top: 12.3%;
  right: 6.6%;
}

.keyvisual-maintitle {
  width: 49%;
  position: absolute;
  top: 27%;
  left: 0;
  right: 0;
  margin: auto;
}

/* ---------------------------------------*/
/* lead */
/* ---------------------------------------*/
#lead {
  padding: 85px 12% 120px;
  position: relative;
}
#lead::before {
  display: block;
  content: "";
  width: 16.8%;
  aspect-ratio: 254/456;
  background: url(../img/260203/index_lead_bg-01.webp) no-repeat center/100%;
  position: absolute;
  top: 6%;
  left: 0;
  z-index: -1;
}
#lead::after {
  display: block;
  content: "";
  width: 40%;
  aspect-ratio: 590/481;
  background: url(../img/260203/index_lead_bg-02.webp) no-repeat center/100%;
  position: absolute;
  bottom: 4%;
  right: 0;
  z-index: -1;
}

.lead-section-heading {
  margin: 0 auto 40px;
}

.lead-desc {
  font-size: 1.3rem;
  line-height: 1.69;
  color: #e74792;
  text-align: left;
  margin: 0 0 1em;
}
.lead-desc:last-of-type {
  margin: 0;
}
.lead-desc em {
  color: #1e644a;
  font-style: normal;
}

/* ---------------------------------------*/
/* bloom */
/* ---------------------------------------*/
#bloom {
  background: #e9eaea;
  padding: 0 0 60px;
}

.bloom-heading {
  padding: 54px 0 60px;
  margin: 0 0 75px;
  background: url(../img/260203/index_bloom_heading_bg.webp) no-repeat top/cover;
}

.bloom-heading-copy {
  display: block;
  width: 51%;
  margin: 0 auto 20px;
}

.bloom-heading-title {
  width: 95%;
  margin: 0 auto 20px;
}

.bloom-heading-image {
  width: 85%;
  margin: 0 auto 20px;
}

.bloom-heading-desc {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.69;
  color: #fff;
}

.bloom-list--item {
  padding: 35px;
  background: #fff;
  border: solid 1px #505050;
  border-radius: 45px;
}

.bloom-list-heading {
  margin: 0 0 20px;
}

.bloom-list-desc {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.69;
  letter-spacing: 0.06em;
  margin: 0 0 30px;
}

.bloom-splide {
  margin: 0 -35px 26px -35px;
}

.bloom-link {
  text-align: right;
}

.bloom-button {
  width: 48% !important;
}

/* ---------------------------------------*/
/* colors */
/* ---------------------------------------*/
#colors {
  padding: 45px 0 36px;
  margin: 0 0 100px;
  background: url(../img/260203/index_colors_bg.webp) no-repeat top/cover;
}

.colors-heading {
  margin: 0 0 30px;
}

.colors-heading-copy {
  display: block;
  width: 51%;
  margin: 0 auto 20px;
}

.colors-heading-title {
  width: 65.8%;
  margin: 0 auto 20px;
}

.colors-heading-image {
  width: 85%;
  margin: 0 auto 20px;
}

.colors-heading-desc {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.69;
  color: #fff;
}

.colors-link {
  text-align: right;
  padding: 0 35px;
}

.colors-button {
  width: 48% !important;
}

/* ---------------------------------------*/
/* seminar */
/* ---------------------------------------*/
#seminar {
  background: url(../img/260203/index_seminar_bg.webp) no-repeat top/100%;
  padding: 9vw 20px 50px;
  margin: 0 0 85px;
}

.seminar_heading {
  width: 29%;
  margin: 0 auto 28px;
}

.seminar_title {
  width: 82.6%;
  margin: 0 auto 30px;
}

.seminar-list__item {
  margin: 0 0 25px;
  border: solid 1px #505050;
  padding: 40px 20px;
  background: #fff;
}

.seminar-list-heading {
  padding: 10px 20px;
  border: solid 1px #1e644a;
  border-radius: 25px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.64;
  text-align: left;
  position: relative;
  margin: 0 0 20px;
  color: #1e644a;
}
.seminar-list-heading::after {
  display: block;
  content: "";
  width: 1px;
  height: 30px;
  background: #1e644a;
  position: absolute;
  bottom: -20px;
  right: 30%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.seminar-list-heading.is-center {
  text-align: center;
}

.seminar-list-subtitle {
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.47;
  text-align: left;
  color: #1e644a;
  margin: 0 0 10px;
}

.seminar-date {
  margin: 0 0 20px;
}

.seminar-date__item {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  color: #1e644a;
  padding: 0 0 0 1em;
  position: relative;
}
.seminar-date__item::before {
  content: "◎";
  position: absolute;
  left: 0;
  top: 0;
}

.seminar-list-image {
  margin: 0 0 25px;
}

.seminar-list-desc {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.66;
  text-align: justify;
  margin: 0 0 15px;
}

.seminar-list-note {
  display: block;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.45;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;
}
.seminar-list-note:last-of-type {
  margin: 0 0 25px;
}

.seminar-list-artist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.seminar-list-artist__text {
  width: 58%;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.seminar-list-artist-name {
  text-align: left;
  font-weight: 500 !important;
  font-style: normal;
  margin: 0 0 10px;
}
.seminar-list-artist-name small {
  display: block;
  font-size: 1.1rem;
}
.seminar-list-artist-name span {
  display: block;
  font-size: 1.1rem;
}

.seminar-list-artist-desc {
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.27;
  text-align: justify;
}

.seminar-list-artist__image {
  width: 38.1%;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.seminar-list-line {
  border: none;
  border-top: 1px solid #505050;
  margin: 25px 0 30px;
}

/* ---------------------------------------*/
/* event */
/* ---------------------------------------*/
#event {
  background: url(../img/260203/index_event_bg.png) repeat-y top/100%;
  padding: 47px 0 45px;
}

.event-content {
  border-radius: 999px;
  position: relative;
}
.event-content:first-of-type {
  background: #e9eaea;
  padding: 16% 35px 45%;
  margin: 0 0 40px;
}
.event-content:first-of-type::after {
  display: block;
  content: "";
  aspect-ratio: 321/439;
  width: 21%;
  background: url(../img/260203/index_event_deco.webp) no-repeat center/cover;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2%;
  margin: auto;
}
.event-content:last-of-type {
  background: url(../img/260203/index_event_bg-02.webp) no-repeat top/100%;
  padding: 16% 35px 35%;
}
.event-content:last-of-type::after {
  display: block;
  content: "";
  aspect-ratio: 218/121;
  width: 29%;
  background: url(../img/260203/index_event_deco-02.webp) no-repeat center/cover;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4%;
  margin: auto;
}

.event-heading-01 {
  width: 77.7%;
  margin: 0 auto 25px;
}

.event-lead {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.76;
  margin: 0 0 42px;
}

.event-floor {
  font-size: 1.7rem;
  font-weight: 700;
  color: #564297;
  padding: 0.3em;
  border: solid 1px #564297;
  letter-spacing: 0.12em;
  margin: 0 0 30px;
}

.event-list {
  margin: 0 0 50px;
}

.event-list__item {
  margin: 0 0 45px;
}
.event-list__item:last-child {
  margin: 0;
}

.event-list-title {
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.47;
  text-align: left;
  color: #564297;
  letter-spacing: 0.12em;
  margin: 0 0 15px;
}

.event-list-period {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.59;
  text-align: left;
  color: #564297;
  position: relative;
  padding-left: 1em;
  margin: 0 0 15px;
}
.event-list-period::before {
  content: "◎";
  position: absolute;
  top: 0;
  left: 0;
}
.event-list-period.is-center {
  display: inline-block;
}

.event-list-desc {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.75;
  text-align: justify;
  margin: 0 0 20px;
}

.event-list-image {
  width: 81.3%;
  margin: 0 auto;
}
.event-list-image figcaption {
  display: block;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.59;
  text-align: left;
  letter-spacing: 0.05em;
  margin: 10px 0 0;
}

.event-artist-list__item {
  margin: 0 0 25px;
}
.event-artist-list__item:last-child {
  margin: 0;
}

.event-artist-name {
  font-family: "Shippori Mincho", serif;
  font-size: 1.6rem;
  font-weight: 400;
  text-align: left;
  margin: 0 0 10px;
}
.event-artist-name span {
  display: inline-block;
  position: relative;
}
.event-artist-name span::after {
  display: block;
  content: "";
  width: 4.6em;
  height: 1px;
  background: #505050;
  -webkit-transform: rotate(-32deg);
          transform: rotate(-32deg);
  position: absolute;
  right: -4em;
  bottom: 0.2em;
}

.event-artist-image figcaption {
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.59;
  text-align: left;
  margin: 10px 0 0;
}

.event-heading-02 {
  width: 82%;
  margin: 0 auto 15px;
}

.event-heading-02-02 {
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 1.26;
  margin: 0 auto 20px;
  color: #564297;
  border-bottom: solid 1px;
  padding: 0 0 1em;
}

.event-heading-02-title {
  color: #564297;
  font-weight: 700;
  margin: 0 0 15px;
}
.event-heading-02-title span {
  display: block;
  font-size: 1.7rem;
}
.event-heading-02-title small {
  display: block;
  font-size: 1.6rem;
}

.event-02-image {
  margin: 0 0 25px;
}

.event-02-desc {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.75;
  text-align: justify;
  color: #564297;
  margin: 0 0 2em;
}
.event-02-desc:last-of-type {
  margin: 0;
}

.btn_reserve {
  margin: 25px 25px 0;
}