@charset "UTF-8";
@import url('https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css');
@import url('https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap-grid.min.css');

:root {
  --link-color: #0861af;
  --footer_background-color: #f1f7e7;
  --footer_background-color-rgb: 241, 247, 231;
  --footer_under_background-color: #f2f5e8;
  --button-bg-color: #d5d8e9;
  --body: #3e3a39;
  --body_weaken: #707070;
  --star_mark: #ed8f7a;
  --h1_title: #0a5501;
  --h2_lead: #149604;
  --h2_parco: #795e39;
  --border-color: #ced5db;
  --button-bg-white: #fff;
  --accent-color: #1eba29;
  --accent-dark-color: #519648;
  --bg-gray: #eaf0f7;
  --bg-dark-gray: #a7a7a7;
  --fresh_green: #d5efaa;
  --button_green: #4aa73f;
  --point_bg: #ecf5e1;
  --change-size: 100/1370;
}

/*----- Google Fonts ----*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

br.rs_pause {
  display: none;
}

body {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  font-size: clamp(18px, 4.6153846154vw, 20px);
  line-height: 2em;
  color: var(--body);
  margin: 0;
  /*監修先生追加*/
  /* CSS Document */
  /*----- Q A リスト -----*/
  /* CSS Document */
}
/* @media (min-width: 1920px) {
  body {
    font-size: clamp(23.4px, 6vw, 26px);
  }
} */
body.is-active {
  /* overflow: hidden; */
  overflow-y: auto;
  overflow-x: hidden;
}
body #tmp_honbun,
body .readTxt {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  border: 0;
}
body h1 {
  color: var(--h1_title);
  font-size: clamp(26px, 6.6666666667vw, 32px);
  line-height: 1.3846153846em;
  margin: 1.09375em 0 1.5625em;
}
@media (min-width: 1920px) {
  body h1 {
    font-size: clamp(33.8px, 8.6666666667vw, 41.6px);
  }
}
@media (min-width: 640px) {
  body h1 {
    word-break: keep-all;
  }
}
body h2 {
  font-size: clamp(22px, 5.641025641vw, 24px);
}
@media (min-width: 1920px) {
  body h2 {
    font-size: clamp(28.6px, 7.3333333333vw, 31.2px);
  }
}
body a {
  color: var(--link-color);
  text-decoration: none;
}
body .news a:not(.readmore a) {
  color: var(--body);
  display: block;
}
body .news a:not(.readmore a):last-child {
  padding-bottom: 1.0714285714em;
}
body p {
  margin: 0;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
}
body ul,
body ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
body .gl_w {
  min-width: 1em;
  height: 1em;
  position: relative;
  display: inline-block;
  line-height: 1;
  margin-right: 0.05ex;
}
body .gl_w::before {
  content: "";
  width: 1em;
  height: 1em;
  display: inline-block;
  background: url(../img//common/star.svg) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.5px;
  left: 0;
}
body .gl_w::after {
  content: attr(data-num);
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  color: var(--star_mark);
  font-size: 1.05em;
  vertical-align: top;
  -webkit-margin-start: 1em;
  margin-inline-start: 1em;
}
body .gl_w_comment {
  padding-bottom: 2px;
  display: inline;
  border-bottom: 1px solid var(--star_mark);
  white-space: nowrap;
  line-break: after-white-space;
}
body .gl_w_comment:hover {
  cursor: pointer;
  border-bottom: 4px solid var(--star_mark);
}
body .data_source,
body .data_source p {
  word-break: keep-all;
  white-space: normal !important;
  line-break: normal;
}
body .screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
body hr.dots {
  border: none;
  outline: none;
  height: 4px;
  width: 100%;
  background: url("/-/media/NMOSDSource_jp/img/common/dot_M.svg");
  background-repeat: repeat-x;
  background-position: center;
  margin: 45px 0;
}
@media (min-width: 640px) {
  body hr.dots {
    margin: 100px 0;
  }
}
@media (min-width: 1920px) {
  body hr.dots {
    height: 5.2px;
  }
}
body .sec__inner {
  max-width: 970px;
  /* width: calc(100vw - 30px); */
  width: calc(100vw - 100px); /*current bug css */
  margin: 0 auto;
  padding-top: 20px;
}
@media (max-width: 639.98px) {
  body .sec__inner:not(div.sec__inner) {
    max-height: calc(100vh - 8em);
    overflow: scroll;
  }
}
@media (min-width: 1920px) {
  body .sec__inner {
    max-width: 1261px;
  }
}
body .icon--green, body .icon--brown {
  position: relative;
}
body .icon--brown {
  color: var(--body);
}
body .icon--green::before, body .icon--brown::before {
  position: absolute;
  top: 2px;
  left: 0;
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  border-radius: 100%;
  background-color: var(--accent-color);
}

@media (min-width: 1920px) {
  body .icon--green::before, body .icon--brown::before {
    top: 10.6px;
  }
}
body .icon--green::after, body .icon--brown::after {
  position: absolute;
  left: 4.5px;
  top: 7px;
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (min-width: 1920px) {
  body .icon--green::after, body .icon--brown::after {
    top: 16.1px;
  }
}

body .icon--brown::before {
  background-color: var(--h2_parco);
  left: auto;
  right: -26px;
  top: 5px;
  width: 20px;
  height: 20px;
}

@media (min-width: 1920px) {
  body .icon--brown::before {
    top: 10.6px;
  }
}
body .icon--brown::after {
  right: -18px;
  left: auto;
  top: 12px;
}
@media (min-width: 1920px) {
  body .icon--brown::after {
    top: 16.1px;
  }
}
/* body .icon--toggle {
  position: absolute;
  left: 0.5em;
  content: "";
  display: inline-block;
  width: 1.5333333333em;
  height: 1.5333333333em;
  border-radius: 100%;
  background-color: var(--link-color);
} */
@media (max-width: 768px) {
  body .icon--toggle {
    left: 0.7333333333em;
  }
}
@media (max-width: 639.98px) {
  body .icon--toggle {
    font-size: 0.8em;
    left: 1em;
    content: "";
    display: inline-block;
    width: 2.334em;
    height: 2.334em;
    border-radius: 100%;
    background-color: var(--link-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
/* body .icon--toggle::before {
  content: "";
  position: absolute;
  top: 0.7333333333em;
  left: 0.32em;
  width: 0.9333333333em;
  height: 0.1333333333em;
  background: #fff;
} */
/* @media (max-width: 639.98px) {
  body .icon--toggle::before {
    width: 0.9em;
    height: 0.15em;
    top: initial;
    left: initial;
  }
} */
/* body .icon--toggle::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 0.9333333333em;
  height: 0.1333333333em;
  background: currentColor;
  position: relative;
  left: 0.32em;
  top: 0.2em;
  top: 0.1133333333em;
} */
/* @media (max-width: 639.98px) {
  body .icon--toggle::after {
    width: 0.9em;
    height: 0.15em;
    top: initial;
    left: initial;
  }
} */
/* body .icon--toggle::before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: 0.35s ease-in-out;
  transition: 0.35s ease-in-out;
}
body .icon--toggle.is-active {
  background-color: var(--accent-color);
}
body .icon--toggle.is-active::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition: 0.35s ease-in-out;
  transition: 0.35s ease-in-out;
} */
body nav.sec__inner .icon--circle-arrow {
  position: absolute;
  left: 0.9333333333em;
  content: "";
  display: inline-block;
  width: 1.5333333333em;
  height: 1.5333333333em;
  border-radius: 100%;
  background-color: var(--link-color);
}
@media (max-width: 768px) {
  body nav.sec__inner .icon--circle-arrow {
    left: 0.7333333333em;
  }
}
@media (max-width: 639.98px) {
  body nav.sec__inner .icon--circle-arrow {
    font-size: 0.8em;
    left: 1em;
    content: "";
    display: inline-block;
    width: 2.334em;
    height: 2.334em;
    border-radius: 100%;
    background-color: var(--link-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
body nav.sec__inner .icon--circle-arrow::after {
  position: absolute;
  left: 0.35em;
  top: 0.45em;
  content: "";
  display: inline-block;
  width: 0.4666666667em;
  height: 0.4666666667em;
  border-top: 0.1333333333em solid #fff;
  border-right: 0.1333333333em solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (max-width: 639.98px) {
  body nav.sec__inner .icon--circle-arrow::after {
    font-size: 1em;
    left: 0.65em;
    top: 0.75em;
    content: "";
    display: inline-block;
    width: 0.6em;
    height: 0.6em;
    border-top: 0.2em solid #fff;
    border-right: 0.2em solid #fff;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}
body figure {
  margin: 1em auto;
  max-width: 300px;
}
body figure img {
  width: 300px;
  height: auto;
}
@media (min-width: 640px) {
  body figure {
    width: 100%;
    max-width: 800px;
  }
  body figure img {
    width: 100%;
  }
}
@media (min-width: 1920px) {
  body figure {
    max-width: 1040px;
  }
}
body figure figcaption {
  font-size: clamp(13px, 3.3333333333vw, 16px);
  text-align: right;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  margin-right: 0;
  margin-top: 1.2em;
  line-height: 1.5384615385;
}
@media (min-width: 640px) {
  body figure figcaption {
    margin-top: 2.5em;
  }
}
@media (min-width: 1131.3999999995px) {
  body figure figcaption {
    margin-right: calc((70.7213578501vw - 800px) / -2);
  }
}
@media (min-width: 1280px) {
  body figure figcaption {
    margin-right: -85px;
  }
}
@media (min-width: 1920px) {
  body figure figcaption {
    font-size: clamp(16.9px, 4.3333333333vw, 20.8px);
  }
}
body figure figcaption p {
  line-break: after-white-space;
}
body figure figcaption p:not(.left) {
  white-space: nowrap;
}
@-moz-document url-prefix() {
  body figure figcaption p:not(.left) {
    white-space: initial;
  }
}
body figure figcaption p:not(:first-child) {
  margin-top: 0.75em;
}
body figure figcaption p.left {
  text-align: left;
  white-space: normal;
}
body figure nav ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
  -webkit-justify-content: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 1.5em;
}
@media (min-width: 640px) {
  body figure nav ul {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
body figure nav ul li a {
  border-bottom: none !important;
  padding-left: 1.25em;
}
body figure nav ul li a.icon--green::before {
  top: 7px;
}
@media (min-width: 1920px) {
  body figure nav ul li a.icon--green::before {
    top: 12.1px;
  }
}
body figure nav ul li a.icon--green::after {
  top: 12px;
}
@media (min-width: 1920px) {
  body figure nav ul li a.icon--green::after {
    top: 17.6px;
  }
}
body .teacher, body .doctor {
  max-width: 970px;
  font-size: 0.9em;
  line-height: 1.5em;
  padding-bottom: 0.9em;
  margin: auto;
  padding-top:20px;
}
@media (max-width: 970px) {
  body .teacher, body .doctor {
    font-size: 0.7em;
    padding-bottom: 1.4em;
    padding-left: 1em;
	padding-top:20px;
  }
}
@media (min-width: 1920px) {
  body .teacher, body .doctor {
    font-size: 20px;
    line-height: 2em;
    max-width: 1260px;
	padding-top:20px;
  }
}
body .teacher .br-sp, body .doctor .br-sp {
  display: block;
}
@media (min-width: 641px) {
  body .teacher .br-sp, body .doctor .br-sp {
    display: none;
  }
}
body .teacher span, body .doctor span {
  font-weight: bold;
}
body .teacher.teacher-right, body .doctor.teacher-right {
  text-align: right;
}
body .banner_area {
  background-color: #f6f6f6;
  padding: 1px;
}
body .banner_area .banner_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 56px auto;
  width: calc(100vw - 30px);
}
@media (max-width: 639.98px) {
  body .banner_area .banner_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 1em;
  }
}
body .banner_area .banner_list > li {
  width: 30%;
}
@media (max-width: 639.98px) {
  body .banner_area .banner_list > li {
    width: 100%;
    text-align: center;
  }
}
body .banner_area .banner_list > li img {
  width: 100%;
  max-width: 294px;
}
@media (max-width: 1279.8px) {
  body .banner_area .banner_list {
    min-width: 350px;
    max-width: 70.7213578501vw;
  }
}
@media (min-width: 1280px) {
  body .banner_area .banner_list {
    max-width: 1062px;
  }
}
@media (min-width: 1920px) {
  body .banner_area .banner_list {
    max-width: 1261px;
  }
}
body .header__logo {
  display: inline-block;
  line-height: 1;
}
@media (max-width: 639.98px) {
  body .header__logo {
    padding-top: 20px;
  }
}
@media (min-width: 640px) {
  body .header__logo {
    padding-top: 23px;
  }
}
body .header__msg {
  line-height: 1;
}
@media (max-width: 639.98px) {
  body .header__msg {
    margin-top: -5px;
  }
}
@media (min-width: 640px) {
  body .header__msg {
    margin-top: -9px;
  }
}
body .header__msg img {
  vertical-align: middle;
}
body .header__under {
  position: relative;
  background: white;
  padding-top: 10px;
  padding-bottom: 8px;
}
body #toppage_contents .header__under {
  /* background: var(--bg-gray); */
  background: var(--button-bg-white) 0% 0% no-repeat padding-box;
}
/* body .header__under::after {
  position: absolute;
  bottom: -5px;
  display: block;
  content: "";
  width: 100%;
  height: 6px;
  background: url("/-/media/NMOSDSource_jp/img/common/dot_L.svg") repeat-x;
} */
body #toppage_contents .header__under::after {
  background: none;
}
@media (max-width: 639.98px) {
  body .header__under::after {
    bottom: auto;
    top: -5px;
  }
}
@media (max-width: 639.98px) {
  body .header__under {
    display: none;
    padding-top: 1.4em;
    padding-bottom: 1.4em;
    -webkit-animation-name: fadeDownAnime;
            animation-name: fadeDownAnime;
    -webkit-animation-duration: 0.5s;
            animation-duration: 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    opacity: 0;
  }
  body .header__under.is-active {
    display: block;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    position: absolute;
    width: 100vw;
    height: calc(100vh + 30px);
    height: calc(100dvh + 30px);
    z-index: 500;
  }
  @-webkit-keyframes fadeDownAnime {
    from {
      opacity: 0;
      -webkit-transform: translateY(-30px);
              transform: translateY(-30px);
    }
    to {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
  @keyframes fadeDownAnime {
    from {
      opacity: 0;
      -webkit-transform: translateY(-30px);
              transform: translateY(-30px);
    }
    to {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
}
body .header__nav--sp {
  display: none;
}
@media (max-width: 639.98px) {
  body .header__nav--sp {
    position: absolute;
    display: block;
    top: 20px;
    right: 15px;
    background-color: transparent;
    cursor: pointer;
    width: 4em;
    height: 4em;
    padding: 0.5em;
    border: 1px solid var(--link-color);
    border-radius: 6px;
    text-indent: -15em;
    overflow: hidden;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp__line {
    display: inline-block;
    width: 55%;
    height: 2px;
    background-color: var(--link-color);
    position: absolute;
    left: 0.9em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp__line:nth-child(1) {
    top: 0.9em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp__line:nth-child(2) {
    top: 1.9em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp__line:nth-child(3) {
    top: 2.9em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp.is-active .header__nav--sp__line:nth-child(1) {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 1.9em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp.is-active .header__nav--sp__line:nth-child(2) {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
}
@media (max-width: 639.98px) {
  body .header__nav--sp.is-active .header__nav--sp__line:nth-child(3) {
    opacity: 0;
  }
}
body .header__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media (min-width: 640.2px) {
  body .header__nav {
    z-index: 10000;
    position: relative;
  }
}
@media (max-width: 639.98px) {
  body .header__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 5em;
  }
}
body .header__nav > li {
  width: 24%;
}
@media (min-width: 640px) {
  body .header__nav > li:not(:last-child) {
    margin-right: 1.4%;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li {
    width: 100%;
  }
}
body .header__nav > li > a {
  position: relative;
  /* border: 2px solid var(--border-color);
  border-radius: 10px;
  border-top-left-radius: 45px;
  border-bottom-left-radius: 45px;
  background: var(--button-bg-white); */
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--body);
  font-weight: 600;
  padding: 11px 0;
  letter-spacing: 0.2px;
  line-height: 1;
  font-size: 0.75em;
}
@media (max-width: 639.98px) {
  body .header__nav > li > a {
    font-size: clamp(18px, 4.6153846154vw, 20px);
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 1.2em 0;
    height: 78px;
  }
}
@media (min-width: 640px) {
  body .header__nav > li > a:hover {
    border: 2px solid var(--accent-color);
  }
}
@media (min-width: 640px) and (max-width: 767.98px) {
  body .header__nav > li > a {
    height: 46px;
    padding: 11px 0 9px;
  }
}
@media (min-width: 768px) {
  body .header__nav > li > a {
    padding-left: 26px;
  }
}
@media (min-width: 640px) and (max-width: 939.98px) {
  body .header__nav > li > a {
    font-size: 0.58em;
    height: 1.488em;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
}
@media (min-width: 940px) {
  body .header__nav > li > a {
    height: 2.858em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 1920px) {
  body .header__nav > li > a {
    padding: 14.3px 0;
    letter-spacing: 0.26px;
  }
}
body .header__nav > li:nth-child(1) .header__nav_detail .header__nav__sec.close {
  margin-left: 0;
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(1) .header__nav_detail .header__nav__sec.close {
    width: 592px;
  }
}
@media (min-width: 800px) {
  body .header__nav > li:nth-child(1) .header__nav_detail .header__nav__sec.close {
    width: 718px;
  }
}
@media (min-width: 1920px) {
  body .header__nav > li:nth-child(1) .header__nav_detail .header__nav__sec.close {
    width: 910px;
  }
}
body .header__nav > li:nth-child(1) .header__nav_detail .sec__inner {
  margin-left: 0;
}
body .header__nav > li:nth-child(1) .header__nav_detail .sec__inner::before {
  left: 4em;
}
body .header__nav > li:nth-child(1) > a {
  padding-left: 28px;
}
@media (max-width: 767.98px) {
  body .header__nav > li:nth-child(1) > a {
    padding-left: 20px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li:nth-child(1) > a {
    padding-left: 3.8em;
  }
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .header__nav__sec.close {
    margin-left: 25.4%;
  }
}
@media (min-width: 640px) and (min-width: 640px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .header__nav__sec.close {
    width: 316px;
  }
}
@media (min-width: 640px) and (min-width: 800px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .header__nav__sec.close {
    width: 382px;
  }
}
@media (min-width: 640px) and (min-width: 1920px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .header__nav__sec.close {
    width: 486px;
  }
}
/* @media (min-width: 640px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .sec__inner {
    margin-left: 25.4%;
  }
  body .header__nav > li:nth-child(2) .header__nav_detail .sec__inner::before {
    left: 4em;
  }
} */
@media (min-width: 640px) {
  body .header__nav > li:nth-child(2) .header__nav_detail .sec__inner::before {
    left: 25em;
  }
}
body .header__nav > li:nth-child(2) > a {
  padding-left: 28px;
}
@media (max-width: 767.98px) {
  body .header__nav > li:nth-child(2) > a {
    padding-left: 50px;
    padding-right: 25px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li:nth-child(2) > a {
    padding-left: 3.8em;
  }
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .header__nav__sec.close {
    margin-right: 0;
  }
}
@media (min-width: 640px) and (min-width: 640px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .header__nav__sec.close {
    width: 592px;
  }
}
@media (min-width: 640px) and (min-width: 800px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .header__nav__sec.close {
    width: 718px;
  }
}
@media (min-width: 640px) and (min-width: 1920px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .header__nav__sec.close {
    width: 910px;
  }
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .sec__inner {
    margin-right: 0;
    margin-left: auto;
  }
}
@media (min-width: 640px) and (max-width: 999.98px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .sec__inner::before {
    right: calc((100vw - 30px - (100vw - 30px) * 0.014 * 3) / 2 - 4em - 26px - (100vw - 30px) * 0.014 * 0.667);
  }
}
@media (min-width: 640px) and (min-width: 1000px) {
  body .header__nav > li:nth-child(3) .header__nav_detail .sec__inner::before {
    right: calc(464.63px - 4em - 26px - 9.05786px);
  }
}
body .header__nav > li:nth-child(3) > a {
  padding-left: 18px;
}
@media (max-width: 767.98px) {
  body .header__nav > li:nth-child(3) > a {
    padding-left: 24px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li:nth-child(3) > a {
    padding-left: 3.8em;
  }
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .header__nav__sec.close {
    margin-right: 0;
  }
}
@media (min-width: 640px) and (min-width: 640px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .header__nav__sec.close {
    width: 592px;
  }
}
@media (min-width: 640px) and (min-width: 800px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .header__nav__sec.close {
    width: 718px;
  }
}
@media (min-width: 640px) and (min-width: 1920px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .header__nav__sec.close {
    width: 910px;
  }
}
@media (min-width: 640px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .sec__inner {
    margin-right: 0;
    margin-left: auto;
  }
}
@media (min-width: 640px) and (max-width: 999.98px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .sec__inner::before {
    right: calc((100vw - 30px - (100vw - 30px) * 0.014 * 3) / 4 - 4em - 26px);
  }
}
@media (min-width: 640px) and (min-width: 1000px) {
  body .header__nav > li:nth-child(4) .header__nav_detail .sec__inner::before {
    right: calc(232.315px - 4em - 26px);
  }
}
body .header__nav > li:nth-child(4) > a {
  padding-left: 18px;
}
@media (max-width: 767.98px) {
  body .header__nav > li:nth-child(4) > a {
    padding-left: 24px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li:nth-child(4) > a {
    padding-left: 3.8em;
  }
}
@media (max-width: 639.98px) {
  body .header__nav > li + li {
    margin-top: 1em;
  }
}
body .header__nav__sec .navHeader {
  font-size: 1.25em;
  font-weight: 600;
  line-height: 43px;
  border-bottom: 1px solid var(--body_weaken);
  padding-left: 0.25em;
}
body .header__nav__sec.close {
  visibility: hidden;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 639.98px) {
  body .header__nav__sec.close {
    display: none;
  }
}
body .header__nav__sec.close a {
  color: var(--link-color);
  background-color: white;
  border-radius: 30px;
  display: inline-block;
  width: 13em;
  margin-top: 1em;
  text-align: center;
}
/* body .header__em {
  position: relative;
  top: -1px;
  font-size: 1.125em;
}
@media (max-width: 940px) {
  body .header__em {
    font-size: 1.0625em;
    word-break: keep-all;
    display: inline-block;
    line-height: 1.4;
  }
}
@media (max-width: 639.98px) {
  body .header__em {
    font-size: clamp(22px, 5.641025641vw, 20px);
  }
} */
body .header__nav_detail {
  width: 100%;
  min-height: 10em;
  padding: 1em 0 1.5em 0;
  color: var(--body);
  font-size: 14px;
  position: absolute;
  left: 0;
  z-index: 1;
  line-height: 0;
  visibility: hidden;
  -webkit-box-shadow: 0px 3px 4px rgba(200, 200, 200, 0.5);
          box-shadow: 0px 3px 4px rgba(200, 200, 200, 0.5);
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav_detail {
    font-size: 12px;
  }
}
@media (min-width: 640px) {
  body .header__nav_detail.is-active {
    -webkit-transition: visibility 0.35s ease-in-out, opacity 0.15s ease-in-out, line-height 0.25s ease-out;
    transition: visibility 0.35s ease-in-out, opacity 0.15s ease-in-out, line-height 0.25s ease-out;
  }
}
@media (max-width: 639.98px) {
  body .header__nav_detail {
    line-height: 2;
  }
}
body .header__nav_detail a {
  color: inherit;
}
body .header__nav_detail a img {
  width: 100%;
}
@media (max-width: 639.98px) {
  body .header__nav_detail a {
    display: block;
    padding: 1em 0 1em 2.5em;
  }
}
body .header__nav_detail a.present_location {
  font-weight: bold;
  pointer-events: none;
}
@media (max-width: 639.98px) {
  body .header__nav_detail a.present_location {
    background-color: white;
    color: var(--h2_parco);
  }
}
/* @media (min-width: 640px) {
  body .header__nav_detail a.present_location {
    background-color: var(--footer_background-color);
    border-bottom: 4px solid var(--accent-color);
  }
} */
@media (min-width: 640px) {
  body .header__nav_detail a {
    line-height: 3em;
  }
}
body .header__nav_detail .sec__inner {
  padding: 0em 0em;
}
@media (min-width: 640px) {
  body .header__nav_detail .sec__inner {
    visibility: hidden;
    /* -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox; */
    display: flex;
    flex-direction: column;
    /* -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; */
    background-color: #ffffff;
    /* border: solid 2px #003c71; */
    border: solid 2px #149604;
    color: var(--body);
    font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
    border-radius: 11px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
    margin: 0;
    /* max-height: calc(100vh - 147.88px - 98px); */
    max-height: 442px;
    /* padding: 2.5em 1em 4em 3em; */
    width: 100%;
  }
  body .header__nav_detail .sec__inner::before {
    content: "";
    border-bottom-color: transparent;
    background: url(/-/media/NMOSDSource_jp/img/common/global-nav-frame-arrow.png) no-repeat;
    width: 26px;
    height: 18px;
    background-size: contain;
    position: absolute;
    top: -12px;
  }
}
@media (min-width: 1920px) {
  body .header__nav_detail .sec__inner {
    /* max-height: calc(100vh - 159px - 108px); */
    max-height: 100%;
  }
}
@media (max-width: 639.98px) {
  body .header__nav_detail .sec__inner {
    width: 100%;
    max-height: 100%;
  }
}
@media (min-width: 640px) {
  body .header__nav_detail .sec__inner .header_scroll {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding-right: 2em;
  }
}
@media (min-width: 640px) and (max-height: 690px) {
  body .header__nav_detail .sec__inner .header_scroll {
    overflow-y: scroll;
    overflow-x: hidden;
    scrollbar-color: var(--link-color) #ccc;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar {
    width: 12px;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar-track {
    background-color: #ccc;
    border-radius: 100px;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar-thumb {
    background-color: var(--link-color);
    border-radius: 100px;
  }
}
@media (min-width: 1920px) and (max-height: 810px) {
  body .header__nav_detail .sec__inner .header_scroll {
    overflow-y: scroll;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar {
    width: 15.6px;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar-track {
    background-color: #ccc;
    border-radius: 100px;
  }
  body .header__nav_detail .sec__inner .header_scroll::-webkit-scrollbar-thumb {
    background-color: var(--link-color);
    border-radius: 100px;
  }
}
body .header__nav_detail.is-active {
  line-height: 2;
  -webkit-transition: visibility 0.35s ease-in-out, opacity 0.15s ease-in-out, line-height 0.25s ease-out;
  transition: visibility 0.35s ease-in-out, opacity 0.15s ease-in-out, line-height 0.25s ease-out;
}
@media (max-width: 639.98px) {
  body .header__nav_detail.is-active {
    position: relative;
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 1em 0.5em;
    opacity: 1;
    visibility: visible;
  }
}
body .header__nav__title {
  padding-left: 0em;
}
@media (max-width: 800px) and (min-width: 640px) {
  body .header__nav__title {
    padding-left: 0em;
  }
}
@media (min-width: 640px) {
  body .header__nav__title {
    border-bottom: 1px solid var(--h2_lead);
    margin-left: 28px
  }
}
@media (max-width: 639.98px) {
  body .header__nav__list > li {
    border-top: 1px solid var(--body_weaken);
  }
}
@media (min-width: 640px) {
  body .header__nav__list {
    width: 21em;
  }
}
@media (max-width: 800px) and (min-width: 640px) {
  body .header__nav__list {
    width: 20em;
  }
}
@media (min-width: 1920px) {
  body .header__nav__list {
    width: 27.3em;
  }
}
body .header__nav__list a {
  position: relative;
  padding-left: 3em;
}
@media (max-width: 800px) and (min-width: 640px) {
  body .header__nav__list a {
    padding-left: 3.2em;
  }
}
body .header__nav__list a::before {
  position: absolute;
  left: 27px;
  top: 7px;
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-top: 2px solid var(--accent-color);
  border-right: 2px solid var(--accent-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (max-width: 639.98px) {
  body .header__nav__list a::before {
    top: 26px;
    left: 30px;
  }
}
@media (min-width: 640px) {
  body .header__nav__list a::before {
    top: 9px;
    left: 31px;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav__list a::before {
    top: 8px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__list a::before {
    top: 6.4px;
    left: 35.1px;
  }
}
@media (min-width: 640px) {
  body .header__nav__list a {
    width: 100%;
    display: inline-block;
    margin-top: 0em;
    /* border-bottom: 1px solid var(--body_weaken); */
  }
}
body .header__nav__inner {
  display: inline-block;
  vertical-align: top;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 639.98px) {
  body .header__nav__inner {
    width: 100%;
  }
}
@media (max-width: 639.98px) {
  body .header__nav__inner .icon--green::before {
    top: 20px;
    left: 14px;
  }
}
@media (min-width: 640px) {
  body .header__nav__inner .icon--green::before {
    top: 13px;
    left: 5px;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav__inner .icon--green::before {
    top: 10px;
    left: 5px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__inner .icon--green::before {
    top: 19.9px;
    left: 6.5px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav__inner .icon--green.two_line::before {
    top: 27px;
    left: 14px;
  }
}
@media (min-width: 640px) {
  body .header__nav__inner .icon--green.two_line::before {
    top: 26px;
    left: 5px;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav__inner .icon--green.two_line::before {
    top: 20px;
    left: 5px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__inner .icon--green.two_line::before {
    top: 34.9px;
    left: 6.5px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav__inner .icon--green::after {
    top: 25.7px;
    left: 18.5px;
  }
}
@media (min-width: 640px) {
  body .header__nav__inner .icon--green::after {
    top: 18px;
    left: 9.5px;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav__inner .icon--green::after {
    top: 15px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__inner .icon--green::after {
    top: 25.4px;
    left: 12.35px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav__inner .icon--green.two_line::after {
    top: 32.7px;
  }
}
@media (min-width: 640px) {
  body .header__nav__inner .icon--green.two_line::after {
    top: 31px;
    left: 9.5px;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  body .header__nav__inner .icon--green.two_line::after {
    top: 25px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__inner .icon--green.two_line::after {
    top: 40.4px;
    left: 12.35px;
  }
}
body .header__nav__inner .icon--green.two_line {
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media (min-width: 640px) {
  body .header__nav__inner .icon--green.two_line {
    padding-top: 1em;
  }
}
@media (min-width: 640px) {
  body header > .sec__inner {
    height: 87px;
  }
}
@media (max-width: 639.98px) {
  body header > .sec__inner {
    height: 94px;
  }
}
@media (max-width: 639.98px) {
  body .header__nav__inner + .header__nav__inner {
    margin-left: 0;
    border-top: 1px solid var(--body_weaken);
  }
}
@media (min-width: 640px) {
  body .header__nav__inner:nth-child(2) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-left: 3em;
  }
}
body .header__nav__sec + .header__nav__sec {
  margin-top: 1.5em;
}
@media (max-width: 639.98px) {
  body .header__nav__sec + .header__nav__sec {
    margin-top: 0;
    border-top: 1px solid var(--body_weaken);
  }
}
/* changes */
/* @media (min-width: 640px) {
  body .header__nav__sec {
    width: 16em;
  }
} */
@media (max-width: 800px) and (min-width: 640px) {
  body .header__nav__sec {
    width: 13em;
  }
}

@media (min-width: 1920px) {
  body .header__nav__sec {
    width: 27.3em;
  }
}
@media (min-width: 640px) {
  body .header__nav__sec a {
    width: 100%;
     display: flex; /* changes */
    justify-content: space-between;/* changes */
    align-items: center;/* changes */
    color: #149604;
    text-align: left;
    font: normal normal bold 18px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  body .header__nav__list > li a{
    height: 25px;
    text-align: left;
    font-size: 14px;
    font-family: Noto Sans JP;
    font-weight: bold;
    letter-spacing: 0px;
    color: #3E3838;
    opacity: 1;
    margin-top: 8px;
    padding-left: 48px;
  }
}
@media (min-width: 1920px) {
  body .header__nav__sec a {
    font-size: 1.3em;
  }
}
body #breadcrumbs {
  background-color: var(--bg-gray);
  font-size: 14px;
  line-height: 1;
  padding: 10px 1em;
  color: var(--body);
}
body #breadcrumbs > ol {
  width: 100%;
  display: inline;
}
@media (min-width: 640px) {
  body #breadcrumbs > ol {
    max-width: 970px;
    margin: 0 auto;
    display: block;
  }
}
@media (min-width: 1920px) {
  body #breadcrumbs > ol {
    max-width: 1261px;
  }
}
body #breadcrumbs > ol > li {
  line-height: 20px;
  display: inline;
}
@media (min-width: 1920px) {
  body #breadcrumbs > ol > li {
    line-height: 26px;
    font-size: 1.3em;
  }
}
body #breadcrumbs > ol > li::before {
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
  line-height: 18px;
}
body #breadcrumbs > ol > li:not(:first-child)::before {
  content: "\e5cc";
  display: inline-block;
  margin: 0 0.25em;
  padding: 2px 0 0;
  vertical-align: top;
}
@media (min-width: 1920px) {
  body #breadcrumbs > ol > li:not(:first-child)::before {
    padding: 5.5px 0 0;
    font-size: 1.3em;
  }
}
body #breadcrumbs > ol > li > a {
  display: inline;
  color: inherit;
}
@media (min-width: 640px) {
  body .background {
    display: none;
    width: 100%;
    height: 100vh;
    top: 55px;
    left: 0;
    position: absolute;
    z-index: 1;
    /* -webkit-backdrop-filter: blur(10px) brightness(90%);
    backdrop-filter: blur(10px) brightness(90%);
    background-color: rgba(var(--footer_background-color-rgb), 0.35);
    background: #FFFFFF; changes */
  }
}
@media (min-width: 940px) {
  body .background {
    top: 60px;
  }
}
@media (min-width: 1920px) {
  body .background {
    top: 70px;
  }
}
body footer {
  background: var(--footer_background-color);
  line-height: 1.54;
  padding-top: 45.96px;
  bottom: 0;
  width: 100%;
  border-top: 1px solid var(--accent-dark-color);
}
@media (min-width: 1920px) {
  body footer {
    line-height: 2.002;
  }
}
body footer .footer__inner {
  max-width: 1164px;
  width: calc(100vw - 30px);
  margin: 0 auto;
}
@media (max-width: 767px) {
  body footer .footer__inner {
    width: calc(100vw - 48px);
  }
}
@media (min-width: 1920px) {
  body footer .footer__inner {
    max-width: 1513.2px;
    width: 1937.16px;
  }
}
body footer .footer__logo {
  display: inline-block;
  padding-top: 20px;
}
@media (max-width: 767px) {
  body footer .footer__logo {
    padding-top: 10px;
    max-width: 310px;
    margin-inline: auto;
    display: block;
  }
}
body footer .footer__nav {
  margin-top: 38px;
  /*フッター部分ボタン*/
}
@media (max-width: 767px) {
  body footer .footer__nav {
    margin-top: 50px;
    max-width: 310px;
    margin-inline: auto;
  }
}
body footer .footer__nav a.icon--green {
  padding-left: 1.5em;
  display: inline-block;
}
@media (min-width: 768px) and (max-width: 1024px) {
  body footer .footer__nav a.icon--green br {
    display: none;
  }
}
@media (max-width: 767px) {
  body footer .footer__nav__title {
    font-size: 1.1em;
    letter-spacing: 1px;
  }
}
@media (max-width: 767px) {
  body footer .footer__nav__title + .footer__nav__inner:first-of-type {
    margin-top: 0.8em;
  }
}
body footer .footer__nav__inner {
  margin-top: 0.6em;
}
body footer .footer__nav__inner p.sub {
  font-size: 15px;
  color: var(--body);
}
@media (min-width: 1920px) {
  body footer .footer__nav__inner p.sub {
    font-size: 19.5px;
  }
}
body footer .footer__nav__inner div + div {
  margin-top: 1em;
}
@media (max-width: 767px) {
  body footer .footer__nav__inner:first-of-type {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  body footer .footer__nav__inner .footer__nav__icon {
    padding-left: 1em;
  }
}
body footer .footer__nav__inner + .footer__nav__title {
  -webkit-margin-before: 1.9em;
          margin-block-start: 1.9em;
}
body footer .footer__nav__list.reha {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
body footer .footer__nav__list.reha li.wid_30 {
  width: 30%;
}
body footer .footer__nav__list a {
  position: relative;
}
body footer .footer__nav__list a::before {
  position: absolute;
  left: -1em;
  top: 7px;
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 2px solid var(--accent-color);
  border-right: 2px solid var(--accent-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (min-width: 1920px) {
  body footer .footer__nav__list a::before {
    top: 10px;
  }
}
body footer .footer__nav__icon a {
  position: relative;
  color: var(--body);
  padding-left: 1em;
}
@media (max-width: 767px) {
  body footer .footer__nav__icon a {
    font-size: 1.1em;
  }
}
body footer .footer__nav__icon a::before {
  position: absolute;
  left: 0;
  top: 9px;
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 3px solid var(--accent-color);
  border-right: 3px solid var(--accent-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (min-width: 1920px) {
  body footer .footer__nav__icon a::before {
    top: 13px;
  }
}
body footer .footer__nav .footer-btn {
  background-color: #fff;
  font-size: 0.8em;
  border-radius: 6px;
  border: 2px solid #367c79;
  text-align: center;
  margin: 3em auto;
  max-width: 310px;
}
body footer .footer__nav .footer-btn:hover {
  border: 2px solid #4aa73f;
  background: rgba(255, 255, 255, 0.5);
}
body footer .footer__nav .footer-btn a.btn-text {
  color: #367c79;
  padding: 1em 0.7em 1.1em;
  display: block;
}
body footer .footer__content {
  padding-bottom: 3.4em;
}
body footer .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media (max-width: 767px) {
  body footer .flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media (max-width: 767px) {
  body footer .flex nav {
    margin-top: 2.5em;
  }
}
body footer .flex nav:nth-child(1) {
  width: 52%;
}
@media (max-width: 1400px) {
  body footer .flex nav:nth-child(1) {
    width: 30%;
    margin-right: 25px;
  }
}
@media (max-width: 767px) {
  body footer .flex nav:nth-child(1) {
    width: auto;
    margin-top: 0;
  }
}
body footer .flex nav:nth-child(1) ul {
  padding-left: 2em;
}
body footer .flex nav:nth-child(2) ul.footer__nav__list {
  padding-left: 2em;
}
body footer .flex nav:nth-child(2), body footer .flex nav:nth-child(3), body footer .flex nav:nth-child(4) {
  width: 25%;
}
@media (max-width: 1400px) {
  body footer .flex nav:nth-child(2), body footer .flex nav:nth-child(3), body footer .flex nav:nth-child(4) {
    width: 30%;
  }
}
@media (max-width: 767px) {
  body footer .flex nav:nth-child(2), body footer .flex nav:nth-child(3), body footer .flex nav:nth-child(4) {
    width: auto;
  }
}
body footer .flex nav:nth-child(2) {
  margin-right: 25px;
}
body footer .flex nav .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: initial;
  -webkit-justify-content: initial;
      -ms-flex-pack: initial;
          justify-content: initial;
}
@media (max-width: 1400px) {
  body footer .flex nav .flex {
    display: block;
  }
}
body footer .flex nav .flex:nth-child(1) {
  margin-right: 25px;
}
body footer .flex nav p {
  font-weight: bold;
}
@media (max-width: 767px) {
  body footer .flex .flex nav {
    margin-top: 2.5em;
  }
}
body footer .flex .wid_37 {
  width: 37%;
  margin-right: 25px;
}
@media (max-width: 1400px) {
  body footer .flex .wid_37 {
    width: 100%;
  }
}
@media (min-width: 1920px) {
  body footer .flex .wid_37 {
    margin-right: 32.5px;
  }
}
body footer .flex .wid_50 {
  width: 50%;
  margin-right: 25px;
}
@media (max-width: 1400px) {
  body footer .flex .wid_50 {
    width: 100%;
  }
}
body footer .flex div a {
  font-size: 14px;
  color: var(--body);
}
@media (min-width: 1920px) {
  body footer .flex div a {
    font-size: 18.2px;
  }
}
body footer .footer__under {
  border-top: 1px solid var(--link-color);
  background-color: #f1f4f7;
}
@media (max-width: 767px) {
  body footer .footer__under {
    padding-bottom: 1em;
  }
}
body footer .footer__under small {
  font-size: 12px;
  display: block;
  text-align: right;
  position: relative;
  top: -2.5em;
  color: var(--body_weaken);
}
@media (max-width: 767px) {
  body footer .footer__under small {
    text-align: center;
    top: column-reverse;
    position: static;
    margin-top: 1.8em;
  }
}
@media (max-width: 767px) {
  body footer .footer__under__logo {
    margin-top: 1em;
  }
}
body footer .footer__under__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 18px;
}
@media (max-width: 767px) {
  body footer .footer__under__nav {
    padding-top: 11px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
body footer .footer__under__list {
  margin-left: 1.3em;
  font-size: 14px;
}
body footer .footer__under__list > li {
  display: inline-block;
  width: 6em;
}
@media (max-width: 767px) {
  body footer .footer__under__list > li {
    display: block;
  }
}
@media (max-width: 767px) {
  body footer .footer__under__list > li + li {
    margin-top: 0.6em;
  }
}
body footer .footer__under__list a {
  display: block;
  position: relative;
  color: var(--body);
  padding-left: 1em;
  z-index: 1;
}
body footer .footer__under__list a::before {
  position: absolute;
  left: 0;
  top: 6px;
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 2px solid var(--link-color);
  border-right: 2px solid var(--link-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (min-width: 1920px) {
  body footer .footer__under__list a::before {
    top: 10.8px;
  }
}
body footer .flex.vertical_line {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
body footer .flex.vertical_line nav {
  width: 100%;
}
body footer .flex.vertical_line nav:nth-child(1) p a {
  font-size: clamp(18px, 4.6153846154vw, 20px);
  font-weight: bold;
}
@media (min-width: 1920px) {
  body footer .flex.vertical_line nav:nth-child(1) p a {
    font-size: clamp(23.4px, 6vw, 26px);
  }
}
body footer .flex.vertical_line nav:nth-child(2) {
  margin-top: 50px;
}
body #toppage_contents .wrapper {
  padding: 2.2222222222em 5px 1.1666666667em;
  margin: auto;
  position: relative;
}
@media (min-width: 1280px) {
  body #toppage_contents .wrapper {
    width: 1177px;
    padding: 3.4444444444em 5px 3.0888888889em;
  }
}
@media (max-width: 1279.98px) {
  body #toppage_contents .kv {
    position: relative;
    padding-bottom: 4em;
  }
}
@media (min-width: 1280px) {
  body #toppage_contents .kv {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
body #toppage_contents .kv img {
  display: block;
  vertical-align: bottom;
  margin: 0 auto;
}
@media (min-width: 640px) {
  body #toppage_contents .kv picture:first-child {
    margin-top: 6.1277777778em;
  }
}
body #toppage_contents .kv picture img {
  max-width: 100%;
}
body #toppage_contents .kv picture + picture {
  display: block;
}
@media (max-width: 1279.8px) {
  body #toppage_contents .kv picture + picture {
    margin-top: 1.6111111111em;
    margin-left: auto;
    margin-right: auto;
    max-width: 90%;
  }
  body #toppage_contents .kv picture + picture img {
    width: 100%;
    max-width: 57.7367205543vw;
    height: auto;
  }
}
@media (max-width: 1279.8px) and (max-width: 647.8px) {
  body #toppage_contents .kv picture + picture img {
    max-width: 334px;
  }
}
body #toppage_contents .kv .kv_text .doctor {
  padding-top: 2em;
  line-height: 1.5;
  font-size: 0.7em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 1279.98px) {
  body #toppage_contents .kv .kv_text .doctor {
    position: absolute;
    z-index: 50;
    bottom: 0px;
    background: rgba(255, 255, 255, 0.4196078431);
    padding: 1em;
    margin-inline: 5%;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    border-top-right-radius: 1em;
  }
}
@media (max-width: 1279.98px) and (min-width: 640px) {
  body #toppage_contents .kv .kv_text .doctor {
    margin-inline: 20%;
  }
}
body #toppage_contents .kv .kv_text .doctor span {
  font-size: 1.15em;
}
body #toppage_contents .kv .kv_text .doctor span span {
  font-weight: 600;
}
body #toppage_contents .kv .kv_illust {
  position: relative;
}
@media (max-width: 1280px) and (min-width: 640px) {
  body #toppage_contents .kv .kv_illust {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
}
body #toppage_contents .kv .kv_illust picture:not(.rs_href picture) {
  display: block;
}
@media (max-width: 1279.8px) {
  body #toppage_contents .kv .kv_illust picture:not(.rs_href picture) {
    margin-top: 1.6111111111em;
  }
  body #toppage_contents .kv .kv_illust picture:not(.rs_href picture) img {
    width: 100%;
    max-width: 57.7367205543vw;
    height: auto;
  }
}
@media (max-width: 1279.8px) and (max-width: 647.8px) {
  body #toppage_contents .kv .kv_illust picture:not(.rs_href picture) img {
    max-width: 334px;
  }
}
body #toppage_contents .kv .kv_illust div:not(.speech_bubble) {
  position: absolute;
  right: 0;
  top: 20px;
  background-color: white;
  padding: 10px;
  border-radius: 14px;
}
@media (max-width: breakpoint-0.02px) {
  body #toppage_contents .kv .kv_illust div:not(.speech_bubble) {
    padding: 6px;
  }
}
body #toppage_contents .scroll {
  position: absolute;
  right: calc((100vw - 1177px) / 2 - 60px);
  margin-top: -80px;
  z-index: 1;
}
@media (max-width: 1279.8px) {
  body #toppage_contents .scroll {
    right: 7vw;
  }
}
@media (max-width: 639.8px) {
  body #toppage_contents .scroll {
    display: none;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents .scroll {
    right: 185.9615384615px;
  }
}
/* body #toppage_contents nav {
  background: var(--footer_background-color);
  padding: 24px 0;
} */
/* @media (min-width: 1280px) {
  body #toppage_contents nav ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
} */
/* body #toppage_contents nav ul li {
  position: relative;
  padding-left: 0;
}
@media (min-width: 1280px) {
  body #toppage_contents nav ul li {
    margin: 0 20px;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents nav ul li {
    margin: 0 26px;
  }
}
@media (max-width: 1279.8px) {
  body #toppage_contents nav ul li:not(:last-child) {
    margin-bottom: 20px;
  }
} */
/* body #toppage_contents nav ul li a {
  position: relative;
  border: 2px solid var(--border-color);
  border-radius: 10px;
  border-top-left-radius: 45px;
  border-bottom-left-radius: 45px;
  background: var(--button-bg-white);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--body);
  font-weight: 600;
  padding: 20px 5px 20px 55px;
  letter-spacing: 0.2px;
  line-height: 1;
  max-width: 314px;
  margin: auto;
} */
/* @media (min-width: 1920px) {
  body #toppage_contents nav ul li a {
    border-top-left-radius: 58.5px;
    border-bottom-left-radius: 58.5px;
  }
} */
/* @media (min-width: 1280px) {
  body #toppage_contents nav ul li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 255px;
    font-size: 19px;
    padding-top: 13px;
    padding-bottom: 13px;
  }
  body #toppage_contents nav ul li a .header__em {
    font-size: 1.3684210526em;
    margin-top: 7px;
  }
} */
/* @media (min-width: 1920px) {
  body #toppage_contents nav ul li a {
    width: 331.5px;
    font-size: 24.7px;
    padding-top: 16.9px;
    padding-bottom: 16.9px;
  }
} */
body #toppage_contents nav ul li a .icon--circle-arrow::before {
  position: absolute;
  left: 14px;
  top: 9px;
  content: "";
  display: inline-block;
  width: 23px;
  height: 23px;
  border-radius: 100%;
  background-color: var(--link-color);
}
@media (max-width: 1279.8px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::before {
    left: 20px;
    top: 14px;
    content: "";
    display: inline-block;
    width: 35px;
    height: 35px;
    border-radius: 100%;
    background-color: var(--link-color);
  }
}
@media (min-width: 1280px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::before {
    content: "";
    display: inline-block;
    width: 43px;
    height: 43px;
    border-radius: 100%;
    background-color: var(--link-color);
    top: 17px;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::before {
    width: 55.9px;
    height: 55.9px;
    top: 22.1px;
  }
}
body #toppage_contents nav ul li a .icon--circle-arrow::after {
  position: absolute;
  left: 19px;
  top: 16px;
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (max-width: 1279.8px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::after {
    left: 29px;
    top: 26px;
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}
@media (min-width: 1280px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::after {
    left: 25px;
    top: 31px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents nav ul li a .icon--circle-arrow::after {
    left: 28.75px;
    top: 40.3px;
    width: 15.6px;
    height: 15.6px;
    border-top: 3.9px solid #fff;
    border-right: 3.9px solid #fff;
  }
}
@media (min-width: 640px) {
  body #toppage_contents nav ul li a:hover {
    /* border: 2px solid var(--link-color); */
  }
}
body #toppage_contents h2.parco {
  color: var(--h2_parco);
  margin-top: 0;
  margin-bottom: 32px;
  position: relative;
  padding-left: 0.8636363636em;
  z-index: 0;
}
body #toppage_contents h2.parco:before {
  content: "";
  display: block;
  width: 1.3522727273em;
  height: 1.6027272727em;
  background: url("/-/media/NMOSDSource_jp/img/common/leaf.svg");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  z-index: -5;
  top: 0;
  left: 0;
}
body #toppage_contents .pageList {
  background-color: #eaf0f7;
  padding: 2.5em 0.8333333333em 3.1111111111em;
}
@media (max-width: 1279.8px) {
  body #toppage_contents .pageList div {
    min-width: 330px;
    max-width: 70.7213578501vw;
    margin-left: auto;
    margin-right: auto;
  }
  body #toppage_contents .pageList hr.dots {
    min-width: 330px;
    max-width: 70.7213578501vw;
    margin: 45px auto;
  }
}
@media (min-width: 1280px) {
  body #toppage_contents .pageList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  body #toppage_contents .pageList div {
    height: 300px;
    width: 450px;
  }
  body #toppage_contents .pageList hr.dots {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    width: 260px;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents .pageList div {
    height: 338px;
    width: 585px;
  }
  body #toppage_contents .pageList hr.dots {
    width: 338px;
  }
}
body #toppage_contents .pageList li,
body #toppage_contents .readmore {
  font-size: 18px;
  padding-left: 1.35em;
}
@media (min-width: 1920px) {
  body #toppage_contents .pageList li,
  body #toppage_contents .readmore {
    font-size: 23.4px;
  }
}
body #toppage_contents .pageList li a.icon--green,
body #toppage_contents .readmore a.icon--green {
  color: var(--body);
  font-weight: 400;
}
body #toppage_contents .pageList li a.icon--green::before,
body #toppage_contents .readmore a.icon--green::before {
  top: 6px;
  left: -1.35em;
}
@media (min-width: 1920px) {
  body #toppage_contents .pageList li a.icon--green::before,
  body #toppage_contents .readmore a.icon--green::before {
    top: 9.5px;
  }
}
body #toppage_contents .pageList li a.icon--green::after,
body #toppage_contents .readmore a.icon--green::after {
  top: 11px;
  left: -1.1em;
}
@media (min-width: 1920px) {
  body #toppage_contents .pageList li a.icon--green::after,
  body #toppage_contents .readmore a.icon--green::after {
    top: 14.3px;
    left: -1.15em;
  }
}
body #toppage_contents .banner {
  border: 3px solid #cce6a1;
  border-radius: 30px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  -webkit-margin-before: 4.2777777778em;
          margin-block-start: 4.2777777778em;
  overflow-x: hidden;
}
@media (max-width: 639.98px) {
  body #toppage_contents .banner {
    width: 360px;
  }
}
@media (min-width: 640px) {
  body #toppage_contents .banner {
    width: 70.7213578501vw;
    max-width: 1080px;
  }
}
body #toppage_contents .banner img.bannerTitle {
  width: 100%;
}
@media (min-width: 640px) {
  body #toppage_contents .banner img.bannerTitle {
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background: white;
  }
}
@media (min-width: 1024px) {
  body #toppage_contents .banner img.bannerTitle {
    max-width: 444px;
    width: 29.1371994342vw;
    height: 100%;
  }
}
@media (min-width: 1024px) {
  body #toppage_contents .banner.reha {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow-y: hidden;
  }
}
@media (min-width: 1024px) {
  body #toppage_contents .banner.reha .image img{
    background:#F7FEE0;
  }
}
body #toppage_contents .banner a[id^=readmore_] {
  display: block;
  margin-inline: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
}
body #toppage_contents .banner a[id^=readmore_] img {
  width: 284px;
  height: 58px;
}
body #toppage_contents .banner a#readmore_01 {
  margin-block: -4.4444444444em 1.5em;
}
@media (min-width: 640px) {
  body #toppage_contents .banner a#readmore_01 {
    display: none;
  }
}
body #toppage_contents .banner a#readmore_02 {
  -webkit-margin-after: 1.5555555556em;
          margin-block-end: 1.5555555556em;
}
@media (min-width: 1024px) {
  body #toppage_contents .banner a#readmore_02 {
    margin-inline: auto 2em;
  }
}
@media (min-width: 1024px) {
  body #toppage_contents .banner .detail {
    -webkit-padding-before: 1em;
            padding-block-start: 1em;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
body #toppage_contents .banner .detail p {
  padding-inline: 1.3333333333em;
  word-break: keep-all;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
}
@media (max-width: 1023.98px) {
  body #toppage_contents .banner .pc_banner {
    display: none;
  }
  body #toppage_contents .banner .sp_banner {
    position: relative;
  }
  body #toppage_contents .banner .sp_banner img {
    vertical-align: top;
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background: white;
  }
  body #toppage_contents .banner .sp_banner img.sp_banner_01 {
    height: 254px;
    background: #f5faec;
  }
  body #toppage_contents .banner .sp_banner img.sp_banner_02 {
    height: 167px;
  }
  body #toppage_contents .banner .sp_banner img.sp_banner_03 {
    height: 90px;
  }
  body #toppage_contents .banner .sp_banner img.sp_banner_04 {
    height: 407px;
  }
  body #toppage_contents .banner .sp_banner img.sp_banner_05 {
    height: 104px;
  }
  body #toppage_contents .banner .sp_banner img.sp_yoyaku {
    width: 110px;
    height: 110px;
    position: absolute;
    background: transparent;
    top: 222px;
    left: calc(50% + 56px);
    border-radius: 120px;
  }
}
@media (min-width: 1024px) {
  body #toppage_contents .banner .pc_banner {
    position: relative;
  }
  body #toppage_contents .banner .pc_banner img {
    vertical-align: top;
    background: white;
  }
  body #toppage_contents .banner .pc_banner img.pc_banner_01, body #toppage_contents .banner .pc_banner img.pc_banner_02, body #toppage_contents .banner .pc_banner img.pc_banner_03 {
    width: 100%;
    height: auto;
  }
  body #toppage_contents .banner .pc_banner .btnSet {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  body #toppage_contents .banner .sp_banner {
    display: none;
  }
}
body #toppage_contents div.news {
  padding: 3.6111111111em 0.8333333333em;
}
@media (min-width: 640px) {
  body #toppage_contents div.news {
    padding: 100px;
    padding-top: 0;
    max-width: 1080px;
    margin: auto;
  }
}
@media (min-width: 1920px) {
  body #toppage_contents div.news {
    padding: 130px;
    padding-top: 0;
    max-width: 1404px;
  }
}
body .news h2 {
  margin: 0 auto 1.2727272727em;
  width: 5em;
}
@media (min-width: 640px) {
  body .news h2 {
    margin-bottom: 70px;
  }
}
body .news ul.news {
  margin-bottom: 1.2727272727em;
  padding: 0;
}
@media (max-width: 1279.8px) {
  body .news ul.news {
    min-width: 330px;
    max-width: 70.7213578501vw;
    margin: 0 auto 70px;
  }
}
body .news ul.news li {
  font-size: clamp(14px, 3.5897435897vw, 16px);
  line-height: 1.2142857143;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.6071428571em;
  padding-left: 0 !important;
  padding-bottom: 1.0714285714em;
  margin-bottom: 1.0714285714em;
  border-bottom: var(--bg-dark-gray) 1px solid;
}
@media (max-width: 1279.8px) {
  body .news ul.news li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (min-width: 1280px) {
  body .news ul.news li {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1920px) {
  body .news ul.news li {
    font-size: clamp(18.2px, 4.6666666667vw, 20.8px);
    line-height: 1.5785714286;
    gap: 0.7892857143em;
    padding-bottom: 1.3928571429em;
  }
}
body .news ul.news li time {
  background: #e5d5bf;
  color: var(--h2_parco);
  padding: 5px 8px;
  height: calc(1em + 5px);
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
@media (max-width: 1279.8px) {
  body .news ul.news li time {
    width: 8em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 1920px) {
  body .news ul.news li time {
    padding: 6.5px 10.4px;
    height: calc(1.3em + 5px);
  }
}
body .news .readmore {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
body main {
  position: relative;
  margin: 45px auto 63.63px;
  width: calc(100vw - 30px);
}
@media (max-width: 1279.8px) {
  body main {
    min-width: 350px;
    max-width: 70.7213578501vw;
  }
}
@media (min-width: 1280px) {
  body main {
    max-width: 970px;
  }
}
@media (min-width: 1920px) {
  body main {
    max-width: 1261px;
  }
}
@media (min-width: 640px) {
  body main {
    margin: 50px auto 141.4px;
  }
}
body main.error_page_main {
  margin: 50px auto 90px;
}
@media (max-width: 1920px) and (min-width: 1400px) {
  body main.error_page_main {
    min-height: calc(100vh - 747.8px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
body main .error_page {
  white-space: nowrap;
  line-break: after-white-space;
}
@-moz-document url-prefix() {
  body main .error_page {
    white-space: initial;
  }
}
body main .error_page h1 {
  color: #696969;
  text-align: center;
  margin: 3em 0;
}
@media (max-width: 639.98px) {
  body main .error_page h1 {
    margin: 1.5em 0;
  }
}
body main .error_page p {
  text-align: center;
}
body main .error_page aside .next_content__list {
  display: block;
}
body main .error_page aside .next_content__list a[class^=icon--] {
  border-radius: 45px;
  margin: 6em auto;
}
@media (max-width: 639.98px) {
  body main .error_page aside .next_content__list a[class^=icon--] {
    margin: 4em auto;
  }
}
body main aside.comment {
  font-size: 0.7777777778em;
  color: var(--body_weaken);
  line-height: 1.5em;
}
body main aside.comment p {
  margin-bottom: 0.75em;
}
body main aside .next_content__title {
  text-align: center;
}
body main aside .next_content__title h2.parco {
  display: inline-block;
  margin: 0;
}
.next_content__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2em;
}
@media (max-width: 940px) {
  .next_content__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 940px) {
  .next_content__list li + li {
    margin-top: 1.5em;
  }
}
.next_content__list a {
  color: var(--link-color);
  display: inline-block;
  word-break: keep-all;
}
.next_content__list a[class^=icon--] {
  font-size: 0.8em;
  border: 2px solid var(--border-color);
  border-radius: 10px;
  line-height: 1.5em;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  height: 76px;
  width: 310px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (min-width: 1920px) {
  .next_content__list a[class^=icon--] {
    width: 403px;
  }
}
.next_content__list a[class^=icon--]:hover {
  border: 2px solid var(--link-color);
}
.next_content__list a span {
  width: 242px;
  text-align: center;
}
@media (min-width: 1920px) {
  .next_content__list a span {
    width: 314.6px;
  }
}
.next_content__list a.icon--prev {
  padding: 0.85em 1em 0.85em 1.25em;
  border-top-left-radius: 45px;
  border-bottom-left-radius: 45px;
}
.next_content__list a.icon--prev::before {
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
  content: "\e5e0";
  margin-right: 0.5em;
}
.next_content__list a.icon--next {
  padding: 0.85em 1.25em 0.85em 1em;
  border-top-right-radius: 45px;
  border-bottom-right-radius: 45px;
}
.next_content__list a.icon--next::after {
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
  content: "\e5e1";
  margin-left: 0.5em;
}
body main article a:not(.next_content__list li a):not(figure nav li a):not(.news a):not(.btn-block):not(.btn-block-double) {
  border-bottom: 1px solid;
  padding-bottom: 0;
}
body main article a:not(.next_content__list li a):not(figure nav li a):not(.news a):not(.btn-block):not(.btn-block-double):hover {
  border-bottom: 4px solid var(--link-color);
}
body main #lead h2 {
  color: var(--h2_lead);
  text-align: center;
  margin: 2.0454545455em 0 1.5909090909em;
}
@media (min-width: 640px) {
  body main #lead h2 {
    word-break: keep-all;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 940px) {
  body main #lead h2 {
    width: 77%;
  }
}
body main #lead h2.preWrap {
  word-break: keep-all;
}
body main .order__sec {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 639.98px) {
  body main .order__sec {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
body main .orderList {
  counter-reset: num 0;
  width: 49%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 639.98px) {
  body main .orderList {
    width: 100%;
  }
}
body main .orderList > li {
  position: relative;
  font-size: 16px;
  text-indent: -1.8em;
  margin-left: 2em;
  line-height: 1.6;
}
@media (min-width: 1920px) {
  body main .orderList > li {
    font-size: 20.8px;
    line-height: 2.08;
  }
}
body main .orderList > li::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  border-radius: 100%;
  background-color: var(--bg-dark-gray);
  position: relative;
  top: 5px;
  margin-right: 0.5em;
}
@media (min-width: 1920px) {
  body main .orderList > li::before {
    content: "";
    display: inline-block;
    width: 28.6px;
    height: 28.6px;
    border-radius: 100%;
    background-color: var(--bg-dark-gray);
  }
}
body main .orderList > li::after {
  position: absolute;
  left: 6px;
  top: 7px;
  line-height: 1;
  counter-increment: num;
  content: counter(num);
  color: #ffffff;
}
@media (min-width: 640px) {
  body main .orderList > li::after {
    top: 8px;
  }
}
@media (min-width: 1920px) {
  body main .orderList > li::after {
    top: 10.4px;
    left: 7.8px;
  }
}
body main .orderList > li .tippy-content {
  text-indent: 0;
}
body main .orderList > li + li {
  margin-top: 1em;
}
body main .orderList + .orderList {
  counter-reset: num 4;
}
@media (max-width: 639.98px) {
  body main .orderList + .orderList {
    margin-top: 1em;
  }
}
body main .orderList.width--full {
  width: 100%;
}
body main .orderList.font--normal > li {
  font-size: inherit;
}
body main .dotList dd {
  position: relative;
}
@media (min-width: 840.2px) {
  body main .dotList dd > p {
    width: calc(100% - 250px);
  }
}
@media (min-width: 1920px) {
  body main .dotList dd > p {
    width: calc(100% - 325px);
  }
}
body main .dotList dd figure {
  margin: 1em auto 0.5em;
}
@media (max-width: 840px) {
  body main .dotList dd figure {
    text-align: center;
  }
}
body main .dotList dd figure img {
  position: absolute;
  top: 0;
  max-width: 250px;
  right: 0;
}
@media (max-width: 840px) {
  body main .dotList dd figure img {
    position: relative;
  }
}
@media (min-width: 1920px) {
  body main .dotList dd figure img {
    max-width: 325px;
  }
}
@media (min-width: 840.2px) {
  body main .dotList dd figure.spinal__img--01 img {
    top: -2em;
  }
}
@media (min-width: 840.2px) {
  body main .dotList dd figure.spinal__img--02 img {
    top: -2em;
  }
}
@media (min-width: 840.2px) {
  body main .dotList dd figure.spinal__img--03 img {
    top: 2em;
  }
}
@media (min-width: 840.2px) {
  body main .dotList dd figure[class^=brain__img] {
    margin: 0;
    position: absolute;
    right: 0;
  }
  body main .dotList dd figure.brain__img--01 {
    top: 94px;
  }
}
@media (min-width: 840.2px) and (min-width: 1200.2px) {
  body main .dotList dd figure.brain__img--01 {
    top: 80px;
  }
}
@media (min-width: 840.2px) and (min-width: 1920px) {
  body main .dotList dd figure.brain__img--01 {
    top: 104px;
  }
}
@media (min-width: 840.2px) {
  body main .dotList dd figure.brain__img--02 {
    top: -80px;
  }
}
@media (min-width: 840.2px) and (min-width: 1920px) {
  body main .dotList dd figure.brain__img--02 {
    top: -104px;
  }
}
body main .dotList .read_more {
  margin-top: 0.75em;
  margin-left: 22px;
  text-align: left;
}
@media (max-width: 639.98px) {
  body main .dotList .read_more {
    margin-left: 24px;
  }
}
body main .dotList.icon--circle--right-green {
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  line-height: 1.5em;
}
@media (min-width: 840.2px) {
  body main .dotList.icon--circle--right-green {
    margin-top: 4vw;
    min-height: 500px;
  }
}
@media (min-width: 1200.2px) {
  body main .dotList.icon--circle--right-green {
    margin-top: 100px;
    min-height: 470px;
  }
}
@media (min-width: 1920px) {
  body main .dotList.icon--circle--right-green {
    min-height: 611px;
  }
}
body main .dotList.icon--circle--right-green dt {
  font-weight: bold;
  margin-bottom: 0.25em;
}
@media (min-width: 840.2px) {
  body main .dotList.icon--circle--right-green dt {
    max-width: calc(100% - 250px);
  }
}
body main .dotList.icon--circle--right-green dt dfn {
  font-style: normal;
  position: relative;
  padding-left: 1.5em;
  text-indent: -1.5em;
  display: inline-block;
}
body main .dotList.icon--circle--right-green dt dfn::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  border-radius: 100%;
  background-color: #d5efaa;
  margin-right: 0.5em;
  top: 3px;
  position: relative;
}
body main .dotList.icon--circle--right-green dt .dfn_detail {
  display: block;
  font-weight: normal;
  font-size: 15px;
  line-height: 1.4;
  padding-left: 2em;
}
body main .dotList.icon--circle--right-green dt + dt {
  margin-top: 1em;
}
body main .dotList.icon--circle--right-green dt:not(:first-child) {
  margin-top: 1em;
}
body main .dotList.icon--circle--right-green dd {
  margin-left: 1.5em;
}
body main .dotList.icon--circle--right-green dd .dd_description {
  font-size: 0.8em;
}
@media (min-width: 934px) {
  body main .dotList.icon--circle--right-green.bottom_gap:after {
    content: "";
    display: block;
    width: 100%;
    height: 6vw;
  }
}
@media (min-width: 934px) and (min-width: 1366px) {
  body main .dotList.icon--circle--right-green.bottom_gap:after {
    height: 82px;
  }
}
body main .dotList.icon--circle--right-green.text_only {
  min-height: auto;
}
body main ul.burette li:before {
  content: "●";
  margin-right: 0.75em;
  font-size: 0.4em;
  vertical-align: top;
}
body main ul.burette .bold {
  font-weight: 600;
}
body main .img--center {
  max-width: 830px;
}
@media (max-width: 639.98px) {
  body main .img--center {
    max-width: none;
  }
}
@media (min-width: 1920px) {
  body main .img--center {
    max-width: 1079px;
  }
}
@media (max-width: 639.98px) {
  body main .img--center img {
    width: 100%;
  }
}
body main .img--right {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 840px) {
  body main .img--right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (min-width: 840.2px) {
  body main .img--right p,
  body main .img--right .content--left {
    width: calc(100% - 250px - 1.25em);
  }
}
@media (min-width: 1920px) {
  body main .img--right p,
  body main .img--right .content--left {
    width: calc(100% - 325px - 1.25em);
  }
}
@media (min-width: 840.2px) {
  body main .img--right figure {
    width: 250px;
  }
}
@media (min-width: 1920px) {
  body main .img--right figure {
    width: 325px;
  }
}
@media (max-width: 840px) {
  body main .img--right figure {
    margin: 1em auto 0;
  }
}
@media (min-width: 840.2px) {
  body main .img--right figure {
    margin: 0;
  }
}
@media (min-width: 840.2px) {
  body main .img--right figure.exam__img--03 img, body main .img--right figure.exam__img--04 img {
    position: absolute;
  }
}
body main .img--right figure img {
  display: block;
  margin: auto;
}
@media (min-width: 640px) {
  body main .img--right figure img {
    max-width: 250px;
  }
}
@media (min-width: 1920px) {
  body main .img--right figure img {
    max-width: 325px;
  }
}
body main .img--right + h2.parco {
  margin-top: 1.5em;
}
@media (min-width: 840.2px) {
  body main #QandA.img--right figure img {
    position: -webkit-sticky;
    position: sticky;
    top: 1em;
  }
}
@media (max-width: 639.98px) {
  body main figure.img__list {
    max-width: none;
  }
}
@media (max-width: 639.98px) {
  body main figure.img__list img {
    width: 100%;
  }
}
body main .img__list--4 {
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 1131.1999999995px) {
  body main .img__list--4 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    max-width: 500px;
    margin: auto;
  }
}
@media (max-width: 1131.1999999995px) {
  body main .img__list--4 .image_set {
    width: 45%;
    margin-bottom: 1.5em;
  }
}
@media (min-width: 1132px) {
  body main .img__list--4 .image_set img {
    width: 185px;
  }
}
@media (min-width: 1920px) {
  body main .img__list--4 .image_set img {
    width: 210px;
  }
}
body main .image_description {
  text-align: center;
  line-height: 1.2;
}
body main h2.parco {
  color: var(--h2_parco);
  position: relative;
  padding-left: 0.8636363636em;
}
body main h2.parco:before {
  content: "";
  display: block;
  width: 1.3522727273em;
  height: 1.6027272727em;
  background: url("/-/media/NMOSDSource_jp/img/common/leaf.svg");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  z-index: -5;
  top: 0;
  left: 0;
}
body main .reference {
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  margin-bottom: 3.5em;
}
@media (max-width: 639.98px) {
  body main .reference {
    margin-bottom: 2.5em;
  }
}
body main .reference h3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-after: 0.25em;
          margin-block-end: 0.25em;
}
body main .reference h3 .capsl {
  font-size: 0.8547008547em;
  background: var(--footer_background-color);
  width: 6em;
  line-height: 1.75;
  height: 1.75;
  margin-right: 1em;
  font-weight: 500;
  text-align: center;
  border-radius: 20px;
}
body main .reference h3 .timeLog {
  font-size: 0.6837606838em;
  font-weight: 400;
}
body main .reference h3 .timeLog::before {
  content: "閲覧日:";
}
body main .reference .extarnal_list {
  padding-left: 1.1em;
}
body main .reference .extarnal_list > li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.6;
}
body main .reference .extarnal_list > li::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 1em;
  height: 1em;
  background: url(/-/media/NMOSDSource_jp/img/common/icon_external_link.png);
  background-repeat: no-repeat;
  background-size: cover;
  top: 15px;
  left: 0;
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
}
body main .read_more {
  text-align: right;
  font-size: clamp(18px, 4.6153846154vw, 20px);
}
@media (min-width: 1920px) {
  body main .read_more {
    font-size: clamp(23.4px, 6vw, 26px);
  }
}
body main .read_more a {
  color: var(--body);
}
body main .read_more a.icon--green::before {
  top: 6px;
  left: -25px;
  width: 20px;
  height: 20px;
}
@media (max-width: 639.98px) {
  body main .read_more a.icon--green::before {
    top: 4px;
  }
}
@media (min-width: 1920px) {
  body main .read_more a.icon--green::before {
    top: 7.8px;
    left: -32.5px;
    width: 26px;
    height: 26px;
  }
}
body main .read_more a.icon--green::after {
  left: -20px;
  top: 12px;
  width: 4px;
  height: 4px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
@media (max-width: 639.98px) {
  body main .read_more a.icon--green::after {
    top: 10px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}
@media (min-width: 1920px) {
  body main .read_more a.icon--green::after {
    left: -26px;
    top: 15.6px;
    width: 5.2px;
    height: 5.2px;
  }
}
body main .footnote {
  font-size: clamp(13px, 3.3333333333vw, 16px);
  text-align: right;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  margin-top: 1.2em;
  word-break: keep-all;
  line-height: 1.5384615385;
}
@media (min-width: 640px) {
  body main .footnote {
    margin-top: 2.5em;
  }
}
@media (min-width: 1920px) {
  body main .footnote {
    font-size: clamp(16.9px, 4.3333333333vw, 20.8px);
  }
}
@-moz-document url-prefix() {
  body main .footnote p {
    white-space: initial;
  }
}
body main .footnote p:not(:first-child) {
  margin-top: 0.5em;
}
body main .inclosure {
  border: 3px solid #21ba29;
  border-radius: 1em;
  font-size: 1.125rem;
  padding: 1.3em;
}
@media (min-width: 840.2px) {
  body main .inclosure {
    font-size: 1.25rem;
    padding: 1.75em 1.95em 1.75em 1.6em;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 66px;
  }
}
@media (min-width: 1920px) {
  body main .inclosure {
    font-size: 1.625rem;
  }
}
body main .inclosure h3 {
  color: var(--h2_parco);
  margin-top: 0;
  margin-bottom: 0.5em;
}
@media (min-width: 640px) {
  body main .inclosure h3 {
    font-size: 1em;
  }
}
body main .inclosure .note {
  font-size: 0.7em;
  line-height: 1.5384615385;
  word-break: keep-all;
}
@media (min-width: 640px) {
  body main .inclosure .note {
    font-size: 0.8em;
  }
}
body main .inclosure figure,
body main .inclosure img {
  width: 210px;
  vertical-align: bottom;
  margin-bottom: 0;
}
@media (min-width: 840.2px) {
  body main .inclosure figure,
  body main .inclosure img {
    width: 184px;
    margin: 0;
  }
}
body main .inclosure .download_button {
  margin-top: 1em;
  position: relative;
  line-height: 1.25;
}
body main .inclosure .download_button a {
  border-bottom: none;
  color: var(--body);
  padding-left: 1.5em;
  line-height: 1;
}
@media (max-width: 639.98px) {
  body main .inclosure .download_button a {
    line-height: 1.6;
  }
}
body main .inclosure .download_button a:hover {
  border-bottom: 2px solid #21ba29;
}
body main .inclosure .download_button a:before {
  width: 1.25em;
  height: 1.25em;
  content: "";
  display: block;
  background: url("../img/materials/icon_download.png") no-repeat;
  background-size: contain;
  left: 0;
  position: absolute;
  top: 0;
}
@media (max-width: 639.98px) {
  body main .inclosure .download_button a:before {
    top: 3px;
  }
}
body main .inclosure .download_button .sp_only {
  display: none;
}
@media (max-width: 639.98px) {
  body main .inclosure .download_button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 1em auto;
  }
  body main .inclosure .download_button .sp_only {
    display: block;
  }
}
body main .inclosure.width--full {
  display: block;
}
body main .inclosure.width--full figure,
body main .inclosure.width--full img {
  width: 100%;
  margin: auto;
  margin-top: inherit;
}
body main ul.exercise,
body .flex_download,
body main .flex_movie {
  margin-bottom: 2em;
}
body main ul.exercise h3,
body .flex_download h3,
body main .flex_movie h3 {
  color: var(--h2_parco);
  font-size: clamp(20px, 5.1282051282vw, 22px);
  border-bottom: solid 2px #d5efaa;
  margin-top: 1.5em;
}
@media (min-width: 1920px) {
  body main ul.exercise h3,
  body .flex_download h3,
  body main .flex_movie h3 {
    font-size: clamp(26px, 6.6666666667vw, 28.6px);
  }
  body .flex_download h3 {
    font-size: clamp(20px, 5.1282051282vw, 22px);
  }
}
@media (min-width: 1280px) {
  body main ul.exercise,
  body .flex_download,
  body main .flex_movie {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 2.5em;
  }
}
@media (min-width: 1280px) {
  body main ul.exercise li,
  body main ul.exercise .pdf,
  body .flex_download li,
  body .flex_download .pdf,
  body main .flex_movie li,
  body main .flex_movie .pdf {
    width: 46.1855670103%;
  }
}
body main ul.exercise li img,
body main ul.exercise .pdf img,
body .flex_download li img,
body .flex_download .pdf img,
body main .flex_movie li img,
body main .flex_movie .pdf img {
  margin: 0 auto 1em;
  display: block;
}
@media (min-width: 1280px) {
  body main ul.exercise .mov,
  body .flex_download .mov,
  body main .flex_movie .mov {
    width: 46.1855670103%;
  }
}
body .flex_download picture img {
  display: block;
  vertical-align: bottom;
  margin: 1em auto;
}
@media (min-width: 640px) {
  body .flex_download picture img:hover {
    opacity: 0.65;
  }
}
body .flex_download .download_button a {
  position: relative;
  padding-left: 1.5em;
  line-height: 1.25;
  color: var(--body);
  margin: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  border-bottom: 2px solid #ffffff;
}
body .flex_download .download_button a:before {
  width: 1.25em;
  height: 1.25em;
  content: "";
  display: block;
  background: url("../img/materials/icon_download.png") no-repeat;
  background-size: contain;
  left: 0;
  top: 0;
  position: absolute;
}
body .flex_download .download_button a:hover {
  /* border-bottom: 2px solid #21ba29; */
  opacity: .8;
}
@media (min-width: 1280px) {
  body .flex_download .pdf {
    padding-left: 20.7835051546%;
    position: relative;
    font-size: 18px;
    line-height: 32.4px;
  }
  body .flex_download .pdf picture {
    left: 0;
    top: 0;
    position: absolute;
  }
  body .flex_download .pdf h3 {
    margin-top: 0;
    margin-bottom: 0.6818181818em;
  }
  body .flex_download .pdf .download_button_img {
    position: absolute;
    right: 0;
    bottom: -90px;
  }
  body .flex_download .pdf .download_button a {
    margin: 45px 0 0 auto;
  }
}
body main .flex_movie h3 {
  margin-top: 2em;
}
body main .flex_movie img {
  display: block;
  vertical-align: bottom;
  max-width: 360px;
  width: 100%;
  height: auto;
  margin: 0 auto 10px;
}
@media (min-width: 640px) {
  body main .flex_movie img {
    margin-bottom: 15px;
  }
}
body main .flex_movie img:hover {
  opacity: 0.8;
}
body main .flex_movie .playtime {
  width: 100%;
  max-width: 360px;
  font-size: 16px;
  line-height: 1;
  margin: 0 auto 1.5625em;
  text-align: end;
}
@media (min-width: 640px) {
  body main .flex_movie .playtime {
    margin-bottom: 1.25em;
  }
}
body main .flex_movie .playtime:before {
  content: "再生時間：";
}
@media (max-width: 480px) {
  body main .slide .icon_on {
    display: none;
  }
}
@media (max-width: 480px) {
  body main .slide.on div figure {
    max-width: 100%;
  }
}
@media (max-width: 480px) {
  body main .slide.on div figure figcaption {
    max-width: 100%;
  }
}
@media (max-width: 480px) {
  body main .slide.on div figure picture {
    position: relative;
    overflow: auto;
    display: block;
    margin-bottom: 1em;
  }
  body main .slide.on div figure picture::-webkit-scrollbar {
    width: 8px;
    height: 8px;
  }
  body main .slide.on div figure picture::-webkit-scrollbar-thumb {
    background-color: var(--h2_parco);
    border-radius: 4px;
  }
  body main .slide.on div figure picture::-webkit-scrollbar-track {
    background-color: var(--button-bg-color);
    border-radius: 4px;
  }
}
@media (max-width: 480px) {
  body main .slide.on div figure img:not(.icon_on img) {
    max-width: none;
    width: auto;
    height: 60vh;
  }
  body main .slide.on div figure img:not(.icon_on img).vh_40 {
    height: 40vh;
  }
}
@media (max-width: 480px) {
  body main .slide.on .icon_off {
    display: none;
  }
}
@media (max-width: 480px) {
  body main .slide.on .icon_on {
    display: block;
  }
}
@media (min-width: 481px) {
  body main .slide .icon_on,
  body main .slide .icon_off {
    display: none;
  }
}
body main .slide .flex_icon {
  margin-top: 1em;
}
body .readspeaker_player_top {
  margin: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 1280px) {
  body .readspeaker_player_top {
    width: 1177px;
    position: absolute;
    bottom: 75px;
    left: 10px;
    height: 30px;
  }
}
body .readspeaker_player_top .rs_addtools,
body .readspeaker_player_top .rsbtn {
  margin-bottom: 0 !important;
}
@media (max-width: 1280px) {
  body .readspeaker_player_top .rs_preserve {
    margin-top: 2.3em;
  }
}
body header > .sec__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body header > .sec__inner .rs_skip {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 639.98px) {
  body header > .sec__inner .rs_skip {
    /* margin-right: 68px; */
  }
}
body header > .sec__inner .rs_skip a {
  line-height: 1;
}
body .readspeaker_player_lower {
  height: 30px;
  position: absolute;
  top: -43px;
}
@media (max-width: 639.98px) {
  body .readspeaker_player_lower {
    top: -38px;
  }
}
body .readspeaker_player_lower div {
  z-index: 0;
}
body .readspeaker_player_lower .rs_addtools,
body .readspeaker_player_lower .rsbtn {
  margin-bottom: 0 !important;
}
body .tippy-box[data-theme~=nmosd] .closebtn {
  border: none;
  position: absolute;
  top: -20px;
  right: -20px;
  width: 33px;
  height: 33px;
  display: block;
  background: url(/-/media/NMOSDSource_jp/img/common/close_btn.png) no-repeat;
  background-size: contain;
  font-size: 0;
  cursor: pointer;
}
@media (max-width: 768px) {
  body .speech_bubble.pc_only,
  body .speech_bubble_2.pc_only {
    display: none;
  }
}
@media (min-width: 768px) {
  body .rs_skip {
    position: relative;
  }
}
@media (min-width: 768px) {
  body .speech_bubble,
  body .speech_bubble_2 {
    display: none;
    width: 18rem;
    text-align: left;
    position: absolute;
    top: 85px;
    right: -48px;
    padding: 16px;
    border-radius: 11px;
    background: white;
    color: black;
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.75;
    border: solid 2px #003c71;
    padding-top: 1em;
  }
}
@media (min-width: 768px) {
  body .speech_bubble_2 {
    z-index: 10001;
    top: 72px;
    right: -60px;
  }
}
@media (min-width: 768px) and (max-width: 1280px) {
  body .speech_bubble_2 {
    width: 15rem;
    font-size: 0.8rem;
    right: -16px;
  }
}
@media (min-width: 768px) {
  body .speech_bubble:before,
  body .speech_bubble_2:before {
    content: "";
    border-bottom-color: transparent;
    background: url(/-/media/NMOSDSource_jp/img/common/hukidashi_arrow.png) no-repeat;
    width: 26px;
    height: 18px;
    background-size: contain;
    position: absolute;
    top: -17px;
    left: 8rem;
  }
}
@media (min-width: 768px) {
  body .rs_skip:hover + .rs_skip_always + .speech_bubble {
    display: block;
  }
}
@media (min-width: 768px) {
  body .rs_href:hover + .speech_bubble_2 {
    display: block;
  }
}
body .text--bottom {
  margin-top: 2.5em;
}
body .colwrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 769px) {
  body .colwrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
body .box--col3 {
  width: 30%;
}
@media (max-width: 769px) {
  body .box--col3 {
    width: 100%;
  }
}
body .box--col3.dotList.icon--circle--right-green {
  margin-top: inherit;
}
@media (max-width: 769px) {
  body .box--col3.dotList.icon--circle--right-green {
    margin-top: 1.5em;
  }
}
body .box--col3.dotList.icon--circle--right-green dt {
  max-width: inherit;
  font-size: clamp(18px, 4vw, 20px);
}
@media (max-width: 1000px) {
  body .box--col3.dotList.icon--circle--right-green dd {
    margin-left: 0;
  }
}
body .box--col3 .burette > li {
  margin-left: 1em;
  text-indent: -0.8em;
}
body .img--col3 {
  display: block;
  width: 80%;
  max-width: 250px;
  margin: auto;
}
@media (min-width: 768.2px) {
  body .img--col3.mask {
    aspect-ratio: 240/222;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: bottom;
       object-position: bottom;
  }
}
body .dib {
  display: inline-block;
}
body dl.hint {
  text-indent: -15px;
}
@media (min-width: 1920px) {
  body dl.hint {
    text-indent: -19.5px;
  }
}
body dl.hint dt,
body dl.hint dd {
  padding-left: 50px;
  position: relative;
  margin-left: 0;
}
@media (min-width: 1920px) {
  body dl.hint dt,
  body dl.hint dd {
    padding-left: 65px;
  }
}
body dl.hint dt:before,
body dl.hint dd:before {
  font-size: 1.5em;
  width: 0;
  margin-right: 15px;
  display: inline-block;
}
@media (min-width: 1920px) {
  body dl.hint dt:before,
  body dl.hint dd:before {
    margin-right: 19.5px;
  }
}
body dl.hint dt:before {
  content: "Q";
  color: var(--h1_title);
}
body dl.hint dd:before {
  content: "A";
  color: var(--h2_lead);
}
body dl.hint dd:not(:last-child) {
  margin-bottom: 1.5em;
}
body .tippy-box[data-theme~=nmosd] {
  background-color: #ffffff;
  color: var(--body);
  padding: 0.75em;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  border-radius: 11px;
  border: solid 2px #003c71;
}
body .tippy-box[data-theme~=nmosd] header {
  font-size: 1.2em;
  font-weight: 500;
  text-align: center;
  position: relative;
}
body .tippy-box[data-theme~=nmosd] header:after {
  content: "";
  width: 30px;
  height: 4px;
  background: url("/-/media/NMOSDSource_jp/img/common/headerBottom_dots.svg") no-repeat;
  background-position: center;
  position: absolute;
  bottom: -8px;
  left: 0;
  right: 0;
  margin: auto;
}
body .tippy-box[data-theme~=nmosd] header + div {
  margin-top: 1em;
  font-weight: 400;
}
@media (max-width: 639.98px) {
  body .tippy-box[data-theme~=nmosd] .closebtn {
    width: 40px;
    height: 40px;
    display: block;
    background: url(/-/media/NMOSDSource_jp/img/common/close_btn.png) no-repeat;
    background-size: contain;
    font-size: 0;
    top: -20px;
    right: -20px;
    position: absolute;
  }
}
body .tippy-box[data-theme~=nmosd][data-placement^=bottom] > .tippy-arrow::before {
  border-bottom-color: transparent;
  background: url(/-/media/NMOSDSource_jp/img/common/hukidashi_arrow.png) no-repeat;
  width: 26px;
  height: 18px;
  background-size: contain;
  top: -17px;
}
@media (max-width: 840px) {
  body .tippy-box[data-theme~=nmosd][data-placement^=bottom] > .tippy-arrow::before {
    left: -7px;
  }
}
body .tippy-box[data-theme~=nmosd][data-placement^=top] > .tippy-arrow::before {
  border-top-color: transparent;
  background: url(/-/media/NMOSDSource_jp/img/common/hukidashi_arrow.png) no-repeat;
  width: 26px;
  height: 18px;
  background-size: contain;
  bottom: -51px;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}
@media (max-width: 639.98px) {
  body [data-tippy-root] {
    max-width: calc(100vw - 70px);
  }
}
body .tippy-box.modal,
body .modal_tool_base {
  display: none;
}
@media (max-width: 639.8px) {
  body .tippy-box {
    font-size: 19px;
  }
}
@media (min-width: 1920px) {
  body .tippy-box {
    font-size: 18.2px;
  }
}
body .modal_base,
body .modal_tool_base {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
}
body .modal_base:before,
body .modal_tool_base:before {
  content: "";
  background-color: rgba(var(--footer_background-color-rgb), 0.95);
  width: 100%;
  height: 100%;
  display: block;
  line-height: 1;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
}
@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
  body .modal_base:before,
  body .modal_tool_base:before {
    -webkit-backdrop-filter: blur(10px) brightness(90%);
    backdrop-filter: blur(10px) brightness(90%);
    background-color: rgba(var(--footer_background-color-rgb), 0.35);
  }
}
@media (max-width: 639.8px) {
  body .modal_tool_base {
    display: block;
  }
  body .tippy-box.modal {
    width: calc(100vw - 70px);
    display: block;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto;
    position: absolute;
    padding: 1.5em;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
  body .tippy-box.modal:not(.modal) {
    display: none;
  }
  body .tippy-box.modal header {
    font-size: 24px;
  }
  body .tippy-box.modal header + div {
    font-size: 20px;
  }
}
body .modalWrap {
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  position: absolute;
  background: #fff;
  width: 90vmin;
  aspect-ratio: 16/9;
  border: solid 1em white;
  line-height: 1;
}
@media (min-width: 640px) {
  body .modalWrap {
    width: 92vmin;
  }
}
body .modalWrap img,
body .modalWrap iframe,
body .iframeWrap iframe {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
body .modalWrap .closebtn {
  position: absolute;
  top: -30px;
  right: -30px;
  width: 40px;
  height: 40px;
  display: block;
  background: url(/-/media/NMOSDSource_jp/img/common/close_btn.png) no-repeat;
  background-size: contain;
  font-size: 0;
  cursor: pointer;
}
@media (min-width: 640px) {
  body .modalWrap .closebtn {
    top: -45px;
    right: -45px;
    width: 50px;
    height: 50px;
  }
}
body .modalWrap img,
body .modalWrap iframe,
body .iframeWrap iframe {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}
body main .enLarge {
  display: none;
}
@media (min-width: 839.8px) {
  body main .enLarge {
    font-size: 0.8em;
    border: 2px solid var(--border-color);
    border-radius: 10px;
    line-height: 1.5em;
    padding: 0.25em 0.35em;
    margin: 2em 0 1em auto;
    cursor: pointer;
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 839.8px) and (min-width: 640px) {
  body main .enLarge:hover {
    border: 2px solid var(--accent-color);
  }
}
body .mov a[data-mov]:hover {
  cursor: pointer;
  opacity: 0.8;
}
body #order {
  border-radius: 30px;
  padding: 1em;
  background: #fafdf5;
  border: 3px solid rgba(33, 186, 41, 0.3);
}
body #order .form0 {
  margin-left: 2em;
}
@media screen and (max-width: 1270px) {
  body #order .form0 {
    margin-left: 0em;
  }
}
body #order .form {
  margin: 1em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body #order .form a {
  text-decoration: underline;
  color: #3e3a39;
  padding: 0.5em 3em 0.5em 2em;
  border-radius: 10px;
  background: #fff;
  border: 2px solid #a0d14e;
  position: relative;
}
body #order .form a:hover {
  border: 2px solid #4aa73f;
}
body #order .form a:after {
  content: "\e89e";
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;
  position: absolute;
  color: #a0d14e;
  margin-left: 0.2em;
  margin-right: 2em;
  font-size: 1.4em;
}
body #order h2 {
  color: var(--h2_parco);
  position: relative;
  padding-left: 0.8636363636em;
  z-index: 0;
}

