/* ==========================================================================
   newtop.css - è·¡è¦‹å­¦åœ’å¥³å­å¤§å­¦ ãƒˆãƒƒãƒ—ãƒšãƒ¼ã‚¸ç”¨CSS (ä¿®æ­£åæ˜ ç‰ˆ)
   ========================================================================== */

/* --------------------------------------------------------------------------
   å…±é€šè¨­å®š
   -------------------------------------------------------------------------- */
:root {
  --color-primary: #db251f; /* ãƒ¡ã‚¤ãƒ³ã‚«ãƒ©ãƒ¼ï¼ˆãƒ”ãƒ³ã‚¯/èµ¤ç³»ï¼‰ */
  --color-primary-light: #fff0f4; /* èƒŒæ™¯ç”¨ã®è–„ã„ãƒ”ãƒ³ã‚¯ */
  --color-text: #1a1a1a;
  --color-text-light: #666;
  --color-border: #ddd;
  --color-white: #fff;
  --color-bg-gray: #f5f5f5;
  --content-width: 1200px; /* ã‚³ãƒ³ãƒ†ãƒ³ãƒ„å¹… */
  --section-padding: 60px; /* ã‚»ã‚¯ã‚·ãƒ§ãƒ³ä¸Šä¸‹ä½™ç™½ */
  --section-padding-sp: 50px;
}

.l-main {
  overflow: hidden;
}

.l-main .l-container {
  max-width: 100%;
  padding: 0;
  width: 100%;
}

.l-section._inner-full {
  width: 100%;
}

.l-section._inner-full > .inner {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 0px;
}

@media (max-width: 1660px) {
  .l-section._inner-full > .inner {
    padding: 0 90px;
  }
}

/* --------------------------------------------------------------------------
   å…±é€šè¦‹å‡ºã— h2
   -------------------------------------------------------------------------- */
.l-main h2 {
  text-align: center;
  margin-bottom: 40px;
  display: flex;
  gap: 2em;
}

.l-main h2 span {
  display: block;
  font-family: 'League Spartan', serif;
  font-size: 11rem;
  color: var(--color-primary);
  font-weight: 400;
  margin-bottom: 0px;
  line-height: 1;
}

#gakka h2 span {
  /* color: #fff; */
}

#gakka h2 p {
  /* color: #fff; */
}

#gakka h2 p::after {
  content: '';
  flex-grow: 1;
  height: 1px;
  /* background-color: #fff; */
}

.l-main h2 p {
  font-size: 5rem;
  font-weight: 500;
  color: #db251f;
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.2em;
  flex: 1;
  line-height: 1;
}

/* ç½«ç·šã®å…±é€šã‚¹ã‚¿ã‚¤ãƒ« */
.l-main h2 p::before,
.l-main h2 p::after {
  content: '';
  flex-grow: 1;
  height: 1px;
  background-color: #db251f;
}

/* ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ: å³å´ã®ã¿ï¼ˆWhy Us? ã€œ Campusï¼‰ */
.l-main h2 p::before {
  display: none;
}

.l-main h2 p::after {
  margin-left: 20px;
}

/* #manabi: å·¦å³ä¸¡æ–¹ã®ç½«ç·š */
#manabi h2 p {
  font-size: 4.2rem; /* ä¿®æ­£: æ–‡å­—ãŒå¤§ãã„ã¨ã„ã†æŒ‡æ‘˜å¯¾å¿œ (3.6 -> 3.2) */
}
#manabi h2 p::before {
  display: block;
  margin-right: 20px;
}

#manabi h2 p::after {
  margin-left: 20px;
}

@media (max-width: 767px) {
  .l-main h2 p {
    font-size: 22px;
  }
}

/* --------------------------------------------------------------------------
   #slider - ãƒ¡ã‚¤ãƒ³ãƒ“ã‚¸ãƒ¥ã‚¢ãƒ«
   -------------------------------------------------------------------------- */
#slider {
  position: relative;
  margin: 0;
}

#slider > .inner {
  max-width: 100%;
  padding: 0;
}

#slider .swiper-slide {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1920 / 800;
}

#slider .slide-link {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

#slider .slide-bg,
#slider .slide-fg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#slider .slide-bg {
  pointer-events: none;
  transform: scale(1.08); /* éžã‚¢ã‚¯ãƒ†ã‚£ãƒ–æ™‚ã¯ãƒªã‚»ãƒƒãƒˆçŠ¶æ…‹ */
}

@keyframes kenBurns {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.08);
  }
}

#slider .swiper-slide-active .slide-bg {
  animation: kenBurns 7s ease forwards;
}

#slider .slide-bg {
  z-index: 1;
}

#slider .slide-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#slider .slide-fg {
  z-index: 2;
  pointer-events: none;
}

#slider .slide-fg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* --- ã‚¹ãƒ©ã‚¤ãƒ‰3æžšç›®ï¼šä¹—ç®—ãƒ¬ã‚¤ãƒ¤ãƒ¼ --- */
#slider .slide-multiply {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  mix-blend-mode: multiply;
}
#slider .slide-multiply img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
/* ä¹—ç®—ãƒ¬ã‚¤ãƒ¤ãƒ¼ãŒã‚ã‚‹ã‚¹ãƒ©ã‚¤ãƒ‰ã§ã¯ fg ã‚’ä¸Šã« */
#slider .slide-multiply ~ .slide-fg {
  z-index: 3;
}

/* ãƒ•ã‚§ã‚¤ãƒ‰ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ ãƒšãƒ¼ã‚¸ãƒãƒ¼ã‚·ãƒ§ãƒ³ */
.slider-fade .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: rgba(255, 255, 255, 0.6);
  opacity: 1;
}
.slider-fade .swiper-pagination-bullet-active {
  background: var(--color-primary);
}

/* ãƒ•ã‚§ã‚¤ãƒ‰ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ çŸ¢å° */
.slider-fade .swiper-button-prev,
.slider-fade .swiper-button-next {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  color: #e68da1;
  text-shadow: none;
  right: var(--swiper-navigation-sides-offset, 5px);
}
.slider-fade .swiper-button-prev::after,
.slider-fade .swiper-button-next::after {
  font-size: 18px;
  font-weight: bold;
  color: #e68da1;
}
.slider-fade .swiper-button-prev {
  left: 0.5vw;
}
.slider-fade .swiper-button-next {
  right: 0.5vw;
}

/* --------------------------------------------------------------------------
   ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ ãƒãƒƒãƒ—ã‚¢ãƒƒãƒ—ãƒãƒƒã‚¸ï¼ˆå…«è§’å½¢ãƒ»å¤–æž ï¼‹å†…å´2å±¤æ§‹é€ ï¼‰
   -------------------------------------------------------------------------- */
.slider-popup-wrap {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 97%;
  max-width: 1600px;
  height: 100%;
  z-index: 20;
  pointer-events: none;
  container-type: inline-size;
}

/* å¤–å´ï¼ˆç™½ã„ç½«ç·šå½¹ï¼‰ */
.slider-popup-outer {
  position: absolute;
  z-index: 10;
  width: 12vw;
  height: 12vw;
  aspect-ratio: 1 / 1; /* ä¿®æ­£: æ­£å…«è§’å½¢ã‚’ç¶­æŒã™ã‚‹ãŸã‚è¿½åŠ  */
  padding: 3px;
  /* background: rgba(255, 255, 255, 1); */
  /* clip-path: polygon(29.3% 0%, 70.7% 0%, 100% 29.3%, 100% 70.7%, 70.7% 100%, 29.3% 100%, 0% 70.7%, 0% 29.3%); */
  pointer-events: auto;
  transition: transform 0.3s ease;
}

.slider-popup-outer:hover {
  transform: scale(1.05);
}

/* å†…å´ï¼ˆã‚°ãƒ©ãƒ‡æœ¬ä½“ï¼‰ */
.slider-popup {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  clip-path: polygon(29.3% 0%, 70.7% 0%, 100% 29.3%, 100% 70.7%, 70.7% 100%, 29.3% 100%, 0% 70.7%, 0% 29.3%);
}

.slider-popup:hover {
  opacity: 1;
  text-decoration: none;
}

/* ãƒ›ãƒãƒ¼æ™‚ã«ä¸‹ç·š */
.slider-popup-outer:hover .slider-popup__title {
  /* text-decoration: underline; */
  text-underline-offset: 0.3em;
}

