body {
  padding: 0 !important;
}

@media screen and (max-width: 980px) {
  .header {
    opacity: 0;
    top: -50px;
    width: 100%;
  }
  .header.fixed {
    opacity: 1;
    top: 0;
  }
}

@media screen and (min-width: 981px) {
  .gnav__list a:not(.gnav-01) {
    border-color: #fff;
  }
}

@media screen and (min-width: 981px) {
  .index__top {
    display: none;
  }
}
@media screen and (max-width: 980px) {
  .index__top {
    background: #ffffff;
    padding: 1px 0;
    position: relative;
    text-align: center;
    z-index: 2;
  }
  .index__top-logo {
    margin: 25% auto 0;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%;
  }
  .index__top-logo img {
    height: auto;
    width: 73.95%;
  }
  .index__top-txt {
    left: 0;
    margin: -6em 0 0;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 100%;
  }
  .index__top-txt p {
    margin: 1.5% auto;
  }
  .index__top-txt span {
    font-size: 22px !important;
    font-size: 2.2rem !important;
    color: #27969e;
    float: none;
  }
  .index__top-txt-icn {
    height: auto;
    width: 38px;
  }
  .index__top-nav {
    border-bottom: 8px solid #27969e;
    bottom: 0;
    left: 0;
    margin: 6% 0 6%;
    position: absolute;
    width: 100%;
  }
  .index__top-nav ul {
    font-size: 0px !important;
    font-size: 0rem !important;
    margin: 0 auto 20px;
    max-width: 450px;
  }
  .index__top-nav li {
    box-sizing: border-box;
    display: inline-table;
    height: 100%;
    padding: 0 8px;
    vertical-align: top;
    width: 33%;
  }
  .index__top-nav li a {
    font-size: 14px !important;
    font-size: 1.4rem !important;
    background: #27969e;
    border: 3px solid #e8e8e8;
    border-radius: 50%;
    box-shadow: 0 0 7px rgba(30, 68, 71, 0.68);
    box-sizing: border-box;
    color: #fff;
    display: table-cell;
    height: 100%;
    vertical-align: middle;
  }
}
@media screen and (orientation: landscape) {
  .index__top {
    height: auto !important;
  }
  .index__top-logo {
    margin: 0 auto;
    padding: 30px 0 0;
    position: static;
    width: 200px;
  }
  .index__top-txt {
    position: static;
    margin: 0 auto;
  }
  .index__top-txt p {
    margin: 10px auto;
  }
  .index__top-nav {
    margin: 0 0 10px;
    padding: 0 0 30px;
    position: static;
  }
  .index__top-nav ul {
    font-size: 0px !important;
    font-size: 0rem !important;
    margin: 0 auto;
    max-width: 450px;
  }
  .index__top-nav li {
    box-sizing: border-box;
    display: inline-table;
    height: 100%;
    padding: 0 8px;
    vertical-align: top;
    width: 33%;
  }
  .index__top-nav li a {
    font-size: 14px !important;
    font-size: 1.4rem !important;
    background: #27969e;
    border: 3px solid #e8e8e8;
    border-radius: 50%;
    box-shadow: 0 0 7px rgba(30, 68, 71, 0.68);
    box-sizing: border-box;
    color: #fff;
    display: table-cell;
    height: 100%;
    vertical-align: middle;
  }
}
.index__news li {
  border-bottom: 1px solid #979797;
  padding: .5em 0;
}
.index__news-tag {
  color: #f00;
}
.index__news-tab {
  display: inline-block;
  line-height: 1.3;
  padding: .15em 1em 0;
  white-space: nowrap;
}
.index__news-tab.tab1 {
  background: #ffc0c0;
}
.index__news-tab.tab2 {
  background: #abf5ed;
}
.index__news-tab.tab3 {
  background: #9bf5bf;
}
.index__news-tab.tab4 {
  background: #fffdc0;
}
.index__news-tab.tab5 {
  background: #9bbdf5;
}
.index__news-tab.tab6 {
  background: #e4abf5;
}

.index__news a {
  display: block;
  margin: .5em 0 0;
}
@media screen and (max-width: 980px) {
  .index__top-nologo {
    margin: 7% 0 0;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%;
  }

  .index__top-nologo span{
    display: block;
    color: #434343;
    font-size: 25px;
    font-weight: bold;
    margin: 8% 5%;
  }
}

@media screen and (orientation: landscape) {
  .index__top-nologo {
    margin: 0 auto;
    padding: 30px 0 0;
    position: static;
    width: 500px;
  }
}

/* ○○さんに届いたお知らせを見る */
#notificationLink {
  text-align: center;
  margin-top: 20px;
}

@media screen and (min-width: 600px) {
  #notificationLink {
    text-align: right;
    margin-right: 20px;
  }
}

.notification-link-btn {
  display: inline-block;
  width: 300px;
  padding: 7px 25px;
  background-color: #f47794;
  color: #fff;
  font-size: 14px;
  text-decoration: none;
  border-radius: 10px;
  border: 2px solid transparent;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  text-align: center;
  line-height: 1.5;
}

.notification-link-btn:hover {
  background-color: #fff;
  color: #f47794;
  border-color: #f47794;
  text-decoration: none;
}

.notification-link-btn:active {
  transform: translateY(1px);
}

@media screen and (max-width: 599px) {
  .notification-link-btn {
    width: 80%;
    font-size: 3.5vw;
  }
}
