@charset "UTF-8";
@media screen and (min-width:414px) {
  .hidden-sm {
    display: none;
  }
}
@media screen and (min-width:768px) {
  .hidden-md {
    display: none;
  }
}
@media screen and (min-width:900px) {
  .hidden-lg {
    display: none;
  }
}
@media screen and (min-width:1001px) {
  .hidden-xl-min {
    display: none;
  }
}
@media screen and (max-width:1000px) {
  .hidden-xl-max {
    display: none;
  }
}
body {
  font-family: "Noto Sans JP", sans-serif;
  color: #4a3636;
  line-height: 1.6;
}

.inner {
  padding-left: 20px;
  padding-right: 20px;
}

.header {
  min-width: 375px;
  position: sticky;
  z-index: 100;
  top: 0;
  left: 0;
  height: 64px;
  padding-top: 18px;
  padding-bottom: 16px;
  background: #ffffff;
}
@media screen and (min-width:1001px) {
  .header {
    min-width: 1512px;
    padding-top: 11px;
    padding-bottom: 9px;
  }
}

.header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-inline: 20px;
}
@media screen and (min-width:1001px) {
  .header__inner {
    max-width: 1512px;
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
  }
}

.header__logo a img {
  width: 210px;
  display: block;
}
@media screen and (min-width:1001px) {
  .header__logo a img {
    width: 183px;
  }
}

@media screen and (min-width:1001px) {
  .header__icon {
    display: none;
  }
}

.js-drawer-icon {
  width: 32px;
  height: 28px;
  position: relative;
}
.js-drawer-icon.is-checked .drawer-icon__bar:nth-child(1) {
  display: none;
}
.js-drawer-icon.is-checked .drawer-icon__bar:nth-child(2) {
  display: none;
}
.js-drawer-icon.is-checked .drawer-icon__bar:nth-child(3) {
  top: 13px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.js-drawer-icon.is-checked .drawer-icon__bar:nth-child(4) {
  top: 13px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media screen and (min-width:1001px) {
  .js-drawer-icon {
    display: none;
  }
}

.drawer-icon__bar {
  position: absolute;
  left: 0;
  width: 32px;
  height: 4px;
  background: #4a3636;
  border-radius: 1.5px;
  -webkit-transition: top 0.4s, -webkit-transform 0.4s;
  transition: top 0.4s, -webkit-transform 0.4s;
  transition: top 0.4s, transform 0.4s;
  transition: top 0.4s, transform 0.4s, -webkit-transform 0.4s;
}
.drawer-icon__bar:nth-child(1) {
  width: 26px;
  top: 0px;
}
.drawer-icon__bar:nth-child(2) {
  width: 5px;
  top: 0px;
  left: 27px;
}
.drawer-icon__bar:nth-child(3) {
  top: 12px;
}
.drawer-icon__bar:nth-child(4) {
  top: 24px;
}

.header__nav {
  display: none;
}
@media screen and (min-width:1001px) {
  .header__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 16px;
  }
}

.header__nav-drawer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  right: 0;
  top: 64px;
  width: 100%;
  height: calc(100% - 64px);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #ffffff;
  gap: 39px;
  padding: 80.5px 114px 80px 114px;
}
@media screen and (min-width:1001px) {
  .header__nav-drawer {
    display: none;
  }
}

.header__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 36.2px;
}
@media screen and (min-width:1001px) {
  .header__lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 12px;
  }
}

.header__link {
  font-size: 14px;
  font-weight: 400;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media screen and (min-width:1001px) {
  .header__link {
    font-size: 12px;
  }
}
.header__link:hover {
  color: #67b0c7;
}

@media screen and (min-width:1001px) {
  .header__link-button {
    padding-top: 3px;
  }
}

.button-small {
  width: 150px;
  height: 36px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 40px;
  border: 2px solid #4a3636;
  -webkit-box-shadow: 0 4px 0 0 #4a3636;
          box-shadow: 0 4px 0 0 #4a3636;
  padding: 6px 24px 8px 24px;
  background-color: #ffffff;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.button-small:hover {
  background-color: #ffee56;
}

.header__button {
  font-size: 16px;
  width: 143px;
  height: 39px;
  padding: 3.5px 22px 8px 22px;
}
@media screen and (min-width:1001px) {
  .header__button {
    font-size: 14px;
    height: 36px;
    width: 132px;
    border-radius: 36px;
    padding: 4px 20px 6px 22px;
  }
}

.fv__all {
  width: 100%;
  background: #e9f6f8;
  min-width: 375px;
}
@media screen and (min-width:1001px) {
  .fv__all {
    min-width: 1512px;
  }
}

.fv {
  width: 100%;
  height: 710px;
  position: relative;
}
@media screen and (min-width:1001px) {
  .fv {
    width: 100%;
    height: 836px;
    margin: 0 auto;
  }
}

.fv__backgroundimg {
  position: relative;
  background: url(../img/sp/sp-onomichibg.jpg) no-repeat center center/cover;
  width: 100%;
  height: 554px;
  border-bottom-right-radius: 23px;
  border-bottom-left-radius: 23px;
}
@media screen and (min-width:1001px) {
  .fv__backgroundimg {
    background: url(../img/pc-onomichibg.jpg) no-repeat center center/cover;
    width: 100%;
    height: 740px;
    border-bottom-right-radius: 40px;
    border-bottom-left-radius: 40px;
  }
}

.fv__inner {
  max-width: 375px;
  margin: 0 auto;
  padding-top: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width:1001px) {
  .fv__inner {
    max-width: 848px;
    margin: 0 auto;
    padding-top: 35px;
    gap: 0;
  }
}

.fv__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .fv__title {
    gap: 24px;
  }
}

.fv-title__text {
  font-family: "Kiwi Maru", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.25;
  text-shadow: 0 0 30px #ffffff;
}
@media screen and (min-width:1001px) {
  .fv-title__text {
    font-size: 24px;
    font-weight: 500;
  }
}

.fv-title__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
}
@media screen and (min-width:1001px) {
  .fv-title__img {
    gap: 16px;
  }
}

.fv-title__img-up img {
  width: 335px;
}
@media screen and (min-width:1001px) {
  .fv-title__img-up img {
    width: 520px;
  }
}

.fv-title__img-down img {
  width: 240px;
}
@media screen and (min-width:1001px) {
  .fv-title__img-down img {
    width: 356px;
  }
}

.fv__image {
  position: relative;
}
@media screen and (min-width:1001px) {
  .fv__image {
    width: 100%;
  }
}

.fv-image__fukidasi {
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 43px;
}
@media screen and (min-width:1001px) {
  .fv-image__fukidasi {
    left: 73px;
    top: 6px;
  }
}
.fv-image__fukidasi img {
  width: 84px;
}
@media screen and (min-width:1001px) {
  .fv-image__fukidasi img {
    width: 146px;
  }
}

.fv-image__fukidasi2 {
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 18px;
}
@media screen and (min-width:1001px) {
  .fv-image__fukidasi2 {
    left: 37px;
    top: 0;
  }
}
.fv-image__fukidasi2 img {
  width: 144px;
}
@media screen and (min-width:1001px) {
  .fv-image__fukidasi2 img {
    width: 244px;
  }
}

.fv-image__present {
  display: inline-block;
  position: absolute;
  right: 45px;
}
@media screen and (min-width:1001px) {
  .fv-image__present {
    top: 17px;
    left: 541px;
  }
}
.fv-image__present img {
  width: 110px;
}
@media screen and (min-width:1001px) {
  .fv-image__present img {
    width: 180px;
  }
}

.fv-image__smartphone {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  width: 201px;
  height: 407px;
  top: 104px;
  left: 87px;
  border-radius: 27px;
  overflow: hidden;
  background: url(../img/img_smartphone_SP.jpg) no-repeat center center/cover;
}
@media screen and (min-width:1001px) {
  .fv-image__smartphone {
    width: 250px;
    height: 505px;
    top: 35px;
    left: 298px;
    background: url(../img/img_smartphone_PC.png) no-repeat center center/cover;
  }
}

