@charset "utf-8";
.map-box {
  margin-top: 2rem;
  width: 100%;
  height: 50rem;
  border-radius: 1.2rem;
  background: #F5F5F5;
  overflow: hidden;
}

.bl03+.map-box {
  margin-left: 2.4rem;
  width: calc(100% - 2.4rem);
}

@media (max-width: 767px) {
  .map-box {
    height: 30rem;
  }
}

.img-box {
  margin-top: 1.2rem;
  padding: 2rem;
  border-radius: 0.8rem;
  border: 0.5rem solid #EEE;
}

.img-box>a,
.course-box .map>a {
  position: relative;
  display: block;
}

.img-box>a::before,
.course-box .map>a::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 0.8rem;
  background: var(--sub-point) url(../img/contents/map-more.svg) no-repeat 0 0 / 100%;
}

.trekking .course-box .map>a::before {
  left: 1rem;
  top: 1rem;
}

.img-box img {
  width: 100%;
}

.img-box-list {
  display: flex;
  gap: 1.2rem;
}

.img-box-list>li {  
  flex: 1 1 25%;
  padding: 0.8rem;
  border-radius: 1.2rem;
  border: 0.5rem solid #EEE;
}

.img-box-list>li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 440px) {    
  .img-box-list {
    flex-direction: column;
  }
}

.staying .tab-box {
  margin-bottom: 4rem;
  padding-bottom: 2rem;
  border-bottom: 2px solid var(--sub-point);
}

.staying .tab-box>ul {
  display: flex;
  gap: .4rem;
  flex-wrap: wrap;
}

.staying .tab-box>ul>li>a {
  display: block;
  background: #efefef;
  padding:0.6rem 1.6rem;
  text-align: center;
  color: #444;
  font-weight: 500;
  letter-spacing: -0.02em;
  border-radius: 2rem;
}
.staying .tab-box>ul>li.active a {
  background: var(--sub-point);
  color:#fff;
}

@media (max-width: 440px) {    
  .staying .tab-box>ul>li{
    width: calc((100% - (.4rem * 2)) / 2);
  }
}

.sights .tab-box {
  margin-bottom: 4rem;
  padding: 2rem 3.2rem 2.4rem 3.2rem;
  border-radius: 1.2rem;
  border: 2px solid var(--sub-point);
  background: #FFF;
}

.sights .tab-box .tit {
  text-align: center;
  padding-bottom: 1.2rem;
  margin-bottom: 2rem;
  color: #444;
  font-weight: 600;
  letter-spacing: -0.02em;
  border-bottom: 1px solid #C6E3D9;
}

.sights .tab-box .tit span {
  color: var(--sub-point);
}

.sights .tab-box>ul {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
}

.sights .tab-box>ul>li>a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  text-align: center;
  min-width: 8.8rem;
  color: #444;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.sights .tab-box>ul>li>a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 2rem;
  border: 1px solid rgba(19, 139, 98, 0.20);
}

.sights .tab-box>ul>li.active>a::after {
  border: 2px solid var(--sub-point);
}

.sights .tab-box>ul>li>a::before {
  content: '';
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 2rem;
  background: #F7FCF5 url(../img/contents/sights-tab.svg) no-repeat 0 0 / 43.2rem;
}

.sights .tab-box>ul>li.active>a::before {
  background-color: #fff;
}

.sights .tab-box>ul>li:nth-child(2)>a::before {
  background-position: calc(-7.2rem * 1) 0;
}

.sights .tab-box>ul>li:nth-child(3)>a::before {
  background-position: calc(-7.2rem * 2) 0;
}

.sights .tab-box>ul>li:nth-child(4)>a::before {
  background-position: calc(-7.2rem * 3) 0;
}

.sights .tab-box>ul>li:nth-child(5)>a::before {
  background-position: calc(-7.2rem * 4) 0;
}

.sights .tab-box>ul>li:nth-child(6)>a::before {
  background-position: calc(-7.2rem * 5) 0;
}

.sights .search-top-box .input-group {
  gap: 0.8rem;
}

@media (max-width: 767px) {
  .sights .tab-box>ul {
    flex-wrap: wrap;
  }
}

