@charset "UTF-8";
/* Scss Document */
/* WEB FONT
========================================================================== */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url("https://fonts.googleapis.com/css?family=Noto+Sans");
@import url(https://fonts.googleapis.com/css?family=Overpass:600,800);
@font-face {
  font-family: "NotoSansCJKjp-Medium";
  src: url("../webfonts/NotoSansCJKjp-Medium.woff2") format("woff2"), url("../webfonts/NotoSansCJKjp-Medium.woff") format("woff"), url("../webfonts/NotoSansCJKjp-Medium.otf") format("opentype"); }
.NotoSansCJKjp-Medium {
  font-family: "NotoSansCJKjp-Medium", 'Noto Sans Japanese';
  font-weight: 500; }

/* COMMON
========================================================================== */
* {
  font-family: 'Noto Sans Japanese';
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.overpass {
  font-family: 'Overpass', sans-serif; }

.white {
  color: #fff; }

.red {
  color: #bb1c24; }

.fade {
  opacity: 1;
  transition: opacity 300ms 0s ease;
  backface-visibility: hidden; }

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none; } }
.fade:hover {
  opacity: .5; }

.pc-br {
  display: block; }
  @media only screen and (max-width: 767px) {
    .pc-br {
      display: inline; } }

@media only screen and (max-width: 767px) {
  .sp-br {
    display: block; } }

@media only screen and (max-width: 767px) {
  .pc-cont {
    display: none; } }

.sp-cont {
  display: none; }
  @media only screen and (max-width: 767px) {
    .sp-cont {
      display: inline-block; } }

img.responsive {
  width: 100%;
  max-width: 100%;
  height: auto; }

img.resize {
  width: 100%;
  height: auto; }

html, body {
  background-color: #fff;
  padding: 0;
  margin: 0;
  color: #333; }

button {
  border: none;
  outline: none; }

a,
button,
.switch {
  color: #333; }
  a.arrow-up:after,
  button.arrow-up:after,
  .switch.arrow-up:after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 12px;
    padding: 0;
    margin: 0 0 0 2px;
    background-image: url(../img/common/arrow.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto auto;
    position: relative;
    bottom: -1px; }
  a.arrow-up.active:after, a.arrow-up.ft-active:after,
  button.arrow-up.active:after,
  button.arrow-up.ft-active:after,
  .switch.arrow-up.active:after,
  .switch.arrow-up.ft-active:after {
    transform: rotate(-180deg); }

.switch.arrow-up:after {
  position: absolute;
  right: 35px;
  top: 0px;
  height: 56px; }
  @media only screen and (max-width: 767px) {
    .switch.arrow-up:after {
      right: 10px; } }
.switch.arrow-up.open:after {
  transform: rotate(-180deg); }

/* LAYOUT
========================================================================== */
.site-wrapper {
  width: 100%;
  min-width: 1024px; }
  @media only screen and (max-width: 767px) {
    .site-wrapper {
      min-width: 320px; } }
  .site-wrapper.lower .site-header {
    background-color: rgba(255, 255, 255, 0.9); }
  .site-wrapper .site-header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000; }
    .site-wrapper .site-header:after {
      content: "";
      width: 100%;
      height: 61px;
      background-color: rgba(255, 255, 255, 0.7);
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1000; }
    .site-wrapper .site-header .site-header-inner {
      width: 1000px;
      margin: 0 auto;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .site-wrapper .site-header .site-header-inner {
          width: 100%; } }
  .site-wrapper .site-main {
    width: 100%; }
    .site-wrapper .site-main .site-main-wrap {
      width: 1000px;
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        .site-wrapper .site-main .site-main-wrap {
          width: 100%; } }
    .site-wrapper .site-main .background-gray {
      width: 100%;
      background-color: #e8e8e8;
      padding-top: 100px;
      padding-bottom: 1px;
      margin-bottom: 100px; }
      @media only screen and (max-width: 767px) {
        .site-wrapper .site-main .background-gray {
          padding-top: 60px;
          margin-bottom: 60px; } }
  .site-wrapper .site-footer {
    width: 1000px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      .site-wrapper .site-footer {
        width: 100%; } }

/* HEADER
========================================================================== */
@media (min-width: 767px) {
  .lower.information .site-nav-bottom .site-nav-bottom-links li:nth-child(2) a:after,
  .lower.information .site-nav-bottom .site-nav-bottom-links li:nth-child(2) button:after {
    transform: scale(1, 1); }
  .lower.about .site-nav-bottom .site-nav-bottom-links li:nth-child(1) a:after,
  .lower.about .site-nav-bottom .site-nav-bottom-links li:nth-child(1) button:after {
    transform: scale(1, 1); }
  .lower.program .site-nav-bottom .site-nav-bottom-links li:nth-child(3) a:after,
  .lower.program .site-nav-bottom .site-nav-bottom-links li:nth-child(3) button:after {
    transform: scale(1, 1); }
  .lower.program.prog01 .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul li:nth-child(1) a:after {
    transform: scale(1, 1) !important; }
  .lower.program.prog02 .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul li:nth-child(2) a:after {
    transform: scale(1, 1) !important; }
  .lower.program.prog03 .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul li:nth-child(3) a:after {
    transform: scale(1, 1) !important; }
  .lower.program.prog04 .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul li:nth-child(4) a:after {
    transform: scale(1, 1) !important; }
  .lower.program.prog06 .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul li:nth-child(2) a:after {
    transform: scale(1, 1) !important; }
  .lower.ticket .site-nav-bottom .site-nav-bottom-links li:nth-child(4) a:after,
  .lower.ticket .site-nav-bottom .site-nav-bottom-links li:nth-child(4) button:after {
    transform: scale(1, 1); }
  .lower.venue .site-nav-bottom .site-nav-bottom-links li:nth-child(5) a:after,
  .lower.venue .site-nav-bottom .site-nav-bottom-links li:nth-child(5) button:after {
    transform: scale(1, 1); }
  .lower.support .site-nav-bottom .site-nav-bottom-links li:nth-child(8) a:after,
  .lower.support .site-nav-bottom .site-nav-bottom-links li:nth-child(8) button:after {
    transform: scale(1, 1); }
  .lower.blog .site-nav-bottom .site-nav-bottom-links li:nth-child(6) a:after,
  .lower.blog .site-nav-bottom .site-nav-bottom-links li:nth-child(6) button:after {
    transform: scale(1, 1); }
  .lower.blog .site-main {
    padding-top: 140px;
    background: -webkit-gradient(linear, left top, right top, from(rgba(0, 150, 115, 0.5)), to(rgba(0, 128, 128, 0.5)));
    background: -webkit-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
    background: -moz-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
    background: -o-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
    background: linear-gradient(to right, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5)); }
    .lower.blog .site-main .breadcrumblist ol {
      color: #fff; }
      .lower.blog .site-main .breadcrumblist ol li a {
        color: #fff; }
    .lower.blog .site-main .sec-title {
      color: #fff; }
  .lower.access .site-nav-top .site-nav-top-links li:nth-child(1) a .hover-border:after,
  .lower.access .site-nav-top .site-nav-top-links li:nth-child(1) button .hover-border:after {
    transform: scale(1, 1); }
  .lower.spot .site-nav-top .site-nav-top-links li:nth-child(2) a .hover-border:after,
  .lower.spot .site-nav-top .site-nav-top-links li:nth-child(2) button .hover-border:after {
    transform: scale(1, 1); }
  .lower.inquiry .site-nav-top .site-nav-top-links li:nth-child(3) a .hover-border:after,
  .lower.inquiry .site-nav-top .site-nav-top-links li:nth-child(3) button .hover-border:after {
    transform: scale(1, 1); }
  .lower.group .site-nav-top .site-nav-top-links li:nth-child(4) a:after,
  .lower.group .site-nav-top .site-nav-top-links li:nth-child(4) button:after {
    transform: scale(1, 1); }

  .menu-trigger {
    display: none; }

  .site-header-title {
    padding: 0;
    margin: 0;
    position: absolute;
    top: 18px;
    left: 0px; }
    .site-header-title a {
      font-family: 'Overpass', sans-serif;
      font-weight: 800;
      font-size: 39px;
      color: #333;
      text-decoration: none;
      padding: 0;
      margin: 0;
      display: inline-block; }

  .site-nav-top {
    width: 100%;
    padding: 10px 0 0 0;
    margin: 0; }
    .site-nav-top .site-nav-top-links {
      width: 100%;
      list-style: none;
      padding: 0 180px 0 0;
      margin: 0;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-end; }
      .site-nav-top .site-nav-top-links li {
        padding: 0;
        margin: 0 0 0 10px;
        position: relative; }
        .site-nav-top .site-nav-top-links li:nth-child(4) {
          position: absolute;
          left: 0;
          top: 55px;
          padding: 0;
          margin: 0; }
          .site-nav-top .site-nav-top-links li:nth-child(4) a {
            padding: 0px;
            position: relative;
            display: inline-block;
            font-size: 14px; }
            .site-nav-top .site-nav-top-links li:nth-child(4) a:after {
              position: absolute;
              bottom: 0px;
              left: 0;
              content: '';
              width: 100%;
              height: 2px;
              background: #333;
              transform: scale(0, 1);
              transform-origin: left top;
              transition: transform .3s; }
            .site-nav-top .site-nav-top-links li:nth-child(4) a:hover:after {
              transform: scale(1, 1); }
          .site-nav-top .site-nav-top-links li:nth-child(4) .spacer {
            width: 20px;
            display: inline-block; }
        .site-nav-top .site-nav-top-links li:nth-child(5) {
          right: 100px;
          top: 0;
          position: absolute; }
          .site-nav-top .site-nav-top-links li:nth-child(5) a,
          .site-nav-top .site-nav-top-links li:nth-child(5) button {
            line-height: 32px;
            padding: 0;
            background-color: #fff;
            width: 68px;
            font-family: 'Overpass', sans-serif;
            font-weight: 400;
            font-size: 13px; }
            .site-nav-top .site-nav-top-links li:nth-child(5) a:after,
            .site-nav-top .site-nav-top-links li:nth-child(5) button:after {
              background-size: 7px auto; }
        .site-nav-top .site-nav-top-links li:nth-child(6) {
          right: 0;
          top: 0;
          position: absolute; }
          .site-nav-top .site-nav-top-links li:nth-child(6) a,
          .site-nav-top .site-nav-top-links li:nth-child(6) button {
            line-height: 32px;
            padding: 0;
            background-color: #fff;
            width: 96px;
            font-family: 'Overpass', sans-serif;
            font-weight: 400;
            font-size: 13px; }
            .site-nav-top .site-nav-top-links li:nth-child(6) a:after,
            .site-nav-top .site-nav-top-links li:nth-child(6) button:after {
              background-size: 7px auto; }
        .site-nav-top .site-nav-top-links li a,
        .site-nav-top .site-nav-top-links li button {
          text-decoration: none;
          color: #333;
          line-height: 33px;
          padding: 0 9.5px;
          display: block;
          text-align: center;
          cursor: pointer;
          font-size: 13px; }
          .site-nav-top .site-nav-top-links li a .hover-border,
          .site-nav-top .site-nav-top-links li button .hover-border {
            position: relative;
            display: inline-block;
            text-decoration: none; }
            .site-nav-top .site-nav-top-links li a .hover-border:after,
            .site-nav-top .site-nav-top-links li button .hover-border:after {
              position: absolute;
              bottom: 0px;
              left: 0;
              content: '';
              width: 100%;
              height: 2px;
              background: #333;
              transform: scale(0, 1);
              transform-origin: left top;
              transition: transform .3s; }
          .site-nav-top .site-nav-top-links li a:hover .hover-border:after,
          .site-nav-top .site-nav-top-links li button:hover .hover-border:after {
            transform: scale(1, 1); }
          .site-nav-top .site-nav-top-links li a.border,
          .site-nav-top .site-nav-top-links li button.border {
            border: solid 1px #fff;
            line-height: 31px;
            padding: 0 8.5px;
            transition: border 300ms 0s ease; }
            .site-nav-top .site-nav-top-links li a.border:hover,
            .site-nav-top .site-nav-top-links li button.border:hover {
              border: solid 1px #333; }
        .site-nav-top .site-nav-top-links li .sns-wrap {
          top: 32px;
          left: -31px;
          position: absolute;
          margin: 0;
          width: 124px;
          display: flex;
          justify-content: space-around;
          align-items: center;
          background-color: rgba(255, 255, 255, 0.9);
          height: 0px;
          visibility: hidden;
          opacity: 0;
          transition: all 100ms 0s ease;
          z-index: 10;
          padding: 0; }
          .site-nav-top .site-nav-top-links li .sns-wrap a {
            padding: 0;
            margin: 0;
            background-color: rgba(255, 255, 255, 0);
            line-height: 38px;
            height: 33px; }
          .site-nav-top .site-nav-top-links li .sns-wrap.open {
            height: 33px;
            opacity: 1;
            visibility: visible; }
        .site-nav-top .site-nav-top-links li .language {
          top: 32px;
          position: absolute;
          z-index: 10;
          background-color: rgba(255, 255, 255, 0.9);
          height: 0px;
          visibility: hidden;
          opacity: 0;
          transition: all 100ms 0s ease; }
          .site-nav-top .site-nav-top-links li .language a {
            height: 23px;
            display: block;
            text-align: left;
            background-color: rgba(255, 255, 255, 0);
            display: flex;
            align-items: center; }
            .site-nav-top .site-nav-top-links li .language a .left-border {
              display: block;
              border-left: solid 2px #333;
              margin: 0 0 0 13px;
              padding: 0 0 0 5px;
              font-family: 'Overpass', sans-serif;
              font-weight: 400;
              font-size: 14px;
              line-height: 1em; }
          .site-nav-top .site-nav-top-links li .language.open {
            /*height: 48px;*/
            height: 125px;
            opacity: 1;
            visibility: visible;
            z-index: 100; }

  .site-nav-bottom {
    width: 100%;
    margin-top: 75px;
    padding-bottom: 22px;
    padding-right: 9.5px;
    position: relative; }
    .site-nav-bottom .site-nav-bottom-links {
      list-style: none;
      display: flex;
      justify-content: space-around;
      padding: 0;
      margin: 0; }
      .site-nav-bottom .site-nav-bottom-links li {
        padding: 0;
        margin: 0; }
        .site-nav-bottom .site-nav-bottom-links li a,
        .site-nav-bottom .site-nav-bottom-links li button {
          position: relative;
          display: inline-block;
          text-decoration: none;
          color: #333;
          font-size: 16px;
          background-color: rgba(255, 255, 255, 0);
          cursor: pointer;
          padding: 0;
          margin: 0;
          font-weight: 500; }
          .site-nav-bottom .site-nav-bottom-links li a:after,
          .site-nav-bottom .site-nav-bottom-links li button:after {
            position: absolute;
            bottom: -7px;
            left: 0;
            content: '';
            width: 100%;
            height: 2px;
            background: #333;
            transform: scale(0, 1);
            transform-origin: left top;
            transition: transform .3s; }
          .site-nav-bottom .site-nav-bottom-links li a:hover:after,
          .site-nav-bottom .site-nav-bottom-links li button:hover:after {
            transform: scale(1, 1); }
        .site-nav-bottom .site-nav-bottom-links li ul {
          list-style: none;
          width: 100%;
          padding: 0;
          margin: 0;
          display: flex;
          flex-wrap: wrap;
          background-color: rgba(0, 0, 0, 0.8);
          position: absolute;
          left: 0px;
          top: 40px;
          padding: 10px 35px 25px 35px;
          height: 0px;
          visibility: hidden;
          opacity: 0;
          transition: all 100ms 0s ease; }
          .site-nav-bottom .site-nav-bottom-links li ul.open {
            visibility: visible;
            opacity: 1;
            height: 101px; }
            .site-nav-bottom .site-nav-bottom-links li ul.open:before {
              content: "";
              width: 0;
              height: 0;
              border-style: solid;
              border-width: 0 5px 12px 5px;
              border-color: transparent transparent rgba(0, 0, 0, 0.8) transparent;
              position: absolute;
              top: -12px; }
          .site-nav-bottom .site-nav-bottom-links li ul li {
            width: 33.333%;
            margin: 15px 0 0 0;
            padding: 0; }
            .site-nav-bottom .site-nav-bottom-links li ul li a {
              color: #fff;
              position: relative; }
              .site-nav-bottom .site-nav-bottom-links li ul li a:before {
                width: 2px;
                height: 20px;
                content: "";
                background-color: #fff;
                display: inline-block;
                position: absolute;
                left: -10px;
                top: -2px; }
              .site-nav-bottom .site-nav-bottom-links li ul li a:after {
                background: #fff;
                transform: scale(0, 1) !important; }
              .site-nav-bottom .site-nav-bottom-links li ul li a:hover:after {
                transform: scale(1, 1) !important; }
        .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul.open:before {
          left: 576px; }
        .site-nav-bottom .site-nav-bottom-links li:nth-child(7) {
          position: absolute;
          top: -60px;
          right: 140px; }
          .site-nav-bottom .site-nav-bottom-links li:nth-child(7) a {
            font-size: 16px;
            font-weight: 700; }
          .site-nav-bottom .site-nav-bottom-links li:nth-child(7) ul.open {
            position: absolute;
            left: 0px; }
            .site-nav-bottom .site-nav-bottom-links li:nth-child(7) ul.open:before {
              right: 116px; }
        .site-nav-bottom .site-nav-bottom-links li:nth-child(8) {
          position: absolute;
          top: -60px;
          right: 20px; }
          .site-nav-bottom .site-nav-bottom-links li:nth-child(8) a,
          .site-nav-bottom .site-nav-bottom-links li:nth-child(8) button {
            font-size: 16px;
            font-weight: 700; }
          .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul {
            left: -916px;
            width: 1000px; }
            .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open:before {
              right: 45px; }
            .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open li a {
              font-size: 14px; }

  /*.lower .site-header,*/
  .is-animation {
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 1px 1px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }
    .is-animation.site-header:after {
      display: none; }
    .is-animation .site-header-title {
      font-size: 26px;
      top: 12px; }
      .is-animation .site-header-title a {
        font-size: 28px; }
    .is-animation .site-nav-top {
      padding: 0; }
      .is-animation .site-nav-top .site-nav-top-links {
        padding-right: 170px; }
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(4) {
          left: 285px;
          top: 15px; }
          .is-animation .site-nav-top .site-nav-top-links li:nth-child(4) a {
            font-size: 12px; }
          .is-animation .site-nav-top .site-nav-top-links li:nth-child(4) .spacer {
            width: 10px; }
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(5) {
          right: 97px; }
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(5), .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) {
          position: absolute; }
          .is-animation .site-nav-top .site-nav-top-links li:nth-child(5) a,
          .is-animation .site-nav-top .site-nav-top-links li:nth-child(5) button, .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) a,
          .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) button {
            font-size: 14px;
            width: auto;
            line-height: 27px;
            padding: 0 9.5px;
            background-color: #cccccc;
            color: #fff; }
            .is-animation .site-nav-top .site-nav-top-links li:nth-child(5) a:after,
            .is-animation .site-nav-top .site-nav-top-links li:nth-child(5) button:after, .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) a:after,
            .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) button:after {
              background-image: url(../img/common/arrow_white.svg); }
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) a,
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(6) button, .is-animation .site-nav-top .site-nav-top-links li:nth-child(7) a,
        .is-animation .site-nav-top .site-nav-top-links li:nth-child(7) button {
          font-size: 13px; }
        .is-animation .site-nav-top .site-nav-top-links li a,
        .is-animation .site-nav-top .site-nav-top-links li button {
          font-size: 13px; }
        .is-animation .site-nav-top .site-nav-top-links li .sns-wrap {
          top: 27px;
          margin: 0 0 0 -32px;
          padding: 0;
          left: 0px;
          position: absolute; }
          .is-animation .site-nav-top .site-nav-top-links li .sns-wrap.open {
            height: 33px;
            background-color: #cccccc; }
          .is-animation .site-nav-top .site-nav-top-links li .sns-wrap a {
            height: 33px;
            line-height: 38px; }
        .is-animation .site-nav-top .site-nav-top-links li .language {
          top: 27px;
          margin: 0;
          padding: 0;
          width: 100%; }
          .is-animation .site-nav-top .site-nav-top-links li .language a {
            width: 93px;
            height: 23px;
            padding: 0; }
            .is-animation .site-nav-top .site-nav-top-links li .language a .left-border {
              margin-left: 0;
              margin: 0 0 0 11px;
              padding: 0 0 0 5px;
              line-height: 1em;
              border-left-color: #fff; }
          .is-animation .site-nav-top .site-nav-top-links li .language.open {
            height: 22px; }
    .is-animation .site-nav-bottom {
      margin-top: 20px;
      padding-bottom: 20px; }
      .is-animation .site-nav-bottom .site-nav-bottom-links {
        justify-content: space-between; }
        .is-animation .site-nav-bottom .site-nav-bottom-links li {
          margin-left: 0; }
          .is-animation .site-nav-bottom .site-nav-bottom-links li a,
          .is-animation .site-nav-bottom .site-nav-bottom-links li button {
            font-size: 14px; }
          .is-animation .site-nav-bottom .site-nav-bottom-links li ul {
            list-style: none;
            width: 100%;
            padding: 0;
            margin: 0;
            display: flex;
            flex-wrap: wrap;
            background-color: rgba(0, 0, 0, 0.8);
            position: absolute;
            left: 0px;
            top: 40px;
            padding: 10px 35px 25px 35px;
            height: 0px;
            visibility: hidden;
            opacity: 0;
            transition: all 100ms 0s ease; }
            .is-animation .site-nav-bottom .site-nav-bottom-links li ul.open {
              visibility: visible;
              opacity: 1;
              height: 101px; }
              .is-animation .site-nav-bottom .site-nav-bottom-links li ul.open:before {
                content: "";
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 0 5px 12px 5px;
                border-color: transparent transparent rgba(0, 0, 0, 0.8) transparent;
                position: absolute;
                top: -12px; }
            .is-animation .site-nav-bottom .site-nav-bottom-links li ul li {
              width: 33.333%;
              margin: 15px 0 0 0;
              padding: 0; }
              .is-animation .site-nav-bottom .site-nav-bottom-links li ul li a {
                color: #fff;
                position: relative; }
                .is-animation .site-nav-bottom .site-nav-bottom-links li ul li a:before {
                  width: 2px;
                  height: 20px;
                  content: "";
                  background-color: #fff;
                  display: inline-block;
                  position: absolute;
                  left: -10px;
                  top: -2px; }
                .is-animation .site-nav-bottom .site-nav-bottom-links li ul li a:after {
                  background: #fff; }
          .is-animation .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul.open:before {
            left: 445px; }
          .is-animation .site-nav-bottom .site-nav-bottom-links li:nth-child(7) {
            position: static;
            top: auto;
            right: auto; }
          .is-animation .site-nav-bottom .site-nav-bottom-links li:nth-child(8) {
            position: static;
            top: auto;
            right: auto; }
            .is-animation .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open:before {
              right: 31px; } }
@media (max-width: 767px) {
  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box; }

  .menu-trigger {
    position: absolute;
    width: 30px;
    height: 20px;
    top: 15px;
    right: 15px;
    z-index: 999;
    background-color: #fff;
    cursor: pointer; }

  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #333;
    border-radius: 4px; }

  .menu-trigger span:nth-of-type(1) {
    top: 0; }

  .menu-trigger span:nth-of-type(2) {
    top: 8px; }

  .menu-trigger span:nth-of-type(3) {
    bottom: 0; }

  .menu-trigger.menu-active span:nth-of-type(1) {
    -webkit-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg); }

  .menu-trigger.menu-active span:nth-of-type(2) {
    opacity: 0; }

  .menu-trigger.menu-active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg); }

  .site-header-title {
    font-family: 'Overpass', sans-serif;
    font-weight: 800;
    font-size: 24px;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 0 0 0 15px;
    margin: 0;
    line-height: 54px;
    height: 50px;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 100;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 1px 1px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }
    .site-header-title a {
      color: #333;
      text-decoration: none;
      line-height: 1em;
      padding: 0;
      margin: 0; }

  .nav-wrap {
    width: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
    position: fixed;
    height: 0px;
    top: 0px;
    left: 0px;
    background-color: #fff;
    visibility: hidden;
    opacity: 0;
    height: 0px;
    transition: all 300ms 0s ease; }
    .nav-wrap.menu-open {
      height: 100%;
      visibility: visible;
      opacity: 1; }
    .nav-wrap .nav-wrap-inner {
      display: flex;
      flex-direction: column-reverse; }
      .nav-wrap .nav-wrap-inner .site-nav-bottom {
        width: 100%;
        height: auto;
        padding: 50px 0 0 0;
        margin: 0; }
        .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links {
          width: 100%;
          height: auto;
          padding: 0;
          margin: 0;
          list-style: none;
          border-bottom: solid 20px #eaeaea; }
          .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li {
            width: 100%; }
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li a,
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li button {
              width: 90%;
              line-height: normal;
              text-decoration: none;
              background-color: rgba(255, 255, 255, 0);
              border: none;
              outline: none;
              padding: 20px 0 5px 0;
              margin: 0 auto;
              text-align: left;
              color: #333;
              font-size: 15px;
              display: block;
              cursor: pointer;
              border-bottom: solid 1px #e6e6e6; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li a.trigger,
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li button.trigger {
                display: flex;
                justify-content: space-between;
                align-items: center; }
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li a.trigger:after,
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li button.trigger:after {
                  display: inline-block;
                  content: "";
                  width: 14px;
                  height: 12px;
                  padding: 0;
                  margin: 0 0 0 2px;
                  background-image: url(../img/common/arrow.svg);
                  background-repeat: no-repeat;
                  background-position: center center;
                  background-size: auto auto;
                  position: relative;
                  bottom: -1px; }
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li a.trigger.active:after,
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li button.trigger.active:after {
                  transform: rotate(-180deg); }
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(3) ul.open {
              height: 130px; }
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(7) {
              margin-top: 25px;
              background-color: #eaeaea; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(7) a {
                border-bottom: solid 1px #fff; }
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) {
              background-color: #eaeaea; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) a, .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) button {
                border-bottom: solid 1px #fff; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open {
                height: 100px; }
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open li {
                  padding: 5px 0 5px 1.777em; }
                  .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.open li a {
                    line-height: 21px;
                    border-left: solid 2px #333;
                    padding: 0 0 0 5px;
                    font-size: 13px;
                    display: block;
                    border-bottom: none; }
            .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li ul {
              padding: 0;
              margin: 0;
              list-style: none;
              visibility: hidden;
              opacity: 0;
              height: 0px;
              transition: all 300ms 0s ease; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li ul.open {
                padding: 10px 0 0 0;
                opacity: 1;
                visibility: visible; }
              .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li ul li {
                padding: 5px 0 5px 1.777em; }
                .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li ul li a {
                  line-height: 21px;
                  border-left: solid 2px #333;
                  padding: 0 0 0 5px;
                  font-size: 13px;
                  display: block;
                  border-bottom: none; }
      .nav-wrap .nav-wrap-inner .site-nav-top {
        width: 100%;
        padding-bottom: 50px; }
        .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links {
          width: 100%;
          height: auto;
          padding: 0;
          margin: 0;
          list-style: none; }
          .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li {
            width: 100%; }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li a,
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li button {
              width: 90%;
              line-height: normal;
              text-decoration: none;
              background-color: rgba(255, 255, 255, 0);
              border: none;
              outline: none;
              padding: 20px 0 5px 0;
              margin: 0 auto;
              text-align: left;
              color: #333;
              font-size: 15px;
              display: block;
              cursor: pointer;
              border-bottom: solid 1px #e6e6e6; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li a.trigger,
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li button.trigger {
                display: flex;
                justify-content: space-between;
                align-items: center; }
                .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li a.trigger:after,
                .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li button.trigger:after {
                  display: inline-block;
                  content: "";
                  width: 14px;
                  height: 12px;
                  padding: 0;
                  margin: 0 0 0 2px;
                  background-image: url(../img/common/arrow.svg);
                  background-repeat: no-repeat;
                  background-position: center center;
                  background-size: auto auto;
                  position: relative;
                  bottom: -1px; }
                .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li a.trigger.active:after,
                .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li button.trigger.active:after {
                  transform: rotate(-180deg); }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li .sns-wrap {
              width: 100%;
              display: flex;
              justify-content: center; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li .sns-wrap a {
                width: auto;
                font-size: 28px;
                padding: 0;
                margin: 0 7px;
                border: none; }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li .language {
              width: 90%;
              margin: 0 auto;
              display: flex;
              flex-wrap: wrap;
              justify-content: center;
              margin-top: 10px; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li .language a {
                width: 33.333%;
                font-size: 15px;
                padding: 0;
                margin: 0 0 10px 0;
                border: none;
                display: block;
                text-align: center;
                /*&:nth-child(2) {
                	margin: 0 15px;
                	padding: 0 15px;
                	border-left: solid 1px #e6e6e6;
                	border-right: solid 1px #e6e6e6;
                }*/ }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(4) {
              margin-top: 25px;
              background-color: #eaeaea;
              display: flex; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(4) a {
                width: 50%;
                padding: 0;
                line-height: 51px;
                text-align: center; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(4) .spacer {
                display: inline-block;
                width: 30px;
                display: none; }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(5) button {
              text-align: center;
              border-bottom: none;
              justify-content: center; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(5) button:after {
                display: none; }
            .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(6) button {
              text-align: center;
              border-bottom: none;
              justify-content: center; }
              .nav-wrap .nav-wrap-inner .site-nav-top .site-nav-top-links li:nth-child(6) button:after {
                display: none; } }
.lower.blog .site-main {
  padding-top: 205px;
  padding-bottom: 60px;
  margin-bottom: 60px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 150, 115, 0.5)), to(rgba(0, 128, 128, 0.5)));
  background: -webkit-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
  background: -moz-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
  background: -o-linear-gradient(left, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5));
  background: linear-gradient(to right, rgba(0, 150, 115, 0.5), rgba(0, 128, 128, 0.5)); }
  @media only screen and (max-width: 767px) {
    .lower.blog .site-main {
      padding-top: 125px; } }
  .lower.blog .site-main h2.sec-title {
    font-size: 30px;
    color: #fff;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.9);
    margin-bottom: 40px; }

/* FOOTER
========================================================================== */
.footer-nav {
  width: 100%;
  border-top: solid 1px #333;
  border-bottom: solid 1px #333; }
  @media only screen and (max-width: 767px) {
    .footer-nav {
      display: none; } }
  .footer-nav button {
    background-color: rgba(255, 255, 255, 0);
    outline: none;
    border: none;
    cursor: pointer;
    text-align: left;
    padding: 0;
    margin: 0; }
    .footer-nav button.accordion {
      font-family: 'Overpass', sans-serif;
      font-weight: 800;
      padding: 5px 0 0 0;
      margin: 0;
      font-size: 19px;
      line-height: 75px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%; }
      .footer-nav button.accordion:after {
        margin-right: 20px; }
  .footer-nav .footer-nav-wrap {
    width: 100%;
    padding: 0;
    margin: 0;
    display: none; }
    .footer-nav .footer-nav-wrap .footer-nav-top,
    .footer-nav .footer-nav-wrap .footer-nav-bottom {
      width: 100%;
      padding: 0;
      margin: 0; }
      .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links,
      .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links,
      .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links,
      .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex; }
        .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li,
        .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li,
        .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li,
        .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li {
          margin-right: 40px; }
          .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(4),
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(4),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) {
            width: 84px; }
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(4) button,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(4) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) button {
              font-family: 'Overpass', sans-serif;
              font-weight: 600; }
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(4) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(4) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) ul.ft-open {
              height: 84px;
              visibility: visible;
              opacity: 1; }
          .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(5),
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(5),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) {
            width: 87px; }
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(5) button,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(5) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) button {
              font-family: 'Overpass', sans-serif;
              font-weight: 600; }
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li:nth-child(5) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li:nth-child(5) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) ul.ft-open {
              height: 125px;
              visibility: visible;
              opacity: 1; }
          .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li a,
          .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li button,
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li a,
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li button,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li a,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li button,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li a,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li button {
            color: #333;
            text-decoration: none;
            font-size: 13px; }
          .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li ul,
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li ul,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li ul,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li ul {
            list-style: none;
            padding: 0;
            margin: 0;
            height: 0px;
            visibility: hidden;
            opacity: 0;
            transition: all 300ms 0s ease; }
            .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li ul li,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li ul li,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li ul li,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li ul li {
              margin: 5px 0;
              position: relative; }
              .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links li ul li a,
              .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li ul li a,
              .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links li ul li a,
              .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li ul li a {
                width: 128px;
                font-size: 13px;
                line-height: 21px;
                padding: 0 0 0 7px;
                margin: 0;
                border-left: solid 2px #333;
                display: inline-block;
                position: relative; }
      .footer-nav .footer-nav-wrap .footer-nav-top .footer-nav-top-links,
      .footer-nav .footer-nav-wrap .footer-nav-bottom .footer-nav-top-links {
        padding-bottom: 30px; }
      .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links,
      .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links {
        justify-content: space-between;
        padding-bottom: 40px; }
        .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li,
        .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li {
          margin-right: 0px; }
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(3), .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4), .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5), .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(6),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(3),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(6) {
            width: auto; }
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(3) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(3) button, .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(4) button, .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(5) button, .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(6) a,
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(6) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(3) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(3) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(4) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(5) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(6) a,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(6) button {
              font-family: 'Noto Sans Japanese';
              font-weight: 400;
              font-size: 13px; }
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li a,
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li a {
            font-size: 14px; }
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(3),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(3) {
            width: 83px; }
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(3) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(3) ul.ft-open {
              /*height: 95px;*/
              height: 84px;
              visibility: visible;
              opacity: 1; }
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(7),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(7) {
            width: auto; }
          .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(8),
          .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(8) {
            width: 70px;
            font-size: 14px; }
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(8) button,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(8) button {
              vertical-align: -2px; }
            .footer-nav .footer-nav-wrap .footer-nav-top .site-nav-bottom-links li:nth-child(8) ul.ft-open,
            .footer-nav .footer-nav-wrap .footer-nav-bottom .site-nav-bottom-links li:nth-child(8) ul.ft-open {
              height: 75px;
              visibility: visible;
              opacity: 1; }