/* ã‚°ãƒ©ãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ */
.slider-popup--grad-pink {
  /* background: linear-gradient(135deg, #e8ce3b, #ff0057); */
  /* background: linear-gradient(135deg, rgba(232, 206, 59, 0.8), rgba(255, 0, 87, 0.8)); */
}

.slider-popup--grad-blue {
  /* background: linear-gradient(150deg, #9098cc, #8878b8, #a080a8); */
  /* background: linear-gradient(150deg, rgba(110, 193, 219, 0.8), rgba(152, 73, 158, 0.8)); */
}

/* ä½ç½®ï¼ˆå·¦ä¸Š=1, å·¦ä¸‹=2, å³ä¸Š=3, å³ä¸‹=4ï¼‰ */
.slider-popup--pos-1 {
  left: 2%;
  bottom: calc(12vw + 6.5%);
}

.slider-popup--pos-2 {
  left: 2%;
  bottom: 3.5%;
}

.slider-popup--pos-3 {
  right: 2%;
  bottom: calc(12vw + 6.5%);
}

.slider-popup--pos-4 {
  right: 2%;
  bottom: 3.5%;
}

/* ãƒ†ã‚­ã‚¹ãƒˆ */
.slider-popup__title {
  display: block;
  font-size: 1.1vw;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.2;
}

.slider-popup__date {
  display: block;
  font-family: 'Jost', sans-serif;
  font-size: 3vw;
  font-weight: 500;
  line-height: 1.15;
  margin: 0.1em 0;
}

.slider-popup__day {
  font-size: 1.4vw;
  font-weight: 500;
}

.slider-popup__place {
  display: block;
  font-size: 1.1vw;
  line-height: 1.2;
  font-weight: 500;
}

.slider-popup img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* ã¾ãŸã¯ coverã€‚å…ƒç”»åƒã®è¦‹ã›æ–¹æ¬¡ç¬¬ */
  display: block;
}

/* 1920pxè¶…: ãƒ“ã‚¸ãƒ¥ã‚¢ãƒ«å¹…ã«è¿½å¾“ã•ã›ã‚‹ */
@media (min-width: 1921px) {
  .slider-popup-wrap {
    max-width: none; /* 1600pxåˆ¶é™ã‚’è§£é™¤ã—ã¦ãƒ“ã‚¸ãƒ¥ã‚¢ãƒ«ã¨åŒå¹…ã« */
  }
  .slider-popup-outer {
    width: 12cqi;
    height: 12cqi;
  }
  .slider-popup--pos-1,
  .slider-popup--pos-3 {
    bottom: calc(12cqi + 6.5%);
  }
  /* ãƒ†ã‚­ã‚¹ãƒˆç³»ã¯ã‚³ãƒ¡ãƒ³ãƒˆã‚¢ã‚¦ãƒˆä¸­ãªã®ã§ä¸è¦ã€‚æ®‹ã™ãªã‚‰ä¸‹è¨˜ */
  .slider-popup__title {
    font-size: 1.1cqi;
  }
  .slider-popup__date {
    font-size: 3cqi;
  }
  .slider-popup__day {
    font-size: 1.4cqi;
  }
  .slider-popup__place {
    font-size: 1.1cqi;
  }
}

/* SP */
@media (max-width: 767px) {
  .slider-popup-wrap {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 2vw;
    height: auto;
    bottom: 3%;
    width: 100%;
    padding: 0 2%;
  }

  .slider-popup-outer {
    position: static;
    width: 21vw;
    height: 21vw;
    aspect-ratio: 1 / 1; /* ä¿®æ­£: SPæ™‚ã‚‚æ­£å…«è§’å½¢ã‚’ç¶­æŒ */
  }

  /* PCç”¨ã®å€‹åˆ¥ä½ç½®æŒ‡å®šã‚’ãƒªã‚»ãƒƒãƒˆ */
  .slider-popup--pos-1,
  .slider-popup--pos-2,
  .slider-popup--pos-3,
  .slider-popup--pos-4 {
    left: auto;
    right: auto;
    bottom: auto;
    padding: 1px;
  }

  .slider-popup__title {
    font-size: 2.2vw;
  }

  .slider-popup__date {
    font-size: 5.5vw;
  }

  .slider-popup__day {
    font-size: 2.8vw;
  }

  .slider-popup__place {
    font-size: 2vw;
  }
}

/* --------------------------------------------------------------------------
   ãƒžãƒ¼ã‚­ãƒ¼é¢¨ã‚¹ãƒ©ã‚¤ãƒ‰ å…±é€šï¼ˆSplide AutoScrollï¼‰
   -------------------------------------------------------------------------- */
.marquee-slider {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.marquee-slider .splide__slide {
  width: auto;
  height: auto;
}

/* ä¿®æ­£: ã‚¹ãƒ©ã‚¤ãƒ‰ã®æ‰‹å‹•ãƒ‰ãƒ©ãƒƒã‚°ã‚’å¯èƒ½ã«ã™ã‚‹ãŸã‚ã€aã‚¿ã‚°ã¨ç”»åƒã®ãƒã‚¤ãƒ†ã‚£ãƒ–å‹•ä½œã‚’ç„¡åŠ¹åŒ– */
.marquee-slider .splide__slide a {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  transition: opacity 0.3s;
  -webkit-user-drag: none;
}

.marquee-slider .splide__slide img {
  display: block;
  height: 100%;
  width: auto;
  pointer-events: none;
}

.marquee-slider .splide__slide a:hover {
  opacity: 0.7;
}

/* --- miryoku ãƒžãƒ¼ã‚­ãƒ¼ --- */
.marquee-miryoku .splide__slide {
  width: calc(100% / 4);
}

.marquee-miryoku .splide__slide figure {
  margin: 0;
  background: var(--color-border);
  aspect-ratio: 400 / 224;
  overflow: hidden;
}

.marquee-miryoku .splide__slide figure img {
  width: 100%;
  object-fit: contain;
  transition: transform 0.4s ease;
}

.marquee-miryoku .splide__slide a:hover figure img {
  transform: scale(1.05);
}

.marquee-miryoku .splide__slide p {
  margin: 0;
  padding: 15px 15px 0;
  font-size: 1.8rem;
  line-height: 1.5;
  border-right: solid 1px #db251f;
  min-height: 70px;
}

/* --- campus ãƒžãƒ¼ã‚­ãƒ¼ --- */
.marquee-campus .splide__slide {
  width: calc(100% / 4);
  overflow: hidden;
  position: relative;
}

.marquee-campus .splide__slide img {
  width: 100%;
  height: auto;
  transition: transform 0.4s ease;
}

.marquee-campus .splide__slide:hover img {
  transform: scale(1.05);
}

/* .marquee-campus .splide__slide img + p {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 8px 12px;
  margin: 0;
  background: rgba(0, 0, 0, 0.85); /
  color: #fff;
  font-size: 1.5rem;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
} */

.marquee-campus .splide__slide a + p {
  position: absolute;
  right: 15px;
  bottom: 15px;
  font-size: 1.8rem;
  color: #c96377;
  line-height: 1;
  text-shadow:
    2px 2px 1px #ffffff,
    -2px 2px 1px #ffffff,
    2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
    2px 0px 1px #ffffff,
    0px 2px 1px #ffffff,
    -2px 0px 1px #ffffff,
    0px -2px 1px #ffffff;
}

@media (max-width: 767px) {
  .marquee-miryoku .splide__slide {
    width: 66vw;
  }
  .marquee-campus .splide__slide {
    width: 66vw;
  }
  .slider-fade .swiper-button-prev::after,
  .slider-fade .swiper-button-next::after {
    font-size: 20px;
  }

  .marquee-campus .splide__slide a + p {
    position: absolute;
    right: 8px;
    bottom: 8px;
    font-size: 1rem;
  }
}

/* --------------------------------------------------------------------------
   #manabi - è·¡è¦‹ã§å­¦ã³ãŸã„ã‚ãªãŸã¸
   -------------------------------------------------------------------------- */
#manabi {
  padding: var(--section-padding) 0;
  /* background: #fbeaea; */
  margin: 0;
  width: 100%;
  border-bottom: solid 15px #db251f;
}

#manabi h2 span {
  display: none; /* spanã¯ç©ºãªã®ã§éžè¡¨ç¤º */
}

#manabi h2 p {
  color: var(--color-primary);
}

#manabi h2 p::before,
#manabi h2 p::after {
  background-color: var(--color-primary);
}

/* 4ã¤ã®ãƒŠãƒ“ãƒœã‚¿ãƒ³ */
.manabi-nav {
  display: flex;
  justify-content: center;
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0 0 40px;
}

