@charset "UTF-8";
.fn-os {
  font-family: "Oswald", sans-serif;
}

main .mv, main .mv--01 {
  position: relative;
  background-color: #d6e3e6;
  aspect-ratio: 1/0.55;
  overflow: hidden;
}
@media (max-width: 767px) {
  main .mv, main .mv--01 {
    aspect-ratio: unset;
    height: 65vw;
  }
}
@media (max-width: 767px) {
  main .mv--01 {
    aspect-ratio: unset;
    height: auto;
  }
}
main .mv .slider, main .mv--01 .slider {
  position: relative;
  aspect-ratio: 1/0.55;
  width: 100%;
  overflow: hidden;
}
@media (max-width: 767px) {
  main .mv .slider, main .mv--01 .slider {
    aspect-ratio: unset;
  }
}
main .mv .slider .slick-slide, main .mv--01 .slider .slick-slide {
  aspect-ratio: 1/0.55;
  overflow: hidden;
}
@media (max-width: 767px) {
  main .mv .slider .slick-slide, main .mv--01 .slider .slick-slide {
    aspect-ratio: unset;
  }
}
main .mv .slider__veil, main .mv--01 .slider__veil {
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
}
main .mv .slider__veil img.veil01, main .mv--01 .slider__veil img.veil01 {
  width: 200%;
  max-width: unset;
  height: auto;
  transform: translate(-30%, -50%) rotate(20deg);
  transition: 4s cubic-bezier(0.42, 0.01, 0.99, 0.42);
  opacity: 1;
}
main .mv .slider__veil img.veil02, main .mv--01 .slider__veil img.veil02 {
  position: absolute;
  top: 0;
  right: -75%;
  width: 200%;
  max-width: unset;
  height: auto;
  transform: translate(-30%, -50%) rotate(20deg);
  transition: 4.5s cubic-bezier(0.42, 0.01, 0.99, 0.42);
  opacity: 0.6;
}
main .mv .slider .veil__on.slider__veil img.veil01, main .mv--01 .slider .veil__on.slider__veil img.veil01 {
  transform: translate(-30%, -5%) rotate(0deg);
}
main .mv .slider .veil__on.slider__veil img.veil02, main .mv--01 .slider .veil__on.slider__veil img.veil02 {
  transform: translate(-25%, -5%) rotate(-5deg);
}
main .mv .slider__txt, main .mv .slider__txt--02, main .mv .slider__txt--01, main .mv--01 .slider__txt, main .mv--01 .slider__txt--02, main .mv--01 .slider__txt--01 {
  position: absolute;
  top: 5%;
  left: 2rem;
  text-align: center;
  font-family: YakuHanMPs, "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.15em;
  font-size: min(7vw, 9rem);
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}
@media (max-width: 767px) {
  main .mv .slider__txt, main .mv .slider__txt--02, main .mv .slider__txt--01, main .mv--01 .slider__txt, main .mv--01 .slider__txt--02, main .mv--01 .slider__txt--01 {
    font-size: 15cqi;
    line-height: 1;
    top: 1rem;
  }
}
main .mv .slider__txt--01, main .mv--01 .slider__txt--01 {
  width: 28%;
  opacity: 0;
}
main .mv .slider__txt--01.is-active, main .mv--01 .slider__txt--01.is-active {
  animation-name: fade01;
  animation-delay: 0.8s;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}