.fv-smartphone__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 17.8px;
  padding-bottom: 18.2px;
  width: 160px;
  height: 154px;
  position: relative;
  top: -5px;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
}
@media screen and (min-width:1001px) {
  .fv-smartphone__container {
    width: 200px;
    height: 194px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 24.8px;
  }
}

.fv-smartphone-container__header {
  color: #ffffff;
  font-size: 12.8px;
  font-weight: 700;
  padding: 8px 12px;
  text-align: center;
  width: 100%;
  background: linear-gradient(265deg, #ac3790 -3.52%, #d65a5c 44.94%, #f4c06d 92.38%);
}
@media screen and (min-width:1001px) {
  .fv-smartphone-container__header {
    font-size: 16px;
  }
}

.fv-smartphone-container__time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  gap: 4px;
}

.fv-smartphone-container__time-content {
  margin-top: -10px;
}

.fv-smartphone-container__time-word {
  font-size: 12px;
  font-weight: 400;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-color: #ce2073;
  text-decoration-thickness: 2px;
  text-underline-offset: 3.2px;
}
@media screen and (min-width:1001px) {
  .fv-smartphone-container__time-word {
    font-size: 14px;
  }
}

.fv-smartphone-container__time-period {
  font-size: 12px;
  font-weight: 700;
  padding-top: 2px;
}
@media screen and (min-width:1001px) {
  .fv-smartphone-container__time-period {
    font-size: 16px;
  }
}

.fv-smartphone-container__button {
  margin-top: -3px;
  position: relative;
  z-index: 30;
}

.fv-smartphone-container__buttontext {
  position: relative;
  top: -5px;
  width: 134px;
  height: 32px;
  padding: 2px 24px 10px 23px;
}
@media screen and (min-width:1001px) {
  .fv-smartphone-container__buttontext {
    top: 0;
    font-size: 16px;
    width: 144px;
    height: 42px;
    padding: 1px 20px 5px 20px;
    margin-top: -7px;
  }
}

.fv-image__items {
  position: relative;
  top: 382px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 142px;
}
@media screen and (min-width:1001px) {
  .fv-image__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0;
    top: 241px;
  }
}

.fv-image-items__foods {
  position: relative;
  display: inline-block;
  top: -4px;
  left: 18px;
}
@media screen and (min-width:1001px) {
  .fv-image-items__foods {
    position: relative;
    display: inline-block;
    top: -15px;
    left: -2px;
  }
}
.fv-image-items__foods img {
  width: 106px;
}
@media screen and (min-width:1001px) {
  .fv-image-items__foods img {
    width: 213px;
  }
}

.fv-image-items__cats-black {
  position: relative;
  display: inline-block;
  top: 14px;
  left: 59px;
}
@media screen and (min-width:1001px) {
  .fv-image-items__cats-black {
    top: 69px;
    left: 175px;
  }
}
.fv-image-items__cats-black img {
  width: 62px;
}
@media screen and (min-width:1001px) {
  .fv-image-items__cats-black img {
    width: 170px;
  }
}

.fv-image-items__cats-brown {
  display: inline-block;
  position: relative;
  left: 15px;
  z-index: 20;
}
@media screen and (min-width:1001px) {
  .fv-image-items__cats-brown {
    top: 177px;
    left: 0px;
  }
}
.fv-image-items__cats-brown img {
  width: 98px;
}
@media screen and (min-width:1001px) {
  .fv-image-items__cats-brown img {
    width: 233px;
  }
}

.about {
  position: relative;
  width: 100%;
  height: 1050px;
  padding-top: 32px;
  padding-bottom: 82px;
  background: #e9f6f8;
  overflow-x: hidden;
  overflow-y: hidden;
  min-width: 375px;
  z-index: 10;
}
@media screen and (min-width:1001px) {
  .about {
    height: 1367px;
    padding-top: 80px;
    padding-bottom: 0;
    min-width: 1512px;
  }
}

.about_background {
  position: relative;
  height: 934px;
  max-width: 375px;
  margin: 0 auto;
}
@media screen and (min-width:1001px) {
  .about_background {
    height: 1218px;
    top: -80px;
    max-width: 1000px;
    margin: 0 auto;
  }
}

.about-background__pow {
  position: absolute;
  display: inline-block;
  top: -10px;
  right: 0px;
}
@media screen and (min-width:1001px) {
  .about-background__pow {
    top: 0px;
    right: -88px;
  }
}
.about-background__pow img {
  width: 54px;
}
@media screen and (min-width:1001px) {
  .about-background__pow img {
    width: 100px;
  }
}

.about-background__diagonal {
  display: none;
}
@media screen and (min-width:1001px) {
  .about-background__diagonal {
    position: absolute;
    display: inline-block;
    top: 59px;
    left: -278px;
  }
  .about-background__diagonal img {
    width: 250px;
  }
}

.about-background__photo-left {
  position: absolute;
  display: inline-block;
  border-radius: 24px;
  overflow: hidden;
  top: 396px;
  left: -140px;
}
@media screen and (min-width:1001px) {
  .about-background__photo-left {
    top: 153px;
    left: -595px;
    border-radius: 40px;
  }
}
.about-background__photo-left img {
  width: 200px;
}
@media screen and (min-width:1001px) {
  .about-background__photo-left img {
    width: 480px;
  }
}

.about-background__photo-right {
  position: absolute;
  display: inline-block;
  border-radius: 24px;
  overflow: hidden;
  top: 273px;
  right: -140px;
}
@media screen and (min-width:1001px) {
  .about-background__photo-right {
    border-radius: 40px;
    top: 152px;
    overflow: hidden;
    right: -540px;
  }
}
.about-background__photo-right img {
  width: 200px;
}
@media screen and (min-width:1001px) {
  .about-background__photo-right img {
    width: 480px;
  }
}

.about-background__slope {
  position: absolute;
  display: inline-block;
  bottom: 9px;
  left: 0px;
}
@media screen and (min-width:414px) {
  .about-background__slope {
    left: -18px;
  }
}
@media screen and (min-width:768px) {
  .about-background__slope {
    left: -197px;
  }
}
@media screen and (min-width:1001px) {
  .about-background__slope {
    bottom: 0px;
    left: -359px;
  }
}
.about-background__slope img {
  width: 138px;
}
@media screen and (min-width:1001px) {
  .about-background__slope img {
    width: 427px;
  }
}

.about-background__path-1 {
  display: none;
}
@media screen and (min-width:1001px) {
  .about-background__path-1 {
    position: absolute;
    display: inline-block;
    right: -822px;
    top: 679px;
  }
}
.about-background__path-1 img {
  width: 807px;
}

.about-background__path-2 {
  display: none;
}
@media screen and (min-width:1001px) {
  .about-background__path-2 {
    position: absolute;
    display: inline-block;
    right: -753px;
    top: 712px;
  }
  .about-background__path-2 img {
    width: 807px;
  }
}

.about-background__button {
  position: absolute;
  display: inline-block;
  right: 20px;
  top: 720px;
}
@media screen and (min-width:414px) {
  .about-background__button {
    right: -17px;
  }
}
@media screen and (min-width:768px) {
  .about-background__button {
    right: -195px;
  }
}
@media screen and (min-width:1001px) {
  .about-background__button {
    right: -106px;
    top: 680px;
  }
}
.about-background__button img {
  width: 48px;
}
@media screen and (min-width:1001px) {
  .about-background__button img {
    width: 101px;
  }
}

.about-background__cloth {
  position: absolute;
  display: inline-block;
  right: 57px;
  top: 762px;
}
@media screen and (min-width:414px) {
  .about-background__cloth {
    right: 20px;
  }
}
@media screen and (min-width:768px) {
  .about-background__cloth {
    right: -158px;
  }
}
@media screen and (min-width:1001px) {
  .about-background__cloth {
    right: -179px;
    top: 837px;
  }
}
.about-background__cloth img {
  width: 133px;
}
@media screen and (min-width:1001px) {
  .about-background__cloth img {
    width: 308px;
  }
}

.about-background__arrow {
  position: absolute;
  display: inline-block;
  left: 137.5px;
  bottom: 189px;
}
@media screen and (min-width:1001px) {
  .about-background__arrow {
    left: 429px;
    bottom: 259px;
  }
}
.about-background__arrow img {
  width: 100px;
}
@media screen and (min-width:1001px) {
  .about-background__arrow img {
    width: 140px;
  }
}

