.web_font, .list_style li dl dd > div .day, .ttl_style .ttl .en {
  font-family: 'Marcellus', serif;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0; }

.ls {
  letter-spacing: 0.28rem; }

@media screen and (max-width: 736px) {
  .ls {
    letter-spacing: 0.24rem; } }
.btn_hover {
  transition: all 0.3s 0s cubic-bezier(0, 0.49, 0.08, 1);
  opacity: 1; }
  .btn_hover:hover {
    opacity: 0.5; }

.deco_star_left {
  position: relative; }
  .deco_star_left:after {
    display: block;
    content: '';
    width: 2.7415143603vw;
    height: 3.0678851175vw;
    background: url("../common/images/deco_star.png") left top no-repeat;
    background-size: 2.7415143603vw 3.0678851175vw;
    position: absolute;
    bottom: 0;
    opacity: 0;
    left: 15.6657963446vw;
    margin-bottom: -1.501305483vw;
    transition: all 0.6s 0s cubic-bezier(0, 0.49, 0.08, 1);
    transform: rotate(180deg); }
  .deco_star_left.is-scroll:after {
    left: 2.6109660574vw;
    opacity: 1;
    transform: rotate(0); }

@media screen and (max-width: 736px) {
  .deco_star_left:after {
    width: 5.6vw;
    height: 6.2666666667vw;
    background: url("../common/images/deco_star.png") left top no-repeat;
    background-size: 5.6vw 6.2666666667vw;
    left: 32vw;
    margin-bottom: -3.0666666667vw; }
  .deco_star_left.is-scroll:after {
    left: 4.6666666667vw;
    opacity: 1;
    transform: rotate(0); } }
.deco_star_right {
  position: relative; }
  .deco_star_right:after {
    display: block;
    content: '';
    width: 2.7415143603vw;
    height: 3.0678851175vw;
    background: url("../common/images/deco_star.png") left top no-repeat;
    background-size: 2.7415143603vw 3.0678851175vw;
    position: absolute;
    top: 0;
    opacity: 0;
    right: 16.9712793734vw;
    margin-top: -1.501305483vw;
    transition: all 0.6s 0s cubic-bezier(0, 0.49, 0.08, 1);
    transform: rotate(-180deg); }
  .deco_star_right.is-scroll:after {
    right: 3.9164490862vw;
    opacity: 1;
    transform: rotate(0); }

@media screen and (max-width: 736px) {
  .deco_star_right:after {
    width: 5.6vw;
    height: 6.2666666667vw;
    background: url("../common/images/deco_star.png") left top no-repeat;
    background-size: 5.6vw 6.2666666667vw;
    right: 34.6666666667vw;
    margin-top: -3.0666666667vw; }
  .deco_star_right.is-scroll:after {
    right: 4.6666666667vw;
    opacity: 1;
    transform: rotate(0); } }
