/* Scss Document */
html, body {
  font-size: 16px; }

.c_gpp {
  color: #467a5f; }

.w-940 {
  width: 80%;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  position: relative; }
  @media (max-width: 560px) {
    .w-940 {
      width: 85%; } }

.miraien-map2024 {
  width: 100%;
  max-width: 800px;
  aspect-ratio: 800 / 740;
  position: relative;
  background-image: url("../img/miraien/map_japan.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  margin: auto auto 70px; }
  .miraien-map2024 .btn a {
    position: absolute;
    display: inline-block;
    height: 45px;
    padding: 0 1rem;
    color: white;
    font-size: 1.3rem;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    white-space: nowrap;
    line-height: 45px;
    border-radius: 5px; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn a {
        height: 30px;
        font-size: .95rem;
        line-height: 30px;
        padding: 0 .5rem; } }
  .miraien-map2024 .btn.tohoku a {
    background-color: #9aaf71;
    left: 72%;
    top: 30%; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn.tohoku a {
        left: 69%;
        top: 28%; } }
  .miraien-map2024 .btn.kanto a {
    background-color: #e0ae6c;
    left: 65%;
    top: 57%; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn.kanto a {
        left: 63%;
        top: 55%; } }
  .miraien-map2024 .btn.kansai a {
    background-color: #f1c19b;
    left: 22%;
    top: 32%; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn.kansai a {
        left: 10%;
        top: 21%; } }
  .miraien-map2024 .btn.chugoku a {
    background-color: #d7cc7c;
    left: 2%;
    top: 45%; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn.chugoku a {
        left: 0%;
        top: 36%; } }
  .miraien-map2024 .btn.tokai a {
    background-color: #bc9871;
    left: 40%;
    top: 67%; }
    @media (max-width: 560px) {
      .miraien-map2024 .btn.tokai a {
        left: 39%;
        top: 68%; } }

.inner_1100 {
  width: min(86%, 1100px);
  margin: auto auto 50px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .inner_1100 .side {
    width: 160px;
    position: relative; }
    .inner_1100 .side h3 {
      position: absolute;
      top: .2rem;
      left: 50%;
      transform: translateX(-50%);
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: 700;
      font-style: normal;
      font-size: 1.7rem;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; }
      .inner_1100 .side h3.tohoku {
        color: #9aaf71; }
      .inner_1100 .side h3.kanto {
        color: #e0ae6c; }
      .inner_1100 .side h3.kansai {
        color: #f1c19b; }
      .inner_1100 .side h3.chugoku {
        color: #d7cc7c; }
      .inner_1100 .side h3.tokai {
        color: #bc9871; }
      @media (max-width: 560px) {
        .inner_1100 .side h3 {
          position: static;
          transform: none;
          width: 100%;
          text-align: center;
          writing-mode: horizontal-tb;
          margin-bottom: 2rem; } }
      .inner_1100 .side h3.pagetop {
        top: 195px; }
    @media (max-width: 560px) {
      .inner_1100 .side {
        width: 100%; } }
  .inner_1100 .wrap_contents {
    width: calc(100% - 200px); }
    @media (max-width: 560px) {
      .inner_1100 .wrap_contents {
        width: 100%; } }

ul.list_school {
  width: 100%;
  min-height: 260px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  ul.list_school li {
    width: 32.5%;
    margin-bottom: 2rem; }
    @media (max-width: 560px) {
      ul.list_school li {
        width: 100%;
        margin-bottom: 1rem; } }
    ul.list_school li figure {
      width: 100%;
      margin-bottom: .5rem; }
      ul.list_school li figure a {
        display: block;
        width: 100%;
        aspect-ratio: 800 / 440;
        background-position: center center;
        background-size: 100% auto; }
    ul.list_school li h4 {
      font-size: 1rem;
      text-align: center;
      letter-spacing: .05em;
      line-height: 2em;
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: 700;
      font-style: normal; }
  ul.list_school::after {
    content: "";
    display: block;
    width: 30%; }
