@charset "UTF-8";
*, *::before, *::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

html, body {
  height: 100%;
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

#root, #__next {
  isolation: isolate;
}

html {
  scroll-behavior: smooth;
}

.p-25thanniversary_2026 {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", "メイリオ", sans-serif;
  overflow: hidden;
}
.p-25thanniversary_2026 ul, .p-25thanniversary_2026 li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-25thanniversary_2026 a {
  transition: 0.3s;
}
.p-25thanniversary_2026 a:hover {
  opacity: 0.8;
}
.p-25thanniversary_2026 section {
  position: relative;
}
.p-25thanniversary_2026 .wrap {
  margin: 0 auto;
  position: relative;
  max-width: 1100px;
}
.p-25thanniversary_2026 .btn-area {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5vw;
  justify-content: center;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .btn-area {
    gap: 2.9%;
  }
}
.p-25thanniversary_2026 .btn {
  text-align: center;
}
.p-25thanniversary_2026 .title {
  background: url(../img/bg-title.svg) no-repeat 50% 50px/1245.5px auto, linear-gradient(to top, #d9ebf9, #c1dff6);
}
.p-25thanniversary_2026 .title .logo {
  position: absolute;
  right: 2.5vw;
  top: 2.5vw;
  width: 18.67vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .title .logo {
    right: 10.45%;
    top: 4%;
    max-width: 169px;
    width: 15.54%;
  }
}
.p-25thanniversary_2026 .title picture {
  margin: 0 auto;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .title picture {
    padding: 1.5% 0 0;
    max-width: 926px;
    width: 84.36%;
  }
}
.p-25thanniversary_2026 .title .btn {
  position: absolute;
  right: 5vw;
  top: 56.5vw;
  width: 54.32vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .title .btn {
    right: 13.45%;
    top: 78%;
    max-width: 483px;
    width: 44.09%;
  }
}
.p-25thanniversary_2026 .nav {
  background: linear-gradient(to right, #0092d3 50%, #6fb92c 50%);
}
.p-25thanniversary_2026 .nav ul {
  display: flex;
}
.p-25thanniversary_2026 .nav li {
  position: relative;
  width: 50%;
}
.p-25thanniversary_2026 .nav li a {
  display: block;
  position: relative;
}
@media (max-width: 768px) {
  .p-25thanniversary_2026 .nav li a {
    padding: 0 0 1.25vw;
  }
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .nav li a {
    margin: 0 0 -5%;
    top: -18.5%;
  }
}
.p-25thanniversary_2026 .nav li img {
  position: relative;
  width: 51.97vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .nav li img {
    left: 6%;
    max-width: 1046px;
    width: 95.27%;
  }
}
.p-25thanniversary_2026 .nav li:nth-child(2) a {
  position: relative;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .nav li:nth-child(2) a {
    top: -17%;
  }
}
.p-25thanniversary_2026 .nav li:nth-child(2) img {
  left: -0.5vw;
  width: 50.32vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .nav li:nth-child(2) img {
    left: -2%;
    max-width: 1014px;
    width: 92.36%;
  }
}
.p-25thanniversary_2026 .content {
  background: url(../img/bg-content-sp.svg) no-repeat calc(50% - 1.62vw) -9vw/111.5vw auto, linear-gradient(to top, #e5f1fb, #c1dff6);
  padding: 0 0 5vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content {
    background: url(../img/bg-content.svg) no-repeat calc(50% + 27px) 40px/1359px auto, linear-gradient(to top, #e5f1fb, #c1dff6);
    padding: 0 0 80px;
  }
}
.p-25thanniversary_2026 .content picture {
  margin: 0 auto;
}
.p-25thanniversary_2026 .content01 {
  padding: 3.12vw 0 0;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content01 {
    padding: 25px 0 0;
  }
}
.p-25thanniversary_2026 .content01 picture {
  width: 95.25vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content01 picture {
    max-width: 986px;
    width: 89.81%;
  }
}
.p-25thanniversary_2026 .content01 picture img {
  position: relative;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content01 picture img {
    left: 2px;
  }
}
.p-25thanniversary_2026 .content01 .btn {
  margin: 2.5vw 0 0;
  width: 43.25vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content01 .btn {
    margin: 20px 0 0;
    max-width: 439px;
    width: 40.09%;
  }
}
.p-25thanniversary_2026 .content02 {
  padding: 2.5vw 0 0;
  position: relative;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content02 {
    padding: 95px 0 0;
  }
}
.p-25thanniversary_2026 .content02 picture {
  width: 96.12vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content02 picture {
    max-width: 992.5px;
    width: 90.4%;
  }
}
.p-25thanniversary_2026 .content02 .btn01 {
  position: absolute;
  left: 75vw;
  top: 185.4vw;
  width: 17.75vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content02 .btn01 {
    left: 73.45%;
    top: 74.45%;
    max-width: 186.5px;
    width: 17.13%;
  }
}
.p-25thanniversary_2026 .content02 .btn-area {
  bottom: 4vw;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  width: 100%;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content02 .btn-area {
    bottom: 1.4%;
  }
}
.p-25thanniversary_2026 .content02 .btn {
  margin: 0.87vw 0 0;
  width: 43.25vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content02 .btn {
    margin: 1.5% 0 0;
    max-width: 439px;
    width: 40.09%;
  }
}
.p-25thanniversary_2026 .content03 {
  padding: 5vw 0 0;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content03 {
    padding: 50px 0 0;
  }
}
.p-25thanniversary_2026 .content03 picture {
  width: 100vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content03 picture {
    max-width: 1042px;
    width: 94.9%;
  }
}
.p-25thanniversary_2026 .content03 .btn {
  margin: 2.5vw auto 0;
  width: 48.25vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content03 .btn {
    margin: 25px auto 0;
    max-width: 490px;
    width: 44.72%;
  }
}
.p-25thanniversary_2026 .content04 {
  padding: 3.75vw 0 0;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content04 {
    padding: 40px 0 0;
  }
}
.p-25thanniversary_2026 .content04 picture {
  width: 95.62vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content04 picture {
    max-width: 991px;
    width: 90.27%;
  }
}
.p-25thanniversary_2026 .content04 .btn-area {
  gap: 12.5vw;
  justify-content: start;
  margin: 2.5vw 0 0 8vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content04 .btn-area {
    gap: 12%;
    margin: 30px -10.73% 0 11.09%;
  }
}
.p-25thanniversary_2026 .content04 .btn {
  width: 38.27vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content04 .btn {
    max-width: 387px;
    width: 35.36%;
  }
}
.p-25thanniversary_2026 .content04 .btn:nth-child(2) {
  width: 36.35vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content04 .btn:nth-child(2) {
    max-width: 367px;
    width: 33.54%;
  }
}
.p-25thanniversary_2026 .content05 {
  margin: 0 auto;
  padding: 3.75vw 0 0;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content05 {
    padding: 40px 0 0;
  }
}
.p-25thanniversary_2026 .content05 picture {
  width: 95.62vw;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .content05 picture {
    max-width: 989.5px;
    width: 90.13%;
  }
}
.p-25thanniversary_2026 .date p {
  font-size: 2.5vw;
  font-weight: 700;
  padding: 5vw 5vw 2.5vw;
  text-align: right;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .date p {
    font-size: 15.6px;
    padding: 40px 11.54% 20px;
  }
}
.p-25thanniversary_2026 .footer {
  font-size: 3.5vw;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .footer {
    font-size: 14px;
  }
}
.p-25thanniversary_2026 .link {
  background-color: #176daf;
  padding: 10vw 0;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .link {
    padding: 57px 0;
  }
}
.p-25thanniversary_2026 .link ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5vw 0;
  justify-content: center;
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .link ul {
    gap: 0 6.9%;
  }
}
@media (max-width: 768px) {
  .p-25thanniversary_2026 .link li {
    width: 50%;
  }
}
.p-25thanniversary_2026 .link a {
  color: #fff;
  text-decoration: none;
}
.p-25thanniversary_2026 .copyright {
  color: #176daf;
}
@media (max-width: 768px) {
  .p-25thanniversary_2026 .copyright {
    font-size: 3.25vw;
    line-height: 1.8;
    padding: 10vw 0;
  }
}
@media (min-width: 769px) {
  .p-25thanniversary_2026 .copyright {
    padding: 56px 0;
  }
}