.floatingBanner {
  position: fixed;
  right: 10px;
  bottom: 0;
  z-index: 10001;
  transition: .3s ease-in-out;
}
.floatingBanner a {
  display: inline-block;
}
.floatingBanner .closeBtn {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  background-color: #fff;
  color: #0861AF;
  border: 2px solid #0861AF;
  cursor: pointer;
  background-image: url('data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 fill%3D%22none%22 viewBox%3D%220 0 24 24%22 stroke-width%3D%223%22 stroke%3D%22%230861AF%22%3E%3Cpath stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22 d%3D%22M6 18 18 6M6 6l12 12%22%2F%3E%3C%2Fsvg%3E');
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: center;
}
.floatingBanner.is-closed {
  right: -22rem;
}
.floatingBanner.is-closed .closeBtn {
  background-image: url('data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 fill%3D%22none%22 viewBox%3D%220 0 24 24%22 stroke-width%3D%223%22 stroke%3D%22%230861AF%22 class%3D%22size-6%22%3E%3Cpath stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22 d%3D%22M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18%22%2F%3E%3C%2Fsvg%3E');
  left: 0;
}
@media screen and (max-width: 767.89px) {
  .floatingBanner a img{
    width: 100%;
    max-width: 360px;
  }
  .floatingBanner.is-closed {
    right: -20rem;
  }
}
.section {
  padding: 60px 0;
}