.sights .search-top-box .sch-form-wrap .input-group .krds-form-select {
  width: 12rem;
}

@media (max-width: 767px) {
  .sights .search-top-box .sch-form-wrap .input-group .krds-form-select {
    width: 100%;
  }
}

.time-course {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin-top: 4rem;
}

.time-course dl:nth-child(odd) {
  --c: var(--sub-point);
  --p: #204D3E;
  --span: #689183;
  --dot: #ABC3BB;
  --bg: #F7FCF5;
}

.time-course dl:nth-child(even) {
  --c: var(--pointC);
  --p: var(--pointC);
  --span: #54518C;
  --dot: #CAC9D5;
  --bg: #F9F9FD;
}

.time-course dl.course-red {
  --c: #f13333;
  --p: var(--ft-c-basic);
  --span: var(--ft-c-basic);
  --dot: #ccc;
  --bg: #f5f5f5;
}

.time-course dl.course-yellow {
  --c: #ffe075;
  --p: var(--ft-c-basic);
  --span: var(--ft-c-basic);
  --dot: #ccc;
  --bg: #f5f5f5;
}

.time-course dl.course-yellow span {
  color: var(--ft-c-basic);
}

.time-course dl.course-blue {
  --c: #46b1ff;
  --p: var(--ft-c-basic);
  --span: var(--ft-c-basic);
  --dot: #ccc;
  --bg: #f5f5f5;
}

.time-course dt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--c);
  font-size: 1.6rem;
  font-weight: 500;
}

.time-course dt span {
  display: inline-block;
  padding: 0.8rem 3.6rem;
  color: #FFF;
  font-size: 1.7rem;
  font-weight: 700;
  border-radius: 1.2rem 1.2rem 0 0;
  background: var(--c)
}

.time-course dd {
  display: flex;
  flex-wrap: wrap;
  padding: 3.6rem;
  border-radius: 0 1.2rem 1.2rem 1.2rem;
  font-weight: 500;
  background: var(--bg);
}

.time-course dd p {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 1rem;
  color: var(--p);
}

.time-course dd p:has(.sfont) {
  flex-direction: column;
}

.time-course dd p .sfont {
  display: block;
  font-size: 0.8em;
}

.time-course dd>span {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-bottom: 3rem;
  color: var(--span);
  font-size: 1.4rem;
}

.time-course dd>span::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2.5rem;
  width: 100%;
  height: 0.3rem;
  background-color: var(--dot);
  mask-size: 1.4rem;
  mask-image: url(../img/contents/course-dot.svg);
  mask-repeat: repeat;
}
  
.time-course dd>span.dot {
  padding-bottom: 0;
}
  
.time-course dd>span.dot::before {
  top: calc(50% - 0.3rem / 2);
}

@media (max-width: 440px) {
  .time-course dt {
    gap: 1rem;
  }

  .time-course dt span {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  
  .time-course dd {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    padding: 2rem;
  }
  
  .time-course dd p {
    justify-content: flex-start;
    gap: 0.5rem;
    text-align: left;
    margin: 0;
  }
  
  .time-course dd p::before {
    content: '';
    width: 2rem;
    height: 2rem;
    background-color: var(--c);
    mask-size: 2rem;
    mask-image: url(../img/contents/course-check.svg);
    mask-repeat: no-repeat;
  }

  .time-course dl.course-yellow dd p::before {
    background-color: var(--ft-c-basic);
  }

  .time-course dd p:has(.sfont) {
    flex-direction: row;
  }  

  .time-course dd>span {
    align-items: flex-end;
    text-align: right;
    margin: 0;
    padding: 0;
  }

  .time-course dd>span::before {
    display: none;
  }
}

[class^="photo-thumb"] {
  display: flex;
  height: 51rem;
  gap: 2rem;
  margin-top: 3.2rem;
  margin-bottom: 3.2rem;
}

[class^="photo-thumb"] img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[class^="photo-thumb"] .photo {
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 1.2rem;
  overflow: hidden;
}

[class^="photo-thumb"] .photo .control {
  position: absolute;
  bottom: 2rem;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  margin: 0 auto;
  z-index: 2;
}

[class^="photo-thumb"] .photo .control button {
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: #fff url(/share/images/photo-arr.svg) no-repeat 0 0 / 100%;
}

[class^="photo-thumb"] .photo .control .next {
  transform: rotate(180deg);
}

[class^="photo-thumb"] .thumb {
  flex: 0 0 auto;
  width: 17.4rem;
}

[class^="photo-thumb"] .thumb>ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin: 0;
}

