body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

img {
  vertical-align: top; }

a img {
  border: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0; }

html {
  font-size: 62.5%; }

* {
  box-sizing: border-box; }

body {
  font-feature-settings: "palt";
  font-family: 'Noto Sans JP', sans-serif; }

.catch {
  font-family: 'Noto Serif JP', serif; }

.funproject {
  margin: 5em auto; }
  .funproject h3 {
    background: #B81C22;
    color: #fff;
    font-family: "Noto Serif JP", serif;
    padding: 0.5em 1em;
    text-align: center;
    margin-bottom: 2em;
    font-weight: 500; }
    @media (min-width: 768px) {
      .funproject h3 {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.25; } }
    @media (max-width: 767px) {
      .funproject h3 {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.6666666667; } }
  .funproject_con {
    margin: 1em auto;
    width: 90%;
    max-width: 600px; }
    .funproject_con .stage_img {
      display: flex;
      justify-content: center;
      margin-bottom: 2em; }
      .funproject_con .stage_img div {
        width: 50%; }
        .funproject_con .stage_img div p {
          margin-top: 5px;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.7142857143; }
    .funproject_con .box {
      margin-top: 3em;
      color: #B81C22;
      font-weight: 600;
      border: 1px solid #B81C22;
      padding: 1.5em;
      text-align: center; }
  @media (min-width: 768px) {
    .funproject_list {
      display: flex;
      flex-wrap: wrap; } }
  @media (max-width: 767px) {
    .funproject_list {
      width: 90%;
      margin: 0 auto; } }
  @media (min-width: 768px) {
    .funproject_list li {
      width: 50%;
      padding: 3em 1em; } }
  @media (max-width: 767px) {
    .funproject_list li {
      margin-bottom: 3em; } }
  .funproject_list li h4 {
    background: #B81C22;
    color: #fff;
    font-family: "Noto Serif JP", serif;
    padding: 0.5em 1em;
    text-align: center;
    margin-bottom: 1em;
    font-weight: 500; }
    @media (min-width: 768px) {
      .funproject_list li h4 {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5; } }
    @media (max-width: 767px) {
      .funproject_list li h4 {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.6666666667; } }
  .funproject_list li img {
    margin-bottom: 1em; }
  .funproject_list li p {
    margin-bottom: 1em; }
  .funproject_list li span {
    margin-top: 5px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.9230769231;
    display: block; }
  .funproject_list li h5 {
    color: #B81C22;
    font-weight: 600;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.75;
    margin-bottom: 5px; }
  .funproject_list li .present {
    background: #F5DFDF;
    padding: 0.5em;
    color: #B81C22;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6666666667; }
  .funproject .stage_toptext {
    text-align: center;
    color: #B81C22;
    font-weight: 600; }
    @media (min-width: 768px) {
      .funproject .stage_toptext {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.75; } }
    @media (max-width: 767px) {
      .funproject .stage_toptext {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.9444444444; } }
  .funproject .stage .schedule {
    margin: 3em auto; }
    .funproject .stage .schedule p {
      text-align: center; }
    .funproject .stage .schedule img {
      margin: 1em auto; }
    .funproject .stage .schedule .attention {
      display: block;
      text-align: right; }
      @media (min-width: 768px) {
        .funproject .stage .schedule .attention {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.7857142857; } }
      @media (max-width: 767px) {
        .funproject .stage .schedule .attention {
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 1.6666666667; } }
  @media (min-width: 768px) {
    .funproject .talkshow {
      display: flex;
      align-items: flex-start; } }
  @media (min-width: 768px) {
    .funproject .talkshow img {
      width: 50%;
      padding-right: 2em; } }
  @media (max-width: 767px) {
    .funproject .talkshow img {
      padding-bottom: 2em;
      width: 80%;
      max-width: 250px;
      display: block;
      margin: 0 auto; } }
  @media (min-width: 768px) {
    .funproject .talkshow .text {
      width: 50%; } }
  .funproject .talkshow .text h4 {
    color: #B81C22;
    font-weight: 600;
    font-size: 23px;
    font-size: 2.3rem;
    line-height: 1.0434782609; }
  .funproject .talkshow .text h5 {
    margin: 1em 0; }
    .funproject .talkshow .text h5 span {
      font-size: 28px;
      font-size: 2.8rem;
      line-height: 1.7857142857;
      display: block; }
  .funproject .character h4 {
    text-align: center;
    color: #B81C22;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.6;
    font-weight: 600; }
    @media (min-width: 768px) {
      .funproject .character h4 {
        margin-bottom: 2em; } }
    @media (max-width: 767px) {
      .funproject .character h4 {
        margin-bottom: 1em; } }
  @media (min-width: 768px) {
    .funproject .character_wrap {
      display: flex;
      justify-content: space-between;
      grid-gap: 30px; } }
  @media (min-width: 768px) {
    .funproject .character_wrap li {
      width: 48%; } }
  @media (max-width: 767px) {
    .funproject .character_wrap li {
      margin-bottom: 3em; } }
  .funproject .character_wrap li img {
    padding: 10px 0; }
  .funproject .character_wrap li h5 {
    margin-bottom: 10px; }
  .funproject .character_wrap li .time {
    text-indent: -2.5em;
    padding-left: 2.5em; }
  .funproject .character_wrap li span {
    margin-top: 10px;
    display: block;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5384615385; }
