body {
  background-color: #F0FAFF;
}
body .contentArea {
  padding-top: 0;
}

.secPageHeader .headerIn {
  position: relative;
  z-index: 2;
  height: 100%;
}
.secPageHeader .headerIn .hLogo {
  position: absolute;
  margin: 0;
}
.secPageHeader .headerIn .hNav {
  position: absolute;
  background: #ffffff;
}
.secPageHeader .headerIn .hNav .hNavIn {
  position: relative;
}
.secPageHeader .headerIn .hNav .hNavIn .bgCurve {
  position: absolute;
  background: url(../images/header_curve.svg);
  aspect-ratio: 69/34;
}
.secPageHeader .headerIn .hNav .hNavIn .hNavList {
  display: flex;
  justify-content: space-evenly;
}
.secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #282828;
}
.secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink .navIcon {
  display: block;
}
.secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink .navName {
  font-weight: 700;
  color: #282828;
  letter-spacing: 0.02em;
}
.secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink.current .navName {
  color: #93CF9C;
}

@media only screen and (max-width: 1199px) {
  .secPageHeader {
    height: 70px;
    background: #ffffff;
  }
  .secPageHeader .headerIn .hLogo {
    top: 14px;
    left: 16px;
    width: min(75%, 260px);
  }
  .secPageHeader .headerIn .hNav {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .secPageHeader {
    height: 180px;
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 117px, transparent 117px, transparent 100%);
  }
  .secPageHeader .headerIn .hLogo {
    top: clamp(20px, 2.5vw, 30px);
    left: clamp(20px, 2.08vw, 30px);
  }
  .secPageHeader .headerIn .hNav {
    width: 594px;
    height: 180px;
    top: 0;
    right: 0;
    border-radius: 0 0 0 60px;
  }
  .secPageHeader .headerIn .hNav .hNavIn {
    width: 100%;
  }
  .secPageHeader .headerIn .hNav .hNavIn .bgCurve {
    width: 69px;
    left: -61px;
    top: 116px;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList {
    padding: 32px 0 0 0;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink {
    min-width: 56px;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink .navIcon {
    height: clamp(50px, 6vw, 72px);
    aspect-ratio: 74/72;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink .navName {
    font-size: clamp(13px, 1.5vw, 18px);
    margin-top: 4px;
    line-height: 1.4;
    white-space: nowrap;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink:nth-child(2) .navIcon {
    height: clamp(44px, 5.2vw, 62px);
    aspect-ratio: 73/62;
    margin-top: 6px;
    margin-bottom: 4px;
  }
  .secPageHeader .headerIn .hNav .hNavIn .hNavList .hNavLink:nth-child(3) .navIcon {
    height: clamp(48px, 5.6vw, 67px);
    aspect-ratio: 48/67;
    margin-top: 2px;
    margin-bottom: 3px;
  }
}
.secMv {
  position: relative;
}
.secMv .mvSliderWrap {
  position: relative;
}
.secMv .mvSliderWrap .mvSlider {
  width: 100%;
  overflow: visible !important;
}
.secMv .mvSliderWrap .mvSlider .swiper-slide {
  overflow: hidden;
}
.secMv .mvSliderWrap .decoWrap {
  position: absolute;
  height: 100%;
  top: 0;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn {
  position: relative;
  width: 100%;
  height: 100%;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco {
  position: absolute;
  pointer-events: none;
  z-index: 3;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco.mvDeco01 {
  aspect-ratio: 224/100;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco.mvDeco02 {
  aspect-ratio: 229/120;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco.mvDeco03 {
  aspect-ratio: 159/71;
}
.secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco.mvDeco04 {
  aspect-ratio: 124/170;
}

@media only screen and (max-width: 767px) {
  .secMv {
    padding: 40px 0 40px;
  }
  .secMv .mvSliderWrap {
    width: min(88vw, 390px);
    margin: 0 auto;
  }
  .secMv .mvSliderWrap .mvSlider .swiper-slide {
    border-radius: 40px;
  }
  .secMv .mvSliderWrap .decoWrap {
    width: 100%;
    height: 100%;
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco01 {
    top: -10px;
    left: -20px;
    width: 80px;
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco02 {
    top: -10px;
    right: -20px;
    width: 160px;
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco03 {
    top: 45%;
    right: 0;
    width: 60px;
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco04 {
    bottom: -20px;
    right: -20px;
    width: 60px;
  }
}
@media print, screen and (min-width: 768px) {
  .secMv {
    padding: clamp(40px, 5vw, 64px) 0 30px;
  }
  .secMv .mvSliderWrap .mvSlider .swiper-slide {
    width: min(92vw, 885px);
    border-radius: clamp(60px, 10.8vw, 130px);
  }
  .secMv .mvSliderWrap .decoWrap {
    width: min(92vw, 1100px);
    left: calc((100% - min(92vw, 1100px)) / 2);
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco01 {
    left: 0;
    top: -26px;
    width: clamp(175px, 22.4vw, 224px);
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco02 {
    right: 0;
    top: 10px;
    width: clamp(180px, 16vw, 229px);
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco03 {
    right: 0;
    top: 40%;
    width: clamp(125px, 15.9vw, 159px);
  }
  .secMv .mvSliderWrap .decoWrap .decoWrapIn .mvDeco04 {
    right: 0;
    bottom: -4px;
    width: clamp(100px, 12.4vw, 124px);
  }
}
.secAbout .secAboutIn {
  position: relative;
  margin: 0 auto;
}
.secAbout .secAboutIn .aboutDecoCloverL {
  aspect-ratio: 114/105;
}
.secAbout .secAboutIn .aboutDecoFlowerBottomR {
  aspect-ratio: 116/136;
}
.secAbout .secAboutIn .aboutDeco {
  position: absolute;
  pointer-events: none;
  z-index: 0;
}
.secAbout .secAboutIn .aboutIn {
  position: relative;
  margin: 0 auto;
}
.secAbout .secAboutIn .aboutIn .aboutHead {
  text-align: center;
}
.secAbout .secAboutIn .aboutIn .aboutHead .aboutLabel {
  color: #93CF9C;
  letter-spacing: 0.05em;
  font-weight: 500;
}
.secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle {
  color: #282828;
  font-weight: 700;
}
.secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle .aboutTitleHl {
  background: linear-gradient(transparent 70%, #CDEDC0 70%);
  padding: 0 2px;
}
.secAbout .secAboutIn .aboutIn .aboutDesc {
  color: #282828;
  font-weight: 500;
}
.secAbout .secAboutIn .aboutIn .aboutDesc .aboutDescHl {
  background: linear-gradient(transparent 70%, #CDEDC0 70%);
  padding: 0 2px;
}
.secAbout .secAboutIn .aboutIn .aboutCard {
  position: relative;
  background: transparent;
  border: 2px solid #3B8A6E;
  border-radius: 20px;
  margin: 0 auto;
}
.secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesL {
  aspect-ratio: 319/247;
}
.secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesR {
  aspect-ratio: 319/247;
}
.secAbout .secAboutIn .aboutIn .aboutCard .cardTitle {
  text-align: center;
  color: #3B8A6E;
  font-weight: 700;
  margin: 0;
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-color: #282828;
}
.secAbout .secAboutIn .aboutIn .aboutCard .checkList {
  display: grid;
  justify-content: center;
}
.secAbout .secAboutIn .aboutIn .aboutCard .checkList .checkItem {
  display: flex;
  align-items: center;
  color: #282828;
  font-weight: 500;
}
.secAbout .secAboutIn .aboutIn .aboutCard .checkList .checkItem::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 7px;
  border-left: 2px solid #E17D7D;
  border-bottom: 2px solid #E17D7D;
  transform: rotate(-45deg);
  flex-shrink: 0;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalTitle {
  text-align: center;
  color: #3B8A6E;
  font-weight: 700;
  margin: 0;
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-color: #282828;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList {
  display: flex;
  flex-direction: column;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem {
  background-color: #ffffff;
  border-radius: 20px;
  display: flex;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade {
  display: flex;
  align-items: center;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade .gradeDot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin-right: 10px;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade .gradeText {
  font-weight: 500;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade1 .gradeDot {
  background-color: #64ADF1;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade1 .gradeText {
  color: #64ADF1;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade2 .gradeDot {
  background-color: #48B08B;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade2 .gradeText {
  color: #48B08B;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade3 .gradeDot {
  background-color: #9F87C7;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade.grade3 .gradeText {
  color: #9F87C7;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalLine {
  background: #3B8A6E;
  width: 2px;
}
.secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalDesc {
  flex: 1;
  color: #282828;
  font-weight: 500;
  margin: 0;
}
.secAbout .secAboutIn .aboutIn .aboutDecoFlowerR {
  aspect-ratio: 107/191;
}
.secAbout .secAboutIn .aboutIn .infoList {
  margin: 0 auto;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow {
  display: flex;
  align-items: baseline;
  background: url(../images/info_border_dot.svg) center bottom no-repeat;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow:last-of-type {
  background: none;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow .infoLabel {
  background-color: #93CF9C;
  color: #ffffff;
  font-weight: 700;
  border-radius: 3px;
  text-align: center;
  flex-shrink: 0;
  margin: 0;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue {
  flex: 1;
  color: #282828;
  font-weight: 500;
  margin: 0;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow {
  display: flex;
}
.secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow .timeDay {
  flex-shrink: 0;
  color: #93CF9C;
}
@media only screen and (max-width: 767px) {
  .secAbout {
    padding: 60px 0 0 0;
  }
  .secAbout .secAboutIn {
    padding: 0 0 80px 0;
  }
  .secAbout .secAboutIn .aboutDecoButterfly {
    top: -40px;
    left: -20px;
    width: 60px;
  }
  .secAbout .secAboutIn .aboutDecoCloverL {
    bottom: 20px;
    left: 8px;
    width: 70px;
  }
  .secAbout .secAboutIn .aboutDecoFlowerBottomR {
    bottom: 20px;
    right: 8px;
    width: 70px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead {
    margin-bottom: 24px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutLabel {
    font-size: 12px;
    margin-bottom: 8px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle {
    font-size: clamp(14px, 5.13vw, 20px);
    line-height: 1.5;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle .aboutTitleHl {
    background: linear-gradient(transparent 75%, #CDEDC0 75%);
  }
  .secAbout .secAboutIn .aboutIn .aboutDesc {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 32px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard {
    padding: 24px 20px;
    margin-bottom: 32px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesL {
    top: -50px;
    left: -120px;
    width: 180px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesR {
    top: -50px;
    right: -120px;
    width: 180px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .cardTitle {
    font-size: clamp(14px, 4.36vw, 17px);
    line-height: 1.7;
    margin-bottom: 16px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .checkList {
    grid-template-columns: 1fr;
    row-gap: 8px;
    -moz-column-gap: 16px;
         column-gap: 16px;
    margin-bottom: 28px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .checkList .checkItem {
    font-size: 14px;
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalTitle {
    font-size: clamp(14px, 4.62vw, 18px);
    margin-bottom: 16px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList {
    row-gap: 14px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem {
    flex-direction: column;
    padding: 14px 16px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade {
    border-right: none;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 8px;
    margin-bottom: 8px;
    width: 100%;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade .gradeText {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalDesc {
    font-size: 14px;
    line-height: 1.7;
  }
  .secAbout .secAboutIn .aboutIn .aboutDecoFlowerR {
    bottom: -30px;
    right: -20px;
    width: 60px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow {
    flex-direction: column;
    padding: 14px 0;
    row-gap: 8px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoLabel {
    width: 120px;
    height: 22px;
    line-height: 22px;
    font-size: 13px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue {
    font-size: 14px;
    line-height: 1.4;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow {
    flex-direction: column;
    margin-bottom: 12px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow .timeDay {
    font-weight: 700;
  }
}
@media print, screen and (min-width: 768px) {
  .secAbout {
    padding: 60px 0 0px 0;
  }
  .secAbout .secAboutIn {
    width: min(100%, 990px);
    padding: 0 0 100px 0;
  }
  .secAbout .secAboutIn .aboutDecoButterfly {
    top: -20px;
    left: -20px;
    width: 110px;
  }
  .secAbout .secAboutIn .aboutDecoCloverL {
    bottom: 50px;
    left: -150px;
    width: 114px;
  }
  .secAbout .secAboutIn .aboutDecoFlowerBottomR {
    bottom: 60px;
    right: -155px;
    width: 116px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead {
    margin-bottom: 32px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutLabel {
    font-size: clamp(13px, 1.33vw, 16px);
    margin-bottom: 12px;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle {
    font-size: clamp(16px, 2.17vw, 26px);
    line-height: 1;
  }
  .secAbout .secAboutIn .aboutIn .aboutHead .aboutTitle .aboutTitleHl {
    background: linear-gradient(transparent 75%, #CDEDC0 75%);
  }
  .secAbout .secAboutIn .aboutIn .aboutDesc {
    font-size: clamp(13px, 1.5vw, 18px);
    line-height: 2.8;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: clamp(40px, 5vw, 60px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard {
    padding: clamp(40px, 5vw, 60px) clamp(30px, 6.7vw, 80px) clamp(30px, 4.2vw, 50px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesL {
    top: 0px;
    left: -225px;
    width: 319px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .aboutDecoLeavesR {
    top: 0px;
    right: -225px;
    width: 319px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .cardTitle {
    font-size: clamp(16px, 2.17vw, 26px);
    margin-bottom: clamp(24px, 3vw, 36px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .checkList {
    grid-template-columns: repeat(2, auto);
    -moz-column-gap: clamp(40px, 7.5vw, 90px);
         column-gap: clamp(40px, 7.5vw, 90px);
    row-gap: 8px;
    margin-bottom: clamp(24px, 3vw, 36px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .checkList .checkItem {
    font-size: clamp(13px, 1.5vw, 18px);
    -moz-column-gap: 14px;
         column-gap: 14px;
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalTitle {
    font-size: clamp(16px, 2.17vw, 26px);
    margin-bottom: clamp(20px, 2.3vw, 28px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList {
    row-gap: clamp(12px, 1.5vw, 18px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem {
    padding: clamp(14px, 1.6vw, 20px) clamp(20px, 2.5vw, 30px);
    -moz-column-gap: clamp(16px, 3%, 24px);
         column-gap: clamp(16px, 3%, 24px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade {
    width: clamp(90px, 10.8vw, 100px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalGrade .gradeText {
    font-size: clamp(13px, 1.67vw, 20px);
  }
  .secAbout .secAboutIn .aboutIn .aboutCard .goalList .goalItem .goalDesc {
    font-size: clamp(13px, 1.5vw, 18px);
    line-height: 1.7;
  }
  .secAbout .secAboutIn .aboutIn .aboutDecoFlowerR {
    bottom: 0px;
    right: -62px;
    width: 107px;
  }
  .secAbout .secAboutIn .aboutIn .infoList {
    margin-top: 80px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow {
    padding: 32px 0;
    -moz-column-gap: 24px;
         column-gap: 24px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoLabel {
    width: 146px;
    height: 25px;
    line-height: 25px;
    font-size: clamp(13px, 1.33vw, 16px);
    margin-top: 4px;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue {
    font-size: clamp(13px, 1.33vw, 16px);
    line-height: 1.7;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow {
    -moz-column-gap: 4px;
         column-gap: 4px;
    padding: 4px 0 8px 0;
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow .timeDay {
    width: 165px;
    font-size: clamp(13px, 1.17vw, 14px);
  }
  .secAbout .secAboutIn .aboutIn .infoList .infoRow .infoValue .timeRow .timeHour {
    font-size: clamp(13px, 1.33vw, 16px);
  }
}
.secState {
  background-color: #BEEAC5;
}
.secState .stateHead {
  text-align: center;
  color: #ffffff;
}
.secState .stateHead .stateLabel {
  font-weight: 500;
  letter-spacing: 0.05em;
}
.secState .stateHead .stateTitle {
  font-weight: 700;
}
.secState .stateSliderWrap {
  position: relative;
  margin: 0 auto;
}
.secState .stateSliderWrap .stateSlider .swiper-slide {
  border-radius: 20px;
  overflow: hidden;
  transform-origin: bottom center;
  transition: transform 0.4s ease;
  border: solid 5px #ffffff;
}
.secState .stateSliderWrap .stateSlider .swiper-slide:not(.swiper-slide-active) {
  transform: scale(0.844);
}
.secState .stateSliderWrap .stateSlider .stateSliderBtn {
  position: absolute;
  z-index: 10;
  background-color: #ffffff;
  border-radius: 50%;
  cursor: pointer;
  aspect-ratio: 1/1;
  background-position: center center;
  background-repeat: no-repeat;
}
.secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderPrev {
  background-image: url(../../shared/images/arrow_green_left.svg);
}
.secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderNext {
  background-image: url(../../shared/images/arrow_green_right.svg);
}
.secState .stateSliderWrap .stateCaption {
  background-color: #ffffff;
  border-radius: 10px;
  text-align: center;
  color: #282828;
  font-weight: 500;
  margin: 0 auto;
}
.secState .stateInfoList {
  display: flex;
}
.secState .stateInfoList .stateInfoBox {
  position: relative;
  background-color: #ffffff;
  border-radius: 40px;
}
.secState .stateInfoList .stateInfoBox .stateInfoTitleWrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
}
.secState .stateInfoList .stateInfoBox .stateInfoTitleWrap .stateInfoTitle {
  position: relative;
  background-color: #DDF5D4;
  font-weight: 700;
  border-radius: 50px;
  text-align: center;
  border: solid 4px #ffffff;
}
.secState .stateInfoList .stateInfoBox .stateInfoTitleWrap .stateInfoTitle::after {
  content: "";
  position: absolute;
  background: #DDF5D4;
  width: 12px;
  height: 10px;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  left: calc(50% - 6px);
  bottom: -9px;
}
.secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemBullet {
  border-radius: 50%;
  background-color: #93CF9C;
}
.secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemName {
  color: #93CF9C;
  font-weight: 700;
}
.secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemDesc {
  color: #282828;
  font-weight: 500;
}
.secState .stateInfoList .stateInfoBox .stateInfoEvents {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.secState .stateInfoList .stateInfoBox .stateInfoEvents .eventItem {
  display: flex;
  align-items: center;
  color: #282828;
  font-weight: 500;
}
.secState .stateInfoList .stateInfoBox .stateInfoEvents .eventItem::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #93CF9C;
  flex-shrink: 0;
}
.secState .stateInfoList .stateInfoBox .stateInfoNote {
  color: #282828;
  font-weight: 500;
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .secState {
    padding: 60px 0 60px;
  }
  .secState .stateHead {
    margin-bottom: 16px;
  }
  .secState .stateHead .stateLabel {
    font-size: 12px;
    margin-bottom: 0px;
  }
  .secState .stateHead .stateTitle {
    font-size: clamp(14px, 5.13vw, 20px);
  }
  .secState .stateSliderWrap {
    margin-bottom: 50px;
  }
  .secState .stateSliderWrap .stateSlider .swiper-slide {
    border-radius: 16px;
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn {
    width: 40px;
    top: calc(50% - 20px);
    background-size: 16px;
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderPrev {
    left: -20px;
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderNext {
    right: -20px;
  }
  .secState .stateSliderWrap .stateCaption {
    width: 90%;
    font-size: clamp(14px, 3.85vw, 15px);
    padding: 6px 0;
    margin-top: 16px;
  }
  .secState .stateInfoList {
    flex-direction: column;
    row-gap: 50px;
  }
  .secState .stateInfoList .stateInfoBox {
    padding: 40px 24px 24px;
    border-radius: 20px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoTitleWrap {
    top: -20px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoTitleWrap .stateInfoTitle {
    font-size: clamp(14px, 4.36vw, 17px);
    padding: 4px 0;
    width: 78%;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    -moz-column-gap: 8px;
         column-gap: 8px;
    margin-bottom: 8px;
    font-size: 14px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemBullet {
    width: 8px;
    height: 8px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemDesc {
    width: 100%;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoEvents {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 8px;
    font-size: 14px;
    margin-bottom: 12px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoEvents .eventItem {
    -moz-column-gap: 6px;
         column-gap: 6px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoNote {
    font-size: 13px;
  }
}
@media print, screen and (min-width: 768px) {
  .secState {
    padding: clamp(60px, 8.3vw, 100px) 0 clamp(80px, 10vw, 120px);
  }
  .secState .stateHead {
    margin-bottom: clamp(28px, 3.3vw, 40px);
  }
  .secState .stateHead .stateLabel {
    font-size: clamp(13px, 1.33vw, 16px);
    margin-bottom: 8px;
  }
  .secState .stateHead .stateTitle {
    font-size: clamp(16px, 2.17vw, 26px);
  }
  .secState .stateSliderWrap {
    margin-bottom: clamp(50px, 6.7vw, 80px);
  }
  .secState .stateSliderWrap .stateSlider .swiper-slide {
    width: min(40vw, 500px);
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn {
    width: 60px;
    background-size: 22px;
    top: calc(50% - 30px);
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderPrev {
    left: calc(50% - min(20vw, 250px) - clamp(22px, 2.5vw, 30px));
  }
  .secState .stateSliderWrap .stateSlider .stateSliderBtn.stateSliderNext {
    right: calc(50% - min(20vw, 250px) - clamp(22px, 2.5vw, 30px));
  }
  .secState .stateSliderWrap .stateCaption {
    width: min(40vw, 500px);
    height: 40px;
    line-height: 40px;
    font-size: clamp(13px, 1.33vw, 16px);
    margin-top: 20px;
  }
  .secState .stateInfoList {
    justify-content: space-between;
  }
  .secState .stateInfoList .stateInfoBox {
    width: min(49%, 530px);
    padding: 54px 4.4% 30px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoTitleWrap {
    top: -24px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoTitleWrap .stateInfoTitle {
    font-size: clamp(14px, 1.83vw, 22px);
    padding: 4px 0;
    width: 74%;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    height: 100%;
    padding: 0 0 20px 0;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem {
    display: flex;
    align-items: baseline;
    font-size: clamp(13px, 1.33vw, 16px);
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemBullet {
    width: 10px;
    height: 10px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemName {
    width: 24%;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoItems .stateInfoItem .itemDesc {
    width: calc(76% - 30px);
  }
  .secState .stateInfoList .stateInfoBox .stateInfoEvents {
    -moz-column-gap: 24px;
         column-gap: 24px;
  }
  .secState .stateInfoList .stateInfoBox .stateInfoEvents .eventItem {
    -moz-column-gap: 8px;
         column-gap: 8px;
    font-size: clamp(13px, 1.33vw, 16px);
  }
  .secState .stateInfoList .stateInfoBox .stateInfoNote {
    font-size: clamp(13px, 1.33vw, 16px);
    width: -moz-fit-content;
    width: fit-content;
    margin: 16px auto 0 auto;
  }
}
.secContactAccess {
  position: relative;
}
.secContactAccess .secContactIn {
  position: relative;
}
.secContactAccess .secContactIn .contactBlock {
  margin: 0 auto;
}
.secContactAccess .secContactIn .contactBlock .caHead {
  text-align: center;
}
.secContactAccess .secContactIn .contactBlock .caHead .caLabel {
  font-family: "Quicksand", sans-serif;
  color: #93CF9C;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.secContactAccess .secContactIn .contactBlock .caHead .caTitle {
  color: #282828;
  font-weight: 700;
}
.secContactAccess .secContactIn .contactBlock .contactList {
  display: flex;
  justify-content: space-between;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox {
  position: relative;
  background-color: #EFFDEA;
  border-radius: 40px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxTitle {
  position: absolute;
  background-color: #93CF9C;
  color: #ffffff;
  border-radius: 50px;
  font-weight: 700;
  text-align: center;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxTitle::after {
  content: "";
  position: absolute;
  background: #93CF9C;
  width: 12px;
  height: 10px;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  left: calc(50% - 6px);
  bottom: -9px;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText {
  color: #282828;
  font-weight: 500;
  margin: 0;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneNumber {
  display: block;
  color: #282828;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.2;
  font-family: "Quicksand", sans-serif;
}
.secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneHours {
  color: #282828;
  font-weight: 500;
  margin: 8px 0 0;
}
.secContactAccess .secContactIn .accessBlock {
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
.secContactAccess .secContactIn .accessBlock .caHead {
  text-align: center;
}
.secContactAccess .secContactIn .accessBlock .caHead .caLabel {
  color: #93CF9C;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 0;
}
.secContactAccess .secContactIn .accessBlock .caHead .caTitle {
  color: #282828;
  font-weight: 700;
  margin: 0;
}
.secContactAccess .secContactIn .accessBlock .accessMap {
  margin: 0 auto;
  overflow: hidden;
  border-radius: 20px;
}
.secContactAccess .secContactIn .accessBlock .accessMap .mapFrame {
  display: block;
  width: 100%;
  border: 0;
}
.secContactAccess .secContactIn .accessBlock .accessAddr {
  display: flex;
  justify-content: center;
}
.secContactAccess .secContactIn .accessBlock .accessAddr .accessAddrLabel {
  font-weight: 700;
}
.secContactAccess .secContactIn .accessBlock .accessAddr .accessAddrValue {
  font-weight: 500;
}
.secContactAccess .secContactIn .caDeco {
  position: absolute;
  pointer-events: none;
  z-index: 0;
}
.secContactAccess .secContactIn .caDeco.caDecoBalloon {
  aspect-ratio: 178/226;
}
.secContactAccess .secContactIn .caDeco.caDecoSky {
  aspect-ratio: 199/168;
}

@media only screen and (max-width: 767px) {
  .secContactAccess {
    padding: 60px 0 60px;
  }
  .secContactAccess .secContactIn {
    padding: 0 0 60px 0;
  }
  .secContactAccess .secContactIn .contactBlock {
    margin-bottom: 50px;
  }
  .secContactAccess .secContactIn .contactBlock .caHead {
    margin-bottom: 32px;
  }
  .secContactAccess .secContactIn .contactBlock .caHead .caLabel {
    font-size: 12px;
    margin-bottom: 6px;
  }
  .secContactAccess .secContactIn .contactBlock .caHead .caTitle {
    font-size: clamp(14px, 5.13vw, 20px);
  }
  .secContactAccess .secContactIn .contactBlock .contactList {
    flex-direction: column;
    row-gap: 40px;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox {
    padding: 30px 20px 24px;
    min-height: 120px;
    border-radius: 20px;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxTitle {
    top: -16px;
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 6px 36px;
    width: 74%;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText {
    font-size: clamp(14px, 4.62vw, 18px);
    line-height: 1.7;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneNumber {
    font-size: clamp(17px, 7.18vw, 28px);
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneHours {
    font-size: 14px;
  }
  .secContactAccess .secContactIn .accessBlock .caHead {
    margin-bottom: 32px;
  }
  .secContactAccess .secContactIn .accessBlock .caHead .caLabel {
    font-size: 12px;
    margin-bottom: 6px;
  }
  .secContactAccess .secContactIn .accessBlock .caHead .caTitle {
    font-size: clamp(14px, 5.13vw, 20px);
  }
  .secContactAccess .secContactIn .accessBlock .accessMap .mapFrame {
    height: 240px;
  }
  .secContactAccess .secContactIn .accessBlock .accessAddr {
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
    font-size: 14px;
  }
  .secContactAccess .secContactIn .caDecoBalloon {
    bottom: 300px;
    right: -20px;
    width: 80px;
  }
  .secContactAccess .secContactIn .caDecoSky {
    bottom: -30px;
    left: -40px;
    width: 100px;
  }
}
@media print, screen and (min-width: 768px) {
  .secContactAccess {
    padding: clamp(60px, 6.7vw, 80px) 0 0 0;
  }
  .secContactAccess .secContactIn {
    padding: 0 0 80px 0;
  }
  .secContactAccess .secContactIn .contactBlock {
    margin-bottom: clamp(60px, 6.7vw, 80px);
  }
  .secContactAccess .secContactIn .contactBlock .caHead {
    margin-bottom: 70px;
  }
  .secContactAccess .secContactIn .contactBlock .caHead .caLabel {
    font-size: clamp(13px, 1.33vw, 16px);
    margin-bottom: 12px;
  }
  .secContactAccess .secContactIn .contactBlock .caHead .caTitle {
    font-size: clamp(16px, 2.17vw, 26px);
    line-height: 1;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox {
    width: min(49%, 530px);
    min-height: 146px;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxTitle {
    top: -19px;
    min-width: 225px;
    padding: 0px 0 3px 0;
    font-size: clamp(13px, 1.5vw, 18px);
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText {
    font-size: clamp(13px, 1.67vw, 20px);
    line-height: 1.6;
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneNumber {
    font-size: clamp(23px, 3.17vw, 38px);
  }
  .secContactAccess .secContactIn .contactBlock .contactList .contactBox .contactBoxText .phoneHours {
    font-size: clamp(13px, 1.33vw, 16px);
    margin-top: 6px;
  }
  .secContactAccess .secContactIn .accessBlock {
    width: min(100%, 990px);
    margin: 0 auto;
  }
  .secContactAccess .secContactIn .accessBlock .caHead {
    margin-bottom: 50px;
  }
  .secContactAccess .secContactIn .accessBlock .caHead .caLabel {
    font-size: clamp(13px, 1.33vw, 16px);
    margin-bottom: 12px;
  }
  .secContactAccess .secContactIn .accessBlock .caHead .caTitle {
    font-size: clamp(16px, 2.17vw, 26px);
    padding: 0 0;
  }
  .secContactAccess .secContactIn .accessBlock .accessMap .mapFrame {
    height: 400px;
  }
  .secContactAccess .secContactIn .accessBlock .accessAddr {
    -moz-column-gap: clamp(20px, 3.3vw, 40px);
         column-gap: clamp(20px, 3.3vw, 40px);
    margin-top: 13px;
    font-size: clamp(13px, 1.25vw, 15px);
  }
  .secContactAccess .secContactIn .caDecoBalloon {
    bottom: 135px;
    right: -160px;
    width: 178px;
  }
  .secContactAccess .secContactIn .caDecoSky {
    bottom: 0;
    left: -124px;
    width: 199px;
  }
}
.secPageFooter {
  position: relative;
  background-image: url(../images/footer_bg.png);
  background-position: center bottom;
  background-repeat: no-repeat;
}
.secPageFooter .footerIn {
  margin: 0 auto;
}
.secPageFooter .footerIn .fLogo {
  display: block;
}
.secPageFooter .footerIn .fInfo .fInfoRow {
  display: flex;
  align-items: center;
  color: #282828;
  font-weight: 500;
  margin: 0;
}
.secPageFooter .footerIn .fInfo .fInfoRow .infoIcon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.secPageFooter .footerIn .fInfo .fInfoRow .infoText {
  color: #282828;
  font-weight: 500;
}
.secPageFooter .footerIn .fNav .fNavList {
  display: flex;
  flex-wrap: wrap;
}
.secPageFooter .footerIn .fNav .fNavList .fNavLink {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #282828;
  font-weight: 500;
}
.secPageFooter .footerIn .fNav .fNavList .fNavLink::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #09AC80;
  flex-shrink: 0;
  margin-right: 10px;
}
.secPageFooter .fCopy {
  position: relative;
  z-index: 1;
  text-align: center;
  color: #ffffff;
  font-weight: 700;
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .secPageFooter {
    padding: 36px 0 24px;
    background-size: 2200px;
  }
  .secPageFooter .footerIn {
    width: min(88vw, 390px);
  }
  .secPageFooter .footerIn .fLogo {
    width: min(80%, 260px);
  }
  .secPageFooter .footerIn .fInfo {
    margin-top: 20px;
  }
  .secPageFooter .footerIn .fInfo .fInfoRow {
    -moz-column-gap: 8px;
         column-gap: 8px;
    font-size: 14px;
    line-height: 1.8;
  }
  .secPageFooter .footerIn .fNav {
    margin-top: 16px;
  }
  .secPageFooter .footerIn .fNav .fNavList {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 10px;
  }
  .secPageFooter .footerIn .fNav .fNavList .fNavLink {
    font-size: 14px;
  }
  .secPageFooter .fCopy {
    margin-top: 200px;
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .secPageFooter {
    padding: 40px 0 35px;
    background-size: 4320px;
  }
  .secPageFooter .footerIn {
    width: min(92vw, 1140px);
  }
  .secPageFooter .footerIn .fInfo {
    margin-top: 32px;
  }
  .secPageFooter .footerIn .fInfo .fInfoRow {
    -moz-column-gap: 10px;
         column-gap: 10px;
    font-size: clamp(13px, 1.25vw, 15px);
    line-height: 1.7;
    margin: 4px 0;
  }
  .secPageFooter .footerIn .fNav {
    margin-top: 27px;
  }
  .secPageFooter .footerIn .fNav .fNavList {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
  .secPageFooter .footerIn .fNav .fNavList .fNavLink {
    font-size: clamp(13px, 1.25vw, 15px);
  }
  .secPageFooter .fCopy {
    margin-top: 400px;
    font-size: clamp(13px, 1.25vw, 15px);
  }
}/*# sourceMappingURL=style.css.map */