.about-background__onomichi {
  position: absolute;
  display: inline-block;
  left: 12px;
  bottom: 48px;
}
@media screen and (min-width:1001px) {
  .about-background__onomichi {
    left: 51px;
    bottom: 44px;
  }
}
.about-background__onomichi img {
  width: 355px;
}
@media screen and (min-width:1001px) {
  .about-background__onomichi img {
    width: 891px;
  }
}

@media screen and (max-width:1000px) {
  .about-background__slider {
    height: 100px;
    min-width: 1199px;
    max-width: 1199px;
    -webkit-transform: translateY(-48px);
            transform: translateY(-48px);
  }
}
@media screen and (min-width:1001px) {
  .about-background__slider {
    height: 200px;
    min-width: 2400px;
    -webkit-transform: translateY(-131px);
            transform: translateY(-131px);
  }
}
.about-background__slider .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.about-background__slider .swiper .swiper-wrapper .swiper-slide img {
  border-radius: 15px;
  width: 100px;
}
@media screen and (min-width:1001px) {
  .about-background__slider .swiper .swiper-wrapper .swiper-slide img {
    border-radius: 30px;
    width: 200px;
  }
}

.about__inner {
  position: absolute;
  top: 0;
  left: 20px;
  width: 335px;
  height: 708px;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 12px;
  padding-right: 12px;
  background-color: #fff;
  border-radius: 24px;
}
@media screen and (min-width:1001px) {
  .about__inner {
    position: absolute;
    top: 80px;
    left: 76px;
    width: 848px;
    height: 829px;
    border-radius: 40px;
    padding-left: 114px;
    padding-right: 114px;
  }
}

.about__pics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 282px;
  gap: 107.08px;
  position: absolute;
  top: 31px;
  left: 34px;
}
@media screen and (min-width:1001px) {
  .about__pics {
    gap: 386px;
    max-width: 719px;
    position: absolute;
    top: 41px;
    left: 86px;
  }
}

.about-pics__left {
  display: inline-block;
}
.about-pics__left img {
  width: 88px;
}
@media screen and (min-width:1001px) {
  .about-pics__left img {
    width: 146px;
  }
}

.about-pics__right {
  display: inline-block;
}
@media screen and (min-width:1001px) {
  .about-pics__right {
    padding-top: 6px;
  }
}
.about-pics__right img {
  width: 87.5px;
}
@media screen and (min-width:1001px) {
  .about-pics__right img {
    width: 146px;
  }
}

.about__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 24px;
  max-width: 327px;
  padding-left: 31px;
  padding-right: 31px;
}
@media screen and (min-width:1001px) {
  .about__contents {
    gap: 32px;
    max-width: 620px;
    padding-left: 14px;
    padding-right: 14px;
  }
}