.list_style {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .list_style::after {
    content: "";
    width: 18%; }
  .list_style::before {
    order: 1;
    content: "";
    width: 17.3148148148%; }
  .list_style .flex__item-empty {
    display: block;
    width: 17.3148148148%; }
  .list_style li {
    width: 17.3148148148%;
    position: relative; }
    .list_style li:hover {
      cursor: pointer; }
      .list_style li:hover dl dt img {
        transform: scale(1.05) rotate(2deg); }
      .list_style li:hover dl dd {
        opacity: 0.5; }
    .list_style li a {
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      z-index: 10;
      cursor: pointer; }
    .list_style li dl {
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      height: 100%; }
      .list_style li dl dt {
        border-radius: 1.1422976501vw;
        overflow: hidden;
        transition: all 0.6s 0s cubic-bezier(0, 0.49, 0.08, 1);
        margin-bottom: 0.9791122715vw;
        width: 100%;
        aspect-ratio: 187/150; }
        .list_style li dl dt img {
          width: 100%;
          transition: all 0.6s 0s cubic-bezier(0, 0.49, 0.08, 1);
          height: 100%;
          object-fit: cover; }
      .list_style li dl dd {
        width: 100%;
        display: flex;
        flex-direction: column;
        height: auto;
        flex: 1;
        flex-wrap: wrap;
        transition: all 0.6s 0s cubic-bezier(0, 0.49, 0.08, 1); }
        .list_style li dl dd .ttl {
          font-size: 1.125rem;
          line-height: 1.33;
          font-weight: 700;
          margin-bottom: 0.625rem;
          flex: 1;
          width: 100%; }
        .list_style li dl dd .txt {
          width: 100%;
          font-size: 0.875rem;
          line-height: 1.5;
          flex: 1; }
        .list_style li dl dd > div {
          width: 100%;
          display: flex;
          justify-content: space-between;
          align-items: center;
          line-height: 0;
          position: relative;
          padding-top: 0.9791122715vw;
          margin-top: 1.9582245431vw;
          box-sizing: border-box; }
          .list_style li dl dd > div:before {
            display: block;
            content: '';
            width: 100%;
            height: 1px;
            background: #525049;
            position: absolute;
            top: 0;
            left: 0; }
          .list_style li dl dd > div .day {
            font-size: 0.925rem; }
          .list_style li dl dd > div .btn {
            width: 5.75rem; }
            .list_style li dl dd > div .btn img {
              width: 100%;
              height: auto; }
  .list_style.type2:after {
    content: "";
    display: block;
    width: 29.9074074074%; }
  .list_style.type2::before {
    display: none; }
  .list_style.type2 li {
    width: 29.9074074074%; }
    .list_style.type2 li dl dt {
      border-radius: 1.1749347258vw;
      margin-bottom: 1.3054830287vw;
      aspect-ratio: 323/212; }
    .list_style.type2 li dl dd .ttl {
      font-size: 1.25rem;
      line-height: 1.2; }
    .list_style.type2 li dl dd > div {
      padding-top: 0.9791122715vw;
      margin-top: 0.6527415144vw; }

@media screen and (max-width: 736px) {
  .list_style li {
    width: 43.0666666667vw;
    margin-bottom: 6.6666666667vw; }
    .list_style li dl dt {
      border-radius: 3.7333333333vw;
      margin-bottom: 2.6666666667vw;
      aspect-ratio: 323/241; }
    .list_style li dl dd .ttl {
      font-size: 3.2vw;
      line-height: 1.29;
      margin-bottom: 2.6666666667vw; }
    .list_style li dl dd .txt {
      font-size: 2.4vw;
      line-height: 1.44; }
    .list_style li dl dd > div {
      padding-top: 2.6666666667vw;
      margin-top: 2.6666666667vw; }
      .list_style li dl dd > div .day {
        font-size: 2.4vw; }
      .list_style li dl dd > div .btn {
        width: 15.0666666667vw; }
  .list_style.type2:after {
    display: none; }
  .list_style.type2 li {
    width: 43.0666666667vw; }
    .list_style.type2 li dl dt {
      border-radius: 3.7333333333vw;
      margin-bottom: 2.6666666667vw;
      aspect-ratio: 323/241; }
    .list_style.type2 li dl dd .ttl {
      font-size: 3.2vw;
      line-height: 1.29; }
    .list_style.type2 li dl dd > div {
      padding-top: 0.9791122715vw;
      margin-top: 0.6527415144vw; } }
.ttl_style {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding-bottom: 0.8485639687vw;
  margin-bottom: 2.9373368146vw; }
  .ttl_style:before {
    display: block;
    content: '';
    width: 100%;
    height: 1px;
    background: #525049;
    position: absolute;
    bottom: 0;
    left: 0; }
  .ttl_style .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .ttl_style .ttl {
    display: flex;
    align-items: flex-end; }
    .ttl_style .ttl .en {
      font-size: 2.5rem;
      display: block; }
    .ttl_style .ttl .jp {
      font-size: 1.375rem;
      margin-left: 1.875rem;
      padding-top: 0.25rem;
      display: block; }
  .ttl_style .btn {
    width: 13.1875rem;
    padding-bottom: 0.625rem; }
    .ttl_style .btn img {
      width: 100%;
      height: auto; }

@media screen and (max-width: 736px) {
  .ttl_style {
    padding-bottom: 5.3333333333vw;
    margin-bottom: 6vw; }
    .ttl_style .wrap {
      align-items: flex-end; }
    .ttl_style .ttl {
      display: block; }
      .ttl_style .ttl .en {
        font-size: 7.3333333333vw; }
      .ttl_style .ttl .jp {
        font-size: 3.7333333333vw;
        margin-left: 0;
        padding-top: 1.3333333333vw; }
    .ttl_style .btn {
      width: 28.2666666667vw;
      padding-bottom: 0.625rem; } }
/*------------------------------------------------------------
#Info_area
------------------------------------------------------------*/
#Cs_area {
  height: 80vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  #Cs_area .web_font, #Cs_area .list_style li dl dd > div .day, .list_style li dl dd > div #Cs_area .day, #Cs_area .ttl_style .ttl .en, .ttl_style .ttl #Cs_area .en {
    font-size: 1.75rem; }

@media screen and (max-width: 736px) {
  #Cs_area {
    height: 70vh; }
    #Cs_area .web_font, #Cs_area .list_style li dl dd > div .day, .list_style li dl dd > div #Cs_area .day, #Cs_area .ttl_style .ttl .en, .ttl_style .ttl #Cs_area .en {
      font-size: 5.3333333333vw; } }