.manabi-nav li {
  flex: 1;
}

.manabi-nav li a {
  display: block;
  text-align: center;
  padding: 14px 20px;
  border: 1px solid var(--color-primary);
  color: var(--color-white);
  font-size: 3.2rem;
  font-weight: 500; /* ä¿®æ­£: æ–‡å­—ã‚’å¼·èª¿ã—ã¦è¦–èªæ€§ã‚¢ãƒƒãƒ— */
  text-decoration: none;
  transition:
    background 0.3s,
    color 0.3s;
  background: var(--color-primary);
  position: relative;
  line-height: 1.6;
  border-radius: 4px;
  letter-spacing: 0.1em;
}

.manabi-nav li a:after {
  content: '';
  width: 30px;
  height: 30px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_white.png);
  display: inline-block;
  position: absolute;
  top: 32%;
  right: 0.7em;
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width: 1600px) {
  .manabi-nav li a {
    font-size: clamp(1.4rem, 1.25vw + 8px, 3.2rem);
  }
  .manabi-nav li a:after {
    width: clamp(1.625rem, 1.25vw + 6px, 1.875rem);
    height: clamp(1.625rem, 1.25vw + 6px, 1.875rem);
    top: 37%;
  }
}

.manabi-nav li a:hover {
  background: var(--color-white);
  color: var(--color-primary);
}

.manabi-nav li a:hover:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_red.png);
}

/* ã‚ªãƒ¼ãƒ—ãƒ³ã‚­ãƒ£ãƒ³ãƒ‘ã‚¹ãƒãƒŠãƒ¼æ¨ªä¸¦ã³ */
.manabi-opencampus-nav {
  display: flex;
  gap: 0px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.manabi-opencampus-nav li {
  flex: 1;
  width: calc(100% / 4);
}

.manabi-opencampus-nav li a {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  overflow: hidden;
  transition: opacity 0.3s;
}

.manabi-opencampus-nav li a:hover {
  opacity: 0.8;
}

.manabi-opencampus-nav figure {
  margin: 0;
  background: var(--color-bg-gray);
  aspect-ratio: 400/220;
  overflow: hidden;
}

.manabi-opencampus-nav figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  aspect-ratio: 400/220;
  transition: transform 0.4s ease;
}

.manabi-opencampus-nav li a:hover figure img {
  transform: scale(1.05);
}

.manabi-oc-date {
  margin: 8px 0 0;
  font-family: 'Jost', sans-serif;
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-text);
}

.manabi-oc-date span {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
}

.manabi-oc-title {
  margin: 4px 0 0;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  color: var(--color-text);
}

.manabi-opencampus-nav p {
  margin: 0;
  padding: 15px 20px 0;
  font-size: 1.8rem;
  line-height: 1.5;
  border-right: solid 1px #db251f;
  min-height: 70px;
  /* 2è¡Œã§çœç•¥ï¼ˆPCï¼‰ */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.manabi-opencampus-nav li:nth-of-type(1) p {
  border-left: solid 1px #db251f;
}

@media (max-width: 767px) {
  .manabi-nav {
    flex-wrap: wrap;
    gap: 10px;
  }
  .manabi-nav li {
    flex: 0 0 calc(50% - 5px);
    max-width: none;
  }
  .manabi-nav li a {
    padding: 10px 12px;
    /* font-size: clamp(1.75rem, 1.25vw + 8px, 3.2rem); */ /* ä¿®æ­£: SPè¡¨ç¤ºæ™‚ã®ãƒœã‚¿ãƒ³æ–‡å­—ã‚µã‚¤ã‚ºã‚¢ãƒƒãƒ— */
  }
  .manabi-opencampus-nav {
    flex-wrap: wrap;
    gap: 10px;
  }
  .manabi-opencampus-nav li {
    flex: 0 0 calc(50% - 5px);
  }
}

/* --------------------------------------------------------------------------
   #miryoku - Why Us? è·¡è¦‹å­¦åœ’å¥³å­å¤§å­¦ã®é­…åŠ›
   -------------------------------------------------------------------------- */
#miryoku {
  padding: 80px 0 110px;
  background: #fff;
  margin: 0;
}

/* --------------------------------------------------------------------------
   #gakka - Department è·¡è¦‹ã§å­¦ç§‘ã‚’æŽ¢ã™
   -------------------------------------------------------------------------- */
#gakka {
  padding: 100px 0;
  background-color: #e6e6e6;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/top_department_bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  /* border ã¯å‰Šé™¤ */
  margin: 0;
}

.gakka-border {
  position: absolute;
  left: 0;
  width: 100%;
  height: 40px;
  background: linear-gradient(90deg, #f66b78, #dd3e40);
  opacity: 0.75;
  pointer-events: none;
  z-index: 2;
}
.gakka-border-top {
  top: 0;
  height: 25px;
}
.gakka-border-bottom {
  bottom: 0;
  height: 25px;
}

.back_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 0;
}

/* å­¦ç§‘ã‚«ãƒ¼ãƒ‰ã‚°ãƒªãƒƒãƒ‰å…±é€š */
.gakka-nav {
  display: flex;
  justify-content: center;
  gap: 40px;
  list-style: none;
  margin: 0;
  flex-wrap: wrap;
  z-index: 2;
  position: relative;
}

.gakka-nav-upper li {
  width: calc((100% - 80px) / 3);
  background: transparent;
}

.gakka-nav-lower li {
  width: calc((100% - 20px) / 3);
}

.gakka-nav-link {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  position: relative;
  overflow: hidden;
  aspect-ratio: 510/335;
  background: transparent;
}

.gakka-nav-link:hover .gakka-nav-back {
  background: transparent;
}

.gakka-nav-link:hover {
  opacity: 1;
  text-decoration: none;
}

/* è¡¨é¢ï¼ˆç”»åƒï¼‰ */
.gakka-nav-front {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.gakka-nav-front figure {
  margin: 0;
  width: 100%;
  height: 100%;
}

.gakka-nav-front figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* è£é¢ï¼ˆãƒ†ã‚­ã‚¹ãƒˆæƒ…å ±ï¼‰ */
.gakka-nav-back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  /* background: rgba(255, 255, 255, 0.7); */ /* ä¿®æ­£: ç™½èƒŒæ™¯ã®é€éŽåº¦ã‚’ä¸‹ã’ã¦ã‚¤ãƒ©ã‚¹ãƒˆã‚’è¦‹ãˆã‚„ã™ã */
  display: flex;
  flex-direction: column;
  /* justify-content: center; */
  align-items: baseline; /* ä¿®æ­£: æ–‡å­—ã‚’ä¸­å¤®å¯„ã› */
  /* text-align: center; */ /* ä¿®æ­£: æ–‡å­—ã‚’ä¸­å¤®å¯„ã› */
  padding: 24px 32px;
}

.gakka-faculty {
  font-size: 2.4rem;
  margin: 0 0 0px;
  line-height: 1.4;
}

.gakka-nav-link:hover .gakka-faculty {
  color: #fff;
}

.gakka-name {
  font-size: 3.8rem;
  font-weight: 500;
  color: var(--color-text);
  margin: 0 0 16px;
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: center; /* è¿½åŠ : ãƒ•ãƒ¬ãƒƒã‚¯ã‚¹å†…ã®æ–‡å­—ã‚‚ä¸­å¤®å¯„ã› */
  letter-spacing: 0.1em;
}

@media screen and (max-width: 1600px) {
  .gakka-name {
    font-size: clamp(2.1875rem, 6.32vw - 60.6px, 3.8rem);
  }

  /* 1600pxä»¥ä¸‹ã§ã¯é«˜ã•å›ºå®šã‚’è§£é™¤ã—ã€ä¸­èº«ã§æŠ¼ã—åºƒã’ã‚‹ */
  .gakka-nav-link {
    aspect-ratio: auto;
    height: 100%; /* li ã®é«˜ã•ã«è¿½å¾“ */
  }
  .gakka-nav-back {
    position: relative;
    height: auto;
  }

  /* åŒã˜è¡Œã®ã‚«ãƒ¼ãƒ‰é«˜ã•ã‚’ä¸€ç•ªé«˜ã„ã‚‚ã®ã«æƒãˆã‚‹ */
  .gakka-nav li {
    display: flex;
  }
}

.gakka-nav-link:hover .gakka-name {
  color: #fff;
}

.gakka-name:after {
  content: '';
  width: 35px;
  height: 35px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_01.png);
  display: inline-block;
  background-size: contain;
  margin-left: 1rem;
}