.section__content {
  padding-left: 15px;
  padding-right: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
@media screen and (min-width:1001px) {
  .section__content {
    padding-left: 20px;
    padding-right: 20px;
    gap: 8px;
  }
}

.section__icon {
  display: inline-block;
}
.section__icon img {
  width: 37.333px;
}
@media screen and (min-width:1001px) {
  .section__icon img {
    width: 48px;
  }
}

.section__title {
  font-family: "Courgette", cursive;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
}
@media screen and (min-width:1001px) {
  .section__title {
    font-size: 20px;
  }
}

.section__textbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
@media screen and (min-width:1001px) {
  .section__textbar {
    gap: 8px;
  }
}

.section__text {
  position: relative;
  font-family: "Kiwi Maru", serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.25;
}
@media screen and (min-width:1001px) {
  .section__text {
    font-size: 32px;
  }
}

.section__bar {
  height: 6px;
  background-color: #ffee56;
}
@media screen and (min-width:1001px) {
  .section__bar {
    height: 8px;
  }
}

.about-contents__list2 {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .about-contents__list2 {
    font-size: 16px;
  }
}

.about-contents__list3 {
  font-size: 12px;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
  text-align: center;
  padding-bottom: 7px;
}
@media screen and (min-width:1001px) {
  .about-contents__list3 {
    font-size: 16px;
    gap: 27px;
  }
}

@media screen and (min-width:1001px) {
  .contents-list3__1 {
    padding-top: 1px;
  }
}

.contents-list3-4__instagram1,
.text_instagram-link {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
  -webkit-transition: 0.3s color;
  transition: 0.3s color;
}
.contents-list3-4__instagram1:hover,
.text_instagram-link:hover {
  color: #67b0c7;
}

.contents-list3-4__instagram2,
.text_instagram-hashtag {
  font-weight: 700;
}

.about-contents__list4 {
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  border-bottom: 2px dashed var(--LP-Blue, #9ed0e0);
  padding-top: 2px;
  padding-bottom: 3px;
}
@media screen and (min-width:1001px) {
  .about-contents__list4 {
    display: inline-block;
    font-size: 20px;
    padding-top: 4px;
    padding-bottom: 13px;
    margin-left: 118px;
    width: 356px;
  }
}

.about-contents__list5 {
  text-align: center;
  padding-top: 8px;
}

.about-contents__button {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  width: 189px;
  padding: 6px 21px 8px 20px;
  height: 40px;
}
@media screen and (min-width:1001px) {
  .about-contents__button {
    height: 56px;
    padding: 8px 37px 12px 36px;
    font-size: 20px;
    font-weight: 700;
    width: 258px;
    border: 3px solid #4a3636;
  }
}

.step {
  position: relative;
  width: 100%;
  height: 1413px;
  padding-top: 32px;
  background: #e9f6f8;
  overflow-x: hidden;
  overflow-y: hidden;
  min-width: 375px;
}
@media screen and (min-width:1001px) {
  .step {
    min-width: 1512px;
    height: 960px;
    padding-top: 120px;
  }
}

.step__background {
  position: relative;
  width: 100%;
  height: 1381px;
  min-width: 375px;
  max-width: 375px;
  margin: 0 auto;
}
@media screen and (min-width:1001px) {
  .step__background {
    min-width: 1512px;
    max-width: 1512px;
    height: 840px;
    margin: 0 auto;
  }
}

.step-background__black2 {
  position: absolute;
  display: inline-block;
  top: 5px;
  right: -30px;
}
@media screen and (min-width:1001px) {
  .step-background__black2 {
    top: -16px;
    right: 105px;
  }
}
.step-background__black2 img {
  width: 94px;
}
@media screen and (min-width:1001px) {
  .step-background__black2 img {
    width: 212px;
  }
}

.step-background__brown2 {
  position: absolute;
  display: inline-block;
  top: 0;
  right: 24px;
}
@media screen and (min-width:1001px) {
  .step-background__brown2 {
    top: -26px;
    right: 232px;
  }
}
.step-background__brown2 img {
  width: 105px;
}
@media screen and (min-width:1001px) {
  .step-background__brown2 img {
    width: 238px;
  }
}

.step-background__pow {
  position: absolute;
  display: inline-block;
  top: 74px;
  right: 21px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (min-width:1001px) {
  .step-background__pow {
    top: 147px;
    right: 36px;
  }
}
.step-background__pow img {
  width: 55px;
}
@media screen and (min-width:1001px) {
  .step-background__pow img {
    width: 100px;
  }
}

.step-background__map {
  position: absolute;
  display: inline-block;
  top: 0px;
  left: 0px;
}
@media screen and (min-width:1001px) {
  .step-background__map {
    top: -60px;
    left: 35px;
  }
}
.step-background__map img {
  width: 137px;
}
@media screen and (min-width:1001px) {
  .step-background__map img {
    width: 420px;
  }
}

.step-background__pow2 {
  position: absolute;
  display: inline-block;
  top: 550px;
  left: 20px;
}
@media screen and (min-width:1001px) {
  .step-background__pow2 {
    top: 580px;
    left: 35px;
  }
}
.step-background__pow2 img {
  width: 55px;
}
@media screen and (min-width:1001px) {
  .step-background__pow2 img {
    width: 100px;
  }
}

.step-background__pow3 {
  position: absolute;
  display: inline-block;
  top: 880px;
  right: 20px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (min-width:1001px) {
  .step-background__pow3 {
    display: none;
  }
}
.step-background__pow3 img {
  width: 55px;
}

.step__inner {
  position: absolute;
  top: 0;
  height: 1381px;
  min-width: 375px;
  max-width: 375px;
}
@media screen and (min-width:1001px) {
  .step__inner {
    top: 0px;
    left: 244px;
    height: 840px;
    min-width: 1024px;
    max-width: 1024px;
    padding-left: 0;
    padding-right: 0;
  }
}

.step__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (min-width:1001px) {
  .step__container {
    gap: 40px;
  }
}

.step__howtoenterlists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width:1001px) {
  .step__howtoenterlists {
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 32px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}

.howtoenter__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
@media screen and (min-width:1001px) {
  .howtoenter__list {
    width: 325.3333333333px;
    gap: 24px;
  }
}
@media screen and (min-width:1001px) {
  .howtoenter__list:nth-child(3) {
    padding-top: 67px;
  }
}

.howtoenter-list__image {
  display: inline-block;
}
.howtoenter-list__image img {
  width: 196px;
}
@media screen and (min-width:1001px) {
  .howtoenter-list__image img {
    width: 281px;
  }
}

.howtoenter-list__texts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}

.howtoenter-texts__subject {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .howtoenter-texts__subject {
    font-size: 20px;
  }
}

.howtoenter-texts__text {
  font-size: 12px;
  font-weight: 400;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .howtoenter-texts__text {
    font-size: 16px;
  }
}

.howtoenter-texts__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 12px;
  padding-top: 4px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  background-color: #fff;
}
@media screen and (min-width:1001px) {
  .howtoenter-texts__link {
    padding-top: 8px;
  }
}

.howtoenter-texts__link-image img {
  width: 20px;
}

.howtoenter-texts__link-text {
  font-size: 14px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .howtoenter-texts__link-text {
    font-size: 16px;
  }
}

.howtoenter-list__stepline_beside {
  display: inline-block;
  position: absolute;
  top: 202px;
  left: 259px;
}
.howtoenter-list__stepline_beside img {
  width: 107px;
}
.howtoenter-list__stepline_beside:nth-child(2) {
  top: 202px;
  left: 620px;
}
@media screen and (max-width:1000px) {
  .howtoenter-list__stepline_beside {
    display: none;
  }
}

@media screen and (min-width:1001px) {
  .howtoenter-list__stepline {
    display: none;
  }
}
@media screen and (max-width:1000px) {
  .howtoenter-list__stepline {
    display: inline-block;
  }
  .howtoenter-list__stepline img {
    width: 7px;
  }
}

.howtoenter-texts__text-button {
  padding-top: 6px;
}
@media screen and (min-width:1001px) {
  .howtoenter-texts__text-button {
    display: none;
    padding-top: 0;
  }
}

.howtoenter-texts__button {
  width: 333px;
  height: 39px;
  font-size: 16px;
  border-radius: 40px;
  -webkit-box-shadow: 0 4px 0 0 #4a3636;
          box-shadow: 0 4px 0 0 #4a3636;
  padding: 4px 21px 6px 21px;
}

.step__post {
  text-align: center;
  padding-top: 19px;
}
@media screen and (max-width:1000px) {
  .step__post {
    display: none;
  }
}

.step__post-button {
  font-size: 20px;
  font-weight: 700;
  width: 437px;
  height: 52px;
  padding: 8px 37px 12px 37px;
  border: 3px solid #4a3636;
}

.prizes {
  min-width: 375px;
  background-color: #e9f6f8;
  padding-top: 17.6px;
}
@media screen and (min-width:1001px) {
  .prizes {
    background: url(../img/img-pc-top-semicircle.png) no-repeat center 120px/365.624px 148.967px;
    background-color: #e9f6f8;
    min-width: 1512px;
    padding-top: 120px;
  }
}

@media screen and (min-width:1001px) {
  .prizes__contentsinner {
    background: url(../img/img-pc-top-left-prizes.png) no-repeat left 28px/315px 86px, url(../img/img-pc-top-right-prizes.png) no-repeat right 28px/315px 86px;
    max-width: 1024px;
    margin: 0 auto;
  }
}

@media screen and (max-width:1000px) {
  .prizes-title {
    padding-top: 20px;
    background-image: url(../img/sp/sp_prizes_head_bg.png);
    background-repeat: no-repeat;
    background-size: 249.6px;
    background-position-x: center;
  }
}
@media screen and (min-width:1001px) {
  .prizes-title {
    padding-top: 30px;
  }
}

.prizes__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  background-color: #ffffff;
  padding-bottom: 43px;
  position: relative;
  z-index: 20;
  border-radius: 23px;
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (min-width:1001px) {
  .prizes__main {
    position: relative;
    background-color: transparent;
    max-width: 1024px;
    margin: 0 auto;
    padding-bottom: 36px;
  }
  .prizes__main::after {
    content: "";
    position: absolute;
    top: 2.9%;
    left: 0;
    width: 100%;
    height: 99.7%;
    background-color: #ffffff;
    z-index: -1;
    border-radius: 24px;
  }
}

.prizes__textbar {
  padding-top: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width:1001px) {
  .prizes__textbar {
    padding-top: 8px;
  }
}

.prizes__sectionbar {
  width: 160px;
}
@media screen and (min-width:1001px) {
  .prizes__sectionbar {
    width: 255px;
  }
}

.prizes__subtext {
  font-size: 12px;
  font-weight: 400;
  padding-top: 16px;
}
@media screen and (min-width:1001px) {
  .prizes__subtext {
    font-size: 16px;
    font-weight: 400;
    padding-top: 38px;
  }
}

.prizes_cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 15px 16px;
  padding-top: 25px;
}
@media screen and (min-width:1001px) {
  .prizes_cards {
    gap: 40px 34px;
    padding-inline: 0;
    padding-top: 32px;
  }
}

.prize__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc((100% - 15px - 20px - 20px) / 2);
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width:1001px) {
  .prize__card:nth-child(-n+2) {
    width: 42.96875%;
  }
  .prize__card:nth-child(-n+2) .prize__card-number__image {
    height: 52px;
    width: 100px;
  }
  .prize__card:nth-child(-n+2) .prize__card-number__image img {
    width: 100px;
  }
  .prize__card:nth-child(-n+2) .prize__card-number__image::before {
    content: "特典";
    position: absolute;
    top: 11px;
    left: 31px;
    width: 36.667px;
    height: 28.333px;
    font-size: 16px;
    font-weight: 700;
  }
  .prize__card:nth-child(-n+2) .prize__card-number__image::after {
    position: absolute;
    top: 41px;
    left: 38px;
    width: 17px;
    height: 48px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 1;
  }
  .prize__card:nth-child(-n+2) .prize__card-body .prize__card-text::before {
    position: absolute;
    content: "";
    width: 100px;
    height: 100px;
    right: 0;
    bottom: 0px;
    clip-path: polygon(100% 100%, 0% 100%, 100% 0);
    background: #67b0c7;
  }
  .prize__card:nth-child(-n+2) .prize__card-body .prize__card-text::after {
    position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    right: 11px;
    bottom: 17px;
    background-image: url(../img/img_prizes_zoom_icon.png);
    background-size: cover;
  }
  .prize__card:nth-child(-n+2) .prize__card-body .prize__card-text .prize__card-text-main {
    font-size: 20px;
    font-weight: 700;
    min-height: 120px;
  }
  .prize__card:nth-child(n+3) {
    width: 27.34375%;
  }
  .prize__card:nth-child(n+3) .prize__card-number__image {
    height: 38px;
    width: 80px;
  }
  .prize__card:nth-child(n+3) .prize__card-number__image img {
    width: 80px;
  }
  .prize__card:nth-child(n+3) .prize__card-number__image::before {
    content: "特典";
    position: absolute;
    top: 11px;
    left: 25px;
    width: 29.333px;
    height: 22.667px;
    font-size: 12.8px;
    font-weight: 700;
  }
  .prize__card:nth-child(n+3) .prize__card-number__image::after {
    position: absolute;
    top: 32px;
    left: 30px;
    width: 21px;
    height: 38px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 38.4px;
    font-weight: 700;
    line-height: 1;
  }
  .prize__card:nth-child(n+3) .prize__card-body .prize__card-text::before {
    position: absolute;
    content: "";
    width: 64px;
    height: 64px;
    right: 0;
    bottom: 0px;
    clip-path: polygon(100% 100%, 0% 100%, 100% 0);
    background: #67b0c7;
  }
  .prize__card:nth-child(n+3) .prize__card-body .prize__card-text::after {
    position: absolute;
    content: "";
    width: 20.48px;
    height: 20.48px;
    right: 6px;
    bottom: 7px;
    background-image: url(../img/img_prizes_zoom_icon.png);
    background-size: cover;
  }
  .prize__card:nth-child(n+3) .prize__card-body .prize__card-text .prize__card-text-main {
    font-size: 16px;
    font-weight: 700;
    min-height: 80px;
  }
}

