@charset "UTF-8";
.page-60th {
  overflow-x: hidden;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
}

@media screen and (min-width: 751px), print {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }
}
.header-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: 117px;
}
.header-logo {
  width: 198px;
}
.header-logo img {
  width: 100%;
}
.header-navi {
  padding-right: 2.2916666667vw;
}
.header-navi ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  margin: 0;
}
.header-navi ul li {
  line-height: 0.8;
}
.header-navi ul li + li {
  margin-left: 3.125vw;
}
@media screen and (min-width: 1920px), print {
  .header-navi ul li + li {
    margin-left: 60px;
  }
}
.header-navi ul li a {
  position: relative;
  top: -2px;
  font-size: 0.8854166667vw;
  font-weight: bold;
}
@media screen and (min-width: 1920px), print {
  .header-navi ul li a {
    font-size: 17px;
  }
}
.header-navi ul li:last-child {
  padding-left: 1.3020833333vw;
  margin-left: 1.3020833333vw;
  border-left: 1px solid #CEBF97;
}
@media screen and (min-width: 1920px), print {
  .header-navi ul li:last-child {
    padding-left: 25px;
    margin-left: 25px;
  }
}

.mvArea {
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 10;
  width: 100%;
  height: 42.7083333333vw;
  background-color: #ffffff;
}
@media screen and (min-width: 1920px), print {
  .mvArea {
    height: 820px;
  }
}
@media screen and (max-width: 750px) {
  .mvArea {
    height: 115.0666666667vw;
  }
}
.mvArea-anime-movie video {
  width: 106%;
  position: relative;
  top: -3%;
  left: -3%;
}
@media screen and (max-width: 750px) {
  .mvArea-anime-movie video {
    width: 110%;
    top: -2.6666666667vw;
    left: -5%;
  }
}
.mvArea-anime-overlap {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: all ease 2s;
  background-color: #AB1E29;
}
.mvArea-anime-overlap-wrap {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
@media screen and (min-width: 1920px), print {
  .mvArea-anime-overlap-wrap {
    width: 640px;
  }
}
@media screen and (min-width: 751px), print {
  .mvArea-anime-overlap-wrap {
    width: 33.3333333333vw;
  }
}
@media screen and (max-width: 750px) {
  .mvArea-anime-overlap-wrap {
    width: 85.3333333333vw;
  }
}
@media screen and (min-width: 1920px), print {
  .mvArea-anime-overlap-wrap {
    width: 640px;
  }
}
.mvArea-anime-overlap.visible {
  opacity: 1;
}

.greetingArea {
  position: relative;
}
.greetingArea-wrap {
  padding-top: 10.4166666667vw;
  padding-bottom: 26.9791666667vw;
  background-image: url(../img/60th/greeting-bg1.png), url(../img/60th/greeting-bg2.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left top, center bottom;
  background-size: 28.125vw auto, 100% auto;
}
@media screen and (min-width: 1920px), print {
  .greetingArea-wrap {
    padding-top: 200px;
    padding-bottom: 518px;
    background-size: 540px auto, 100% auto;
  }
}
@media screen and (max-width: 750px) {
  .greetingArea-wrap {
    padding-top: 26.6666666667vw;
    padding-bottom: 36vw;
    background-image: url(../img/60th/greeting-bg1--sp.png), url(../img/60th/greeting-bg2--sp.png);
    background-repeat: no-repeat, no-repeat;
    background-position: left top, center bottom;
    background-size: 48vw auto, 100% auto;
  }
}
.greetingArea-title {
  color: #D1A269;
  font-size: 2.5vw;
  font-weight: 500;
  letter-spacing: 0.3rem;
  text-align: center;
  margin-bottom: 2.34375vw;
}
@media screen and (min-width: 1920px), print {
  .greetingArea-title {
    font-size: 48px;
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 750px) {
  .greetingArea-title {
    font-size: 6.4vw;
    margin-bottom: 6.4vw;
  }
}
.greetingArea-text {
  text-align: center;
}
@media screen and (max-width: 750px) {
  .greetingArea-text {
    width: 89.3333333333vw;
    margin-inline: auto;
  }
}
.greetingArea-text p {
  color: #4F4A48;
  font-size: 1.1458333333vw;
  line-height: 2;
}
@media screen and (min-width: 1920px), print {
  .greetingArea-text p {
    font-size: 22px;
  }
}
@media screen and (max-width: 750px) {
  .greetingArea-text p {
    font-size: 3.4666666667vw;
  }
}
.greetingArea-text p + p {
  margin-top: 2rem;
}
.greetingArea-text p.greetingArea-text-title {
  position: relative;
  width: 22.9166666667vw;
  left: calc(50% - 22.9166666667vw);
  text-align: left;
  font-size: 1.0416666667vw;
  line-height: 1.85;
  margin-top: 6.25vw;
}
@media screen and (min-width: 1920px), print {
  .greetingArea-text p.greetingArea-text-title {
    font-size: 20px;
    margin-top: 120px;
    width: 440px;
    left: calc(50% - 440px);
  }
}
@media screen and (max-width: 750px) {
  .greetingArea-text p.greetingArea-text-title {
    width: 39.3333333333vw;
    left: calc(50% - 39.3333333333vw);
    font-size: 3.2vw;
    line-height: 1.2307692308;
    margin-top: 10vw;
  }
}
.greetingArea-text p.greetingArea-text-name {
  position: relative;
  left: calc(50% - 22.9166666667vw);
  text-align: left;
  width: 14.4791666667vw;
  margin-top: 1.4583333333vw;
}
@media screen and (min-width: 1920px), print {
  .greetingArea-text p.greetingArea-text-name {
    width: 278px;
    margin-top: 28px;
    left: calc(50% - 440px);
  }
}
@media screen and (max-width: 750px) {
  .greetingArea-text p.greetingArea-text-name {
    width: 33.3333333333vw;
    left: calc(50% - 39.3333333333vw);
  }
}
.greetingArea-text p.greetingArea-text-name img {
  width: 80%;
}

.histroyArea {
  position: relative;
  z-index: 10;
}
.histroyArea-wrap {
  position: relative;
}
.histroyArea-link {
  position: absolute;
  left: calc(50% - 12.3958333333vw);
  bottom: 3.5416666667vw;
}
@media screen and (max-width: 750px) {
  .histroyArea-link {
    left: calc(50% - 31.3333333333vw);
    bottom: 10.6666666667vw;
  }
}
.histroyArea-link a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375vw;
  font-weight: 500;
  color: #D1A269;
  width: 24.7916666667vw;
  height: 4.0104166667vw;
  background-color: #FDFAF5;
  background-image: url(../img/60th/history-icon.svg);
  background-position: right 1.5625vw center;
  background-size: 0.5208333333vw 0.9375vw;
  box-shadow: 3px 5px 10px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 750px) {
  .histroyArea-link a {
    font-size: 2.9333333333vw;
    width: 62.6666666667vw;
    height: 10.2666666667vw;
    background-position: right 4vw center;
    background-size: 1.3333333333vw 2.4vw;
  }
}
.histroyArea-slide1, .histroyArea-slide2 {
  width: 100%;
  overflow: hidden;
}
.histroyArea-slide1-wrap, .histroyArea-slide2-wrap {
  display: flex;
  width: max-content;
  animation: scroll-left 90s linear infinite;
}
.histroyArea-slide1-wrap img, .histroyArea-slide2-wrap img {
  height: 260px;
  width: auto !important;
  flex-shrink: 0;
}
@media screen and (max-width: 750px) {
  .histroyArea-slide1-wrap img, .histroyArea-slide2-wrap img {
    height: 23.4666666667vw;
  }
}
.histroyArea-slide2-wrap {
  animation: scroll-right 90s linear infinite;
}

@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes scroll-right {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}
.campaignArea {
  position: relative;
  background-color: #FDFAF5;
  background-image: url(../img/60th/anniv-bg.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 8.8020833333vw;
  padding-bottom: 8.8020833333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea {
    background-size: 100% 169px;
    padding-bottom: 169px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea {
    background-image: url(../img/60th/anniv-bg--sp.png);
    background-size: 100% 8vw;
    padding-bottom: 26.6666666667vw;
  }
}
.campaignArea-wrap {
  padding-top: 7.8125vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-wrap {
    padding-top: 150px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-wrap {
    padding-top: 13.3333333333vw;
  }
}
.campaignArea-link {
  position: relative;
  z-index: 10;
}
.campaignArea-link ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 7.8125vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-link ul {
    margin-bottom: 150px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-link ul {
    margin-bottom: 16vw;
  }
}
.campaignArea-link ul li + li {
  margin-left: 1.875vw;
}
@media screen and (max-width: 750px) {
  .campaignArea-link ul li + li {
    margin-left: 1.0666666667vw;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-link ul li + li {
    margin-left: 36px;
  }
}
.campaignArea-link ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375vw;
  color: #ffffff;
  width: 22.3958333333vw;
  height: 4.0104166667vw;
  background-color: #AB1E29;
  background-image: url(../img/60th/ico-link-bottom.svg);
  background-position: right 1.71875vw center;
  background-size: 0.9375vw 0.5208333333vw;
  box-shadow: 3px 5px 10px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 750px) {
  .campaignArea-link ul li a {
    font-size: 2.9333333333vw;
    width: 45.3333333333vw;
    height: 13.3333333333vw;
    background-position: right 4vw center;
    background-size: 2.4vw 1.3333333333vw;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-link ul li a {
    font-size: 18px;
    width: 430px;
    height: 77px;
    background-position: right 33px center;
    background-size: 18px 10px;
  }
}
.campaignArea-head {
  position: relative;
  z-index: 10;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 90.15625vw;
  margin-inline: auto;
  margin-bottom: 5.2083333333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-head {
    width: 1731px;
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-head {
    display: block;
    width: 89.3333333333vw;
    margin-bottom: 8.6666666667vw;
  }
}
.campaignArea-head-title {
  width: 36.09375vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-head-title {
    width: 693px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-head-title {
    width: 81.6vw;
    margin-bottom: 8vw;
  }
}
.campaignArea-head-photo {
  width: 51.7708333333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-head-photo {
    width: 994px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-head-photo {
    width: 100%;
  }
}
.campaignArea-text {
  text-align: center;
  margin-bottom: 3.125vw;
}
@media screen and (max-width: 750px) {
  .campaignArea-text {
    margin-bottom: 9.3333333333vw;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-text {
    margin-bottom: 60px;
  }
}
.campaignArea-text-title {
  color: #AB1E29;
  font-size: 1.875vw;
  font-weight: 500;
  line-height: 1.6111111111;
  margin-bottom: 1.7708333333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-text-title {
    font-size: 36px;
    margin-bottom: 34px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-text-title {
    font-size: 5.3333333333vw;
    line-height: 1.5;
    margin-bottom: 5.3333333333vw;
  }
}
.campaignArea-text p {
  font-size: 1.1458333333vw;
  line-height: 1.8181818182;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-text p {
    font-size: 22px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-text p {
    font-size: 3.4666666667vw;
    line-height: 1.5384615385;
  }
}
.campaignArea-products {
  width: 90.1041666667vw;
  margin-inline: auto;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-products {
    width: 1730px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-products {
    width: 100%;
  }
}
.campaignArea-products-title {
  text-align: center;
  color: #D1A269;
  font-size: 1.4583333333vw;
  font-weight: 500;
  line-height: 1.9642857143;
  margin-bottom: 2.6041666667vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-products-title {
    font-size: 28px;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-products-title {
    font-size: 4.8vw;
    line-height: 1.5277777778;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-products {
    padding-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1920px), print {
  .campaignArea-products {
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-products ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.3020833333vw 0;
    width: 90.1041666667vw;
    margin: 0;
    margin-inline: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1920px), print {
  .campaignArea-products ul {
    width: 1730px;
    gap: 25px 0;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-products ul li {
    width: 28.4895833333vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1920px), print {
  .campaignArea-products ul li {
    width: 547px;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-products ul + ul {
    width: 62.5vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1920px), print {
  .campaignArea-products ul + ul {
    width: 1200px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-products {
    padding-bottom: 5.3333333333vw;
  }
  .campaignArea-products ul {
    margin: 0;
  }
  .campaignArea-products ul li {
    width: 96vw;
    margin-inline: auto;
    margin-bottom: 2.6666666667vw;
  }
  .campaignArea-products ul li img {
    width: 100%;
  }
}
.campaignArea-theme {
  position: relative;
  z-index: 10;
  width: 90.1041666667vw;
  padding: 4.1666666667vw 4.1666666667vw 2.0833333333vw;
  background-color: #F9F2E7;
  margin-inline: auto;
  margin-bottom: 4.1666666667vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme {
    width: 1730px;
    padding: 80px 80px 40px;
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme {
    width: 89.3333333333vw;
    padding: 11.3333333333vw 5.3333333333vw 9.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
}
.campaignArea-theme-title {
  text-align: center;
  padding-top: 3.125vw;
  padding-bottom: 2.34375vw;
  background-color: #ffffff;
  border-radius: 13px;
  margin-bottom: 2.34375vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-title {
    padding-top: 60px;
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-title {
    padding-top: 6.6666666667vw;
    padding-bottom: 5.3333333333vw;
    margin-bottom: 6.6666666667vw;
  }
}
.campaignArea-theme-title-main {
  font-family: "Noto Serif JP", "HiraMinProN-W6", "ヒラギノ明朝 ProN W6", "HG明朝E", "MS PMincho", "ＭＳ Ｐ明朝", "MS 明朝", serif;
  font-weight: 500;
  font-size: 2.0833333333vw;
  font-weight: 600;
  line-height: 1.5405405405;
  margin-bottom: 1.6666666667vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-title-main {
    font-size: 40px;
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-title-main {
    font-size: 5.2vw;
    line-height: 1.4615384615;
    margin-bottom: 2.9333333333vw;
  }
}
.campaignArea-theme-title-main small {
  display: block;
  font-size: 1.4583333333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-title-main small {
    font-size: 28px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-title-main small {
    font-size: 3.7333333333vw;
  }
}
.campaignArea-theme-title-sub {
  color: #AB1E29;
  font-size: 1.1458333333vw;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-title-sub {
    font-size: 3.4666666667vw;
    line-height: 1.6923076923;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-title-sub {
    font-size: 22px;
  }
}
.campaignArea-theme-subtitle {
  text-align: center;
  color: #D1A269;
  font-size: 1.4583333333vw;
  font-weight: 500;
  letter-spacing: 0.3rem;
  line-height: 1.9642857143;
  margin-bottom: 1.0416666667vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-subtitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-subtitle {
    font-size: 4.8vw;
    line-height: 1.5277777778;
    margin-bottom: 4.6666666667vw;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-theme-detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px), print {
  .campaignArea-theme-detail ul {
    width: 50%;
  }
  .campaignArea-theme-detail ul:nth-of-type(1) {
    padding-right: 2.34375vw;
    border-right: 1px solid #4F4A48;
  }
  .campaignArea-theme-detail ul:nth-of-type(2) {
    padding-left: 2.34375vw;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-detail ul {
    margin: 0;
  }
}
.campaignArea-theme-detail ul li {
  position: relative;
  font-size: 1.1458333333vw;
  line-height: 1.8181818182;
  padding-left: 1.3020833333vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-theme-detail ul li {
    font-size: 22px;
    padding-left: 25px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-detail ul li {
    font-size: 3.4666666667vw;
    line-height: 1.5384615385;
    padding-left: 0;
  }
}
.campaignArea-theme-detail ul li::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "◆";
}
@media screen and (max-width: 750px) {
  .campaignArea-theme-detail ul li::before {
    position: relative;
  }
}
.campaignArea-theme-detail ul li a {
  text-decoration: underline;
}
.campaignArea-btn {
  position: relative;
  z-index: 10;
}
.campaignArea-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375vw;
  color: #ffffff;
  width: 24.7916666667vw;
  height: 4.0104166667vw;
  padding-left: 2.0833333333vw;
  background-color: #AB1E29;
  background-image: url(../img/60th/ico-link.svg);
  background-position: right 1.5625vw center;
  background-size: 0.5208333333vw 0.9375vw;
  box-shadow: 3px 5px 10px rgba(0, 0, 0, 0.3);
  margin-inline: auto;
}
@media screen and (max-width: 750px) {
  .campaignArea-btn a {
    font-size: 2.9333333333vw;
    width: 63.4666666667vw;
    height: 10.2666666667vw;
    padding-left: 5.3333333333vw;
    background-position: right 4.6666666667vw center;
    background-size: 1.3333333333vw 2.4vw;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-btn a {
    font-size: 18px;
    width: 476px;
    height: 77px;
    padding-left: 40px;
    background-position: right 30px center;
    background-size: 10px 18px;
  }
}
.campaignArea-btn a span {
  position: relative;
}
.campaignArea-btn a span::before {
  content: "";
  width: 2.03125vw;
  height: 2.03125vw;
  position: absolute;
  top: -0.2604166667vw;
  left: -3.3854166667vw;
  background-image: url(../img/60th/ico-instagram.svg);
  background-size: 100% 100%;
}
@media screen and (max-width: 750px) {
  .campaignArea-btn a span::before {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    top: -0.6666666667vw;
    left: -10vw;
  }
}
@media screen and (min-width: 1920px), print {
  .campaignArea-btn a span::before {
    width: 39px;
    height: 39px;
    top: -5px;
    left: -65px;
  }
}
.campaignArea-line1 {
  position: absolute;
  top: -8.5vw;
  left: -5vw;
  width: 111vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-line1 {
    top: -163.2px;
    left: -96px;
    width: 2131.2px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-line1 {
    top: 34vw;
    left: -34vw;
    width: 144vw;
  }
}
.campaignArea-line2 {
  position: absolute;
  top: 165vw;
  left: -9vw;
  width: 119vw;
}
@media screen and (min-width: 1920px), print {
  .campaignArea-line2 {
    top: 3168px;
    left: -172.8px;
    width: 2284.8px;
  }
}
@media screen and (max-width: 750px) {
  .campaignArea-line2 {
    top: inherit;
    bottom: 42vw;
    left: -12vw;
    width: 140vw;
  }
}

.annivArea {
  position: relative;
  padding-top: 3.125vw;
  padding-bottom: 27.0833333333vw;
  background-color: #F1F8F2;
}
@media screen and (min-width: 1920px), print {
  .annivArea {
    padding-top: 60px;
    padding-bottom: 520px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea {
    padding-top: 4.6666666667vw;
    padding-bottom: 34.6666666667vw;
    background-image: url(../img/60th/anniv-bg--sp.png);
  }
}
.annivArea::after {
  content: "";
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3.125vw;
  background-color: #AB1E29;
}
@media screen and (min-width: 1920px), print {
  .annivArea::after {
    height: 60px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea::after {
    height: 8vw;
  }
}
.annivArea-logo {
  width: 29.8958333333vw;
  margin-inline: auto;
  margin-bottom: 5.2083333333vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-logo {
    width: 574px;
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-logo {
    width: 61.2vw;
    margin-bottom: 13.3333333333vw;
  }
}
.annivArea-text {
  text-align: center;
  margin-bottom: 3.125vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-text {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-text {
    margin-bottom: 8.6666666667vw;
  }
}
.annivArea-text strong {
  display: block;
  color: #D1A269;
  font-size: 2.5vw;
  letter-spacing: 0.3rem;
  font-weight: 500;
  line-height: 1.1458333333;
  margin-bottom: 1.8229166667vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-text strong {
    font-size: 48px;
    margin-bottom: 35px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-text strong {
    font-size: 6.4vw;
    line-height: 1.4166666667;
    margin-bottom: 6vw;
  }
}
.annivArea-text p {
  font-family: "Noto Serif JP", "HiraMinProN-W6", "ヒラギノ明朝 ProN W6", "HG明朝E", "MS PMincho", "ＭＳ Ｐ明朝", "MS 明朝", serif;
  font-weight: 500;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
}
@media screen and (min-width: 1920px), print {
  .annivArea-text p {
    font-size: 24px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-text p {
    font-size: 3.7333333333vw;
    line-height: 2.0357142857;
  }
}
.annivArea-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90.1041666667vw;
  margin-inline: auto;
  margin-bottom: 3.125vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-wrap {
    width: 1730px;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-wrap {
    display: block;
    width: 89.3333333333vw;
    margin-bottom: 8vw;
  }
}
.annivArea-detail {
  position: relative;
  z-index: 10;
  width: 44.6354166667vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-detail {
    width: 857px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-detail {
    width: 100%;
  }
  .annivArea-detail + .annivArea-detail {
    margin-top: 2.6666666667vw;
  }
}
.annivArea-btn {
  position: relative;
  z-index: 10;
}
.annivArea-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375vw;
  color: #ffffff;
  width: 24.7916666667vw;
  height: 4.0104166667vw;
  background-color: #AB1E29;
  background-image: url(../img/60th/ico-link.svg);
  background-position: right 1.5625vw center;
  background-size: 0.5208333333vw 0.9375vw;
  box-shadow: 3px 5px 10px rgba(0, 0, 0, 0.3);
  margin-inline: auto;
  margin-top: 2.34375vw;
}
@media screen and (max-width: 750px) {
  .annivArea-btn a {
    font-size: 2.9333333333vw;
    width: 63.4666666667vw;
    height: 10.2666666667vw;
    background-position: right 4.6666666667vw center;
    background-size: 1.3333333333vw 2.4vw;
    margin-top: 6.2666666667vw;
  }
}
@media screen and (min-width: 1920px), print {
  .annivArea-btn a {
    font-size: 18px;
    width: 476px;
    height: 77px;
    background-position: right 30px center;
    background-size: 10px 18px;
    margin-top: 45px;
  }
}
.annivArea-line1 {
  position: absolute;
  bottom: 1vw;
  left: -7.5vw;
  width: 96vw;
}
@media screen and (min-width: 1920px), print {
  .annivArea-line1 {
    bottom: 19.2px;
    left: -144px;
    width: 1843.2px;
  }
}
@media screen and (max-width: 750px) {
  .annivArea-line1 {
    bottom: 3vw;
    left: -9vw;
    width: 105vw;
  }
}

.footer-pagetop {
  z-index: 20;
}

.draw-line .st0 {
  transition: stroke-dashoffset 2s ease-in-out, opacity 0.5s ease;
  opacity: 0;
}

.draw-line.is-active .st0 {
  opacity: 1;
  stroke-dashoffset: 0 !important;
}

#svg-1 .svg-elem-1 {
  stroke-dashoffset: 11183.9px;
  stroke-dasharray: 5591.9px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-1.active .svg-elem-1 {
  stroke-dashoffset: 5591.9px;
}

#svg-1 .svg-elem-2 {
  stroke-dashoffset: 10232.6px;
  stroke-dasharray: 5116.3px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-1.active .svg-elem-2 {
  stroke-dashoffset: 5116.3px;
}

#svg-1 .svg-elem-3 {
  stroke-dashoffset: 3325.5px;
  stroke-dasharray: 1662.7px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-1.active .svg-elem-3 {
  stroke-dashoffset: 1662.7px;
}

#svg-1 .svg-elem-4 {
  stroke-dashoffset: 3109.4px;
  stroke-dasharray: 1554.7px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-1.active .svg-elem-4 {
  stroke-dashoffset: 1554.7px;
}

#svg-1 .svg-elem-5 {
  stroke-dashoffset: 5652.8px;
  stroke-dasharray: 2826.4px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-1.active .svg-elem-5 {
  stroke-dashoffset: 2826.4px;
}

#svg-2 .svg-elem-1 {
  stroke-dashoffset: 12338.2px;
  stroke-dasharray: 6169.1px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-2.active .svg-elem-1 {
  stroke-dashoffset: 6169.1px;
}

#svg-2 .svg-elem-2 {
  stroke-dashoffset: 11288.7px;
  stroke-dasharray: 5644.3px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-2.active .svg-elem-2 {
  stroke-dashoffset: 5644.3px;
}

#svg-2 .svg-elem-3 {
  stroke-dashoffset: 3668.5px;
  stroke-dasharray: 1834.2px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-2.active .svg-elem-3 {
  stroke-dashoffset: 1834.2px;
}

#svg-2 .svg-elem-4 {
  stroke-dashoffset: 3430px;
  stroke-dasharray: 1715px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-2.active .svg-elem-4 {
  stroke-dashoffset: 1715px;
}

#svg-2 .svg-elem-5 {
  stroke-dashoffset: 6166.3px;
  stroke-dasharray: 3083.1px;
  transition: stroke-dashoffset 0.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-2.active .svg-elem-5 {
  stroke-dashoffset: 3083.1px;
}

#svg-3 .svg-elem-1 {
  stroke-dashoffset: 24623.3px;
  stroke-dasharray: 12311.7px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-3.active .svg-elem-1 {
  stroke-dashoffset: 12311.7px;
}

#svg-3 .svg-elem-2 {
  stroke-dashoffset: 9267.4px;
  stroke-dasharray: 4633.7px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

#svg-3.active .svg-elem-2 {
  stroke-dashoffset: 4633.7px;
}

#svg-3 .svg-elem-3 {
  stroke-dashoffset: 3324px;
  stroke-dasharray: 1662px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}

#svg-3.active .svg-elem-3 {
  stroke-dashoffset: 1662px;
}

#svg-3 .svg-elem-4 {
  stroke-dashoffset: 6644px;
  stroke-dasharray: 3322px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3s;
}

#svg-3.active .svg-elem-4 {
  stroke-dashoffset: 3322px;
}

#svg-3 .svg-elem-5 {
  stroke-dashoffset: 4667px;
  stroke-dasharray: 2333.5px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 4s;
}

#svg-3.active .svg-elem-5 {
  stroke-dashoffset: 2333.5px;
}

#svg-3 .svg-elem-6 {
  stroke-dashoffset: 13311.3px;
  stroke-dasharray: 6655.7px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 5s;
}

#svg-3.active .svg-elem-6 {
  stroke-dashoffset: 6655.7px;
}

#svg-3-mobile .svg-elem-1 {
  stroke-dashoffset: 19044.818359375px;
  stroke-dasharray: 9522.4091796875px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-3-mobile.active .svg-elem-1 {
  stroke-dashoffset: 9522.4091796875px;
}

#svg-3-mobile .svg-elem-2 {
  stroke-dashoffset: 1947.5540771484px;
  stroke-dasharray: 973.7770385742px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

#svg-3-mobile.active .svg-elem-2 {
  stroke-dashoffset: 973.7770385742px;
}

#svg-3-mobile .svg-elem-3 {
  stroke-dashoffset: 8231.646484375px;
  stroke-dasharray: 4115.8232421875px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}

#svg-3-mobile.active .svg-elem-3 {
  stroke-dashoffset: 4115.8232421875px;
}

/***************************************************
 * Generated by SVG Artista on 3/26/2026, 9:22:22 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/
#svg-3 .svg-elem-1 {
  stroke-dashoffset: 33242.046875px;
  stroke-dasharray: 16621.0234375px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

#svg-3.active .svg-elem-1 {
  stroke-dashoffset: 16621.0234375px;
}

#svg-3 .svg-elem-2 {
  stroke-dashoffset: 4587.677734375px;
  stroke-dasharray: 2293.8388671875px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

#svg-3.active .svg-elem-2 {
  stroke-dashoffset: 2293.8388671875px;
}

#svg-3 .svg-elem-3 {
  stroke-dashoffset: 13165.830078125px;
  stroke-dasharray: 6582.9150390625px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}

#svg-3.active .svg-elem-3 {
  stroke-dashoffset: 6582.9150390625px;
}/*# sourceMappingURL=page-60th.css.map */