.nextocdetail {
  position: relative;
  font-weight: 500;
}
@media screen and (min-width: 768px), (min-width: 897px) and (orientation: landscape) {
  .nextocdetail .sp-only {
    display: none !important;
  }
}
.nextocdetail img {
  width: 100%;
  vertical-align: middle;
}
.nextocdetail .fadein {
  opacity: 0;
  transform: translate(0, 30px);
  transition: transform 0.4s, opacity 0.4s;
}
.nextocdetail .fadein.scrollin {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}
.nextocdetail .serif-sh {
  font-family: "Shippori Mincho", serif;
}
.nextocdetail .serif-nt {
  font-family: "Noto Serif JP", serif;
}
.nextocdetail .fixedlinks {
  position: fixed;
  z-index: 7;
  display: flex;
  justify-content: center;
  bottom: 1.198dvw;
  right: 1.198dvw;
  gap: 0.521dvw;
}
.nextocdetail .fixedlinks a {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  border-radius: 9999px;
  position: relative;
  background-color: rgba(255, 255, 255, 0.9);
  width: 3.646dvw;
  transition: 0.2s;
}
.nextocdetail .fixedlinks a::before, .nextocdetail .fixedlinks a::after {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.094dvw auto;
  transition: 0.2s;
}
.nextocdetail .fixedlinks a::before {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/recommended-category-totop-pc.svg);
}
.nextocdetail .fixedlinks a::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/recommended-category-totop-active-pc.svg);
  opacity: 0;
}
.nextocdetail .fixedlinks a img {
  height: auto;
  display: none;
}
.nextocdetail .fixedlinks a:hover {
  opacity: 1;
  background-color: #FF5C50;
}
.nextocdetail .fixedlinks a:hover::after {
  opacity: 1;
}
.nextocdetail .nxoc__toform {
  box-sizing: border-box;
  display: block;
  position: fixed;
  right: -1.198dvw;
  bottom: 1.25dvw;
  z-index: 2;
  aspect-ratio: 420/152;
  width: 21.875dvw;
  border: 0.313dvw solid #fff;
  border-right: 0;
  background: linear-gradient(to right top, #FA4F4F, #EC6800);
  border-top-left-radius: 9999px;
  border-bottom-left-radius: 9999px;
  display: flex;
  align-items: center;
}
.nextocdetail .nxoc__toform::before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  inset: 0.417dvw;
  border: 0.104dvw solid #fff;
  border-top-left-radius: 9999px;
  border-bottom-left-radius: 9999px;
  border-right: 0;
}
.nextocdetail .nxoc__toform img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 13.646dvw;
  height: auto;
}
.nextocdetail .nxoc__toform span {
  position: relative;
  z-index: 1;
  color: #fff;
  font-weight: 700;
  font-size: 1.354dvw;
  letter-spacing: 0.05em;
  line-height: 1.38;
  padding-left: 2.604dvw;
}
.nextocdetail .nxoc__toform:hover {
  right: 0;
}
.nextocdetail .nxoc__join {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-entry-bg-pc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 5.208dvw 0;
  padding-top: 3.229dvw;
  padding-bottom: 3.125dvw;
}
.nextocdetail .nxoc__join .join__head {
  color: #fff;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  font-size: 2.604dvw;
  margin-bottom: 2.917dvw;
}
.nextocdetail .nxoc__join .join__links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5.208dvw;
}
.nextocdetail .nxoc__join .join__links a {
  width: 25dvw;
}
.nextocdetail .nxoc__sechead,
.nextocdetail .nextoc__linkbtn {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 515/80;
  height: auto;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-heading.png);
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.15em;
  border-radius: 9999px;
  border-bottom-right-radius: 0;
}
.nextocdetail .nxoc__sechead {
  width: 26.823dvw;
  font-size: 2.083dvw;
  margin-bottom: 3.125dvw;
}
.nextocdetail .nextoc__linkbtn {
  width: 20.104dvw;
  font-size: 1.563dvw;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail .nxoc__toform {
    right: 0dvw;
    bottom: 4dvw;
    aspect-ratio: 185/69;
    width: 50.133dvw;
    border-width: 0.8dvw;
    transition: all 0.2s 0s;
  }
  .nextocdetail .nxoc__toform.active {
    transform: translateY(-17.2dvw);
    transition: all 0.28s 0.35s;
  }
  .nextocdetail .nxoc__toform::before {
    inset: 0.8dvw;
    border-width: 0.267dvw;
  }
  .nextocdetail .nxoc__toform img {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30.133dvw;
    height: auto;
  }
  .nextocdetail .nxoc__toform span {
    position: relative;
    z-index: 1;
    color: #fff;
    font-weight: 700;
    font-size: 3.2dvw;
    letter-spacing: 0.05em;
    line-height: 1.38;
    padding-left: 6.4dvw;
  }
  .nextocdetail .nxoc__toform:hover {
    opacity: 1;
    right: 0;
  }
  .nextocdetail .nxoc__join {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-entry-bg-mb.jpg);
    margin: 13.333dvw 0;
    padding-top: 10.667dvw;
    padding-bottom: 10.133dvw;
  }
  .nextocdetail .nxoc__join .join__head {
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
    font-size: 5.867dvw;
    line-height: 1.3;
    margin-bottom: 8dvw;
  }
  .nextocdetail .nxoc__join .join__links {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5.333dvw;
  }
  .nextocdetail .nxoc__join .join__links a {
    width: 61.333dvw;
  }
  .nextocdetail .nxoc__sechead {
    width: 92dvw;
    font-size: 5.867dvw;
    margin-bottom: 8dvw;
  }
  .nextocdetail .nextoc__linkbtn {
    width: 59.733dvw;
    font-size: 4dvw;
  }
}
.nextocdetail .nxoc__mv {
  aspect-ratio: 1619/720;
  overflow: hidden;
  width: 84.323dvw;
  position: relative;
  margin-bottom: 2.604dvw;
}
.nextocdetail .nxoc__mvbg {
  position: relative;
  width: 84.323dvw;
}
.nextocdetail .nxoc__mvbg::before {
  content: "";
  display: block;
  width: 15.625dvw;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to right, transparent, #fff);
}
.nextocdetail .nxoc__mvtitle {
  position: absolute;
  top: 4.844dvw;
  bottom: 4.844dvw;
  right: 0;
  aspect-ratio: 700/534;
  width: 36.458dvw;
  padding-left: 5.208dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-mv-date-bg.svg);
  background-size: contain;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvtitleinner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: transform 1.3s, opacity 1.3s;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvsub {
  font-size: 1.563dvw;
  letter-spacing: 0.2em;
  line-height: 1.06;
  padding-bottom: 2.135dvw;
  margin-bottom: 0.885dvw;
  position: relative;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvsub::after {
  content: "";
  display: block;
  width: 2.396dvw;
  height: 0.156dvw;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvdate {
  display: flex;
  align-items: flex-end;
  gap: 0.833dvw;
  color: #FA4F4F;
  font-weight: 700;
  margin-bottom: 1.823dvw;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvdate em {
  font-size: 5.729dvw;
  letter-spacing: 0.05em;
  line-height: 1.08;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvdate small {
  font-size: 3.125dvw;
  letter-spacing: 0.05em;
  line-height: 1.3;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvtime {
  font-size: 1.563dvw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}
.nextocdetail .nxoc__mvtitle .nxoc__mvtime small {
  font-size: 1.042dvw;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail .nxoc__mv {
    aspect-ratio: 375/554;
    overflow: hidden;
    width: 100%;
    position: relative;
    margin-bottom: 10.667dvw;
  }
  .nextocdetail .nxoc__mvbg {
    aspect-ratio: 375/480;
    width: 100%;
  }
  .nextocdetail .nxoc__mvbg::before {
    width: 100%;
    height: 26.667dvw;
    position: absolute;
    top: unset;
    right: unset;
    left: 0;
    bottom: 0;
    background: linear-gradient(to bottom, transparent, #fff);
  }
  .nextocdetail .nxoc__mvtitle {
    top: 83.2dvw;
    bottom: unset;
    right: 0;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 700/534;
    width: 91.733dvw;
    padding-left: 0;
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-mv-date-bg-mb.svg);
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvsub {
    font-size: 4.267dvw;
    padding-bottom: 4.267dvw;
    margin-bottom: 2.667dvw;
    position: relative;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvsub::after {
    content: "";
    display: block;
    width: 6.933dvw;
    height: 0.533dvw;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvdate {
    gap: 3.2dvw;
    margin-bottom: 1.823dvw;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvdate em {
    font-size: 16.533dvw;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvdate small {
    font-size: 9.067dvw;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvtime {
    font-size: 4.267dvw;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1;
  }
  .nextocdetail .nxoc__mvtitle .nxoc__mvtime small {
    font-size: 2.933dvw;
  }
}
.nextocdetail .nxoc__lead {
  font-size: 1.458dvw;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 2.14;
  margin-bottom: 3.646dvw;
}
.nextocdetail .nxoc__lead span {
  background: linear-gradient(transparent 70%, #FFF4B4 0%);
  padding-bottom: 0.104dvw;
}
.nextocdetail .nxoc__lead em {
  color: #FA4F4F;
}
.nextocdetail .nxoc__nav {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-bottom: 3.125dvw;
  gap: 1.094dvw;
}
.nextocdetail .nxoc__nav a {
  display: flex;
  flex-direction: column;
  gap: 0.938dvw;
  justify-content: flex-start;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
  gap: 1.042dvw;
}
.nextocdetail .nxoc__nav a::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.833dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc20250823-arrow-under-blue.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.3s;
}
.nextocdetail .nxoc__nav a:hover {
  opacity: 1;
  color: #FA4F4F;
}
.nextocdetail .nxoc__nav a:hover::after {
  transform: translateY(0.521dvw);
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail .nxoc__lead {
    font-size: 4.267dvw;
    margin-bottom: 10.667dvw;
  }
  .nextocdetail .nxoc__nav {
    flex-direction: column;
    align-items: center;
    gap: 5.333dvw 0;
    margin-bottom: 8dvw;
  }
  .nextocdetail .nxoc__nav a {
    width: -moz-max-content;
    width: max-content;
    border: none;
    gap: 3.2dvw;
  }
  .nextocdetail .nxoc__nav a:last-of-type {
    border: 0;
  }
  .nextocdetail .nxoc__nav a::after {
    height: 3.2dvw;
  }
  .nextocdetail .nxoc__nav a:hover {
    color: #fff;
  }
  .nextocdetail .nxoc__nav a:hover::after {
    transform: none;
  }
}
.nextocdetail .nxocjoin {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  gap: 1.094dvw;
  justify-content: center;
  align-items: center;
  position: relative;
}
.nextocdetail .nxocjoin::before {
  content: "";
  aspect-ratio: 1/1;
  width: 26.563dvw;
  border-radius: 9999px;
  position: absolute;
  inset: 0;
  margin: auto;
  z-index: 0;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-blur.png);
  background-size: contain;
}
.nextocdetail .nxocjoin a {
  aspect-ratio: 1/1;
  width: 18.75dvw;
  display: flex;
  flex-direction: column;
  gap: 1.094dvw;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 9999px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join.png);
}
.nextocdetail .nxocjoin a::after {
  content: "";
  aspect-ratio: 1/1;
  width: 18.75dvw;
  position: absolute;
  inset: 0;
  margin: auto;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-active.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.3s;
  opacity: 0;
  z-index: 1;
}
.nextocdetail .nxocjoin a .nxoc__join__label {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 1.458dvw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.64;
  text-align: center;
}
.nextocdetail .nxocjoin a .nxoc__join__arrow {
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.646dvw;
  border-radius: 9999px;
  background-color: #fff;
  position: relative;
  z-index: 2;
}
.nextocdetail .nxocjoin a .nxoc__join__arrow::after {
  content: "";
  aspect-ratio: 1/1;
  display: block;
  width: 0.833dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-link.svg);
  background-size: 1.563dvw 1.563dvw;
  background-repeat: no-repeat;
  background-position: top right;
  transition: all ease 0.3s;
}
.nextocdetail .nxocjoin a:hover {
  opacity: 1;
}
.nextocdetail .nxocjoin a:hover::after {
  opacity: 1;
}
.nextocdetail .nxocjoin a:hover .nxoc__join__arrow::after {
  background-position: bottom left;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail .nxocjoin::before {
    width: 64dvw;
  }
  .nextocdetail .nxocjoin a {
    aspect-ratio: 375/340;
    width: 100%;
    background-size: 44.267dvw;
  }
  .nextocdetail .nxocjoin a:hover {
    opacity: 1;
  }
  .nextocdetail .nxocjoin a:hover::after {
    opacity: 0;
  }
  .nextocdetail .nxocjoin a:hover .nxoc__join__arrow::after {
    background-position: top right;
  }
  .nextocdetail .nxocjoin a .nxoc__join__label {
    font-size: 3.733dvw;
    margin-bottom: 1.333dvw;
  }
  .nextocdetail .nxocjoin a .nxoc__join__arrow {
    width: 10.667dvw;
  }
  .nextocdetail .nxocjoin a .nxoc__join__arrow::after {
    width: 2.4dvw;
    background-size: 5.333dvw 5.333dvw;
  }
}
.nextocdetail #nxocpickup {
  margin-top: 5.729dvw;
  margin-bottom: 7.552dvw;
}
.nextocdetail #nxocpickup .nxoc__progsummaryitemhead {
  display: block;
  margin-top: -3.125dvw;
  margin-left: -3.125dvw;
  margin-right: -3.125dvw;
  margin-bottom: 3.125dvw;
}
.nextocdetail #nxocpickup .experience .day {
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #237fd0;
  font-size: 2.083dvw;
}
.nextocdetail #nxocpickup .experience .dtl .smry {
  list-style: none;
  background-color: #98D9FF;
  font-size: 1.563dvw;
  text-align: center;
  padding: 1.458dvw 0;
  position: relative;
  border: solid 2px #87C8F9;
  margin-top: 1.563dvw;
  border-radius: 1.042dvw;
  letter-spacing: 0.1em;
  cursor: pointer;
}
.nextocdetail #nxocpickup .experience .dtl .smry:hover {
  background-color: #cbeafd;
}
.nextocdetail #nxocpickup .experience .dtl .smry .icon {
  position: absolute;
  right: 2.083dvw;
  top: 0;
  bottom: 0;
  margin: auto;
  aspect-ratio: 1/1;
  width: 2dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-toggle.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: rotate 0.3s;
  rotate: 180deg;
}
.nextocdetail #nxocpickup .experience .dtl .smry .text {
  position: absolute;
  display: block;
  top: 2.5rem;
  bottom: 0;
  left: auto;
  right: 5vw;
  margin: auto;
  font-size: 60%;
}
.nextocdetail #nxocpickup .experience .dtl.is-opened .icon {
  rotate: 0deg;
}
.nextocdetail #nxocpickup .experience .dtl.is-opened .smry {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.nextocdetail #nxocpickup .experience .box {
  border: solid 2px #7bbcf5;
  border-top: none;
  padding: 2.344dvw 2.604dvw;
  border-bottom-left-radius: 1.042dvw;
  border-bottom-right-radius: 1.042dvw;
}
.nextocdetail #nxocpickup .experience .box .flex {
  display: flex;
  gap: 2.083dvw;
}
.nextocdetail #nxocpickup .experience .box .nxoc__box_img {
  width: 19.792dvw;
}
.nextocdetail #nxocpickup .experience .box .nxoc__box_txt {
  width: 29.167dvw;
}
.nextocdetail #nxocpickup .experience .box .nxoc__box_lead {
  color: #237FD0;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.53;
  font-size: 1.354dvw;
  margin-bottom: 1.042dvw;
}
.nextocdetail #nxocpickup .experience .box .nxoc__box_comment {
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-size: 0.938dvw;
}
.nextocdetail #nxocpickup .experience.day2 {
  margin-top: 2vw;
}
.nextocdetail #nxocpickup .experience.day2 .day {
  color: #FA4F4F;
}
.nextocdetail #nxocpickup .experience.day2 .dtl .smry {
  background-color: #ffd0d0;
  border-color: #FA4F4F;
}
.nextocdetail #nxocpickup .experience.day2 .dtl .smry:hover {
  background-color: #feecec;
}
.nextocdetail #nxocpickup .experience.day2 .box {
  border: solid 2px #FA4F4F;
  border-top: none;
}
.nextocdetail #nxocpickup .experience.day2 .box .nxoc__box_lead {
  color: #FA4F4F;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail #nxocpickup {
    margin-bottom: 18.667dvw;
  }
  .nextocdetail #nxocpickup .nxoc__progsummaryitemhead {
    margin: 0;
    margin-bottom: 8dvw;
  }
  .nextocdetail #nxocpickup .nxoc__progsummaryitemhead img {
    border-top-left-radius: 5.333dvw;
    border-top-right-radius: 5.333dvw;
  }
  .nextocdetail #nxocpickup .nxoc__sechead {
    margin-left: -2.133dvw;
  }
  .nextocdetail #nxocpickup .nxoc__progsummaryitem {
    padding-top: 0;
  }
  .nextocdetail #nxocpickup .experience.day2 {
    margin-top: 8dvw;
  }
  .nextocdetail #nxocpickup .experience .day {
    font-size: 6.4dvw;
    margin-bottom: 3.2dvw;
  }
  .nextocdetail #nxocpickup .experience .dtl {
    width: 82.667dvw;
    margin-left: auto;
    margin-right: auto;
  }
  .nextocdetail #nxocpickup .experience .dtl .smry {
    border-radius: 5.333dvw;
    margin-top: 2.667dvw;
    font-size: 4.8dvw;
    line-height: 1.55;
  }
  .nextocdetail #nxocpickup .experience .dtl .smry .icon {
    right: 5.333dvw;
    width: 5.333dvw;
  }
  .nextocdetail #nxocpickup .experience .dtl .box {
    padding: 5.333dvw 4.267dvw;
    border-bottom-left-radius: 5.333dvw;
    border-bottom-right-radius: 5.333dvw;
  }
  .nextocdetail #nxocpickup .experience .dtl .box .flex {
    flex-direction: column;
    gap: 6.933dvw;
  }
  .nextocdetail #nxocpickup .experience .dtl .box .flex .nxoc__box_img {
    width: 100%;
  }
  .nextocdetail #nxocpickup .experience .dtl .box .flex .nxoc__box_txt {
    width: 100%;
  }
  .nextocdetail #nxocpickup .experience .dtl .box .flex .nxoc__box_lead {
    font-size: 4.8dvw;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail #nxocpickup .experience .dtl .box .flex .nxoc__box_comment {
    font-size: 3.733dvw;
    line-height: 1.5;
  }
}
.nextocdetail #nxocprogram {
  margin-bottom: 5.156dvw;
}
.nextocdetail #nxocprogram .nxoc__inner {
  width: 84.375dvw;
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF2F2;
  padding-top: 5.208dvw;
  position: relative;
  margin-bottom: 11.198dvw;
}
.nextocdetail #nxocprogram .nxoc__inner::after {
  content: "";
  position: absolute;
  left: -5.208dvw;
  right: -5.208dvw;
  bottom: -3.594dvw;
  display: block;
  height: 7.083dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-flowtext.svg);
  background-size: contain;
  background-repeat: repeat-x;
  animation: bgroop_pc 30s linear infinite;
}
@keyframes bgroop_pc {
  from {
    background-position-x: 0;
  }
  to {
    background-position-x: -75.885dvw;
  }
}
@keyframes bgroop_mb {
  from {
    background-position-x: 0;
  }
  to {
    background-position-x: -180dvw;
  }
}
.nextocdetail #nxocprogram .nxoc__progflow {
  display: flex;
  justify-content: center;
  align-items: end;
  gap: 2.604dvw;
  margin-bottom: 4.688dvw;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dt {
  width: 12.5dvw;
  height: 1.875dvw;
  margin-left: 0.521dvw;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 9999px;
  background-color: #0361B4;
  color: #fff;
  font-size: 0.938dvw;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  z-index: 1;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dt::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(50% - 0.365dvw);
  border-style: solid;
  border-color: transparent;
  border-top-color: #0361B4;
  border-top-width: 0.677dvw;
  border-left-width: 0.365dvw;
  border-bottom-width: 0.677dvw;
  border-right-width: 0.365dvw;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dd {
  white-space: nowrap;
  min-width: 10.417dvw;
  width: -moz-max-content;
  width: max-content;
  height: 4.167dvw;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #FFF;
  border: solid 2px #0361B4;
  box-sizing: border-box;
  margin-top: -0.521dvw;
  font-size: 0.938dvw;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dd::before, .nextocdetail #nxocprogram .nxoc__progflowitem dd::after {
  content: "";
  position: absolute;
  top: 50%;
  border: solid 2px #0361B4;
  border-color: transparent;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dd::before {
  left: 100%;
  margin-top: -0.729dvw;
  border-top-width: 0.625dvw;
  border-bottom-width: 0.625dvw;
  border-left-width: 1.354dvw;
  border-right-width: 1.354dvw;
  border-left-color: #fff;
  z-index: 2;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dd::after {
  left: 100%;
  margin-top: calc(-2px - 0.729dvw);
  border-top-width: calc(0.625dvw + 2px);
  border-bottom-width: calc(0.625dvw + 2px);
  border-left-width: calc(1.354dvw + 2px);
  border-right-width: calc(1.354dvw + 2px);
  border-left-color: #0361B4;
  z-index: 1;
}
.nextocdetail #nxocprogram .nxoc__progsummary {
  box-sizing: border-box;
  width: 62.5dvw;
  margin-left: auto;
  margin-right: auto;
}
.nextocdetail #nxocprogram .nxoc__progsummaryitem {
  border-radius: 1.042dvw;
  padding: 2.604dvw 3.125dvw;
  margin-bottom: 3.646dvw;
  background-color: #fff;
  position: relative;
  box-shadow: 0.521dvw 0.521dvw #87C8F9;
}
.nextocdetail #nxocprogram .nxoc__progsubject {
  position: absolute;
  left: -1.563dvw;
  top: -1.563dvw;
  display: flex;
  align-items: center;
  min-height: 2.604dvw;
  background-color: #0361B4;
  color: #fff;
  font-size: 1.25dvw;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 0.521dvw 4.167dvw 0.521dvw 1.302dvw;
  border-radius: 9999px;
  border-bottom-right-radius: 0;
}
.nextocdetail #nxocprogram .nxoc__progsubject small {
  font-size: 0.833dvw;
}
.nextocdetail #nxocprogram .nxoc__progdetailimg {
  flex-shrink: 0;
}
.nextocdetail #nxocprogram .nxoc__progdetaillead {
  font-size: 1.563dvw;
  font-weight: 600;
  letter-spacing: 0.15em;
}
.nextocdetail #nxocprogram .nxoc__progdetailcomment {
  font-size: 0.938dvw;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.88;
}
.nextocdetail #nxocprogram .closeup {
  background: #fff;
  position: relative;
}
.nextocdetail #nxocprogram .closeup .nxoc__progdetail {
  display: flex;
  gap: 2.083dvw;
}
.nextocdetail #nxocprogram .closeup .nxoc__progdetailimg {
  width: 31.979dvw;
}
.nextocdetail #nxocprogram .closeup .nxoc__progdetaillead {
  color: #237FD0;
  margin-bottom: 0.938dvw;
}
.nextocdetail #nxocprogram .closeup .nxoc__progicon {
  position: absolute;
  right: 2.604dvw;
  bottom: 1.771dvw;
  width: 8.49dvw;
  height: 6.354dvw;
}
.nextocdetail #nxocprogram .entire {
  background: #fff;
}
.nextocdetail #nxocprogram .entire .nxoc__progdetail {
  display: flex;
  gap: 2.083dvw;
}
.nextocdetail #nxocprogram .entire .nxoc__progdetailimg {
  width: 31.979dvw;
}
.nextocdetail #nxocprogram .entire .nxoc__progdetaillead {
  color: #237FD0;
  margin-bottom: 0.938dvw;
}
.nextocdetail #nxocprogram .semminer {
  border-color: #FBDFCA;
  background: #fff;
  padding-top: 3.542dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsubject {
  background-color: #EC6800;
}
.nextocdetail #nxocprogram .semminer .nxoc__progseminerlead {
  text-align: center;
  margin-bottom: 2.083dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progseminerlead img {
  width: 27.813dvw;
  height: 3.49dvw;
}
.nextocdetail #nxocprogram .semminer .swiper {
  overflow: visible;
}
.nextocdetail #nxocprogram .semminer .swiper-wrapper {
  display: block;
}
.nextocdetail #nxocprogram .semminer .swiper-button-next,
.nextocdetail #nxocprogram .semminer .swiper-button-prev {
  display: none;
}
.nextocdetail #nxocprogram .semminer .slider-thumbnail {
  display: none;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem {
  display: flex;
  gap: 1.302dvw;
  padding-bottom: 1.302dvw;
  border-bottom: 1px solid #D1D1D1;
  margin-bottom: 2.604dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem:last-of-type {
  padding-bottom: 0;
  border-bottom: none;
  margin-bottom: 0;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progimg {
  flex-shrink: 0;
  width: 24.323dvw;
  position: relative;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progicon {
  position: absolute;
  top: -1.302dvw;
  left: -1.302dvw;
  aspect-ratio: 1/1;
  width: 5.729dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progsublead {
  padding: 0.365dvw 0.781dvw 0.469dvw;
  font-size: 1.25dvw;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 0.833dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__proglead {
  font-size: 1.354dvw;
  letter-spacing: 0.1em;
  font-weight: 600;
  line-height: 1.61;
  margin-bottom: 0.938dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progcomment {
  font-size: 0.938dvw;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.87;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem.food .nxoc__progsublead {
  background: linear-gradient(to right, #EFF5E6, #fff);
  color: #5FA01C;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem.tech .nxoc__progsublead {
  background: linear-gradient(to right, #FDF0F2, #fff);
  color: #E6657D;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem.area .nxoc__progsublead {
  background: linear-gradient(to right, #E9F2FB, #fff);
  color: #237FD0;
}
.nextocdetail #nxocprogram .freeprogs {
  border-color: #DCEFCB;
  background: #fff;
  padding-top: 3.333dvw;
  padding-bottom: 2.708dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__freeprogslead {
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.87;
  font-size: 0.938dvw;
  margin-bottom: 1.563dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__freeprogslead img {
  width: 29.01dvw;
  height: 3.073dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__progfreeprogs {
  gap: 1.354dvw 3.75dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__freeprogitem {
  width: 26.25dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__progsublead {
  margin-bottom: 0.781dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__progsublead2 {
  font-size: 1.042dvw;
  margin-bottom: 0.521dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__progdetail {
  gap: 1.354dvw;
}
.nextocdetail #nxocprogram .freeprogs .nxoc__progcategoryname {
  margin-top: 2.083dvw;
  margin-bottom: 1.042dvw;
  border-radius: 1.042dvw;
  background: linear-gradient(to right, #67c6dd 0%, #67c6dd 8.38%, #99d6a9 99.99%, #99d6a9 100%);
  color: #fff;
  text-align: center;
  opacity: 0.8;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 0.417dvw;
  font-size: 1.563dvw;
  line-height: 1.5;
}
.nextocdetail #nxocprogram .examprepare {
  border-color: #DFE9FF;
  background: #fff;
  padding-bottom: 1.667dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progsublead {
  width: 30.625dvw;
  padding: 0.365dvw 0.781dvw 0.469dvw;
  font-size: 1.25dvw;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 0.833dvw;
  background: linear-gradient(to right, #E7EFFF, #fff);
  color: #5F95FF;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progdetail {
  display: flex;
  align-items: flex-start;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem {
  padding: 0.781dvw 3.125dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem:first-of-type {
  border-right: 1px solid #D1D1D1;
  padding-left: 0;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem:last-of-type {
  padding-left: 0;
  padding-right: 0.26dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progimg {
  width: 15.625dvw;
  margin-bottom: 0.833dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progtxt {
  width: 15.625dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__proglead {
  font-size: 1.25dvw;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #5F95FF;
  margin-bottom: 0.417dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progcomment {
  min-height: 4.792dvw;
  font-size: 0.833dvw;
  line-height: 1.75;
  font-weight: 400;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progcomment em {
  font-weight: 700;
  color: #5F95FF;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present {
  width: 15.313dvw;
  padding-bottom: 0;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progtxt {
  margin-bottom: 0.99dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progsublead {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-present-sublead.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  min-height: 2.552dvw;
  color: #fff;
  font-size: 0.938dvw;
  font-weight: 700;
  letter-spacing: 0.3em;
  padding-bottom: 0.677dvw;
  margin-bottom: 0.573dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__proglead {
  color: #FA4F4F;
  font-size: 1.25dvw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.25;
  text-align: center;
  margin-bottom: 0.469dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__proglead small {
  font-size: 1.042dvw;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progcomment {
  min-height: 0;
  font-size: 0.729dvw;
  line-height: 1.71;
  text-align: center;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progimg {
  text-align: center;
  margin-bottom: 0;
}
.nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progimg img {
  width: 10.938dvw;
}
.nextocdetail #nxocprogram .nxoc__progfreeprogs {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2.083dvw;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem {
  box-sizing: border-box;
  padding: 0;
  margin-bottom: 0;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem .nxoc__progsubject {
  left: -1.042dvw;
  top: -1.042dvw;
  min-height: 2.083dvw;
  padding-right: 2.604dvw;
  background-color: #54B502;
  font-size: 0.833dvw;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem .nxoc__progdetail {
  display: flex;
  gap: 1.302dvw;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem .nxoc__progdetailimg {
  width: 11.823dvw;
  flex-shrink: 0;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem .nxoc__progsublead {
  padding: 0.365dvw 0.781dvw 0.469dvw;
  font-size: 1.042dvw;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 0.781dvw;
  background: linear-gradient(to right, #EEF8E6, #fff);
  color: #54B502;
}
.nextocdetail #nxocprogram .nxoc__freeprogitem .nxoc__progdetailtxt {
  font-size: 0.833dvw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
.nextocdetail #nxocprogram .nxoc__progoutro {
  position: relative;
  padding-top: 3.125dvw;
  padding-bottom: 6.771dvw;
  padding-left: 5.208dvw;
}
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__progoutrotxt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.781dvw;
}
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__progoutrotxt span {
  display: inline-block;
  padding: 0.26dvw 1.563dvw;
  background: #fff;
  color: #FA4F4F;
  font-size: 1.458dvw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.42;
}
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-a,
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-b {
  position: absolute;
  bottom: 0;
}
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-a {
  left: 0;
  width: 13.281dvw;
}
.nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-b {
  right: -8.958dvw;
  width: 22.083dvw;
}
.nextocdetail #nxocprogram .nxocjoin {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-bg2.jpg);
}
.nextocdetail #nxocprogram {
  margin-bottom: 4.167dvw;
}
.nextocdetail #nxocprogram .nxoc__inner {
  background-color: #E6F7FF;
  padding-top: 5.729dvw;
}
.nextocdetail #nxocprogram .nxoc__progsummary {
  margin-top: 4.844dvw;
}
.nextocdetail #nxocprogram .nxoc__secsubject::first-letter {
  color: #FA4F4F;
  font-size: 2.083dvw;
  letter-spacing: 0.2em;
}
.nextocdetail #nxocprogram .nxoc__progflow {
  gap: 2.604dvw;
  margin-bottom: 3.125dvw;
}
.nextocdetail #nxocprogram .nxoc__progflowchild {
  background: #FFF;
  border: solid 2px #0361B4;
  box-sizing: border-box;
  padding: 2.083dvw 1.563dvw 1.042dvw;
  position: relative;
}
.nextocdetail #nxocprogram .nxoc__progflowchild .nxoc__progflow {
  margin-bottom: 0;
}
.nextocdetail #nxocprogram .nxoc__progflowchild .nxoc__progflow .nxoc__progflowitem {
  margin-bottom: 0;
}
.nextocdetail #nxocprogram .nxoc__progflowchild .nxoc__progflow .nxoc__progflowitem:last-of-type dd::before, .nextocdetail #nxocprogram .nxoc__progflowchild .nxoc__progflow .nxoc__progflowitem:last-of-type dd::after {
  display: none;
}
.nextocdetail #nxocprogram .nxoc__progflowchildhead {
  position: absolute;
  top: -1.563dvw;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #0361B4;
  border-radius: 9999px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  font-size: 1.25dvw;
  padding: 0.26dvw 1.302dvw 0.365dvw;
  width: -moz-max-content;
  width: max-content;
}
.nextocdetail #nxocprogram .nxoc__progflowchildhead small {
  font-size: 0.938dvw;
}
.nextocdetail #nxocprogram .nxoc__progflowitem {
  margin-bottom: 1.042dvw;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dt {
  width: 8.854dvw;
  margin-left: auto;
  margin-right: auto;
}
.nextocdetail #nxocprogram .nxoc__progflowitem dd {
  min-height: 5.208dvw;
  padding-top: 0.26dvw;
  padding-left: 1.406dvw;
  padding-right: 1.406dvw;
  text-align: center;
  font-size: 0.938dvw;
  line-height: 1.44;
}
.nextocdetail #nxocprogram .nxoc__progsummaryitem {
  padding-bottom: 2.344dvw;
  margin-bottom: 3.646dvw;
}
.nextocdetail #nxocprogram .nxoc__progsummaryitem.closeup {
  background-color: #fff;
}
.nextocdetail #nxocprogram .nxoc__progsubject {
  left: -1.771dvw;
  padding-right: 4.063dvw;
}
.nextocdetail #nxocprogram .nxoc__progdetail {
  gap: 2.604dvw;
}
.nextocdetail #nxocprogram .nxoc__progdetaillead {
  white-space: nowrap;
  margin-bottom: 1.354dvw;
}
.nextocdetail #nxocprogram .semminer {
  padding-top: 3.125dvw;
  padding-bottom: 3.125dvw;
  margin-bottom: 3.646dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progseminerlead img {
  width: 33.542dvw;
  height: 3.49dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progsemineritem {
  padding-bottom: 0;
}
.nextocdetail #nxocprogram .semminer .nxoc__proglead {
  margin-bottom: 0.625dvw;
}
.nextocdetail #nxocprogram .semminer .nxoc__progcomment {
  letter-spacing: 0.045em;
  line-height: 1.89;
  margin-bottom: 2.448dvw;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail #nxocprogram {
    margin-bottom: 13.333dvw;
  }
  .nextocdetail #nxocprogram .nxoc__inner {
    width: 96dvw;
    padding-top: 8dvw;
    margin-bottom: 29.333dvw;
  }
  .nextocdetail #nxocprogram .nxoc__inner::after {
    background-size: cover;
    left: -4.267dvw;
    right: -4.267dvw;
    bottom: -9.067dvw;
    height: 18.133dvw;
    animation: bgroop_mb 15s linear infinite;
  }
  @keyframes bgroop_mb {
    from {
      background-position-x: 0;
    }
    to {
      background-position-x: -196.533dvw;
    }
  }
  .nextocdetail #nxocprogram .nxoc__progflow {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5.867dvw;
    margin-bottom: 20.8dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dt {
    width: 45.333dvw;
    min-height: 9.6dvw;
    margin-left: auto;
    margin-right: auto;
    font-size: 4.267dvw;
    text-align: center;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dt::after {
    left: calc(50% - 1.6dvw);
    border-top-width: 2.667dvw;
    border-left-width: 1.6dvw;
    border-bottom-width: 2.667dvw;
    border-right-width: 1.6dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dd {
    aspect-ratio: 200/60;
    width: 53.333dvw;
    min-height: unset;
    height: unset;
    margin-top: -2.667dvw;
    border-width: 2px;
    padding-top: 6.667dvw;
    padding-bottom: 4dvw;
    font-size: 3.733dvw;
    font-weight: 400;
    line-height: 1.44;
    text-align: center;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dd::before, .nextocdetail #nxocprogram .nxoc__progflowitem dd::after {
    content: "";
    position: absolute;
    left: calc(50% + 1.333dvw);
    top: 100%;
    bottom: unset;
    border: solid 2px #0361B4;
    border-color: transparent;
    border-top-width: 5.333dvw;
    border-bottom-width: 5.333dvw;
    border-left-width: 2.667dvw;
    border-right-width: 2.667dvw;
    margin-left: -4dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dd::before {
    margin-top: -3px;
    border-left-color: transparent;
    border-top-color: #fff;
    z-index: 2;
  }
  .nextocdetail #nxocprogram .nxoc__progflowitem dd::after {
    margin-top: unset;
    border-left-color: transparent;
    border-top-color: #0361B4;
    z-index: 1;
  }
  .nextocdetail #nxocprogram .nxoc__progflowchild {
    margin-top: 12dvw;
    padding-left: 9.333dvw;
    padding-right: 9.333dvw;
    padding-top: 16dvw;
    padding-bottom: 5.333dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progflowchildhead {
    top: -12dvw;
    width: 61.867dvw;
    display: flex;
    flex-direction: column;
    padding-top: 3.2dvw;
    padding-bottom: 3.467dvw;
    font-size: 4.267dvw;
    line-height: 1.7;
    border-radius: 6.667dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progflowchildhead small {
    font-size: 3.2dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progsummary {
    width: 88dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progsummaryitem {
    margin-bottom: 22.933dvw;
    padding: 12.267dvw 4dvw 5.333dvw 4.267dvw;
    border-radius: 5.333dvw;
    box-shadow: 1.333dvw 1.333dvw #87C8F9;
  }
  .nextocdetail #nxocprogram .nxoc__progsubject {
    top: -12.8dvw;
    left: -1.6dvw;
    width: 66.133dvw;
    min-height: 9.867dvw;
    border-radius: 6.667dvw;
    border-bottom-right-radius: 0;
    padding: 3.2dvw 0 3.2dvw 5.333dvw;
    font-size: 4.267dvw;
    line-height: 1.5;
  }
  .nextocdetail #nxocprogram .nxoc__progsubject small {
    font-size: 3.2dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progdetail {
    flex-direction: column;
    gap: 2.667dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progdetailimg {
    width: 60.533dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progdetaillead {
    font-size: 4.8dvw;
    letter-spacing: 0.13em;
    line-height: 1.5;
  }
  .nextocdetail #nxocprogram .nxoc__progdetailcomment {
    font-size: 3.733dvw;
    line-height: 1.5;
  }
  .nextocdetail #nxocprogram .closeup {
    margin-bottom: 14.667dvw;
  }
  .nextocdetail #nxocprogram .closeup .nxoc__progdetailimg {
    width: 100%;
  }
  .nextocdetail #nxocprogram .closeup .nxoc__progdetaillead {
    margin-bottom: 1.333dvw;
  }
  .nextocdetail #nxocprogram .closeup .nxoc__progicon {
    position: absolute;
    right: 6.933dvw;
    bottom: 4.533dvw;
    width: 26.133dvw;
    height: 19.467dvw;
  }
  .nextocdetail #nxocprogram .entire {
    padding-top: 18.133dvw;
  }
  .nextocdetail #nxocprogram .entire .nxoc__progdetail {
    gap: 2.667dvw;
  }
  .nextocdetail #nxocprogram .entire .nxoc__progdetailimg {
    width: 100%;
  }
  .nextocdetail #nxocprogram .entire .nxoc__progdetaillead {
    margin-bottom: 3.2dvw;
  }
  .nextocdetail #nxocprogram .semminer {
    padding-top: 0;
    padding-left: 0dvw;
    padding-right: 0dvw;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progseminerlead {
    margin-bottom: 6.667dvw;
    width: 100%;
    padding-left: 7.467dvw;
    padding-right: 7.467dvw;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progseminerlead img {
    width: 100%;
    height: auto;
  }
  .nextocdetail #nxocprogram .semminer .swiper {
    overflow: hidden;
  }
  .nextocdetail #nxocprogram .semminer .swiper-wrapper {
    display: flex;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail {
    display: flex;
    justify-content: center !important;
    margin-bottom: 4dvw;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper {
    justify-content: center !important;
    gap: 4dvw !important;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide {
    aspect-ratio: 1/1;
    width: 10.667dvw !important;
    position: relative;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide::before, .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide::after {
    content: "";
    aspect-ratio: 1/1;
    width: 10.667dvw !important;
    transition: 0.3s;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    inset: 0;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active::after {
    opacity: 0;
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.food::before {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer1-icon.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.food::after {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer1-icon-d.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.tech::before {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer2-icon.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.tech::after {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer2-icon-d.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.area::before {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer3-icon.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail .swiper-wrapper .swiper-slide.area::after {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-seminer3-icon-d.svg);
  }
  .nextocdetail #nxocprogram .semminer .slider-thumbnail img {
    width: 10.667dvw;
  }
  .nextocdetail #nxocprogram .semminer .swiper-button-next,
  .nextocdetail #nxocprogram .semminer .swiper-button-prev {
    display: block;
    aspect-ratio: 1/1 !important;
    width: 6.933dvw !important;
    height: 6.933dvw !important;
    border-radius: 9999px;
    background-size: 3.467dvw;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #EC6800;
    transition: 0.2s;
    top: 80dvw;
  }
  .nextocdetail #nxocprogram .semminer .swiper-button-next::after,
  .nextocdetail #nxocprogram .semminer .swiper-button-prev::after {
    display: none;
  }
  .nextocdetail #nxocprogram .semminer .swiper-button-next {
    right: -3.2dvw;
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-slidenext.svg);
  }
  .nextocdetail #nxocprogram .semminer .swiper-button-prev {
    left: -3.2dvw;
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-slideprev.svg);
  }
  .nextocdetail #nxocprogram .semminer .swiper-button-disabled {
    opacity: 1 !important;
    background-color: #FBDFCA;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem {
    flex-direction: column;
    gap: 1.867dvw;
    padding-top: 3.467dvw;
    padding-left: 7.467dvw;
    padding-right: 7.467dvw;
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progicon {
    top: -3.467dvw;
    left: -3.467dvw;
    width: 16dvw;
    aspect-ratio: 1/1;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progimg {
    width: calc(100% + 3.467dvw);
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progimg picture img {
    aspect-ratio: 249/173;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progsublead {
    padding: 1.333dvw 2.133dvw 1.333dvw;
    font-size: 3.467dvw;
    letter-spacing: 0.1em;
    font-weight: 600;
    margin-bottom: 4dvw;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__proglead {
    font-size: 4dvw;
    margin-bottom: 4dvw;
  }
  .nextocdetail #nxocprogram .semminer .nxoc__progsemineritem .nxoc__progcomment {
    font-size: 3.2dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progsublead {
    width: 100%;
    font-size: 4dvw;
    padding: 2.133dvw 2.133dvw;
    margin-bottom: 5.333dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progdetail {
    flex-direction: column;
    gap: 9.6dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem {
    padding: 0;
    padding-bottom: 9.6dvw;
    border-left: none;
    border-right: none;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem:first-of-type {
    border-right: none;
    border-bottom: 1px solid #D1D1D1;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem:nth-of-type(2) {
    padding-bottom: 0;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem:last-of-type {
    padding-right: 0;
    border-bottom: none;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progimg {
    width: 100%;
    margin-bottom: 4dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progtxt {
    width: 100%;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__proglead {
    font-size: 4dvw;
    margin-bottom: 2.4dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem .nxoc__progcomment {
    min-height: unset;
    font-size: 3.2dvw;
    line-height: 1.71;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present {
    width: 100%;
    padding-bottom: 0;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progtxt {
    margin-bottom: 5.333dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progsublead {
    min-height: 10.933dvw;
    font-size: 4dvw;
    padding-top: 0;
    padding-bottom: 3.2dvw;
    margin-bottom: 2.933dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__proglead {
    font-size: 5.333dvw;
    margin-bottom: 2.4dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__proglead small {
    font-size: 4.533dvw;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progcomment {
    margin-left: -3.2dvw;
    margin-right: -3.2dvw;
    font-size: 3.2dvw;
    margin-bottom: 0;
  }
  .nextocdetail #nxocprogram .examprepare .nxoc__progexamitem.present .nxoc__progimg img {
    width: 47.2dvw;
  }
  .nextocdetail #nxocprogram .nxoc__freeprogtoggle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45.867dvw;
    height: 12dvw;
    margin-left: auto;
    margin-right: auto;
    border: 2px solid #DCEFCB;
    border-radius: 9999px;
    color: #54B502;
    font-size: 3.733dvw;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.05em;
    position: relative;
  }
  .nextocdetail #nxocprogram .nxoc__freeprogtoggle::before, .nextocdetail #nxocprogram .nxoc__freeprogtoggle::after {
    content: "";
    width: 3.2dvw;
    height: 0.533dvw;
    position: absolute;
    left: 9.6dvw;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #54B502;
    transition: 0.2s;
  }
  .nextocdetail #nxocprogram .nxoc__freeprogtoggle::after {
    transform: rotateZ(90deg);
  }
  .nextocdetail #nxocprogram .nxoc__freeprogtoggle > span {
    padding-left: 9.6dvw;
  }
  .nextocdetail #nxocprogram .nxoc__freeprogtoggle .close {
    display: none;
  }
  .nextocdetail #nxocprogram .freeprogs {
    padding-bottom: 8dvw;
    margin-bottom: 14.667dvw;
  }
  .nextocdetail #nxocprogram .freeprogs.is-opened .nxoc__progfreeprogs {
    padding-top: 16dvw;
    height: auto;
    opacity: 1;
  }
  .nextocdetail #nxocprogram .freeprogs.is-opened .nxoc__freeprogtoggle::before {
    transform: rotateZ(-180deg);
  }
  .nextocdetail #nxocprogram .freeprogs.is-opened .nxoc__freeprogtoggle::after {
    transform: rotateZ(-180deg);
  }
  .nextocdetail #nxocprogram .freeprogs .nxoc__freeprogslead {
    font-size: 3.2dvw;
    margin-bottom: 5.867dvw;
  }
  .nextocdetail #nxocprogram .freeprogs .nxoc__progcategoryname {
    margin-top: 7.467dvw;
    margin-bottom: 5.333dvw;
    border-radius: 5.333dvw;
    padding: 4dvw 9.867dvw;
    font-size: 5.333dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs {
    flex-direction: column;
    gap: 9.067dvw;
    margin-bottom: 13.067dvw;
    overflow: hidden;
    height: 0;
    opacity: 0;
    transition: opacity 0.3s;
    padding-left: 2.667dvw;
    padding-right: 2.667dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem {
    width: 100%;
    padding: 0;
    border-radius: 2.667dvw;
    margin-bottom: 0;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem .nxoc__progsublead {
    font-size: 4.8dvw;
    padding: 2.133dvw 2.133dvw;
    margin-bottom: 1.6dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem .nxoc__progdetail {
    display: flex;
    gap: 0dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem .nxoc__progdetailimg {
    display: inline-block;
    width: 60.533dvw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem .nxoc__progdetaillead {
    color: #54B502;
    font-size: 4.8dvw;
    margin-bottom: 1.6dvw;
    margin-right: -0.1em;
  }
  .nextocdetail #nxocprogram .nxoc__progfreeprogs .nxoc__freeprogitem .nxoc__progdetailtxt {
    letter-spacing: 0.05em;
    font-size: 3.733dvw;
    line-height: 1.5;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro {
    padding-bottom: 0;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__progoutrotxt {
    gap: 2.667dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__progoutrotxt span {
    display: inline-block;
    padding: 0.533dvw 2.667dvw;
    font-size: 4.8dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greetings {
    margin-top: 6.667dvw;
    display: flex;
    gap: 1.333dvw;
    justify-content: center;
    align-items: flex-end;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-a,
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-b {
    position: static;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-a {
    left: -30.933dvw;
    width: 36dvw;
  }
  .nextocdetail #nxocprogram .nxoc__progoutro .nxoc__greeting-b {
    right: 2.667dvw;
    width: 60.267dvw;
  }
  .nextocdetail #nxocprogram .nxocjoin {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-bg2-mb.jpg);
  }
}
.nextocdetail #nxocsupport {
  margin-top: -5.208dvw;
  padding-top: 5.208dvw;
}
.nextocdetail #nxocsupport .nxoc__supports {
  width: 62.5dvw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1.042dvw;
}
.nextocdetail #nxocsupport .nxoc__supportitem {
  width: 30.833dvw;
  border: 3px solid #F3CDDE;
  box-shadow: 0.521dvw 0.521dvw #F3CDDE;
  border-radius: 1.042dvw;
  padding: 2.448dvw 2.448dvw 2.708dvw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.nextocdetail #nxocsupport .nxoc__supportitem.full {
  width: 100%;
  padding-bottom: 2.604dvw;
}
.nextocdetail #nxocsupport .nxoc__supportitem.full .nxoc__supportitemhead {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.563dvw;
}
.nextocdetail #nxocsupport .nxoc__supportitem.full .nxoc__supportlead {
  font-size: 0.938dvw;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.nextocdetail #nxocsupport .nxoc__supportitem.full .arrow-btn {
  margin-right: 0;
}
.nextocdetail #nxocsupport .nxoc__supportsubject {
  display: inline-block;
  border-radius: 0.26dvw;
  background: #eb6da5;
  color: #fff;
  font-size: 1.25dvw;
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1.5;
  padding: 0.417dvw 4.583dvw 0.417dvw 0.521dvw;
  margin-bottom: 0.781dvw;
}
.nextocdetail #nxocsupport .nxoc__supportsubject.go, .nextocdetail #nxocsupport .nxoc__supportsubject.back {
  padding: 0.365dvw 1.563dvw 0.365dvw 0.521dvw;
  font-size: 0.938dvw;
}
.nextocdetail #nxocsupport .nxoc__supportsubject.go {
  background: #8ec31e;
}
.nextocdetail #nxocsupport .nxoc__supportsubject.back {
  background: #53c1e4;
}
.nextocdetail #nxocsupport .nxoc__supportsummary {
  flex: 1;
  font-size: 0.938dvw;
  font-weight: 400;
  line-height: 1.87;
  margin-bottom: 3.802dvw;
}
.nextocdetail #nxocsupport .nxoc__supportsummary strong {
  font-weight: 700;
  color: #FA4F4F;
}
.nextocdetail #nxocsupport .nxoc__supportsummary em {
  font-weight: 700;
  color: #54B502;
}
.nextocdetail #nxocsupport .nxoc__supportsummary small {
  font-size: 0.729dvw;
}
.nextocdetail #nxocsupport .arrow-btn {
  margin-left: auto;
  margin-right: auto;
}
.nextocdetail #nxocsupport .arrow-btn::before {
  border-color: #FA4F4F;
}
.nextocdetail #nxocsupport .arrow-btn::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/animbtn-arrow-anim-r.svg);
}
.nextocdetail #nxocsupport .arrow-btn:hover {
  color: #FA4F4F;
}
.nextocdetail #nxocsupport .arrow-btn:hover::before {
  background-color: #FA4F4F;
}
.nextocdetail #nxocsupport .arrow-btn:hover::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/animbtn-arrow-anim-w.svg);
}
.nextocdetail #nxocsupport .arrow-btn:hover span::after {
  background-color: #FA4F4F;
}
.nextocdetail #nxocsupport .nxoc__supportfreebuswrap {
  display: flex;
}
.nextocdetail #nxocsupport .nxoc__supportfreebus {
  flex: 1;
}
.nextocdetail #nxocsupport .nxoc__supportfreebus:first-of-type {
  padding-right: 2.604dvw;
  border-right: 1px solid #D1D1D1;
}
.nextocdetail #nxocsupport .nxoc__supportfreebus:last-of-type {
  padding-left: 2.604dvw;
}
.nextocdetail #nxocsupport .nxoc__supportfreebus .nxoc__supportlead {
  font-weight: 400;
}
.nextocdetail #nxocsupport .nxoc__supportfreebus .nxoc__supportsummary {
  margin-bottom: 0;
}
.nextocdetail #nxocsupport .nxoc__supportsummary {
  font-size: 0.938dvw;
  letter-spacing: 0.05em;
  line-height: 1.87;
}
.nextocdetail #nxocsupport .nxoc__supportfreebusarea {
  font-weight: 700;
  color: #FA4F4F;
}
.nextocdetail #nxocsupport .nxoc__supportfreebusdetail {
  margin-bottom: 0.938dvw;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail #nxocsupport {
    margin-top: -13.333dvw;
    padding-top: 13.333dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supports {
    width: 92.267dvw;
    flex-direction: column;
    gap: 5.333dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem {
    width: 100%;
    border-radius: 5.333dvw;
    padding: 8dvw 4.267dvw 10.133dvw;
    box-shadow: 1.333dvw 1.333dvw #F3CDDE;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem.full {
    width: 100%;
    padding-bottom: 9.333dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem.full .nxoc__supportitemhead {
    margin-bottom: 4dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem.full .nxoc__supportsubject {
    margin-bottom: 2.667dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem.full .nxoc__supportlead {
    font-size: 3.2dvw;
    line-height: 1.83;
  }
  .nextocdetail #nxocsupport .nxoc__supportitem.full .arrow-btn {
    margin-top: 1.333dvw;
    margin-right: auto;
  }
  .nextocdetail #nxocsupport .nxoc__supportsubject {
    font-size: 4dvw;
    padding: 1.333dvw 13.333dvw 1.867dvw 2.133dvw;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportsubject small {
    font-size: 3.2dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportsummary {
    font-size: 3.2dvw;
    margin-bottom: 8dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportsummary small {
    font-size: 2.667dvw;
  }
  .nextocdetail #nxocsupport .arrow-btn {
    margin-left: auto;
    margin-right: auto;
  }
  .nextocdetail #nxocsupport .arrow-btn::before {
    border-color: #FA4F4F;
    width: 13.333dvw;
    height: 13.333dvw;
  }
  .nextocdetail #nxocsupport .arrow-btn::after {
    width: 4.267dvw;
    height: 4.267dvw;
    right: 5.867dvw;
    background-size: 7.467dvw;
  }
  .nextocdetail #nxocsupport .arrow-btn:hover {
    color: #FA4F4F;
  }
  .nextocdetail #nxocsupport .arrow-btn:hover::before {
    background-color: #FA4F4F;
  }
  .nextocdetail #nxocsupport .arrow-btn:hover span::after {
    background-color: #FA4F4F;
  }
  .nextocdetail #nxocsupport .arrow-btn span {
    font-weight: 400;
    font-size: 3.733dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebuswrap {
    flex-direction: column;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebus:first-of-type {
    padding-right: 0;
    border-bottom: 1px solid #D1D1D1;
    border-right: none;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebus:last-of-type {
    padding-left: 0;
    padding-top: 8dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebus .nxoc__supportsummary {
    margin-bottom: 8dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebusarea {
    font-size: 3.733dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebusdetail {
    margin-bottom: 3.2dvw;
  }
  .nextocdetail #nxocsupport .nxoc__supportfreebusdetail small {
    font-size: 2.667dvw;
  }
}
.nextocdetail #nxocquestion {
  padding-top: 5.208dvw;
}
.nextocdetail #nxocquestion .nxoc__questions {
  width: 52.083dvw;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 6.771dvw;
}
.nextocdetail #nxocquestion .nxoc__questionitem {
  margin-bottom: 1.823dvw;
}
.nextocdetail #nxocquestion .nxoc__questionitem.is-opened .nxoc__questionsummary .icon {
  transform: rotateZ(180deg);
}
.nextocdetail #nxocquestion .nxoc__questionsummary {
  display: flex;
  gap: 1.042dvw;
  align-items: center;
  background-color: #FFEEEE;
  border-radius: 1.042dvw;
  min-height: 3.646dvw;
  padding-left: 1.563dvw;
  font-size: 1.042dvw;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: relative;
}
.nextocdetail #nxocquestion .nxoc__questionsummary::-webkit-details-marker {
  display: none;
}
.nextocdetail #nxocquestion .nxoc__questionsummary::before {
  content: "Q";
  font-family: "Shippori Mincho", serif;
  font-size: 2.083dvw;
  font-weight: 700;
  color: #FA4F4F;
  line-height: 1.57;
  margin-top: -0.417dvw;
}
.nextocdetail #nxocquestion .nxoc__questionsummary .icon {
  position: absolute;
  right: 2.083dvw;
  top: 0;
  bottom: 0;
  margin: auto;
  aspect-ratio: 1/1;
  width: 0.729dvw;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-toggle.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: transform 0.3s;
}
.nextocdetail #nxocquestion .nxoc__questionanswertxt {
  padding: 0.781dvw 2.083dvw 0;
  font-size: 0.833dvw;
  font-weight: 400;
  line-height: 1.87;
}
.nextocdetail #nxocquestion .nxoc__questionanswertxt a {
  color: #FA4F4F;
  text-decoration: underline;
  word-break: break-all;
}
.nextocdetail #nxocquestion .nxoc__specials {
  width: 46.875dvw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 2.604dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitem {
  display: flex;
  justify-content: space-between;
  background-color: #E6F7FF;
  margin: 0;
  padding: 0;
  border-bottom: 0;
}
.nextocdetail #nxocquestion .nxoc__specialitem:not(:last-of-type) .nxoc__specialitemtxt {
  padding-top: 2.083dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitemtxt {
  display: flex;
  flex: 1;
  gap: 1.563dvw;
  padding-top: 1.563dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitemnum {
  width: 4.167dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitemsubject {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 18.75dvw;
  border-radius: 0px 0.521dvw 0.521dvw 0px;
  padding: 0.417dvw 1.927dvw 0.417dvw 1.146dvw;
  font-weight: 700;
  background-color: #0361b4;
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1.563dvw;
  margin-left: auto;
  margin-bottom: 1.667dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitemlead {
  line-height: 1.5;
  font-size: 1.042dvw;
  font-weight: 700;
  margin-left: 2.083dvw;
  margin-bottom: 0.781dvw;
}
.nextocdetail #nxocquestion .nxoc__specialitempresent {
  display: inline-block;
  font-weight: 700;
  line-height: 1;
  font-size: 1.563dvw;
  letter-spacing: 0.1em;
  color: #0361b4;
  position: relative;
  border-bottom: 2px solid #0361b4;
  margin-left: 2.083dvw;
  padding-left: 0.469dvw;
  padding-right: 0.469dvw;
  padding-bottom: 0.625dvw;
  text-align: center;
}
.nextocdetail #nxocquestion .nxoc__specialitempresent::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 2px;
  display: block;
  width: 100%;
  height: 0.104dvw;
  border-bottom: 1px solid #0361b4;
}
.nextocdetail #nxocquestion .nxoc__specialitemimg {
  width: 23.438dvw;
  flex-shrink: 0;
}
.nextocdetail #nxocquestion .nxocjoin {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-bg3.jpg);
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail #nxocquestion {
    padding-top: 14.667dvw;
  }
  .nextocdetail #nxocquestion .nxoc__questions {
    width: 92.267dvw;
    margin-bottom: 13.333dvw;
  }
  .nextocdetail #nxocquestion .nxoc__questionitem {
    margin-bottom: 5.333dvw;
  }
  .nextocdetail #nxocquestion .nxoc__questionsummary {
    gap: 2.667dvw;
    border-radius: 2.667dvw;
    min-height: 12.533dvw;
    padding-left: 4dvw;
    font-size: 4.267dvw;
    line-height: 1.28;
  }
  .nextocdetail #nxocquestion .nxoc__questionsummary::before {
    font-size: 8dvw;
    line-height: 1.65;
    margin-top: -1.333dvw;
  }
  .nextocdetail #nxocquestion .nxoc__questionsummary .icon {
    right: 4dvw;
    width: 2.133dvw;
  }
  .nextocdetail #nxocquestion .nxoc__questionanswertxt {
    font-weight: 400;
    padding: 2.667dvw 4.267dvw 0;
    font-size: 3.733dvw;
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
  .nextocdetail #nxocquestion .nxoc__specials {
    width: 88dvw;
    margin-bottom: 13.333dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitem {
    flex-direction: column;
    gap: 5.333dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitemtxt {
    gap: 4dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitemnum {
    width: 15.467dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitemsubject {
    padding: 1.867dvw 0 2.667dvw 2.667dvw;
    font-size: 4.8dvw;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitemlead {
    font-size: 3.2dvw;
    margin-bottom: 4dvw;
    padding-left: 2.667dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitempresent {
    font-size: 4dvw;
    margin-left: 2.667dvw;
    padding-bottom: 2.133dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitempresent::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 1px;
    display: block;
    width: 100%;
    height: 0.533dvw;
  }
  .nextocdetail #nxocquestion .nxoc__specialitemimg {
    width: 74.667dvw;
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
  }
  .nextocdetail #nxocquestion .nxocjoin {
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-join-bg3-mb.jpg);
  }
  .nextocdetail #nxocquestion .nxoc__join {
    margin-bottom: -8dvw;
  }
}
@media screen and (min-width: 768px), (min-width: 897px) and (orientation: landscape) {
  .nextocdetail .nxoc__mv.reverse {
    margin-right: 0;
    margin-left: auto;
  }
  .nextocdetail .nxoc__mv.reverse .nxoc__mvbg {
    position: relative;
    width: 84.323dvw;
  }
  .nextocdetail .nxoc__mv.reverse .nxoc__mvbg::before {
    right: unset;
    left: 0;
    background: linear-gradient(to left, transparent, #fff);
  }
  .nextocdetail .nxoc__mv.reverse .nxoc__mvtitle {
    right: unset;
    left: 0;
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc-mv-date-bg-r.svg);
    padding-left: 0;
    padding-right: 5.208dvw;
  }
}
.nextocdetail.oc2025 .nxoc__toform {
  z-index: 3;
  opacity: 0;
}
.nextocdetail.oc2025 .nxoc__toform.active {
  opacity: 1;
}
.nextocdetail.oc2025 .nxoc__lead span {
  background: linear-gradient(transparent 65%, #FFFF96 0%);
}
.nextocdetail.oc2025 .nxoc__lead em.food {
  color: #FA4F4F;
}
.nextocdetail.oc2025 .nxoc__lead em.agri {
  color: #54B502;
}
.nextocdetail.oc2025 .nxoc__lead em.business {
  color: #5F95FF;
}
.nextocdetail.oc2025 .nxoc__lead em.exp {
  color: #EC6800;
}
.nextocdetail.oc2025 .nxoc__lead .opt {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1.333dvw 3.2dvw;
  margin-top: 2.667dvw;
  padding-left: 13.333dvw;
  padding-right: 13.333dvw;
}
.nextocdetail.oc2025 .nxoc__lead .opt em {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #FA7171;
  border: 0.533dvw solid #FA4F4F;
  border-radius: 2.667dvw;
  color: #fff;
  font-size: 4.8dvw;
  padding-left: 5.333dvw;
  padding-right: 5.333dvw;
}
.nextocdetail.oc2025 .nxoc__lead + .nxocjoin {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-join-bg1.jpg);
}
.nextocdetail.oc2025 .nxoc__forvisitor {
  margin-bottom: 13.333dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__head {
  font-weight: 500;
  letter-spacing: 0.2em;
  text-align: center;
  font-size: 6.4dvw;
  margin-bottom: 13.333dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__head::first-letter {
  color: #EC6800;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__items {
  display: grid;
  justify-content: center;
  gap: 8.533dvw 2.4dvw;
  grid-template-columns: repeat(2, 44.8dvw);
  margin-top: 12dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item {
  width: 44.8dvw;
  background-color: #FDEDE0;
  position: relative;
  padding-top: 6.667dvw;
  padding-bottom: 4dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .label {
  position: absolute;
  left: 0;
  top: -4.8dvw;
  background-color: #EC6800;
  color: #fff;
  border-radius: 9999px;
  border-bottom-right-radius: 0;
  font-size: 4dvw;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding-top: 1.6dvw;
  padding-bottom: 1.6dvw;
  padding-left: 3.2dvw;
  padding-right: 4.533dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .badge {
  position: absolute;
  top: -6.667dvw;
  right: 1.867dvw;
  aspect-ratio: 1/1;
  width: 12dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .img {
  width: 40dvw;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.667dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .subject {
  text-align: center;
  color: #EC6800;
  font-size: 4.267dvw;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 1.42;
  margin-bottom: 1.867dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .summary {
  font-weight: 400;
  font-size: 3.733dvw;
  line-height: 1.5;
  padding-left: 2.4dvw;
  padding-right: 2.4dvw;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.present {
  background-color: #FFEEEE;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.present .label {
  background-color: #FA4F4F;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.present .subject {
  color: #FA4F4F;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.present::after {
  background-color: #FA4F4F;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.event {
  background-color: #EAF6E0;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.event .label {
  background-color: #54B502;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.event .subject {
  color: #54B502;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.event::after {
  background-color: #54B502;
}
.nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.link:after {
  content: "";
  position: absolute;
  right: 1.333dvw;
  bottom: 1.333dvw;
  aspect-ratio: 1/1;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  width: 2.667dvw;
}
.nextocdetail.oc2025 .nxoc__nav a {
  justify-content: flex-start;
  background-repeat: no-repeat;
  background-position: top center;
}
.nextocdetail.oc2025 .nxoc__nav a .nxoc__navlabel {
  font-weight: 500;
}
.nextocdetail.oc2025 .nxoc__nav a.program {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-navbg-program.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.program::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-arrow-program.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.program .nxoc__navlabel::first-letter {
  color: #FA4F4F;
}
.nextocdetail.oc2025 .nxoc__nav a.support {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-navbg-support.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.support::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-arrow-support.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.support:hover .nxoc__navlabel {
  color: #54B502;
}
.nextocdetail.oc2025 .nxoc__nav a.support .nxoc__navlabel::first-letter {
  color: #54B502;
}
.nextocdetail.oc2025 .nxoc__nav a.question {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-navbg-question.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.question::after {
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/2025oc-parts/nxoc2025-arrow-question.svg);
}
.nextocdetail.oc2025 .nxoc__nav a.question:hover .nxoc__navlabel {
  color: #5F95FF;
}
.nextocdetail.oc2025 .nxoc__nav a.question .nxoc__navlabel::first-letter {
  color: #5F95FF;
}
.nextocdetail.oc2025 #nxocprogram .nxoc__secsubject {
  font-weight: 500;
}
.nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__freeprogslead {
  text-align: center;
}
.nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__progfreeprogs .nxoc__progsublead {
  background: linear-gradient(to right, #2480D2 50%, #fff);
  color: #fff;
  padding-right: 20%;
}
.nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__progfreeprogs .nxoc__progsublead2 {
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #0361B4;
}
.nextocdetail.oc2025 #nxocsupport .nxoc__supportitem {
  border-color: #F3CDDE;
}
.nextocdetail.oc2025 #nxocquestion .nxoc__questionsummary {
  background-color: #E7EFFF;
}
.nextocdetail.oc2025 #nxocquestion .nxoc__questionsummary::before {
  color: #5F95FF;
}
.nextocdetail.oc2025 #nxocquestion .nxoc__specialitemlead {
  padding-left: 0;
}
.nextocdetail.oc2025 #nxocquestion .nxoc__specialitemimg {
  flex-shrink: 0;
}
.nextocdetail.oc2025 .nxoc__opt {
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
}
.nextocdetail.oc2025 .nxoc__opt .opt__head {
  display: flex;
  justify-content: center;
  align-items: end;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.25;
  font-size: 1.667dvw;
  margin-bottom: 1.042dvw;
  gap: 1.25dvw;
}
.nextocdetail.oc2025 .nxoc__opt .opt__head::before, .nextocdetail.oc2025 .nxoc__opt .opt__head::after {
  content: "";
  aspect-ratio: 3/66;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-catch.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 0.156dvw;
  height: 3.438dvw;
}
.nextocdetail.oc2025 .nxoc__opt .opt__head::before {
  rotate: 150deg;
}
.nextocdetail.oc2025 .nxoc__opt .opt__head::after {
  rotate: 30deg;
}
.nextocdetail.oc2025 .nxoc__opt .opt__head em {
  color: #EB6DA5;
}
.nextocdetail.oc2025 .nxoc__opt .opt__links {
  display: flex;
  justify-content: center;
  gap: 1.823dvw;
}
.nextocdetail.oc2025 .nxoc__opt .opt__links a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 1px solid #F3CDDE;
  border-radius: 0.521dvw;
  width: 18.229dvw;
  height: 5.208dvw;
  box-shadow: 0.26dvw 0.26dvw #F3CDDE;
  color: #EB6DA5;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  padding-right: 1.042dvw;
}
.nextocdetail.oc2025 .nxoc__opt .opt__links a em {
  font-size: 1.563dvw;
  line-height: 1.5;
}
.nextocdetail.oc2025 .nxoc__opt .opt__links a small {
  line-height: 1.5;
  font-size: 0.625dvw;
}
.nextocdetail.oc2025 .nxoc__opt .opt__links a::after {
  content: "";
  aspect-ratio: 1/1;
  background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-arrow-next.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0.833dvw;
  right: 1.302dvw;
}
@media screen and (min-width: 768px), (min-width: 897px) and (orientation: landscape) {
  .nextocdetail.oc2025 .nxoc__toform img {
    position: absolute;
    bottom: 0;
    right: -0.208dvw;
    width: 13.646dvw;
    height: auto;
  }
  .nextocdetail.oc2025 .nxoc__mv {
    aspect-ratio: 1820/850;
    width: 100%;
    margin-bottom: 0;
    margin-top: 5.9375vw;
  }
  .nextocdetail.oc2025 .nxoc__lead {
    transform: translateY(-1.719dvw);
    font-size: 1.667dvw;
    line-height: 2.1;
    margin-bottom: 1.25dvw;
  }
  .nextocdetail.oc2025 .nxoc__lead span {
    background: linear-gradient(transparent 65%, #FFFF96 0%);
  }
  .nextocdetail.oc2025 .nxoc__lead .opt {
    margin-top: 0.781dvw;
    gap: 0.781dvw;
    line-height: 1.25;
  }
  .nextocdetail.oc2025 .nxoc__lead .opt em {
    border-width: 0.156dvw;
    border-radius: 0.521dvw;
    font-size: 1.667dvw;
    letter-spacing: 0.1em;
    padding-top: 0.208dvw;
    padding-bottom: 0.469dvw;
    padding-left: 1.563dvw;
    padding-right: 1.563dvw;
  }
  .nextocdetail.oc2025 .nxoc__lead + .nxocjoin {
    margin-bottom: 3.906dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor {
    margin-bottom: 5.469dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__head {
    font-size: 2.604dvw;
    margin-bottom: 3.385dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__items {
    display: flex;
    justify-content: center;
    gap: 1.042dvw;
    margin-top: 4.427dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item {
    width: 21.875dvw;
    padding-top: 2.604dvw;
    padding-bottom: 2.083dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .img {
    width: 15.625dvw;
    margin-bottom: 1.563dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .label {
    top: -1.302dvw;
    font-size: 1.25dvw;
    letter-spacing: 0.1em;
    padding-top: 0.417dvw;
    padding-bottom: 0.729dvw;
    padding-left: 1.302dvw;
    padding-right: 1.146dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .badge {
    top: -1.302dvw;
    right: 0.781dvw;
    width: 4.688dvw;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .subject {
    font-size: 1.25dvw;
    letter-spacing: 0.05em;
    margin-bottom: 0.729dvw;
    padding-left: 0;
    padding-right: 0;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item .summary {
    padding-left: 2.031dvw;
    padding-right: 2.135dvw;
    font-size: 0.938dvw;
    letter-spacing: 0.05em;
    line-height: 1.77;
  }
  .nextocdetail.oc2025 .nxoc__forvisitor .nxoc__forvisitor__item.link::after {
    right: 0.521dvw;
    bottom: 0.521dvw;
    width: 1.25dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubhead {
    color: #EB6DA5;
    font-size: 1.354dvw;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-top: 0.417dvw;
    margin-bottom: 0.99dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__access {
    width: 62.5dvw;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    gap: 2.604dvw;
    margin-bottom: 3.125dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__access .arrow-btn {
    margin-left: 0.365dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__accesscampus {
    width: 27.187dvw;
    padding-left: 4.167dvw;
    flex-shrink: 0;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__accessitem {
    padding-top: 1.094dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supports {
    gap: 1.042dvw 0.781dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportitem {
    padding-bottom: 3.281dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubject small {
    letter-spacing: 0.15em;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__questions {
    margin-bottom: 5.208dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__questionitem {
    margin-bottom: 1.563dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__questionanswertxt {
    padding-top: 0.729dvw;
  }
}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .nextocdetail.oc2025 .nxoc__mv {
    margin-top: 14.667dvw;
    margin-bottom: 0;
    aspect-ratio: 375/500;
    margin-bottom: 8dvw;
  }
  .nextocdetail.oc2025 .nxoc__lead {
    font-size: 4.8dvw;
    line-height: 1.7;
    margin-bottom: 8dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__head {
    line-height: 1.66;
    font-size: 4.8dvw;
    margin-bottom: 8dvw;
    gap: 8dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__head::before, .nextocdetail.oc2025 .nxoc__opt .opt__head::after {
    width: 0.8dvw;
    height: 17.6dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__head::before {
    rotate: 160deg;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__head::after {
    rotate: 20deg;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__links {
    flex-direction: column;
    align-items: center;
    gap: 4.267dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__links a {
    border-radius: 2.667dvw;
    width: 72dvw;
    height: 22.667dvw;
    box-shadow: 1.6dvw 1.6dvw #F3CDDE;
    color: #EB6DA5;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    padding-right: 6.4dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__links a em {
    font-size: 4.8dvw;
    line-height: 1.5;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__links a small {
    line-height: 1.5;
    font-size: 3.2dvw;
  }
  .nextocdetail.oc2025 .nxoc__opt .opt__links a::after {
    content: "";
    aspect-ratio: 1/1;
    background-image: url(https://nafu.ac.jp/themes/nafu/images/lp/oc20250823/nxoc250823-arrow-next.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3.733dvw;
    right: 2.133dvw;
  }
  .nextocdetail.oc2025 #nxocprogram .nxoc__secsubject {
    font-size: 5.333dvw;
  }
  .nextocdetail.oc2025 #nxocprogram .nxoc__secsubject::first-letter {
    font-size: 5.333dvw;
  }
  .nextocdetail.oc2025 #nxocprogram .nxoc__freeprogslead {
    text-align: center;
  }
  .nextocdetail.oc2025 #nxocprogram .nxoc__freeprogslead img {
    width: 64dvw;
    height: auto;
  }
  .nextocdetail.oc2025 #nxocprogram .nxoc__progfreeprogs {
    margin-bottom: 0;
  }
  .nextocdetail.oc2025 #nxocprogram .freeprogs {
    padding-top: 12.8dvw;
  }
  .nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__progfreeprogs {
    gap: 8dvw;
    height: auto;
    opacity: 1;
  }
  .nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__progsublead {
    padding-left: 3.733dvw;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail.oc2025 #nxocprogram .freeprogs .nxoc__progsublead2 {
    color: #54B502;
    font-size: 3.733dvw;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__access {
    width: 84dvw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 12dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__accesscampus {
    margin-bottom: 10.4dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubject {
    width: 66.667dvw;
    border-radius: 1.333dvw;
    font-size: 4.8dvw;
    color: #fff;
    padding-right: 8.533dvw;
    margin-bottom: 2.933dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubject.go, .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubject.back {
    width: 58.667dvw;
    padding: 2.133dvw 2.133dvw 2.133dvw 2.133dvw;
    font-size: 4.267dvw;
    letter-spacing: 0.05em;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsubhead {
    color: #EB6DA5;
    font-size: 4.24dvw;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-top: 2.933dvw;
    margin-bottom: 2.667dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportsummary {
    letter-spacing: 0;
    font-size: 3.733dvw;
    line-height: 1.83;
    margin-bottom: 6.667dvw;
  }
  .nextocdetail.oc2025 #nxocsupport .nxoc__supportitem {
    padding-top: 8.533dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__questions {
    margin-bottom: 13.333dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specials {
    width: 84dvw;
    border-width: 0.667dvw;
    padding: 0.533dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specials .nxoc__specialitemtxt {
    padding-top: 5.333dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specials .nxoc__specialitemsubject {
    width: 74.667dvw;
    height: 12dvw;
    border-top-right-radius: 2.667dvw;
    border-bottom-right-radius: 2.667dvw;
    padding-right: 0;
    padding-left: 0;
    font-size: 5.333dvw;
    margin-bottom: 5.333dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitem {
    gap: 8dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitem:first-of-type .nxoc__specialitemsubject {
    margin-bottom: 8dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitemlead {
    margin-left: 4dvw;
    font-size: 4.267dvw;
    margin-bottom: 1.333dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitempresent {
    margin-left: 2.667dvw;
    font-size: 5.333dvw;
    line-height: 1.5;
    padding-left: 1.333dvw;
    padding-bottom: 0.8dvw;
    border-bottom-width: 4px;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitempresent::after {
    height: 1px;
    bottom: 0.533dvw;
  }
  .nextocdetail.oc2025 #nxocquestion .nxoc__specialitemimg {
    width: 100%;
  }
}

#container .pagetop {
  height: 50px;
  width: 50px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  opacity: 0.8;
  z-index: 2;
}
#container .pagetop__arrow {
  height: 10px;
  width: 10px;
  border-top: 3px solid #5F95FF;
  border-right: 3px solid #5F95FF;
  transform: translateY(20%) rotate(-45deg);
}
#container .pagetop.active {
  bottom: 30px;
}
#container .pagetop:hover, #container .pagetop:hover .pagetop__arrow {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  #container .pagetop,
  #container .pagetop.active {
    bottom: 6rem;
    right: 2rem;
  }
}