@charset "UTF-8";

/******************************
common
******************************/

/******************************
pagesec-info
******************************/
.pagesec-info::before{
  content: "";
  background: url(../../images/page/guide/bg_info.webp) no-repeat center / cover;
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.pagesec-info .tblbox1{
  background: rgba(255,255,255,.8);
  padding: 4rem;
}

.pagesec-info .gmap{
  margin-top: 4rem;
}
.pagesec-info .gmap iframe{
  aspect-ratio: 5/2;
  height: auto;
  width: 100%;
}

@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 820px) {
  .pagesec-info .tblbox1{
    padding: 2rem;
  }
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
  .pagesec-info .tblbox1{
    padding: 1.5rem;
  }
}

/******************************
pagesec-interior
******************************/
.pagesec-interior{
  padding-left: 0;
}
.pagesec-interior::before{
  content: "";
  aspect-ratio: 1417/2495;
  background: url(../../images/common/ob_waveline_L1.svg) no-repeat center / cover;
  opacity: .5;
  position: absolute;
  top: -10rem;
  left: 0;
  height: calc(100% + 20rem);
  width: 100%;
}
.pagesec-interior .interior,
.pagesec-interior .map{
  padding-left: 3rem;
}

.pagesec-interior .interior .box{
  margin-bottom: 3rem;
  padding-bottom: 3rem;
}
.pagesec-interior .interior .fttl{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 40%;
  writing-mode: vertical-rl;
}
.pagesec-interior .interior .fttl span{
  display: block;
  font-size: 4rem;
}
.pagesec-interior .interior .fimgtxtbox{
  width: 48%;
}
.pagesec-interior .interior .fimgtxtbox .imgbox{
  aspect-ratio: 3/2;
  margin-bottom: 3rem;
  position: relative;
}
.pagesec-interior .interior .fimgtxtbox .txtbox{
  font-size: 2rem;
  margin-left: auto;
  max-width: 80%;
  position: relative;
}
.pagesec-interior .interior .fimgtxtbox .txtbox::before{
  content: "";
  background: #707070;
  position: absolute;
  top: -5rem;
  left: -10%;
  height: calc(100% + 5rem);
  width: 1px;
  z-index: -1;
}
.pagesec-interior .interior .box2 .fimgbox{
  margin-top: -20%;
}
.pagesec-interior .interior .box2 .fimgtxtbox .txtbox{
  padding-top: 3rem;
  position: absolute;
  left: -50rem;
  bottom: 5rem;
}
.pagesec-interior .interior .box2 .fimgtxtbox .txtbox::before{
  top: 0rem;
  right: -20%;
  left: auto;
  height: 1px;
  width: 130%;
}
.pagesec-interior .interior .fimgbox{
  aspect-ratio: 3/2;
  height: 100%;
}

.pagesec-interior .splide__slide img{
  aspect-ratio: 3/2;
  object-fit: cover;
  height: auto;
  width: 100%;
}

.pagesec-interior .map{
  padding-top: 10rem;
}

@media only screen and (max-width: 1220px) {
  .pagesec-interior .interior .fimgtxtbox .txtbox{
    max-width: 90%;
  }
  .pagesec-interior .interior .fimgtxtbox .txtbox::before {
    left: -5%;
  }
}
@media only screen and (max-width: 1180px) {
  .pagesec-interior .interior .fimgtxtbox .txtbox{
    font-size: 1.7rem;
  }
  .pagesec-interior .interior .box2 .fimgtxtbox .txtbox {
    left: -40rem;
  }
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 820px) {
  .pagesec-interior .interior {
    padding-bottom: 8rem;
  }
  .pagesec-interior .interior .fttl span{
    font-size: 3.4rem;
    padding: 0 3rem;
  }
  .pagesec-interior .interior .fimgtxtbox{
    width: 60%;
  }
  .pagesec-interior .interior .box2 .fimgbox{
    margin: 0;
  }
  .pagesec-interior .interior .box2 .fimgtxtbox {
    margin: 6rem 0 0 auto;
  }
  .pagesec-interior .interior .fimgbox{
    width: 60%;
  }
  .pagesec-interior .interior .box2 .fimgtxtbox .txtbox {
    padding-top: 4rem;
    left: -25rem;
    bottom: -10rem;
  }
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
  .pagesec-interior .interior,
  .pagesec-interior .map{
    padding-left: 1rem;
  }
  .pagesec-interior .map {
    padding-top: 6rem;
  }
  .pagesec-interior .interior{
    padding-bottom: 0;
  }
  .pagesec-interior .interior .fttl{
    writing-mode: horizontal-tb;
    width: 100%;
  }
  .pagesec-interior .interior .fttl span{
    font-size: 2.4rem;
    padding: 0;
  }
  .pagesec-interior .interior .fimgtxtbox{
    margin: 3rem 0  0 auto;
    width: 100%;
  }
  .pagesec-interior .interior .fimgtxtbox .imgbox{
    margin-left: auto;
    width: 90%;
  }
  .pagesec-interior .interior .fimgbox {
    width: 90%;
  }
  .pagesec-interior .interior .fimgtxtbox .txtbox {
    font-size: 1.6rem;
    max-width: 100%;
  }
  .pagesec-interior .interior .fimgtxtbox .txtbox::before{
    display: none;
  }
  .pagesec-interior .interior .box1{
    margin: 0;
    padding: 0;
  }
  .pagesec-interior .interior .box2 {
    margin-top: 0;
    padding-top: 3rem;
  }
  .pagesec-interior .interior .box2 .fimgtxtbox {
    margin: 3rem 0 0 auto;
  }
  .pagesec-interior .interior .box2 .fimgtxtbox .txtbox{
    padding: 0;
    position: static;
  }
}