@charset "UTF-8";
html {
  font-size: 62.5%; }

* {
  box-sizing: border-box; }

body {
  font-family: 'Noto Sans JP', sans-serif; }

body a img {
  transition: all 0.5s; }

.view {
  position: relative; }
  .view::before {
    position: absolute;
    right: 20px;
    top: 42%;
    transform: translateY(-50%);
    content: '';
    display: block;
    width: 15px;
    height: 6px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: skew(45deg);
    transition: .3s; }
  .view::after {
    content: '';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    border-radius: 100%;
    border: 1px solid #fff; }

.top {
  background: #bee4d1; }
  .top_visual {
    max-width: 1200px;
    margin: 0 auto; }
    @media (min-width: 768px) {
      .top_visual {
        padding: 100px 2em; } }
    @media (max-width: 767px) {
      .top_visual {
        overflow: hidden;
        padding: 100px 0; } }
    .top_visual_wrapper {
      margin: 1em auto;
      position: relative; }
      @media (min-width: 768px) {
        .top_visual_wrapper {
          margin-top: 150px;
          padding-top: 55%; } }
      @media (max-width: 767px) {
        .top_visual_wrapper {
          margin-top: 180px;
          padding-top: 80%; } }
      .top_visual_wrapper .bg {
        position: absolute;
        object-fit: cover;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
        @media (min-width: 768px) {
          .top_visual_wrapper .bg {
            width: 100%;
            height: 100%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .bg {
            width: 150%;
            height: 150%;
            overflow: hidden; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .bg img {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            min-width: 600px;
            object-fit: cover; } }
      .top_visual_wrapper .top_copy {
        position: absolute;
        font-family: "Zen Maru Gothic", sans-serif;
        color: #1e2c67;
        width: 100%;
        text-align: center;
        left: 50%;
        transform: translateX(-50%); }
        @media (min-width: 768px) {
          .top_visual_wrapper .top_copy {
            font-size: 35px;
            font-size: 3.5rem;
            line-height: 1.4285714286;
            top: -140px; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .top_copy {
            padding: 0 1em;
            font-size: 25px;
            font-size: 2.5rem;
            line-height: 1.6;
            top: -180px; } }
      .top_visual_wrapper .kira01 {
        position: absolute;
        max-width: 50px;
        animation: floating-y 1.8s ease-in-out infinite alternate-reverse; }
        @media (min-width: 768px) {
          .top_visual_wrapper .kira01 {
            top: -1%;
            left: 15%;
            width: 10vw; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .kira01 {
            top: -10%;
            left: 25%;
            width: 8vw; } }
      .top_visual_wrapper .kira02 {
        position: absolute;
        max-width: 50px;
        animation: floating-y 1.8s ease-in-out infinite alternate-reverse; }
        @media (min-width: 768px) {
          .top_visual_wrapper .kira02 {
            top: 45%;
            right: 1%;
            width: 10vw; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .kira02 {
            bottom: -17%;
            right: 10%;
            width: 8vw; } }
      .top_visual_wrapper .cloud01 {
        position: absolute;
        max-width: 70px;
        animation: floating-xy 1.8s ease-in-out infinite alternate-reverse; }
        @media (min-width: 768px) {
          .top_visual_wrapper .cloud01 {
            top: 30%;
            left: 10%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .cloud01 {
            top: 7%;
            width: 12vw; } }
      .top_visual_wrapper .cloud02 {
        position: absolute;
        max-width: 70px;
        animation: floating-xy 1.8s ease-in-out infinite alternate-reverse; }
        @media (min-width: 768px) {
          .top_visual_wrapper .cloud02 {
            top: 0;
            left: 30%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .cloud02 {
            top: 20%;
            right: 5%;
            width: 12vw; } }
      .top_visual_wrapper .cloud02 {
        position: absolute;
        max-width: 70px;
        animation: floating-xy 1.8s ease-in-out infinite alternate-reverse; }
        @media (min-width: 768px) {
          .top_visual_wrapper .cloud02 {
            top: 0;
            left: 30%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .cloud02 {
            top: 20%;
            right: 5%;
            width: 12vw; } }
@keyframes floating-y {
  0% {
    transform: translateY(-10%); }
  100% {
    transform: translateY(10%); } }
@keyframes floating-xy {
  0% {
    transform: translate(-10%, 10%); }
  100% {
    transform: translate(10%, -10%); } }
      .top_visual_wrapper .yuge01 {
        position: absolute;
        opacity: .6;
        max-width: 35px;
        animation: yuge-anime 2s ease-in-out infinite; }
        @media (min-width: 768px) {
          .top_visual_wrapper .yuge01 {
            bottom: 27%;
            right: 27%;
            width: 3%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .yuge01 {
            bottom: 26%;
            right: 15%;
            width: 5%; } }
      .top_visual_wrapper .yuge02 {
        position: absolute;
        opacity: .6;
        max-width: 50px;
        animation: yuge-anime 2s ease-in-out infinite; }
        @media (min-width: 768px) {
          .top_visual_wrapper .yuge02 {
            bottom: 29%;
            right: 16%;
            width: 5%; } }
        @media (max-width: 767px) {
          .top_visual_wrapper .yuge02 {
            bottom: 28%;
            right: -2%;
            width: 7%; } }
@keyframes yuge-anime {
  0% {
    transform: scale(0.8); }
  50% {
    transform: scale(1); }
  100% {
    transform: scale(0.8); } }
      .top_visual_wrapper .illustbtn_wrap {
        position: absolute;
        transition: .3s; }
        .top_visual_wrapper .illustbtn_wrap:hover {
          transition: .3s; }
        .top_visual_wrapper .illustbtn_wrap img {
          display: block;
          width: 90%;
          margin: 0 auto; }
        .top_visual_wrapper .illustbtn_wrap a {
          display: block;
          font-family: "Zen Maru Gothic", sans-serif;
          position: relative; }
          .top_visual_wrapper .illustbtn_wrap a p {
            position: absolute;
            width: fit-content;
            width: 100%;
            min-width: 150px;
            padding: 5px 35px 5px 20px;
            bottom: -20px;
            left: 50%;
            transform: translateX(-50%);
            background: #1e2c67;
            border: 1px solid #fff;
            border-radius: 100px;
            color: #fff;
            text-align: center;
            transition: .3s; }
            @media (min-width: 768px) {
              .top_visual_wrapper .illustbtn_wrap a p {
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 1.4285714286; } }
            @media (max-width: 767px) {
              .top_visual_wrapper .illustbtn_wrap a p {
                font-size: 12px;
                font-size: 1.2rem;
                line-height: 1.6666666667; } }
            .top_visual_wrapper .illustbtn_wrap a p.orange {
              background: #f08300; }
            .top_visual_wrapper .illustbtn_wrap a p.blue {
              background: #2c6ab4; }
            .top_visual_wrapper .illustbtn_wrap a p.green {
              background: #079156; }
            .top_visual_wrapper .illustbtn_wrap a p .check {
              position: absolute;
              top: 50%;
              right: -3vw;
              transform: translateY(-50%); }
              @media (min-width: 768px) {
                .top_visual_wrapper .illustbtn_wrap a p .check {
                  width: 6vw;
                  height: 6vw;
                  max-width: 70px;
                  max-height: 70px; } }
              @media (max-width: 767px) {
                .top_visual_wrapper .illustbtn_wrap a p .check {
                  width: 12vw;
                  height: 12vw;
                  max-width: 60px;
                  max-height: 60px; } }
              .top_visual_wrapper .illustbtn_wrap a p .check.normal {
                transition: .3s; }
              .top_visual_wrapper .illustbtn_wrap a p .check.hover {
                opacity: 0;
                transition: .3s; }
        .top_visual_wrapper .illustbtn_wrap:hover p {
          background: #1e2c67 !important;
          transition: .3s; }
        .top_visual_wrapper .illustbtn_wrap:hover .check.hover {
          opacity: 1; }
        .top_visual_wrapper .illustbtn_wrap.kaigo {
          max-width: 200px;
          min-width: 110px; }
          @media (min-width: 768px) {
            .top_visual_wrapper .illustbtn_wrap.kaigo {
              top: 0;
              right: 20%;
              width: 15vw; }
              .top_visual_wrapper .illustbtn_wrap.kaigo:hover {
                top: -10px; } }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.kaigo {
              top: -15%;
              left: 50%;
              transform: translateX(-50%);
              width: 15vw; } }
          .top_visual_wrapper .illustbtn_wrap.kaigo img {
            width: 80%;
            max-width: 140px; }
        .top_visual_wrapper .illustbtn_wrap.japanese {
          min-width: 110px; }
          @media (min-width: 768px) {
            .top_visual_wrapper .illustbtn_wrap.japanese {
              max-width: 200px;
              width: 15vw;
              left: 10px;
              bottom: 20%; }
              .top_visual_wrapper .illustbtn_wrap.japanese:hover {
                bottom: calc(20% + 10px); } }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.japanese {
              max-width: 130px;
              width: 30vw;
              left: 2em;
              top: 45%;
              transform: translateY(-50%); } }
          .top_visual_wrapper .illustbtn_wrap.japanese img {
            max-width: 150px; }
        .top_visual_wrapper .illustbtn_wrap.global {
          min-width: 110px; }
          @media (min-width: 768px) {
            .top_visual_wrapper .illustbtn_wrap.global {
              max-width: 220px;
              left: 50%;
              bottom: -5%;
              transform: translateX(-50%);
              width: 20vw; }
              .top_visual_wrapper .illustbtn_wrap.global:hover {
                bottom: calc(-5% + 10px); } }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.global {
              max-width: 130px;
              left: 15vw;
              bottom: -10%;
              width: 30vw; } }
          .top_visual_wrapper .illustbtn_wrap.global img {
            max-width: 150px; }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.global p {
              bottom: -40px; } }
        .top_visual_wrapper .illustbtn_wrap.donation {
          min-width: 110px; }
          @media (min-width: 768px) {
            .top_visual_wrapper .illustbtn_wrap.donation {
              bottom: 0;
              right: 10px;
              max-width: 200px;
              width: 15vw; }
              .top_visual_wrapper .illustbtn_wrap.donation:hover {
                bottom: 10px; } }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.donation {
              bottom: 10%;
              right: 10%;
              width: 15vw; } }
          @media (min-width: 768px) {
            .top_visual_wrapper .illustbtn_wrap.donation img {
              max-width: 120px; } }
          @media (max-width: 767px) {
            .top_visual_wrapper .illustbtn_wrap.donation img {
              max-width: 90px; } }
  .top h2 {
    margin-bottom: 1em; }
    @media (min-width: 768px) {
      .top h2 {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.5; } }
    @media (max-width: 767px) {
      .top h2 {
        font-size: 25px;
        font-size: 2.5rem;
        line-height: 1.6; } }
    .top h2.diamond {
      color: #1e2c67; }
      .top h2.diamond span {
        position: relative;
        display: block;
        width: fit-content;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.2;
        padding-left: 25px;
        margin-bottom: 10px; }
        .top h2.diamond span img {
          position: absolute;
          width: 20px;
          height: 20px;
          top: 50%;
          left: 0;
          transform: translateY(-50%); }

.kanazaawwoshiru a {
  display: block;
  background: #1e2c67;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
  padding: 10px 70px;
  border-radius: 100px;
  width: fit-content;
  margin: 3em auto; }
  .kanazaawwoshiru a:hover {
    background: #666; }
  .kanazaawwoshiru a .tsudumimon {
    width: 60px;
    height: 60px;
    top: 50%;
    left: -10px;
    transform: translateY(-50%); }

.top_news {
  background: #fff;
  border-radius: 0 20px 20px 0;
  width: 90%;
  margin: 6em auto 3em 0; }
  @media (max-width: 767px) {
    .top_news {
      margin-bottom: 0; } }
  .top_news_wrapper {
    margin: 0 auto;
    max-width: 1000px;
    padding: 2em; }
    @media (min-width: 768px) {
      .top_news_wrapper {
        display: flex;
        min-height: 270px; } }
    .top_news_wrapper h2 {
      position: relative;
      color: #079156;
      font-size: 26px;
      font-size: 2.6rem;
      line-height: 1.5384615385; }
      @media (min-width: 768px) {
        .top_news_wrapper h2 {
          width: 150px; } }
      @media (max-width: 767px) {
        .top_news_wrapper h2 {
          text-align: center; } }
      .top_news_wrapper h2 img {
        position: absolute;
        object-fit: contain;
        left: 0; }
        @media (min-width: 768px) {
          .top_news_wrapper h2 img {
            bottom: -100px;
            width: 130px;
            height: 200px; } }
        @media (max-width: 767px) {
          .top_news_wrapper h2 img {
            top: -50px;
            width: 120px;
            height: 120px; } }
      .top_news_wrapper h2 span {
        display: block;
        width: fit-content;
        position: relative;
        padding-left: 20px;
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.0909090909; }
        @media (max-width: 767px) {
          .top_news_wrapper h2 span {
            margin: 0 auto; } }
        .top_news_wrapper h2 span img {
          position: absolute;
          width: 15px;
          height: 15px;
          top: 50%;
          left: 0;
          transform: translateY(-50%); }
  @media (min-width: 768px) {
    .top_news_list {
      width: calc(100% - 150px); } }
  .top_news_list ul {
    border-top: 1px solid #ccc; }
    @media (min-width: 768px) {
      .top_news_list ul {
        margin-top: 1em; } }
    @media (max-width: 767px) {
      .top_news_list ul {
        margin-top: 2em; } }
    .top_news_list ul li {
      border-bottom: 1px solid #ccc; }
      @media (min-width: 768px) {
        .top_news_list ul li {
          padding: 0 10px; } }
      .top_news_list ul li a {
        display: block;
        padding: 1em 0;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start; }
        .top_news_list ul li a:hover {
          opacity: .5; }
        .top_news_list ul li a span {
          display: block; }
          @media (min-width: 768px) {
            .top_news_list ul li a span {
              text-align: center; } }
          @media (min-width: 768px) {
            .top_news_list ul li a span.day {
              width: 110px; } }
          @media (max-width: 767px) {
            .top_news_list ul li a span.day {
              width: 90px; } }
          .top_news_list ul li a span.cat {
            border: 1px solid #079156;
            color: #079156;
            border-radius: 100px;
            text-align: center; }
            @media (min-width: 768px) {
              .top_news_list ul li a span.cat {
                width: 160px; } }
            @media (max-width: 767px) {
              .top_news_list ul li a span.cat {
                width: calc(100% - 90px); } }
        @media (min-width: 768px) {
          .top_news_list ul li a .title {
            width: calc(100% - 270px);
            padding-left: 1em; } }
        @media (max-width: 767px) {
          .top_news_list ul li a .title {
            margin-top: 5px;
            width: 100%; } }
  .top_news_list .itiran {
    display: block;
    width: fit-content;
    margin: 2em auto 1em;
    padding: 5px 50px;
    border-radius: 10px;
    color: #fff;
    background: #079156; }
    .top_news_list .itiran:hover {
      background: #666; }
  .top_news_list .nopost {
    height: 100%;
    display: grid;
    align-content: center;
    text-align: center; }
    @media (max-width: 767px) {
      .top_news_list .nopost {
        margin: 3em auto; } }

@media (min-width: 768px) {
  .top_sns {
    margin: 3em auto; } }
@media (max-width: 767px) {
  .top_sns {
    margin: 0 auto; } }
.top_sns h3 {
  position: relative;
  text-align: center;
  color: #079156;
  width: fit-content;
  margin: 0 auto; }
  @media (min-width: 768px) {
    .top_sns h3 {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.6; } }
  @media (max-width: 767px) {
    .top_sns h3 {
      margin-top: 40px;
      padding-top: 20px;
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.5909090909; } }
  .top_sns h3 img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    object-fit: contain; }
    @media (min-width: 768px) {
      .top_sns h3 img {
        width: 100px;
        height: 100px;
        right: -100px; } }
    @media (max-width: 767px) {
      .top_sns h3 img {
        width: 65px;
        height: 65px;
        left: 45%;
        top: -50px;
        transform: translateX(-50%); } }
.top_sns ul {
  display: flex;
  column-gap: 20px;
  justify-content: center;
  margin: 2em auto; }
  .top_sns ul li {
    max-width: 300px; }
    @media (min-width: 768px) {
      .top_sns ul li {
        width: calc(100% / 2); } }
    .top_sns ul li h4 {
      color: #079156;
      text-align: center;
      margin-bottom: 10px; }
      @media (min-width: 768px) {
        .top_sns ul li h4 {
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 1.3333333333; } }
      @media (max-width: 767px) {
        .top_sns ul li h4 {
          font-size: 17px;
          font-size: 1.7rem;
          line-height: 1.4705882353; } }
    .top_sns ul li .sns_logo {
      display: flex;
      justify-content: center; }
      .top_sns ul li .sns_logo a {
        display: block;
        width: 80px;
        padding: 10px; }
        .top_sns ul li .sns_logo a:hover {
          opacity: .5; }

.top_about {
  position: relative;
  background: #fff;
  overflow: hidden; }
  .top_about .top_round {
    position: absolute;
    width: 100vw;
    top: 0; }
@icnclude pc {
  .top_about .top_round {
    left: 0;
    right: 0; } }
    @media (max-width: 767px) {
      .top_about .top_round {
        min-width: 400px;
        left: 50%;
        transform: translateX(-50%); } }
  .top_about .bottom_round {
    position: absolute;
    width: 100vw;
    bottom: 0; }
    @media (min-width: 768px) {
      .top_about .bottom_round {
        left: 0;
        right: 0; } }
    @media (max-width: 767px) {
      .top_about .bottom_round {
        min-width: 400px;
        left: 50%;
        transform: translateX(-50%); } }
  .top_about_wrapper {
    z-index: 1; }
    @media (min-width: 768px) {
      .top_about_wrapper {
        display: flex;
        align-items: center; } }
    @media (min-width: 768px) {
      .top_about_wrapper .text {
        width: 50%;
        min-height: 600px;
        display: grid;
        align-content: center; } }
    @media (max-width: 767px) {
      .top_about_wrapper .text {
        padding: 2em 0; } }
    .top_about_wrapper .text a {
      margin: 2em 0;
      background: #f08300;
      color: #fff;
      border-radius: 5px; }
      .top_about_wrapper .text a:hover {
        background: #666; }
    .top_about_wrapper .img {
      padding: 1em 2em; }
      @media (min-width: 768px) {
        .top_about_wrapper .img {
          width: 50%;
          max-width: 500px; } }
      @media (max-width: 767px) {
        .top_about_wrapper .img {
          width: 90%;
          margin: 0 auto; } }

.top_other {
  position: relative; }
  .top_other .other_illust_top {
    position: absolute;
    object-fit: contain;
    top: 5em;
    right: 10px; }
    @media (min-width: 768px) {
      .top_other .other_illust_top {
        width: 250px;
        height: 200px; } }
    @media (max-width: 767px) {
      .top_other .other_illust_top {
        width: 150px;
        height: 100px; } }
  .top_other .other_illust_bottom {
    position: absolute;
    object-fit: contain; }
    @media (min-width: 768px) {
      .top_other .other_illust_bottom {
        width: 200px;
        height: 150px;
        bottom: 7em;
        right: 5%; } }
    @media (max-width: 767px) {
      .top_other .other_illust_bottom {
        width: 100px;
        height: 80px;
        bottom: 4%;
        right: 8%; } }
  .top_other .other_illust_car {
    position: absolute;
    object-fit: contain;
    animation: car-move 3s linear infinite;
    animation-timing-function: ease-out; }
    @media (min-width: 768px) {
      .top_other .other_illust_car {
        width: 120px;
        height: 120px;
        bottom: 10%;
        right: 25%; } }
    @media (max-width: 767px) {
      .top_other .other_illust_car {
        width: 80px;
        height: 80px;
        bottom: 2%;
        right: 27%; } }
@keyframes car-move {
  0% {
    transform: translate(0, 0);
    opacity: 0; }
  20% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    transform: translate(100%, 80%);
    opacity: 0; } }
  .top_other ul {
    margin: 0 auto;
    padding-top: 8em; }
    @media (min-width: 768px) {
      .top_other ul {
        max-width: 800px;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        column-gap: 100px; } }
    @media (max-width: 767px) {
      .top_other ul {
        max-width: 250px; } }
    .top_other ul li {
      position: relative; }
      @media (min-width: 768px) {
        .top_other ul li {
          width: calc((100% / 2) - 50px);
          padding-top: calc((100% / 2) - 50px); } }
      @media (max-width: 767px) {
        .top_other ul li {
          width: 100%;
          padding-top: 100%;
          margin-bottom: 5em; } }
      @media (min-width: 768px) {
        .top_other ul li:nth-child(even) {
          margin-top: 10em; } }
      .top_other ul li a {
        position: absolute;
        border-radius: 100%;
        display: grid;
        background: #f08300;
        align-content: center;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 100%;
        height: 100%;
        text-align: center;
        color: #fff;
        font-family: "Zen Maru Gothic", sans-serif; }
        .top_other ul li a h3 {
          position: relative; }
          @media (min-width: 768px) {
            .top_other ul li a h3 {
              font-size: 30px;
              font-size: 3rem;
              line-height: 1.3333333333; } }
          @media (max-width: 767px) {
            .top_other ul li a h3 {
              font-size: 24px;
              font-size: 2.4rem;
              line-height: 1.25; } }
          .top_other ul li a h3 img {
            position: absolute;
            object-fit: contain;
            left: 50%;
            transform: translateX(-50%);
            width: 100%; }
            @media (min-width: 768px) {
              .top_other ul li a h3 img {
                height: 130px;
                top: -140px; } }
            @media (max-width: 767px) {
              .top_other ul li a h3 img {
                height: 100px;
                top: -110px; } }
          @media (min-width: 768px) {
            .top_other ul li a h3.open_campus img {
              height: 150px;
              top: -160px; } }
          @media (max-width: 767px) {
            .top_other ul li a h3.open_campus img {
              height: 100px;
              top: -100px; } }
          @media (min-width: 768px) {
            .top_other ul li a h3.gallery img {
              height: 100px;
              top: -110px; } }
          @media (max-width: 767px) {
            .top_other ul li a h3.gallery img {
              height: 90px;
              top: -80px; } }
          .top_other ul li a h3 span {
            position: relative;
            margin: 10px auto;
            display: block;
            width: fit-content;
            padding-left: 25px; }
            @media (min-width: 768px) {
              .top_other ul li a h3 span {
                font-size: 20px;
                font-size: 2rem;
                line-height: 1.2; } }
            @media (max-width: 767px) {
              .top_other ul li a h3 span {
                font-size: 17px;
                font-size: 1.7rem;
                line-height: 1.4117647059; } }
            .top_other ul li a h3 span .other_diamond {
              position: absolute;
              width: 20px;
              height: 20px;
              top: 50%;
              left: 0;
              transform: translateY(-50%); }
        .top_other ul li a p {
          position: relative;
          width: fit-content;
          margin: 0 auto;
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 1.3333333333;
          font-weight: 500; }
          @media (min-width: 768px) {
            .top_other ul li a p {
              padding: 1em 70px; } }
          @media (max-width: 767px) {
            .top_other ul li a p {
              padding: 10px 50px; } }
        .top_other ul li a:hover {
          background: #2c6ab4;
          transition: .3s; }
          .top_other ul li a:hover .view::before {
            transition: .3s;
            width: 30px;
            right: 5px; }

.top_department {
  margin-top: 5em; }
  .top_department h2 {
    text-align: center; }
    .top_department h2 span {
      display: block;
      width: fit-content;
      margin: 0 auto; }
  @media (min-width: 768px) {
    .top_department ul {
      display: flex; } }
  @media (min-width: 768px) {
    .top_department ul li {
      display: flex;
      flex-direction: column;
      width: calc(100% / 3); } }
  .top_department ul li a {
    display: flex;
    /* 直下の要素を並列に */
    flex-direction: column;
    padding: 2em;
    color: #fff; }
    @media (min-width: 768px) {
      .top_department ul li a {
        flex-grow: 1; } }
    .top_department ul li a.kaigo {
      background: #079156; }
    .top_department ul li a.global {
      background: #2c6ab4; }
    .top_department ul li a.japanese {
      background: #f08300; }
    .top_department ul li a .content {
      flex-grow: 1; }
    .top_department ul li a img {
      display: block;
      margin: 0 auto;
      padding: 1em;
      width: 70%;
      max-width: 150px; }
    .top_department ul li a h3 {
      position: relative;
      width: fit-content;
      margin: 0 auto;
      padding-left: 30px; }
      @media (min-width: 768px) {
        .top_department ul li a h3 {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 1.4583333333; } }
      @media (max-width: 767px) {
        .top_department ul li a h3 {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 1.4583333333; } }
      .top_department ul li a h3 img {
        position: absolute;
        left: 0;
        top: 10px;
        width: 20px;
        height: 20px;
        padding: 0; }
    .top_department ul li a p {
      padding: 1em; }
    .top_department ul li a .view {
      display: block;
      width: fit-content;
      margin: 0 auto;
      padding: 1em 50px; }
    .top_department ul li a:hover {
      background: #666; }
      .top_department ul li a:hover .view::before {
        width: 30px;
        right: 5px; }

.top_reconstruction {
  position: relative;
  min-height: 200px;
  padding: 4em; }
  .top_reconstruction_bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    object-fit: cover;
    width: 100%;
    height: 100%; }
    @media (max-width: 767px) {
      .top_reconstruction_bg {
        object-position: left; } }
  @media (min-width: 768px) {
    .top_reconstruction {
      background-position: center; } }
  @media (max-width: 767px) {
    .top_reconstruction {
      background-position: left; } }
  .top_reconstruction_wrapper {
    max-width: 800px;
    margin: 0 auto; }
  .top_reconstruction h2.diamond {
    text-align: center;
    color: #fff; }
    .top_reconstruction h2.diamond span {
      position: relative;
      display: block;
      margin: 0 auto;
      width: fit-content;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2;
      padding-left: 25px;
      margin-bottom: 10px; }
      .top_reconstruction h2.diamond span img {
        position: absolute;
        width: 20px;
        height: 20px;
        top: 50%;
        left: 0;
        transform: translateY(-50%); }
  .top_reconstruction p {
    color: #fff; }
  .top_reconstruction a {
    margin: 2em auto;
    background: #fff;
    color: #ff848f;
    border-radius: 5px; }
    .top_reconstruction a::after {
      border-left: 10px solid #ff848f;
      border-right: 0;
      transition: .3s; }
    .top_reconstruction a:hover {
      background: #ffc8ca; }

.top_donation {
  position: relative;
  min-height: 300px;
  padding: 2em; }
  .top_donation_wrapper {
    max-width: 800px; }
  .top_donation h2.diamond {
    text-align: center;
    color: #fff; }
    .top_donation h2.diamond span {
      position: relative;
      display: block;
      margin: 0 auto;
      width: fit-content;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2;
      padding-left: 25px;
      margin-bottom: 10px; }
      .top_donation h2.diamond span img {
        position: absolute;
        width: 20px;
        height: 20px;
        top: 50%;
        left: 0;
        transform: translateY(-50%); }
  .top_donation p {
    color: #fff; }
  .top_donation a {
    margin: 2em auto;
    background: #f08300;
    color: #fff;
    border-radius: 5px; }
    .top_donation a:hover {
      background: #666; }

.access {
  background: #fff; }
  .access_title {
    position: relative; }
    .access_title .car {
      position: absolute;
      object-fit: contain;
      width: 100px;
      height: 80px;
      right: 0;
      top: 0; }
  @media (min-width: 768px) {
    .access_wrapper {
      display: flex;
      flex-wrap: wrap;
      grid-gap: 60px; } }
  @media (min-width: 768px) {
    .access_wrapper > li {
      width: calc((100% / 2) - 30px); } }
  @media (max-width: 767px) {
    .access_wrapper > li {
      margin-bottom: 2em; } }
  .access_wrapper > li h4 {
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
    margin-bottom: 5px;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.4117647059; }
  .access_wrapper > li .way > li {
    text-indent: -1em;
    padding-left: 1em; }
    .access_wrapper > li .way > li::before {
      content: '●';
      color: #b3b3b3; }
  .access iframe {
    width: 100%;
    height: 400px; }