.gakka-nav-link:hover .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_hover.png);
}

.gakka-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--color-primary);
  vertical-align: middle;
  margin-left: 4px;
}

.gakka-desc {
  font-size: 2.5rem;
  font-weight: 500;
  color: #c6432e;
  margin: 0 0 0px;
  line-height: 1.4;
  margin-bottom: 6px;
}

.gakka-nav-link:hover .gakka-desc {
  color: #fff;
}

.gakka-nav li .gakka-nav-link:hover .gakka-desc {
  color: #fff;
}

.gakka-text {
  font-size: 1.5rem;
  line-height: 1.6;
  height: 4lh;
}

.gakka-nav-link:hover .gakka-text {
  color: #fff;
}

.gakka-bar {
  width: 13px;
  height: 100%;
  background-color: #c6432e;
  /* background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_01.png); */
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  transition: width 0.3s;
  opacity: 0.9; /* ä¿®æ­£: ãƒ›ãƒãƒ¼ã§è¢«ã•ã£ãŸéš›ã‚‚èƒŒé¢ã®ã‚¤ãƒ©ã‚¹ãƒˆãŒå¾®ã‹ã«é€ã‘ã‚‹ã‚ˆã†ã« */
}

.gakka-nav-link:hover .gakka-bar {
  width: 100%;
  transition: 0.3s;
}

/* å­¦ã³ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ */
.gakka-keywords-wrap {
  margin-top: 12px;
}
.gakka-keywords-title {
  font-size: 1.5rem;
  font-weight: 500;
  /* color: #333; */
  margin-bottom: 0px;
}
.gakka-keywords {
  font-size: 1.5rem;
  line-height: 1.6;
  /* color: #666; */
  height: auto;
}
.gakka-nav li .gakka-nav-link:hover .gakka-keywords-title,
.gakka-nav li .gakka-nav-link:hover .gakka-keywords {
  color: rgba(255, 255, 255, 0.9);
}

/* --- å­¦ç§‘ã‚«ãƒ¼ãƒ‰ å€‹åˆ¥ã‚«ãƒ©ãƒ¼ --- */
/* 2: ç¾ä»£æ–‡åŒ–è¡¨ç¾å­¦ç§‘ */
.gakka-nav li:nth-child(2) .gakka-desc {
  color: #e86b70;
}
.gakka-nav li:nth-child(2) .gakka-bar {
  background-color: #e86b70;
  /* background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_02.png); */
}
.gakka-nav li:nth-child(2) .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_02.png);
}
.gakka-nav li:nth-child(2) .gakka-nav-link:hover .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_hover.png);
}

/* 3: ãƒžãƒã‚¸ãƒ¡ãƒ³ãƒˆå­¦ç§‘ */
.gakka-nav li:nth-child(3) .gakka-desc {
  color: #6bc300;
}
.gakka-nav li:nth-child(3) .gakka-bar {
  background-color: #6bc300;
  /* background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_03.png); */
}
.gakka-nav li:nth-child(3) .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_03.png);
}
.gakka-nav li:nth-child(3) .gakka-nav-link:hover .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_hover.png);
}

/* 4: è¦³å…‰ãƒ‡ã‚¶ã‚¤ãƒ³å­¦ç§‘ */
.gakka-nav li:nth-child(4) .gakka-desc {
  color: #2291b8;
}
.gakka-nav li:nth-child(4) .gakka-bar {
  background-color: #2291b8;
  /* background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_04.png); */
}
.gakka-nav li:nth-child(4) .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_04.png);
}
.gakka-nav li:nth-child(4) .gakka-nav-link:hover .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_hover.png);
}

/* 5: è‡¨åºŠå¿ƒç†å­¦ç§‘ */
.gakka-nav li:nth-child(5) .gakka-desc {
  color: #4d4590;
}
.gakka-nav li:nth-child(5) .gakka-bar {
  background-color: #4d4590;
  /* background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_05.png); */
}
.gakka-nav li:nth-child(5) .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_05.png);
}
.gakka-nav li:nth-child(5) .gakka-nav-link:hover .gakka-name:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_link_hover.png);
}

/* hoveræ™‚ã®ã¿èƒŒæ™¯ç”»åƒã‚’è¡¨ç¤º */
.gakka-nav li:nth-child(1) .gakka-nav-link:hover .gakka-bar {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_01.png);
}
.gakka-nav li:nth-child(2) .gakka-nav-link:hover .gakka-bar {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_02.png);
}
.gakka-nav li:nth-child(3) .gakka-nav-link:hover .gakka-bar {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_03.png);
}
.gakka-nav li:nth-child(4) .gakka-nav-link:hover .gakka-bar {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_04.png);
}
.gakka-nav li:nth-child(5) .gakka-nav-link:hover .gakka-bar {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/department_bg_05.png);
}

@media (max-width: 767px) {
  .gakka-nav {
    flex-direction: column;
    gap: 30px;
    padding: 0;
  }
  .gakka-nav-upper li,
  .gakka-nav-lower li {
    width: 100%;
    background: transparent;
  }
  .gakka-nav-link {
    aspect-ratio: auto;
    width: 100%;
  }

  /* ä¿®æ­£: SPæ™‚ã‚‚å‰é¢ç”»åƒã‚’æ¶ˆã•ãšã«è¡¨ç¤ºã•ã›ã‚‹ */
  .gakka-nav-front {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .gakka-nav-back {
    position: relative;
    z-index: 1; /* ç”»åƒã®æ‰‹å‰ã«ãƒ†ã‚­ã‚¹ãƒˆãƒœãƒƒã‚¯ã‚¹ã‚’é…ç½® */
    padding: 20px 30px;
    /* background: rgba(255, 255, 255, 0.85); */
  }

  .gakka-name {
    font-size: 2.8rem;
  }
  .gakka-faculty {
    font-size: 1.8rem;
  }
  .gakka-desc {
    font-size: 2rem;
    margin-bottom: 10px;
  }
  .gakka-text {
    font-size: 1.2rem;
    height: auto;
    word-break: keep-all;
  }
  .gakka-keywords {
    font-size: 1.1rem;
    word-break: auto; /* ä¿®æ­£: SPã§ä¸è‡ªç„¶ãªæ”¹è¡Œã‚’é˜²ã (keep-all -> auto) */
    overflow-wrap: break-word;
  }
  .gakka-name:after {
    width: 28px;
    height: 28px;
  }
}

/* --------------------------------------------------------------------------
   #career - Career é«˜ã„å°±è·çŽ‡ãƒ»ã‚­ãƒ£ãƒªã‚¢æ”¯æ´
   -------------------------------------------------------------------------- */
#career {
  padding: var(--section-padding) 0 0;
  margin: 0;
  border-bottom: solid 15px #db251f;
}
.career-subtitle {
  font-size: 5.6rem;
  font-weight: 500;
  margin-bottom: 40px;
  letter-spacing: 0.15em;
  color: #4d4d4d;
}
.career-content {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-bottom: 40px;
}
.career-numbers {
  display: flex;
  gap: 10px;
  flex: 1;
  list-style: none;
  padding: 0 0px;
  margin: 0;
  width: calc(100% - 428px);
  justify-content: center;
}

.career-num-item {
  flex: 1;
}

.career-num-item img {
  width: 100%;
  height: auto;
  display: block;
}
.career-links-new {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex-shrink: 0;
  width: 388px;
}
.career-link-primary {
  display: inline-block;
  color: var(--color-white);
  background: var(--color-primary);
  padding: 12px 24px;
  font-size: 2.5rem;
  font-weight: 500;
  text-decoration: none;
  transition:
    background 0.3s,
    color 0.3s;
  position: relative;
  min-width: 388px;
  text-align: center;
  border-radius: 4px;
  line-height: 1.3;
  border: 1px solid var(--color-primary);
  letter-spacing: 0.1em;
}
.career-link-primary:after {
  content: '';
  width: 30px;
  height: 30px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_white.png);
  display: inline-block;
  position: absolute;
  right: 1em;
  background-size: contain;
}

.career-link-primary:hover {
  background: var(--color-white);
  color: var(--color-primary);
  text-decoration: none;
}

.career-link-primary:hover:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_red.png);
}
.career-link-secondary {
  display: inline-block;
  color: var(--color-white);
  background: var(--color-primary);
  padding: 12px 24px;
  font-size: 2.5rem;
  font-weight: 500;
  text-decoration: none;
  transition:
    background 0.3s,
    color 0.3s;
  position: relative;
  min-width: 388px;
  text-align: center;
  border-radius: 4px;
  line-height: 1.3;
  border: 1px solid var(--color-primary);
  letter-spacing: 0.1em;
}
.career-link-secondary:after {
  content: '';
  width: 30px;
  height: 30px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_white.png);
  display: inline-block;
  position: absolute;
  right: 1em;
  background-size: contain;
}