.prize__card-number__image {
  position: relative;
  color: #ffffff;
  height: 22px;
  width: 44px;
}
.prize__card-number__image img {
  width: 48px;
}
.prize__card-number__image::before {
  content: "特典";
  position: absolute;
  top: 5px;
  left: 13px;
  width: 17.6px;
  height: 13.6px;
  font-size: 7.68px;
  font-weight: 700;
}
.prize__card-number__image::after {
  position: absolute;
  top: 18px;
  left: 18px;
  width: 8px;
  height: 23px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 23.04px;
  line-height: 1;
}

.prize__card-number-first::after {
  content: "1";
}

.prize__card-number-second::after {
  content: "2";
  top: 18px;
  left: 16px;
  width: 14px;
  height: 23px;
}

.prize__card-number-third::after {
  content: "3";
  top: 18px;
  left: 15px;
  width: 13px;
  height: 23px;
}

.prize__card-number-fourth::after {
  content: "4";
  top: 18px;
  left: 15px;
  width: 13px;
  height: 23px;
}

.prize__card-number-fifth::after {
  content: "5";
  top: 18px;
  left: 15px;
  width: 12px;
  height: 23px;
}

.prize__card-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  border-radius: 11px;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width:1001px) {
  .prize__card-body {
    border-radius: 21px;
  }
}

.prize__card-image img {
  width: 100%;
}

.prize__card-text {
  position: relative;
  background-color: #f5f5f5;
}
.prize__card-text::before {
  position: absolute;
  content: "";
  width: 36px;
  height: 36px;
  right: 0;
  bottom: 0px;
  clip-path: polygon(100% 100%, 0% 100%, 100% 0);
  background: #67b0c7;
}
.prize__card-text::after {
  position: absolute;
  content: "";
  width: 11.52px;
  height: 11.52px;
  right: 6px;
  bottom: 8px;
  background-image: url(../img/img_prizes_zoom_icon.png);
  background-size: cover;
}

.prize__card-text-main {
  font-size: 12px;
  font-weight: 700;
  color: #4a3636;
  min-height: 58.4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.prizes__link-button {
  padding-top: 22px;
}
@media screen and (min-width:1001px) {
  .prizes__link-button {
    padding-top: 52px;
  }
}

.prizes__button {
  font-size: 16px;
  height: 40px;
  width: 334px;
  padding: 6px 22px 8px 22px;
}
@media screen and (min-width:1001px) {
  .prizes__button {
    font-size: 20px;
    height: 53px;
    width: 437px;
    padding: 10px 37px 12px 37px;
    border: 3px solid #4a3636;
  }
}

.prizes__bottom-bg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  margin-top: -45px;
  min-width: 375px;
  height: 260px;
  background: url(../img/sp/sp_prizes_bottom_bg.jpg) no-repeat center/cover;
}
@media screen and (min-width:1001px) {
  .prizes__bottom-bg {
    margin-top: 26px;
    min-width: 1512px;
    min-height: 640px;
    background: url(../img/pc_prizes_bottom_bg.jpg) no-repeat center/cover;
  }
}

.prizes__bottom-wave {
  margin-top: auto;
  position: relative;
  background: url(../img/img_bg_wave.png) repeat-x left bottom/contain;
  height: 45.714px;
}
@media screen and (min-width:1001px) {
  .prizes__bottom-wave {
    margin-top: auto;
    background: url(../img/img_bg_wave_pc.png) repeat-x left bottom/contain;
    height: 120px;
  }
}

.prize-modal {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 200;
  background: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100%;
  display: none;
}

div.prize-modal__all {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  top: 0px;
  left: 0;
  z-index: 200;
  width: 100%;
  height: 100%;
}

.prize-modal__bg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  border-radius: 24px;
  overflow: hidden;
}

.prize-modal__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 336px;
  height: 480px;
  padding-bottom: 56px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  row-gap: 39px;
}
@media screen and (min-width:1001px) {
  .prize-modal__card {
    width: 480px;
    height: 650px;
    padding-bottom: 106px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 32px;
  }
}

.prize-modal__card-image {
  display: inline-block;
}
.prize-modal__card-image img {
  display: block;
  width: 336px;
}
@media screen and (min-width:1001px) {
  .prize-modal__card-image img {
    width: 480px;
  }
}

.prize-modal__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
}
@media screen and (min-width:1001px) {
  .prize-modal__body {
    gap: 24px;
  }
}

.prize-modal__card-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
}

.prize-modal-card-text__main {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .prize-modal-card-text__main {
    font-size: 20px;
  }
}

.prize-modal-card-text__sub {
  font-size: 12px;
  font-weight: 400;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .prize-modal-card-text__sub {
    font-size: 16px;
  }
}

.prize-modal-card-button__body {
  height: 40px;
  font-size: 16px;
  font-weight: 700;
  padding: 4px 20px 8px 20px;
  width: 96px;
}

.spots {
  background-color: #67b0c7;
  min-width: 375px;
  overflow: hidden;
}
@media screen and (min-width:1001px) {
  .spots {
    min-width: 1512px;
  }
}

.spots__inner {
  padding-bottom: 19.1px;
}

@media screen and (min-width:1001px) {
  .spots__Horizontaldivision {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media screen and (min-width:1001px) {
  .spots__pcdisp {
    width: 16.1375661376%;
    background: url(../img/footprint.png) no-repeat 19% 100%/100px 212px;
  }
}

@media screen and (min-width:1001px) {
  .spots_contents {
    width: 83.8624338624%;
  }
}

.spots__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}
@media screen and (min-width:1001px) {
  .spots__main {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 29px;
  }
}

.spots__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media screen and (min-width:1001px) {
  .spots__title {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 4.4164037855%;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 15px;
  }
}

@media screen and (min-width:1001px) {
  .spots__icon {
    margin-top: 6px;
  }
}
.spots__icon img {
  width: 25.966px;
}
@media screen and (min-width:1001px) {
  .spots__icon img {
    width: 60.932px;
  }
}

.spots__titletext {
  font-family: "Kiwi Maru", serif;
  color: #ffffff;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.25;
}
@media screen and (min-width:1001px) {
  .spots__titletext {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    font-size: 40px;
    letter-spacing: 10.1px;
  }
}

.spots__swiper-all {
  position: relative;
}
@media screen and (min-width:1001px) {
  .spots__swiper-all {
    margin-top: 5px;
    width: 93.0599369085%;
  }
}
@media screen and (min-width:1001px) {
  .spots__swiper-all .spots__swiper {
    overflow: hidden;
  }
}
.spots__swiper-all .spots__swiper .swiper-wrapper .swiper-slide {
  min-width: 242px !important;
  min-height: 402.24px !important;
}
@media screen and (min-width:1001px) {
  .spots__swiper-all .spots__swiper .swiper-wrapper .swiper-slide {
    min-width: 344.75px !important;
    min-height: 538px !important;
  }
}
.spots__swiper-all .spots__swiper .swiper-wrapper .swiper-slide img {
  width: 100% !important;
  aspect-ratio: 51/37;
}
@media screen and (min-width:1001px) {
  .spots__swiper-all .spots__swiper .swiper-wrapper .swiper-slide img {
    aspect-ratio: auto;
  }
}

.spots__slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
  background-color: #ffffff;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (min-width:1001px) {
  .spots__slide {
    gap: 24px;
  }
}

