@charset "UTF-8";
/*!
Theme Name: 征峯会
Theme URI: https://panarea.co.jp
Author: shogo yonetani
Author URI: https://panarea.co.jp
Description: 征峯会
*/
/*Color Management*/
:root {
  --font-latin: 'Inter', 'Avenir Next', Verdana;
  --font-jp: 'YakuHanJP', '游ゴシック', 'Yu Gothic', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka;
  --key: #bc660f;
  --sub: #d3c1b2;
  --foot: #231203;
  --black: #151515;
  --white: #fff;
  --gray1: #f0f0f0; }

/*Basic Color*/
/*Couplate Color*/
/*Footer*/
/*ASIDE*/
/*!color*/
/*!レスポンシブ*/
/*mouse-follower-dev*/
.mf-cursor {
  color: #555555;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001 !important;
  direction: ltr;
  contain: layout style size;
  pointer-events: none;
  transition: opacity 0.3s, color 0.4s; }
  .mf-cursor:before {
    content: "";
    position: absolute;
    top: -24px;
    left: -24px;
    display: block;
    width: 48px;
    height: 48px;
    transform: scale(0.2);
    background: currentColor;
    border-radius: 50%;
    transition: transform 0.25s ease-in-out, opacity 0.1s; }
  .mf-cursor.-inverse {
    color: #aaaaaa; }
  @supports (mix-blend-mode: exclusion) {
    .mf-cursor.-exclusion {
      mix-blend-mode: exclusion; }
      .mf-cursor.-exclusion:before {
        background: #aaaaaa; } }
  .mf-cursor.-pointer:before {
    transform: scale(0.15); }
  .mf-cursor.-text {
    white-space: nowrap; }
    .mf-cursor.-text:before {
      opacity: 0.85;
      transform: scale(1.7); }
    .mf-cursor.-text.-active:before {
      transform: scale(1.6);
      transition-duration: 0.2s; }
  .mf-cursor.-icon:before {
    transform: scale(1.5); }
  .mf-cursor.-icon.-active:before {
    transform: scale(1.4); }
  .mf-cursor.-hidden:before {
    transform: scale(0); }
  .mf-cursor-text {
    position: absolute;
    top: -18px;
    left: -18px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0) rotate(10deg);
    opacity: 0;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    transition: opacity 0.4s, transform 0.3s; }
    .mf-cursor.-text .mf-cursor-text, .mf-cursor.-icon .mf-cursor-text {
      opacity: 1;
      transform: scale(1); }
  .mf-cursor-media {
    position: absolute;
    width: 200px !important;
    height: 200px !important;
    margin: -100px 0 0 -100px !important; }
    @media screen and (max-width: 768px) {
      .mf-cursor-media {
        width: 108px !important;
        height: 108px !important;
        margin: -54px 0 0 -54px !important; } }
    .mf-cursor-media img, .mf-cursor-media video {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      border-radius: 50%; }
      @supports (object-fit: cover) {
        .mf-cursor-media img, .mf-cursor-media video {
          position: static;
          width: 100%;
          height: 100%;
          object-fit: cover;
          transform: translateZ(0); } }
    .mf-cursor-media-box {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden;
      transform: scale(0) translateZ(0);
      padding: 1px;
      opacity: 0;
      border-radius: 50%;
      transition: transform 0.35s, opacity 0.2s 0.2s; }
      .mf-cursor.-media .mf-cursor-media-box {
        opacity: 1;
        transform: scale(0.696);
        transition-duration: 0.4s, 0.4s;
        transition-delay: 0s, 0s; }

body.lp_fes {
  font-weight: 400;
  font-family: var(--font-latin), var(--font-jp); }
  @media screen and (max-width: 768px) {
    body.lp_fes.scroll .float_qr {
      opacity: 0;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; } }
  @media screen and (max-width: 768px) {
    body.lp_fes.scroll.scrollUp .float_qr {
      opacity: 1;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; } }

#fesContent {
  position: relative;
  z-index: 15; }
  #fesContent .background {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    overflow: hidden; }
    #fesContent .background .inner {
      width: auto;
      height: 100vh;
      aspect-ratio: 3053/1297; }
  #fesContent .fes_frame {
    display: flex;
    flex-direction: row-reverse; }
    @media screen and (max-width: 768px) {
      #fesContent .fes_frame {
        flex-direction: column-reverse; } }
    #fesContent .fes_frame aside:has(nav) {
      flex: 1;
      background: rgba(255, 255, 255, 0.82);
      -webkit-backdrop-filter: blur(15px);
      backdrop-filter: blur(15px); }
      @media screen and (max-width: 768px) {
        #fesContent .fes_frame aside:has(nav) {
          position: fixed;
          top: 2.5vw;
          left: 2.5vw;
          z-index: 18;
          flex: initial;
          width: 95%;
          margin-left: auto;
          margin-right: auto;
          opacity: 0;
          visibility: hidden;
          pointer-events: none;
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; } }
      #fesContent .fes_frame aside:has(nav) nav {
        padding: 5em 3em; }
        #fesContent .fes_frame aside:has(nav) nav ul {
          display: flex;
          flex-direction: column;
          gap: calc(8em / 32 * 3); }
          #fesContent .fes_frame aside:has(nav) nav ul > li a {
            display: flex;
            align-items: center;
            gap: calc(8em / 16);
            font-weight: 600; }
            #fesContent .fes_frame aside:has(nav) nav ul > li a .icon {
              display: block;
              width: 1.23em;
              height: 1.23em; }
      #fesContent .fes_frame aside:has(nav).active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    #fesContent .fes_frame .content {
      width: 390px;
      max-width: 100%;
      margin-left: auto;
      margin-right: auto;
      background: var(--white);
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      @media screen and (max-width: 768px) {
        #fesContent .fes_frame .content {
          width: 95%; } }
      #fesContent .fes_frame .content header .beltline {
        background: #ee6b54;
        overflow: hidden; }
        #fesContent .fes_frame .content header .beltline * {
          color: var(--white);
          font-weight: 600; }
        #fesContent .fes_frame .content header .beltline .slider > .slider__inner {
          padding: 0 .5em; }
          #fesContent .fes_frame .content header .beltline .slider > .slider__inner > .slider__item {
            width: auto; }
            #fesContent .fes_frame .content header .beltline .slider > .slider__inner > .slider__item p {
              font-size: .8em;
              line-height: 1;
              white-space: nowrap; }
      #fesContent .fes_frame .content main {
        padding: calc(8em / 8 * 4) 0; }
        #fesContent .fes_frame .content main section .wrapper {
          padding: 0 2em; }
        #fesContent .fes_frame .content main section ~ section {
          margin-top: 4em; }
      #fesContent .fes_frame .content footer ul.social > li a {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: calc(8em / 16); }
        #fesContent .fes_frame .content footer ul.social > li a .icon {
          display: block;
          width: 1.64em;
          min-width: 1.64em;
          height: 1.64em; }
      #fesContent .fes_frame .content footer p {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 4em;
        font-size: .8em;
        font-weight: normal; }
      #fesContent .fes_frame .content.active {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    #fesContent .fes_frame::after {
      content: '';
      flex: 1;
      display: block; }
  #fesContent .humb_btn {
    position: fixed;
    right: calc(1em / 4 * 2);
    top: calc(1em / 4 * 2);
    z-index: 18;
    display: none;
    align-items: center;
    justify-content: center;
    width: 3.69em;
    height: 3.69em; }
    @media screen and (max-width: 768px) {
      #fesContent .humb_btn {
        display: flex; } }
    #fesContent .humb_btn .btn {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      width: 3.69em;
      height: 3.69em;
      gap: calc(1em / 2);
      background: #151515;
      border-radius: 50%;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      #fesContent .humb_btn .btn > .icon {
        display: flex;
        flex-direction: column;
        gap: calc(1em / 4);
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        #fesContent .humb_btn .btn > .icon i {
          display: block;
          width: 1.5em;
          height: 1.5px;
          background: var(--white);
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    #fesContent .humb_btn.active .btn {
      gap: 0;
      background: #353535;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      #fesContent .humb_btn.active .btn > .icon {
        gap: 0;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        #fesContent .humb_btn.active .btn > .icon i:nth-child(1) {
          transform: translateY(1.5px) rotate(45deg); }
        #fesContent .humb_btn.active .btn > .icon i:nth-child(2) {
          opacity: 0; }
        #fesContent .humb_btn.active .btn > .icon i:nth-child(3) {
          transform: translateY(-1.5px) rotate(-45deg); }
  #fesContent .float_qr {
    position: fixed;
    right: calc(8em / 8 * 3);
    bottom: calc(8em / 8 * 3);
    z-index: 20;
    display: flex;
    flex-direction: column;
    gap: calc(8em / 32);
    padding: calc(8em / 16 * 3);
    background: var(--white);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.125); }
    @media screen and (max-width: 768px) {
      #fesContent .float_qr {
        right: calc(8em / 16 * 1);
        bottom: calc(8em / 16 * 1);
        padding: calc(8em / 16 * 2); } }
    #fesContent .float_qr .title {
      display: flex;
      align-items: center;
      flex-direction: column; }
      #fesContent .float_qr .title * {
        text-align: justify;
        color: #0dc755;
        font-weight: 600;
        line-height: 1.435; }
      #fesContent .float_qr .title .sub {
        width: 100%;
        text-align: justify;
        text-align-last: justify; }
      #fesContent .float_qr .title .main {
        font-size: 2.05em; }
        @media screen and (max-width: 768px) {
          #fesContent .float_qr .title .main {
            font-size: 1.64em; } }
    #fesContent .float_qr .image img {
      width: 164px;
      height: auto; }
      @media screen and (max-width: 768px) {
        #fesContent .float_qr .image img {
          width: 123px; } }
  #fesContent hgroup:has(h2) {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gray1);
    gap: 0 calc(8em / 16);
    min-height: calc(8em / 8 * 2.46); }
    #fesContent hgroup:has(h2) .icon {
      display: block;
      width: 1.23em;
      height: 1.23em; }
    #fesContent hgroup:has(h2) + * {
      margin-top: calc(8em / 16 * 3); }
  #fesContent hgroup:has(h3) {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 calc(8em / 16);
    min-height: calc(8em / 8 * 2.05); }
    #fesContent hgroup:has(h3).transparent + * {
      margin-top: calc(8em / 16 * 1); }
    #fesContent hgroup:has(h3).green {
      background: #31a169; }
      #fesContent hgroup:has(h3).green * {
        color: var(--white); }
    #fesContent hgroup:has(h3).blue {
      background: #227bd3; }
      #fesContent hgroup:has(h3).blue * {
        color: var(--white); }
    #fesContent hgroup:has(h3) .icon {
      display: block;
      width: 1.1275em;
      height: 1.1275em; }
    #fesContent hgroup:has(h3) h3 {
      font-size: .9em; }
    #fesContent hgroup:has(h3) + * {
      margin-top: calc(8em / 16 * 2); }
    #fesContent hgroup:has(h3) ~ hgroup:has(h3) {
      margin-top: 2em; }
  #fesContent hgroup:has(h4) {
    display: flex;
    align-items: center;
    gap: 0 calc(8em / 16); }
    #fesContent hgroup:has(h4) .icon {
      display: block;
      width: 1.1275em;
      height: 1.1275em; }
    #fesContent hgroup:has(h4) h4 {
      font-size: .9em; }
    #fesContent hgroup:has(h4) + * {
      margin-top: calc(8em / 16 * 1); }
    #fesContent hgroup:has(h4) ~ hgroup:has(h4) {
      margin-top: calc(8em / 32 * 6); }
  #fesContent .feature .feature-body ul {
    display: flex;
    flex-wrap: wrap;
    gap: calc(8em / 8) calc(8em / 16); }
    #fesContent .feature .feature-body ul > li {
      width: calc((100% / 2) - ((8em / 16) * 1 / 2)); }
      #fesContent .feature .feature-body ul > li .card {
        display: flex;
        flex-direction: column;
        gap: calc(8em / 16); }
        #fesContent .feature .feature-body ul > li .card .image {
          line-height: 0; }
        #fesContent .feature .feature-body ul > li .card .text {
          font-weight: 600;
          text-align: center; }
  #fesContent .timetable .timetable-body .head ul {
    display: flex; }
    #fesContent .timetable .timetable-body .head ul > li {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 2.05em;
      opacity: .41;
      color: var(--white);
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      #fesContent .timetable .timetable-body .head ul > li.active {
        opacity: 1;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      #fesContent .timetable .timetable-body .head ul > li:first-child {
        background: #31a169; }
      #fesContent .timetable .timetable-body .head ul > li:last-child {
        background: #ee6b54; }
  #fesContent .timetable .timetable-body .head + * {
    margin-top: calc(8em / 16 * 2); }
  #fesContent .timetable .timetable-body .body {
    position: relative;
    z-index: 15; }
    #fesContent .timetable .timetable-body .body .body-item {
      position: absolute;
      top: 0;
      z-index: -1;
      width: 100%;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      #fesContent .timetable .timetable-body .body .body-item.active {
        position: relative;
        z-index: 15;
        opacity: 1;
        visibility: visible;
        pointer-events: all;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    #fesContent .timetable .timetable-body .body .timeline {
      padding: calc(8em / 32 * 2);
      background: var(--gray1); }
    #fesContent .timetable .timetable-body .body table {
      width: 100%;
      font-size: .85em; }
      #fesContent .timetable .timetable-body .body table tr {
        background: var(--white);
        border-bottom: solid 2px var(--gray1); }
        #fesContent .timetable .timetable-body .body table tr > th {
          padding: calc(8em / 32 * 2) calc(8em / 32 * 3);
          text-align: left;
          line-height: 1.5; }
        #fesContent .timetable .timetable-body .body table tr > td {
          padding: calc(8em / 32 * 2) calc(8em / 32 * 3);
          line-height: 1.5; }
  #fesContent .timetable .caption {
    display: table;
    margin-left: auto;
    margin-top: calc(1em / 4 * 3);
    font-size: .8em; }
  #fesContent .map .caption {
    display: table;
    margin-left: auto;
    margin-top: calc(1em / 4 * 3);
    font-size: .8em; }
  #fesContent .news .news-body ul {
    display: flex;
    flex-direction: column;
    gap: 1em; }
    #fesContent .news .news-body ul > li {
      padding-bottom: 1em;
      border-bottom: dashed 0.5px var(--black); }
      #fesContent .news .news-body ul > li .column {
        display: flex;
        flex-direction: column; }
        #fesContent .news .news-body ul > li .column p {
          line-height: 1.5;
          font-weight: 600; }
        #fesContent .news .news-body ul > li .column .post_meta time {
          opacity: .5;
          font-size: .8em; }
  #fesContent .access .access-body .address {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: calc(8em / 16 * 3) calc(8em / 16 * 2);
    background: var(--gray1);
    font-weight: 600;
    font-size: 1.1275em; }
    #fesContent .access .access-body .address + * {
      margin-top: calc(8em / 16 * 3); }
  #fesContent .access .access-body .car_access ul {
    display: flex;
    flex-direction: column;
    gap: calc(8em / 16);
    padding-left: calc(1em / 4 * 3); }
    #fesContent .access .access-body .car_access ul > li {
      list-style-type: disc; }
      #fesContent .access .access-body .car_access ul > li dl > dt {
        font-size: .9em; }
      #fesContent .access .access-body .car_access ul > li dl > dd {
        font-size: .8em; }
  #fesContent .access .access-body .car_access + * {
    margin-top: calc(8em / 16); }
  #fesContent .access .access-body .googlemap {
    width: 100%;
    height: auto;
    aspect-ratio: 4/3; }
    #fesContent .access .access-body .googlemap iframe {
      width: 100%;
      height: 100%;
      object-fit: cover;
      font-family: 'object-fit: cover;'; }
  #fesContent .access .access-body table {
    width: 100%;
    font-size: .85em; }
    #fesContent .access .access-body table * {
      text-align: left;
      line-height: 1.5; }
    #fesContent .access .access-body table tr th {
      padding: calc(8em / 32 * 2) calc(8em / 32 * 3);
      background: var(--gray1);
      border: solid 0.5px var(--black); }
    #fesContent .access .access-body table tr td {
      padding: calc(8em / 32 * 2) calc(8em / 32 * 3);
      border: solid 0.5px var(--black); }
  #fesContent .access .access-body .barrierfree {
    padding: calc(8em / 16 * 3);
    background: var(--gray1); }
    #fesContent .access .access-body .barrierfree ul {
      display: flex;
      flex-direction: column;
      gap: calc(8em / 32 * 1); }
      #fesContent .access .access-body .barrierfree ul > li {
        display: flex;
        align-items: center;
        gap: calc(8em / 16) calc(8em / 8); }
        #fesContent .access .access-body .barrierfree ul > li .image {
          width: 3em; }
        #fesContent .access .access-body .barrierfree ul > li .text {
          font-size: .85em;
          font-weight: 600; }
  #fesContent .event .event-body ul {
    display: flex;
    flex-wrap: wrap;
    gap: calc(8em / 8) calc(8em / 16); }
    #fesContent .event .event-body ul > li {
      width: calc((100% / 2) - ((8em / 16) * 1 / 2));
      display: flex;
      flex-direction: column;
      gap: calc(8em / 16); }
      #fesContent .event .event-body ul > li > .image {
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        overflow: hidden; }
      #fesContent .event .event-body ul > li > .text .title {
        font-weight: 600; }
        #fesContent .event .event-body ul > li > .text .title a {
          color: royalblue;
          text-decoration: underline; }
      #fesContent .event .event-body ul > li > .text p {
        font-size: .85em;
        line-height: 1.5; }
  #fesContent .history .history-body {
    display: flex;
    flex-direction: column;
    gap: calc(8em / 32 * 3) 0; }
  #fesContent .gallery .gallery-body {
    display: flex;
    flex-wrap: wrap;
    gap: calc(8em / 16); }
    #fesContent .gallery .gallery-body > .fig {
      width: calc((100% / 3) - ((8em / 16) * 2 / 3));
      aspect-ratio: 1/1;
      line-height: 0; }
  #fesContent .history .history-body p {
    font-size: .9em;
    line-height: 1.5; }
  #fesContent .faq .faq-body ul {
    display: flex;
    flex-direction: column;
    gap: 1em; }
    #fesContent .faq .faq-body ul > li {
      padding-bottom: 1em;
      border-bottom: dashed 0.5px var(--black); }
      #fesContent .faq .faq-body ul > li .question {
        display: flex;
        align-items: flex-start;
        gap: calc(8em / 16); }
        #fesContent .faq .faq-body ul > li .question::before {
          content: 'Q';
          display: flex;
          align-items: center;
          justify-content: center;
          width: 2.46em;
          min-width: 2.46em;
          height: 2.46em;
          background: #ee6b54;
          border-radius: calc(8em / 16);
          overflow: hidden;
          font-weight: 600;
          color: var(--white); }
        #fesContent .faq .faq-body ul > li .question .wrap {
          display: flex;
          align-items: flex-start;
          flex-direction: column;
          gap: calc(8em / 32); }
          #fesContent .faq .faq-body ul > li .question .wrap .category {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 1.8em;
            padding: 0 1em;
            background: #edd6b7;
            border-radius: 2em;
            font-size: .75em;
            font-weight: 600; }
          #fesContent .faq .faq-body ul > li .question .wrap .title {
            font-weight: 600; }
      #fesContent .faq .faq-body ul > li .answer p {
        font-size: .9em;
        line-height: 1.5; }
      #fesContent .faq .faq-body ul > li:has(.open) .answer {
        padding-top: calc(8em / 16); }