[class^="photo-thumb"] .thumb>ul:has(li:nth-last-child(5) ~ li) {
  justify-content: space-between;
}

[class^="photo-thumb"] .thumb>ul>li {
  width: 100%;
  height: 100%;
  border-radius: 1.2rem;
  overflow: hidden;
}

[class^="photo-thumb"] .thumb .swiper-slide-thumb-active {
  border: 0.3rem solid var(--sub-point);
}

[class^="photo-thumb"]+p {
  margin-left: 3.2rem;
  margin-right: 3.2rem;
}

.photo-thumb-vertical {
  flex-direction: column;
  align-items: center;
  height: auto;
}

.photo-thumb-vertical .photo {
  width: 100%;
  height: 51rem;
}

.photo-thumb-vertical .thumb {
  width: 100%;
}

.photo-thumb-vertical .thumb {
  height: 11.8rem;
}

.photo-thumb-vertical .thumb>ul {
  flex-direction: row;
}

@media (max-width: 767px) {
  .photo-thumb {
    flex-direction: column;
  }

  .photo-thumb .thumb {
    width: 100%;
    height: 11.8rem;
  }

  .photo-thumb .thumb>ul {
    flex-direction: row;
  }
}

@media (max-width: 440px) {
  .photo-thumb {
    height: auto;
    flex-direction: column;
  }

  .photo-thumb .photo .swiper-slide,
  .photo-thumb-vertical .photo {
    height: 25rem;
  }

  .photo-thumb .thumb,
  .photo-thumb-vertical .thumb {
    height: 7rem;
  }
}

.photo-box.bdb  {
  padding-bottom: 4.8rem;
  border-bottom: 1px solid #D4DDD1;
}

.photo-box.bdb:nth-last-of-type(1) {
  padding-bottom: 0;
  border-bottom: none;
}

.photo-box.bdt {
  margin-top: 4.8rem;
  padding-top: 4.8rem;
  border-top: 1px solid #D4DDD1;
}

.photo-box .photo {
  display: flex;
  gap: 1.2rem;
}

.photo-box .photo img {
  border-radius: 1.2rem;
  overflow: hidden;
}

.photo-box .photo img:only-child {
  width: 100%;
  height: 40rem;
  object-fit: cover;
}

.photo-box .photo.grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.2rem;
}

.photo-box .photo.grid img {
  width: 100%;
  height: 13.7rem;
  object-fit: cover;
}

.photo-box .photo.grid img:nth-child(1) {
  grid-row: span 2;
  grid-column: span 2;
  height: 28.6rem;
}

.photo-box .photo.grid.halpiac img:nth-child(6) {
  grid-row: span 1;
  grid-column: span 2;
}

.photo-box .photo.grid.kyodong {
  grid-template-columns: repeat(4, 1fr);
}

.photo-box .photo.grid.kyodong a:nth-child(1) {
  grid-row: span 2;
  grid-column: span 2;
  height: 28.6rem;
}

@media (max-width: 767px) {
  .photo-box .photo.grid {
    grid-template-columns: repeat(3, 1fr);
  }
  
  .photo-box .photo.grid img {
    height: 100% !important;
  }
  
  .photo-box .photo.grid.halpiac img:nth-child(6) {
    grid-row: auto;
    grid-column: auto;
  }
}

.photo-box .con {
  padding: 4.8rem 0 4.8rem 4.8rem;
  border-bottom: 1px solid #D4DDD1;
}

.photo-box .con:has(dt .sfont) {
  padding-top: 3rem;
}

.photo-box .con dt {
  margin-bottom: 2.8rem;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: normal;
}

.photo-box .con dt .sfont {
  font-size: 2.5rem;
}

.photo-box .con dd:has(p) {
  display: flex;
  gap: 4rem;
}