.spots__slide-image {
  display: inline-block;
  min-width: 200px;
}
.spots__slide-body {
  padding-left: 26px;
  padding-right: 24px;
}
@media screen and (min-width:1001px) {
  .spots__slide-body {
    padding-left: 35px;
    padding-right: 35px;
  }
}

.spots__slide-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width:1001px) {
  .spots__slide-text {
    gap: 26px;
  }
}

.spots-slide-text__main {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .spots-slide-text__main {
    font-size: 20px;
    font-weight: 700;
  }
}

.spots-slide-text__sub {
  font-size: 12px;
  font-weight: 400;
  min-height: 134.4px;
}
@media screen and (min-width:1001px) {
  .spots-slide-text__sub {
    font-size: 16px;
    font-weight: 400;
  }
}

.spots__sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding-bottom: 9px;
}
@media screen and (min-width:1001px) {
  .spots__sub {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 81px;
    padding-top: 66px;
    padding-bottom: 0;
  }
}

.spots__img img {
  width: 255px;
}
@media screen and (min-width:1001px) {
  .spots__img img {
    width: 495px;
  }
}

.spots__third {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width:1001px) {
  .spots__third {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 35px;
  }
}

.spots__thirdtext {
  color: #ffffff;
  font-size: 11.444px;
  font-weight: 400;
}
@media screen and (min-width:1001px) {
  .spots__thirdtext {
    font-size: 16px;
  }
}

@media screen and (min-width:1001px) {
  .spots__thirdbutton {
    padding-left: 12px;
  }
}

.spots__thirdbuttontext {
  font-size: 16px;
  font-weight: 700;
  width: 333px;
  height: 40px;
  padding: 6px 21px 8px 21px;
}
@media screen and (min-width:1001px) {
  .spots__thirdbuttontext {
    font-size: 20px;
    width: 434px;
    height: 59px;
    padding: 11px 36px 12px 36px;
    border: 3px solid #4a3636;
  }
}

.spots__bottombg {
  background: #e9f6f8 url(../img/sp/img-sp-bottom-wave.png) repeat-x left center/96px 45.714px;
  height: 45.714px;
}
@media screen and (min-width:1001px) {
  .spots__bottombg {
    background: #e9f6f8 url(../img/img-spots-bottomwave-pc.png) repeat-x left center/252px 104px;
    height: 104px;
  }
}

.gallery__prev {
  display: none;
}
@media screen and (min-width:1001px) {
  .gallery__prev {
    display: block;
  }
}

.gallery__next {
  display: none;
}
@media screen and (min-width:1001px) {
  .gallery__next {
    display: block;
  }
}

.gallery__prev,
.gallery__next {
  width: 80px;
  height: 80px;
}
.gallery__prev svg,
.gallery__next svg {
  display: none;
}

.gallery__prev {
  left: -4% !important;
  top: 94% !important;
  background: url(../img/img-icon-leftarrow.png) no-repeat center center/contain;
}

.gallery__next {
  left: 69% !important;
  top: 94% !important;
  background: url(../img/img-icon-rightarrow.png) no-repeat center center/contain;
}

.faq {
  background-color: #e9f6f8;
  min-width: 375px;
  padding-bottom: 30.67px;
}
@media screen and (min-width:1001px) {
  .faq {
    min-width: 1512px;
    padding-top: 120px;
    padding-bottom: 0;
  }
}

.faq__inner {
  max-width: 800px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width:1001px) {
  .faq__inner {
    max-width: 1024px;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
  }
}

.faq_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: 40px;
  gap: 24px;
}
@media screen and (min-width:1001px) {
  .faq_container {
    padding-top: 0;
    gap: 40px;
  }
}

.faq__qas {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
@media screen and (min-width:1001px) {
  .faq__qas {
    gap: 23px;
  }
}

.faq__qa {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 12px;
  border: 2px solid #4a3636;
  overflow: hidden;
  background-color: #ffffff;
}
.faq__qa:nth-child(2) .faq__qa-question {
  padding-bottom: 8px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(2) .faq__qa-question {
    padding-bottom: 21px;
  }
}
.faq__qa:nth-child(2) .faq-qa__answer {
  padding: 16px 14px 14px 16px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(2) .faq-qa__answer {
    padding-left: 26px;
  }
}
.faq__qa:nth-child(3) .faq__qa-question {
  padding-bottom: 8px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(3) .faq__qa-question {
    padding-bottom: 22px;
  }
}
.faq__qa:nth-child(3) .faq-qa__answer {
  padding: 18px 16px 13px 16px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(3) .faq-qa__answer {
    padding-left: 26px;
  }
}
.faq__qa:nth-child(4) .faq__qa-question {
  padding-bottom: 8px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(4) .faq__qa-question {
    padding-bottom: 19px;
  }
}
.faq__qa:nth-child(4) .faq-qa__answer {
  padding: 16px 16px 14px 16px;
}
@media screen and (min-width:1001px) {
  .faq__qa:nth-child(4) .faq-qa__answer {
    padding-left: 26px;
  }
}

.faq__qa-question {
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  padding-right: 13px;
}
@media screen and (min-width:1001px) {
  .faq__qa-question {
    padding-top: 20px;
    padding-right: 14px;
    padding-bottom: 24px;
    padding-left: 24px;
  }
}

.faq-box__head-icon {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  font-family: "Josefin Sans", sans-serif;
  color: #9ed0e0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width:1001px) {
  .faq-box__head-icon {
    font-size: 32px;
  }
}

.faq-box__head-text {
  text-align: left;
  font-size: 14px;
  font-weight: 700;
  width: 82.5082508251%;
}
@media screen and (min-width:1001px) {
  .faq-box__head-text {
    font-size: 20px;
    -moz-text-align-last: left;
         text-align-last: left;
    width: 89.2418032787%;
  }
}

.faq-box__head-click {
  width: 8.6409240924%;
  text-align: right;
}
@media screen and (min-width:1001px) {
  .faq-box__head-click {
    width: 4.9180327869%;
  }
}
.faq-box__head-click img {
  width: 26.182px;
  padding-bottom: 5px;
}
@media screen and (min-width:1001px) {
  .faq-box__head-click img {
    width: 48px;
    padding-bottom: 0;
  }
}

.faq-qa__answer {
  display: none;
  padding: 13px 16px 14px 16px;
  background-color: #f5f5f5;
}
@media screen and (min-width:1001px) {
  .faq-qa__answer {
    padding: 23px 16px 23px 24px;
  }
}

.faq-qa-body__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
}

.faq-box-body__a-icon {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  color: #9ed0e0;
  font-family: "Josefin Sans", sans-serif;
  width: 22.3px;
  text-align: center;
  padding-right: 3px;
}
@media screen and (min-width:1001px) {
  .faq-box-body__a-icon {
    font-size: 32px;
    font-weight: 400;
    padding-right: 0;
  }
}

.faq-box-body__a-text {
  font-size: 14px;
  font-weight: 400;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width:1001px) {
  .faq-box-body__a-text {
    font-size: 16px;
  }
}

.faq__link {
  font-size: 14px;
  font-weight: 400;
  border-bottom: 1px solid #4a3636;
}

.info__link {
  font-size: 12px;
  font-weight: 400;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: auto;
  text-underline-offset: 2px;
  -webkit-transition: 0.3s color;
  transition: 0.3s color;
}
@media screen and (min-width:1001px) {
  .info__link {
    font-size: 16px;
  }
}
.info__link:hover {
  color: #67b0c7;
}

.info__link-policy {
  text-underline-offset: 0px;
}
@media screen and (min-width:1001px) {
  .info__link-policy {
    text-underline-offset: 6px;
  }
}

.info__outside {
  background-color: #e9f6f8;
  max-width: 800px;
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (min-width:1001px) {
  .info__outside {
    max-width: 1512px;
    padding-right: 244px;
    padding-left: 244px;
  }
}

.info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
  min-width: 375px;
  background-color: #e9f6f8;
}
@media screen and (min-width:1001px) {
  .info {
    padding-top: 123px;
    gap: 120px;
    min-width: 1512px;
  }
}