.career-link-secondary:hover {
  background: var(--color-white);
  color: var(--color-primary);
  text-decoration: none;
}

.career-link-secondary:hover:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_red.png);
}
.career-images {
  display: flex;
  gap: 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.career-images figure {
  flex: 1;
  margin: 0;
  overflow: hidden;
}
.career-images figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.career-images figure:hover img {
  transform: scale(1.05);
}

@media screen and (max-width: 767px) {
  .career-subtitle {
    font-size: 2rem;
    letter-spacing: 0.25rem;
    font-feature-settings: 'palt';
  }
  .career-content {
    flex-direction: column;
  }
  .career-numbers {
    flex-wrap: wrap;
    width: 100%;
  }
  .career-num-item {
    flex: 0 0 calc(50% - 5px);
  }
  .career-num-circle strong {
    font-size: 3.8rem;
  }
  .career-links-new {
    width: 100%;
    flex-direction: column;
  }
  .career-images {
    flex-wrap: wrap;
  }
  .career-images figure {
    flex: 0 0 50%;
  }
}

/* --------------------------------------------------------------------------
   #campus - Campus è·¡è¦‹ã®ã‚­ãƒ£ãƒ³ãƒ‘ã‚¹ã‚’è¦‹ã‚‹
   -------------------------------------------------------------------------- */
#campus {
  padding: var(--section-padding) 0;
  background: var(--color-white);
  margin: 0;
  border-bottom: solid 15px #db251f;
}

/* ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ä¸‹ã®ãƒªãƒ³ã‚¯ */
.campus-link-wrap {
  text-align: right;
  padding: 30px 0 0;
}

.campus-link-wrap a {
  display: inline-block;
  color: var(--color-white);
  background: var(--color-primary);
  padding: 12px 24px;
  font-size: 2.5rem;
  font-weight: 500;
  text-decoration: none;
  transition:
    background 0.3s,
    color 0.3s;
  position: relative;
  min-width: 388px;
  text-align: center;
  border-radius: 4px;
  line-height: 1.3;
  border: 1px solid var(--color-primary);
  letter-spacing: 0.1em;
}

.campus-link-wrap a:after {
  content: '';
  width: 30px;
  height: 30px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_white.png);
  display: inline-block;
  position: absolute;
  right: 1em;
  background-size: contain;
}

.campus-link-wrap a:hover {
  background: var(--color-white);
  color: var(--color-primary);
}

.campus-link-wrap a:hover:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_red.png);
}

/* --------------------------------------------------------------------------
   #atominow - ATOMI NOW
   -------------------------------------------------------------------------- */
#atominow {
  padding: var(--section-padding) 0;
  margin: 0;
}

#atominow > .inner > h2 {
  text-align: left;
  margin-bottom: 8px;
}

#atominow > .inner > h2 span {
  font-size: 115px;
  /* font-weight: 300; */
  color: var(--color-primary);
  font-family: 'League Spartan', serif;
}

/* TOPICS + Event,News 2ã‚«ãƒ©ãƒ  */
.information-block {
  display: flex;
  gap: 40px;
}

.left-topics .more-link,
.right-news .more-link {
  margin-top: auto; /* ä½™ã£ãŸã‚¹ãƒšãƒ¼ã‚¹ã§ä¸‹ç«¯ã¸æŠ¼ã—å‡ºã™ */
  /* padding-top: 30px; */ /* æœ€ä½Ž30pxã®ä½™ç™½ã‚’ä¿è¨¼ */
}

/* å·¦: TOPICSï¼ˆç´„60%ï¼‰ */
.left-topics {
  flex: 3;
  min-width: 0;
}

.left-topics h3 {
  margin: 0 0 20px;
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-bottom: -20px;
}

.left-topics h3 span {
  display: block;
  font-size: 36px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 4px;
  font-family: 'Barlow Condensed', serif;
  font-style: oblique;
  letter-spacing: 0.08em;
  /* transform: scaleX(0.9); */
}

.left-topics h3 p {
  font-size: 1.7rem;
  color: #1a1a1a;
  margin: 0;
}

/* TOPICSã‚°ãƒªãƒƒãƒ‰ 3x2 */
.left-topics > ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 0px;
  list-style: none;
  padding: 0;
  margin: 0 0 0px;
}

.left-topics > ul li a {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  transition: opacity 0.3s;
}

.left-topics > ul li a:hover {
  opacity: 0.7;
}

.left-topics > ul figure {
  background: var(--color-border);
  aspect-ratio: 340/235;
  overflow: hidden;
}

.left-topics > ul figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.left-topics > ul li a:hover figure img {
  transform: scale(1.05);
}

.left-topics > ul p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.left-topics > ul .topics-text-unit {
  padding: 16px 16px 4px;
  border-right: solid 1px #db251f;
}

/* å·¦å³ãƒœãƒƒã‚¯ã‚¹ã‚’ç¸¦flexåŒ– */
.left-topics,
.right-news {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* ã‚‚ã£ã¨è¦‹ã‚‹ã‚’ä¸‹ç«¯ã¸æŠ¼ã—å‡ºã™ */
.left-topics .more-link,
.right-news .more-link {
  margin-top: auto;
}

/* å³: Event,Newsï¼ˆç´„40%ï¼‰ */
.right-news {
  flex: 2;
  min-width: 0;
}

.right-news h3 {
  margin: 0 0 20px;
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-bottom: -20px;
}

.right-news h3 span {
  display: block;
  font-size: 36px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 4px;
  font-family: 'Barlow Condensed', serif;
  font-style: oblique;
  letter-spacing: 0.08em;
}

.right-news h3 p {
  font-size: 1.7rem;
  color: #1a1a1a;
  margin: 0;
}

.right-news > ul {
  list-style: none;
  padding: 0;
  margin: 0 0 0px;
}

.right-news > ul li {
  border-bottom: 1px solid #db251f;
}

.right-news > ul li:nth-of-type(1) a {
  padding-top: 0;
}

.right-news > ul li a {
  display: block;
  padding: 20px 0;
  text-decoration: none;
  color: var(--color-text);
  transition: opacity 0.3s;
}

.right-news > ul li a:hover {
  opacity: 0.7;
}

.right-news .date {
  font-size: 1.5rem;
  color: var(--color-text-light);
  margin: 0 0 4px;
}

.right-news .title {
  font-size: 1.5rem;
  line-height: 1.6;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2lh;
}

/* ã‚‚ã£ã¨è¦‹ã‚‹ ãƒªãƒ³ã‚¯å…±é€š */
.more-link {
  text-align: right;
}

.more-link a {
  display: inline-block;
  font-size: 2rem;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  transition:
    background 0.3s,
    color 0.3s;
  background: #db251f;
  padding: 12px 20px;
  line-height: 1.3;
  position: relative;
  min-width: 220px;
  border-radius: 4px;
  text-align: center;
  border: 1px solid #db251f;
  letter-spacing: 0.1em;
}

.more-link a:after {
  content: '';
  width: 25px;
  height: 25px;
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_white.png);
  display: inline-block;
  position: absolute;
  right: 1em;
  background-size: contain;
}

.more-link a:hover {
  background: #fff;
  color: #db251f;
}

.more-link a:hover:after {
  background-image: url(/univ/wordpress/wp-content/uploads/2026/04/link_red.png);
}

@media (max-width: 767px) {
  .information-block {
    flex-direction: column;
    gap: 40px;
  }
  .left-topics > ul {
    display: flex; /* ä¿®æ­£: SPã§1ã¤ã—ã‹è¡¨ç¤ºã•ã‚Œãªã‹ã£ãŸä¸å…·åˆã‚’flex-columnã§å›žé¿ */
    flex-direction: column;
    gap: 16px;
  }
  .left-topics > ul li:nth-child(n + 2) {
    display: none;
  }
  .left-topics > ul li:first-child {
    margin-bottom: 0px; /* ä½™è¨ˆãªãƒžãƒ¼ã‚¸ãƒ³ã‚’å‰Šé™¤ */
  }
  #atominow > .inner > h2 span {
    font-size: 48px;
  }
}