.footer-logo {
  width: 100%;
  text-align: center;
  padding: 70px 0 50px 0; }

.footer-copyright {
  font-family: 'Overpass', sans-serif;
  font-weight: 800;
  width: 100%;
  text-align: center;
  font-size: 12px;
  padding: 0 0 70px 0;
  margin: 0; }

.pagetop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 500;
  display: block;
  width: 87px;
  height: 42px;
  background-image: url(../img/common/pagetop_pc.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto; }
  @media only screen and (max-width: 767px) {
    .pagetop {
      width: 45px;
      height: 45px;
      background-image: url(../img/common/pagetop_sp.svg); } }
  .pagetop a {
    display: block;
    width: 100%;
    height: 42px; }
    @media only screen and (max-width: 767px) {
      .pagetop a {
        width: 45px;
        height: 45px; } }

/* SWIPER
========================================================================== */
.swiper-container.mainvisual,
.program-container.mainvisual {
  width: 100%;
  padding-bottom: 50px;
  margin-bottom: 110px; }
  @media only screen and (max-width: 767px) {
    .swiper-container.mainvisual,
    .program-container.mainvisual {
      margin-bottom: 40px; } }
  .swiper-container.mainvisual .swiper-wrapper,
  .program-container.mainvisual .swiper-wrapper {
    width: 100%;
    height: 100vh; }
    .swiper-container.mainvisual .swiper-wrapper .swiper-slide,
    .program-container.mainvisual .swiper-wrapper .swiper-slide {
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover; }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv01,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv01 {
        background-image: url(../img/top-slider/slide01_pc.jpg); }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv02,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv02 {
        background-image: url(../img/top-slider/slide02_pc.jpg); }
        @media only screen and (max-width: 767px) {
          .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv02,
          .program-container.mainvisual .swiper-wrapper .swiper-slide#mv02 {
            background-image: url(../img/top-slider/slide02_sp.jpg); } }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv03,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv03 {
        background-image: url(../img/top-slider/slide03_pc.jpg); }
        @media only screen and (max-width: 767px) {
          .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv03,
          .program-container.mainvisual .swiper-wrapper .swiper-slide#mv03 {
            background-image: url(../img/top-slider/slide03_sp.jpg); } }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv04,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv04 {
        background-image: url(../img/top-slider/slide04_pc.jpg); }
        @media only screen and (max-width: 767px) {
          .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv04,
          .program-container.mainvisual .swiper-wrapper .swiper-slide#mv04 {
            background-image: url(../img/top-slider/slide04_sp.jpg); } }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv05,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv05 {
        background-image: url(../img/top-slider/slide05_pc.jpg); }
        @media only screen and (max-width: 767px) {
          .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv05,
          .program-container.mainvisual .swiper-wrapper .swiper-slide#mv05 {
            background-image: url(../img/top-slider/slide05_sp.jpg); } }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv06,
      .program-container.mainvisual .swiper-wrapper .swiper-slide#mv06 {
        background-image: url(../img/top-slider/slide06_pc.jpg); }
        @media only screen and (max-width: 767px) {
          .swiper-container.mainvisual .swiper-wrapper .swiper-slide#mv06,
          .program-container.mainvisual .swiper-wrapper .swiper-slide#mv06 {
            background-image: url(../img/top-slider/slide06_sp.jpg); } }
      .swiper-container.mainvisual .swiper-wrapper .swiper-slide .copy,
      .program-container.mainvisual .swiper-wrapper .swiper-slide .copy {
        margin: 2px 0 0 0;
        font-size: 12px;
        text-align: right;
        font-family: 'Noto Sans','Noto Sans Japanese',sans-serif; }
  .swiper-container.mainvisual .swiper-pagination-bullet,
  .program-container.mainvisual .swiper-pagination-bullet {
    width: 30px;
    height: 3px;
    border-radius: 0%;
    background-color: #333; }
    @media only screen and (max-width: 767px) {
      .swiper-container.mainvisual .swiper-pagination-bullet,
      .program-container.mainvisual .swiper-pagination-bullet {
        width: 10px; } }
  .swiper-container.mainvisual .swiper-pagination-bullet-active,
  .program-container.mainvisual .swiper-pagination-bullet-active {
    background-color: #333; }
  .swiper-container.mainvisual .swiper-button-next,
  .swiper-container.mainvisual .swiper-button-prev,
  .program-container.mainvisual .swiper-button-next,
  .program-container.mainvisual .swiper-button-prev {
    top: auto;
    bottom: -9px; }
  .swiper-container.mainvisual .swiper-button-prev,
  .swiper-container.mainvisual .swiper-container-rtl .swiper-button-next,
  .program-container.mainvisual .swiper-button-prev,
  .program-container.mainvisual .swiper-container-rtl .swiper-button-next {
    background-image: url(../img/common/arrow.svg);
    background-size: 50% auto;
    transform: rotate(90deg);
    left: 35%; }
    @media only screen and (max-width: 767px) {
      .swiper-container.mainvisual .swiper-button-prev,
      .swiper-container.mainvisual .swiper-container-rtl .swiper-button-next,
      .program-container.mainvisual .swiper-button-prev,
      .program-container.mainvisual .swiper-container-rtl .swiper-button-next {
        left: 0px; } }
  .swiper-container.mainvisual .swiper-button-next,
  .swiper-container.mainvisual .swiper-container-rtl .swiper-button-prev,
  .program-container.mainvisual .swiper-button-next,
  .program-container.mainvisual .swiper-container-rtl .swiper-button-prev {
    background-image: url(../img/common/arrow.svg);
    background-size: 50% auto;
    transform: rotate(-90deg);
    right: 35%; }
    @media only screen and (max-width: 767px) {
      .swiper-container.mainvisual .swiper-button-next,
      .swiper-container.mainvisual .swiper-container-rtl .swiper-button-prev,
      .program-container.mainvisual .swiper-button-next,
      .program-container.mainvisual .swiper-container-rtl .swiper-button-prev {
        right: 0px; } }
.swiper-container.content-slider, .swiper-container.content-program,
.program-container.content-slider,
.program-container.content-program {
  width: 100%;
  padding-bottom: 40px;
  margin-bottom: 40px;
  padding-top: 20px; }
  .swiper-container.content-slider .swiper-wrapper .program-slide,
  .swiper-container.content-slider .program-wrapper .program-slide, .swiper-container.content-program .swiper-wrapper .program-slide,
  .swiper-container.content-program .program-wrapper .program-slide,
  .program-container.content-slider .swiper-wrapper .program-slide,
  .program-container.content-slider .program-wrapper .program-slide,
  .program-container.content-program .swiper-wrapper .program-slide,
  .program-container.content-program .program-wrapper .program-slide {
    margin-bottom: 20px; }
    .swiper-container.content-slider .swiper-wrapper .program-slide.gray,
    .swiper-container.content-slider .program-wrapper .program-slide.gray, .swiper-container.content-program .swiper-wrapper .program-slide.gray,
    .swiper-container.content-program .program-wrapper .program-slide.gray,
    .program-container.content-slider .swiper-wrapper .program-slide.gray,
    .program-container.content-slider .program-wrapper .program-slide.gray,
    .program-container.content-program .swiper-wrapper .program-slide.gray,
    .program-container.content-program .program-wrapper .program-slide.gray {
      background-color: #eee;
      padding: 20px 15px 1px 15px; }
      .swiper-container.content-slider .swiper-wrapper .program-slide.gray a,
      .swiper-container.content-slider .program-wrapper .program-slide.gray a, .swiper-container.content-program .swiper-wrapper .program-slide.gray a,
      .swiper-container.content-program .program-wrapper .program-slide.gray a,
      .program-container.content-slider .swiper-wrapper .program-slide.gray a,
      .program-container.content-slider .program-wrapper .program-slide.gray a,
      .program-container.content-program .swiper-wrapper .program-slide.gray a,
      .program-container.content-program .program-wrapper .program-slide.gray a {
        height: 100%; }
  .swiper-container.content-slider .swiper-wrapper .swiper-slide a,
  .swiper-container.content-slider .swiper-wrapper .program-slide a,
  .swiper-container.content-slider .program-wrapper .swiper-slide a,
  .swiper-container.content-slider .program-wrapper .program-slide a, .swiper-container.content-program .swiper-wrapper .swiper-slide a,
  .swiper-container.content-program .swiper-wrapper .program-slide a,
  .swiper-container.content-program .program-wrapper .swiper-slide a,
  .swiper-container.content-program .program-wrapper .program-slide a,
  .program-container.content-slider .swiper-wrapper .swiper-slide a,
  .program-container.content-slider .swiper-wrapper .program-slide a,
  .program-container.content-slider .program-wrapper .swiper-slide a,
  .program-container.content-slider .program-wrapper .program-slide a,
  .program-container.content-program .swiper-wrapper .swiper-slide a,
  .program-container.content-program .swiper-wrapper .program-slide a,
  .program-container.content-program .program-wrapper .swiper-slide a,
  .program-container.content-program .program-wrapper .program-slide a {
    display: block;
    text-decoration: none; }
  .swiper-container.content-slider .swiper-wrapper .swiper-slide .ph,
  .swiper-container.content-slider .swiper-wrapper .program-slide .ph,
  .swiper-container.content-slider .program-wrapper .swiper-slide .ph,
  .swiper-container.content-slider .program-wrapper .program-slide .ph, .swiper-container.content-program .swiper-wrapper .swiper-slide .ph,
  .swiper-container.content-program .swiper-wrapper .program-slide .ph,
  .swiper-container.content-program .program-wrapper .swiper-slide .ph,
  .swiper-container.content-program .program-wrapper .program-slide .ph,
  .program-container.content-slider .swiper-wrapper .swiper-slide .ph,
  .program-container.content-slider .swiper-wrapper .program-slide .ph,
  .program-container.content-slider .program-wrapper .swiper-slide .ph,
  .program-container.content-slider .program-wrapper .program-slide .ph,
  .program-container.content-program .swiper-wrapper .swiper-slide .ph,
  .program-container.content-program .swiper-wrapper .program-slide .ph,
  .program-container.content-program .program-wrapper .swiper-slide .ph,
  .program-container.content-program .program-wrapper .program-slide .ph {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0 0 5px 0; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .ph,
      .swiper-container.content-slider .swiper-wrapper .program-slide .ph,
      .swiper-container.content-slider .program-wrapper .swiper-slide .ph,
      .swiper-container.content-slider .program-wrapper .program-slide .ph, .swiper-container.content-program .swiper-wrapper .swiper-slide .ph,
      .swiper-container.content-program .swiper-wrapper .program-slide .ph,
      .swiper-container.content-program .program-wrapper .swiper-slide .ph,
      .swiper-container.content-program .program-wrapper .program-slide .ph,
      .program-container.content-slider .swiper-wrapper .swiper-slide .ph,
      .program-container.content-slider .swiper-wrapper .program-slide .ph,
      .program-container.content-slider .program-wrapper .swiper-slide .ph,
      .program-container.content-slider .program-wrapper .program-slide .ph,
      .program-container.content-program .swiper-wrapper .swiper-slide .ph,
      .program-container.content-program .swiper-wrapper .program-slide .ph,
      .program-container.content-program .program-wrapper .swiper-slide .ph,
      .program-container.content-program .program-wrapper .program-slide .ph {
        width: 100%;
        margin-bottom: 5px; } }
  .swiper-container.content-slider .swiper-wrapper .swiper-slide .copy,
  .swiper-container.content-slider .swiper-wrapper .program-slide .copy,
  .swiper-container.content-slider .program-wrapper .swiper-slide .copy,
  .swiper-container.content-slider .program-wrapper .program-slide .copy, .swiper-container.content-program .swiper-wrapper .swiper-slide .copy,
  .swiper-container.content-program .swiper-wrapper .program-slide .copy,
  .swiper-container.content-program .program-wrapper .swiper-slide .copy,
  .swiper-container.content-program .program-wrapper .program-slide .copy,
  .program-container.content-slider .swiper-wrapper .swiper-slide .copy,
  .program-container.content-slider .swiper-wrapper .program-slide .copy,
  .program-container.content-slider .program-wrapper .swiper-slide .copy,
  .program-container.content-slider .program-wrapper .program-slide .copy,
  .program-container.content-program .swiper-wrapper .swiper-slide .copy,
  .program-container.content-program .swiper-wrapper .program-slide .copy,
  .program-container.content-program .program-wrapper .swiper-slide .copy,
  .program-container.content-program .program-wrapper .program-slide .copy {
    margin: 2px 0 0 0;
    font-size: 12px;
    text-align: right;
    font-family: 'Noto Sans','Noto Sans Japanese',sans-serif; }
  .swiper-container.content-slider .swiper-wrapper .swiper-slide .ph2,
  .swiper-container.content-slider .swiper-wrapper .program-slide .ph2,
  .swiper-container.content-slider .program-wrapper .swiper-slide .ph2,
  .swiper-container.content-slider .program-wrapper .program-slide .ph2, .swiper-container.content-program .swiper-wrapper .swiper-slide .ph2,
  .swiper-container.content-program .swiper-wrapper .program-slide .ph2,
  .swiper-container.content-program .program-wrapper .swiper-slide .ph2,
  .swiper-container.content-program .program-wrapper .program-slide .ph2,
  .program-container.content-slider .swiper-wrapper .swiper-slide .ph2,
  .program-container.content-slider .swiper-wrapper .program-slide .ph2,
  .program-container.content-slider .program-wrapper .swiper-slide .ph2,
  .program-container.content-slider .program-wrapper .program-slide .ph2,
  .program-container.content-program .swiper-wrapper .swiper-slide .ph2,
  .program-container.content-program .swiper-wrapper .program-slide .ph2,
  .program-container.content-program .program-wrapper .swiper-slide .ph2,
  .program-container.content-program .program-wrapper .program-slide .ph2 {
    display: inline-block;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background-position: center center;
    background-size: cover;
    position: relative;
    margin-left: 50px;
    margin-right: 50px;
    margin-bottom: 20px; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .ph2,
      .swiper-container.content-slider .swiper-wrapper .program-slide .ph2,
      .swiper-container.content-slider .program-wrapper .swiper-slide .ph2,
      .swiper-container.content-slider .program-wrapper .program-slide .ph2, .swiper-container.content-program .swiper-wrapper .swiper-slide .ph2,
      .swiper-container.content-program .swiper-wrapper .program-slide .ph2,
      .swiper-container.content-program .program-wrapper .swiper-slide .ph2,
      .swiper-container.content-program .program-wrapper .program-slide .ph2,
      .program-container.content-slider .swiper-wrapper .swiper-slide .ph2,
      .program-container.content-slider .swiper-wrapper .program-slide .ph2,
      .program-container.content-slider .program-wrapper .swiper-slide .ph2,
      .program-container.content-slider .program-wrapper .program-slide .ph2,
      .program-container.content-program .swiper-wrapper .swiper-slide .ph2,
      .program-container.content-program .swiper-wrapper .program-slide .ph2,
      .program-container.content-program .program-wrapper .swiper-slide .ph2,
      .program-container.content-program .program-wrapper .program-slide .ph2 {
        width: 90%;
        height: auto;
        margin-left: 5%;
        margin-right: 5%; }
        .swiper-container.content-slider .swiper-wrapper .swiper-slide .ph2:before,
        .swiper-container.content-slider .swiper-wrapper .program-slide .ph2:before,
        .swiper-container.content-slider .program-wrapper .swiper-slide .ph2:before,
        .swiper-container.content-slider .program-wrapper .program-slide .ph2:before, .swiper-container.content-program .swiper-wrapper .swiper-slide .ph2:before,
        .swiper-container.content-program .swiper-wrapper .program-slide .ph2:before,
        .swiper-container.content-program .program-wrapper .swiper-slide .ph2:before,
        .swiper-container.content-program .program-wrapper .program-slide .ph2:before,
        .program-container.content-slider .swiper-wrapper .swiper-slide .ph2:before,
        .program-container.content-slider .swiper-wrapper .program-slide .ph2:before,
        .program-container.content-slider .program-wrapper .swiper-slide .ph2:before,
        .program-container.content-slider .program-wrapper .program-slide .ph2:before,
        .program-container.content-program .swiper-wrapper .swiper-slide .ph2:before,
        .program-container.content-program .swiper-wrapper .program-slide .ph2:before,
        .program-container.content-program .program-wrapper .swiper-slide .ph2:before,
        .program-container.content-program .program-wrapper .program-slide .ph2:before {
          content: "";
          display: block;
          padding-top: 100%; } }
  .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail,
  .swiper-container.content-slider .swiper-wrapper .program-slide .detail,
  .swiper-container.content-slider .program-wrapper .swiper-slide .detail,
  .swiper-container.content-slider .program-wrapper .program-slide .detail, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail,
  .swiper-container.content-program .swiper-wrapper .program-slide .detail,
  .swiper-container.content-program .program-wrapper .swiper-slide .detail,
  .swiper-container.content-program .program-wrapper .program-slide .detail,
  .program-container.content-slider .swiper-wrapper .swiper-slide .detail,
  .program-container.content-slider .swiper-wrapper .program-slide .detail,
  .program-container.content-slider .program-wrapper .swiper-slide .detail,
  .program-container.content-slider .program-wrapper .program-slide .detail,
  .program-container.content-program .swiper-wrapper .swiper-slide .detail,
  .program-container.content-program .swiper-wrapper .program-slide .detail,
  .program-container.content-program .program-wrapper .swiper-slide .detail,
  .program-container.content-program .program-wrapper .program-slide .detail {
    width: 100%;
    margin-bottom: 1.999em;
    padding: 0 5px; }
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .title,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .title,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .title,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .title, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .title,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .title,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .title,
    .swiper-container.content-program .program-wrapper .program-slide .detail .title,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .title,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .title,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .title,
    .program-container.content-slider .program-wrapper .program-slide .detail .title,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .title,
    .program-container.content-program .swiper-wrapper .program-slide .detail .title,
    .program-container.content-program .program-wrapper .swiper-slide .detail .title,
    .program-container.content-program .program-wrapper .program-slide .detail .title {
      font-size: 16px;
      line-height: 1.333em;
      padding: 0;
      margin: 0 0 0.555em 0;
      font-weight: 500;
      color: #333; }
      @media only screen and (max-width: 767px) {
        .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .title,
        .swiper-container.content-slider .swiper-wrapper .program-slide .detail .title,
        .swiper-container.content-slider .program-wrapper .swiper-slide .detail .title,
        .swiper-container.content-slider .program-wrapper .program-slide .detail .title, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .title,
        .swiper-container.content-program .swiper-wrapper .program-slide .detail .title,
        .swiper-container.content-program .program-wrapper .swiper-slide .detail .title,
        .swiper-container.content-program .program-wrapper .program-slide .detail .title,
        .program-container.content-slider .swiper-wrapper .swiper-slide .detail .title,
        .program-container.content-slider .swiper-wrapper .program-slide .detail .title,
        .program-container.content-slider .program-wrapper .swiper-slide .detail .title,
        .program-container.content-slider .program-wrapper .program-slide .detail .title,
        .program-container.content-program .swiper-wrapper .swiper-slide .detail .title,
        .program-container.content-program .swiper-wrapper .program-slide .detail .title,
        .program-container.content-program .program-wrapper .swiper-slide .detail .title,
        .program-container.content-program .program-wrapper .program-slide .detail .title {
          font-size: 16px;
          margin-bottom: 5px; } }
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .title .small,
      .swiper-container.content-slider .swiper-wrapper .program-slide .detail .title .small,
      .swiper-container.content-slider .program-wrapper .swiper-slide .detail .title .small,
      .swiper-container.content-slider .program-wrapper .program-slide .detail .title .small, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .title .small,
      .swiper-container.content-program .swiper-wrapper .program-slide .detail .title .small,
      .swiper-container.content-program .program-wrapper .swiper-slide .detail .title .small,
      .swiper-container.content-program .program-wrapper .program-slide .detail .title .small,
      .program-container.content-slider .swiper-wrapper .swiper-slide .detail .title .small,
      .program-container.content-slider .swiper-wrapper .program-slide .detail .title .small,
      .program-container.content-slider .program-wrapper .swiper-slide .detail .title .small,
      .program-container.content-slider .program-wrapper .program-slide .detail .title .small,
      .program-container.content-program .swiper-wrapper .swiper-slide .detail .title .small,
      .program-container.content-program .swiper-wrapper .program-slide .detail .title .small,
      .program-container.content-program .program-wrapper .swiper-slide .detail .title .small,
      .program-container.content-program .program-wrapper .program-slide .detail .title .small {
        font-weight: 400;
        font-size: 14px; }
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .place,
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .date,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .place,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .date,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .place,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .date,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .place,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .date, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .place,
    .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .date,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .place,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .date,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .place,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .date,
    .swiper-container.content-program .program-wrapper .program-slide .detail .place,
    .swiper-container.content-program .program-wrapper .program-slide .detail .date,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .place,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .date,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .place,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .date,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .place,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .date,
    .program-container.content-slider .program-wrapper .program-slide .detail .place,
    .program-container.content-slider .program-wrapper .program-slide .detail .date,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .place,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .date,
    .program-container.content-program .swiper-wrapper .program-slide .detail .place,
    .program-container.content-program .swiper-wrapper .program-slide .detail .date,
    .program-container.content-program .program-wrapper .swiper-slide .detail .place,
    .program-container.content-program .program-wrapper .swiper-slide .detail .date,
    .program-container.content-program .program-wrapper .program-slide .detail .place,
    .program-container.content-program .program-wrapper .program-slide .detail .date {
      padding: 0;
      margin: 0 0 0.555em 0;
      line-height: 1.555em;
      color: #666; }
      @media only screen and (max-width: 767px) {
        .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .place,
        .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .date,
        .swiper-container.content-slider .swiper-wrapper .program-slide .detail .place,
        .swiper-container.content-slider .swiper-wrapper .program-slide .detail .date,
        .swiper-container.content-slider .program-wrapper .swiper-slide .detail .place,
        .swiper-container.content-slider .program-wrapper .swiper-slide .detail .date,
        .swiper-container.content-slider .program-wrapper .program-slide .detail .place,
        .swiper-container.content-slider .program-wrapper .program-slide .detail .date, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .place,
        .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .date,
        .swiper-container.content-program .swiper-wrapper .program-slide .detail .place,
        .swiper-container.content-program .swiper-wrapper .program-slide .detail .date,
        .swiper-container.content-program .program-wrapper .swiper-slide .detail .place,
        .swiper-container.content-program .program-wrapper .swiper-slide .detail .date,
        .swiper-container.content-program .program-wrapper .program-slide .detail .place,
        .swiper-container.content-program .program-wrapper .program-slide .detail .date,
        .program-container.content-slider .swiper-wrapper .swiper-slide .detail .place,
        .program-container.content-slider .swiper-wrapper .swiper-slide .detail .date,
        .program-container.content-slider .swiper-wrapper .program-slide .detail .place,
        .program-container.content-slider .swiper-wrapper .program-slide .detail .date,
        .program-container.content-slider .program-wrapper .swiper-slide .detail .place,
        .program-container.content-slider .program-wrapper .swiper-slide .detail .date,
        .program-container.content-slider .program-wrapper .program-slide .detail .place,
        .program-container.content-slider .program-wrapper .program-slide .detail .date,
        .program-container.content-program .swiper-wrapper .swiper-slide .detail .place,
        .program-container.content-program .swiper-wrapper .swiper-slide .detail .date,
        .program-container.content-program .swiper-wrapper .program-slide .detail .place,
        .program-container.content-program .swiper-wrapper .program-slide .detail .date,
        .program-container.content-program .program-wrapper .swiper-slide .detail .place,
        .program-container.content-program .program-wrapper .swiper-slide .detail .date,
        .program-container.content-program .program-wrapper .program-slide .detail .place,
        .program-container.content-program .program-wrapper .program-slide .detail .date {
          font-size: 14px;
          margin-bottom: 15px; } }
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .description,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .description,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .description,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .description, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .description,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .description,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .description,
    .swiper-container.content-program .program-wrapper .program-slide .detail .description,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .description,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .description,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .description,
    .program-container.content-slider .program-wrapper .program-slide .detail .description,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .description,
    .program-container.content-program .swiper-wrapper .program-slide .detail .description,
    .program-container.content-program .program-wrapper .swiper-slide .detail .description,
    .program-container.content-program .program-wrapper .program-slide .detail .description {
      padding: 0;
      margin: 0 0 0.555em 0;
      line-height: 1.333em;
      color: #333;
      font-size: 16px;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .description,
        .swiper-container.content-slider .swiper-wrapper .program-slide .detail .description,
        .swiper-container.content-slider .program-wrapper .swiper-slide .detail .description,
        .swiper-container.content-slider .program-wrapper .program-slide .detail .description, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .description,
        .swiper-container.content-program .swiper-wrapper .program-slide .detail .description,
        .swiper-container.content-program .program-wrapper .swiper-slide .detail .description,
        .swiper-container.content-program .program-wrapper .program-slide .detail .description,
        .program-container.content-slider .swiper-wrapper .swiper-slide .detail .description,
        .program-container.content-slider .swiper-wrapper .program-slide .detail .description,
        .program-container.content-slider .program-wrapper .swiper-slide .detail .description,
        .program-container.content-slider .program-wrapper .program-slide .detail .description,
        .program-container.content-program .swiper-wrapper .swiper-slide .detail .description,
        .program-container.content-program .swiper-wrapper .program-slide .detail .description,
        .program-container.content-program .program-wrapper .swiper-slide .detail .description,
        .program-container.content-program .program-wrapper .program-slide .detail .description {
          font-size: 14px;
          margin-bottom: 15px; } }
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .description .small,
      .swiper-container.content-slider .swiper-wrapper .program-slide .detail .description .small,
      .swiper-container.content-slider .program-wrapper .swiper-slide .detail .description .small,
      .swiper-container.content-slider .program-wrapper .program-slide .detail .description .small, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .description .small,
      .swiper-container.content-program .swiper-wrapper .program-slide .detail .description .small,
      .swiper-container.content-program .program-wrapper .swiper-slide .detail .description .small,
      .swiper-container.content-program .program-wrapper .program-slide .detail .description .small,
      .program-container.content-slider .swiper-wrapper .swiper-slide .detail .description .small,
      .program-container.content-slider .swiper-wrapper .program-slide .detail .description .small,
      .program-container.content-slider .program-wrapper .swiper-slide .detail .description .small,
      .program-container.content-slider .program-wrapper .program-slide .detail .description .small,
      .program-container.content-program .swiper-wrapper .swiper-slide .detail .description .small,
      .program-container.content-program .swiper-wrapper .program-slide .detail .description .small,
      .program-container.content-program .program-wrapper .swiper-slide .detail .description .small,
      .program-container.content-program .program-wrapper .program-slide .detail .description .small {
        font-weight: 400;
        font-size: 14px; }
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .label,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .label,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .label,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .label, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .label,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .label,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .label,
    .swiper-container.content-program .program-wrapper .program-slide .detail .label,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .label,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .label,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .label,
    .program-container.content-slider .program-wrapper .program-slide .detail .label,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .label,
    .program-container.content-program .swiper-wrapper .program-slide .detail .label,
    .program-container.content-program .program-wrapper .swiper-slide .detail .label,
    .program-container.content-program .program-wrapper .program-slide .detail .label {
      border: solid 1px #333;
      padding: 3px 5px 5px 5px;
      margin: 3px 0 12px 0;
      font-weight: 500;
      line-height: 1em;
      display: inline-block; }
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .label.bg-black,
      .swiper-container.content-slider .swiper-wrapper .program-slide .detail .label.bg-black,
      .swiper-container.content-slider .program-wrapper .swiper-slide .detail .label.bg-black,
      .swiper-container.content-slider .program-wrapper .program-slide .detail .label.bg-black, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .label.bg-black,
      .swiper-container.content-program .swiper-wrapper .program-slide .detail .label.bg-black,
      .swiper-container.content-program .program-wrapper .swiper-slide .detail .label.bg-black,
      .swiper-container.content-program .program-wrapper .program-slide .detail .label.bg-black,
      .program-container.content-slider .swiper-wrapper .swiper-slide .detail .label.bg-black,
      .program-container.content-slider .swiper-wrapper .program-slide .detail .label.bg-black,
      .program-container.content-slider .program-wrapper .swiper-slide .detail .label.bg-black,
      .program-container.content-slider .program-wrapper .program-slide .detail .label.bg-black,
      .program-container.content-program .swiper-wrapper .swiper-slide .detail .label.bg-black,
      .program-container.content-program .swiper-wrapper .program-slide .detail .label.bg-black,
      .program-container.content-program .program-wrapper .swiper-slide .detail .label.bg-black,
      .program-container.content-program .program-wrapper .program-slide .detail .label.bg-black {
        background-color: #333;
        color: #FFFFFF; }
    .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .wr,
    .swiper-container.content-slider .swiper-wrapper .program-slide .detail .wr,
    .swiper-container.content-slider .program-wrapper .swiper-slide .detail .wr,
    .swiper-container.content-slider .program-wrapper .program-slide .detail .wr, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .wr,
    .swiper-container.content-program .swiper-wrapper .program-slide .detail .wr,
    .swiper-container.content-program .program-wrapper .swiper-slide .detail .wr,
    .swiper-container.content-program .program-wrapper .program-slide .detail .wr,
    .program-container.content-slider .swiper-wrapper .swiper-slide .detail .wr,
    .program-container.content-slider .swiper-wrapper .program-slide .detail .wr,
    .program-container.content-slider .program-wrapper .swiper-slide .detail .wr,
    .program-container.content-slider .program-wrapper .program-slide .detail .wr,
    .program-container.content-program .swiper-wrapper .swiper-slide .detail .wr,
    .program-container.content-program .swiper-wrapper .program-slide .detail .wr,
    .program-container.content-program .program-wrapper .swiper-slide .detail .wr,
    .program-container.content-program .program-wrapper .program-slide .detail .wr {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      align-items: flex-start; }
      .swiper-container.content-slider .swiper-wrapper .swiper-slide .detail .wr .place,
      .swiper-container.content-slider .swiper-wrapper .program-slide .detail .wr .place,
      .swiper-container.content-slider .program-wrapper .swiper-slide .detail .wr .place,
      .swiper-container.content-slider .program-wrapper .program-slide .detail .wr .place, .swiper-container.content-program .swiper-wrapper .swiper-slide .detail .wr .place,
      .swiper-container.content-program .swiper-wrapper .program-slide .detail .wr .place,
      .swiper-container.content-program .program-wrapper .swiper-slide .detail .wr .place,
      .swiper-container.content-program .program-wrapper .program-slide .detail .wr .place,
      .program-container.content-slider .swiper-wrapper .swiper-slide .detail .wr .place,
      .program-container.content-slider .swiper-wrapper .program-slide .detail .wr .place,
      .program-container.content-slider .program-wrapper .swiper-slide .detail .wr .place,
      .program-container.content-slider .program-wrapper .program-slide .detail .wr .place,
      .program-container.content-program .swiper-wrapper .swiper-slide .detail .wr .place,
      .program-container.content-program .swiper-wrapper .program-slide .detail .wr .place,
      .program-container.content-program .program-wrapper .swiper-slide .detail .wr .place,
      .program-container.content-program .program-wrapper .program-slide .detail .wr .place {
        border: solid 1px #fff;
        padding: 2px 0 0 5px; }
  .swiper-container.content-slider .swiper-wrapper .program-slide,
  .swiper-container.content-slider .program-wrapper .program-slide, .swiper-container.content-program .swiper-wrapper .program-slide,
  .swiper-container.content-program .program-wrapper .program-slide,
  .program-container.content-slider .swiper-wrapper .program-slide,
  .program-container.content-slider .program-wrapper .program-slide,
  .program-container.content-program .swiper-wrapper .program-slide,
  .program-container.content-program .program-wrapper .program-slide {
    width: 320px; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-wrapper .program-slide,
      .swiper-container.content-slider .program-wrapper .program-slide, .swiper-container.content-program .swiper-wrapper .program-slide,
      .swiper-container.content-program .program-wrapper .program-slide,
      .program-container.content-slider .swiper-wrapper .program-slide,
      .program-container.content-slider .program-wrapper .program-slide,
      .program-container.content-program .swiper-wrapper .program-slide,
      .program-container.content-program .program-wrapper .program-slide {
        width: 100%; } }
  .swiper-container.content-slider .content-program-title, .swiper-container.content-program .content-program-title,
  .program-container.content-slider .content-program-title,
  .program-container.content-program .content-program-title {
    width: 100%;
    font-size: 20px;
    font-weight: 500;
    border-bottom: solid 1px #333;
    margin: 1em 0 1em 0;
    padding: 0 0 1em 0; }
  .swiper-container.content-slider .program-wrapper, .swiper-container.content-program .program-wrapper,
  .program-container.content-slider .program-wrapper,
  .program-container.content-program .program-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .swiper-container.content-slider .program-wrapper:after, .swiper-container.content-program .program-wrapper:after,
    .program-container.content-slider .program-wrapper:after,
    .program-container.content-program .program-wrapper:after {
      content: "";
      width: 320px; }
      @media only screen and (max-width: 767px) {
        .swiper-container.content-slider .program-wrapper:after, .swiper-container.content-program .program-wrapper:after,
        .program-container.content-slider .program-wrapper:after,
        .program-container.content-program .program-wrapper:after {
          width: 100%; } }
  .swiper-container.content-slider .swiper-pagination-bullet, .swiper-container.content-program .swiper-pagination-bullet,
  .program-container.content-slider .swiper-pagination-bullet,
  .program-container.content-program .swiper-pagination-bullet {
    width: 30px;
    height: 3px;
    border-radius: 0%;
    background-color: #333; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-pagination-bullet, .swiper-container.content-program .swiper-pagination-bullet,
      .program-container.content-slider .swiper-pagination-bullet,
      .program-container.content-program .swiper-pagination-bullet {
        width: 10px; } }
  .swiper-container.content-slider .swiper-pagination-bullet-active, .swiper-container.content-program .swiper-pagination-bullet-active,
  .program-container.content-slider .swiper-pagination-bullet-active,
  .program-container.content-program .swiper-pagination-bullet-active {
    background-color: #333; }
  .swiper-container.content-slider .swiper-button-next,
  .swiper-container.content-slider .swiper-button-prev, .swiper-container.content-program .swiper-button-next,
  .swiper-container.content-program .swiper-button-prev,
  .program-container.content-slider .swiper-button-next,
  .program-container.content-slider .swiper-button-prev,
  .program-container.content-program .swiper-button-next,
  .program-container.content-program .swiper-button-prev {
    top: auto;
    bottom: -9px; }
  .swiper-container.content-slider .swiper-button-prev,
  .swiper-container.content-slider .swiper-container-rtl .swiper-button-next, .swiper-container.content-program .swiper-button-prev,
  .swiper-container.content-program .swiper-container-rtl .swiper-button-next,
  .program-container.content-slider .swiper-button-prev,
  .program-container.content-slider .swiper-container-rtl .swiper-button-next,
  .program-container.content-program .swiper-button-prev,
  .program-container.content-program .swiper-container-rtl .swiper-button-next {
    background-image: url(../img/common/arrow.svg);
    background-size: 50% auto;
    transform: rotate(90deg);
    left: 35%; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-button-prev,
      .swiper-container.content-slider .swiper-container-rtl .swiper-button-next, .swiper-container.content-program .swiper-button-prev,
      .swiper-container.content-program .swiper-container-rtl .swiper-button-next,
      .program-container.content-slider .swiper-button-prev,
      .program-container.content-slider .swiper-container-rtl .swiper-button-next,
      .program-container.content-program .swiper-button-prev,
      .program-container.content-program .swiper-container-rtl .swiper-button-next {
        left: 10px; } }
  .swiper-container.content-slider .swiper-button-next,
  .swiper-container.content-slider .swiper-container-rtl .swiper-button-prev, .swiper-container.content-program .swiper-button-next,
  .swiper-container.content-program .swiper-container-rtl .swiper-button-prev,
  .program-container.content-slider .swiper-button-next,
  .program-container.content-slider .swiper-container-rtl .swiper-button-prev,
  .program-container.content-program .swiper-button-next,
  .program-container.content-program .swiper-container-rtl .swiper-button-prev {
    background-image: url(../img/common/arrow.svg);
    background-size: 50% auto;
    transform: rotate(-90deg);
    right: 35%; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider .swiper-button-next,
      .swiper-container.content-slider .swiper-container-rtl .swiper-button-prev, .swiper-container.content-program .swiper-button-next,
      .swiper-container.content-program .swiper-container-rtl .swiper-button-prev,
      .program-container.content-slider .swiper-button-next,
      .program-container.content-slider .swiper-container-rtl .swiper-button-prev,
      .program-container.content-program .swiper-button-next,
      .program-container.content-program .swiper-container-rtl .swiper-button-prev {
        right: 10px; } }
  .swiper-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph, .swiper-container.content-program.other-program .swiper-wrapper .swiper-slide .ph,
  .program-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph,
  .program-container.content-program.other-program .swiper-wrapper .swiper-slide .ph {
    display: inline-block;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background-position: center center;
    background-size: cover;
    position: relative;
    margin-left: 50px;
    margin-right: 50px; }
    @media only screen and (max-width: 767px) {
      .swiper-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph, .swiper-container.content-program.other-program .swiper-wrapper .swiper-slide .ph,
      .program-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph,
      .program-container.content-program.other-program .swiper-wrapper .swiper-slide .ph {
        width: 90%;
        height: auto;
        margin-left: 5%;
        margin-right: 5%; }
        .swiper-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph:before, .swiper-container.content-program.other-program .swiper-wrapper .swiper-slide .ph:before,
        .program-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph:before,
        .program-container.content-program.other-program .swiper-wrapper .swiper-slide .ph:before {
          content: "";
          display: block;
          padding-top: 100%; } }
    .swiper-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph .copy, .swiper-container.content-program.other-program .swiper-wrapper .swiper-slide .ph .copy,
    .program-container.content-slider.other-program .swiper-wrapper .swiper-slide .ph .copy,
    .program-container.content-program.other-program .swiper-wrapper .swiper-slide .ph .copy {
      margin: 2px 0 0 0;
      font-size: 12px;
      text-align: right;
      font-family: 'Noto Sans','Noto Sans Japanese',sans-serif; }
.swiper-container.content-program,
.program-container.content-program {
  padding-top: 60px; }
  @media only screen and (max-width: 767px) {
    .swiper-container.content-program,
    .program-container.content-program {
      padding-top: 20px; } }

.program-slider .swiper-wrapper .swiper-slide img {
  width: 100%;
  height: auto; }
.program-slider .swiper-wrapper .swiper-slide .copy {
  margin: 2px 0 0 0;
  font-size: 12px;
  text-align: right;
  font-family: 'Noto Sans','Noto Sans Japanese',sans-serif; }

/* LOWER PAGE VISUAL
========================================================================== */
.lower-visual {
  width: 100%;
  height: 420px;
  padding: 0;
  margin: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .lower-visual {
      height: 200px;
      margin-top: 50px;
      margin-bottom: 60px; } }
  .lower-visual .lower-title {
    padding: 4.777em 0 0 0;
    margin: 0;
    font-size: 30px;
    line-height: 1.777em;
    color: #fff;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.9); }
    @media only screen and (max-width: 767px) {
      .lower-visual .lower-title {
        font-size: 23px;
        padding: 0;
        text-align: center; } }

.lower-visual-twocolumn {
  width: 100%;
  height: 420px;
  padding: 0;
  margin: 0;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .lower-visual-twocolumn {
      margin-top: 50px;
      margin-bottom: 60px;
      height: 200px; } }
  .lower-visual-twocolumn .lower-visual-twocolumn-wrap {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    display: flex;
    position: absolute;
    top: 0;
    left: 0; }
    .lower-visual-twocolumn .lower-visual-twocolumn-wrap div {
      width: 50%;
      height: 420px;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover; }
      @media only screen and (max-width: 767px) {
        .lower-visual-twocolumn .lower-visual-twocolumn-wrap div {
          height: 200px; } }
  .lower-visual-twocolumn .lower-title {
    padding: 4.777em 0 0 0;
    margin: 0;
    font-size: 30px;
    line-height: 1.777em;
    color: #fff;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.9);
    position: relative;
    z-index: 10; }
    @media only screen and (max-width: 767px) {
      .lower-visual-twocolumn .lower-title {
        font-size: 23px;
        padding: 0;
        text-align: center; } }

/* BREADCRUMB LIST
========================================================================== */
.breadcrumblist {
  width: 100%;
  padding: 15px 0 25px 0;
  margin: 0; }
  @media only screen and (max-width: 767px) {
    .breadcrumblist {
      display: none; } }
  .breadcrumblist ol {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap; }
    .breadcrumblist ol li {
      margin: 0;
      padding: 0;
      font-size: 12px; }
      .breadcrumblist ol li:after {
        font-family: "Font Awesome 5 Free";
        content: "\f105";
        font-weight: 900;
        margin: 0 0.333em; }
      .breadcrumblist ol li:last-child:after {
        display: none; }
      .breadcrumblist ol li a {
        color: #333;
        text-decoration: none; }
        .breadcrumblist ol li a:hover {
          text-decoration: underline; }

/* MAIN
========================================================================== */
.sec-wrap,
.aside-wrap {
  width: 100%;
  margin: 0 auto 100px auto; }
  @media only screen and (max-width: 767px) {
    .sec-wrap,
    .aside-wrap {
      width: 87.5%;
      margin: 0 auto 60px auto; } }
  .sec-wrap.blog-wrap,
  .aside-wrap.blog-wrap {
    margin: 0 auto 50px auto; }

@media only screen and (max-width: 767px) {
  .lower .sec-wrap,
  .lower .aside-wrap {
    width: 87.5%;
    margin: 0 auto 60px auto; } }
.lower .sec-wrap.detail-page,
.lower .aside-wrap.detail-page {
  margin-bottom: 0px; }
.lower .sec-wrap.margin,
.lower .aside-wrap.margin {
  margin-top: -20px;
  padding-top: 20px; }

h2.sec-title {
  width: 100%;
  margin: 0 auto 40px auto;
  padding: 0;
  line-height: 1.555em;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 25px;
  font-weight: 700; }
  @media only screen and (max-width: 767px) {
    h2.sec-title {
      font-size: 21px;
      margin: 0 auto 30px auto; } }
  h2.sec-title .underline {
    border-bottom: solid 2px #333;
    font-size: 20px; }
    @media only screen and (max-width: 767px) {
      h2.sec-title .underline {
        border-bottom: none; } }
  h2.sec-title a {
    color: #333;
    text-decoration: none; }
  h2.sec-title.ex {
    margin-top: 50px; }
  h2.sec-title .en {
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.555em; }

h3.sec-title {
  width: 100%;
  margin: 0 auto 40px auto;
  padding: 0;
  line-height: 1.555em;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 18px;
  font-weight: 500;
  color: #666; }
  @media only screen and (max-width: 767px) {
    h3.sec-title {
      font-size: 14px;
      margin: 0 auto 30px auto; } }
h3.line-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px; }
  h3.line-title span {
    width: 200px;
    display: block;
    text-align: center; }
  h3.line-title:before {
    width: 400px;
    height: 1px;
    background-color: #333;
    content: "";
    flex: 1;
    display: inline-block; }
  h3.line-title:after {
    width: 400px;
    height: 1px;
    background-color: #333;
    content: "";
    flex: 1;
    display: inline-block; }

p.sec-text {
  line-height: 2.111em;
  text-align: justify;
  padding: 0;
  margin: 0 0 1.777em 0; }
  @media only screen and (max-width: 767px) {
    p.sec-text {
      font-size: 14px;
      line-height: 1.777em; } }
  p.sec-text.center {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      p.sec-text.center {
        text-align: left; } }
  p.sec-text span.indent {
    display: inline-block;
    text-indent: -1.111em;
    padding-left: 1.111em; }
  p.sec-text.margin-bottom {
    margin-bottom: 3.444em; }
p.note {
  color: #333;
  font-size: 16px;
  padding: 0;
  margin: 0 0 50px 0;
  width: 100%;
  text-align: center;
  font-weight: 500;
  line-height: 1.777em; }
  @media only screen and (max-width: 767px) {
    p.note {
      font-size: 16px;
      text-align: left;
      margin-bottom: 30px; } }
p.note-red {
  color: #ca1c24;
  font-size: 24px;
  padding: 0;
  margin: 0;
  width: 100%;
  text-align: center;
  font-weight: 500;
  line-height: 1.777em; }
  @media only screen and (max-width: 767px) {
    p.note-red {
      font-size: 16px;
      margin-bottom: 30px; } }
  p.note-red.size {
    font-size: 16px; }

.read-more {
  width: 100%;
  text-align: center;
  margin-bottom: 40px; }
  .read-more a,
  .read-more button {
    font-weight: 700;
    font-size: 16px;
    color: #333;
    text-decoration: none;
    line-height: 1em;
    border: none;
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer; }
    .read-more a:after,
    .read-more button:after {
      display: inline-block;
      content: "";
      background-image: url(../img/common/arrow.svg);
      background-position: center center;
      background-size: auto;
      width: 14px;
      height: 12px;
      transform: rotate(-90deg);
      margin-left: 0.333em; }
    .read-more a.prev:after,
    .read-more button.prev:after {
      display: none; }
    .read-more a.prev:before,
    .read-more button.prev:before {
      display: inline-block;
      content: "";
      background-image: url(../img/common/arrow.svg);
      background-position: center center;
      background-size: auto;
      width: 14px;
      height: 12px;
      transform: rotate(90deg);
      margin-right: 0.333em; }
    .read-more a.external:after,
    .read-more button.external:after {
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f35d";
      background-image: none;
      width: auto;
      height: auto;
      transform: rotate(0deg); }
    .read-more a.close:after,
    .read-more button.close:after {
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f00d";
      background-image: none;
      width: auto;
      height: auto;
      transform: rotate(0deg); }
    .read-more a.pdf:after,
    .read-more button.pdf:after {
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f1c1";
      background-image: none;
      width: auto;
      height: auto;
      transform: rotate(0deg); }
    .read-more a.search:after,
    .read-more button.search:after {
      font-family: "Font Awesome 5 Free";
      font-weight: 700;
      content: "\f002";
      background-image: none;
      width: auto;
      height: auto;
      transform: rotate(0deg); }
  .read-more.two-set a,
  .read-more.two-set button {
    margin: 0 1.111em;
    border: none;
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer; }
  @media only screen and (max-width: 767px) {
    .read-more.two-set a,
    .read-more.two-set button {
      margin: 0;
      display: block;
      width: 100%;
      text-align: center;
      line-height: 2.333em; } }

.youtube {
  width: 940px;
  height: auto;
  margin: 0 auto 100px auto; }
  @media only screen and (max-width: 767px) {
    .youtube {
      width: 100%;
      margin: 0 auto 60px auto; } }

.border-wrap {
  width: 100%;
  border: solid 1px #333;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 40px 40px 20px 40px;
  margin-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    .border-wrap {
      width: 100%;
      margin: 0 auto 60px auto;
      padding: 5% 5% 2.5% 5%; } }
  .border-wrap .sec-title {
    margin-bottom: 20px; }
  .border-wrap .border-wrap-text {
    text-align: center;
    line-height: 1.555em;
    margin-bottom: 20px;
    font-weight: 500;
    width: 90%;
    margin: 0 auto 20px auto; }
    @media only screen and (max-width: 767px) {
      .border-wrap .border-wrap-text {
        font-size: 14px;
        margin: 0 auto 15px auto; } }
    .border-wrap .border-wrap-text.nomargin {
      margin: 0; }
    .border-wrap .border-wrap-text.tel-title {
      font-size: 18px;
      font-weight: 500; }
    .border-wrap .border-wrap-text.tel-number {
      font-size: 30px;
      font-weight: 900; }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-text.tel-number {
          font-size: 24px; } }
    .border-wrap .border-wrap-text.large {
      font-size: 24px;
      font-weight: 500; }
  .border-wrap .border-wrap-table {
    width: 50%; }
    .border-wrap .border-wrap-table.first {
      width: 52.5%;
      margin-left: 7.5%; }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-table.first {
          width: 92.5%;
          margin: 0 auto; } }
    .border-wrap .border-wrap-table.second {
      width: 40%; }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-table.second {
          width: 92.5%;
          margin: 0 auto; } }
    .border-wrap .border-wrap-table tbody tr th {
      text-align: left;
      width: 25%;
      padding: 10px 0;
      vertical-align: text-top;
      line-height: 1.555em;
      color: #4d4d4d;
      font-weight: 400; }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-table tbody tr th {
          font-size: 14px;
          width: 35%; } }
    .border-wrap .border-wrap-table tbody tr td {
      text-align: left;
      width: 75%;
      line-height: 1.555em;
      padding: 10px 0; }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-table tbody tr td {
          font-size: 14px;
          width: 65%; } }
      .border-wrap .border-wrap-table tbody tr td .spacer01 {
        display: inline-block;
        width: 60px; }
        @media only screen and (max-width: 767px) {
          .border-wrap .border-wrap-table tbody tr td .spacer01 {
            width: 40px; } }
      @media only screen and (max-width: 767px) {
        .border-wrap .border-wrap-table tbody tr td .spacer02 {
          display: block;
          padding-left: 40px; } }

.info-list-wrap {
  width: 100%;
  border-top: solid 1px #c1c1c1;
  margin-bottom: 30px; }
  .info-list-wrap .info-list {
    padding: 30px 0 28px 0;
    border-bottom: solid 1px #c1c1c1; }
    .info-list-wrap .info-list .info-list-meta {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 0.333em; }
      @media only screen and (max-width: 767px) {
        .info-list-wrap .info-list .info-list-meta {
          margin-bottom: 0.777em; } }
      .info-list-wrap .info-list .info-list-meta p {
        line-height: 21px;
        padding: 0;
        margin: 0;
        font-size: 14px;
        font-weight: 700;
        color: #4d4d4d;
        margin-right: 10px; }
        .info-list-wrap .info-list .info-list-meta p:first-child {
          font-size: 18px;
          color: #666666;
          margin-right: 20px; }
          @media only screen and (max-width: 767px) {
            .info-list-wrap .info-list .info-list-meta p:first-child {
              width: 100%;
              font-size: 15px; } }
        .info-list-wrap .info-list .info-list-meta p a {
          text-decoration: none;
          color: #4d4d4d; }
    .info-list-wrap .info-list .info-list-title {
      width: 100%;
      line-height: 1.555em;
      padding: 0;
      margin: 0;
      font-weight: 500;
      font-size: 16px; }
      @media only screen and (max-width: 767px) {
        .info-list-wrap .info-list .info-list-title {
          font-size: 14px; } }
      .info-list-wrap .info-list .info-list-title a {
        text-decoration: none;
        color: #333; }

.playevent-wrap {
  width: 100%;
  margin: 0 auto; }
  .playevent-wrap .playevent-list {
    display: flex;
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      .playevent-wrap .playevent-list {
        display: inline-block; } }
    .playevent-wrap .playevent-list .ph {
      width: 320px;
      height: auto;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .playevent-wrap .playevent-list .ph {
          width: 100%;
          margin-bottom: 10px; } }
    .playevent-wrap .playevent-list .detail {
      width: 670px;
      padding-left: 30px; }
      @media only screen and (max-width: 767px) {
        .playevent-wrap .playevent-list .detail {
          width: 100%;
          padding-left: 0px; } }
      .playevent-wrap .playevent-list .detail .title {
        font-size: 18px;
        line-height: 1.333em;
        padding: 0;
        margin: 0 0 0.555em 0;
        font-weight: 500;
        color: #333; }
        @media only screen and (max-width: 767px) {
          .playevent-wrap .playevent-list .detail .title {
            font-size: 16px;
            margin-bottom: 5px; } }
      .playevent-wrap .playevent-list .detail .place,
      .playevent-wrap .playevent-list .detail .date {
        padding: 0;
        margin: 0 0 0.555em 0;
        line-height: 1.555em;
        color: #666; }
        .playevent-wrap .playevent-list .detail .place.indent,
        .playevent-wrap .playevent-list .detail .date.indent {
          text-indent: -3em;
          margin-left: 3em; }
        @media only screen and (max-width: 767px) {
          .playevent-wrap .playevent-list .detail .place,
          .playevent-wrap .playevent-list .detail .date {
            font-size: 14px;
            margin-bottom: 15px; } }
      .playevent-wrap .playevent-list .detail .description {
        padding: 0;
        margin: 0 0 0.555em 0;
        line-height: 1.333em;
        color: #333; }
        @media only screen and (max-width: 767px) {
          .playevent-wrap .playevent-list .detail .description {
            font-size: 14px;
            margin-bottom: 15px; } }
      .playevent-wrap .playevent-list .detail .text {
        padding: 0;
        margin: 0 0 0.555em 0;
        line-height: 2.111em;
        color: #333; }
        @media only screen and (max-width: 767px) {
          .playevent-wrap .playevent-list .detail .text {
            font-size: 14px;
            margin-bottom: 15px; } }
      .playevent-wrap .playevent-list .detail .read-more {
        text-align: left;
        padding-top: 20px;
        padding-left: 100px; }
        @media only screen and (max-width: 767px) {
          .playevent-wrap .playevent-list .detail .read-more {
            text-align: center;
            padding-top: 0;
            padding-left: 0; } }
  .playevent-wrap a {
    display: flex;
    text-decoration: none; }
    @media only screen and (max-width: 767px) {
      .playevent-wrap a {
        display: inline-block; } }

.sns-accordion {
  width: 100%;
  border-top: solid 1px #333;
  border-bottom: solid 1px #333; }
  @media only screen and (max-width: 767px) {
    .sns-accordion {
      display: none; } }
  .sns-accordion button {
    background-color: rgba(255, 255, 255, 0);
    outline: none;
    border: none;
    cursor: pointer;
    text-align: left;
    padding: 0;
    margin: 0; }
    .sns-accordion button.accordion {
      font-family: 'Overpass', sans-serif;
      font-weight: 800;
      padding: 5px 0 0 0;
      margin: 0;
      font-size: 19px;
      line-height: 75px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%; }
      .sns-accordion button.accordion:after {
        margin-right: 20px; }
  .sns-accordion .sns-list-wrap {
    display: none; }
    .sns-accordion .sns-list-wrap .sns-list {
      width: 100%;
      display: flex;
      justify-content: center;
      padding-bottom: 30px; }
      .sns-accordion .sns-list-wrap .sns-list a {
        margin: 0 0.333em;
        font-size: 42px;
        color: #333;
        text-decoration: none; }

.detail-table {
  width: 560px;
  margin: 80px auto 20px auto; }
  @media only screen and (max-width: 767px) {
    .detail-table {
      width: 100%;
      margin: 60px auto 20px auto; } }
  .detail-table tbody tr th {
    text-align: left;
    vertical-align: text-top;
    padding: 0.555em 0;
    width: 30%;
    line-height: 1.777em; }
    @media only screen and (max-width: 767px) {
      .detail-table tbody tr th {
        font-size: 14px;
        line-height: 1.555em;
        width: 30%; } }
  .detail-table tbody tr td {
    text-align: left;
    vertical-align: text-top;
    padding: 0.333em 0;
    line-height: 1.777em; }
    @media only screen and (max-width: 767px) {
      .detail-table tbody tr td {
        font-size: 14px;
        line-height: 1.555em; } }
    .detail-table tbody tr td .bunka-mark {
      display: inline-block;
      width: 16px;
      height: auto;
      margin-right: 0.333em; }
      @media only screen and (max-width: 767px) {
        .detail-table tbody tr td .bunka-mark {
          font-size: 14px; } }
      .detail-table tbody tr td .bunka-mark.nihonhaku {
        width: 24px; }
      .detail-table tbody tr td .bunka-mark.asiacenter {
        width: 20px; }

.support .pager {
  margin: 30px 0 60px 0; }
  @media only screen and (max-width: 767px) {
    .support .pager {
      margin: 30px 0 0 0; } }

.pager {
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
  margin: 60px 0; }
  @media only screen and (max-width: 767px) {
    .pager {
      margin: 50px 0 160px 0; } }
  .pager a {
    font-weight: 700;
    display: block;
    margin: 0 10px;
    text-decoration: none;
    color: #333;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .pager a {
        font-size: 14px;
        margin: 0; } }
    .pager a.current:after {
      content: "･";
      padding: 0;
      margin: 0;
      position: absolute;
      bottom: -15px;
      left: 0px;
      width: 100%;
      text-align: center; }
    .pager a.next:after {
      display: inline-block;
      content: "";
      width: 14px;
      height: 12px;
      background-image: url(../img/common/arrow.svg);
      background-size: 100% auto;
      transform: rotate(-90deg);
      margin-left: 0.333em; }
    @media only screen and (max-width: 767px) {
      .pager a.next {
        position: absolute;
        right: 0px;
        top: 0; } }
    .pager a.prev:before {
      display: inline-block;
      content: "";
      width: 14px;
      height: 12px;
      background-image: url(../img/common/arrow.svg);
      background-size: 100% auto;
      transform: rotate(90deg);
      margin-right: 0.333em; }
    @media only screen and (max-width: 767px) {
      .pager a.prev {
        position: absolute;
        left: 0px;
        top: 0; } }
    .pager a.back:before {
      display: inline-block;
      content: "";
      width: 14px;
      height: 12px;
      background-image: url(../img/common/arrow.svg);
      background-size: 100% auto;
      transform: rotate(90deg);
      margin-right: 0.333em; }
    @media only screen and (max-width: 767px) {
      .pager a.back {
        position: absolute;
        top: 3em;
        left: 0px;
        width: 100%;
        text-align: center; } }

@media only screen and (max-width: 767px) {
  .blog-3column .entry-footer .pager {
    margin: 50px 0 30px 0;
    padding-bottom: 90px; } }

.link-list {
  width: 700px;
  margin: 50px auto 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none; }
  @media only screen and (max-width: 767px) {
    .link-list {
      width: 100%; } }
  .link-list dt {
    width: 100%;
    padding: 0;
    margin: 0 0 25px 0;
    text-align: center;
    font-weight: 700;
    font-size: 20px; }
    .link-list dt span {
      border-bottom: solid 2px #333; }
  .link-list:after {
    content: "";
    width: 50%;
    display: inline-block;
    padding: 0 0 20px 20px; }
  .link-list dd {
    width: 50%;
    padding: 0 0 20px 20px;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      .link-list dd {
        width: 100%;
        padding: 0 0 20px 0; } }
    .link-list dd a {
      font-weight: 500;
      text-decoration: none;
      color: #333;
      font-size: 14px;
      line-height: 1.777em;
      			/*&:after {
      				background-image: none;
      				font-family: "Font Awesome 5 Free";
      				font-weight: 500;
      				content: "\f15b";
      				transform: rotate(0deg);
      				margin-left: 0.333em;
      			}
      			&.external {
      				&:after {
      					background-image: none;
      					font-family: "Font Awesome 5 Free";
      					font-weight: 700;
      					content: "\f35d";
      					transform: rotate(0deg);
      				}
      			}
      			&.pdf {
      				&:after {
      					background-image: none;
      					font-family: "Font Awesome 5 Free";
      					font-weight: 500;
      					content: "\f1c1";
      					transform: rotate(0deg);
      				}
      			}
      			&.xls,
      			&.xlsx {
      				&:after {
      					background-image: none;
      					font-family: "Font Awesome 5 Free";
      					font-weight: 500;
      					content: "\f1c3";
      					transform: rotate(0deg);
      				}
      			}
      			&.doc,
                  &.docx {
      				&:after {
      					background-image: none;
      					font-family: "Font Awesome 5 Free";
      					font-weight: 500;
      					content: "\f1c2";
      					transform: rotate(0deg);
      				}
      			}
      			&.pptx,
      			&.txt,
      			&.jpg,
      			&.zip {
      				&:after {
      					background-image: none;
      					font-family: "Font Awesome 5 Free";
      					font-weight: 500;
      					content: "\f15b";
      					transform: rotate(0deg);
      				}
      			}*/ }
      .link-list dd a:after {
        display: inline-block;
        content: "";
        width: 14px;
        height: 12px;
        background-image: url(../img/common/arrow.svg);
        background-size: 100% auto;
        transform: rotate(-90deg);
        margin-left: 0.333em; }
  .link-list.line {
    justify-content: center;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 10px; }
    @media only screen and (max-width: 767px) {
      .link-list.line {
        justify-content: flex-start; } }
    .link-list.line dt {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 16px;
      margin-bottom: 30px; }
      .link-list.line dt span {
        border-bottom: none;
        display: block;
        width: 124px;
        text-align: center; }
      .link-list.line dt:before {
        height: 1px;
        width: 437px;
        content: "";
        display: block;
        background-color: #333;
        flex: 1; }
      .link-list.line dt:after {
        height: 1px;
        width: 437px;
        content: "";
        display: block;
        background-color: #333;
        flex: 1; }
    .link-list.line dd {
      width: 350px; }
      @media only screen and (max-width: 767px) {
        .link-list.line dd {
          width: 100%; } }
      .link-list.line dd.center {
        width: 100%;
        text-align: center;
        line-height: 1.777em;
        padding-left: 0; }
        @media only screen and (max-width: 767px) {
          .link-list.line dd.center {
            text-align: left;
            font-size: 14px; } }
      .link-list.line dd a:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f15b";
        transform: rotate(0deg);
        margin-left: 0.333em; }
      .link-list.line dd a.pptx:after, .link-list.line dd a.txt:after, .link-list.line dd a.jpg:after, .link-list.line dd a.zip:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f15b";
        transform: rotate(0deg);
        margin-left: 0.333em; }
      .link-list.line dd a.external:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 700;
        content: "\f35d";
        transform: rotate(0deg); }
      .link-list.line dd a.pdf:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f1c1";
        transform: rotate(0deg); }
      .link-list.line dd a.xls:after, .link-list.line dd a.xlsx:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f1c3";
        transform: rotate(0deg); }
      .link-list.line dd a.doc
      .link-list.line dd a.docx:after {
        background-image: none;
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f1c2";
        transform: rotate(0deg); }
    .link-list.line:after {
      content: "";
      width: 350px;
      display: inline-block; }
      @media only screen and (max-width: 767px) {
        .link-list.line:after {
          width: 100%; } }

.entry-wrap {
  width: 700px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .entry-wrap {
      width: 100%; } }
  .entry-wrap .entry-header {
    width: 100%;
    margin-bottom: 35px; }
    .entry-wrap .entry-header .entry-meta {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        .entry-wrap .entry-header .entry-meta {
          margin-bottom: 0.777em; } }
      .entry-wrap .entry-header .entry-meta p {
        line-height: 21px;
        padding: 0;
        margin: 0;
        font-size: 14px;
        font-weight: 700;
        color: #4d4d4d;
        margin-right: 10px; }
        .entry-wrap .entry-header .entry-meta p:first-child {
          font-size: 18px;
          color: #666666;
          margin-right: 20px; }
          @media only screen and (max-width: 767px) {
            .entry-wrap .entry-header .entry-meta p:first-child {
              width: 100%;
              font-size: 15px; } }
        .entry-wrap .entry-header .entry-meta p a {
          text-decoration: none;
          color: #4d4d4d; }
    .entry-wrap .entry-header .entry-title {
      font-weight: 700;
      font-size: 18px;
      line-height: 1.777em;
      padding: 0;
      margin: 0; }
  .entry-wrap .entry-body {
    width: 100%;
    line-height: 2.111em;
    word-wrap: break-word; }
    .entry-wrap .entry-body .ph {
      width: 100%;
      padding: 0;
      margin: 0; }
    .entry-wrap .entry-body img {
      max-width: 100%;
      height: auto; }

.pagelink {
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  .pagelink.center {
    justify-content: space-between; }
    .pagelink.center.bottom {
      margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    .pagelink {
      margin-bottom: 40px; } }
  .pagelink li {
    width: 33.333%;
    text-align: center;
    margin-bottom: 25px; }
    @media only screen and (max-width: 767px) {
      .pagelink li {
        width: 90%;
        margin: 0 5% 20px 5%;
        text-align: left;
        font-size: 14px; } }
    .pagelink li a {
      color: #4d4d4d;
      text-decoration: none; }
      .pagelink li a:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f107";
        margin-left: 0.333em; }
      .pagelink li a.external:after {
        content: "\f35d"; }
  .pagelink.center {
    justify-content: center;
    margin-bottom: 10px; }
    .pagelink.center li {
      width: auto;
      margin-left: 25px;
      margin-right: 25px; }

.sec-blockquote {
  padding: 0 1.999em;
  margin: 0; }
  .sec-blockquote p {
    line-height: 2.111em;
    text-align: justify;
    padding: 0;
    margin: 0 0 1.777em 0; }
    @media only screen and (max-width: 767px) {
      .sec-blockquote p {
        font-size: 14px;
        line-height: 1.777em; } }

.sec-wrap-03-middle .sec-wrap-03-cont {
  width: 826px;
  margin: 0 auto 100px auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .sec-wrap-03-middle .sec-wrap-03-cont {
      display: block;
      width: 100%;
      margin: 0 auto 30px auto; } }
  .sec-wrap-03-middle .sec-wrap-03-cont.tereko {
    flex-direction: row-reverse; }
  .sec-wrap-03-middle .sec-wrap-03-cont.top {
    margin-bottom: 50px; }
  .sec-wrap-03-middle .sec-wrap-03-cont:last-child {
    margin-bottom: 50px; }
  .sec-wrap-03-middle .sec-wrap-03-cont .wrap {
    width: 100%; }
  .sec-wrap-03-middle .sec-wrap-03-cont .cont {
    width: 398px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center; }
    @media only screen and (max-width: 767px) {
      .sec-wrap-03-middle .sec-wrap-03-cont .cont {
        width: 100%; } }
  .sec-wrap-03-middle .sec-wrap-03-cont h3 {
    width: 100%;
    display: block;
    font-size: 16px;
    line-height: 2.11em;
    text-align: justify;
    padding: 0;
    margin: 0;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .sec-wrap-03-middle .sec-wrap-03-cont h3 {
        font-size: 16px; } }
  .sec-wrap-03-middle .sec-wrap-03-cont p {
    width: 100%;
    display: block;
    font-size: 16px;
    line-height: 2.11em;
    text-align: justify;
    padding: 0;
    margin: 0; }
    .sec-wrap-03-middle .sec-wrap-03-cont p + h3 {
      margin-top: 15px; }
      @media only screen and (max-width: 767px) {
        .sec-wrap-03-middle .sec-wrap-03-cont p + h3 {
          margin-top: 30px; } }
    @media only screen and (max-width: 767px) {
      .sec-wrap-03-middle .sec-wrap-03-cont p {
        font-size: 14px; } }
  .sec-wrap-03-middle .sec-wrap-03-cont p.cap {
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1.333em;
    padding: 0.333em; }
    @media only screen and (max-width: 767px) {
      .sec-wrap-03-middle .sec-wrap-03-cont p.cap {
        top: 100%;
        font-size: 14px;
        padding: 0.333em; } }
  @media only screen and (max-width: 767px) {
    .sec-wrap-03-middle .sec-wrap-03-cont img {
      margin-top: 20px; } }
  .sec-wrap-03-middle .sec-wrap-03-cont .list {
    width: 100%;
    padding: 0;
    margin: 0; }
    .sec-wrap-03-middle .sec-wrap-03-cont .list li {
      width: 100%;
      display: block;
      font-size: 16px;
      line-height: 2.11em;
      text-align: justify;
      text-indent: -1.111em;
      padding: 0 0 0 1.111em;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .sec-wrap-03-middle .sec-wrap-03-cont .list li {
          font-size: 14px; } }
.sec-wrap-03-middle .sec-wrap-03-accordion-content {
  display: none;
  padding-top: 50px; }
.sec-wrap-03-middle .accordion-switch {
  width: 115px;
  margin: 0 auto 50px auto; }
  .sec-wrap-03-middle .accordion-switch a {
    display: block;
    text-align: center;
    text-decoration: none;
    color: #333; }
  .sec-wrap-03-middle .accordion-switch .open {
    display: block;
    padding-bottom: 3px;
    border-bottom: solid 1px #808075;
    margin: 0 auto; }
  .sec-wrap-03-middle .accordion-switch .close {
    display: none;
    padding-bottom: 3px;
    border-bottom: solid 1px #808075;
    width: 80px;
    margin: 0 auto; }
  .sec-wrap-03-middle .accordion-switch.accordion-active .open {
    display: none;
    padding-bottom: 3px; }
  .sec-wrap-03-middle .accordion-switch.accordion-active .close {
    display: block;
    padding-bottom: 3px; }
.sec-wrap-03-middle .sign {
  width: 852px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .sec-wrap-03-middle .sign {
      width: 90%;
      margin-bottom: 60px; } }
.sec-wrap-03-middle .sec-wrap-03-middle h2 {
  font-size: 30px;
  line-height: 1.333em;
  letter-spacing: 0.1em;
  margin-bottom: 60px;
  text-align: center;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .sec-wrap-03-middle .sec-wrap-03-middle h2 {
      width: 90%;
      font-size: 24px;
      line-height: 1.333em;
      text-align: justify;
      margin: 0 auto 30px auto; } }

.sec-wrap .member-list {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 0 20px 0;
  margin: 0 auto 80px auto; }
  @media only screen and (max-width: 1399px) {
    .sec-wrap .member-list {
      width: 980px; } }
  @media only screen and (max-width: 767px) {
    .sec-wrap .member-list {
      width: 100%;
      display: block; } }
  .sec-wrap .member-list li {
    width: 25%;
    padding: 0;
    list-style: none;
    margin-top: 60px; }
    @media only screen and (max-width: 767px) {
      .sec-wrap .member-list li {
        width: 100%;
        font-size: 14px;
        margin-top: 40px; } }
    .sec-wrap .member-list li .ph {
      width: 100%;
      padding: 0;
      margin: 0 0 20px 0; }
      .sec-wrap .member-list li .ph img {
        width: 100%;
        height: auto; }
    @media only screen and (max-width: 767px) {
      .sec-wrap .member-list li.blank {
        display: none; } }
    .sec-wrap .member-list li .name {
      width: 90%;
      font-size: 15px;
      letter-spacing: 0em;
      line-height: 1.777em;
      margin: 0 5% 1.777em 5%; }
      @media only screen and (max-width: 767px) {
        .sec-wrap .member-list li .name {
          font-size: 14px;
          width: 100%;
          margin: 0 0 1.777em 0; } }
      .sec-wrap .member-list li .name .tx {
        letter-spacing: 1px; }
        @media only screen and (max-width: 767px) {
          .sec-wrap .member-list li .name .tx {
            letter-spacing: 0.1em; } }
      .sec-wrap .member-list li .name .small {
        font-size: 11px; }
    .sec-wrap .member-list li .accordion {
      width: 90%;
      margin: 0 5%; }
      @media only screen and (max-width: 767px) {
        .sec-wrap .member-list li .accordion {
          width: 100%;
          margin: 0; } }
      .sec-wrap .member-list li .accordion .switch {
        display: block;
        text-align: center;
        text-decoration: none;
        border-bottom: solid 1px #808075;
        padding-bottom: 5px;
        color: #333; }
        @media only screen and (max-width: 767px) {
          .sec-wrap .member-list li .accordion .switch {
            text-align: left; } }
        .sec-wrap .member-list li .accordion .switch:after {
          content: "\f107";
          font-family: "Font Awesome\ 5 Free";
          margin-left: 0.1em;
          font-weight: 900; }
        .sec-wrap .member-list li .accordion .switch.open:after {
          content: "\f106";
          font-family: "Font Awesome\ 5 Free";
          margin-left: 0.1em;
          font-weight: 900; }
      .sec-wrap .member-list li .accordion .close {
        display: block;
        text-align: center;
        text-decoration: none;
        border-bottom: solid 1px #808075;
        padding-bottom: 5px;
        color: #333; }
        .sec-wrap .member-list li .accordion .close:after {
          content: "\f00d";
          font-family: "Font Awesome\ 5 Free";
          margin-left: 0.1em;
          font-weight: 900; }
      .sec-wrap .member-list li .accordion p {
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 1.777em;
        text-align: justify; }
        @media only screen and (max-width: 767px) {
          .sec-wrap .member-list li .accordion p {
            font-size: 14px; } }
  .sec-wrap .member-list .displayNone {
    display: none; }
.sec-wrap .tx {
  width: 100%;
  letter-spacing: 0.1em;
  margin: 0 auto 20px auto;
  padding: 0;
  /*@media only screen and (max-width:1399px) {
  	width: 90%;
  }*/ }
  @media only screen and (max-width: 767px) {
    .sec-wrap .tx {
      display: none; } }
.sec-wrap .scroll {
  overflow-x: hidden;
  overflow-x: scroll;
  width: 100%;
  height: auto;
  margin: 0 auto 0 auto;
  position: relative; }
  .sec-wrap .scroll.none {
    overflow-y: hidden;
    overflow: hidden;
    /*.list-table {
    	tbody {
    		tr {
    			th:nth-child(3) {
    				width: 736px;
    			}
    		}
    	}
    }*/ }
  @media only screen and (max-width: 767px) {
    .sec-wrap .scroll {
      display: none; } }
  .sec-wrap .scroll .list-table {
    width: 99%;
    font-size: 16px;
    letter-spacing: 0.1em;
    margin: 2px auto 20px auto;
    position: relative;
    border-left: solid 1px rgba(166, 166, 166, 0.6); }
    .sec-wrap .scroll .list-table:before {
      content: "";
      width: 5px;
      height: 5px;
      display: block;
      border-radius: 50%;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      background-color: #808080;
      position: absolute;
      top: -3px;
      right: -3px; }
    .sec-wrap .scroll .list-table:after {
      content: "";
      width: 5px;
      height: 5px;
      display: block;
      border-radius: 50%;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      background-color: #808080;
      position: absolute;
      bottom: -3px;
      left: -3px; }
    .sec-wrap .scroll .list-table tbody tr th {
      border-top: solid 1px rgba(166, 166, 166, 0.6);
      border-bottom: solid 1px rgba(166, 166, 166, 0.6);
      border-right: solid 1px rgba(166, 166, 166, 0.6);
      padding: 10px 12px;
      white-space: nowrap;
      font-weight: 500;
      position: relative;
      font-size: 14px;
      text-align: center; }
      .sec-wrap .scroll .list-table tbody tr th:before {
        content: "";
        width: 5px;
        height: 5px;
        display: block;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        background-color: #808080;
        position: absolute;
        top: -3px;
        left: -3px; }
      .sec-wrap .scroll .list-table tbody tr th:after {
        content: "";
        width: 5px;
        height: 5px;
        display: block;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        background-color: #808080;
        position: absolute;
        bottom: -3px;
        right: -3px; }
      .sec-wrap .scroll .list-table tbody tr th.left {
        text-align: left; }
    .sec-wrap .scroll .list-table tbody tr td {
      border-bottom: solid 1px rgba(166, 166, 166, 0.6);
      border-right: solid 1px rgba(166, 166, 166, 0.6);
      padding: 10px 12px;
      white-space: nowrap;
      position: relative;
      font-size: 14px;
      text-align: center; }
      .sec-wrap .scroll .list-table tbody tr td:before {
        content: "";
        width: 5px;
        height: 5px;
        display: block;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        background-color: #808080;
        position: absolute;
        top: -3px;
        left: -3px; }
      .sec-wrap .scroll .list-table tbody tr td:after {
        content: "";
        width: 5px;
        height: 5px;
        display: block;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        background-color: #808080;
        position: absolute;
        bottom: -3px;
        right: -3px; }
.sec-wrap .memory-list {
  padding: 0;
  margin: 0 auto;
  width: 100%;
  list-style: none;
  padding-top: 15px;
  display: none; }
  @media only screen and (max-width: 767px) {
    .sec-wrap .memory-list {
      display: block; } }
  .sec-wrap .memory-list .accordion {
    width: 100%;
    margin-bottom: 40px; }
    .sec-wrap .memory-list .accordion .displayNone {
      display: none; }
    .sec-wrap .memory-list .accordion .switch {
      width: 100%;
      display: block;
      text-align: center;
      text-decoration: none;
      border-bottom: solid 1px #808075;
      padding-bottom: 5px; }
      .sec-wrap .memory-list .accordion .switch:after {
        content: "\f107";
        font-family: "Font Awesome\ 5 Free";
        margin-left: 0.1em;
        font-weight: 900; }
      .sec-wrap .memory-list .accordion .switch.open:after {
        content: "\f106";
        font-family: "Font Awesome\ 5 Free";
        margin-left: 0.1em;
        font-weight: 900; }
    .sec-wrap .memory-list .accordion .close {
      display: block;
      text-align: center;
      text-decoration: none;
      border-bottom: solid 1px #808075;
      padding-bottom: 5px; }
      .sec-wrap .memory-list .accordion .close:after {
        content: "\f00d";
        font-family: "Font Awesome\ 5 Free";
        margin-left: 0.1em;
        font-weight: 900; }
    .sec-wrap .memory-list .accordion dl {
      width: 94%;
      margin: 0 auto;
      padding: 20px 0 0 0; }
      .sec-wrap .memory-list .accordion dl dt {
        width: 100%;
        padding: 0;
        margin: 0;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1.777em;
        text-align: justify;
        font-weight: 500; }
      .sec-wrap .memory-list .accordion dl dd {
        width: 100%;
        padding: 0;
        margin: 0 0 20px 0;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1.777em;
        text-align: justify; }

.text-box {
  width: 680px;
  margin: 0 auto 60px auto;
  padding: 0; }
  @media only screen and (max-width: 767px) {
    .text-box {
      width: 100%; } }
  .text-box.wide {
    width: 100%;
    margin: -60px auto 60px auto; }
    @media only screen and (max-width: 767px) {
      .text-box.wide {
        margin: auto auto 60px auto; } }
  .text-box.w450 {
    width: 470px; }
    @media only screen and (max-width: 767px) {
      .text-box.w450 {
        width: 100%; } }
  .text-box p {
    line-height: 1.777em; }
    @media only screen and (max-width: 767px) {
      .text-box p {
        font-size: 14px; } }
  .text-box .center {
    text-align: center; }
    .text-box .center.large {
      font-size: 20px;
      font-weight: 500;
      margin-bottom: 0.555em; }
  .text-box .indent-text {
    text-align: center;
    font-size: 14px; }
    @media only screen and (max-width: 767px) {
      .text-box .indent-text {
        text-align: left;
        padding-left: 1em;
        text-indent: -1em; } }

.links-two {
  width: 100%;
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .links-two {
      display: block; } }
  .links-two .link-wrap {
    width: 49%; }
    @media only screen and (max-width: 767px) {
      .links-two .link-wrap {
        width: 100%; } }
    .links-two .link-wrap .links-line-title {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 30px; }
      .links-two .link-wrap .links-line-title span {
        width: 240px;
        display: block;
        text-align: center;
        line-height: 1.333em;
        height: 2.666em;
        font-size: 16px;
        display: flex;
        justify-content: center;
        align-items: center; }
      .links-two .link-wrap .links-line-title:before {
        width: 400px;
        height: 1px;
        background-color: #333;
        content: "";
        flex: 1; }
      .links-two .link-wrap .links-line-title:after {
        width: 400px;
        height: 1px;
        background-color: #333;
        content: "";
        flex: 1; }

.links-one {
  width: 100%;
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .links-one {
      display: block; } }
  .links-one .link-wrap {
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .links-one .link-wrap {
        width: 100%; } }
    .links-one .link-wrap .links-line-title {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 30px; }
      .links-one .link-wrap .links-line-title span {
        width: 240px;
        display: block;
        text-align: center;
        line-height: 1.333em;
        height: 2.666em;
        font-size: 16px;
        display: flex;
        justify-content: center;
        align-items: center; }
        @media only screen and (max-width: 767px) {
          .links-one .link-wrap .links-line-title span {
            width: 50%; } }
      .links-one .link-wrap .links-line-title:before {
        width: 400px;
        height: 1px;
        background-color: #333;
        content: "";
        flex: 1; }
      .links-one .link-wrap .links-line-title:after {
        width: 400px;
        height: 1px;
        background-color: #333;
        content: "";
        flex: 1; }

.links-one-list {
  width: 700px;
  margin: 0 auto;
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    .links-one-list {
      width: 100%; } }
  .links-one-list li {
    width: 50%;
    margin: 0 0 15px 0;
    padding: 0 0 0 5%; }
    @media only screen and (max-width: 767px) {
      .links-one-list li {
        width: 100%; } }
    .links-one-list li a,
    .links-one-list li button {
      font-weight: 500;
      font-size: 14px;
      color: #333;
      text-decoration: none;
      line-height: 1.333em;
      border: none;
      background-color: rgba(0, 0, 0, 0);
      cursor: pointer; }
      .links-one-list li a:after,
      .links-one-list li button:after {
        display: inline-block;
        content: "";
        background-image: url(../img/common/arrow.svg);
        background-position: center center;
        background-size: auto;
        width: 14px;
        height: 12px;
        transform: rotate(-90deg);
        margin-left: 0.333em; }
      .links-one-list li a.prev:after,
      .links-one-list li button.prev:after {
        display: none; }
      .links-one-list li a.prev:before,
      .links-one-list li button.prev:before {
        display: inline-block;
        content: "";
        background-image: url(../img/common/arrow.svg);
        background-position: center center;
        background-size: auto;
        width: 14px;
        height: 12px;
        transform: rotate(90deg);
        margin-right: 0.333em; }
      .links-one-list li a.external:after,
      .links-one-list li button.external:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f35d";
        background-image: none;
        width: auto;
        height: auto;
        transform: rotate(0deg); }
      .links-one-list li a.close:after,
      .links-one-list li button.close:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f00d";
        background-image: none;
        width: auto;
        height: auto;
        transform: rotate(0deg); }
      .links-one-list li a.pdf:after,
      .links-one-list li button.pdf:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        content: "\f1c1";
        background-image: none;
        width: auto;
        height: auto;
        transform: rotate(0deg); }

.wrap700 {
  max-width: 700px;
  width: 100%;
  margin: 0 auto; }
  .wrap700 .two-column {
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none; }
    .wrap700 .two-column li {
      width: 48.57142857%;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .wrap700 .two-column li {
          width: 100%; } }
    .wrap700 .two-column.single li {
      margin: 0 auto; }

.wrap1000 {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
  .wrap1000.three-column {
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none; }
    .wrap1000.three-column li {
      width: 32%;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .wrap1000.three-column li {
          width: 100%; } }

.figure {
  width: 100%;
  padding: 0;
  margin: 0 0 20px 0; }
  .figure .figcaption {
    padding: 0;
    margin: 0;
    font-size: 18px;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .figure .figcaption {
        font-size: 14px; } }
  .figure img {
    width: 100%;
    height: auto;
    margin-bottom: 10px; }

.form-cont {
  max-width: 980px;
  width: 100%;
  margin: 40px auto 0 auto;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 18px; }
  @media only screen and (max-width: 767px) {
    .form-cont {
      display: block;
      font-size: 16px; } }
  .form-cont .red {
    color: #bb1c24;
    font-weight: 500; }
  .form-cont dt {
    padding: 0;
    margin: 0 0 15px 0;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .form-cont dt {
        margin: 0 0 10px 0; } }
  .form-cont dd {
    border-bottom: solid 1px #333;
    padding: 0 0 7px 0;
    margin: 0 0 35px 0;
    width: 100%; }
    .form-cont dd label {
      display: flex;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        .form-cont dd label {
          display: block; } }
    .form-cont dd .hd {
      display: inline-block;
      width: 160px; }
      @media only screen and (max-width: 767px) {
        .form-cont dd .hd {
          width: 100%;
          margin-bottom: 10px;
          display: block; } }
    .form-cont dd .text-input {
      border: none;
      width: 100%;
      flex: 1; }
    .form-cont dd .textarea {
      width: 100%;
      min-height: 250px;
      flex: 1;
      border: solid 1px #333;
      padding: 0.777em;
      line-height: 1.333em; }
    .form-cont dd.half {
      width: 480px; }
      @media only screen and (max-width: 767px) {
        .form-cont dd.half {
          width: 100%; } }
    .form-cont dd:last-child {
      border-bottom: none; }
    .form-cont dd p {
      padding: 0;
      margin: 0; }
      .form-cont dd p.textarea {
        line-height: 1.333em; }

.schedule-accordion {
  width: 100%;
  padding: 0;
  margin: 0; }
  .schedule-accordion .accordion {
    width: 100%;
    padding: 0;
    margin: 0 0 30px 0;
    list-style: none;
    border-top: solid 2px #333;
    border-bottom: solid 1px #333; }
    .schedule-accordion .accordion .switch {
      line-height: 56px;
      padding: 0 35px;
      margin: 0;
      cursor: pointer;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .schedule-accordion .accordion .switch {
          padding: 0 0 0 10px; } }
      .schedule-accordion .accordion .switch .week strong {
        display: inline-block;
        margin-right: 1.111em;
        font-weight: 500; }
    .schedule-accordion .accordion .contentWrap {
      width: 100%;
      margin: 0;
      padding: 0 35px;
      display: none; }
      @media only screen and (max-width: 767px) {
        .schedule-accordion .accordion .contentWrap {
          padding: 0 10px; } }
      .schedule-accordion .accordion .contentWrap .schedule-list {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: solid 1px #333;
        margin-bottom: 20px; }
        .schedule-accordion .accordion .contentWrap .schedule-list .date {
          width: 100%;
          padding: 0;
          margin: 0 0 15px 0;
          font-weight: 700;
          display: block;
          font-size: 16px;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            .schedule-accordion .accordion .contentWrap .schedule-list .date {
              text-align: center;
              font-size: 18px; } }
        .schedule-accordion .accordion .contentWrap .schedule-list .program {
          width: 50%; }
          @media only screen and (max-width: 767px) {
            .schedule-accordion .accordion .contentWrap .schedule-list .program {
              width: 100%; } }
          .schedule-accordion .accordion .contentWrap .schedule-list .program .label {
            border: solid 1px #333;
            padding: 3px 5px 5px 5px;
            margin: 3px 0 12px 0;
            font-weight: 500;
            line-height: 1em;
            display: inline-block; }
            .schedule-accordion .accordion .contentWrap .schedule-list .program .label.bg-black {
              background-color: #333;
              color: #FFFFFF; }
          .schedule-accordion .accordion .contentWrap .schedule-list .program p {
            width: 100%;
            padding: 0 35px 0 0;
            margin: 0 0 15px 0;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            line-height: 1.777em; }
            @media only screen and (max-width: 767px) {
              .schedule-accordion .accordion .contentWrap .schedule-list .program p {
                padding: 0 0 0 0; } }
            .schedule-accordion .accordion .contentWrap .schedule-list .program p .hour {
              display: inline-block;
              margin-right: 0.333em; }
            .schedule-accordion .accordion .contentWrap .schedule-list .program p .title {
              flex: 1;
              display: inline-block; }
              .schedule-accordion .accordion .contentWrap .schedule-list .program p .title .st {
                font-weight: 500; }
      .schedule-accordion .accordion .contentWrap .close-button {
        width: 100%;
        text-align: center; }
        .schedule-accordion .accordion .contentWrap .close-button a {
          font-weight: 500; }
    .schedule-accordion .accordion .close {
      font-weight: 700;
      text-decoration: none;
      width: 70px;
      text-align: center;
      margin: 50px auto;
      display: block; }
      .schedule-accordion .accordion .close:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f00d";
        background-image: none;
        width: auto;
        height: auto;
        transform: rotate(0deg);
        margin-left: 0.333em; }

.program-detail {
  width: 100%;
  padding: 0;
  margin: 0 0 25px 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .program-detail {
      display: block;
      font-size: 14px; } }
  .program-detail dt {
    width: 18%;
    padding: 0;
    margin: 0 0 15px 0;
    color: #4d4d4d;
    line-height: 1.777em;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      .program-detail dt {
        width: 100%;
        margin: 0; } }
  .program-detail dd {
    width: 82%;
    padding: 0;
    margin: 0 0 15px 0;
    line-height: 1.777em; }
    @media only screen and (max-width: 767px) {
      .program-detail dd {
        width: 100%; } }
    .program-detail dd.half {
      width: 32%;
      padding-right: 1.111em; }
      @media only screen and (max-width: 767px) {
        .program-detail dd.half {
          width: 100%; } }
    .program-detail dd.column {
      display: flex;
      flex-wrap: wrap; }
      .program-detail dd.column .two-column {
        width: 50%;
        margin: 0;
        padding: 0; }
        @media only screen and (max-width: 767px) {
          .program-detail dd.column .two-column {
            width: 100%; } }
        .program-detail dd.column .two-column dt {
          width: 100%;
          color: #333;
          margin: 0;
          font-size: 18px;
          font-weight: 700; }
          @media only screen and (max-width: 767px) {
            .program-detail dd.column .two-column dt {
              font-size: 16px; } }
        .program-detail dd.column .two-column dd {
          width: 100%;
          margin: 0; }
    .program-detail dd .list {
      list-style: none;
      margin: 0;
      padding: 0; }
      .program-detail dd .list li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .program-detail dd .list li .head {
          width: 50px;
          display: inline-block; }
        .program-detail dd .list li .name {
          width: 100%;
          flex: 1;
          display: inline-block; }

.ph-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .ph-wrap {
      display: block; } }
  .ph-wrap .ph {
    width: 20%;
    padding: 0;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      .ph-wrap .ph {
        width: 100%;
        margin-bottom: 15px; } }
    .ph-wrap .ph img {
      width: 100%;
      height: auto; }
    .ph-wrap .ph figcaption {
      width: 100%;
      text-align: right;
      font-size: 12px;
      font-weight: 400;
      line-height: 1.333em;
      padding: 0.333em 0 0 0; }
  .ph-wrap .txt {
    width: 78%;
    padding: 0;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      .ph-wrap .txt {
        width: 100%; } }
    .ph-wrap .txt .name {
      padding: 0;
      margin: 0 0 1.111em 0;
      font-size: 16px;
      font-weight: 700; }
      @media only screen and (max-width: 767px) {
        .ph-wrap .txt .name {
          margin: 0 0 10px 0; } }
      .ph-wrap .txt .name .en {
        display: block;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.777em; }
  .ph-wrap .indent {
    font-size: 12px;
    padding: 0 0 0 1em;
    margin: 1.555em 0 0 0;
    text-indent: -1em; }

.ph-wrap.pad:nth-child(n + 2) {
  padding-bottom: 20px; }
  @media only screen and (max-width: 767px) {
    .ph-wrap.pad:nth-child(n + 2) {
      padding-bottom: 0px; } }

.blog-grid-wrap {
  width: 100%; }
  .blog-grid-wrap .grid {
    width: 98.57142857%;
    margin-left: 1.428571429%; }
    @media only screen and (max-width: 767px) {
      .blog-grid-wrap .grid {
        width: 93.75%;
        margin: 0 3.125%; } }
    .blog-grid-wrap .grid .gutter-sizer {
      width: 1.449275362%; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .grid .gutter-sizer {
          width: 0%; } }
    .blog-grid-wrap .grid .grid-sizer,
    .blog-grid-wrap .grid .grid-item {
      width: 23.55072464%;
      background-color: #fff;
      padding: 0;
      margin: 0 0 20px 0; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .grid .grid-sizer,
        .blog-grid-wrap .grid .grid-item {
          width: 100%; } }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .grid .grid-sizer,
        .blog-grid-wrap .grid .grid-item {
          margin: 0 0 10px 0; } }
      .blog-grid-wrap .grid .grid-sizer a,
      .blog-grid-wrap .grid .grid-item a {
        display: block;
        width: 100%;
        text-decoration: none;
        background-color: #fff; }
        .blog-grid-wrap .grid .grid-sizer a .ph,
        .blog-grid-wrap .grid .grid-item a .ph {
          padding: 0;
          margin: 0; }
          .blog-grid-wrap .grid .grid-sizer a .ph img,
          .blog-grid-wrap .grid .grid-item a .ph img {
            width: 100%;
            height: auto; }
        .blog-grid-wrap .grid .grid-sizer a .wrap,
        .blog-grid-wrap .grid .grid-item a .wrap {
          padding: 15px;
          margin: 0; }
          .blog-grid-wrap .grid .grid-sizer a .wrap .date,
          .blog-grid-wrap .grid .grid-item a .wrap .date {
            font-family: 'Overpass', sans-serif;
            font-weight: 800;
            font-style: italic;
            padding: 0;
            margin: 0 0 15px 0; }
          .blog-grid-wrap .grid .grid-sizer a .wrap .cate-wrap,
          .blog-grid-wrap .grid .grid-item a .wrap .cate-wrap {
            padding-bottom: 10px; }
            .blog-grid-wrap .grid .grid-sizer a .wrap .cate-wrap .cate,
            .blog-grid-wrap .grid .grid-item a .wrap .cate-wrap .cate {
              display: inline-block;
              line-height: 1em;
              padding: 4px 8px 5px 7px;
              color: #fff;
              font-weight: 500;
              font-size: 14px;
              border-radius: 5px;
              -webkit-border-radius: 5px;
              -moz-border-radius: 5px;
              background: -webkit-gradient(linear, left top, right top, from(#009673), to(teal));
              background: -webkit-linear-gradient(left, #009673, teal);
              background: -moz-linear-gradient(left, #009673, teal);
              background: -o-linear-gradient(left, #009673, teal);
              background: linear-gradient(to right, #009673, teal);
              margin: 0 5px 5px 0; }
          .blog-grid-wrap .grid .grid-sizer a .wrap .title,
          .blog-grid-wrap .grid .grid-item a .wrap .title {
            font-weight: 400;
            line-height: 1.777em;
            padding: 0;
            margin: 0;
            font-size: 16px; }
  .blog-grid-wrap .loader-ellips {
    font-size: 20px;
    position: relative;
    width: 4em;
    height: 1em;
    margin: 10px auto; }
  .blog-grid-wrap .loader-ellips__dot {
    display: block;
    width: 1em;
    height: 1em;
    border-radius: 0.5em;
    background: #fff;
    position: absolute;
    animation-duration: 0.5s;
    animation-timing-function: ease;
    animation-iteration-count: infinite; }
  .blog-grid-wrap .loader-ellips__dot:nth-child(1),
  .blog-grid-wrap .loader-ellips__dot:nth-child(2) {
    left: 0; }
  .blog-grid-wrap .loader-ellips__dot:nth-child(3) {
    left: 1.5em; }
  .blog-grid-wrap .loader-ellips__dot:nth-child(4) {
    left: 3em; }
@keyframes reveal {
  from {
    transform: scale(0.001); }
  to {
    transform: scale(1); } }
@keyframes slide {
  to {
    transform: translateX(1.5em); } }
  .blog-grid-wrap .loader-ellips__dot:nth-child(1) {
    animation-name: reveal; }
  .blog-grid-wrap .loader-ellips__dot:nth-child(2),
  .blog-grid-wrap .loader-ellips__dot:nth-child(3) {
    animation-name: slide; }
  .blog-grid-wrap .loader-ellips__dot:nth-child(4) {
    animation-name: reveal;
    animation-direction: reverse; }
  .blog-grid-wrap .page-load-status {
    width: 100%;
    text-align: center;
    font-size: 21px;
    font-weight: 500;
    color: #fff;
    display: none; }
  .blog-grid-wrap .pagination {
    width: 100%;
    text-align: center;
    display: none; }
    .blog-grid-wrap .pagination .pagination__next {
      font-size: 16px;
      color: #fff;
      font-weight: 500;
      text-decoration: none; }
      .blog-grid-wrap .pagination .pagination__next:after {
        display: inline-block;
        content: "";
        width: 14px;
        height: 12px;
        padding: 0;
        margin: 0 0 0 2px;
        background-image: url(../img/common/arrow_white.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto auto;
        position: relative;
        bottom: -1px; }
  .blog-grid-wrap .pagination-button {
    width: 100%;
    text-align: center; }
    .blog-grid-wrap .pagination-button .view-more-button {
      font-size: 16px;
      color: #fff;
      font-weight: 500;
      text-decoration: none;
      border: none;
      background-color: rgba(0, 0, 0, 0); }
      .blog-grid-wrap .pagination-button .view-more-button:after {
        display: inline-block;
        content: "";
        width: 14px;
        height: 12px;
        padding: 0;
        margin: 0 0 0 2px;
        background-image: url(../img/common/arrow_white.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto auto;
        position: relative;
        bottom: -1px; }
  .blog-grid-wrap .blog-link-list {
    margin-top: 60px; }
    .blog-grid-wrap .blog-link-list.detail-page {
      margin-top: 0px; }
    .blog-grid-wrap .blog-link-list .title {
      width: 100%;
      text-align: center;
      font-size: 20px;
      padding: 0;
      margin: 0 0 25px 0;
      color: #fff; }
      .blog-grid-wrap .blog-link-list .title .underline {
        border-bottom: solid 2px #fff; }
    .blog-grid-wrap .blog-link-list .list-wrap {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      padding: 30px 0;
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      background-color: #fff;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .blog-link-list .list-wrap {
          width: 93.75%;
          margin: 0 auto;
          padding: 15px 0; } }
      .blog-grid-wrap .blog-link-list .list-wrap:before {
        content: "";
        width: 50px;
        height: 50px;
        background-color: #fff;
        transform: rotate(-45deg);
        position: absolute;
        left: 50%;
        margin-left: -25px;
        top: 0px;
        z-index: 0; }
      .blog-grid-wrap .blog-link-list .list-wrap li {
        width: 50%;
        padding: 5px 5% 5px 10%;
        margin: 0;
        position: relative;
        z-index: 1; }
        @media only screen and (max-width: 767px) {
          .blog-grid-wrap .blog-link-list .list-wrap li {
            width: 100%;
            margin: 0 auto;
            padding: 5px 15px; } }
        .blog-grid-wrap .blog-link-list .list-wrap li a {
          font-size: 14px;
          font-weight: 500;
          display: inline-block;
          text-decoration: none;
          color: #333;
          line-height: 1.555em; }
          .blog-grid-wrap .blog-link-list .list-wrap li a:after {
            display: inline-block;
            content: "";
            width: 14px;
            height: 12px;
            padding: 0;
            margin: 0 0 0 0.333em;
            background-image: url(../img/common/arrow.svg);
            background-repeat: no-repeat;
            background-position: center center;
            background-size: 90% auto;
            position: relative;
            bottom: -1px;
            transform: rotate(-90deg); }
    .blog-grid-wrap .blog-link-list .list-wrap-2 {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      padding: 20px 0;
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      background-color: #fff;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .blog-link-list .list-wrap-2 {
          width: 93.75%;
          margin: 0 auto;
          padding: 15px 0; } }
      .blog-grid-wrap .blog-link-list .list-wrap-2:before {
        content: "";
        width: 50px;
        height: 50px;
        background-color: #fff;
        transform: rotate(-45deg);
        position: absolute;
        left: 50%;
        margin-left: -25px;
        top: 0px;
        z-index: 0; }
      .blog-grid-wrap .blog-link-list .list-wrap-2 li {
        width: 50%;
        padding: 0 25px;
        list-style: none;
        margin: 10px 0;
        position: relative;
        z-index: 1; }
        .blog-grid-wrap .blog-link-list .list-wrap-2 li:nth-child(even) {
          border-left: solid 2px #333; }
        @media only screen and (max-width: 767px) {
          .blog-grid-wrap .blog-link-list .list-wrap-2 li {
            width: 100%;
            padding: 0 15px; }
            .blog-grid-wrap .blog-link-list .list-wrap-2 li:nth-child(even) {
              border-left: none; } }
        .blog-grid-wrap .blog-link-list .list-wrap-2 li dl {
          padding: 0;
          margin: 0;
          list-style: none; }
          .blog-grid-wrap .blog-link-list .list-wrap-2 li dl dt {
            width: 100%;
            text-align: center;
            font-weight: 500;
            margin-bottom: 10px; }
          .blog-grid-wrap .blog-link-list .list-wrap-2 li dl dd {
            width: 100%;
            display: flex;
            flex-wrap: wrap;
            padding: 0;
            margin: 0; }
            .blog-grid-wrap .blog-link-list .list-wrap-2 li dl dd a {
              display: inline-block;
              text-decoration: none;
              font-size: 14px;
              font-weight: 500;
              color: #333;
              line-height: 1.777em;
              width: 16.666%;
              text-align: center; }
              @media only screen and (max-width: 767px) {
                .blog-grid-wrap .blog-link-list .list-wrap-2 li dl dd a {
                  width: 25%;
                  line-height: 2.111em; } }
              .blog-grid-wrap .blog-link-list .list-wrap-2 li dl dd a:after {
                display: inline-block;
                content: "";
                width: 14px;
                height: 12px;
                padding: 0;
                margin: 0 0 0 0.333em;
                background-image: url(../img/common/arrow.svg);
                background-repeat: no-repeat;
                background-position: center center;
                background-size: 90% auto;
                position: relative;
                bottom: -1px;
                transform: rotate(-90deg); }
  .blog-grid-wrap .blog-cate-title {
    font-size: 18px;
    font-weight: 500;
    width: 100%;
    text-align: center;
    padding: 0;
    margin: 0 0 60px 0;
    color: #fff; }
  .blog-grid-wrap .blog-3column {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    @media only screen and (max-width: 767px) {
      .blog-grid-wrap .blog-3column {
        display: inline-block; } }
    .blog-grid-wrap .blog-3column .left-column,
    .blog-grid-wrap .blog-3column .right-column {
      width: 150px;
      display: flex;
      justify-content: center;
      align-items: flex-start; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .blog-3column .left-column,
        .blog-grid-wrap .blog-3column .right-column {
          display: none; } }
      .blog-grid-wrap .blog-3column .left-column .sns-wrap,
      .blog-grid-wrap .blog-3column .right-column .sns-wrap {
        width: 96px;
        display: block;
        background-color: #fff;
        padding: 15px 0;
        margin: 0;
        position: -webkit-sticky;
        position: sticky;
        top: 120px; }
        .blog-grid-wrap .blog-3column .left-column .sns-wrap:after,
        .blog-grid-wrap .blog-3column .right-column .sns-wrap:after {
          width: 20px;
          height: 20px;
          display: block;
          transform: rotate(-45deg);
          background-color: #fff;
          position: absolute;
          right: -10px;
          top: 17px;
          content: ""; }
        .blog-grid-wrap .blog-3column .left-column .sns-wrap dt,
        .blog-grid-wrap .blog-3column .right-column .sns-wrap dt {
          font-weight: 700;
          width: 80%;
          display: block;
          line-height: 1em;
          padding: 4px 8px 5px 7px;
          color: #fff;
          font-weight: 500;
          font-size: 16px;
          letter-spacing: 0.1em;
          text-align: center;
          border-radius: 5px;
          -webkit-border-radius: 5px;
          -moz-border-radius: 5px;
          background: -webkit-gradient(linear, left top, right top, from(#009673), to(teal));
          background: -webkit-linear-gradient(left, #009673, teal);
          background: -moz-linear-gradient(left, #009673, teal);
          background: -o-linear-gradient(left, #009673, teal);
          background: linear-gradient(to right, #009673, teal);
          margin: 0 auto;
          position: relative;
          z-index: 10; }
        .blog-grid-wrap .blog-3column .left-column .sns-wrap dd,
        .blog-grid-wrap .blog-3column .right-column .sns-wrap dd {
          width: 100%;
          text-align: center;
          padding: 0;
          margin: 10px 0 0 0; }
    .blog-grid-wrap .blog-3column .main-column {
      width: 700px; }
      @media only screen and (max-width: 767px) {
        .blog-grid-wrap .blog-3column .main-column {
          width: 93.75%;
          margin: 0 auto; } }
      .blog-grid-wrap .blog-3column .main-column .entry-wrap {
        width: 100%;
        background-color: #fff;
        padding: 20px; }
        .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header {
          margin-bottom: 20px; }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header .date {
            font-family: 'Overpass', sans-serif;
            font-weight: 800;
            font-style: italic;
            padding: 0;
            margin: 0 0 20px 0; }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header .cate-wrap {
            padding-bottom: 10px;
            margin-bottom: 0px; }
            .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header .cate-wrap .cate {
              display: inline-block;
              line-height: 1em;
              padding: 4px 8px 5px 7px;
              color: #fff;
              font-weight: 500;
              font-size: 14px;
              border-radius: 5px;
              -webkit-border-radius: 5px;
              -moz-border-radius: 5px;
              background: -webkit-gradient(linear, left top, right top, from(#009673), to(teal));
              background: -webkit-linear-gradient(left, #009673, teal);
              background: -moz-linear-gradient(left, #009673, teal);
              background: -o-linear-gradient(left, #009673, teal);
              background: linear-gradient(to right, #009673, teal);
              margin: 0 5px 5px 0;
              text-decoration: none; }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header .entry-title {
            font-size: 18px;
            line-height: 1.777em;
            padding: 0;
            margin: 0;
            font-weight: 500; }
            @media only screen and (max-width: 767px) {
              .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-header .entry-title {
                font-size: 16px; } }
        .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-ph {
          padding: 0;
          margin: 0 0 10px 0; }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-ph img {
            max-width: 100%;
            width: auto;
            height: auto; }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-ph .entry-ca {
            font-size: 14px;
            line-height: 1.555em;
            padding: 5px 0 0 0;
            color: #999; }
        .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-body {
          font-size: 16px; }
          @media only screen and (max-width: 767px) {
            .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-body {
              font-size: 14px; } }
          .blog-grid-wrap .blog-3column .main-column .entry-wrap .entry-body img {
            max-width: 100%;
            height: auto; }
      .blog-grid-wrap .blog-3column .main-column .entry-footer .pager a {
        color: #fff; }
        .blog-grid-wrap .blog-3column .main-column .entry-footer .pager a.next:after {
          background-image: url(../img/common/arrow_white.svg);
          transform: rotate(-90deg); }
        .blog-grid-wrap .blog-3column .main-column .entry-footer .pager a.prev:before {
          background-image: url(../img/common/arrow_white.svg);
          transform: rotate(90deg); }
        .blog-grid-wrap .blog-3column .main-column .entry-footer .pager a.back:before {
          background-image: url(../img/common/arrow_white.svg);
          transform: rotate(90deg); }
  .blog-grid-wrap .link-list dt span {
    border-bottom: none;
    color: #fff; }
  .blog-grid-wrap .link-list dd a {
    color: #fff;
    /*&:after {
    	display: inline-block;
    	content: "";
    	width: 14px;
    	height: 12px;
    	background-image: url(../img/common/arrow_white.svg);
    	background-size: 100% auto;
    	transform: rotate(-90deg);
    	margin-left: 0.333em;
    }*/ }
    .blog-grid-wrap .link-list dd a:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f15b";
      transform: rotate(0deg); }
    .blog-grid-wrap .link-list dd a.pptx:after, .blog-grid-wrap .link-list dd a.txt:after, .blog-grid-wrap .link-list dd a.jpg:after, .blog-grid-wrap .link-list dd a.zip:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f15b";
      transform: rotate(0deg); }
    .blog-grid-wrap .link-list dd a.pdf:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f1c1";
      transform: rotate(0deg); }
    .blog-grid-wrap .link-list dd a.xls:after, .blog-grid-wrap .link-list dd a.xlsx:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f1c3";
      transform: rotate(0deg); }
    .blog-grid-wrap .link-list dd a.doc:after, .blog-grid-wrap .link-list dd a.docx:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 500;
      content: "\f1c2";
      transform: rotate(0deg); }
    .blog-grid-wrap .link-list dd a.external:after {
      background-image: none;
      font-family: "Font Awesome 5 Free";
      font-weight: 700;
      content: "\f35d";
      transform: rotate(0deg); }
  .blog-grid-wrap .link-list.line dt:before {
    background-color: #fff; }
  .blog-grid-wrap .link-list.line dt:after {
    background-color: #fff; }

.event-detail {
  width: 920px;
  margin: 0 auto;
  padding: 40px 0;
  display: flex;
  flex-wrap: wrap;
  line-height: 180%; }
  @media only screen and (max-width: 767px) {
    .event-detail {
      width: 100%;
      display: inline-block; } }
  .event-detail dt {
    width: 130px;
    padding: 0;
    margin: 0 0 20px 0;
    font-size: 16px;
    color: #4d4d4d;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .event-detail dt {
        width: 100%;
        font-size: 16px; } }
  .event-detail dd {
    width: 790px;
    padding: 0;
    margin: 0 0 20px 0; }
    @media only screen and (max-width: 767px) {
      .event-detail dd {
        width: 100%;
        font-size: 14px;
        margin: 0 0 30px 0; } }
    .event-detail dd.flex {
      display: flex;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        .event-detail dd.flex {
          width: 100%;
          display: inline-block; } }
      .event-detail dd.flex dl {
        width: 50%;
        padding: 0;
        margin: 0; }
        @media only screen and (max-width: 767px) {
          .event-detail dd.flex dl {
            width: 100%; } }
        .event-detail dd.flex dl dt {
          font-size: 34px; }
          @media only screen and (max-width: 767px) {
            .event-detail dd.flex dl dt {
              font-size: 28px; } }
          .event-detail dd.flex dl dt .small {
            font-size: 21px; }
            @media only screen and (max-width: 767px) {
              .event-detail dd.flex dl dt .small {
                font-size: 18px; } }
        .event-detail dd.flex dl dd {
          width: auto;
          font-size: 16px; }
          @media only screen and (max-width: 767px) {
            .event-detail dd.flex dl dd {
              font-size: 14px;
              margin: 0 0 15px 0; } }
          .event-detail dd.flex dl dd .small {
            font-size: 14px; }
            @media only screen and (max-width: 767px) {
              .event-detail dd.flex dl dd .small {
                font-size: 12px; } }
    @media only screen and (max-width: 767px) {
      .event-detail dd.flex2 {
        width: 100%;
        display: inline-block; } }
    .event-detail dd.flex2 dl {
      width: 100%;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .event-detail dd.flex2 dl {
          width: 100%; } }
      .event-detail dd.flex2 dl dt {
        font-size: 34px; }
        @media only screen and (max-width: 767px) {
          .event-detail dd.flex2 dl dt {
            font-size: 28px; } }
        .event-detail dd.flex2 dl dt .small {
          font-size: 21px; }
          @media only screen and (max-width: 767px) {
            .event-detail dd.flex2 dl dt .small {
              font-size: 18px; } }
      .event-detail dd.flex2 dl dd {
        width: auto;
        font-size: 16px; }
        @media only screen and (max-width: 767px) {
          .event-detail dd.flex2 dl dd {
            font-size: 14px;
            margin: 0 0 15px 0; } }
        .event-detail dd.flex2 dl dd .small {
          font-size: 14px; }
          @media only screen and (max-width: 767px) {
            .event-detail dd.flex2 dl dd .small {
              font-size: 12px; } }
  .event-detail a:hover {
    text-decoration: none; }
  .event-detail .imageflx {
    display: flex; }
    @media only screen and (max-width: 767px) {
      .event-detail .imageflx {
        display: block; } }
    .event-detail .imageflx .img {
      width: 200px;
      padding: 10px 10px 0 0; }
      @media only screen and (max-width: 767px) {
        .event-detail .imageflx .img {
          margin: 0 auto;
          padding: 10px 0 0 0; } }
      .event-detail .imageflx .img img {
        display: block;
        width: 100%; }
  .event-detail .boxline {
    border: 1px solid #000000;
    line-height: 180%;
    display: inline-block; }

.group-text {
  width: 100%;
  text-align: center;
  line-height: 2.111em; }

.small-title {
  width: 100%;
  text-align: center;
  line-height: 2.111em;
  padding: 0;
  margin: 0 0 30px 0;
  font-weight: 500; }
  @media only screen and (max-width: 767px) {
    .small-title {
      margin: 0 0 15px 0; } }

.group-list {
  max-width: 1000px;
  width: 100%;
  padding: 0;
  margin: 0 auto 40px auto; }
  .group-list img {
    width: 100%;
    height: auto; }
  .group-list figcaption {
    display: none; }
    @media only screen and (max-width: 767px) {
      .group-list figcaption {
        display: block; } }
    .group-list figcaption a {
      margin-top: 15px;
      font-size: 16px;
      font-weight: 500;
      text-decoration: none;
      width: 100%;
      display: block;
      text-align: center; }

.map {
  width: 100%;
  padding: 0;
  margin: 0 0 100px 0;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .map {
      margin: 0 0 20px 0; } }
  .map.map {
    margin: 0 0 50px 0; }
    @media only screen and (max-width: 767px) {
      .map.map {
        margin: 0 0 20px 0; } }
  .map img {
    width: 100%;
    height: auto; }
  .map figcaption {
    padding: 15px 0 15px 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around; }
    .map figcaption .sec-title {
      position: absolute;
      top: 370px;
      left: 0px; }
      @media only screen and (max-width: 767px) {
        .map figcaption .sec-title {
          top: 19.5%;
          text-align: left; }
          .map figcaption .sec-title .underline {
            font-size: 5vw; } }
  .map p {
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    padding: 0;
    margin: 0; }
    .map p a {
      color: #333;
      text-decoration: none; }
      .map p a:after {
        display: inline-block;
        content: "";
        width: 14px;
        height: 12px;
        padding: 0;
        margin: 0 0 0 2px;
        background-image: url(../img/common/arrow.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto auto;
        position: relative;
        bottom: -1px; }
    .map p.map00 {
      display: none; }
      @media only screen and (max-width: 767px) {
        .map p.map00 {
          width: 100%;
          display: inline-block;
          text-align: center;
          margin-bottom: 20px; }
          .map p.map00 a:after {
            background-image: none; } }
    .map p.map01 {
      position: absolute;
      right: 10px;
      bottom: 460px; }
      @media only screen and (max-width: 767px) {
        .map p.map01 {
          position: static;
          right: auto;
          bottom: auto; } }
    .map p.map02 {
      position: absolute;
      right: 10px;
      bottom: 250px; }
      @media only screen and (max-width: 767px) {
        .map p.map02 {
          position: static;
          right: auto;
          bottom: auto; } }

.googlemaps {
  width: 100%;
  padding: 0;
  margin: 0 0 50px 0; }
  .googlemaps iframe {
    width: 100%;
    height: 370px; }

.indent-list {
  padding: 0;
  margin: 0 0 50px 0;
  list-style: none; }
  .indent-list li {
    text-indent: -16px;
    padding-left: 16px;
    line-height: 1.777em; }
    @media only screen and (max-width: 767px) {
      .indent-list li {
        text-indent: -14px;
        padding-left: 14px;
        font-size: 14px; } }

.image-list {
  width: 100%;
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .image-list {
      display: block; } }
  .image-list.mb30 {
    margin-bottom: 30px; }
  .image-list .ph {
    padding: 0;
    margin: 0;
    width: 32%;
    height: auto;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .image-list .ph {
        width: 100%;
        margin: 0 0 10px 0; } }
    .image-list .ph img {
      width: 100%;
      height: auto; }
    .image-list .ph .tx {
      position: absolute;
      bottom: 10px;
      left: 10px;
      color: #fff;
      text-shadow: 0 0 5px rgba(0, 0, 0, 0.9);
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .image-list .ph .tx {
          display: inline-block; } }

h2#sec02.sec-title.group {
  padding-top: 90px;
  margin-top: -90px; }

.margin {
  margin-top: -110px;
  padding-top: 110px;
  display: block; }

.sec-inner .sec-title {
  padding-top: 20px; }
  @media only screen and (max-width: 767px) {
    .sec-inner .sec-title {
      padding-top: 0px; } }

#sec06 .scroll {
  position: relative; }

.ps__rail-x, .ps__rail-y {
  opacity: 0.6 !important; }

.alert-danger {
  color: #ca1c24; }

.sec-title-02 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  line-height: 1.777em;
  font-weight: 500; }

.performance-list-01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: solid 1px #333;
  padding-bottom: 20px;
  margin-bottom: 40px; }
  .performance-list-01 .per-list-wrap {
    margin-bottom: 30px;
    width: 480px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      .performance-list-01 .per-list-wrap {
        width: 100%; } }
    @media only screen and (max-width: 767px) {
      .performance-list-01 .per-list-wrap:nth-child(5) {
        margin-top: 40px;
        margin-bottom: 0; } }
    .performance-list-01 .per-list-wrap figure {
      width: 150px;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .performance-list-01 .per-list-wrap figure {
          width: 200px;
          margin: 0 auto 5px auto; } }
    .performance-list-01 .per-list-wrap .detail {
      width: 320px;
      display: flex;
      flex-direction: column;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        .performance-list-01 .per-list-wrap .detail {
          width: 100%; } }
      .performance-list-01 .per-list-wrap .detail h3 {
        font-size: 16px;
        line-height: 1.4em;
        padding: 0;
        margin: 0;
        font-weight: 700; }
        .performance-list-01 .per-list-wrap .detail h3 .small {
          font-size: 13px; }
      .performance-list-01 .per-list-wrap .detail p {
        font-size: 13px;
        font-weight: 400; }
        @media only screen and (max-width: 767px) {
          .performance-list-01 .per-list-wrap .detail p {
            margin-top: 10px; } }
        .performance-list-01 .per-list-wrap .detail p strong {
          display: inline-block;
          padding-top: 5px; }
          @media only screen and (max-width: 767px) {
            .performance-list-01 .per-list-wrap .detail p strong {
              padding-top: 10px; } }
          .performance-list-01 .per-list-wrap .detail p strong .small {
            font-size: 13px; }
    .performance-list-01 .per-list-wrap p {
      font-size: 16px;
      line-height: 1.333em;
      padding: 0;
      margin: 0;
      letter-spacing: 1px;
      font-weight: 700; }
      .performance-list-01 .per-list-wrap p strong {
        font-size: 18px;
        font-weight: 500; }
        .performance-list-01 .per-list-wrap p strong .small {
          font-size: 13px; }
    .performance-list-01 .per-list-wrap.no-flex {
      display: block; }
      .performance-list-01 .per-list-wrap.no-flex p {
        margin-bottom: 15px;
        letter-spacing: 0;
        position: relative; }
        .performance-list-01 .per-list-wrap.no-flex p .ex {
          position: absolute;
          bottom: -25px;
          display: inline-block;
          right: 120px;
          width: 100px; }
          @media only screen and (max-width: 767px) {
            .performance-list-01 .per-list-wrap.no-flex p .ex {
              position: static;
              bottom: auto;
              right: auto;
              width: auto; } }

.performance-list-02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .performance-list-02 .per-list-wrap {
    padding: 0;
    margin: 0;
    margin-bottom: 30px;
    width: 480px;
    list-style: none; }
    @media only screen and (max-width: 767px) {
      .performance-list-02 .per-list-wrap {
        width: 100%; } }
    .performance-list-02 .per-list-wrap li {
      width: 100%;
      font-size: 16px;
      line-height: 1.333em;
      padding: 0;
      margin: 0 0 25px 0;
      letter-spacing: 0;
      font-weight: 700; }
      .performance-list-02 .per-list-wrap li strong {
        font-size: 16px;
        font-weight: 500; }
        .performance-list-02 .per-list-wrap li strong .small {
          font-size: 13px; }
      .performance-list-02 .per-list-wrap li.note {
        font-size: 14px;
        font-weight: 400; }
      .performance-list-02 .per-list-wrap li:last-child {
        margin: 0; }

h2.sec-title.ft21 {
  font-size: 1.17em; }
  h2.sec-title.ft21 a {
    vertical-align: baseline;
    position: relative; }
    h2.sec-title.ft21 a i {
      vertical-align: baseline; }

.ua-ie button:active {
  transform: scale(1);
  position: relative;
  top: -1px;
  left: -1px; }
  .ua-ie button:active:after {
    bottom: -9px;
    left: 1px; }

a.disable-btn,
button.disable-btn {
  opacity: 0.6;
  cursor: default !important; }
  a.disable-btn:hover:after,
  button.disable-btn:hover:after {
    transform: scale(0, 1) !important;
    display: none; }

.site-nav-top-links a.disable-btn:after,
.site-nav-top-links button.disable-btn:after,
.footer-nav-top-links a.disable-btn:after,
.footer-nav-top-links button.disable-btn:after {
  display: none; }

.site-nav-top .site-nav-top-links li a.disable-btn .hover-border:after, .site-nav-top .site-nav-top-links li button.disable-btn .hover-border:after {
  display: none; }

@media only screen and (max-width: 767px) {
  .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li a.trigger:after, .nav-wrap .nav-wrap-inner .site-nav-bottom .site-nav-bottom-links li button.trigger:after {
    display: none; } }
.sponsor-list,
.supporter-list {
  width: 810px;
  margin: 0 auto;
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  @media only screen and (max-width: 767px) {
    .sponsor-list,
    .supporter-list {
      width: 100%; } }
  .sponsor-list li,
  .supporter-list li {
    margin: 0 10px 50px 10px;
    width: 250px;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .sponsor-list li,
      .supporter-list li {
        width: 90%;
        margin: 0 5% 35px 5%; } }
    .sponsor-list li a,
    .supporter-list li a {
      display: block;
      text-decoration: none; }
    .sponsor-list li .ph,
    .supporter-list li .ph {
      width: 100%;
      padding: 0;
      margin: 0 0 10px 0; }
    .sponsor-list li .name,
    .supporter-list li .name {
      width: 100%;
      text-align: center;
      padding: 0 0 10px 0;
      margin: 0 0 10px 0;
      font-weight: 500;
      line-height: 1.333em;
      font-family: "NotoSansCJKjp-Medium",'Noto Sans Japanese';
      font-size: 20px;
      border-bottom: solid 1px #333; }
      .sponsor-list li .name .eng,
      .supporter-list li .name .eng {
        padding-top: 5px;
        font-size: 12px;
        display: block;
        font-weight: 400;
        line-height: 1.111em; }
    .sponsor-list li .corp,
    .supporter-list li .corp {
      text-align: center;
      width: 100%;
      font-size: 14px;
      margin: 0;
      padding: 0 0 0 0; }
    .sponsor-list li .mess,
    .supporter-list li .mess {
      margin: 30px 0 0 0;
      width: 100%;
      text-align: center;
      font-weight: 700; }
      .sponsor-list li .mess:after,
      .supporter-list li .mess:after {
        display: inline-block;
        content: "";
        background-image: url(../img/common/arrow.svg);
        background-position: center center;
        background-size: auto;
        width: 14px;
        height: 12px;
        transform: rotate(-90deg);
        margin-left: 0.333em; }

.supporter-list {
  width: 1000px;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .supporter-list {
      width: 90%;
      margin: 0 auto; } }
  .supporter-list:before {
    content: "";
    width: 192px;
    order: 1; }
  .supporter-list:after {
    content: "";
    width: 192px; }
  .supporter-list li {
    width: 192px;
    margin: 0 0 35px 0; }
    @media only screen and (max-width: 767px) {
      .supporter-list li {
        width: 80%;
        margin: 0 auto 35px auto; } }
    .supporter-list li .mess {
      margin: 20px 0 0 0; }

.support-detail-01 {
  width: 1000px;
  margin: 0 auto 50px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  @media only screen and (max-width: 767px) {
    .support-detail-01 {
      width: 100%; } }
  .support-detail-01 .ph {
    width: 350px;
    padding: 0;
    margin: 0 0 0 30px; }
    @media only screen and (max-width: 767px) {
      .support-detail-01 .ph {
        width: 100%;
        margin-bottom: 15px; } }
  .support-detail-01 .detail {
    width: 620px; }
    @media only screen and (max-width: 767px) {
      .support-detail-01 .detail {
        width: 100%;
        margin-bottom: 15px;
        margin-top: 0px; } }
    .support-detail-01 .detail.wrap270 {
      margin: 0;
      width: 270px;
      padding-left: 50px;
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .support-detail-01 .detail.wrap270 {
          width: 100%;
          margin-bottom: 15px;
          padding-left: 0px; } }
    .support-detail-01 .detail .name {
      width: 100%;
      padding: 0;
      margin: 0;
      font-weight: 500;
      font-size: 20px; }
      .support-detail-01 .detail .name .eng {
        padding-top: 5px;
        font-size: 12px;
        display: block;
        font-weight: 400; }
    .support-detail-01 .detail .corp {
      width: 100%;
      font-size: 14px;
      margin: 0;
      padding: 15px 0 0 0; }
    .support-detail-01 .detail .mess {
      margin: 15px 0 0 0;
      width: 100%;
      padding: 0;
      line-height: 1.777em; }
      .support-detail-01 .detail .mess img {
        max-width: 100%;
        width: auto;
        height: auto; }
    .support-detail-01 .detail .tt {
      font-size: 16px;
      font-weight: 500;
      line-height: 1.777em;
      padding: 0;
      margin: 0; }
    .support-detail-01 .detail .tx {
      width: 100%;
      padding: 0;
      margin: 0 0 15px 0;
      line-height: 1.777em;
      text-align: justify; }
      @media only screen and (max-width: 767px) {
        .support-detail-01 .detail .tx {
          display: block; } }
    .support-detail-01 .detail .table {
      width: 100%;
      padding: 0;
      margin: 0; }
      .support-detail-01 .detail .table th {
        width: 50px;
        vertical-align: top;
        font-weight: 400;
        line-height: 1.333em; }
      .support-detail-01 .detail .table td {
        vertical-align: top;
        line-height: 1.333em; }
    .support-detail-01 .detail .link a {
      font-weight: 700;
      text-decoration: none; }
      .support-detail-01 .detail .link a:after {
        display: inline-block;
        content: "";
        background-image: url(../img/common/arrow.svg);
        background-position: center center;
        background-size: auto;
        width: 14px;
        height: 12px;
        transform: rotate(-90deg);
        margin-left: 0.333em; }

.link-list2 {
  width: 1000px;
  margin: 0 auto 50px auto;
  list-style: none;
  padding: 0; }
  @media only screen and (max-width: 767px) {
    .link-list2 {
      width: 100%; } }
  .link-list2 li {
    width: 50%;
    margin: 0 auto 30px auto;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .link-list2 li {
        width: 100%; } }
    .link-list2 li a {
      width: auto;
      height: 80px;
      text-decoration: none;
      text-align: center; }
      .link-list2 li a.external:after {
        font-family: "Font Awesome 5 Free";
        font-weight: 700;
        content: "\f35d";
        margin-left: 0.333em; }

.sns-list-wrap2 .sns-list {
  width: 100%;
  display: flex;
  justify-content: center;
  padding-bottom: 30px; }
  .sns-list-wrap2 .sns-list a {
    margin: 0 0.333em;
    font-size: 42px;
    color: #333;
    text-decoration: none; }

.supporter-detail-wrap {
  width: 980px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .supporter-detail-wrap {
      width: 100%; } }
  .supporter-detail-wrap:after {
    content: "";
    width: 460px; }
    @media only screen and (max-width: 767px) {
      .supporter-detail-wrap:after {
        width: 100%; } }
  .supporter-detail-wrap .supporter-detail {
    width: 460px;
    margin-top: -110px;
    padding-top: 110px;
    padding-bottom: 60px;
    margin-bottom: 60px;
    border-bottom: solid 1px #333; }
    @media only screen and (max-width: 767px) {
      .supporter-detail-wrap .supporter-detail {
        width: 100%;
        padding-bottom: 30px;
        margin-bottom: 30px;
        margin-top: -70px;
        padding-top: 70px; } }
    .supporter-detail-wrap .supporter-detail .top {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 25px; }
      .supporter-detail-wrap .supporter-detail .top .ph {
        width: 50%;
        padding: 0;
        margin: 0; }
        @media only screen and (max-width: 767px) {
          .supporter-detail-wrap .supporter-detail .top .ph {
            width: 100%; } }
      .supporter-detail-wrap .supporter-detail .top .detail {
        background-color: #e5e5e5;
        width: 50%;
        padding-left: 25px;
        padding-right: 25px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        align-content: center; }
        @media only screen and (max-width: 767px) {
          .supporter-detail-wrap .supporter-detail .top .detail {
            width: 100%;
            padding: 15px; } }
        .supporter-detail-wrap .supporter-detail .top .detail .name {
          width: 100%;
          font-size: 16px;
          margin: 0 0 15px 0;
          padding: 0;
          line-height: 1.333em;
          display: block; }
          .supporter-detail-wrap .supporter-detail .top .detail .name .eng {
            display: block;
            font-size: 12px;
            line-height: 1.555em; }
          @media only screen and (max-width: 767px) {
            .supporter-detail-wrap .supporter-detail .top .detail .name {
              margin: 0;
              text-align: center; } }
        .supporter-detail-wrap .supporter-detail .top .detail .title {
          width: 100%;
          display: block;
          font-weight: 500;
          font-size: 14px;
          padding: 0;
          margin: 0; }
          @media only screen and (max-width: 767px) {
            .supporter-detail-wrap .supporter-detail .top .detail .title {
              margin: 10px 0 0 0;
              text-align: center; } }
    .supporter-detail-wrap .supporter-detail .middle {
      width: 100%;
      margin-bottom: 50px;
      padding-bottom: 20px;
      position: relative; }
      .supporter-detail-wrap .supporter-detail .middle .title {
        width: 100%;
        padding: 0;
        margin: 15px 0;
        display: block;
        position: relative;
        text-align: center; }
        .supporter-detail-wrap .supporter-detail .middle .title:before {
          content: "";
          width: 100%;
          height: 1px;
          background-color: #333;
          position: absolute;
          top: 0;
          bottom: 0;
          right: 0;
          left: 0;
          margin: auto; }
          @media only screen and (max-width: 767px) {
            .supporter-detail-wrap .supporter-detail .middle .title:before {
              display: none; } }
        .supporter-detail-wrap .supporter-detail .middle .title .txt {
          display: inline-block;
          background-color: #fff;
          position: relative;
          z-index: 10;
          padding: 0 5px;
          font-size: 22px; }
      .supporter-detail-wrap .supporter-detail .middle .btn {
        width: 100%;
        text-align: center;
        position: absolute;
        bottom: -20px;
        left: 0;
        font-weight: 700;
        font-size: 16px;
        cursor: pointer; }
        .supporter-detail-wrap .supporter-detail .middle .btn span:first-child {
          display: block; }
        .supporter-detail-wrap .supporter-detail .middle .btn span:last-child {
          display: none; }
        .supporter-detail-wrap .supporter-detail .middle .btn.active span:first-child {
          display: none; }
        .supporter-detail-wrap .supporter-detail .middle .btn.active span:last-child {
          display: block; }
      .supporter-detail-wrap .supporter-detail .middle .text {
        width: 100%;
        max-height: 7em;
        display: block;
        overflow: hidden;
        padding: 0;
        margin: 0;
        line-height: 1.777em;
        text-align: justify;
        transition: all .2s;
        position: relative; }
        .supporter-detail-wrap .supporter-detail .middle .text.active {
          max-height: 100%; }
          .supporter-detail-wrap .supporter-detail .middle .text.active:before {
            display: none; }
        .supporter-detail-wrap .supporter-detail .middle .text:before {
          content: "";
          width: 100%;
          height: 100%;
          background: -webkit-linear-gradient(rgba(255, 255, 255, 0), #FFF);
          background: -o-linear-gradient(rgba(255, 255, 255, 0), #FFF);
          background: linear-gradient(rgba(255, 255, 255, 0), #FFF);
          position: absolute;
          top: 0;
          left: 0;
          z-index: 5; }
        .supporter-detail-wrap .supporter-detail .middle .text img {
          max-width: 100%;
          width: auto;
          height: auto; }
    .supporter-detail-wrap .supporter-detail .bottom .title {
      width: 100%;
      padding: 0;
      margin: 0 0 35px 0;
      display: block;
      position: relative;
      text-align: center; }
      .supporter-detail-wrap .supporter-detail .bottom .title:before {
        content: "";
        width: 100%;
        height: 1px;
        background-color: #333;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto; }
        @media only screen and (max-width: 767px) {
          .supporter-detail-wrap .supporter-detail .bottom .title:before {
            display: none; } }
      .supporter-detail-wrap .supporter-detail .bottom .title .txt {
        display: inline-block;
        background-color: #fff;
        position: relative;
        z-index: 10;
        padding: 0 5px;
        font-size: 22px; }
    .supporter-detail-wrap .supporter-detail .bottom .tt {
      padding: 0;
      margin: 0;
      font-size: 18px;
      font-weight: 500;
      line-height: 1.777em; }
      @media only screen and (max-width: 767px) {
        .supporter-detail-wrap .supporter-detail .bottom .tt {
          margin-bottom: 10px; } }
    .supporter-detail-wrap .supporter-detail .bottom .tx {
      width: 100%;
      padding: 0;
      margin: 0 0 15px 0;
      line-height: 1.777em;
      text-align: justify; }
      @media only screen and (max-width: 767px) {
        .supporter-detail-wrap .supporter-detail .bottom .tx {
          display: block; } }
    .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table {
      width: 100%;
      padding: 0;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table {
          width: 100%; } }
      .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table th {
        width: 60px; }
      .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table p {
        font-size: 14px;
        text-align: left;
        line-height: 1.777em; }
        @media only screen and (max-width: 767px) {
          .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table p {
            font-size: 16px;
            line-height: 1.777em; } }
        .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table p.link a {
          font-size: 16px;
          text-decoration: none;
          font-weight: 500; }
          .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .table p.link a.external:after {
            font-family: "Font Awesome 5 Free";
            font-weight: 700;
            content: "\f35d";
            margin-left: 0.333em; }
    .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .ph {
      width: 100%;
      padding: 0;
      margin: 30px 0 0 0; }
      @media only screen and (max-width: 767px) {
        .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .ph {
          width: 100%; } }
      .supporter-detail-wrap .supporter-detail .bottom .bottom-wrap .ph img {
        width: auto;
        max-width: 100%;
        height: auto; }

.accordion-mod {
  margin-bottom: 30px;
  padding-top: 115px;
  margin-top: -115px; }
  @media only screen and (max-width: 767px) {
    .accordion-mod {
      padding-top: 80px;
      margin-top: -80px; } }
  .accordion-mod .switch-button {
    cursor: pointer;
    width: 100%;
    text-align: center; }
    .accordion-mod .switch-button h3 {
      font-size: 16px;
      padding: 0;
      margin: 15px 0 0 0; }
      .accordion-mod .switch-button h3.arrow-up:after {
        display: inline-block;
        content: "";
        width: 14px;
        height: 12px;
        padding: 0;
        margin: 0 0 0 2px;
        background-image: url(../img/common/arrow.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto auto;
        position: relative;
        bottom: -1px; }
    .accordion-mod .switch-button.active {
      font-size: 16px;
      visibility: hidden;
      height: 0; }
      .accordion-mod .switch-button.active h3.arrow-up:after {
        transform: rotate(-180deg); }
  .accordion-mod .content-wrap {
    display: none;
    text-align: center; }
    .accordion-mod .content-wrap .close {
      background-color: rgba(0, 0, 0, 0);
      border: none;
      font-weight: 700;
      margin: 15px auto 0 auto; }

.group-list-wrap {
  width: 100%; }
  .group-list-wrap .tt {
    width: 100%;
    padding: 0;
    margin: 0 0 15px 0;
    display: block;
    position: relative;
    text-align: center; }
    .group-list-wrap .tt:before {
      content: "";
      width: 100%;
      height: 1px;
      background-color: #333;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto; }
    .group-list-wrap .tt .txt {
      display: inline-block;
      background-color: #fff;
      position: relative;
      z-index: 10;
      padding: 0 10px; }
  .group-list-wrap .text {
    width: 900px;
    padding: 0;
    margin: 25px auto;
    line-height: 1.777em;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .group-list-wrap .text {
        width: 100%; } }
  .group-list-wrap .group-list {
    width: 900px;
    margin: 0 auto 25px auto;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      .group-list-wrap .group-list {
        width: 100%; } }
    .group-list-wrap .group-list li {
      padding: 0; }
      .group-list-wrap .group-list li a {
        display: block;
        margin: 25px 0; }
    .group-list-wrap .group-list.column3 li {
      width: 235px; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column3 li {
          width: 100%; } }
    .group-list-wrap .group-list.column3:after {
      content: "";
      display: block;
      width: 235px; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column3:after {
          width: 100%; } }
    .group-list-wrap .group-list.column4 li {
      width: 184px; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column4 li {
          width: 80%;
          margin-left: auto;
          margin-right: auto; } }
    .group-list-wrap .group-list.column4:before {
      content: "";
      display: block;
      width: 184px;
      order: 1; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column4:before {
          width: 80%;
          margin-left: auto;
          margin-right: auto; } }
    .group-list-wrap .group-list.column4:after {
      content: "";
      display: block;
      width: 184px; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column4:after {
          width: 80%;
          margin-left: auto;
          margin-right: auto; } }
    .group-list-wrap .group-list.column5 li {
      width: 133px; }
      @media only screen and (max-width: 767px) {
        .group-list-wrap .group-list.column5 li {
          width: 45%; } }

.ticket-indent {
  width: 90%;
  font-size: 14px;
  list-style: none;
  padding: 0;
  margin: 1.555em auto; }
  @media only screen and (max-width: 767px) {
    .ticket-indent {
      font-size: 12px; } }
  .ticket-indent li {
    line-height: 1.777em;
    padding-left: 1em;
    text-indent: -1em; }

.schedule-table-wrap {
  width: 100%; }
  .schedule-table-wrap .scroll {
    overflow-x: hidden;
    overflow-x: hidden;
    width: 100%;
    height: auto;
    margin: 0 auto 0 auto;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .schedule-table-wrap .scroll {
        display: block;
        overflow-x: scroll;
        padding-bottom: 20px; } }
  .schedule-table-wrap .schedule-table {
    border-top: solid 1px #333;
    border-left: solid 1px #333; }
    @media only screen and (max-width: 767px) {
      .schedule-table-wrap .schedule-table {
        width: 750px;
        font-size: 12px; } }
    .schedule-table-wrap .schedule-table tr td {
      border-bottom: solid 1px #333;
      border-right: solid 1px #333;
      text-align: center;
      padding: 0.777em 0.333em; }
      .schedule-table-wrap .schedule-table tr td.hd {
        background-color: #ddd; }
      .schedule-table-wrap .schedule-table tr td.sunday {
        background-color: rgba(204, 0, 0, 0.7);
        color: #fff; }
      .schedule-table-wrap .schedule-table tr td.holiday {
        background-color: rgba(204, 0, 0, 0.7);
        color: #fff; }
      .schedule-table-wrap .schedule-table tr td.tt {
        border-bottom: dotted 1px #999;
        font-style: italic;
        font-weight: 500; }
      .schedule-table-wrap .schedule-table tr td.w4 {
        width: 4%; }
      .schedule-table-wrap .schedule-table tr td.w5 {
        width: 5%; }
      .schedule-table-wrap .schedule-table tr td.w11 {
        width: 11%; }
      .schedule-table-wrap .schedule-table tr td.w12-5 {
        width: 12.5%; }

.program-detail-note {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0 0 50px 0; }
  .program-detail-note li {
    font-size: 12px;
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.555em; }

.column2 {
  width: 1000px;
  margin: 50px auto 0 auto;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .column2 {
      width: 100%; } }
  .column2 li {
    width: 48%; }
    @media only screen and (max-width: 767px) {
      .column2 li {
        width: 100%; }
        .column2 li:last-child {
          margin-top: 7.5%; } }
    .column2 li .video {
      position: relative;
      width: 100%;
      padding-top: 56.25%; }
      .column2 li .video iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%; }

.swiper-slide p {
  font-size: 12px;
  text-align: right;
  line-height: 1.333em;
  padding: 0;
  margin: 0.333em; }

.bus {
  width: 1em;
  height: auto;
  margin-right: 0.333em; }