.photo-box .con dd+dd {
  margin-top: 4rem;
}

.photo-box .con dd p {
  flex: 1 1 50%;
}

.photo-box .con dd.info {
  position: relative;
  padding-left: 4rem;
}

.photo-box .con dd ul {
  margin: 0;
}

.photo-box .con a,
.photo-box .con .btn-wrap {
  margin-top: 2.8rem;
}

.photo-box .con .btn-wrap a {
  margin-top: 0;
}

.photo-box .con dd.info::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 2.6rem;
  height: 2.6rem;
  background: url(../img/contents/photo-box-info.svg) no-repeat 0 0 / 100%;
}

.photo-box .con dd.info span {
  color: var(--sub-point);
  font-weight: 500;
}

@media (max-width: 767px) {
  .photo-box .con {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .photo-box .con dd:has(p) {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}

.photo-box .photo-con {
  position: relative;
  display: flex;
  border-bottom: none;
  padding-bottom: 2rem;
}

.photo-box .photo-con .photo {
  flex: 0 0 50%;
  width: 100%;
  max-width: 42rem;
  height: 34.8rem;
  box-shadow: 2rem 2rem 0 0 #EEE;
  border-radius: 1.2rem;
}

.photo-box .photo-con .photo a {
  width: 100%;
  height: 100%;
}

.photo-box .photo-con .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo-box .photo-con .mark {
  position: absolute;
  right: 0;
  top: 0;
  max-width: 14rem;
  z-index: -1;
}

.photo-box .photo-con .con {
  padding: 4.8rem 0 0 4.8rem;
  border-bottom: none;
}

.photo-box .photo-con .con.pt_n {
  padding-top: 0;
}

.photo-box .photo-con .con dl+.bl03 {
  margin-left: 0;
}

@media (max-width: 767px) {
  .photo-box .photo-con .photo {
    flex-basis: auto;
    margin-right: 2rem;
    width: calc(100% - 2rem);
    max-width: 100%;
  }

  .photo-box .photo-con {
    flex-direction: column;
  }

  .photo-box .photo-con .mark {
    top: 40rem;
  }

  .photo-box .photo-con .con {
    padding-top: 4.8rem !important;
    padding-left: 2rem;
    border-bottom: none;
  }
  
  .photo-box .photo-con:has(.mark) .con {
    padding-right: 15rem;
  }
}

@media (max-width: 440px) {
  .photo-box .photo-con .photo {
    height: 25rem;
  }

  .photo-box .photo-con .mark {
    top: 28rem;
    width: 10rem;
  }
  
  .photo-box .photo-con:has(.mark) .con {
    padding-right: 10rem;
  }
}

.historty .photo-box .photo-con .con {
  padding-top: 2.4rem;
}

.historty .photo-box .photo-con .con>ul {
  margin: 0;
}

@media (max-width: 767px) {  
  .historty .photo-box .photo-con .con {
    padding-top: 4rem;
  }
}

.special .photo-box .photo-con .photo {
  max-width: 48rem;
}

.sedge .photo-box {
  padding-top: 4.8rem;
}

.sedge .photo-box .photo {
  width: 39rem;
  height: 26rem;
}

.sedge .photo-box .con {
  padding-top: 2.4rem;
}

.sedge .photo-box .con .bl-list {
  margin-left: 0;
}

@media (max-width: 767px) {  
  .sedge .photo-box .con {
    padding-top: 4rem;
  }
}

.farm {
  margin-top: 5rem;
}

.farm .photo-box .con {
  padding-top: 2.4rem;
}

.farm .photo-box .con .bl03 {
  margin-left: 0;
  margin-top: 2.8rem;
}

.photo-map {
  display: flex;
  gap: 2rem;
  margin-top: 2rem;
}

.photo-map>div {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.photo-map>div .box {
  width: 100%;
  height: 29.4rem;
  border-radius: 1.2rem;
  background: #F5F5F5;
  overflow: hidden;
}

.photo-map>div .box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 767px) {
  .photo-map {
    flex-direction: column;
  }
}

.trip-course {
  display: flex;
  align-items: center;
  row-gap: 2rem;
  margin-top: 2rem;
  padding: 3.6rem;
  border-radius: 1.2rem;
  background: #F7FCF5;
}

.bl03>li>.trip-course {
  margin-top: 0;
}

.trip-course>li {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 1rem;
  margin-right: 1rem;
  color: #204D3E;
  font-weight: 500;
}

.trip-course>li:has(.sr-only) {
  content: '';
  max-width: 4.2rem;
  width: 100%;
  height: 0.3rem;
  background-color: #ABC3BB;
  mask-size: 1.4rem;
  mask-image: url(../img/contents/course-dot.svg);
  mask-repeat: repeat;
}

.trip-course>li:nth-child(1)::before {
  display: none;
}

@media (max-width: 1280px) {
  .trip-course {
    flex-wrap: wrap;
  }

  .trip-course>li {
    flex: 0 0 auto;
  }
}

@media (max-width: 767px) {
  .trip-course {
      flex-direction: column;
      align-items: flex-start;
      row-gap: 0;
  }
  .trip-course>li {
      position: relative;
      text-align: left;
  }
  .trip-course>li::before {
     content: '';
     display: flex;
     width: 1.6rem;
     height: 1.6rem;
     background-color: #AAA;
     -webkit-mask-repeat: no-repeat;
     -webkit-mask-position: center center;
     -webkit-mask-size: contain;
     mask-repeat: no-repeat;
     mask-position: center center;
     mask-size: contain;
     -webkit-mask-image: url(/share/images/icon/ico_angle.svg);
     mask-image: url(/share/images/icon/ico_angle.svg);
  }
  .trip-course>li br {
      display: none;
  }
  .trip-course>li:nth-child(even) {
    display:none;
  }
}

.map-course {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
}

.map-course>div {
  flex: 1 1 50%;
}

.map-course .map-box {
  margin: 0;
}

.map-course .course-box {
  padding: 2rem 3.2rem;
  width: 100%;
}

.map-course .course-box ol {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding: 0 1.2rem;
  overflow: hidden;
}

.map-course .course-box ol::before {
  content: '';
  position: absolute;
  left: 2.5rem;
  top: 0;
  width: 0.3rem;
  height: 100%;
  background-color: #ABC3BB;
  mask-size: 0.3rem;
  mask-image: url(../img/contents/course-dot-vertical.svg);
  mask-repeat: repeat;
}

.map-course .course-box ol>li {
  display: flex;
  justify-content: space-between;
  z-index: 1;
}

.map-course .course-box ol>li p {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-weight: 500;
}

.map-course .course-box ol>li p>a {
  color: var(--sub-point);
  font-weight: 700;
}

.map-course .course-box ol>li p>a:hover {
  text-decoration: underline;
}

.map-course .course-box ol>li .num {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.8rem;
  height: 2.8rem;
  color: #FFF;
  font-weight: 600;
  border-radius: 2.8rem;
  background: var(--sub-point);
}

@media (max-width: 767px) {  
  .map-course {
    flex-direction: column;
  }
  
  .map-course>div {
    flex: 1 1 auto;
  }
}

.poster {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 2rem;
}

.poster>li {
  flex-basis: calc(33.3% - 4rem / 3);
  width: 100%;
  line-height: 0;
}

.poster>li img {
  width: 100%;
  height: 100%;
}

.poster.type-full {
  flex-direction: column;
  gap: 1rem;
}

.photo-program {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 3.2rem;
}

.photo-program>li {
  flex: 0 0 calc(33.3% - 4rem / 3);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 1.2rem;
  background: #F5F5F5;
  overflow: hidden;
}

.photo-program.col2>li {
  flex-basis: calc(50% - 1rem);
}

.photo-program.col4>li {
  flex-basis: calc(25% - 6rem / 4);
}

.photo-program>li img {
  flex: 1 1 auto;
}

.photo-program>li>div {
  flex: 0 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.4rem 2.2rem;
  font-size: 1.9rem;
  font-weight: 500;
}

.photo-program>li>div .sfont {
  font-size: 1.6rem;
}

.photo-program>li>div .break {
  color: #666;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .photo-program>li {
    flex-basis: calc(50% - 1rem) !important;
  }
}

@media (max-width: 440px) {
  .photo-program>li {
    flex-basis: 100% !important;
  }
}

.leaflet {
  display: flex;
  border-radius: 1.2rem;
  border: 1rem solid rgba(0, 0, 0, 0.05);
}

.leaflet img {
  width: 100%;
  height: 100%;
}

@media (max-width: 440px) {
  .leaflet {
    flex-direction: column;
  }
}

.donggwang-box {
  display: flex;
  justify-content: space-between;
}

.donggwang-box .bl03 {
  margin-top: 3.2rem;
}

.donggwang-box .photo-program {
  margin-top: 0;
  width: 23.4rem;
  height: 26rem;  
}

.donggwang-box .photo-program>li {
  flex-basis: 100%;
}

@media (max-width: 440px) {
  .donggwang-box {
    flex-direction: column;
    align-items: center;
    gap: 2rem;
  }

  .donggwang-box .photo-program {
    height: auto;
  }
}

.nadeul-stamp {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  margin-top: 3.2rem;
}

.nadeul-stamp>li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 1.6rem;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: normal;
  border-radius: 1.2rem;
}