.section .container {
  margin: auto;
  max-width: 970px;
  padding-left: 10px;
  padding-right: 10px;
}

@media (max-width: 1279.8px) {
  .next_content .section .container {
    min-width: 350px;
    max-width: 70.7213578501vw;
    padding: 0 10px;
  }
}

.section.symptoms {
  background: transparent linear-gradient(180deg, #F1F7E7 0%, #DCE8C9 100%) 0% 0% no-repeat padding-box;
background: transparent linear-gradient(180deg, #F1F7E7 0%, #DCE8C9 100%) 0% 0% no-repeat padding-box;
}

.bg-gray {
  background-color: var(--bg-gray);
}
.bg-point {
  background-color: var(--point_bg);
}


.section.video .container {
  margin: auto;
  max-width: 100%;
}

.card-symptoms ._list {
  display: flex;
  gap: 28px;
}

.card-symptoms ._list ._item {
  width: 20%;
  background-color: #fff;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0px 4px 14px #0000001A;
}

.card-symptoms ._list ._item ._link:hover ._icon img {
  transform: scale(1.125);
}

.card-symptoms ._list ._item ._icon {
  padding: 12px 15px 0 15px;
}

.card-symptoms ._list ._item ._icon img {
  transition: .2s ease-in-out;
}

.card-symptoms ._list ._item ._txt {
  font-size: 18px;
  line-height: 1.3334;
  padding: 0 15px 15px 15px;
  color: #3E3A39;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
  font-weight: 500;
}

.card-video {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 4px 14px #0000001A;
}

.card-video ._title, .card-video ._body {
  padding: 0 20px;
  background-color: #fff;
}
.card-video ._title {
  background-color: #1EBA29;
  color: #fff;
  font-size: 23px;
  letter-spacing: 6.9px;
  font-weight: bold;
  padding-top: 2px;
  padding-bottom: 4px;
}
.card-video ._body {
  padding-bottom: 18px;
  padding-top: 6px;
}
.card-video ._body ._txt {
  min-height: 80px;
  font-weight: 500;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
}
.card-video ._body ._btn {
  margin-top: 26px;
  text-align: center;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
}

.card-video ._body ._btn a {
  padding: 4px 20px;
  border: 2px solid #4AA73F;
  border-radius: 32px;
  font-size: 18px;
  max-width: 250px;
  width: 100%;
  color: #3E3A39;
  position: relative;
  display: inline-flex;
  font-weight: bold;
  background-color: #F5F8F0;
}

.card-video ._body ._btn a::after {
  content: "";
  background: url("/-/media/NMOSDSource_jp/img/common/ExpandCircleRight_green.svg");
  width: 28px;
  height: 28px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}

.card-video ._image {
  display: flex;
  overflow: hidden;
  border-bottom: 2px solid #fff;
}

.card-video ._image img {
  width: 100%;
  transition: .2s ease-in-out;
}

.card-video:hover ._image img {
  transform: scale(1.1);
}

.btn-block, .btn-block-double {
  background-color: #fff;
  box-shadow: 0px 4px 14px #0000001A;
  padding: 21px 50px;
  border-radius: 10px;
  color: #3E3A39;
  transition: .2s ease-in-out;
  position: relative;
  width: 100%;
  display: block;
  font-weight: 500;
}
.btn-block-double {
  background-color: #F5F8F0;
  border: 2px solid #3E3A392F;
  border-radius: 4px;
  font-size: 18px;
  padding: 17px 50px;
  box-shadow: none;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
}

.btn-block::after,
.btn-block-double::after {
  content: "";
  background: url(/-/media/NMOSDSource_jp/img/common/ChevronRight_green.svg);
  position: absolute;
  width: 22.5px;
  height: 22.5px;
  top: 0;
  bottom: 0;
  right: 4px;
  margin: auto;
}

.btn-block::after {
  background: url(/-/media/NMOSDSource_jp/img/common/ChevronRight_green.svg);
}
.btn-block-double::after  {
  background: url(/-/media/NMOSDSource_jp/img/common/DoubleArrowRight_green.svg);
}

.btn-block:hover {
  opacity: .8;
}

.btn-block-double:hover {
  border: 2px solid #1EBA29;
}

.align-center {
  display: flex;
  justify-content: center;
}
.text-center {
  text-align: center;
}

.container-sm {
  max-width: 520px;
}

.videoTab {
  padding: 14px;
  border-radius: 9px;
  margin-bottom: 1rem;
}
.iframeWrap {
  max-width: 800px;
  margin: auto;
}
.tabs {
  display: flex;
  gap: 10px;
  max-width: 800px;
  margin: auto;
  font-size: 24px;
}
.tab {
  width: 134px;
  text-align: center;
  line-height: 2;
  letter-spacing: 5px;
  border-radius: 5px;
  color: #8D8D8D;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #CED5DB;
  margin-bottom: 8px;
  font-family: YakuHanRP, "Zen Maru Gothic", sans-serif;
}
.tab:hover {
  border: 1px solid #1EBA29;
  color: #4AA73F;
  font-weight: normal;
}
.tab.active {
  background-color: #fff;
  font-weight: 500;
  color: #149604;
  border: 2px solid #149604;
}
.tab-content {
  display: none;
}
.tab-content.active {
  display: block;
}

h2.parco-mark {
  color: var(--h2_parco);
  margin-top: 0;
  margin-bottom: 32px;
  position: relative;
  padding-left: 0.8636363636em;
  z-index: 0;
}
h2.parco-mark:before {
  content: "";
  display: block;
  width: 23.32px;
  height: 28.059px;
  background: url("/-/media/NMOSDSource_jp/img/common/title_mark.svg");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  z-index: -5;
  top: -5px;
  left: -3px;
}

.accordion-wrapper {
  overflow: hidden;
  border-top: 2px solid var(--fresh_green);
}

.accordion-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0;
  cursor: pointer;
  color: var(--h2_parco);
  font-weight: bold;
  position: relative;
  border-bottom: 2px solid var(--fresh_green);
}
.accordion-header.open {
  border-bottom: 0;
}
body main h2.accordion.accordion-header button {
  font-size: 24px;
  padding: 24px 4px 24px 24px;
}

.accordion-header::after {
  content: "";
  position: absolute;
  background: url("/-/media/NMOSDSource_jp/img/common/icon_Plus.svg");
  width: 30px;
  height: 30px;
  right: 8px;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -5;
}
.accordion-header:hover {
  background-color: #00000005;
}
.accordion-wrapper .accordion_inner {
  display: none;
  padding: 20px;
  background-color: #fff;
  border-top: 2px dashed var(--fresh_green);
}

.accordion-header.open::after {
  background: url("/-/media/NMOSDSource_jp/img/common/icon_Minus.svg");
}

.rehabilitation .flex_download {
  justify-content: center;
}
.swiper.swiper-horizontal {
  max-width: 1200px;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 60px;
}
.swiper-button-prev, .swiper-button-next {

}
.swiper-button-prev::after, .swiper-button-next::after {
  color: #ccc;
}
.swiper-nav {
  max-width: 1320px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  top: -290px;
  z-index: 10;
}

.swiper-wrapper {
  /* padding-left: 30px;
  padding-right: 30px; */
}
.swiper-button-prev {
  left: 0px;
}
.swiper-button-next {
  right: 0px;
}

@media screen and (max-width: 767.89px) {
  .swiper-button-prev, .swiper-button-next {
    display: none;
  }
}

@media (min-width: 1920px) {
  .rehabilitation .flex_download .pdf {
    padding-left: 16.5%;
  }
}

/* .rehabilitation .flex_download .pdf {
  max-width: 520px;
  width: 100%;
} */

@media (max-width: 1279.8px) {
  .section .container {
    padding: 0 24px;
  }
  .section {
    padding: 50px 0;
  }
  .section.video .container {
    padding: 0;
  }
  .section.symptoms .container{
    padding: 0 40px;
  }
  .section .container-sm {
    padding-left: 40px;
    padding-right: 40px;
  }
  .card-symptoms ._list {
    flex-wrap: wrap;
  }
  .card-symptoms ._list ._item {
    width: calc(50% - 14px);
  }
  .swiper.swiper-horizontal {
    padding-bottom: 40px;
  }
  .btn-block, .btn-block-double  {
    padding: 21px 18px;
  }
  .swiper-button-next {
    right: 15px;
  }
  .swiper-button-prev {
    left: 15px;
  }
  .tabs {
    font-size: 15px;
    gap: 5px;
  }
  .tab {
    width: 80px;
  }
  body main h2.accordion.accordion-header button {
    font-size: 18px;
    padding: 28px 28px 28px 12px;
  }
}



.nav-item-heading{
  top: 623px;
  left: 267px;
  width: 60px;
  height: 29px;
  /* UI Properties */
  color: var(--h2_parco);
  text-align: left;
  font: normal normal medium 20px/29px Zen Maru Gothic;
  letter-spacing: 0px;
  color: #795E39;
  opacity: 1;
}

.jsc-nav-trigger{
  top: 613px;
  left: 197px;
  width: 100%;
  height: 50px;
  /* UI Properties */
  background: var(--footer_background-color) 0% 0% no-repeat padding-box;
  background: #F1F7E7 0% 0% no-repeat padding-box;
  border-radius: 6px;
  opacity: 1;
  border: none;
  display: flex;
  align-items: center;
  justify-content: space-between; /* changes */
  padding: 0 15px;
  color: #795E39;
  font-weight: 400;
}
/* changes*/

.jsc-nav-img-context {
  font-size: 20px; /*current bug css*/
  display: flex;
  align-items: center;
  gap: 10px;
}

.img-icon {
  font-size: 40px;
  display: block;
}

.img-ddp, .img-close {
  font-size: 20px;
  display: block;
}

.img-active-icon {
  font-size: 40px;
  display: none;
}

.img-active-ddp {
  font-size: 20px;
  display: none;
}
/* changes */
.jsc-nav-trigger:hover, .jsc-nav-active {
  background-color: #4AA73F !important;
  color: #fff !important;
}

.jsc-nav-trigger:hover .img-icon, .jsc-nav-active .img-icon{
  display: none !important;
}

.jsc-nav-trigger:hover .img-ddp, .jsc-nav-active .img-ddp{
  display: none !important;
}

.jsc-nav-trigger:hover .img-active-icon, .jsc-nav-active .img-active-icon {
  display: block !important;
}

.jsc-nav-trigger:hover .img-active-ddp, .jsc-nav-active .img-active-ddp {
  display: block !important;
}
/* changes*/
.main-header{
   display: flex;
   justify-content: space-between;
   align-items: center;
   width: 100%;
   padding: 20px 20px 0px 20px;
}

.main-header-text{
  width: 300px;
  height: 35px;
  /* UI Properties */
  color: var(--h2_parco);
  text-align: left;
  font: normal normal bold 24px/35px Zen Maru Gothic;
  letter-spacing: 0px;
  color: #795E39;
  opacity: 1;
}

.close-btn{
  width: 135px;
  height: 35px;
  background: var(--button-bg-white) 0% 0% no-repeat padding-box;
  border: 2px solid var(--border-color);
  background: #FFFFFF 0% 0% no-repeat padding-box;
  border: 2px solid #CED5DB;
  border-radius: 20px;
  opacity: 1;
  display: block; /* changes */
  text-align: center; /* changes */
  padding: 0 15px; /* changes */
  cursor: pointer;
}

 /* changes */
 .img-close {
  float: right;
 }
/* changes */

@media (min-width: 640px) {
  .hr-line {
    width: 95%;
    height: 100%;
    height: 0px;
    border: 2px solid var(--border-color);
    border: 2px solid #CED5DB;
    opacity: 1;
  }
}
@media (min-width: 640px) and (max-width: 800px) {
  .hr-line {
    width: 95%;
  }
}
@media (min-width: 1920px) {
  .hr-line {
    width: 97%;
  }
}

 .inner-container {
  width: 99.5%;
  max-height: 350px;
  padding: 18px 95px 30px 0px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: #149604 transparent;
}
 
.inner-container::-webkit-scrollbar {
  width: 1px;
  padding-left: 20px;
}
 
.inner-container::-webkit-scrollbar-thumb {
  background-color: #149604 transparent;
  border-radius: 10px;
}
 
.inner-container::-webkit-scrollbar-track {
  background: transparent;
} 

@media (min-width: 1920px) {
  .banner_list_tab4 ul {
    display: flex;
    flex-wrap: wrap; 
    gap: 10px; 
    margin-left: 60px;
  }

  .banner_list_tab4 ul li {
  flex: 0 1 calc(50% - 5px);
  }
}

@media (min-width: 640px) {
  .banner_list_tab4 ul {
    display: flex;
    flex-wrap: wrap; 
    gap: 10px; 
    margin-left: 60px;
  }

  .banner_list_tab4 ul li {
    flex: 0 1 calc(50% - 5px);
  }
}

.bottom-nav{
  display: none;
 }

.popup {
  display: none;
}
 
 @media (max-width: 640px) {
 .bottom-nav{
   position: fixed;
   bottom: 0;
   width: 100%;
   height: 100px;
   display: flex;
   justify-content: space-around;
   align-items: center;
   background: var(--footer_background-color) 0% 0% no-repeat padding-box;
   opacity: 1;
   backdrop-filter: blur(10px);
   z-index: 10001;
   overflow-y: hidden;
   overflow-x: auto;
   scrollbar-width: thin;
   scrollbar-color: #149604 transparent;
   /* box-shadow: 0px -4px 6px rgba(0, 0, 0, 0.1); */
 }
 
 .nav-item{
   display: flex;
   align-items: center;
   cursor: pointer;
   padding: 5px 0;
 }
 
 .jsc-nav-trigger{
   top: 613px;
   left: 197px;
   width: 100%;
   height: 70px;
   background: var(--footer_background-color) 0% 0% no-repeat padding-box;
   background: #F1F7E7 0% 0% no-repeat padding-box;
   border-radius: 10px;
   opacity: 1;
   border: none;
   display: flex;
   align-items: center;
   justify-content: space-between; 
   padding: 0 15px;
   box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.2);
   color: var(--h2_parco);
   color: #795E39;
 }
 
 .jsc-nav-img-context {
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 0px;
 }
 
 .img-icon {
   width: 45px;
   height: 45px;
   font-size: 40px;
   display: block;
 }
 
 .img-active-icon {
   width: 45px;
   height: 45px;
   font-size: 40px;
   display: none;
 }
 
 .label {
   top: 797px;
   left: 33px;
   width: 56px;
   height: 20px;
   text-align: center;
   font-size: 14px;
   letter-spacing: 0px;
   opacity: 1;
   font-weight: bold;
 }

 .main-header {
  justify-content: flex-start;
  width: 100%;
  padding: 0px 20px 0px 25px;
}

.main-header-text{
  padding-left: 2px; /*current css*/
  margin-bottom: 0px;  /* current css */
}

.inner-container {
  /* padding: 18px 95px 80px 0px; */
  padding-top: 20px; /*current bug css */
  max-height: 100%;
  margin-top: 0px;
}

body .header__nav__inner {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  /* display: flex; */
  /* justify-content: space-between; */
  /* gap: 20px; */
  /* padding-left: 22px;
  margin-top: 20px; */   /*current bug css 49,50,51,52,53*/
  margin-bottom: 120px;
}

body .header__nav__sec a {
  /* width: 100%; */  /*current bug css*/
  width: calc(90vw - 63px);/*current bug css*/
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #149604;
  text-align: left;
  font: normal normal bold 18px Noto Sans JP;
  letter-spacing: 0px;
  opacity: 1;
}

.header__nav__sec{
  margin-bottom: 35px;
  width: calc(30% + 46vw);
}

body .header__nav__sec + .header__nav__sec {
  margin-top: 20px;
  border-top: none;
}

body .header__nav__title {
  border-bottom: 1px solid var(--h2_lead);
  /* margin-left: 28px; */ /*current bug css */
}

body .header__nav__list {
  width: 20em;
}

body ul, body ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

body .header__nav__list > li a {
  height: 25px;
  text-align: left;
  font-size: 14px;
  font-family: Noto Sans JP;
  font-weight: bold;
  letter-spacing: 0px;
  color: #3E3838;
  opacity: 1;
  margin-top: 8px;
  /* padding-left: 48px; */
  padding-left: 18px;
}

body .header__nav__list a::before {
  position: absolute;
  left: 1px; /*current css*/
  top: 9px;
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-top: 2px solid var(--accent-color);
  border-right: 2px solid var(--accent-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

body .header__nav__list > li {
  border-top: none;
}

.banner_list_tab4 {
  width: calc(100vw - 100px);   /*current css */
}

.banner_img{
  width: calc(50% + 38vw);
}

.floatingBanner {
    bottom: 90px;
    z-index: 9999;
}

.footer__under{
  margin-bottom: 100px;
}
}

.navbar {
  position: fixed;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: space-around;
  background-color: #333;
  color: white;
  padding: 10px 0;
}
.nav-item {
  cursor: pointer;
  padding: 10px;
}
.popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  /* padding: 20px; */
  background: var(--footer_background-color) 0% 0% no-repeat padding-box;
  background: #F1F7E7 0% 0% no-repeat padding-box;
  opacity: 1;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: #149604 transparent;
  z-index: 10001;
  padding-top: 54px;  /*current bug*/
}
.popup.active {
  display: block;
}
.popup.active[data-animate="true"] {
  animation: slideUp 0.4s ease-out forwards;
}
 
@keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.mobile-close-btn {
  transform: translate(-11px, 3px);
  width: 24px;
  height: 24px;
  opacity: 1;
}

.main-header1 {
  padding: 10px 25px 0px 25px;
  position: fixed;
  width: 100%;
  height: 63px;
  background: var(--footer_background-color) 0% 0% no-repeat padding-box;
  background: #F1F7E7 0% 0% no-repeat padding-box;
  z-index: 100001;
  margin-bottom: 20px;
  box-shadow: 0px 3px 3px #00000029;
}

.popup1{
  padding-top: 0px;
}

.inner-container1{
  margin-top: 80px;
}
.noHover{
    pointer-events: none;
}


@media (max-width: 640px) {
    .bottom-nav {
        position: fixed;
        bottom: 0;
        width: 100%;
        height: auto;
        display: flex;
        justify-content: space-around;
        align-items: center;
        background: var(--footer_background-color, #F1F7E7);
        backdrop-filter: blur(10px);
        z-index: 10001;
        overflow-x: auto; 
        overflow-y: hidden; 
        padding: 10px 0; 
    }

    .nav-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        cursor: pointer;
        padding: 1px;
    }

    .jsc-nav-trigger {
        width: 100%;
        background: none;
        border: none;
    }  

    .jsc-nav-trigger.active .label {
    color: white !important;
}
}

@media (min-width: 310px) and (max-width: 348px) {
  .main-header {
    padding-left: 41px;
  }
}

@media (min-width: 290px) and (max-width: 310px) {
  .main-header {
    padding-left: 51px;
  }
}

@media (min-width: 324px) and (max-width: 347px) {
  .main-header {
    padding-left: 33px;
  }
}

@media (min-width: 340px) and (max-width: 348px) {
  .main-header {
    padding-left: 26px;
  }
}
.sec__inner.top_class {
      width: calc(100vw - 30px);
}