/* --------------------------------------------------------------------------
   SP ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆèª¿æ•´ï¼ˆ767pxä»¥ä¸‹ï¼‰
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  /* --- å…±é€šï¼šã‚»ã‚¯ã‚·ãƒ§ãƒ³ä¸Šä¸‹ä½™ç™½ --- */
  #manabi,
  #miryoku,
  #gakka,
  #career,
  #campus,
  #atominow {
    padding: 30px 0 30px;
    border-bottom: solid 4px #db251f;
  }
  #miryoku,
  #gakka {
    border-bottom: none;
  }

  /* --- å…±é€šï¼š.inner å·¦å³ãƒ‘ãƒ‡ã‚£ãƒ³ã‚°ï¼ˆã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ä»¥å¤–ï¼‰ --- */
  .l-section._inner-full > .inner {
    padding: 0px 15px;
  }

  /* ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ç³»ã¯å…¨å¹…ç¶­æŒ */
  #slider > .inner {
    max-width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
  }
  #slider .swiper-slide {
    aspect-ratio: 430 / 450;
  }

  /* --- å…±é€š h2 --- */
  .l-main h2 {
    flex-direction: column;
    gap: 0;
    margin-bottom: 24px;
    align-items: flex-start;
  }
  .l-main h2 span {
    font-size: 5rem;
    margin-bottom: 4px;
  }
  .l-main h2 p {
    flex: none;
    width: 100%;
  }

  .l-main h2 p::after {
    margin-left: 10px;
  }

  /* --- #manabi --- */
  .manabi-nav {
    margin-bottom: 24px;
  }
  .manabi-nav li a:after {
    width: 18px;
    height: 18px;
    right: 0.5em;
    top: 30%;
  }
  .manabi-oc-date {
    font-size: 2.2rem;
  }
  .manabi-oc-title {
    font-size: 1.2rem;
  }
  .manabi-opencampus-nav li:nth-child(2n) p {
    border-right: none;
  }
  .manabi-opencampus-nav p {
    min-height: auto;
    font-size: 1.3rem;
    padding: 6px 10px 0;
    border: none;
    -webkit-line-clamp: 3; /* â† è¿½åŠ : SPã¯3è¡Œ */
  }

  .manabi-opencampus-nav li:nth-of-type(1) p {
    border-left: none;
  }

  /* --- #campus --- */
  .campus-link-wrap a {
    font-size: 1.8rem;
    padding: 8px 16px;
    min-width: auto;
    width: 100%;
    max-width: 300px;
    margin-inline: auto;
  }
  .campus-link-wrap a:after {
    /* width: 19px; */
    /* height: 18px; */
    right: 0.6em;
    width: 20px;
    height: 20px;
    /* top: 14px; */
  }

  /* --- å…±é€šãƒœã‚¿ãƒ³çŸ¢å°ã‚¢ã‚¤ã‚³ãƒ³ SPç¸®å° --- */
  .career-links li a:after {
    width: 20px;
    height: 20px;
    right: 0.6em;
  }
  .more-link a:after {
    width: 20px;
    height: 20px;
    right: 0.6em;
    top: 11px;
  }
  .more-link a {
    min-width: auto;
  }

  /* --- #atominow --- */
  #atominow > .inner > h2 {
    margin-bottom: 16px;
  }
  .left-topics h3 {
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: -28px;
  }
  .left-topics h3 span,
  .right-news h3 span {
    font-size: 3.6rem;
  }

  /* ä¿®æ­£: Newså´ã®æ–‡å­—ã‚µã‚¤ã‚ºã‚‚çµ±ä¸€ */
  .left-topics h3 p,
  .right-news h3 p {
    font-size: 1.8rem;
  }

  .left-topics > ul {
    gap: 16px 10px;
  }
  .left-topics > ul .topics-text-unit {
    border-left: solid 1px #db251f;
  }
  .more-link a {
    font-size: 1.8rem;
    padding: 10px 16px;
    max-width: 200px;
    width: 100%;
  }

  /* --- #gakka è¿½åŠ èª¿æ•´ --- */
  #gakka {
    /* border-top/bottom 40px â†’ SPã§ç´°ã */
    padding: 50px 0;
  }
  .back_logo {
    /* SPã§ã®ä½ç½®ãƒ»ã‚µã‚¤ã‚ºèª¿æ•´ */
  }
  .gakka-bar {
    /* width 5px ã®è¦‹ç›´ã— */
    width: 10px;
  }
  .gakka-keywords-wrap {
  }
  .gakka-keywords-title {
  }

  /* --- #career è¿½åŠ èª¿æ•´ --- */
  #career {
    /* padding å€‹åˆ¥èª¿æ•´ç”¨ */
    padding-bottom: 0;
  }
  .career-content {
    /* gap, margin-bottom ç¸®å° */
  }
  .career-numbers {
    /* gap, padding ç¸®å° */
  }

  /* career å††å†…ã®å€‹åˆ¥ãƒ•ãƒ©ã‚°ãƒ¡ãƒ³ãƒˆ */
  .career-num-strong--1-num {
  }
  .career-num-frag--1-a {
    font-size: 2rem;
  }
  .career-num-frag--1-b {
    font-size: 2.5rem;
  }
  .career-num-frag--2-a {
    font-size: 1.5rem;
  }
  .career-num-strong--2-num {
  }
  .career-num-frag--2-b {
    font-size: 1.5rem;
  }
  .career-num-frag--2-c {
    font-size: 3.5rem;
  }
  .career-num-frag--3-a {
    font-size: 2.5rem;
  }
  .career-num-strong--3-num {
  }
  .career-num-frag--3-b {
    font-size: 2.5rem;
  }
  .career-num-frag--4-a {
    font-size: 2.5rem;
  }
  .career-num-frag--4-b {
    font-size: 3rem;
  }

  /* career ãƒœã‚¿ãƒ³ (min-width: 388px ã®ã¯ã¿å‡ºã—å¯¾ç­–) */
  .career-link-primary {
    /* min-width, font-size, padding */
    width: 80%;
    min-width: inherit;
    margin: auto;
    font-size: 1.8rem;
  }
  .career-link-secondary {
    /* min-width, font-size, padding */
    width: 80%;
    min-width: inherit;
    margin: auto;
    font-size: 1.8rem;
  }
  .career-link-primary:after,
  .career-link-secondary:after {
    /* çŸ¢å°ã‚¢ã‚¤ã‚³ãƒ³ç¸®å° */
    width: 20px;
    height: 20px;
    top: 14px;
  }

  /* --- #atominow / right-news è¿½åŠ èª¿æ•´ --- */
  .right-news > ul li a {
    /* padding ç¸®å° */
  }
  .right-news .date {
  }
  .right-news .title {
  }

  /* --- #atominow / left-topics è¿½åŠ èª¿æ•´ --- */
  .left-topics > ul figure {
    /* aspect-ratio è¦‹ç›´ã— */
  }
  .left-topics > ul p {
  }
  .left-topics > ul .topics-text-unit {
    /* padding èª¿æ•´ */
  }

  #manabi h2 p {
    font-size: 2.1rem;
  }

  #manabi h2 p::before {
    margin-right: 10px;
  }
  #manabi h2 p::after {
    margin-left: 10px;
  }
}

/* --------------------------------------------------------------------------
   ã‚¿ãƒ–ãƒ¬ãƒƒãƒˆãƒ»å°åž‹ãƒŽãƒ¼ãƒˆPCå¯¾å¿œï¼ˆ1400pxä»¥ä¸‹ï¼‰
   - 1400px â†’ 768px ã®ç¯„å›²ã§ clamp ã«ã‚ˆã‚Šæ®µéšŽçš„ã«ç¸®å°
   - 768px ä»¥ä¸‹ã¯æ—¢å­˜ã® SP ãƒ¡ãƒ‡ã‚£ã‚¢ã‚¯ã‚¨ãƒªãŒå¼•ãç¶™ã
   -------------------------------------------------------------------------- */