.nadeul-stamp>li:nth-child(even) {
  background: #F5F5F5;
}

@media (max-width: 440px) {
  .nadeul-stamp {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

.trekking .info {
  margin-top: 3.3rem;
  margin-bottom: 2rem;
  color: var(--sub-point);
  font-weight: 500;
  padding: 1.2rem 2.4rem;
  border-radius: 0.8rem;
  opacity: 0.8;
  background: #EEFBF4;
}

.trekking .img-box {
  text-align: center;
  margin-bottom: 3.3rem;
  margin-top: 3.3rem;
  padding: 4rem 0;
}

.trekking .img-box img {
  width: 90%;
  max-width: 100%;
}

.trekking .course-box {
  display: flex;
  align-items: flex-start;
  gap: 2.4rem;
}

.trekking .course-box .map {
  border-radius: 1.6rem;
  border: 1px solid #309976;
  overflow: hidden;
}

.trekking .course-box .course  {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 31.5rem;
  width: 100%;
}

.trekking .course-box .course .info {
  text-align: center;
  margin: 0;
}

.trekking .course-box .course ol {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 0 0.8rem;
}

.trekking .course-box .course ol>li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.trekking .course-box .course ol>li>p {
  display: flex;
  align-items: center;
}

.trekking .course-box .course ol>li>p>a {
  color: var(--sub-point);
  font-weight: 700;
}

.trekking .course-box .course ol>li>p>a:hover {
  text-decoration: underline;
}

.trekking .course-box .course ol>li>p .txt,
.trekking .course-box .course ol>li>p .num {
  width: 3rem;
  text-align: center;
  margin-right: 1rem;
  height: 2.4rem;
  color: var(--sub-point);
  font-weight: 600;
  line-height: 2.4rem;
}

.trekking .course-box .course ol>li>p .num {
  position: relative;
  padding-right: 0.1rem;
  font-size: 1.5rem;
  letter-spacing: -0.2rem;
  z-index: 1;
}

.trekking .course-box .course ol>li>p .num::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 2.8rem;
  border: 1px solid var(--sub-point);
  background: #FFF;
  z-index: -1;
}

.trekking .course-box .course ol>li>p .km {
  margin-left: 0.4rem;
  color: #666;
  font-size: 1.5rem;
  font-weight: 500;
}

.trekking .course-box .course ol>li>a {
  display: block;
  width: 2rem;
  height: 2rem;
  background: url(/tour/img/contents/icon_location.svg) no-repeat 0 0 / 100%;
}

@media (max-width: 767px) {
  .trekking .course-box {
    flex-direction: column;
  }

  .trekking .course-box .course {
    max-width: 100%;
  }
}

.bike .course-box {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 3.3rem;
}

.bike .course {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3.2rem 3.6rem;
  gap: 0.8rem;
  border-radius: 1.2rem;
  background: #F7FCF5;
}

.bike .course>ul {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.bike .course>ul::before {
  content: '';
  position: absolute;
  left: 0;
  top: calc(50% - 0.3rem / 2);
  width: 100%;
  height: 0.3rem;
  background-color: #ABC3BB;
  mask-size: 1.4rem;
  mask-image: url(../img/contents/course-dot.svg);
  mask-repeat: repeat;
}

.bike .course>ul>li {
  flex: 1 1 auto;
  width: 100%;
  color: #204D3E;
  font-weight: 600;
  z-index: 1;
}

.bike .course>ul>li:has(ul) {
  flex: 0 0 auto;
  width: auto;
  padding: 0 1rem;
  background: #F7FCF5;
}
  
.bike .course>ul>li:nth-last-child(1) {
  display: flex;
  justify-content: flex-end;
}

.bike .course>ul>li .txt {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  padding: 0 1rem;
  background: #F7FCF5;
}

.bike .course>ul>li .txt span {
  padding: 0.1rem 0.8rem 0.2rem 0.8rem;
  color: var(--sub-point);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: normal;
  border-radius: 1.6rem;
  border: 0.2rem solid var(--sub-point);
  background: #FFF;
}

.bike .course>ul>li .info-txt {
  text-align: center;
  color: #204D3E;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: normal;
}

.bike .course>ul>li ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.8rem;
}

.bike .course>ul>li li {
  padding: 0 0.9rem;
  color: #FFF;
  font-size: 1.5rem;
  font-weight: 500;
  border-radius: 2.6rem;
  background: var(--sub-point);
}

.bike .course>ul>li li a {
  display: block;
}

.bike .course .info {
  text-align: center;
  color: #204D3E;
  font-weight: 600;
}

.bike .course .info span {
  color: var(--sub-point);
}

.bike .course-box .map {
  width: 100%;
  border-radius: 0.8rem;
  overflow: hidden;
}

.bike .course-box .map img {
  width: 100%;
}

@media (max-width: 767px) {
  .bike .course>ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .bike .course>ul::before {
    top: 3rem;
  }
  
  .bike .course>ul>li:nth-last-child(1) {
    grid-row: 1;
    grid-column: 2;
  }
  
  .bike .course>ul>li:has(ul) {
    margin-top: 1.2rem;
    padding: 1.2rem 1rem;
    border-radius: 0.8rem;
    background: #FFF;    
    grid-column: span 2;
  }
}

.new-site,
.outlink {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}

.new-site>p,
.outlink .imgbox {
  padding-top: 3.1rem;
  max-width: 64rem;
  border-radius: 0.8rem;
  border: 1px solid rgba(0, 0, 0, 0.06);
  background: url(../img/contents/new-site.svg) no-repeat 0 0 / 100%;
  box-shadow: 0 0 0.2rem 0 rgba(0, 0, 0, 0.05), 0 0.4rem 0.8rem 0 rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.flex-con .outlink>p {
	margin-top: 0;
}

.flex-con .outlink .btn-wrap {
	width: auto;
}

.flex-con .outlink .btn-wrap .btn {
	flex: 0 0 auto;
}

@media all and (max-width: 767px) {
	.flex-con:has(.outlink) {
		gap: 4rem;
	}
}

.parking>div {
  display: flex;
  padding-top: 4.8rem;
  margin-top: 4.8rem;
  border-top: 1px solid #D4DDD1;
}

.parking>div:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.parking>div .photo {
  position: relative;
  width: 40rem;
  height: 30rem;
  border-radius: 1rem;
  box-shadow: 1.5rem 1.5rem 0 0 #EEE;
  overflow: hidden;
}

.parking>div .photo .control {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2rem;
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  margin: 0 auto;
  z-index: 2;
}

.parking>div .photo .control button {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: #fff url(../img/contents/photo-arr.svg) no-repeat 0 0 / 100%;
}

.parking>div .photo .control .next {
  transform: rotate(180deg);
}

.parking>div .photo .swiper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.parking>div .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.parking>div .con {
  padding-top: 2.4rem;
  padding-left: 4.8rem;
}

@media (max-width: 767px) {
  .parking>div {
    flex-direction: column;
  }
  
  .parking>div .photo {
    width: calc(100% - 1.5rem);
  }

  .parking>div .con {
    padding-top: 4.8rem;
    padding-left: 2.4rem;
  }
}

.heritage {
  padding-top: 9.6rem;
  padding-left: 8rem;
  width: 100%;
  height: 50.2rem;
  border-radius: 4rem 1.2rem 20rem 1.2rem;
  background: url(../img/contents/heritage-ic.svg) no-repeat left 35% bottom / 31.8rem, url(../img/contents/heritage-bg.png) no-repeat right bottom / 53.3rem, linear-gradient(84deg, #F7FCF5 9.1%, #FFF 54.99%, #D7F0FF 100%);
}

.heritage .tit {
  font-size: 2.8rem;
  font-weight: 600;
}

.heritage .tit span {
  display: block;
  color: var(--sub-point);
  font-size: 1.5rem;
  font-weight: 400;
}

.heritage .txt {
  margin-top: 2.4rem;
  margin-bottom: 2.4rem;
  font-size: 1.6rem;
}

@media (max-width: 440px) {
  .heritage {
    padding: 5rem;
    border-radius: 4rem 1.2rem 1.2rem 1.2rem;
    background-size: 40%, 70%, 100%;
  }
}

.present {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding: 2rem 3.2rem 2.4rem 3.2rem;
  width: 100%;
  border-radius: 1.2rem;
  border: 2px solid var(--sub-point);
  background: #FFF;
}

.present .tit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.2rem;
  width: 100%;
  border-bottom: 1px solid #C6E3D9;
}

.present.tit>p {
  color: #444;
  text-align: center;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.present .tit>p b {
  color: var(--sub-point);
  font-weight: 600;
  letter-spacing: -0.02em;
}

.present>ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
}

.present>ul a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  text-align: center;
  color: #444;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.present>ul a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 2rem;
  border: 1px solid rgba(19, 139, 98, 0.20);
  background: #F7FCF5;
  transition: var(--transition);
}

.present>ul a:hover::after {
  border: 2px solid var(--sub-point);
  background: #fff;
}

.present>ul a::before {
  content: '';
  width: 7.2rem;
  height: 7.2rem;
  background: url(../img/contents/present.svg) no-repeat 0 0 / calc(7.2rem * 3);
  z-index: 1;
}

.present>ul li:nth-child(2) a::before {
  background-position: -7.2rem 0;
}

.present>ul li:nth-child(3) a::before {
  background-position: calc(-7.2rem * 2) 0;
}

@media (max-width: 767px) {
  .present .tit {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
  }

  .present>ul {
    gap: 2rem;
  }
}

.event-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}

