  @charset "UTF-8";
* {
  position: relative;
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: auto;
}

html {
  width: 100%;
  height: 100%;
  font-size: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

html.-fix {
  overflow: hidden;
}

@media screen and (max-width: 719px) {
  html {
    font-size: 4vmin;
    /* 画面最小幅375px時に15px */
  }
}

@media (min-width: 720px) and (max-width: 1199px) {
  html {
    font-size: 1.333vw;
    /* 画面幅720px時:14px ? 1200px時:16px 
    14px + ( 100vw - 720px ) / ( 1200px - 720px ) / ( 16px - 14px ) */
    font-size: calc(14px + (100vw - 720px) / 240);
  }
}

@media print {
  html {
    font-size: 9pt;
  }
}

body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0;
  width: 100%;
  min-height: 100%;
  background-color: #EEEEEE;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Osaka, "Droid Sans Japanese";
  font-weight: 400;
  overflow-x: hidden;
}

a,
a::before,
a::after {
  -webkit-transition: all .2s;
  transition: all .2s;
}

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

p.lead {
  margin: 1em auto;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 2;
}

@media (min-width: 720px) {
  p.lead {
    font-size: 1.375em;
  }
}

p.text {
  text-align: justify;
  line-height: 1.75;
}

hr.separator {
  margin: 1.5rem auto;
  width: 100%;
  height: 0;
  border-top: solid 1px #000000;
}

figure.image {
  margin: 1.5rem auto;
  text-align: center;
}

@media (min-width: 720px) {
  figure.image {
    margin: 3rem auto;
  }
}

.columns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}

.columns:not(:first-child) {
  margin-top: 1.5rem;
}

.columns:not(:last-child) {
  margin-bottom: 1.5rem;
}

.columns > .column {
  margin: auto;
}

.columns > .column > * {
  margin: auto;
}

@media screen and (max-width: 719px) {
  .columns {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .columns > .column {
    width: 100%;
  }
  .columns > .column:not(:last-child) {
    margin-bottom: 1rem;
  }
}

@media (min-width: 720px) {
  .columns > .column:not(:last-child) {
    margin-right: 2%;
  }
}

.-sp,
.-tb,
.-pc {
  display: none;
}

@media screen and (max-width: 719px) {
  .-sp {
    display: inherit;
  }
}

@media (min-width: 720px) {
  .-tb {
    display: inherit;
  }
}

@media (min-width: 1200px) {
  .-pc {
    display: inherit;
  }
}

.inner {
  margin-right: auto;
  margin-left: auto;
  width: 80%;
  max-width: 1000px;
}

.switch {
  display: none;
}

.tdu_logo {
  display: inline-block;
  color: #2D56A0;
  fill: #2D56A0;
  line-height: 1;
}

.tdu_logo > img {
  width: 7.75em;
  height: 1em;
}

.site_head {
  background-color: #FFFFFF;
}

.site_head > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 4rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 90%;
  max-width: none;
  z-index: 2000;
}

.site_head > .inner .tdu_logo {
  font-size: 1.25em;
}

#gnav_switch + #gnav_btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 4rem;
  height: 4rem;
  background-color: #000000;
  color: #FFFFFF;
  fill: #FFFFFF;
  text-align: center;
  z-index: 4000;
}

#gnav_switch + #gnav_btn .btn_txt {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  color: transparent;
  font-size: 0.625em;
}

#gnav_switch + #gnav_btn::before, #gnav_switch + #gnav_btn::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 1.5rem;
  border-style: solid;
  border-width: 1px 0;
}

#gnav_switch + #gnav_btn::before {
  height: 1.5rem;
  -webkit-transition: height .1s .1s, -webkit-transform .1s 0s;
  transition: height .1s .1s, -webkit-transform .1s 0s;
  transition: height .1s .1s, transform .1s 0s;
  transition: height .1s .1s, transform .1s 0s, -webkit-transform .1s 0s;
}

#gnav_switch + #gnav_btn::after {
  height: 0;
  -webkit-transform: skewY(-45deg);
          transform: skewY(-45deg);
}

#gnav_switch ~ #gnav {
  position: absolute;
  top: 0;
  right: 0;
}

#gnav_switch:checked + #gnav_btn::before {
  height: 0;
  -webkit-transform: skewY(45deg);
          transform: skewY(45deg);
  -webkit-transition: height .1s 0s, -webkit-transform .1s .1s;
  transition: height .1s 0s, -webkit-transform .1s .1s;
  transition: height .1s 0s, transform .1s .1s;
  transition: height .1s 0s, transform .1s .1s, -webkit-transform .1s .1s;
}

