@charset "UTF-8";
@import url(../css/reset.css);
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  font-size: calc(100vw / 39); }

body {
  position: relative;
  background-color: #fff;
  font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  list-style: none;
  color: #383838;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
  overflow-wrap: break-word;
  z-index: 1; }
  body::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 2;
    background-image: url("../img/bgimg_sp.jpg");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover; }
    @media only screen and (-webkit-min-device-pixel-ratio: 2) {
      body::before {
        background-image: url("../img/bgimg_sp@2x.jpg"); } }
  body::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 3;
    background-image: linear-gradient(#166593 0%, rgba(153, 209, 244, 0.45) 100%);
    mix-blend-mode: color-burn; }

a {
  text-decoration: none;
  outline: 0 solid transparent;
  color: #383838; }

.inner {
  position: relative;
  width: min(calc(100% - 3em), 110rem);
  margin: 0 auto; }

.drawer--top button.drawer-hamburger {
  top: 1.6rem;
  right: 1.6rem;
  z-index: 7;
  width: 6.4rem;
  height: 6.4rem;
  padding: 0;
  background-color: #fff;
  border: 0.1rem solid #0E73CB;
  border-radius: 50%; }
  .drawer--top button.drawer-hamburger .drawer-hamburger-icon {
    width: 3.052rem;
    height: .1rem;
    margin: -1.226rem auto 0;
    background-color: transparent; }
    .drawer--top button.drawer-hamburger .drawer-hamburger-icon::before, .drawer--top button.drawer-hamburger .drawer-hamburger-icon::after {
      height: .1rem;
      background-color: #0E73CB; }
    .drawer--top button.drawer-hamburger .drawer-hamburger-icon::before {
      top: 0; }
    .drawer--top button.drawer-hamburger .drawer-hamburger-icon::after {
      top: .928rem; }
  .drawer--top button.drawer-hamburger .sr-only {
    display: block;
    position: relative;
    transform: scale(0.9);
    top: 1.4rem;
    clip: auto;
    width: auto;
    height: auto;
    font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #0E73CB; }
.drawer--top nav.drawer-nav {
  top: 0;
  left: auto;
  right: 0;
  z-index: -1;
  opacity: 0;
  width: 100%;
  max-width: 46rem;
  height: 100%; }
  .drawer--top nav.drawer-nav .drawer-menu {
    position: relative;
    top: 50%;
    left: 4em;
    transform: translateY(-50%) !important;
    width: calc(100% - 8em); }
  .drawer--top nav.drawer-nav .drawer-menu-item {
    padding: 0; }
    .drawer--top nav.drawer-nav .drawer-menu-item:hover {
      text-decoration: none; }
    .drawer--top nav.drawer-nav .drawer-menu-item a {
      display: block;
      font-size: 1.6rem;
      font-weight: 700;
      letter-spacing: .04em;
      color: #383838; }
    .drawer--top nav.drawer-nav .drawer-menu-item + .drawer-menu-item {
      margin-top: 5.6rem; }
    .drawer--top nav.drawer-nav .drawer-menu-item.sns .ig, .drawer--top nav.drawer-nav .drawer-menu-item.sns .fb {
      font-size: 1.9rem; }
      .drawer--top nav.drawer-nav .drawer-menu-item.sns .ig::before, .drawer--top nav.drawer-nav .drawer-menu-item.sns .fb::before {
        content: "";
        display: inline-block;
        position: relative;
        top: .5rem;
        width: 2.5rem;
        height: 2.5rem;
        margin-right: 1rem;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain; }
    .drawer--top nav.drawer-nav .drawer-menu-item.sns .ig::before {
      background-image: url("../img/icon_ig_bk.svg"); }
    .drawer--top nav.drawer-nav .drawer-menu-item.sns .fb {
      margin-top: 5.6rem; }
      .drawer--top nav.drawer-nav .drawer-menu-item.sns .fb::before {
        background-image: url("../img/icon_fb_bk.svg"); }

.drawer--top.drawer-open button.drawer-hamburger {
  right: 1.6rem; }
  .drawer--top.drawer-open button.drawer-hamburger .drawer-hamburger-icon::before {
    transform: rotate(25deg);
    top: .8rem; }
  .drawer--top.drawer-open button.drawer-hamburger .drawer-hamburger-icon::after {
    transform: rotate(-25deg); }
.drawer--top.drawer-open nav.drawer-nav {
  z-index: 6;
  opacity: 1;
  transition: top 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.drawer--top.drawer-open .drawer-overlay {
  z-index: 5;
  background-color: rgba(250, 250, 240, 0.6); }

header {
  position: relative;
  z-index: 4;
  padding-top: 2.5em; }
  header .hd-logo {
    display: block;
    width: min(30%, 14rem);
    height: min(25.641vw, 12rem);
    margin: 0 auto 2em; }

main {
  position: relative;
  z-index: 4; }
  main .anker-links {
    width: 100%;
    height: 4rem;
    padding: 1rem 0 0 0;
    overflow: hidden;
    position: relative;
    touch-action: pan-y; }
    main .anker-links ul {
      display: flex;
      align-items: center;
      flex-wrap: nowrap;
      position: absolute;
      top: .5rem;
      left: 0;
      width: 100%;
      height: 100%;
      padding-right: 2em;
      overflow-y: hidden;
      overflow-x: auto;
      white-space: nowrap; }
      main .anker-links ul li {
        margin-left: 2rem;
        padding-bottom: .5em; }
        main .anker-links ul li:first-child {
          margin-left: 2em; }
        main .anker-links ul li.is-current {
          border-bottom: 0.1rem solid #fff; }
          main .anker-links ul li.is-current span {
            font-weight: 700; }
        main .anker-links ul li span {
          font-size: .875em;
          letter-spacing: .08em;
          color: #fff; }
        main .anker-links ul li a {
          color: #fff; }
        main .anker-links ul li:hover {
          border-bottom: 0.1rem solid #fff; }
  main .page-title {
    text-align: center;
    margin: 1em auto 1.25em;
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
    font-size: 2em;
    font-weight: 700;
    letter-spacing: .08em;
    color: #fff; }
  main .article dl dt, main .archive dl dt, main .information dl dt {
    margin-bottom: .5em;
    font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2em;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #0E73CB; }
  main .article dl dd, main .archive dl dd, main .information dl dd {
    font-size: .875em;
    font-weight: 500; }
  main .article .lead, main .archive .lead, main .information .lead {
    width: 100%;
    height: 4em;
    padding: 0 1.6em;
    background-color: #0E73CB;
    font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
    font-size: .625em;
    font-weight: 700;
    line-height: 4em;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #fff; }
    main .article .lead::before, main .archive .lead::before, main .information .lead::before {
      content: "";
      display: inline-block;
      position: relative;
      top: .3em;
      width: 1.475rem;
      height: 1.369rem;
      margin-right: .5em;
      background-image: url("../img/icon_plain.svg");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: contain; }
  main .article .time, main .archive .time, main .information .time {
    display: none; }
  main .article .date span, main .archive .date span, main .information .date span {
    font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #0E73CB; }
  main .article .title, main .archive .title, main .information .title {
    border-bottom: 0.1rem solid #d4d4d4; }
    main .article .title p, main .archive .title p, main .information .title p {
      font-weight: 700; }
  main .article .name, main .archive .name, main .information .name {
    padding: .625em 1em .625em 1.25em; }
  main .article .organization, main .archive .organization, main .information .organization {
    padding: .625em 1.25em .625em 1em;
    border-left: 0.1rem solid #d4d4d4; }
  main .article .tags dl, main .archive .tags dl, main .information .tags dl {
    display: flex;
    align-items: center;
    height: 3.4rem;
    padding: 0 1.25em;
    background-color: #e5f2fd; }
    main .article .tags dl dt, main .archive .tags dl dt, main .information .tags dl dt {
      position: relative;
      top: .1em;
      margin-right: 1em;
      margin-bottom: 0; }
    main .article .tags dl dd, main .archive .tags dl dd, main .information .tags dl dd {
      font-size: .75em; }
      main .article .tags dl dd a.tag + a, main .archive .tags dl dd a.tag + a, main .information .tags dl dd a.tag + a {
        margin-left: .5em; }
  main .article .qr, main .archive .qr, main .information .qr {
    display: none; }
  main .article {
    margin-bottom: 1.5em;
    background-color: #fff;
    filter: drop-shadow(0 0.6rem 1.6rem rgba(48, 124, 180, 0.3)); }
    main .article .article-header .wrap {
      display: grid;
      grid-template-columns: 38% 62%;
      align-items: center; }
      main .article .article-header .wrap .article-date {
        grid-area: 1/1/2/3;
        height: 4rem;
        padding: 0 1.5em; }
        main .article .article-header .wrap .article-date span {
          font-size: .875em;
          line-height: 4rem; }
      main .article .article-header .wrap .article-title {
        grid-area: 2/1/3/3;
        padding: 0 1.5em 1.125em; }
        main .article .article-header .wrap .article-title p {
          font-size: 1.75em;
          line-height: 1.3571em; }
      main .article .article-header .wrap .article-name {
        grid-area: 3/1/4/2; }
      main .article .article-header .wrap .article-organization {
        grid-area: 3/2/4/3; }
      main .article .article-header .wrap .article-tags {
        grid-area: 4/1/5/3; }
  main article {
    padding-top: 1.5em;
    padding-bottom: 3.5em; }
    main article img {
      margin-bottom: 1.5em; }
    main article p {
      font-size: .9375em;
      line-height: 1.6666em; }
      main article p.caution {
        font-size: .8em;
        margin-top: 0; }
      main article p + p {
        margin-top: 1em; }
    main article h2, main article h3 {
      font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
      margin: 4rem 0 1.5rem;
      padding-bottom: .8rem;
      border-bottom: 0.1rem solid #0E73CB;
      font-weight: 700;
      line-height: 1.4em;
      color: #0E73CB; }
    main article h2 {
      font-size: 1.25em; }
  main .share {
    padding: 2em 0;
    background-color: #fafafa; }
    main .share h4 {
      margin-bottom: 1em;
      font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
      font-weight: 700;
      letter-spacing: .08em;
      text-align: center;
      text-transform: uppercase; }
    main .share .share-links {
      display: flex;
      justify-content: center;
      align-items: center; }
      main .share .share-links li + li {
        width: 4rem;
        height: 4rem;
        margin-left: 1.5em; }
  main .post-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    width: calc(100% - 3em);
    margin: 0 auto;
    padding: 4rem 0; }
    main .post-links .post-link:nth-child(1) {
      text-align: left; }
    main .post-links .post-link:nth-child(2) {
      text-align: center; }
    main .post-links .post-link:nth-child(3) {
      text-align: right; }
    main .post-links .post-link a {
      display: inline-block;
      border-bottom: .1rem solid transparent;
      padding-bottom: 1rem;
      font-size: .875em;
      font-weight: 700;
      letter-spacing: .08em; }
      main .post-links .post-link a.prev::before, main .post-links .post-link a.next::after {
        content: "";
        display: inline-block;
        width: 1.065rem;
        height: 1.038rem;
        margin-left: .7rem;
        background-image: url("../img/icon_arrow-right_bk.svg");
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain; }
      main .post-links .post-link a.prev::before {
        transform: rotate(180deg) translateX(0.7rem); }
      main .post-links .post-link a:hover {
        border-color: #0E73CB;
        color: #0E73CB; }
  main .archive {
    padding-bottom: 5em; }
    main .archive .ticket {
      filter: drop-shadow(0 0.6rem 1.6rem rgba(48, 124, 180, 0.3)); }
      main .archive .ticket .ticket-inner {
        position: relative;
        background-color: #fff;
        width: 100%;
        height: calc((100vw - 4em)*1.4561);
        -webkit-clip-path: url(#Tikect-path-sp);
        clip-path: url(#Ticket-path-sp); }
        main .archive .ticket .ticket-inner .ticket-main {
          display: grid;
          grid-template-columns: 31% 7% 62%;
          align-items: center; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-date {
            grid-area: 1/1/2/2; }
            main .archive .ticket .ticket-inner .ticket-main .ticket-date span {
              display: block;
              text-align: center; }
              main .archive .ticket .ticket-inner .ticket-main .ticket-date span.month {
                font-size: .8125em; }
              main .archive .ticket .ticket-inner .ticket-main .ticket-date span.day {
                font-size: 3.5625em; }
              main .archive .ticket .ticket-inner .ticket-main .ticket-date span.year {
                font-size: 1.5em; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-image {
            grid-area: 1/2/2/4;
            height: 16.5rem; }
            main .archive .ticket .ticket-inner .ticket-main .ticket-image img {
              width: 100%;
              height: 100%;
              object-fit: cover; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-title {
            grid-area: 2/1/3/4;
            position: relative;
            height: 14rem; }
            main .archive .ticket .ticket-inner .ticket-main .ticket-title::before {
              content: "";
              display: block;
              position: absolute;
              top: -0.1rem;
              left: 0;
              width: 100%;
              height: .2rem;
              background-image: url("../img/border-dot.svg");
              background-position: center left;
              background-repeat: repeat-x;
              background-size: contain; }
            main .archive .ticket .ticket-inner .ticket-main .ticket-title p {
              position: relative;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              width: calc(100% - 1.5em);
              font-size: 1.5em;
              line-height: 1.3333em; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-name {
            grid-area: 3/1/4/3; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-organization {
            grid-area: 3/3/4/4; }
          main .archive .ticket .ticket-inner .ticket-main .ticket-tags {
            grid-area: 4/1/5/4; }
          main .archive .ticket .ticket-inner .ticket-main .more-link {
            grid-area: 5/1/6/4; }
            main .archive .ticket .ticket-inner .ticket-main .more-link .more {
              display: block;
              position: relative;
              width: 100%;
              height: 4.571em;
              background-color: #0E73CB;
              font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
              font-weight: 700;
              font-size: .875em;
              line-height: 4.571em;
              letter-spacing: .09em;
              text-align: center;
              text-transform: uppercase;
              color: #fff; }
              main .archive .ticket .ticket-inner .ticket-main .more-link .more::after {
                content: "";
                display: block;
                position: absolute;
                top: 50%;
                right: 1.7378em;
                transform: translateY(-50%);
                width: 1.017rem;
                height: .991rem;
                background-image: url("../img/icon_arrow-right_wh.svg");
                background-position: center center;
                background-repeat: no-repeat;
                background-size: contain; }
        main .archive .ticket .ticket-inner:hover dl dt {
          color: #EF951C; }
        main .archive .ticket .ticket-inner:hover .ticket-header .lead {
          background-color: #EF951C; }
        main .archive .ticket .ticket-inner:hover .ticket-main .ticket-date span {
          color: #EF951C; }
        main .archive .ticket .ticket-inner:hover .ticket-main .ticket-tags .ticket-tag {
          background-color: #FFF6E8; }
        main .archive .ticket .ticket-inner:hover .ticket-main .more {
          background-color: #EF951C; }
      main .archive .ticket + .ticket {
        margin-top: 2em; }
    main .archive .to-archive {
      display: block;
      position: relative;
      width: 15.4rem;
      height: 15.4rem;
      margin: 5em auto 0;
      border: 0.1rem solid #fff;
      border-radius: 50%; }
      main .archive .to-archive p {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%; }
        main .archive .to-archive p span {
          display: block;
          font-weight: 700;
          line-height: 1.5em;
          letter-spacing: .04em;
          text-align: center;
          color: #fff; }
      main .archive .to-archive::before {
        content: "";
        display: block;
        position: absolute;
        top: calc(50% + 3rem);
        left: 50%;
        transform: translateX(-50%);
        width: .8rem;
        height: .8rem;
        background-image: url("../img/icon_arrow-right_wh.svg");
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain; }
    main .archive .pager {
      margin-top: 5rem; }
      main .archive .pager ul {
        display: flex;
        justify-content: center;
        align-items: center; }
        main .archive .pager ul li {
          text-shadow: 0 0.1rem 0.5rem #307cb4;
          padding-bottom: .5rem;
          font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
          font-size: .75em;
          font-weight: 700;
          letter-spacing: .08em;
          color: #fff; }
          main .archive .pager ul li.is-current {
            border-bottom: 0.1rem solid #fff; }
            main .archive .pager ul li.is-current span {
              filter: opacity(0.7);
              font-weight: 700; }
          main .archive .pager ul li a {
            color: #fff; }
          main .archive .pager ul li + li {
            margin-left: 4rem; }
  main .information {
    padding-bottom: 4em;
    background-color: #fff;
    margin-bottom: 5em; }
    main .information .information-list {
      padding: 2em 1.5em 4em; }
      main .information .information-list li .information-date span {
        font-size: .75em;
        color: #383838; }
      main .information .information-list li .information-title {
        padding-bottom: .5rem;
        margin-bottom: 1em;
        border-bottom-color: #383838; }
        main .information .information-list li .information-title p {
          font-size: .9375em;
          line-height: 1.6666em; }
      main .information .information-list li .information-detail p {
        font-size: .9375em;
        line-height: 1.666em; }
        main .information .information-list li .information-detail p a {
          color: #0E73CB; }
          main .information .information-list li .information-detail p a:hover {
            color: #EF951C; }
      main .information .information-list li + li {
        margin-top: 4rem; }
    main .information .pager ul {
      display: flex;
      justify-content: center;
      align-items: center; }
      main .information .pager ul li {
        padding-bottom: .5rem;
        font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
        font-size: .75em;
        font-weight: 700;
        letter-spacing: .08em; }
        main .information .pager ul li.is-current {
          border-bottom: 0.1rem solid #383838; }
          main .information .pager ul li.is-current span {
            filter: opacity(0.7);
            font-weight: 700; }
        main .information .pager ul li a {
          color: #383838; }
        main .information .pager ul li + li {
          margin-left: 4rem; }
  main .section {
    padding-bottom: 5em;
    background-color: #f7f7f7;
    text-align: center; }
    main .section section {
      padding-top: 5em; }
      main .section section .section-title {
        margin-bottom: .75em;
        font-size: 2em;
        font-weight: 700;
        letter-spacing: .04em; }
      main .section section .btn {
        display: block;
        width: 12rem;
        height: 4rem;
        margin: 0 auto;
        background-color: #fff;
        border-radius: 2rem;
        font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
        font-size: .75em;
        font-weight: 700;
        line-height: 4rem;
        letter-spacing: .04em;
        text-transform: uppercase; }
        main .section section .btn::after {
          content: "";
          display: inline-block;
          width: .8rem;
          height: .8rem;
          margin-left: .5em;
          background-image: url("../img/icon_plus_bk.svg");
          background-position: center center;
          background-repeat: no-repeat;
          background-size: contain; }
      main .section section .information-list {
        padding: 2.5em 0 1.5em;
        border-bottom: 0.1rem solid #383838; }
        main .section section .information-list dl dt {
          font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
          font-size: .9375em;
          font-weight: 700;
          letter-spacing: .05em; }
        main .section section .information-list dl dd {
          margin-top: .75em;
          font-weight: 700;
          line-height: 1.5em; }
        main .section section .information-list dl + dl {
          margin-top: 2em; }
      main .section section .fb {
        display: block;
        width: min(100%, 43rem);
        height: min(32.5641vw, 16rem);
        margin: 0 auto;
        background-color: #1877F2;
        font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
        font-size: 1.5em;
        font-weight: 700;
        line-height: min(32.5641vw, 16rem);
        letter-spacing: .04em;
        color: #fff; }
        main .section section .fb::before, main .section section .fb:after {
          content: "";
          display: inline-block;
          position: relative;
          background-position: center center;
          background-repeat: no-repeat;
          background-size: contain; }
        main .section section .fb::before {
          top: .4rem;
          width: 3.2rem;
          height: 3.2rem;
          margin-right: 1.5rem;
          background-image: url("../img/icon_fb_wh.svg"); }
        main .section section .fb::after {
          width: 1.5rem;
          height: 1.5rem;
          margin-left: 2.2rem;
          background-image: url("../img/icon_link_wh.svg"); }
      main .section section .member-list li {
        font-weight: 700; }
        main .section section .member-list li + li {
          margin-top: .5em; }
    main .section + .about {
      margin-top: 3em; }
  main .about {
    background-color: #fff;
    margin-bottom: 3em;
    padding: 1.5em; }
    main .about dl dt {
      margin-bottom: 1em;
      padding-bottom: .75em;
      border-bottom: 0.1rem solid #0E73CB;
      color: #0E73CB; }
      main .about dl dt h3 {
        font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
        font-size: 1.125em;
        font-weight: 700; }
      main .about dl dt h4 {
        font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
        font-weight: 700; }
    main .about dl dd p {
      font-size: .9375em;
      line-height: 1.6666em; }
      main .about dl dd p + p {
        margin-top: 1em; }
      main .about dl dd p.link {
        font-size: .75em;
        line-height: 1.5em; }
        main .about dl dd p.link a {
          display: block;
          font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
          font-weight: 700;
          color: #0E73CB; }
          main .about dl dd p.link a:hover {
            text-decoration: underline; }
    main .about dl + dl {
      margin-top: 4rem; }

footer {
  position: relative;
  z-index: 4;
  padding: 5.5em 0;
  text-align: center; }
  footer .ft-logo {
    display: block;
    width: 14rem;
    height: 12rem;
    margin: 0 auto; }
    footer .ft-logo img {
      width: 100%;
      height: 100%;
      object-fit: contain; }
  footer .footer-menu {
    margin: 3.5em auto 2.5em; }
    footer .footer-menu .footer-menu-item a {
      font-weight: 700;
      letter-spacing: .04em;
      color: #fff; }
    footer .footer-menu .footer-menu-item + .footer-menu-item {
      margin-top: 2.5em; }
  footer .sns {
    display: flex;
    justify-content: center;
    align-items: center; }
    footer .sns a {
      font-size: .9375em;
      font-weight: 700;
      line-height: 2rem;
      letter-spacing: .04em;
      color: #fff; }
      footer .sns a::before {
        content: "";
        display: inline-block;
        position: relative;
        top: .2em;
        width: 2rem;
        height: 2rem;
        margin-right: .5em;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain; }
      footer .sns a.ig::before {
        background-image: url("../img/icon_ig_wh.svg"); }
      footer .sns a.fb {
        margin-left: 2.5em; }
        footer .sns a.fb::before {
          background-image: url("../img/icon_fb_wh.svg"); }
  footer .totop {
    display: block;
    position: relative;
    width: 15.4rem;
    height: 15.4rem;
    margin: 5em auto 0;
    border: 0.1rem solid #fff;
    border-radius: 50%;
    line-height: 16.4rem;
    color: #fff; }
    footer .totop::before {
      content: "";
      display: block;
      position: absolute;
      top: 5rem;
      left: 50%;
      transform: translateX(-50%) rotate(-90deg);
      width: .8rem;
      height: .8rem;
      background-image: url("../img/icon_arrow-right_wh.svg");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: contain; }
    footer .totop:hover {
      background-color: #fff;
      color: #0E73CB; }
      footer .totop:hover::before {
        background-image: url("../img/icon_arrow-right_bl.svg"); }

.copyright {
  position: fixed;
  right: 1.6rem;
  top: 16.6rem;
  z-index: 6;
  transform: rotate(90deg);
  transform-origin: top right;
  font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
  font-size: 1.1rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #d4d4d4; }

@media only screen and (min-width: 780px) {
  html {
    font-size: 62.5%; }

  main .anker-links ul {
    justify-content: center; }
  main .article .article-header, main .archive .article-header {
    position: relative; }
  main .article .time, main .archive .time {
    display: flex;
    align-items: center;
    position: absolute;
    right: 1em; }
    main .article .time dt, main .archive .time dt {
      color: #fff;
      margin: 0 .8rem 0 0; }
    main .article .time dd, main .archive .time dd {
      font-family: "Lato", "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
      font-size: .75em;
      font-weight: 700;
      color: #fff; }
  main .article .organization, main .archive .organization {
    position: relative;
    border-left: none; }
    main .article .organization::before, main .archive .organization::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      display: block;
      width: .1rem;
      height: 4rem;
      background-color: #d4d4d4; }
  main .article .tags dl, main .archive .tags dl {
    padding: 0 1em;
    height: 2em;
    border-radius: 1em; }
    main .article .tags dl dd, main .archive .tags dl dd {
      line-height: 1em; }
  main .article .qr, main .archive .qr {
    display: block;
    text-align: center; }
    main .article .qr img, main .archive .qr img {
      object-fit: contain; }
  main .article {
    margin-bottom: 1.5em;
    background-color: #fff;
    filter: drop-shadow(0 0.6rem 1.6rem rgba(48, 124, 180, 0.3)); }
    main .article .article-header .time {
      top: 1.3rem; }
    main .article .article-header .wrap {
      grid-template-columns: 14% 4.8% 76.7% 4.5%;
      align-items: flex-start;
      width: calc(100% - 3em);
      margin: 5rem auto 0; }
      main .article .article-header .wrap .article-date {
        grid-area: 1/1/2/2;
        height: 17rem;
        padding: 1.2rem 0 2rem 0; }
        main .article .article-header .wrap .article-date span {
          display: block;
          width: 10.4rem;
          line-height: 1;
          text-align: center; }
          main .article .article-header .wrap .article-date span.month {
            font-size: 1.125em; }
          main .article .article-header .wrap .article-date span.day {
            margin-top: .7rem;
            font-size: 4.9375em; }
          main .article .article-header .wrap .article-date span.year {
            margin-top: .4rem;
            font-size: 2.125em; }
      main .article .article-header .wrap .article-title {
        grid-area: 1/3/2/5;
        padding: .1rem 0 0 0;
        border-bottom: none; }
        main .article .article-header .wrap .article-title p {
          font-size: 2.375em;
          line-height: 1.3684em; }
      main .article .article-header .wrap .article-name {
        grid-area: 2/1/3/2;
        padding: .3rem 0; }
      main .article .article-header .wrap .article-organization {
        grid-area: 2/2/3/4;
        padding: .3rem .5em .3rem 2.5rem; }
      main .article .article-header .wrap .qr {
        grid-area: 2/4/3/5; }
        main .article .article-header .wrap .qr img {
          width: 4rem;
          height: 4rem; }
      main .article .article-header .wrap .article-tags {
        grid-area: 3/1/4/5;
        padding: 1em 0 0; }
  main .share {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100% - 3em);
    margin: 0 auto; }
    main .share h4 {
      margin-bottom: 0; }
    main .share .share-links {
      margin-left: 4rem; }
  main .archive {
    padding-bottom: 12.5em; }
    main .archive .archive-list .ticket {
      max-width: 70rem;
      margin: 0 auto; }
      main .archive .archive-list .ticket .ticket-inner {
        height: 30.3rem;
        -webkit-clip-path: url(#Tikect-path-pc);
        clip-path: url(#Ticket-path-pc); }
        main .archive .archive-list .ticket .ticket-inner .ticket-header {
          position: relative; }
          main .archive .archive-list .ticket .ticket-inner .ticket-header .time {
            top: 50%;
            transform: translateY(-50%); }
        main .archive .archive-list .ticket .ticket-inner .ticket-main {
          grid-template-columns: 18.6% 10.7% 28.4% 22% 20.3%; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-date {
            grid-area: 1/5/2/6; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-date span.month {
              font-size: .9375em; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-date span.day {
              font-size: 4.0625em; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-date span.year {
              font-size: 1.75em; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-image {
            grid-area: 1/1/2/3;
            height: 14.3rem;
            border-bottom: 0.1rem solid #d4d4d4; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-title {
            grid-area: 1/3/2/5;
            height: 14.3rem; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-title::before {
              top: -2.25rem;
              left: auto;
              right: .1rem;
              transform-origin: top right;
              transform: rotate(-90deg);
              width: 26.8rem; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-title p {
              width: calc(100% - 2.6666em); }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-name {
            grid-area: 2/1/3/2;
            height: 6.4rem;
            padding: .875em .5em 0 1.5em; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-organization {
            grid-area: 2/2/3/4;
            height: 6.4rem;
            padding: .875em .5em 0 1em; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .ticket-tags {
            grid-area: 3/1/4/4;
            height: 5.6rem;
            padding-left: 1.5em; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .qr {
            grid-area: 2/4/4/5; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .qr img {
              width: 7.4rem;
              height: 7.4rem; }
          main .archive .archive-list .ticket .ticket-inner .ticket-main .more-link {
            grid-area: 2/5/4/6; }
            main .archive .archive-list .ticket .ticket-inner .ticket-main .more-link .more {
              width: 7rem;
              height: 7rem;
              margin: 0 auto;
              border-radius: 50%;
              font-size: .75em;
              line-height: calc(7rem - .475rem); }
              main .archive .archive-list .ticket .ticket-inner .ticket-main .more-link .more::after {
                top: calc(50% + 1.035rem);
                right: 50%;
                transform: translate(50%, 0);
                width: .8rem;
                height: .78rem; }
      main .archive .archive-list .ticket + .ticket {
        margin-top: 2.5em; }
  main .section {
    padding-bottom: 12.5em; }
    main .section section {
      padding-top: 12.5em; }
      main .section section .section-title {
        margin-bottom: 2.5em; }
      main .section section .btn {
        position: absolute;
        top: 16.6666em;
        right: 0;
        margin: 0; }
      main .section section .information-list {
        padding-top: 0; }
        main .section section .information-list dl {
          display: grid;
          grid-template-columns: 10rem auto;
          grid-gap: 0 .5em;
          align-items: center;
          width: 35rem;
          margin: 0 auto; }
          main .section section .information-list dl dd {
            margin-top: 0;
            text-align: left; }

  footer {
    padding: 10em 0; }
    footer .footer-menu {
      display: flex;
      justify-content: center;
      align-items: center; }
      footer .footer-menu .footer-menu-item a {
        font-size: .875em; }
      footer .footer-menu .footer-menu-item + .footer-menu-item {
        margin-top: 0;
        margin-left: 2.5em; }
    footer .totop {
      margin-top: 12.5em; } }
@media only screen and (min-width: 960px) {
  body::before {
    background-image: url("../img/bgimg_pc.jpg"); } }
  @media only screen and (min-width: 960px) and (-webkit-min-device-pixel-ratio: 2) {
    body::before {
      background-image: url("../img/bgimg_pc@2x.jpg"); } }

@media only screen and (min-width: 960px) {
  .drawer--top button.drawer-hamburger {
    top: 4rem;
    right: 4rem;
    width: 9.6rem;
    height: 9.6rem; }
    .drawer--top button.drawer-hamburger .drawer-hamburger-icon {
      width: 4.6rem;
      margin: -1.825rem auto 0; }
      .drawer--top button.drawer-hamburger .drawer-hamburger-icon::after {
        top: 1.4rem; }
    .drawer--top button.drawer-hamburger .sr-only {
      transform: none;
      top: 2.35rem;
      font-size: 1.4rem; }

  .drawer--top.drawer-open button.drawer-hamburger {
    right: 4rem; }
    .drawer--top.drawer-open button.drawer-hamburger .drawer-hamburger-icon::before {
      transform: rotate(25deg); }
    .drawer--top.drawer-open button.drawer-hamburger .drawer-hamburger-icon::after {
      transform: rotate(-25deg);
      top: .7rem; }

  header {
    padding-top: 5.45em; }
    header .hd-logo {
      margin-bottom: 5.45rem; }

  main .article {
    max-width: 80rem; }
    main .article .article-header .wrap {
      width: calc(100% - 6em); }
    main .article article,
    main .article .share,
    main .article .post-links {
      width: calc(100% - 6em); }

  .copyright {
    right: 8.15rem;
    top: 24.6rem;
    font-size: 1.3rem; } }
@media only screen and (min-width: 1366px) {
  .drawer--top button.drawer-hamburger {
    top: 8rem;
    right: 8rem; }

  .drawer--top.drawer-open button.drawer-hamburger {
    right: 8rem; }

  header {
    padding-top: 10.9em; }
    header .hd-logo {
      margin-bottom: 10.9rem; }

  main .article {
    max-width: 110rem; }
    main .article .article-header .wrap {
      width: calc(100% - 13em); }
    main .article article,
    main .article .share,
    main .article .post-links {
      width: calc(100% - 13em); }

  .copyright {
    right: 12.15rem;
    top: 28.6rem; } }