.info__inner {
  background-color: #ffffff;
  padding: 8px;
}
@media screen and (min-width:1001px) {
  .info__inner {
    padding: 10px;
  }
}

.info__containerinner {
  padding: 15px 15px 10px 15px;
  background-color: #f4fafc;
}
@media screen and (min-width:1001px) {
  .info__containerinner {
    padding: 30px 46px 38px 46px;
  }
}

.info__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 26px;
}
@media screen and (min-width:1001px) {
  .info__container {
    gap: 40px;
  }
}

.info-body__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}

.info-body__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  padding-bottom: 13px;
  border-bottom: 1px solid #ccc;
}
@media screen and (min-width:1001px) {
  .info-body__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
    padding-bottom: 10px;
  }
}
.info-body__list:nth-child(2) {
  padding-bottom: 16px;
}
@media screen and (min-width:1001px) {
  .info-body__list:nth-child(2) {
    padding-bottom: 12px;
  }
}
@media screen and (min-width:1001px) {
  .info-body__list:nth-child(3) {
    padding-bottom: 12px;
  }
}
.info-body__list:nth-child(4) {
  padding-bottom: 14px;
}
.info-body__list:nth-child(5) {
  gap: 9px;
  border-bottom: none;
}

.info-body__list-subject {
  position: relative;
  padding-left: 16px;
  font-size: 14px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .info-body__list-subject {
    min-width: 26.3157894737%;
    padding-left: 31px;
    font-size: 16px;
  }
}
.info-body__list-subject::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #9ed0e0;
}
@media screen and (min-width:1001px) {
  .info-body__list-subject::before {
    top: 8px;
    left: 15px;
  }
}

.info-body__list-text {
  font-size: 12px;
  font-weight: 400;
}
@media screen and (min-width:1001px) {
  .info-body__list-text {
    font-size: 16px;
    min-width: 73.6842105263%;
  }
}

.info__entry img {
  width: 100%;
}

@media screen and (min-width:1001px) {
  .info__style-disp {
    display: inline;
  }
}

.info_style-1 {
  display: inline-block;
}
@media screen and (min-width:1001px) {
  .info_style-1 {
    margin-left: -3px;
  }
}

.info_style-2 {
  padding-right: 8px;
}
@media screen and (min-width:1001px) {
  .info_style-2 {
    padding-right: 10px;
  }
}

.info_style-3 {
  padding-right: 3px;
}

.info_style-4 {
  padding-right: 1px;
}

.info_style-5 {
  padding-left: 2px;
}
@media screen and (min-width:1001px) {
  .info_style-5 {
    margin-left: -4px;
  }
}

.info-body__list-textchild {
  position: relative;
  padding-left: 18px;
  font-size: 12px;
  font-weight: 400;
}
@media screen and (min-width:1001px) {
  .info-body__list-textchild {
    font-size: 16px;
    font-weight: 400;
    padding-left: 15px;
  }
}
.info-body__list-textchild:nth-child(4) {
  padding-right: 2px;
  position: relative;
  top: -3px;
}
@media screen and (min-width:1001px) {
  .info-body__list-textchild:nth-child(4) {
    top: 1px;
  }
}
.info-body__list-textchild:nth-child(n+5) {
  padding-right: 2px;
  position: relative;
  top: -5px;
}
@media screen and (min-width:1001px) {
  .info-body__list-textchild:nth-child(n+5) {
    top: 4px;
  }
}
.info-body__list-textchild::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 8px;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background-color: #4a3636;
}
@media screen and (min-width:1001px) {
  .info-body__list-textchild::before {
    top: 12px;
    left: 1px;
    width: 4px;
    height: 4px;
  }
}

.contact {
  min-width: 375px;
  padding-top: 45px;
  padding-bottom: 47px;
  background-color: #ffffff;
}
@media screen and (min-width:1001px) {
  .contact {
    padding-top: 128px;
    padding-bottom: 120px;
    min-width: 1512px;
  }
}

.contact__inner {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width:1001px) {
  .contact__inner {
    max-width: 1512px;
    margin: 0 auto;
    padding-left: 332px;
    padding-right: 332px;
  }
}

.contact__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (min-width:1001px) {
  .contact__container {
    gap: 40px;
    max-width: none;
  }
}

.contact__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}
@media screen and (min-width:1001px) {
  .contact__header {
    gap: 31px;
  }
}

.contact__headersecond {
  gap: 8px;
}
.contact__headersecond .section__icon img {
  width: 29px;
}
@media screen and (min-width:1001px) {
  .contact__headersecond .section__icon img {
    width: 40px;
  }
}
.contact__headersecond .section__title {
  padding-top: 3px;
}
@media screen and (min-width:1001px) {
  .contact__headersecond .section__title {
    padding-top: 10px;
  }
}

.contact__header-text {
  font-size: 12px;
  font-weight: 400;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .contact__header-text {
    font-size: 16px;
    font-weight: 400;
  }
}

.contact__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 26px;
}
@media screen and (min-width:1001px) {
  .contact__form {
    gap: 24px;
  }
}

.form-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
@media screen and (min-width:1001px) {
  .form-field {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
  }
}
@media screen and (min-width:1001px) {
  .form-field:nth-child(3) {
    margin-top: -2px;
  }
}
.form-field:nth-child(4) {
  gap: 4px;
}
@media screen and (min-width:1001px) {
  .form-field:nth-child(4) {
    margin-top: 13px;
  }
}
@media screen and (min-width:1001px) {
  .form-field:nth-child(5) {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 14px;
  }
}
.form-field:nth-child(5) .form-field__item {
  height: 157px;
}

.form-field__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width:1001px) {
  .form-field__head {
    width: 25.9433962264%;
  }
}

.form-field__label {
  font-size: 14px;
  font-weight: 700;
}
@media screen and (min-width:1001px) {
  .form-field__label {
    font-size: 16px;
  }
}

.form-field__tag {
  font-size: 12px;
  font-weight: 700;
  padding: 4px 8px;
  border-radius: 4px;
  color: #ffffff;
  background-color: #ce2073;
}

@media screen and (min-width:1001px) {
  .form-field__item {
    width: 74.0566037736%;
  }
}

.form-text {
  font-size: 14px;
  font-weight: 400;
  padding: 16px;
  border-radius: 8px;
  background: #f5f5f5;
  width: 100%;
  border: none;
  -webkit-transition: border 0.3s, background-color 0.3s;
  transition: border 0.3s, background-color 0.3s;
}
@media screen and (min-width:1001px) {
  .form-text {
    font-size: 16px;
  }
}
.form-text:hover {
  border: 1px solid #9ed0e0;
  background-color: #e9f6f8;
}

