@media (max-width: 800px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media (max-width: 800px) {
  .sp {
    display: block;
  }
}

.at-sec {
  padding-top: 70px;
  margin-bottom: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.at-sec::before {
  content: "";
  display: block;
  width: 100%;
  height: 130%;
  background: linear-gradient(135deg, rgb(150, 230, 244) 0%, rgb(22, 217, 207) 100%);
  position: absolute;
  top: 80px;
  left: 0;
  z-index: -4;
}
@media (max-width: 800px) {
  .at-sec::before {
    height: 110%;
  }
}
.at-sec::after {
  content: "";
  display: block;
  width: 100%;
  height: 130%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(98%, rgb(255, 255, 255)), to(rgb(255, 255, 255)));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 98%, rgb(255, 255, 255) 100%);
  position: absolute;
  top: 80px;
  left: 0;
  z-index: -3;
}
@media (max-width: 800px) {
  .at-sec::after {
    height: 110%;
  }
}
.at-sec .headline {
  text-align: center;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.at-sec .headline::before {
  content: "";
  display: block;
  width: 70px;
  height: 70px;
  background-image: url(/wp-content/uploads/2025/03/senimg04.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto 30px auto;
}
@media (max-width: 800px) {
  .at-sec .headline::before {
    width: 30px;
    height: 30px;
    margin: 0 auto 10px auto;
  }
}
.at-sec .headline h2 {
  font-size: 40px;
  letter-spacing: 0.07em;
  font-weight: 900;
  margin: 0;
}
@media (max-width: 800px) {
  .at-sec .headline h2 {
    font-size: 20px;
    letter-spacing: 0.11em;
    font-size: bold;
  }
}
.at-sec .headline span {
  font-size: 18px;
  letter-spacing: 0.06em;
  font-weight: 900;
  color: #1cc8dd;
  margin-top: 20px;
  display: block;
}
@media (max-width: 800px) {
  .at-sec .headline span {
    font-size: 10px;
    letter-spacing: 0.16em;
    margin-top: 10px;
  }
}
.at-sec .arch {
  width: 100%;
}
.at-sec .arch img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: 0 0;
     object-position: 0 0;
  position: relative;
  z-index: -1;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.at-sec .arch::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/wp-content/uploads/2025/04/arch.png);
  background-size: cover;
  background-position: 0 0;
  mix-blend-mode: soft-light;
  position: absolute;
  top: 20px;
  left: 0;
  z-index: -2;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.access-contents .back {
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}
@media (max-width: 900px) {
  .access-contents .back {
    min-height: 1000px;
  }
}
@media (max-width: 600px) {
  .access-contents .back {
    min-height: 730px;
  }
}
.access-contents .back img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.access-contents .container {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding-top: 10%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.access-contents .container .headline {
  text-align: center;
  margin-bottom: 40px;
}
.access-contents .container .headline::before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background-image: url(/wp-content/uploads/2025/03/senimg09.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto 30px auto;
}
.access-contents .container .headline::after {
  content: "ACCESS";
  display: block;
  font-family: "Futura-Medium", sans-serif;
  font-weight: 400;
  font-style: normal;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #1cc8dd;
  font-size: 120px;
  letter-spacing: 0.02em;
  opacity: 0.15;
  z-index: -1;
}
.access-contents .container .headline h2 {
  font-size: 36px;
  letter-spacing: 0.07em;
  font-weight: 900;
  color: #fff;
  margin: 0;
}
.access-contents .container .headline span {
  font-size: 18px;
  letter-spacing: 0.06em;
  font-weight: 900;
  color: #0bbcdb;
  margin-top: 15px;
  display: block;
}
.access-contents .container .map {
  width: 80%;
  height: 600px;
  margin: 0 auto 30px auto;
}
@media (max-width: 800px) {
  .access-contents .container .map {
    height: 380px;
  }
}
.access-contents .container .map iframe {
  width: 100%;
  height: 100%;
}
.access-contents .container .map img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.access-contents .container .text {
  text-align: center;
  margin-bottom: 30px;
}
.access-contents .access-wrap {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto 150px auto;
}
@media (max-width: 800px) {
  .access-contents .access-wrap {
    padding: 0px 3%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto 20px auto;
  }
}
.access-contents .access-wrap .box {
  width: 90%;
  margin: 0 auto 50px auto;
}
.access-contents .access-wrap .box:last-child {
  margin-bottom: 0;
}
@media (max-width: 800px) {
  .access-contents .access-wrap .box {
    width: 100%;
  }
}
.access-contents .access-wrap .box .title {
  font-size: 24px;
  letter-spacing: 0.07em;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 10px 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 5px solid #00c9ff;
}
@media (max-width: 800px) {
  .access-contents .access-wrap .box .title {
    font-size: 14px;
  }
}
.access-contents .access-wrap .box .map img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.access-contents .access-wrap .box:nth-child(2) .title {
  border-color: #46c78d;
}
@media (max-width: 800px) {
  .access-contents .access-wrap .box:nth-child(2) .title {
    color: #46c78d;
    border-color: #00c9ff;
  }
}

.bot-section {
  display: none;
}
@media (max-width: 800px) {
  .bot-section {
    display: block;
    padding: 50px 3% 60px 3%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgb(255, 255, 255)), color-stop(80%, rgb(240, 249, 250)));
    background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, rgb(240, 249, 250) 80%);
  }
  .bot-section .box a {
    background-color: #fff;
  }
}