.about {
  .cont {
    .box {
      max-width: 1280px;

      .item {
        display: flex;
        gap: 80px;

        @media screen and (max-width: 991px) {
          flex-direction: column-reverse;
          gap: 40px;
        }

        .left {
          flex: 1;

          .txt {
            display: flex;
            flex-direction: column;
            gap: 32px;
            align-items: center;

            .ttl {
              position: relative;
              width: 100%;
              max-width: 80%;

              @media screen and (max-width: 991px) {
                max-width: 100%;
              }

              &::before {
                position: absolute;
                content: "";
                top: -22%;
                left: -12%;
                width: 50%;
                height: 100%;
                background: #ffb30031;
                border-radius: 10px;
                z-index: -1;

                @media screen and (max-width: 991px) {
                  top: -8%;
                  left: -2%;
                }
              }

              &::after {
                position: absolute;
                content: "";
                top: 50%;
                left: 32%;
                width: 50%;
                height: 100%;
                border: 2px solid #ffb300ad;
                border-radius: 10px;
                z-index: -1;

                @media screen and (max-width: 991px) {
                  top: 20%;
                  left: 38%;
                }
              }
              .ttl-01 {
                font-size: clamp(2.25rem, 1.75rem + 1.0417vw, 3rem);
                font-family: serif;
                font-weight: 600;
                line-height: 1.2;
              }
              .ttl-02 {
                font-size: clamp(2.25rem, 1.75rem + 1.0417vw, 3rem);
                font-family: serif;
                font-weight: 600;
                line-height: 1.2;
                padding-left: 10%;
              }
            }

            .des {
              width: 100%;
              max-width: 80%;
              font-weight: 500;

              @media screen and (max-width: 991px) {
                max-width: 100%;
              }
            }
          }
        }

        .right {
          flex: 1;
          display: flex;
          justify-content: center;
          align-items: center;

          .img {
            aspect-ratio: 1/1;
            width: 70%;
            position: relative;

            &::before {
              position: absolute;
              content: "";
              top: 28%;
              left: -18%;
              width: 130%;
              height: 50%;
              background: #4242426b;
              border-radius: 10px;
              z-index: -1;

              @media screen and (max-width: 991px) {
                left: -10%;
                width: 120%;
                height: 50%;
              }
            }

            &::after {
              position: absolute;
              content: "";
              top: 60%;
              left: -33%;
              width: 130%;
              height: 50%;
              background: #42424270;
              border-radius: 10px;
              z-index: -1;

              @media screen and (max-width: 991px) {
                top: 55%;
                left: -18%;
                width: 100%;
              }
            }

            & img {
              border-radius: 10px;
            }
          }
        }
      }
    }
  }
}

.information {
  background: #f2f4f5;

  .cont {
    .box {
      max-width: 1200px;

      .ttl-area {
        align-items: flex-start;
        margin-bottom: 16px;
      }

      .item {
        display: flex;
        gap: 80px;

        .table-dl {
          width: 100%;

          & dl {
            display: flex;
            padding: 40px 80px;
            border-bottom: 1px solid #ccc;

            @media screen and (max-width: 991px) {
              flex-direction: column;
              padding: 8px;
            }

            & dt {
              flex: 1;
            }

            & dd {
              flex: 3.5;
              padding-left: 16px;
            }
          }
        }
      }
    }
  }
}

.access {
  .cont {
    .box {
      max-width: 1280px;

      .item {
        width: 100%;
        display: flex;
        justify-content: center;

        & iframe {
          width: 100%;
          border-radius: 10px;

          @media screen and (max-width: 991px) {
            height: 240px;
          }
        }
      }
    }
  }
}