.site_foot {
  margin-top: auto;
  background-color: #FFF200;
  background-image: -webkit-linear-gradient(308deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.35) 25%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 0.35) 75%);
  background-image: linear-gradient(142deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.35) 25%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 0.35) 75%);
  background-repeat: repeat;
  background-position: center center;
  background-size: 3.2em 2.5em;
  text-align: center;
}

.site_foot::before {
  content: '';
  display: block;
  height: 2em;
  background-color: #000000;
  background-image: url(/special2023/activities/assets/images/footer_top-bg.svg);
  background-repeat: repeat-x;
  background-size: auto 1em;
  background-position: center center;
  color: #FFFFFF;
}

.site_foot > .inner {
  padding: 2rem 0;
}

.site_foot .copyright {
  padding: 0.5em 10vw;
  text-align: center;
  background-color: #2D3BF8;
  color: #FFFFFF;
  font-size: 0.875em;
}

.document_btn {
  display: inline-block;
  padding: .75em 2em;
  border-radius: 2em;
  border: solid 1px;
  background-color: #FFFFFF;
  color: #000000;
  font-weight: bold;
  text-decoration: none;
  line-height: 1;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  -webkit-box-shadow: 3px 3px 0 0 #000000;
          box-shadow: 3px 3px 0 0 #000000;
}

.document_btn:hover {
  -webkit-box-shadow: 4px 4px 0 0 #000000;
          box-shadow: 4px 4px 0 0 #000000;
  -webkit-transform: translate(-1px, -1px);
          transform: translate(-1px, -1px);
}

.document_btn:active {
  -webkit-box-shadow: 0 0 0 0 #000000;
          box-shadow: 0 0 0 0 #000000;
  -webkit-transform: translate(3px, 3px);
          transform: translate(3px, 3px);
}

.sns_list {
  margin-top: 1.5rem;
  line-height: 1;
  text-indent: 0;
  font-size: 2em;
}

.sns_list .sns_btn {
  display: inline-block;
  padding: .75em 2em;
  border-radius: 2em;
  border: solid 1px;
  background-color: #FFFFFF;
  color: #000000;
  font-weight: bold;
  text-decoration: none;
  line-height: 1;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  -webkit-box-shadow: 3px 3px 0 0 #000000;
          box-shadow: 3px 3px 0 0 #000000;
  padding: 0.25em;
  vertical-align: bottom;
}

.sns_list .sns_btn:hover {
  -webkit-box-shadow: 4px 4px 0 0 #000000;
          box-shadow: 4px 4px 0 0 #000000;
  -webkit-transform: translate(-1px, -1px);
          transform: translate(-1px, -1px);
}

.sns_list .sns_btn:active {
  -webkit-box-shadow: 0 0 0 0 #000000;
          box-shadow: 0 0 0 0 #000000;
  -webkit-transform: translate(3px, 3px);
          transform: translate(3px, 3px);
}

.sns_list .sns_btn.sns_twitter {
  fill: #1d9bf0;
}

.sns_list .sns_btn.sns_facebook {
  fill: #1877F2;
}

.sns_list .sns_btn.sns_youtube {
  fill: red;
}

.link_top {
  display: inline-block;
  border-bottom: solid medium;
  color: inherit;
  text-decoration: none;
  font-size: 1.875em;
  font-weight: bold;
  line-height: 1;
}

.link_top .txt {
  -webkit-transition: all .2s;
  transition: all .2s;
}

.link_top:hover .txt {
  -webkit-transform: translate(0, -0.1em);
          transform: translate(0, -0.1em);
}

.group_index .group_list {
  list-style: none;
  padding: 0;
}

.group_index .group_list > li {
  border-bottom: solid 1px rgba(0, 0, 0, 0.5);
}

.group_index .group_list a {
  display: block;
  padding: 0.5em 2em 0.5em 0;
  background-image: url(/special2023/activities/assets/images/icn-link_popup.svg);
  background-repeat: no-repeat;
  background-position: 99% center;
  background-size: 1em 1em;
  color: inherit;
  font-size: 1.125em;
  text-decoration: none;
}

@media (min-width: 720px) {
  .group_index .group_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .group_index .group_list > li {
    width: 30%;
  }
  .group_index .group_list > li:not(:nth-child(3n + 0)) {
    margin-right: 5%;
  }
}

.mfp-container .mfp-content {
  width: 87.17%;
  max-width: 42rem;
}

.mfp-container .mfp-content .mfp-iframe-scaler {
  padding-top: 90vh;
}

.mfp-container .mfp-content .mfp-iframe-scaler .mfp-close {
  right: 0;
  padding: 0;
  color: #FFF200;
  width: 1em;
  height: 1em;
  text-align: center;
  line-height: 1;
  font-size: 2.4rem;
}

.mfp-container .mfp-content .mfp-iframe-scaler .mfp-iframe {
  margin-top: 2.5rem;
  background-color: #FFFFFF;
}
/*# sourceMappingURL=base.css.map */