@media (max-width: 1400px) {
  /* --- inner å·¦å³ä½™ç™½ã®æ®µéšŽçš„ç¸®å° --- */
  .l-section._inner-full > .inner {
    padding: 0 clamp(25px, 9.49vw - 43px, 90px);
  }

  /* --- å…±é€šè¦‹å‡ºã— h2 --- */
  .l-main h2 span {
    font-size: clamp(5rem, 9.49vw - 23px, 11rem);
  }
  .l-main h2 p {
    font-size: clamp(21px, 4.43vw - 12px, 5rem);
  }
  .l-main h2 {
    gap: 1em;
  }

  /* --- #manabi è¦‹å‡ºã— --- */
  #manabi h2 p {
    font-size: clamp(2.1rem, 3.32vw - 5px, 4.2rem);
  }

  /* --- #miryoku ãƒžãƒ¼ã‚­ãƒ¼ãƒ†ã‚­ã‚¹ãƒˆ --- */
  .marquee-miryoku .splide__slide p {
    font-size: clamp(1.4rem, 0.63vw + 9px, 1.8rem);
    min-height: clamp(50px, 3.16vw + 6px, 70px);
  }

  /* --- #manabi ã‚ªãƒ¼ãƒ—ãƒ³ã‚­ãƒ£ãƒ³ãƒ‘ã‚¹ãƒŠãƒ“ãƒ†ã‚­ã‚¹ãƒˆ --- */
  .manabi-opencampus-nav p {
    font-size: clamp(1.3rem, 0.79vw + 7px, 1.8rem);
    min-height: clamp(50px, 3.16vw + 6px, 70px);
    padding: 15px clamp(10px, 1.58vw + 2px, 20px) 0;
  }

  /* --- #career ã‚µãƒ–ã‚¿ã‚¤ãƒˆãƒ« --- */
  .career-subtitle {
    font-size: clamp(1.8rem, 5.7vw - 24px, 5.6rem);
  }

  /* --- #career ãƒœã‚¿ãƒ³ï¼‹ãƒªãƒ³ã‚¯å¹… --- */
  .career-link-primary,
  .career-link-secondary {
    font-size: clamp(1.8rem, 1.11vw + 9.5px, 2.5rem);
    min-width: auto;
    width: 100%;
  }
  .career-link-primary:after,
  .career-link-secondary:after {
    width: clamp(20px, 1.58vw + 8px, 30px);
    height: clamp(20px, 1.58vw + 8px, 30px);
    top: 14px;
  }
  .career-links-new {
    width: clamp(280px, 17.09vw + 149px, 388px);
  }

  /* --- #campus ãƒœã‚¿ãƒ³ --- */
  .campus-link-wrap a {
    font-size: clamp(1.8rem, 1.11vw + 9.5px, 2.5rem);
    min-width: auto;
  }
  .campus-link-wrap a:after {
    width: clamp(20px, 1.58vw + 8px, 30px);
    height: clamp(20px, 1.58vw + 8px, 30px);
    top: 9px;
  }

  /* --- #gakka å­¦ç§‘ã‚«ãƒ¼ãƒ‰ --- */
  .gakka-faculty {
    font-size: clamp(1.8rem, 0.95vw + 11px, 2.4rem);
  }
  .gakka-desc {
    font-size: clamp(1.9rem, 0.79vw + 14px, 2.5rem);
  }
  .gakka-nav {
    gap: clamp(20px, 3.16vw - 4px, 40px);
  }
  .gakka-name:after {
    width: clamp(28px, 1.11vw + 19.5px, 35px);
    height: clamp(28px, 1.11vw + 19.5px, 35px);
  }
  .gakka-nav-back {
    padding: clamp(16px, 1.27vw + 6px, 24px) clamp(20px, 1.9vw + 5px, 32px);
  }

  /* --- #atominow è¦‹å‡ºã— --- */
  #atominow > .inner > h2 span {
    font-size: clamp(48px, 10.6vw - 33px, 115px);
  }

  /* --- more-link ãƒœã‚¿ãƒ³ --- */
  .more-link a {
    font-size: clamp(1.8rem, 0.32vw + 15.5px, 2rem);
  }
}

/* =========================================================
   ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«é€£å‹•ãƒ•ã‚§ãƒ¼ãƒ‰ã‚¤ãƒ³ ï¼† è¦‹å‡ºã—ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³
   ========================================================= */

/* --- 1. ã‚»ã‚¯ã‚·ãƒ§ãƒ³å…¨ä½“ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ --- */
/* åˆæœŸçŠ¶æ…‹ï¼šè¦‹ãˆãªã„ï¼†å°‘ã—ä¸‹ã«ãšã‚‰ã™ */
.js-scroll-fade {
  opacity: 0;
  transform: translateY(40px);
  transition:
    opacity 1s ease-out,
    transform 1s ease-out;
}
/* è¡¨ç¤ºçŠ¶æ…‹ï¼šç”»é¢ã«å…¥ã£ãŸã‚‰å…ƒã®ä½ç½®ã¸ */
.js-scroll-fade.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* --- 2. è¦‹å‡ºã—æ–‡å­—ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ --- */
@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* åˆæœŸçŠ¶æ…‹ï¼šè¦‹ãˆãªã„ã‚ˆã†ã«ã—ã¦ãŠã */
.l-main h2 span.char {
  display: inline-block;
  opacity: 0;
}
.l-main h2 p.sub-text {
  opacity: 0;
}