.event-list>li {
  flex: 1 1 calc(50% - 1.5rem);
  display: flex;
  flex-direction: column;
  border-radius: 0 5rem 3rem 3rem;
  background: #F5F5F5;;
  overflow: hidden;
}

.event-list>li .img {
  height: 28rem;
  overflow: hidden;
}

.event-list>li .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.event-list>li .con {
  display: flex;
  flex-direction: column;
  padding: 3rem 2rem;
  gap: 2rem;
}

.event-list>li .con .tit {
  position: relative;
  padding-bottom: 1.6rem;
  text-align: center;
  color: #222;
  font-family: var(--ft-family-one);
  font-size: 2.4rem;
  line-height: normal;
}

.event-list>li .con .tit::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0.3rem;
  background: linear-gradient(to right, #B2E59C 0%, var(--sub-point) 100%);
}

.event-list>li .con .tit span {
  font-family: var(--ft-family);
  font-weight: 700;
}

.event-list>li .con ul {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding: 0 1rem;
}

.event-list>li .con ul>li {
  display: flex;
  gap: 2rem;
  position: relative;
  padding-left: 1.1rem;
  color: var(--ft-c-sub);
  font-weight: 500;
}

.event-list>li .con ul>li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 0.2rem;
  background: var(--sub-point);
}

.event-list>li .con ul>li span {
  color: var(--ft-c-basic);
  text-align: justify;
  text-align-last: justify;
  width: 5.9rem;
  font-weight: 700;
}

.event-list>li .con a {
  border-radius: 2.6rem;
}

@media (max-width: 767px) {
  .event-list>li {
    flex-basis: 100%;
  }
}