.form-select {
  position: relative;
  font-size: 14px;
  font-weight: 400;
  padding: 16px;
  border-radius: 8px;
  background: transparent;
  width: 100%;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media screen and (min-width:1001px) {
  .form-select {
    font-size: 16px;
  }
}

.form-field__message {
  position: relative;
  margin-right: -1px;
  background: linear-gradient(to left, #9ed0e0 0, #9ed0e0 52px, #f5f5f5 52px, #f5f5f5 100%);
  border-radius: 8px;
}
.form-field__message::after {
  content: "";
  width: 14px;
  height: 10px;
  position: absolute;
  top: 21px;
  right: 20px;
  background: url(../img/img-bottom-arrow.png) no-repeat center/cover;
}

.form-field__radios {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 24px;
}

.is-option {
  display: none;
}

.form-radio__input {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}
.form-radio__input:checked + .form-radio__text::after {
  opacity: 1;
}

.form-radio__text {
  font-size: 14px;
  font-weight: 400;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width:1001px) {
  .form-radio__text {
    font-size: 16px;
  }
}
.form-radio__text::before, .form-radio__text::after {
  content: "";
  position: absolute;
  top: -9%;
  border-radius: 50%;
}
.form-radio__text::before {
  width: 24px;
  height: 24px;
  background-color: #f5f5f5;
  left: 0;
}
.form-radio__text::after {
  width: 10px;
  height: 10px;
  background: #9ed0e0;
  left: 7px;
  top: 5px;
  opacity: 0;
}

.form-field__item-textarea {
  border: none;
  font-size: 14px;
  font-weight: 400;
  background: #f5f5f5;
  padding: 16px;
  width: 100%;
  height: 100%;
  -webkit-transition: border 0.3s, background-color 0.3s;
  transition: border 0.3s, background-color 0.3s;
}
@media screen and (min-width:1001px) {
  .form-field__item-textarea {
    padding: 14px;
  }
}
.form-field__item-textarea:hover {
  border: 1px solid #9ed0e0;
  background-color: #e9f6f8;
}

.contact__privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -5px;
}
@media screen and (min-width:1001px) {
  .contact__privacy {
    padding-top: 24px;
  }
}

.form-checkbox__input {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}
.form-checkbox__input:checked + .form-checkbox__text::after {
  opacity: 1;
}

.form-checkbox__text {
  position: relative;
  padding-left: 35px;
  font-size: 14px;
  font-weight: 400;
}
@media screen and (min-width:1001px) {
  .form-checkbox__text {
    font-size: 16px;
  }
}
.form-checkbox__text::before, .form-checkbox__text::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.form-checkbox__text::before {
  width: 22px;
  height: 22px;
  border-radius: 1px;
  background-color: #f5f5f5;
}
.form-checkbox__text::after {
  width: 16px;
  height: 16px;
  left: 3px;
  background: url(../img/icon-check.png) no-repeat center center/contain;
  opacity: 0;
}
.form-checkbox__text .form-checkbox__text-underline {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  -webkit-transition: 0.3s color;
  transition: 0.3s color;
}
.form-checkbox__text .form-checkbox__text-underline:hover {
  color: #67b0c7;
}

.contact_button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width:1001px) {
  .contact_button {
    margin-top: 18px;
  }
}

.contact_button-text {
  font-size: 16px;
  font-weight: 700;
  padding: 4px 22px 8px 22px;
  width: 209px;
}
@media screen and (min-width:1001px) {
  .contact_button-text {
    width: 238px;
    height: 40px;
  }
}

.footer {
  background-color: #e9f6f8;
  padding-top: 40px;
  min-width: 375px;
}
@media screen and (min-width:1001px) {
  .footer {
    padding-top: 80px;
    min-width: 1512px;
  }
}

.footer_inner {
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width:1001px) {
  .footer_inner {
    max-width: 1512px;
    padding-left: 80px;
    padding-right: 80px;
    padding-bottom: 116px;
    margin: 0 auto;
  }
}

.footer__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (min-width:1001px) {
  .footer__container {
    background: url(../img/footprint.png) no-repeat right top/100px 220px;
    max-width: 1512px;
    margin: 0 auto;
    padding-right: 164px;
    padding-left: 164px;
  }
}

.footer__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.footer__subject {
  color: #4a3636;
  font-family: "Josefin Sans", sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.24;
}
@media screen and (min-width:1001px) {
  .footer__subject {
    font-size: 24px;
    padding-top: 40px;
  }
}

.footer__snslogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 40px;
  padding-top: 24px;
}
@media screen and (min-width:1001px) {
  .footer__snslogo {
    padding-top: 28px;
  }
}

.footer-sns__youtube img {
  width: 26px;
}
@media screen and (min-width:1001px) {
  .footer-sns__youtube img {
    width: 32px;
  }
}

.footer-sns__instagram {
  padding-left: 5px;
}
@media screen and (min-width:1001px) {
  .footer-sns__instagram {
    padding-left: 7px;
  }
}
.footer-sns__instagram img {
  width: 28px;
}
@media screen and (min-width:1001px) {
  .footer-sns__instagram img {
    width: 35px;
  }
}

.footer-sns__x {
  padding-left: 5px;
}
.footer-sns__x img {
  width: 29px;
}
@media screen and (min-width:1001px) {
  .footer-sns__x img {
    width: 38px;
  }
}

.footer__onomichimark {
  padding-top: 15px;
}
@media screen and (min-width:1001px) {
  .footer__onomichimark {
    padding-top: 41px;
  }
}
.footer__onomichimark img {
  width: 328px;
}
@media screen and (min-width:1001px) {
  .footer__onomichimark img {
    width: 755px;
  }
}

.footer__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #ffffff;
  border-radius: 16px;
}
@media screen and (min-width:1001px) {
  .footer__body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    gap: 0;
  }
}

@media screen and (min-width:1001px) {
  .footer-info__map {
    width: 50%;
  }
}

.footer-info__googlemap {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 60/49;
}
@media screen and (min-width:768px) {
  .footer-info__googlemap {
    aspect-ratio: 60/35;
  }
}
@media screen and (min-width:1001px) {
  .footer-info__googlemap {
    aspect-ratio: 60/47;
  }
}

@media screen and (min-width:1001px) {
  .footer-info__accesslistinner {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.footer-info__access {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px;
  padding: 0 27.5px 29px;
}
@media screen and (min-width:1001px) {
  .footer-info__access {
    width: 75.9765625%;
    height: 49.5%;
    padding: 0px;
    gap: 22px;
  }
}

.footer-info__logo {
  text-align: center;
}
@media screen and (min-width:1001px) {
  .footer-info__logo {
    text-align: left;
  }
}
.footer-info__logo img {
  width: 153px;
}
@media screen and (min-width:1001px) {
  .footer-info__logo img {
    width: 182px;
  }
}

.footer-info__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  padding-top: 2px;
}

.footer-info__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media screen and (min-width:1001px) {
  .footer-info__list:nth-child(2) {
    padding-top: 3px;
  }
  .footer-info__list:nth-child(3) {
    padding-top: 6px;
  }
  .footer-info__list:nth-child(4) {
    padding-top: 3px;
  }
}

.footer-list__subjecttext {
  position: relative;
  padding-left: 16px;
  font-size: 12px;
  font-weight: 700;
  width: 28.5714285714%;
}
@media screen and (min-width:1001px) {
  .footer-list__subjecttext {
    font-size: 16px;
    width: 32.3907455013%;
  }
}
.footer-list__subjecttext::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #9ed0e0;
}

.footer-list__contenttext {
  font-size: 12px;
  font-weight: 400;
  width: 71.4285714286%;
}
@media screen and (min-width:1001px) {
  .footer-list__contenttext {
    font-size: 16px;
  }
}

.footer__pagetop {
  padding-top: 25px;
  padding-bottom: 24px;
  text-align: center;
}
@media screen and (min-width:1001px) {
  .footer__pagetop {
    position: fixed;
    z-index: 199;
    padding: 0;
    padding-bottom: 0;
    right: 39px;
    bottom: 314px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s, visibility 0.3s;
    transition: opacity 0.3s, visibility 0.3s;
  }
  .footer__pagetop.is-show {
    visibility: visible;
    opacity: 1;
  }
}
.footer__pagetop img {
  width: 75px;
}
@media screen and (min-width:1001px) {
  .footer__pagetop img {
    width: 100px;
  }
}

.footer__bgwage {
  width: 100%;
  height: 45.714px;
  background: url(../img/img_bg_wave_darkblue.png) repeat-x -2% 3%/96px 45.714px;
}
@media screen and (min-width:1001px) {
  .footer__bgwage {
    height: 116px;
    background: url(../img/img_bg_wave_darkblue_pc.png) repeat-x 0% 0%/252px 120px;
  }
}

.footer__copyright {
  font-size: 10px;
  color: #ffffff;
  font-weight: 400;
  background-color: #67b0c7;
  text-align: center;
  padding-bottom: 24px;
}
@media screen and (min-width:1001px) {
  .footer__copyright {
    font-size: 14px;
    padding-top: 3px;
    padding-bottom: 32px;
  }
}

.form-field .is-error-label {
  color: #ce2073;
}

.form-field__item input.is-error {
  border: 1px solid #ce2073;
  background: #fff0f7;
}
.form-field__item select.is-error {
  border: 1px solid #ce2073;
  background: linear-gradient(to left, #ce2073 0, #ce2073 52px, #fff0f7 52px, #fff0f7 100%);
}
.form-field__item textarea.is-error {
  border: 1px solid #ce2073;
  background: #fff0f7;
}