/* è¡¨ç¤ºçŠ¶æ…‹ï¼šã‚»ã‚¯ã‚·ãƒ§ãƒ³ãŒç”»é¢ã«å…¥ã‚Š is-visible ãŒä»˜ã„ãŸã‚‰ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³é–‹å§‹ */
.js-scroll-fade.is-visible h2 span.char {
  animation: fadeUp 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.js-scroll-fade.is-visible h2 p.sub-text {
  animation: fadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* career-images ãƒžãƒ¼ã‚­ãƒ¼ï¼ˆcampusã¨åŒã˜ã‚µã‚¤ã‚ºæ„Ÿï¼‰ */
.marquee-career .splide__slide {
  width: calc(100% / 4);
  overflow: hidden;
  position: relative;
}

.marquee-career .splide__slide img {
  width: 100%;
  height: auto;
  transition: transform 0.4s ease;
}

.marquee-career .splide__slide:hover img {
  transform: scale(1.05);
}

@media (max-width: 767px) {
  .marquee-miryoku .splide__slide {
    width: 66vw;
  }
  .marquee-campus .splide__slide {
    width: 66vw;
  }
  .marquee-career .splide__slide {
    width: 66vw; /* â† è¿½åŠ  */
  }
  .slider-fade .swiper-button-prev::after,
  .slider-fade .swiper-button-next::after {
    font-size: 20px;
  }

  .marquee-miryoku .splide__slide p {
    font-size: 1.4rem;
  }

  .campus-link-wrap {
    text-align: center;
  }

  .left-topics .more-link,
  .right-news .more-link {
    text-align: center;
  }

  .right-news h3 {
    margin-bottom: -40px;
  }
  .slider-fade .swiper-button-prev {
    left: 0.5vw;
    display: none;
  }
  .slider-fade .swiper-button-next {
    right: 0.5vw;
    display: none;
  }
}

/* =========================================================
   TOPICS ã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ï¼ˆPC=3x2ã‚°ãƒªãƒƒãƒ‰ / SP=ä¸­å¤®1æžšãƒ•ã‚©ãƒ¼ã‚«ã‚¹ï¼‰
   - PCæ™‚ã¯ Splide æœªãƒžã‚¦ãƒ³ãƒˆã€‚CSSã§ splide__list ã‚’gridåŒ–
   - SPæ™‚ã¯ perPage:1 + padding ã§ä¸­å¤®1æžšã€å·¦å³ã¯å‰å¾Œã‚¹ãƒ©ã‚¤ãƒ‰ãŒ
     ãƒãƒ©è¦‹ãˆã€‚å·¦å³ã®ã‚¯ãƒªãƒƒã‚¯é ˜åŸŸã§å‰/æ¬¡ã¸ç§»å‹•ã€‚æ‰‹å‹•æ“ä½œã®ã¿ã€‚
   ========================================================= */

/* --- Splide CDN CSS ã® .splide { visibility: hidden } ã‚’æ‰“ã¡æ¶ˆã™ ---
   Splide ã¯ mount æ™‚ã« JS ã§ visibility ã‚’ visible ã«å¤‰ãˆã‚‹ä»•çµ„ã¿ã ãŒã€
   PC æ™‚ã¯ mount ã—ãªã„ãŸã‚ hidden ã®ã¾ã¾æ®‹ã£ã¦ã—ã¾ã†ã€‚SP æ™‚ã‚‚ mount å‰ã®
   çŸ­ã„çž¬é–“ã«éžè¡¨ç¤ºã«ãªã‚‹ã®ã‚’é˜²ããŸã‚ã€å…±é€šã§ä¸Šæ›¸ãã—ã¦ãŠãã€‚ */
.left-topics .topics-slider.splide {
  visibility: visible;
}

/* --- å…±é€šï¼šä¸­èº«ãƒªãƒ³ã‚¯ï¼ç”»åƒï¼ãƒ†ã‚­ã‚¹ãƒˆã®ã‚¹ã‚¿ã‚¤ãƒ« --- */
.left-topics .topics-slider .splide__slide a {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  transition: opacity 0.3s;
}
.left-topics .topics-slider .splide__slide a:hover {
  opacity: 0.7;
}
.left-topics .topics-slider figure {
  background: var(--color-border);
  aspect-ratio: 340 / 235;
  overflow: hidden;
  margin: 0;
}
.left-topics .topics-slider figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.left-topics .topics-slider .splide__slide a:hover figure img {
  transform: scale(1.05);
}
.left-topics .topics-slider p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.left-topics .topics-slider .topics-text-unit {
  padding: 16px 16px 4px;
  border-right: solid 1px #db251f;
}

/* --- PC: 3x2 ã‚°ãƒªãƒƒãƒ‰è¡¨ç¤ºï¼ˆSplide ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆCSSã‚’ä¸Šæ›¸ãï¼‰ --- */
.left-topics .topics-slider .splide__track {
  overflow: visible;
}
.left-topics .topics-slider .splide__list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 0px;
  margin-bottom: 30px;
}
.left-topics .topics-slider .splide__slide {
  min-width: 0;
  flex: initial;
}
/* PCæ™‚ã¯ arrows ã‚’å®Œå…¨ã«éš ã™ï¼ˆJSæœªãƒžã‚¦ãƒ³ãƒˆã§ã‚‚ä¿é™ºã¨ã—ã¦ï¼‰ */
.left-topics .topics-slider .splide__arrows {
  display: none;
}

/* --- SP: ä¸­å¤®1æžšãƒ•ã‚©ãƒ¼ã‚«ã‚¹ã€å·¦å³ã¯å‰å¾Œã‚¹ãƒ©ã‚¤ãƒ‰ã®ãƒãƒ©è¦‹ãˆ --- */
@media (max-width: 767px) {
  .left-topics .topics-slider {
    /* è¦ªã®å¹…ã«é–¢ä¿‚ãªãç”»é¢ç«¯ã¾ã§åºƒã’ã‚‹ */
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-bottom: 20px;
    position: relative;
  }
  .left-topics .topics-slider .splide__track {
    overflow: hidden;
    /* ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³styleã® padding ã‚’ç¢ºå®Ÿã«ç¶­æŒ */
    padding-left: 15% !important;
    padding-right: 15% !important;
  }
  .left-topics .topics-slider .splide__list {
    display: flex !important;
    grid-template-columns: none;
    gap: 0;
    margin-bottom: 0;
  }
  /* Splide ãŒ perPage:1 + padding ã‹ã‚‰è‡ªå‹•ã§ width ã‚’ç®—å‡ºã™ã‚‹ã®ã§
     ã“ã¡ã‚‰ã‹ã‚‰ã¯ width ã‚’æŒ‡å®šã—ãªã„ï¼ˆ!important ã‚‚ä»˜ã‘ãªã„ï¼‰ */
  .left-topics .topics-slider .splide__slide {
    min-width: 0;
    flex: 0 0 auto;
  }
  .left-topics .topics-slider .topics-text-unit {
    border-right: none;
    border-left: solid 1px #db251f;
  }

  /* å·¦å³ã®ã‚°ãƒ¬ãƒ¼å¸¯å…¨ä½“ã‚’ã‚¿ãƒƒãƒ—ã§å‰/æ¬¡ã«é€²ã‚€ã‚¯ãƒªãƒƒã‚¯é ˜åŸŸã« */
  .left-topics .topics-slider .splide__arrows {
    display: block;
  }
  .left-topics .topics-slider .splide__arrow {
    position: absolute;
    top: 0;
    height: 100%;
    width: 15%; /* padding ã¨åŒã˜å¹… â†’ ã‚°ãƒ¬ãƒ¼å¸¯ã¨ä¸€è‡´ */
    background: transparent;
    border: none;
    border-radius: 0;
    opacity: 1;
    z-index: 2;
    cursor: pointer;
    transform: none;
    padding: 0;
  }
  .left-topics .topics-slider .splide__arrow--prev {
    left: 0;
    right: auto;
  }
  .left-topics .topics-slider .splide__arrow--next {
    right: 0;
    left: auto;
  }
  /* çŸ¢å°ã‚¢ã‚¤ã‚³ãƒ³ã¯éžè¡¨ç¤ºï¼ˆã‚¿ãƒƒãƒ—é ˜åŸŸã®ã¿æ´»ã‹ã™ï¼‰ */
  .left-topics .topics-slider .splide__arrow svg {
    display: none;
  }
  .left-topics .topics-slider .splide__arrow:disabled {
    opacity: 1; /* loopãªã®ã§å®Ÿè³ªç™ºç”Ÿã—ãªã„ãŒå¿µã®ãŸã‚ */
  }
}

/* FVã‚¹ãƒ©ã‚¤ãƒ€ãƒ¼ ãƒšãƒ¼ã‚¸ãƒãƒ¼ã‚·ãƒ§ãƒ³ãƒ‰ãƒƒãƒˆéžè¡¨ç¤º */
.slider-fade-pagination {
  display: none;
}
/* ç‰¹åˆ¥ãªãŠçŸ¥ã‚‰ã›ï¼ˆFVä¸Šéƒ¨ï¼‰ */
.special-news {
  background: #db251f;
  padding: 10px 0;
}
.special-news .inner {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 30px;
}
.special-news__link {
  display: flex;
  align-items: center;
  gap: 16px;
  text-decoration: none;
  color: #fff;
  transition: opacity 0.3s;
}
.special-news__link:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #fff;
}
.special-news__label {
  flex-shrink: 0;
  font-size: 1.4rem;
  font-weight: 700;
  background: #fff;
  color: #db251f;
  padding: 4px 12px;
  border-radius: 3px;
  line-height: 1.4;
}
.special-news__title {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .special-news .inner {
    padding: 0 15px;
  }
  .special-news__link {
    gap: 10px;
  }
  .special-news__label {
    font-size: 1.1rem;
    padding: 3px 8px;
  }
  .special-news__title {
    font-size: 1.3rem;
  }
}
.special-news {
  display: none;
}
/* --------------------------------------------------------------------------
   SPå›ºå®šãƒœãƒˆãƒ ãƒãƒ¼ï¼ˆãƒˆãƒƒãƒ—ãƒšãƒ¼ã‚¸å°‚ç”¨ãƒ»767pxä»¥ä¸‹ã§è¡¨ç¤ºï¼‰
   -------------------------------------------------------------------------- */
.sp-fixed-bottom-bar {
  display: none;
}

@media (max-width: 767px) {
  .sp-fixed-bottom-bar {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    gap: 0;
    height: 70px;
  }

  .sp-fixed-bottom-bar__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 14px 10px;
    font-size: clamp(1.4rem, 4.2vw, 1.8rem);
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    line-height: 1.3;
    letter-spacing: 0.05em;
    transition: opacity 0.3s;
  }

  .sp-fixed-bottom-bar__btn:hover,
  .sp-fixed-bottom-bar__btn:active {
    opacity: 0.85;
    text-decoration: none;
  }

  /* å·¦: ã‚ªãƒ¼ãƒ—ãƒ³ã‚­ãƒ£ãƒ³ãƒ‘ã‚¹ï¼ˆèµ¤èƒŒæ™¯ãƒ»ç™½æ–‡å­—ï¼‰ */
  .sp-fixed-bottom-bar__btn--oc {
    background: #d992a0;
    color: #fff;
    border-right: solid 1px #fff;
  }

  /* å³: ãƒ‡ã‚¸ã‚¿ãƒ«ãƒ‘ãƒ³ãƒ•ãƒ¬ãƒƒãƒˆï¼ˆè–„ãƒ”ãƒ³ã‚¯èƒŒæ™¯ãƒ»èµ¤æ–‡å­—ï¼‰ */
  .sp-fixed-bottom-bar__btn--pamphlet {
    background: #d992a0;
    color: #fff;
  }

  /* ãƒ•ãƒƒã‚¿ãƒ¼ä¸‹éƒ¨ã«å›ºå®šãƒãƒ¼ã®é«˜ã•åˆ†ã®ä½™ç™½ã‚’ç¢ºä¿ */
  .l-main {
    padding-bottom: 52px;
  }

  .c-pagetop.js-pagetop {
    bottom: 95px;
  }

  .p-footer {
    padding-bottom: 70px;
  }
}