@keyframes fade01 {
  0% {
    opacity: 0;
    transform: translateY(30%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
main .mv .slider__txt--02, main .mv--01 .slider__txt--02 {
  top: unset;
  width: -moz-fit-content;
  width: fit-content;
  bottom: 2rem;
  left: 2rem;
  font-size: min(10vw, 20rem);
  line-height: 1;
}
main .mv .slider__txt--02.-start, main .mv--01 .slider__txt--02.-start {
  opacity: 0;
  animation-name: startTxt;
  animation-delay: 0.5s;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}
@keyframes startTxt {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media (max-width: 767px) {
  main .mv .slider__txt--02, main .mv--01 .slider__txt--02 {
    font-size: 12cqi;
  }
}
main .mv .slider.slick-initialized li, main .mv--01 .slider.slick-initialized li {
  display: block !important;
}
main .mv .slider .dots-wrap, main .mv--01 .slider .dots-wrap {
  position: absolute;
  display: flex;
  justify-content: center;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
main .mv .slider .dots-wrap li, main .mv--01 .slider .dots-wrap li {
  width: 15px;
  height: 15px;
  margin: 0 5px;
  background: #fff;
  border: 2px solid #fff;
  border-radius: 50%;
  cursor: pointer;
}
@media (max-width: 767px) {
  main .mv .slider .dots-wrap li, main .mv--01 .slider .dots-wrap li {
    width: 10px;
    height: 10px;
  }
}
main .mv .slider .dots-wrap li:hover, main .mv--01 .slider .dots-wrap li:hover,
main .mv .slider .dots-wrap li.slick-active,
main .mv--01 .slider .dots-wrap li.slick-active {
  background: none;
}
main .mv .slider .dots-wrap li button, main .mv--01 .slider .dots-wrap li button {
  display: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}
main .mv .slider .slick-prev, main .mv--01 .slider .slick-prev {
  cursor: pointer;
  display: inline-block;
  width: 4rem;
  height: 4rem;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%) rotate(225deg);
  z-index: 1;
}
@media (max-width: 767px) {
  main .mv .slider .slick-prev, main .mv--01 .slider .slick-prev {
    width: 3rem;
    height: 3rem;
  }
}
main .mv .slider .slick-prev:hover, main .mv--01 .slider .slick-prev:hover {
  opacity: 0.5;
}
main .mv .slider .slick-next, main .mv--01 .slider .slick-next {
  cursor: pointer;
  display: inline-block;
  width: 4rem;
  height: 4rem;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%) rotate(45deg);
  z-index: 1;
  transition: 0.3s;
}
@media (max-width: 767px) {
  main .mv .slider .slick-next, main .mv--01 .slider .slick-next {
    width: 3rem;
    height: 3rem;
  }
}
main .mv .slider .slick-next:hover, main .mv--01 .slider .slick-next:hover {
  opacity: 0.5;
}
main .mv .slider li, main .mv--01 .slider li {
  position: relative;
}
main .mv .slider li:not(:first-child), main .mv--01 .slider li:not(:first-child) {
  display: none;
}
main .mv .slider li .catch, main .mv--01 .slider li .catch {
  position: absolute;
  font-size: min(4.5rem, 2.4vw);
  line-height: 1.8;
  color: #fff;
  text-shadow: 0 0 5px #000, 0 0 5px #000;
  text-align: left;
  opacity: 0;
  filter: blur(10px);
  transition: 1.5s;
  z-index: 1;
}
@media (max-width: 767px) {
  main .mv .slider li .catch, main .mv--01 .slider li .catch {
    font-size: 1.6rem;
  }
}
main .mv .slider li .catch small, main .mv--01 .slider li .catch small {
  font-size: 0.7em;
}
main .mv .slider li .catch em, main .mv--01 .slider li .catch em {
  font-size: 1.5em;
}
main .mv .slider li .bg, main .mv--01 .slider li .bg {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .mv .slider li.scene_birdview .catch, main .mv--01 .slider li.scene_birdview .catch {
  top: 3rem;
  left: 3rem;
}
@media (max-width: 767px) {
  main .mv .slider li.scene_birdview .catch, main .mv--01 .slider li.scene_birdview .catch {
    top: 2rem;
    left: 2rem;
  }
}
main .mv .slider li.scene01 .catch, main .mv--01 .slider li.scene01 .catch {
  top: 3rem;
  left: 3rem;
}
@media (max-width: 767px) {
  main .mv .slider li.scene01 .catch, main .mv--01 .slider li.scene01 .catch {
    top: 2rem;
    left: 2rem;
  }
}
@media (max-width: 767px) {
  main .mv .slider li.scene01 .bg, main .mv--01 .slider li.scene01 .bg {
    -o-object-position: 100%;
       object-position: 100%;
  }
}
main .mv .slider li .scene01__img, main .mv--01 .slider li .scene01__img {
  height: 100%;
}
main .mv .slider li.scene02 .catch, main .mv--01 .slider li.scene02 .catch {
  top: 3rem;
  left: 3rem;
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .catch, main .mv--01 .slider li.scene02 .catch {
    top: 2rem;
    left: 2rem;
  }
}
main .mv .slider li.scene02 .imgCap, main .mv--01 .slider li.scene02 .imgCap {
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
  text-shadow: 0 0 5px #000, 0 0 5px #000;
  z-index: 1;
  position: absolute;
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .imgCap, main .mv--01 .slider li.scene02 .imgCap {
    font-size: 1rem;
  }
}
main .mv .slider li.scene02 .imgCap--01, main .mv--01 .slider li.scene02 .imgCap--01 {
  bottom: 1rem;
  left: 76%;
  transform: translateX(-100%);
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .imgCap--01, main .mv--01 .slider li.scene02 .imgCap--01 {
    left: unset;
    right: 1rem;
    top: 73%;
    bottom: unset;
    transform: translateX(0);
  }
}
main .mv .slider li.scene02 .imgCap--02, main .mv--01 .slider li.scene02 .imgCap--02 {
  top: 32%;
  right: 1rem;
  transform: translateY(-100%);
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .imgCap--02, main .mv--01 .slider li.scene02 .imgCap--02 {
    top: unset;
    left: 1rem;
    bottom: 0.5rem;
    transform: translateX(0);
  }
}
main .mv .slider li.scene02 .imgCap--03, main .mv--01 .slider li.scene02 .imgCap--03 {
  top: 65%;
  right: 1rem;
  transform: translateY(-100%);
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .imgCap--03, main .mv--01 .slider li.scene02 .imgCap--03 {
    top: unset;
    left: calc(33.33% + 0.5rem);
    bottom: 0.5rem;
    transform: translateX(0);
  }
}
main .mv .slider li.scene02 .imgCap--04, main .mv--01 .slider li.scene02 .imgCap--04 {
  bottom: 1rem;
  right: 1rem;
}
@media (max-width: 767px) {
  main .mv .slider li.scene02 .imgCap--04, main .mv--01 .slider li.scene02 .imgCap--04 {
    top: unset;
    left: calc(66.66% + 0.5rem);
    bottom: 0.5rem;
    transform: translateX(0);
  }
}
main .mv .slider li.scene03 .catch, main .mv--01 .slider li.scene03 .catch {
  top: 3rem;
  left: 3rem;
  line-height: 1.4;
}
main .mv .slider li.scene03 .catch em, main .mv--01 .slider li.scene03 .catch em {
  font-family: "Cinzel", serif;
  font-size: 2.2em;
}
@media (max-width: 767px) {
  main .mv .slider li.scene03 .catch, main .mv--01 .slider li.scene03 .catch {
    top: 2rem;
    left: 2rem;
    font-size: 1.4rem;
  }
}
main .mv .slider li.anime .catch, main .mv--01 .slider li.anime .catch {
  opacity: 1;
  filter: blur(0);
}
main .mv .slider li.anime .mark, main .mv--01 .slider li.anime .mark {
  opacity: 1;
}
main .info-area {
  width: 90%;
  max-width: 900px;
  margin: 0 auto 3rem;
  border: 2px solid #C6A131;
  box-shadow: 0 0 10px #ddd;
  padding: 3rem 2rem;
}
@media (max-width: 767px) {
  main .info-area {
    padding: 2rem;
  }
}
main .info-area__date {
  color: #d42626;
  font-size: 4rem;
  line-height: 1;
  text-align: center;
  font-weight: 600;
}
main .info-area__date .blue {
  color: #1358a2;
}
main .info-area__date small {
  font-size: 0.6em;
}
main .info-area__txt {
  color: #9c0202;
  font-size: 4rem;
  line-height: 1;
  text-align: center;
  font-weight: 600;
  display: flex;
  justify-content: center;
  gap: 1rem;
}
@media (max-width: 767px) {
  main .info-area__txt {
    font-size: 3rem;
    display: block;
  }
}
main .info-area__txt02 {
  margin-top: 1rem;
  font-size: 2.4rem;
  text-align: center;
}
@media (max-width: 767px) {
  main .info-area__txt02 {
    font-size: 2rem;
  }
}
main .info-area .btn_reserve {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 1rem auto 0;
  background: #880017;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .info-area .btn_reserve:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .info-area .btn_reserve {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .info-area .btn_reserve:hover {
    box-shadow: none;
  }
}
main .usp__inner {
  background-color: #091236;
  padding: 1rem 0;
}
@media (max-width: 767px) {
  main .usp__inner {
    background-color: unset;
    padding: 0;
  }
}
main .usp__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  background-color: #5b617c;
}
@media (max-width: 767px) {
  main .usp__list {
    gap: 2px;
  }
}
main .usp__list li {
  background-color: #091236;
  padding: 0 3rem;
}
@media (max-width: 767px) {
  main .usp__list li {
    padding: 0.5rem 0;
  }
}
main .usp__img {
  display: block;
  width: 100%;
  max-width: 1300px;
  margin-inline: auto;
}
main .usp__txt {
  color: #8B2126;
  text-align: center;
  font-size: 3.4rem;
  letter-spacing: 0.2em;
  font-weight: 600;
  padding: 3rem 0;
}
@media (max-width: 767px) {
  main .usp__txt {
    font-size: 2.2rem;
    letter-spacing: 0em;
    padding: 2rem 0;
  }
}
main .cv-area {
  background-color: #EEECEB;
  padding: 5rem 0;
}
@media (max-width: 767px) {
  main .cv-area {
    padding: 3rem 0;
  }
}
main .cv-area .bnr-price {
  display: block;
  width: 90%;
  max-width: 500px;
  margin-inline: auto;
  transition: 0.3s;
}
main .cv-area .bnr-price:hover {
  opacity: 0.5;
}
main .cv-area__btns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  width: 90%;
  max-width: 1200px;
  margin-top: 3rem;
  margin-inline: auto;
}
@media (max-width: 767px) {
  main .cv-area__btns {
    margin-top: 2rem;
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}
main .cv-area__btns__btn, main .cv-area__btns__btn--lmtd {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  background: rgb(88, 169, 116);
  background: linear-gradient(90deg, rgb(88, 169, 116) 0%, rgb(0, 119, 132) 50%, rgb(0, 77, 111) 100%);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .cv-area__btns__btn--lmtd {
  color: #091236;
  background: #E1B400;
  background: linear-gradient(90deg, rgb(225, 180, 0) 0%, rgb(230, 222, 179) 50%, rgb(225, 180, 0) 100%);
}
main .cv-area__btns__btn:after, main .cv-area__btns__btn--lmtd:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .cv-area__btns__btn, main .cv-area__btns__btn--lmtd {
    font-size: 1.6rem;
    width: 100%;
    padding: 2rem;
    margin-top: 1rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .cv-area__btns__btn:hover, main .cv-area__btns__btn--lmtd:hover {
    box-shadow: none;
  }
}
main .price {
  padding: 2rem 0;
  margin: 0 auto;
}
@media (max-width: 767px) {
  main .price {
    padding: 1.5rem 0;
  }
}
main .price__inner {
  width: 90%;
  max-width: 1080px;
  margin-inline: auto;
}
main .lmtd-area {
  background-color: #EEECEB;
  padding-bottom: 3rem;
}
main .lmtd-area__wrap {
  width: 90%;
  max-width: 1080px;
  margin-inline: auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  background-color: #fff;
}
main .lmtd-area__inner {
  background-image: url(../../img/top/limited-bg.jpg);
  background-position: top;
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 3rem;
}
@media (max-width: 767px) {
  main .lmtd-area__inner {
    padding: 2rem;
  }
}
main .lmtd-area__heading {
  background-color: #091236;
  color: #fff;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.3em;
  font-style: italic;
  padding: 0.5rem;
}
@media (max-width: 767px) {
  main .lmtd-area__heading {
    font-size: 1.6rem;
  }
}
main .lmtd-area__lead {
  text-align: center;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  main .lmtd-area__lead {
    font-size: 1.4rem;
  }
}
main .lmtd-area__info {
  margin-top: 2rem;
  background: rgba(174, 162, 97, 0);
  background: linear-gradient(90deg, rgba(174, 162, 97, 0) 0%, rgba(174, 162, 97, 0.2) 15%, rgb(174, 162, 97) 50%, rgba(174, 162, 97, 0.2) 85%, rgba(174, 162, 97, 0) 100%);
  padding: 0.5rem;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  main .lmtd-area__info {
    font-size: 1.8rem;
    background: linear-gradient(90deg, rgba(174, 162, 97, 0) 0%, rgba(174, 162, 97, 0.2) 5%, rgb(174, 162, 97) 50%, rgba(174, 162, 97, 0.2) 95%, rgba(174, 162, 97, 0) 100%);
  }
}
main .lmtd-area__inputArea {
  margin-top: 2rem;
  display: flex;
  justify-content: center;
  gap: 1rem;
}
@media (max-width: 767px) {
  main .lmtd-area__inputArea {
    flex-direction: column;
  }
}
main .lmtd-area__inputArea__pass {
  width: 30%;
  max-width: 400px;
  padding: 0 1rem;
  border: 1px solid #ddd;
}
@media (max-width: 767px) {
  main .lmtd-area__inputArea__pass {
    width: 100%;
    max-width: unset;
    padding: 1rem;
    text-align: center;
  }
}
main .lmtd-area__inputArea__btn, main .lmtd-area__inputArea__btn--lmtd {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 2rem auto 0;
  background: rgb(88, 169, 116);
  background: linear-gradient(90deg, rgb(88, 169, 116) 0%, rgb(0, 119, 132) 50%, rgb(0, 77, 111) 100%);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .lmtd-area__inputArea__btn--lmtd {
  color: #091236;
  background: #E1B400;
  background: linear-gradient(90deg, rgb(225, 180, 0) 0%, rgb(230, 222, 179) 50%, rgb(225, 180, 0) 100%);
}
main .lmtd-area__inputArea__btn::before, main .lmtd-area__inputArea__btn--lmtd::before {
  content: "";
  clip-path: polygon(0 0, 0% 100%, 100% 47%);
  width: 0.3em;
  height: 0.5em;
  background-color: #fff;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
}
main .lmtd-area__inputArea__btn:after, main .lmtd-area__inputArea__btn--lmtd:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .lmtd-area__inputArea__btn, main .lmtd-area__inputArea__btn--lmtd {
    font-size: 1.2rem;
    width: 70%;
    padding: 1rem 3rem;
    margin-top: 1rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .lmtd-area__inputArea__btn:hover, main .lmtd-area__inputArea__btn--lmtd:hover {
    box-shadow: none;
  }
}
main .lmtd-area__flow {
  margin-top: 3rem;
}
main .lmtd-area__flow__heading {
  display: flex;
  gap: 1rem;
  font-size: 2rem;
  font-style: italic;
  align-items: center;
}
main .lmtd-area__flow__heading::before, main .lmtd-area__flow__heading:after {
  content: "";
  height: 1px;
  background-color: #091236;
  flex-grow: 1;
}
main .lmtd-area__flow__list {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
main .lmtd-area__flow__arrow {
  text-align: center;
}
main .lmtd-area__flow__arrow img {
  margin-inline: auto;
  width: 5rem;
}
main .lmtd-area__flow__item {
  background-color: #EEECEB;
}
main .lmtd-area__flow__item .step {
  color: #fff;
  background-color: #091236;
  padding: 0.5rem 0;
  text-align: center;
  font-size: 1.8rem;
}
@media (max-width: 767px) {
  main .lmtd-area__flow__item .step {
    font-size: 1.4rem;
  }
}
main .lmtd-area__flow__item .stepDetail {
  padding: 2rem;
  text-align: center;
}
@media (max-width: 767px) {
  main .lmtd-area__flow__item .stepDetail {
    padding: 0.5rem 1rem 1rem;
  }
}
main .lmtd-area__flow__item .stepDetail__txt01 {
  font-size: 2.4rem;
}
main .lmtd-area__flow__item .stepDetail__txt01::after {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  margin-top: 1rem;
  background: #31AA6F;
  background: linear-gradient(90deg, rgb(49, 170, 111) 0%, rgb(0, 121, 133) 50%, rgb(0, 79, 114) 100%);
}
@media (max-width: 767px) {
  main .lmtd-area__flow__item .stepDetail__txt01 {
    font-size: 1.6rem;
  }
}
main .lmtd-area__flow__item .stepDetail__txt02 {
  margin-top: 1rem;
  font-size: 1.8rem;
}
@media (max-width: 767px) {
  main .lmtd-area__flow__item .stepDetail__txt02 {
    font-size: 1rem;
  }
}
main .lmtd-area__flow__item .stepDetail__btn, main .lmtd-area__flow__item .stepDetail__btn--lmtd {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 2rem auto 0;
  background: rgb(88, 169, 116);
  background: linear-gradient(90deg, rgb(88, 169, 116) 0%, rgb(0, 119, 132) 50%, rgb(0, 77, 111) 100%);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .lmtd-area__flow__item .stepDetail__btn--lmtd {
  color: #091236;
  background: #E1B400;
  background: linear-gradient(90deg, rgb(225, 180, 0) 0%, rgb(230, 222, 179) 50%, rgb(225, 180, 0) 100%);
}
main .lmtd-area__flow__item .stepDetail__btn::before, main .lmtd-area__flow__item .stepDetail__btn--lmtd::before {
  content: "";
  clip-path: polygon(0 0, 0% 100%, 100% 47%);
  width: 0.3em;
  height: 0.5em;
  background-color: #fff;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
}
main .lmtd-area__flow__item .stepDetail__btn:after, main .lmtd-area__flow__item .stepDetail__btn--lmtd:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .lmtd-area__flow__item .stepDetail__btn, main .lmtd-area__flow__item .stepDetail__btn--lmtd {
    font-size: 1.2rem;
    width: 70%;
    padding: 1rem 2rem;
    margin-top: 1rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .lmtd-area__flow__item .stepDetail__btn:hover, main .lmtd-area__flow__item .stepDetail__btn--lmtd:hover {
    box-shadow: none;
  }
}
main .view {
  position: relative;
  background-image: url(../../img/top/view_img.jpg);
  background-size: cover;
  background-position: bottom;
  aspect-ratio: 1.5/1;
}
@media (max-width: 767px) {
  main .view {
    aspect-ratio: 1.2/1;
  }
}
main .view__txt {
  padding-top: 10%;
  text-align: center;
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  font-weight: 300;
  line-height: 2;
  color: #fff;
}
@media (max-width: 767px) {
  main .view__txt {
    padding-top: 10%;
    font-size: 1.6rem;
  }
}
main .view__cap {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  font-size: 1.1rem;
  color: #fff;
}
main .modelroom {
  background-color: #003545;
  padding: 5rem 0;
  /* dotsを丸くカスタマイズするCSS */
}
main .modelroom__inner {
  width: 90%;
  max-width: 1200px;
  margin-inline: auto;
  color: #fff;
}
main .modelroom__heading {
  text-align: center;
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  font-weight: 300;
  line-height: 2;
  color: #fff;
}
@media (max-width: 767px) {
  main .modelroom__heading {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
  }
}
main .modelroom__slider {
  margin-top: 3rem;
}
main .modelroom__slider__item {
  position: relative;
}
main .modelroom__slider__cap {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  font-size: 1.1rem;
  text-shadow: 0 0 5px #000, 0 0 5px #000;
}
main .modelroom__bnr {
  pointer-events: none;
  display: inline-block;
}
main .modelroom .dots-wrap {
  position: absolute;
  display: flex;
  justify-content: center;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 767px) {
  main .modelroom .dots-wrap {
    position: static;
    transform: translate(0, 50%);
  }
}
main .modelroom .dots-wrap li {
  width: 15px;
  height: 15px;
  margin: 0 5px;
  background: #fff;
  border: 2px solid #fff;
  border-radius: 50%;
  cursor: pointer;
}
@media (max-width: 767px) {
  main .modelroom .dots-wrap li {
    width: 10px;
    height: 10px;
  }
}
main .modelroom .dots-wrap li:hover,
main .modelroom .dots-wrap li.slick-active {
  background: none;
}
main .modelroom .dots-wrap li button {
  display: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}
main .modelroom .btn_model {
  position: relative;
  display: block;
  color: #003545;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 3rem auto 0;
  background: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .modelroom .btn_model:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(0, 53, 69, 0.5);
}
@media (max-width: 767px) {
  main .modelroom .btn_model {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .modelroom .btn_model:hover {
    background-color: #003545;
    color: #fff;
  }
  main .modelroom .btn_model:hover:after {
    border: 1px solid rgba(255, 255, 255, 0.5);
  }
}
main .modelroom .drone {
  text-align: center;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  main .modelroom .drone {
    font-size: 1.8rem;
  }
}
main .modelroom .drone__txt {
  margin-top: 5rem;
  margin-bottom: 2rem;
}
main .loa-info {
  max-width: 900px;
  width: 90%;
  margin: 3rem auto;
}
main .info {
  width: 90%;
  max-width: 1366px;
  padding: 3rem 0;
  margin: 0 auto;
}
@media (max-width: 767px) {
  main .info {
    padding: 2rem 0;
  }
}
main .info__inner {
  width: 90%;
  margin: 0 auto;
  text-align: center;
  border-radius: 0.5rem;
}
main .info__haseko h3 {
  width: 96%;
  max-width: 1300px;
  margin-inline: auto;
  font-size: min(3rem, 2.5vw);
  line-height: 1.4;
  text-align: center;
}
@media (max-width: 767px) {
  main .info__haseko h3 {
    font-size: 1.6rem;
  }
}
main .info__haseko h3 em {
  font-size: 1.5em;
  letter-spacing: 0.1em;
  color: #003545;
}
main .info__haseko h3 em span {
  font-size: 1.2em;
}
@media (max-width: 767px) {
  main .info__haseko h3 em {
    font-size: 7vw;
  }
}
main .info__haseko h3 span {
  display: inline-block;
}
main .info__haseko .btn_brand {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 3rem auto 0;
  background: #003545;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .info__haseko .btn_brand:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .info__haseko .btn_brand {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .info__haseko .btn_brand:hover {
    box-shadow: none;
  }
}
main .info__schedule {
  border-top: 1px solid #eee;
  font-size: 4rem;
}
@media (max-width: 767px) {
  main .info__schedule {
    font-size: 2.4rem;
  }
}
main .info__schedule span {
  font-size: 0.7em;
}
main .info__txt {
  line-height: 1.2;
  font-size: 5rem;
}
main .info__txt--01 {
  color: #e9d400;
}
main .info__txt--02 {
  /*border-top: 1px solid #ccc;*/
  color: #003545;
  margin-top: 1rem;
  padding-top: 1rem;
  letter-spacing: 0.2em;
}
main .info__txt--02 span {
  display: inline-block;
}
main .info__txt small {
  font-size: 1.4rem;
  line-height: 1.2;
  letter-spacing: 0;
  display: inline-block;
}
@media (max-width: 767px) {
  main .info__txt {
    font-size: 3rem;
  }
}
main .info .btn_reserve {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 3rem auto 0;
  background: #880017;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .info .btn_reserve:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .info .btn_reserve {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .info .btn_reserve:hover {
    box-shadow: none;
  }
}
main .bnr-area {
  background-color: #EEECEB;
  padding: 3rem 0;
}
main .bnr-area__list {
  width: 90%;
  max-width: 600px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
main .entry_info {
  padding: 5rem 0;
  max-width: 800px;
  width: 90%;
  margin: 0 auto;
}
main .entry_info .entryMerit {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  background-color: #ebeae2;
  /*box-shadow: 0 0 10px rgba($color: #000000, $alpha: 0.5);*/
}
main .entry_info .entryMerit .infoTxt {
  position: relative;
  margin-top: 3rem;
  background-color: rgba(235, 234, 226, 0.8);
  padding: 5rem 2rem;
  text-align: center;
}
main .entry_info .entryMerit .infoTxt .icon_merit {
  width: 100%;
  max-width: 600px;
  margin: 2rem auto;
}
main .entry_info .entryMerit .infoTxt .ttl {
  position: relative;
  z-index: 1;
  color: var(--secondary);
  font-size: 4rem;
  text-shadow: 0 0 5px #ebeae2, 0 0 5px #ebeae2, 0 0 10px #ebeae2, 0 0 10px #ebeae2, 0 0 10px #ebeae2;
}
@media (max-width: 767px) {
  main .entry_info .entryMerit .infoTxt .ttl {
    font-size: 2.8rem;
  }
}
main .entry_info .entryMerit .infoTxt .lead {
  margin-top: 1rem;
  text-align: center;
  font-size: 1.6rem;
  position: relative;
  text-shadow: 0 0 5px #ebeae2, 0 0 5px #ebeae2, 0 0 10px #ebeae2, 0 0 10px #ebeae2, 0 0 10px #ebeae2;
  z-index: 1;
}
main .entry_info .entryMerit .infoTxt .btn_entry {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  max-width: 400px;
  margin: 3rem auto 0;
  background: rgb(88, 169, 116);
  background: linear-gradient(90deg, rgb(88, 169, 116) 0%, rgb(0, 119, 132) 50%, rgb(0, 77, 111) 100%);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
main .entry_info .entryMerit .infoTxt .btn_entry:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .entry_info .entryMerit .infoTxt .btn_entry {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .entry_info .entryMerit .infoTxt .btn_entry:hover {
    box-shadow: none;
  }
}
main .entry_info .entryMerit dl {
  padding: 3rem;
}
main .entry_info .entryMerit dl dt {
  text-align: center;
  font-size: 2.8rem;
  line-height: 1;
  color: var(--primary);
}
main .entry_info .entryMerit dl dd {
  margin-top: 2rem;
  text-align: center;
  font-size: 1.6rem;
}
main .entry_info .entryMerit dl dd figure {
  margin-top: 2rem;
}
main .entry_info .entryMerit dl dd .flow {
  display: flex;
  align-items: center;
  flex-direction: column;
}
main .entry_info .entryMerit dl dd .flow li {
  position: relative;
  width: 100%;
  text-align: center;
  height: 12rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-left: 2rem;
  color: var(--txtcolor);
}
main .entry_info .entryMerit dl dd .flow li p.txt01 {
  font-size: 2.4rem;
  line-height: 1;
  margin-bottom: 1rem;
}
main .entry_info .entryMerit dl dd .flow li p.txt02 {
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0;
}
main .entry_info .entryMerit dl dd .flow li::before {
  content: "";
  position: absolute;
  bottom: -1rem;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2rem 3rem 0 3rem;
  border-color: #007bff transparent transparent transparent;
  z-index: 1;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(1) {
  background-color: #ddd9c9;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(1):after {
  border-color: transparent transparent transparent #ddd9c9;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(1)::before {
  border-color: #ddd9c9 transparent transparent transparent;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(2) {
  background-color: #c8c3a9;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(2):after {
  border-color: transparent transparent transparent #c8c3a9;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(2)::before {
  border-color: #c8c3a9 transparent transparent transparent;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(3) {
  background-color: #bab493;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(3):after {
  display: none;
}
main .entry_info .entryMerit dl dd .flow li:nth-child(3)::before {
  display: none;
}
main .entry_info .entryMerit dl dd.btnArea {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (max-width: 767px) {
  main .entry_info .entryMerit dl dd.btnArea {
    grid-template-columns: 1fr;
  }
}
main .entry_info .entryMerit dl dd.btnArea a {
  color: #fff;
  padding: 1.5rem;
  border: 3px solid #fff;
  background: var(--grade);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
@media (hover: hover) and (pointer: fine) {
  main .entry_info .entryMerit dl dd.btnArea a:hover {
    border: 3px solid var(--primary);
    box-shadow: none;
  }
}
main .choice-wrap2-3 {
  margin-top: 2rem;
  width: 90%;
  max-width: 1366px;
  margin-inline: auto;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
@media (max-width: 767px) {
  main .choice-wrap2-3 {
    grid-template-columns: 1fr;
  }
}
main .choice-wrap2-3__item {
  position: relative;
}
main .choice-wrap2-3__item i {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  font-family: "Oswald", sans-serif;
  font-size: 2.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
  gap: 0.5em;
  align-items: baseline;
}
main .choice-wrap2-3__item i img {
  height: 0.6em !important;
  width: auto !important;
}
main .choice-wrap2-3__item__inner {
  display: flex;
  background-color: #e9e3d6;
  height: 100%;
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__inner {
    display: flex;
    flex-direction: column;
  }
}
main .choice-wrap2-3__item__inner figure {
  position: relative;
  width: 40%;
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__inner figure {
    width: 100%;
    aspect-ratio: 3/2;
  }
}
main .choice-wrap2-3__item__inner figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 80%;
     object-position: 80%;
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__inner figure .sp-L {
    right: unset;
    left: 1rem;
  }
}
main .choice-wrap2-3__item__txt {
  flex-grow: 1;
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__txt {
    padding: 0 3rem 3rem;
    margin-top: -2.5rem;
    z-index: 1;
  }
}
main .choice-wrap2-3__item__txt img {
  width: 80%;
  display: block;
  margin: 0 auto;
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__txt img {
    width: 60%;
  }
}
@media (max-width: 767px) {
  main .choice-wrap2-3__item__txt--R {
    text-align: right;
  }
}
main .choice {
  width: 90%;
  max-width: 1366px;
  margin-inline: auto;
  position: relative;
}
main .choice__inner {
  display: grid;
  grid-template-columns: 3fr 2fr;
  background-color: #e9e3d6;
}
@media (max-width: 767px) {
  main .choice__inner {
    display: flex;
    flex-direction: column;
  }
}
main .choice__img {
  position: relative;
}
main .choice__img figure {
  aspect-ratio: 4/2;
}
@media (max-width: 767px) {
  main .choice__img figure {
    aspect-ratio: unset;
  }
}
main .choice__img figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .choice__img i {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  font-family: "Oswald", sans-serif;
  font-size: 2.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
  gap: 0.5em;
  align-items: baseline;
}
main .choice__img i img {
  height: 0.6em;
  width: auto;
}
main .choice__txt {
  padding: 5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  main .choice__txt {
    padding: 0 3rem 3rem;
    margin-top: -2.5rem;
    z-index: 1;
  }
}
main .choice__txt__heading {
  font-family: "Oswald", sans-serif;
  font-size: 6rem;
  color: #003545;
  line-height: 1;
}
@media (max-width: 767px) {
  main .choice__txt__heading {
    color: #fff;
    font-size: 5.4rem;
  }
}
main .choice__txt__heading small {
  font-size: 0.5em;
  margin: 0 0.2em;
}
main .choice__txt__lead {
  margin-top: 1rem;
  font-size: min(1.2vw, 1.6rem);
}
main .choice__txt__lead sup {
  font-size: 1rem;
}
@media (max-width: 767px) {
  main .choice__txt__lead {
    font-size: 1.4rem;
  }
}
main .choice__txt__cap {
  font-size: 1.1rem;
}
main .choice04 {
  margin-top: 2rem;
  width: 90%;
  max-width: 1366px;
  margin-inline: auto;
  position: relative;
}
main .choice04__inner {
  display: grid;
  grid-template-columns: 2fr 4fr;
  background-color: #e9e3d6;
}
@media (max-width: 767px) {
  main .choice04__inner {
    display: flex;
    flex-direction: column-reverse;
  }
}
main .choice04__img {
  position: relative;
}
main .choice04__img figure {
  aspect-ratio: 4/2;
}
@media (max-width: 767px) {
  main .choice04__img figure {
    aspect-ratio: unset;
  }
}
main .choice04__img figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .choice04__img .cap {
  width: 100%;
  position: absolute;
  bottom: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-align: right;
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
  text-shadow: 0 0 5px #000, 0 0 5px #000;
}
@media (max-width: 767px) {
  main .choice04__img .cap {
    font-size: 0.9rem;
    bottom: unset;
    top: 4rem;
  }
}
main .choice04__img i {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  font-family: "Oswald", sans-serif;
  font-size: 2.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
  gap: 0.5em;
  align-items: baseline;
}
main .choice04__img i img {
  height: 0.6em;
  width: auto;
}
main .choice04__txt {
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  main .choice04__txt {
    padding: 0 3rem 3rem;
    margin-top: -2.5rem;
    z-index: 1;
    text-align: right;
  }
}
main .choice05 {
  margin-top: 2rem;
  width: 90%;
  max-width: 1366px;
  margin-inline: auto;
  position: relative;
}
main .choice05 i {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  font-family: "Oswald", sans-serif;
  font-size: 2.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
  gap: 0.5em;
  align-items: baseline;
}
main .choice05 i img {
  height: 0.6em;
  width: auto;
}
@media (max-width: 767px) {
  main .choice05 i {
    position: static;
  }
}
main .choice05__inner {
  display: grid;
  grid-template-columns: 3fr 2fr;
  background-color: #e9e3d6;
}
@media (max-width: 767px) {
  main .choice05__inner {
    display: flex;
    flex-direction: column;
  }
}
main .choice05__img {
  position: relative;
}
main .choice05__img .imgCap_wh {
  bottom: unset;
  top: 4rem;
}
@media (max-width: 767px) {
  main .choice05__img .imgCap_wh {
    top: 5px;
  }
}
main .choice05__txt {
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  main .choice05__txt {
    padding: 0 3rem 3rem;
    margin-top: -2.5rem;
    z-index: 1;
  }
}
main .choice-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  color: #fff;
  font-size: min(1vw, 1.7rem);
  line-height: 1;
  padding: 1.5rem;
  text-align: center;
  width: 100%;
  margin-top: 2rem;
  background: #003545;
  position: relative;
  z-index: 1;
}
main .choice-btn:after {
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  main .choice-btn {
    font-size: 1.4rem;
    letter-spacing: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  main .choice-btn:hover {
    background-color: #fff;
    color: #003545;
  }
  main .choice-btn:hover:after {
    border: 1px solid rgba(0, 53, 69, 0.5);
  }
}
main .choice-btn span {
  display: inline-block;
  height: 0.8em;
  width: 1.1em;
  background: url(../../img/top/arrows.svg);
  background-repeat: no-repeat;
}
main .float_model {
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  width: 50%;
  max-width: 350px;
  z-index: 2;
  transition: 0.5s;
}
@media (max-width: 767px) {
  main .float_model {
    bottom: 7rem;
    width: 40%;
  }
}
main .float_model.is-hide {
  opacity: 0;
  pointer-events: none;
}
main .float_model i.close {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #333;
  border: 1px solid #fff;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  padding: 0.5rem 2rem;
  border-radius: 3rem;
  transform: translate(0, -40%);
  cursor: pointer;
  z-index: 1;
}
@media (max-width: 767px) {
  main .float_model i.close {
    font-size: 1.2rem;
    right: unset;
    left: 0;
    transform: translate(0, -60%);
  }
}
main .float_model a:hover {
  opacity: 0.7;
}

.bnr_athome {
  display: block;
  width: 100%;
  max-width: 750px;
  margin: 5rem auto 0;
  border: 1px solid #eee;
}

.bnr_paypay {
  display: block;
  margin: 1rem auto;
}

/* ==========================================================
    アニメーション
========================================================== */
.loader-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: var(--primary);
  display: flex;
  justify-content: center;
  align-items: center;
}
.loader-bg .loader {
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: #ffffff;
  background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  position: relative;
  animation: load3 1.4s infinite linear;
  transform: translateZ(0);
}
.loader-bg .loader:before {
  width: 50%;
  height: 50%;
  background: #ffffff;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}
.loader-bg .loader:after {
  background: var(--primary);
  width: 85%;
  height: 85%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@keyframes load3 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*# sourceMappingURL=../../map/top/style.css.map */