@charset "UTF-8";
#contents {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.1em;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  overflow: hidden;
  font-weight: bold;
}
#contents {
  opacity: 0;
}
#contents.fadein {
  animation: fadeIn 2s ease-in-out forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* カウントダウン */
#contents .t_countdown {
  position: fixed;
  display: flex;
  bottom: 0;
  left: 0;
  z-index: 999999;
  width: 100%;
  background-color: #0356e1;
  box-shadow: 8px 4px 10px 0px rgba(0, 0, 0, 0.3);
  border-top: 1px solid #f2f2f2;
}
#contents .countdown_title {
  display: flex;
  width: 50%;
  background-color: #fff;
  padding: 5px 6px 6px 6px;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
}
#contents .countdown_title_img {
  width: 168px;
}
#contents .countdown_time {
  width: 50%;
  display: flex;
  justify-content: center;
  padding: 6px 4px 8px 4px;
  align-items: center;
}
#contents .time_title_img {
  height: 8px;
  display: flex;
  width: 33px;
  justify-content: center;
  margin-bottom: 3px;
}
#contents .time_title_img img {
  width: auto;
  height: 100%;
  object-fit: contain;
}
#contents .number_list {
  display: flex;
  position: relative;
  margin-right: 8px;
}
#contents .countdown_box:last-of-type .number_list {
  margin-right: 0;
}
#contents .number_list li {
  width: 16px;
  border-radius: 3px;
  height: 26px;
  background-color: #fff;
  display: flex;
  margin-right: 3px;
  align-items: center;
  padding: 4px 2px;
  box-sizing: border-box;
}
#contents .number_list li img {
  width: auto;
  height: 100%;
  margin: 0 auto;
}
#contents .number_list li:last-of-type {
  margin-right: 0;
}
#contents .number_list::after {
  content: "";
  display: block;
  width: 2px;
  height: 8px;
  background-image: url(../img/separate.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5px;
}
#contents .seconds .number_list::after {
  content: none;
}
/* カウントダウン */
#contents .t_coupon {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999999;
  background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 50%, rgba(57, 130, 205, 1) 50%);
  display: none;
  box-shadow: 8px 4px 10px 0px rgba(0, 0, 0, 0.3);
  border-top: 1px solid #f2f2f2;
}
#contents .t_coupon img {
  max-width: 500px;
  margin: 0 auto;
}
#contents img {
  display: block;
  height: auto;
  width: 100%;
}
#contents .auto {
  width: 92%;
  margin: 0 auto;
}
#contents p, #contents h2, #contents h3, #contents h4, #contents dl, #contents dt, #contents dd, #contents ul, #contents li, #contents p {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  list-style-type: none;
}
#contents figure {
  margin: 0;
}
#contents .sp_none {
  display: none !important;
}
#contents #conts_fv {
  width: 100%;
  position: relative;
  z-index: 1;
}
/* スライダー */
#contents #conts_fv .swiper-container {
  width: 100%;
}
#contents #conts_fv .swiper-slide .bg {
  width: 100%;
}
#contents #conts_fv .swiper-slide .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
/* スライダー */
#contents #nav_conts {
  margin-bottom: 45px;
  position: relative;
  z-index: 2;
  margin-top: -50px;
}
#contents #nav_conts .auto {
  width: 96%;
}
#contents #nav_conts ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  justify-content: center;
}
#contents #nav_conts ul li {
  position: relative;
  width: 42%;
  margin-bottom: 45px;
  margin-right: 4%;
}
#contents #nav_conts ul li:nth-of-type(2n) {
  margin-right: 0;
}
#contents #nav_conts ul li a::after {
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  bottom: -27px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 20px;
  height: 16px;
  transition: all 0.3s;
}
#contents #nav_conts ul .nozawa a::after {
  background-image: url(../img/link_01_tri.png);
}
#contents #nav_conts ul .romance a::after {
  background-image: url(../img/link_02_tri.png);
}
#contents #nav_conts ul .togari a::after {
  background-image: url(../img/link_03_tri.png);
}
#contents #nav_conts ul .madarao a::after {
  background-image: url(../img/link_04_tri.png);
}
#contents #conts_charm {
  position: relative;
}
#contents #conts_charm::after {
  content: "";
  width: 100%;
  max-height: 430px;
  height: 70vw;
  background-color: #edf3ff;
  position: absolute;
  bottom: 140px;
  left: 0;
  z-index: -60;
}
#contents #conts_charm ul {
  margin-bottom: 10px;
  position: relative;
  z-index: 1;
}
#contents #conts_charm ul li {
  max-width: 420px;
  margin: 0 auto 10px;
}
/* スライダー */
#contents #conts_charm .swiper-wrapper {
  margin-bottom: 17px;
}
#contents #conts_charm .swiper-container .swiper-pagination {
  position: relative;
}
#contents #conts_charm .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 10px;
}
#contents #conts_charm .swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url(../img/next_btn.png);
}
#contents #conts_charm .swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url(../img/prev_btn.png);
}
#contents #conts_charm .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e2e9f6;
  opacity: 1;
}
#contents #conts_charm .swiper-pagination-bullet-active {
  background: #0c5beb;
}
#contents #conts_charm .swiper-block {
  position: relative;
  margin-bottom: 60px;
}
#contents #conts_charm .swiper-block .swiper-button-prev {
  display: none;
}
#contents #conts_charm .swiper-block .swiper-button-next {
  display: none;
}
/* スライダー */
/*=========================
▼▼link_block共通▼▼
===========================*/
#contents .link_block {
  padding-top: 70px;
}
#contents .link_block .title_box .num {
  width: 140px;
  margin-right: 32px;
}
#contents .link_block .title_box h2 {
  font-size: 29px;
  line-height: 1.2;
  letter-spacing: -.01em;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  margin-bottom: 26px;
  padding-top: 0;
}
#contents #link_02 .title_box h2 .small {
  font-size: 20px;
  display: block;
  color: #4d0ceb;
  margin-top: 5px;
}
#contents .link_block .title_box h2::before {
  content: "";
  background-size: contain;
  background-position: left top;
  display: block;
  height: 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: -30px;
  left: 0;
  opacity: 0.08;
}
#contents .link_block .title_box h2 .deco01 {
  display: block;
  margin-bottom: 8px;
  text-align: center;
}
#contents .link_block .title_box h2 .deco02 {
  font-size: 36px;
  display: block;
  margin: 0 auto;
  padding: 8px 5px;
  color: #fff;
}
#contents .link_block .swiper-block {
  position: relative;
}
#contents .link_block .text_img {
  position: absolute;
  width: 80%;
  bottom: 20px;
  right: 0;
  z-index: 1;
}
#contents .link_block .swiper-container {
  height: 300px;
  width: 100%;
  z-index: 0;
}
#contents .link_block .swiper-container .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  -o-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
#contents .link_block .swiper-slide {
  width: auto;
  height: 100%;
}
#contents .link_block .swiper-slide img {
  height: 100%;
  width: auto;
  object-fit: contain;
}
#contents .link_block .contents_box {
  padding: 110px 0 70px;
}
#contents .link_block .contents_box .place_title {
  font-size: 30px;
  line-height: 1.2;
  background-color: #f8f8ff;
  position: relative;
  padding: 14px 10px 12px;
  width: fit-content;
  margin: -130px auto 30px;
  font-feature-settings: "palt"1;
}
#contents .link_block .contents_box .place_title::after {
  content: "";
  display: block;
  background-image: url(../img/nozawa_hukidashi.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 28px;
  height: 24px;
  position: absolute;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
}
#contents .link_block .contents_box .movie_box {
  height: 0;
  padding-top: 53.3%;
  margin: 0 auto;
  box-shadow: 8px 8px 0 #fff;
  position: relative;
}
#contents .link_block .contents_box .movie_box iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
#contents .link_block .contents_box .photo_box {
  margin: 0 auto;
  box-shadow: 8px 8px 0 #fff;
}
#contents .link_block .recom_box {
  background-color: #f6f6ff;
  padding: 50px 0 80px;
}
#contents .link_block .recom_box .facilities {
  margin-bottom: 32px;
  font-size: 30px;
  line-height: 1.3;
  text-align: center;
}
#contents .link_block .recom_box .block {
  margin-bottom: 40px;
}
#contents .link_block .recom_box .block .box {
  position: relative;
  margin-bottom: 35px;
}
#contents .link_block .recom_box .block .box:last-of-type {
  margin-bottom: 0;
}
#contents .link_block .recom_box .block .box h4 {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 6px;
  text-align: left;
}
#contents .link_block .recom_box .block .box .num_img {
  width: 70px;
  position: absolute;
  top: -20px;
  left: -5px;
}
#contents .link_block .recom_box .block .box .img {
  margin-bottom: 12px;
  box-sizing: border-box;
}
#contents .link_block .recom_box .block .box .text {
  font-weight: 500;
  text-align: left;
}
#contents .link_block .recom_box .btn {
  margin: 0 auto;
}
#contents .link_block .btn a {
  display: block;
  border-radius: 160px;
  height: 100%;
  box-sizing: border-box;
  padding: 4px;
  position: relative;
  transition: all 0.3s;
  text-decoration: none;
}
#contents .link_block .btn a::after {
  content: "";
  display: block;
  background-image: url(../img/right_arrow_w.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  width: 10px;
  height: 13px;
  transition: all 0.3s;
}
#contents .link_block .btn a span {
  display: block;
  margin: 2px;
  border: 2px solid #fff;
  border-radius: 140px;
  font-size: 20px;
  text-align: center;
  color: #fff;
  height: 100%;
  line-height: 1.4;
  padding: 14px 24px 16px;
  box-sizing: border-box;
  transition: all 0.3s;
}
/*=========================
▲▲link_block共通▲▲
===========================*/
#contents #link_01 {
  background-color: #f6f6ff;
}
#contents #link_01 .title_box h2::before {
  background-image: url(../img/num01.png);
  width: 120px;
}
#contents #link_01 .title_box h2 .deco01 {
  color: #1217f1;
}
#contents #link_01 .title_box h2 .deco02 {
  background-color: #1217f1;
}
#contents #link_01 .contents_box {
  background-color: #1217f1;
}
#contents #link_01 .contents_box .place_title {
  color: #1217f1;
  border: 6px solid #1217f1;
}
#contents #link_01 .recom_box .facilities {
  color: #1217f1;
}
#contents #link_01 .recom_box .block .box .img {
  border: 6px solid #1217f1;
}
#contents #link_01 .btn a {
  background-color: #1217f1;
}
#contents #link_02 {
  background-color: #efeafc;
}
#contents #link_02 .title_box h2::before {
  background-image: url(../img/num02.png);
  width: 120px;
}
#contents #link_02 .title_box h2 .deco01 {
  color: #4d0ceb;
  font-size: 27px;
  letter-spacing: -0.02em;
}
#contents #link_02 .title_box h2 .deco02 {
  background-color: #4d0ceb;
}
#contents #link_02 .contents_box {
  background-color: #4d0ceb;
}
#contents #link_02 .contents_box .place_title {
  color: #4d0ceb;
  border: 6px solid #4d0ceb;
}
#contents #link_02 .recom_box .facilities {
  color: #4d0ceb;
}
#contents #link_02 .recom_box .block .box .img {
  border: 6px solid #4d0ceb;
}
#contents #link_02 .btn a {
  background-color: #4d0ceb;
}
#contents #link_03 {
  background-color: #e7eff3;
}
#contents #link_03 .title_box h2::before {
  background-image: url(../img/num03.png);
  width: 120px;
}
#contents #link_03 .title_box h2 .deco01 {
  color: #0ca0eb;
}
#contents #link_03 .title_box h2 .deco02 {
  background-color: #0ca0eb;
}
#contents #link_03 .contents_box {
  background-color: #0ca0eb;
}
#contents #link_03 .contents_box .place_title {
  color: #0ca0eb;
  border: 6px solid #0ca0eb;
}
#contents #link_03 .recom_box .facilities {
  color: #0ca0eb;
}
#contents #link_03 .recom_box .block .box .img {
  border: 6px solid #0ca0eb;
}
#contents #link_03 .btn a {
  background-color: #0ca0eb;
}
#contents #link_04 {
  background-color: #d5f3f4;
}
#contents #link_04 .title_box h2::before {
  background-image: url(../img/num04.png);
  width: 120px;
}
#contents #link_04 .title_box h2 .deco01 {
  color: #00c4c9;
}
#contents #link_04 .title_box h2 .deco02 {
  background-color: #00c4c9;
}
#contents #link_04 .contents_box {
  background-color: #00c4c9;
}
#contents #link_04 .contents_box .place_title {
  color: #00c4c9;
  border: 6px solid #00c4c9;
}
#contents #link_04 .recom_box .facilities {
  color: #00c4c9;
}
#contents #link_04 .recom_box .block .box .img {
  border: 6px solid #00c4c9;
}
#contents #link_04 .btn a {
  background-color: #00c4c9;
}
#conts_stamp {
  padding-top: 60px;
  margin-bottom: 15px;
}
#contents #conts_stamp {
  background-image: url(../img/bg_img.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}
#conts_stamp h2 {
  margin-bottom: 20px;
  line-height: 1.4;
  font-size: 30px;
}
#conts_stamp .img {
  margin-bottom: 20px;
}
#conts_stamp .tel-link a {
  text-decoration: none;
  color: #000;
}
/* ▼▼画像スライドイン▼▼ */
#contents .slide_in_wrapper {
  display: inline-block;
  overflow: hidden;
}
#contents .slide_in_image {
  width: 100%;
  height: 100%;
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  opacity: 0;
}
#contents .isPlay {
  animation-name: play;
  animation-duration: 0.55s;
  animation-fill-mode: forwards;
  position: relative;
  opacity: 1 !important;
  animation-timing-function: ease;
}
#contents .isPlay:before {
  animation-name: maskOut;
  animation-duration: 0.55s;
  animation-delay: 0.55s;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.8, 0, 0.5, 1);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #000000, #000000);
}
#contents .no_bg.isPlay:before {
  display: none;
}
@keyframes play {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes maskOut {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
/* ▼▼画像スライドイン▼▼ */
.footer__copy {
  padding-bottom: 60px;
}