@charset "UTF-8";

#cover {
  background-image: url("../img/event/bg_cover_pc@2x.jpg");
  background-size: cover;
  background-position: center center;
}

#fan-meeting {
  padding: 25px 0 80px;
  background-image: url("../img/event/bg_fan-meeting_pc.svg");
  background-size: 100% 100%;
}
#fan-meeting .title_fan-meeting {
  display: block;
  width: 864px;
  margin: 0 auto;
}
#fan-meeting .description {
  text-align: center;
  font-size: 16px;
  line-height: 1.75;
  color: #454554;
  margin: 60px 0;
}
#fan-meeting .index {
  width: 940px;
  background-color: #f5f5f5;
  margin: 0 auto;
  padding: 40px 120px;
  border-radius: 14px;
  box-sizing: border-box;
}
#fan-meeting .index .title_index {
  text-align: center;
  font-size: 16px;
  color: #454554;
  margin-bottom: 40px;
}
#fan-meeting .index .list_index {
  font-size: 18px;
  line-height: 1.2;
}
#fan-meeting .index .list_index li + li {
  margin-top: .8em;
}
#fan-meeting .index .list_index li a {
  color: #222576;
}
#fan-meeting .index .list_index > li {
  font-weight: 700;
  list-style: disc;
}
#fan-meeting .index .list_index ul {
  margin: .8em 0 0 1.5em;
}
#fan-meeting .index .list_index ul li {
  font-weight: 400;
  list-style: circle;
}
#fan-meeting .inner {
  width: 680px;
  margin: 0 auto;
  padding-top: 60px;
}
#fan-meeting #event_01,
#fan-meeting #event_02,
#fan-meeting #event_03 {
  padding-top: 80px;
}
#fan-meeting #event_02,
#fan-meeting #event_03 {
  position: relative;
  margin-top: 80px;
}
#fan-meeting #event_02::before,
#fan-meeting #event_03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 480px;
  height: 5px;
  background-image: url("../img/event/img_line_pc@2x.png");
  background-size: 100% 100%;
}
#fan-meeting .title_event {
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: -.05em;
  color: #454554;
}
#fan-meeting .title_theme {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: -.05em;
  color: #454554;
  padding-top: 60px;
}
#fan-meeting .photo,
#fan-meeting .text {
  padding: 40px 0;
}
#fan-meeting .photo .caption {
  display: block;
  font-size: 14px;
  color: #454554;
  margin-top: .5em;
}
#fan-meeting .photo .flex {
  display: flex;
  gap: 8px;
}
#fan-meeting .photo .flex > div {
  width: 336px;
}
#fan-meeting .text p {
  font-size: 18px;
  line-height: 1.65;
  color: #454554;
}
#fan-meeting .text p + p {
  margin-top: 1em;
}
#fan-meeting .tomoe-shinohara {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  gap: 8px;
}
#fan-meeting .tomoe-shinohara .portrait {
  width: 430px;
}
#fan-meeting .tomoe-shinohara .profile {
  flex: 1;
}
#fan-meeting .tomoe-shinohara .profile .box {
  background-color: #f5f5f5;
  margin-bottom: 20px;
  padding: 25px 15px;
}
#fan-meeting .tomoe-shinohara .profile .box .title_profile {
  font-size: 16px;
  letter-spacing: -.05em;
  color: #454554;
  margin-bottom: .4em;
}
#fan-meeting .tomoe-shinohara .profile .box .title_profile small {
  font-size: .8em;
}
#fan-meeting .tomoe-shinohara .profile .box p {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: -.05em;
  color: #454554;
}

#voice {
  background-image: url("../img/event/bg_voice_pc.jpg");
  background-size: 100% 100%;
  padding: 90px 0 45px;
}
#voice .title_voice {
  text-align: center;
  font-size: 23px;
  color: #222576;
  margin-bottom: .5em;
}
#voice .title_riceforce-is {
  display: block;
  width: 544px;
  margin: 0 auto;
}
#voice p {
  text-align: center;
  font-size: 16px;
  line-height: 1.75;
  color: #454554;
  margin-top: 1.5em;
}
#voice .riceforce-is {
  width: 1086px;
  margin: 40px auto 80px;
}
#voice .riceforce-is .note_riceforce-is {
  display: block;
  text-align: right;
  font-size: 14px;
  color: #454554;
  margin-top: .5em;
  padding-right: 3em;
}
#voice .riceforce-is .note_riceforce-is::before {
  content: "※";
}
#voice .img_voice {
  display: block;
  width: 1110px;
  margin: 30px auto 0;
}

#interview {
  padding: 120px 0
}
#interview .title_story {
  display: block;
  width: 660px;
  margin: 0 auto;
}
#interview p {
  text-align: center;
  font-size: 16px;
  line-height: 1.75;
  color: #454554;
  margin-top: 1em;
}
#interview .list_interview {
  display: flex;
  gap: 20px;
  width: 1000px;
  margin: 40px auto 0;
}
#interview .list_interview li {
  width: 235px;
}
#interview .list_interview li .wrap_btn {
  margin-top: 24px;
}