.page55anniversary .m-headerAds img {
  width: 100%;
  max-width: 800px;
  height: auto; }

.page55anniversary .l-footer {
  margin-top: 0; }

.page55anniversaryMain {
  padding-bottom: 160px;
  background-color: #ffe662;
  background-image: radial-gradient(rgba(255, 255, 255, 0.5) 10%, transparent 10%);
  background-size: 90px 90px;
  z-index: 0;
  position: relative;
  font-size: 18px;
  font-weight: 500;
  line-height: calc(45 / 18);
  position: relative; }

.page55anniversaryMain::before, .page55anniversaryMain::after {
    content: '';
    display: block;
    width: 300px;
    height: 100%;
    background-repeat: repeat-y;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    z-index: 0; }

.page55anniversaryMain::before {
    background-image: url(../img/55anniversary/deco-01.png);
    left: 0; }

.page55anniversaryMain::after {
    background-image: url(../img/55anniversary/deco-02.png);
    right: 0; }

.page55anniversaryKv {
  background-image: url(../img/55anniversary/kv.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center calc(100% - 20px); }

.page55anniversaryKv::before, .page55anniversaryKv::after {
    content: '';
    display: block;
    width: calc(550 / 1366 * 100vw);
    height: calc(231 / 1366 * 100vw);
    background-image: url(../img/55anniversary/garland.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top left;
    position: absolute;
    top: 0;
    z-index: 1; }

.page55anniversaryKv::before {
    left: 0; }

.page55anniversaryKv::after {
    right: 0;
    -webkit-transform: scaleX(-1);
            transform: scaleX(-1); }

.page55anniversaryKv_inner {
    padding: 100px 10px 0;
    position: relative;
    z-index: 2;
    text-align: center; }

.page55anniversaryKv_logo {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto 10px; }

.page55anniversaryKv_img-01 {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto; }

.page55anniversaryKv_img-02 {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto; }

.page55anniversaryIntro {
  margin-top: 40px;
  padding: 0 10px;
  position: relative;
  z-index: 2; }

.page55anniversaryIntro_inner {
    margin: 0 auto; }

.page55anniversaryIntro_box {
    max-width: 960px;
    margin: 0 auto;
    padding: 45px 40px;
    background-color: #fff;
    border: 4px solid #393939;
    -webkit-box-shadow: 8px 8px 0px 0px #393939;
            box-shadow: 8px 8px 0px 0px #393939;
    position: relative; }

.page55anniversaryIntro_box::before {
      content: '';
      display: block;
      width: 200px;
      height: 205px;
      background-image: url(../img/55anniversary/intro-img-01.png);
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center center;
      position: absolute;
      top: -110px;
      left: -127px; }

.page55anniversaryAbout {
  margin-top: 100px;
  padding: 120px 10px 80px;
  background: url(../img/55anniversary/bg-round.svg), -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(#fcf0b6), to(#fcf0b6));
  background: url(../img/55anniversary/bg-round.svg), linear-gradient(180deg, rgba(255, 255, 255, 0) calc(447 / 1366 * 100vw - 1vw), #fcf0b6 calc(447 / 1366 * 100vw - 1vw), #fcf0b6 100%);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat; }

.page55anniversaryAbout_inner {
    max-width: 880px;
    margin: 0 auto;
    position: relative;
    z-index: 2; }

.page55anniversaryAbout_heading {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto; }

.page55anniversaryAbout_content {
    max-width: 830px;
    margin: 0 auto; }

.page55anniversaryAbout_program {
    margin-top: 80px; }

.page55anniversaryAbout_program-heading {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      margin: 0 auto; }

.page55anniversaryAbout_program-list {
      margin-top: 20px; }

.page55anniversaryProgramList {
  display: -ms-grid;
  display: grid;
  gap: 20px; }

.page55anniversaryProgram {
  font-size: 16px;
  font-weight: 400;
  line-height: calc(24 / 16); }

.page55anniversaryProgram_thumb {
    aspect-ratio: 16/9;
    border: 4px solid #393939;
    -webkit-box-shadow: 8px 8px 0px 0px #393939;
            box-shadow: 8px 8px 0px 0px #393939;
    position: relative; }

.page55anniversaryProgram_thumb::before, .page55anniversaryProgram_thumb::after {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0; }

.is-end .page55anniversaryProgram_thumb::before, .is-end .page55anniversaryProgram_thumb::after {
        opacity: 1; }

.page55anniversaryProgram_thumb::before {
      background-color: rgba(68, 68, 68, 0.8); }

.page55anniversaryProgram_thumb::after {
      background-repeat: no-repeat;
      background-position: center center; }

.page55anniversaryAbout .page55anniversaryProgram_thumb::after {
        background-image: url(../img/55anniversary/text-end-01.png);
        background-size: 240px auto; }

.page55anniversaryEvent .page55anniversaryProgram_thumb::after {
        background-image: url(../img/55anniversary/text-end-02.png);
        background-size: 270px auto; }

.page55anniversaryProgram_thumb img {
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 100%; }

.page55anniversaryProgram_title {
    margin-top: 20px;
    font-size: 20px;
    font-weight: 700;
    line-height: calc(26 / 20); }

.page55anniversaryProgram_title .free {
      display: inline-block;
      margin-bottom: 5px;
      margin-left: 7px;
      padding: 6px 15px;
      border: 2px solid #393939;
      background-color: #fff;
      font-weight: 700;
      font-size: 14px;
      line-height: 1; }

.page55anniversaryProgram_date {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
    gap: 10px;
    margin-top: 5px;
    font-size: 16px;
    font-weight: 500;
    line-height: calc(20.8 / 16); }

.page55anniversaryProgram_date.-bold {
      font-weight: 700; }

.page55anniversaryProgram_date.-bold span {
        font-size: 14px; }

.page55anniversaryProgram_date dt,
    .page55anniversaryProgram_date dd {
      font-weight: inherit; }

.page55anniversaryProgram_text {
    margin-top: 10px; }

.page55anniversaryEvent {
  margin-top: 80px;
  padding: 0 10px;
  position: relative;
  z-index: 2; }

.page55anniversaryEvent_inner {
    max-width: 900px;
    margin: 0 auto; }

.page55anniversaryEvent_heading {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto; }

.page55anniversaryEvent_list {
    margin-top: 40px; }

.page55anniversaryEvent_banner {
    display: block;
    margin-top: 100px;
    -webkit-transition: 0.5s;
    transition: 0.5s; }

.page55anniversaryEvent_banner:hover {
      opacity: 0.8; }

.page55anniversaryEvent_banner img {
      width: 100%;
      max-width: 100%;
      height: auto; }

@media screen and (max-width: 768px) {
    .page55anniversaryMain {
      font-size: 14px;
      line-height: calc(28/ 14); }
      .page55anniversaryMain::before, .page55anniversaryMain::after {
        width: calc(100 / 375 * 100vw); }
    .page55anniversaryMain img {
      width: 100%;
      max-width: 100%;
      height: auto; }
    .page55anniversaryKv {
      background-image: url(../img/55anniversary/kv_sp.png);
      background-position: center bottom; }
      .page55anniversaryKv::before, .page55anniversaryKv::after {
        background-image: url(../img/55anniversary/garland_sp.png);
        width: calc(150 / 375 * 100vw);
        max-width: calc(150px * 1.6);
        height: calc(101 / 375 * 100vw); }
      .page55anniversaryKv_logo {
        width: calc(180 / 375 * 100vw);
        max-width: calc(180px * 1.3); }
      .page55anniversaryKv_img-01 {
        width: calc(260 / 375 * 100vw);
        max-width: calc(260px * 1.3); }
      .page55anniversaryKv_img-02 {
        width: calc(320 / 375 * 100vw);
        max-width: calc(320px * 1.3); }
    .page55anniversaryIntro {
      margin-top: 75px; }
      .page55anniversaryIntro_box {
        padding: 40px 20px 20px; }
        .page55anniversaryIntro_box::before {
          width: 100px;
          height: 103px;
          top: -70px;
          left: 50%;
          -webkit-transform: translateX(-50%);
                  transform: translateX(-50%); }
    .page55anniversaryAbout {
      margin-top: 60px;
      padding-top: 60px;
      padding-bottom: 40px;
      background: url(../img/55anniversary/bg-round_sp.svg), -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(#fcf0b6), to(#fcf0b6));
      background: url(../img/55anniversary/bg-round_sp.svg), linear-gradient(180deg, rgba(255, 255, 255, 0) calc(113 / 375 * 100vw - 1vw), #fcf0b6 calc(113 / 375 * 100vw - 1vw), #fcf0b6 100%);
      background-size: 100% auto; }
      .page55anniversaryAbout_heading {
        width: calc(270 / 375 * 100vw);
        max-width: calc(270px * 1.3); }
    .page55anniversaryAbout_logo {
      margin: 20px auto 15px;
      width: calc(150 / 375 * 100vw);
      max-width: calc(150px * 1.3); }
        .page55anniversaryAbout_program-heading {
          width: calc(276 / 375 * 100vw);
          max-width: calc(276px * 1.3); }
    .page55anniversaryProgramList {
      max-width: calc(355px * 1.3);
      margin: 0 auto; }
    .page55anniversaryProgram {
      font-size: 14px;
      font-weight: 400;
      line-height: calc(25.2 / 14); }
      .page55anniversaryProgram_thumb {
        -webkit-box-shadow: 2px 2px 0px 0px #393939;
                box-shadow: 2px 2px 0px 0px #393939;
        border-width: 2px; }
          .page55anniversaryAbout .page55anniversaryProgram_thumb::after {
            background-size: calc(160 / 355 * 100%) auto; }
          .page55anniversaryEvent .page55anniversaryProgram_thumb::after {
            background-size: calc(180 / 355 * 100%) auto; }
      .page55anniversaryProgram_title {
        font-size: 18px;
        line-height: calc(27 / 18); }
        .page55anniversaryProgram_title .free {
          -webkit-transform: translateY(-2px);
                  transform: translateY(-2px); }
        .page55anniversaryProgram_date.-bold {
          font-size: 14px; }
    .page55anniversaryEvent {
      margin-top: 40px; }
      .page55anniversaryEvent_heading {
        width: calc(136 / 375 * 100vw);
        max-width: calc(136px * 1.3); }
      .page55anniversaryEvent_list {
        margin-top: 20px; }
      .page55anniversaryEvent_banner {
        max-width: calc(355px * 1.3);
        margin-right: auto;
        margin-left: auto; } }

@media screen and (min-width: 768px) and (max-width: 1366px) {
    .page55anniversaryKv {
      background-size: 1366px auto; }
    .page55anniversaryAbout {
      background-size: 1366px auto; } }

@media screen and (min-width: 768px) and (max-width: 900px) {
    .page55anniversaryIntro {
      margin-top: 80px; } }

@media screen and (min-width: 768px) and (max-width: 1150px) {
      .page55anniversaryIntro_box {
        width: calc(100% - 100px);
        margin-left: 100px; } }

@media screen and (min-width: 540px) and (max-width: 768px) {
    .page55anniversaryAbout {
      background-size: 100% auto; } }

@media screen and (min-width: 769px) {
      .page55anniversaryAbout_content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 50px;
        margin-top: 40px; }
        .page55anniversaryAbout_program-list {
          margin-top: 40px; }
    .page55anniversaryProgramList {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr);
      gap: 80px; }
        .page55anniversaryProgram_title .free {
          display: block;
          width: -webkit-max-content;
          width: -moz-max-content;
          width: max-content;
          margin: 5px 0 10px;
          padding: 8px 14px;
          border-width: 4px;
          font-size: 16px; }
          .page55anniversaryProgram_date.-bold span {
            font-weight: 400; } }
