/* ----------------------------------------
Components
---------------------------------------- */


/* ----------------------------------------
PC
---------------------------------------- */
@media screen and (min-width:769px) {
  /* fv */
  .hero {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
    height: 400px;
    padding-top: 120px;

  }
  .hero-inner {
    position: absolute;
    left: 50%;
    margin-left: -1400px;
    width: 2909px;
  }

  /* main-content */
  #event {
    padding: 40px 20px 60px;
  }
  .event-inner {
    max-width: 1080px;
    margin: auto;
  }
  .month {
    width: 100%;
  }
  .ttl-page {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 4px solid #eb7198;
    font-size: 24px;
    font-weight: normal;
  }
  .subttl-sect {
    margin: 40px auto 10px;
    color: #e97196;
    text-align: center;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
    font-size: 16px;
    line-height: 1.0;
  }
  .ttl-sect {
    text-align: center;
  }

  .bct {
    font-family: Helvetica Neue, Helvetica, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    font-size: 44px;
    color: #e97196;
    font-weight: bold;
  }
  .bct-l {
    margin-right: 40px;
  }
  .bct-r {
    margin-left: 40px;
  }
  .content-sect {
    padding: 60px 0;
  }
  .month {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .month:not(:last-child) {
    margin-bottom: 40px;
  }
  .textbox-month {
    width: calc(33.3% - 10px);
  }
  .header-month {
    padding: 20px 0;
    border-top: 2px solid #eb7198;
    border-bottom: 2px solid #eb7198;
    color: #eb7198;
    font-size: 24px;
  }
  .header-month > em {
    margin-right: 10px;
    font-size: 60px;
    line-height: 1;
  }
  .list-month {
    margin-top: 20px;
    font-size: 16px;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
  }
  .list-month > li {
    margin-bottom: 6px;
  }
  .imgbox-month {
    width: calc(66.6% - 10px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .img-wrapper {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(50% - 10px);
    margin: 0;
  }
  .img-wrapper::before {
    content: '';
    display: block;
    padding-top: 75%;
  }
  .img-wrapper > img {
    position: absolute;
  }
  .img-wrapper > figcaption {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: calc(100% - 20px);
    padding: 10px;
    background-color: rgba(40, 40, 40, .6);
    color: #ffffff;
    font-size: 14px;
  }
}

/* ----------------------------------------
SP
---------------------------------------- */
@media screen and (max-width:768px) {
  /* components */
  .pc {
    display: none;
  }
  /* header */

  /* FV */
  .hero {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
    padding-top: calc(84px + 4vw);
  }
  .hero-inner {
    position: relative;
    width: 100%;
  }

  /* main-content */
  #event {
    padding: 3% 3% 6%;
  }
  .event-inner {
    max-width: 1080px;
    margin: auto;
  }
  .month {
    width: 100%;
  }
  .ttl-page {
    padding-bottom: 10px;
    margin-bottom: 12%;
    border-bottom: 4px solid #eb7198;
    font-size: 7vw;
    font-weight: normal;
  }
  .bct {
    font-family: Helvetica Neue, Helvetica, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    color: #e97196;
    font-weight: bold;
    font-size: 9vw;
  }
  .bct-l {
    margin-right: 15vw;
  }
  .bct-r {
    margin-left: 15vw;
  }
  .subttl-sect {
    margin: auto auto 2%;
    color: #e97196;
    text-align: center;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
    font-size: 5vw;
  }
  .ttl-sect {
    text-align: center;
    font-size: 6vw;
  }
  .content-sect {
    padding: 8% 0;
  }
  .month {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .month:not(:last-child) {
    margin-bottom: 8%;
  }
  .textbox-month {
    width: 100%;;
  }
  .header-month {
    text-align: center;
    padding: 2% 0;
    border-top: 2px solid #eb7198;
    border-bottom: 2px solid #eb7198;
    color: #eb7198;
    font-size: 4vw;
  }
  .header-month > em {
    margin-right: 1%;
    font-size: 10vw;
    line-height: 1;
  }
  .list-month {
    margin-top: 4%;
    margin-bottom: 4%;
    font-size: 4vw;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
  }
  .list-month > li {
    margin-bottom: 6px;
  }
  .imgbox-month {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .img-wrapper {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 49%;
    margin: 0;
  }
  .img-wrapper::before {
    content: '';
    display: block;
    padding-top: 75%;
  }
  .img-wrapper > img {
    position: absolute;
  }
  .img-wrapper > figcaption {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    width: 100%;
    padding: 4% 0;
    background-color: rgba(40, 40, 40, .6);
    color: #ffffff;
    font-size: calc(4vw - 10px);
  }
}
