@charset "UTF-8";
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
/* ボタンカラー */
/* フォント系 */
/*
	Noto Sans使用する場合
	'Noto Sans JP', 'Open Sans', Verdana, Roboto, 'Droid Sans'
*/
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
a:hover {
  opacity: 0.7;
}

/* mv
 ---------------------------------------------------------------- */
.mv {
  background: url(../images/mv_bk.jpg) no-repeat center top -1em/cover;
  padding: 0 0 0.5em;
}
.mv .mv__img {
  max-width: 1800px;
  margin: 0 auto;
  position: relative;
}
.mv .mv__img img {
  width: 100%;
}
.mv .mv__logo {
  position: absolute;
  top: 4.4em;
  left: 4.7em;
  width: 13.5em;
}

@media screen and (max-width: 1800px) {
  .mv {
    font-size: 0.89vw;
  }
}
@media screen and (max-width: 768px) {
  .mv {
    font-size: 2.8vw;
  }
  .mv .mv__logo {
    top: 2.9em;
    left: 3.2em;
    width: 9em;
  }
}
/* lead
 ---------------------------------------------------------------- */
.lead {
  padding-bottom: 15em;
  background: url(../images/lead_bk3.png) no-repeat center top 15em/86em, url(../images/lead_bk4.png) no-repeat center top 15em/cover, url(../images/mv_bk.jpg) no-repeat center top -1em/cover;
}
.lead .lead__top {
  margin: -15em auto 10em;
  padding: 17.8em 0 0;
  max-width: 2300px;
  background: url(../images/lead_bk1.png) no-repeat right top -22em/53em, url(../images/lead_bk2.png) no-repeat left top -22em/53em;
}
.lead .lead__top .lead__titletop {
  width: 42.38em;
  margin: 0 auto 1.7em;
}
.lead .lead__bottom .lead__titlebottom {
  width: 39.56em;
  margin: 0 auto 1em;
}
.lead .lead__bottom .lead__img {
  width: 42.3em;
  margin: 0 auto 1em;
}
.lead .lead__block {
  display: flex;
  justify-content: space-between;
  width: 88.5%;
  margin-left: 6.5em;
}
.lead .lead__block > div {
  flex-basis: 32%;
  position: relative;
}
.lead .lead__block > div p {
  position: absolute;
  font-size: 1.312em;
  font-weight: bold;
  color: #fff;
  top: 5.5em;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  letter-spacing: 0.1em;
}
.lead .lead__block > div p span {
  display: inline-block;
  font-size: 0.75em;
  line-height: 1.4;
}
.lead .lead__block > div p span.dot {
  font-size: 1em;
  letter-spacing: -0.4em;
}
.lead .lead__block > div p span.space {
  font-size: 0.75em;
  margin-bottom: 0.3em;
}
.lead .lead__block > div p span.num1 {
  margin-top: -0.3em;
  font-size: 2.2em;
  letter-spacing: 0.07em;
}
.lead .lead__block > div p span.num2 {
  font-size: 1.4em;
}
.lead .lead__block > div p span.small {
  display: block;
  margin-top: -0.1em;
  font-size: 0.7em;
}
.lead .lead__block > div:nth-of-type(1) p {
  top: 4.3em;
  padding-right: 4em;
}
.lead .lead__block > div:nth-of-type(2) p {
  top: 5.5em;
  padding-right: 3em;
}
.lead .lead__block > div:nth-of-type(3) p {
  top: 5em;
  padding-right: 4em;
}
.lead .lead__block > div.lead__blockbtm {
  margin-bottom: 1em;
}
.lead .lead__block > div.lead__blockbtm:nth-of-type(1) p {
  top: 3.3em;
  padding-right: 4em;
}
.lead .lead__block > div.lead__blockbtm:nth-of-type(2) p {
  top: 3.9em;
  padding-right: 3.5em;
}
.lead .lead__block > div.lead__blockbtm:nth-of-type(3) p {
  top: 3.7em;
  padding-right: 4.5em;
}

@media screen and (max-width: 1180px) {
  .lead {
    font-size: 1.35vw;
  }
}
@media screen and (max-width: 768px) {
  .lead {
    font-size: 2.8vw;
    padding-bottom: 8em;
    background: url(../images/lead_bk4_sp.png) no-repeat center top 81em/100%, url(../images/mv_bk.jpg) no-repeat center top -1em/cover;
  }
  .lead .lead__top {
    margin: -12em auto 0.5em;
    padding: 13.7em 0 4.5em;
    z-index: 1;
    background: url(../images/lead_bk3.png) no-repeat center bottom/100%, url(../images/lead_bk1_sp.png) no-repeat center top/100%;
  }
  .lead .lead__top .lead__titletop {
    width: 100%;
    margin: 0 auto 2em;
  }
  .lead .lead__bottom .lead__titlebottom {
    width: 100%;
    margin: 0 auto 2.5em;
  }
  .lead .lead__bottom .lead__img {
    width: 100%;
    margin: 0 auto 1em;
  }
  .lead .lead__block {
    flex-direction: column;
    width: 100%;
    margin-left: 0;
  }
  .lead .lead__block > div {
    flex-basis: 32%;
    position: relative;
    margin-bottom: 1em;
  }
  .lead .lead__block > div p {
    position: absolute;
    font-size: 1.5em;
    font-weight: bold;
    color: #fff;
    top: 5.5em;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
  }
  .lead .lead__block > div p span {
    display: inline-block;
    font-size: 0.83em;
    line-height: 1.3;
  }
  .lead .lead__block > div p span.space {
    font-size: 0.83em;
    margin-bottom: 0.3em;
  }
  .lead .lead__block > div p span.num1 {
    margin-top: -0.3em;
    font-size: 1.9em;
    letter-spacing: 0.07em;
  }
  .lead .lead__block > div p span.num2 {
    font-size: 1.1em;
  }
  .lead .lead__block > div p span.small {
    display: block;
    margin-top: -0.1em;
    font-size: 0.7em;
  }
  .lead .lead__block > div:nth-of-type(1) p {
    top: 4.8em;
    padding-right: 0;
    left: 1.8em;
    right: inherit;
  }
  .lead .lead__block > div:nth-of-type(2) p {
    top: 4.8em;
    padding-right: 0;
    right: 1em;
    left: inherit;
  }
  .lead .lead__block > div:nth-of-type(3) p {
    top: 4.8em;
    padding-right: 0;
    left: 1.5em;
    right: inherit;
  }
  .lead .lead__block > div.lead__blockbtm {
    margin-bottom: 1em;
  }
  .lead .lead__block > div.lead__blockbtm:nth-of-type(1) p {
    top: 3.7em;
    padding-right: 0;
    left: 1.9em;
    right: inherit;
  }
  .lead .lead__block > div.lead__blockbtm:nth-of-type(2) p {
    top: 2.3em;
    padding-right: 0;
    right: 1em;
    left: inherit;
  }
  .lead .lead__block > div.lead__blockbtm:nth-of-type(3) p {
    top: 3.8em;
    padding-right: 0;
    left: 2.1em;
    right: inherit;
  }
}
/* voice
 ---------------------------------------------------------------- */
.voice {
  margin: -13em 0 0;
  padding: 4.7em 0 10em;
  background: url(../images/voice_bk.png) no-repeat center top/100%;
}
.voice .voice__title {
  width: 51.75em;
  margin: 0 auto 3.5em;
}
.voice .voice__block {
  display: flex;
  justify-content: space-between;
  width: 85%;
  margin: 0 auto;
  position: relative;
}
.voice .voice__block::before {
  content: "";
  background: url(../images/voice_bk2.png) no-repeat right top/contain;
  width: 10em;
  height: 10.32em;
  position: absolute;
  top: -23.3em;
  right: -6em;
  z-index: 1;
}
.voice .voice__block > div {
  flex-basis: 46.8%;
  height: 30.5em;
  background: url(../images/voice_bk3.png) no-repeat center top/contain;
}
.voice .voice__block > div > img {
  width: 69%;
  margin: -3em 0 2em;
}
.voice .voice__block > div .voice__subtitle {
  margin: 0 auto 1.5em;
}
.voice .voice__block > div .voice__subtitle img {
  height: 4.73em;
}
.voice .voice__block > div p {
  width: 22em;
  margin: 0 auto;
  text-align: left;
  line-height: 1.9;
}

@media screen and (max-width: 1366px) {
  .voice {
    background: url(../images/voice_bk.png) no-repeat center top/86em;
  }
}
@media screen and (max-width: 1180px) {
  .voice {
    font-size: 1.35vw;
  }
}
@media screen and (max-width: 768px) {
  .voice {
    font-size: 2.8vw;
    margin: -6em 0 0;
    padding: 3.5em 0 10em;
    background: url(../images/voice_bk_sp.png) no-repeat center top/100%;
  }
  .voice .voice__title {
    width: 100%;
    margin: 0 auto 0.8em;
  }
  .voice .voice__block {
    display: block;
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  .voice .voice__block::before {
    content: "";
    background: url(../images/voice_bk2.png) no-repeat right top/contain;
    width: 6.7em;
    height: 10.32em;
    position: absolute;
    top: -0.5em;
    right: -0.8em;
    z-index: 1;
  }
  .voice .voice__block > div {
    flex-basis: inherit;
    height: inherit;
    background: none;
  }
  .voice .voice__block > div > img {
    width: inherit;
    margin: inherit;
  }
  .voice .voice__block .voice__blockbox {
    width: 100%;
    height: 50.5em;
    background: url(../images/voice_bk3_sp.png) no-repeat center top/contain;
  }
  .voice .voice__block .voice__blockbox .voice__blockimg {
    width: 70%;
    margin: 2.3em auto 2em;
  }
  .voice .voice__block .voice__blockbox .voice__subtitle {
    margin: 0 auto 1.8em;
  }
  .voice .voice__block .voice__blockbox .voice__subtitle .voice__subtitleimg {
    height: 5.7em;
    margin: 0 auto;
  }
  .voice .voice__block .voice__blockbox p {
    font-size: 1.5em;
    width: 16.5em;
  }
}
/* newsplan
 ---------------------------------------------------------------- */
.newsplan {
  margin: -6em 0 0;
  padding: 6em 0 6.8em;
  background: url(../images/newsplan_bk.png) no-repeat center top/cover;
}
.newsplan .newsplan__okinawa {
  background: url(../images/newsplan_back1.png) no-repeat center top/100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 1.5em 0 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_title {
  padding-right: 2em;
  margin-left: -1.5em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_ichioshi {
  background: url(../images/newsplan_hotel_back0.png) no-repeat center top 1.55em/100%;
  margin: 0.5em 3em 0;
  padding: 0 1.25em 5.1em;
  position: relative;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_ichioshi p {
  margin: 1.2em 0 1.2em;
  line-height: 2.2;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_ichioshi p span {
  color: #ed6246;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_subtitle {
  width: 28.8em;
  margin: 0 auto 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn {
  position: relative;
  display: block;
  width: 24.8em;
  height: 8em;
  margin: 0 auto;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn img {
  position: absolute;
  bottom: 0.5em;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn img:last-of-type {
  opacity: 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn:hover {
  opacity: 1;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn:hover img:first-of-type {
  opacity: 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn:hover img:last-of-type {
  opacity: 1;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel {
  background: url(../images/newsplan_hotel_back1.png) no-repeat center top 1.55em/100%;
  margin: 0.5em 3em 0;
  padding: 0 1.7em 10em 1.5em;
  position: relative;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_topdeco {
  margin: -10em -0.4em 1em -0.9em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem {
  background: url(../images/newsplan_hotel_back3.png) no-repeat center top/100%;
  position: relative;
  margin-bottom: 2.6em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem picture img {
  margin: 0 0 0 -1.7em;
  padding-right: 1.5em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem p {
  position: absolute;
  top: 4.75em;
  left: 2em;
  font-size: 1.25em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn {
  display: block;
  position: absolute;
  bottom: 1.2em;
  right: 2.45em;
  z-index: 1;
  width: 23.2em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn img {
  position: absolute;
  bottom: 0.5em;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn img:last-of-type {
  opacity: 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn:hover {
  opacity: 1;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn:hover img:first-of-type {
  opacity: 0;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn:hover img:last-of-type {
  opacity: 1;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type2 picture img {
  margin: 0.2em 0em 2.3em -1em;
  padding-right: 0em;
  transform: scale(1.01);
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type2 .newsplan__btn {
  bottom: 1.7em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type3 picture img {
  margin: 0.2em 0em 2.3em 0em;
  padding-right: 0em;
  transform: scale(1.02);
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type3 .newsplan__btn {
  bottom: 1.5em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type4 picture img {
  margin: 0 0 0 -1.5em;
  padding-right: 1.5em;
  padding-bottom: 1em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type4 .newsplan__btn {
  bottom: 1.7em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type5 picture img {
  margin: 0.2em 0em 2.3em -0.5em;
  padding-right: 0em;
  transform: scale(1.02);
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type5 .newsplan__btn {
  bottom: 1.5em;
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type6 picture img {
  margin: 0.8em 0 2.3em -4.7em;
  padding-right: 1.5em;
  transform: scale(1.05);
}
.newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type6 .newsplan__btn {
  bottom: 2.2em;
}
.newsplan .newsplan__miyazaki {
  background: url(../images/newsplan_back2.png) no-repeat center top/100%;
  max-width: 1000px;
  margin: -2.5em auto 1em;
  padding: 1.2em 0em 0;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_title {
  padding: 0 1em 0 3.8em;
  margin-left: 0;
  position: relative;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_title p {
  position: absolute;
  top: 6.3em;
  right: 0;
  left: 0;
  margin: 0 auto;
  font-size: 1.06em;
  line-height: 2;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_title p span {
  color: #ed6246;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel {
  background: url(../images/newsplan_hotel_back2.png) no-repeat center top 1.55em/100%;
  margin: -1.3em 3em 0;
  padding: 4em 1.7em 2em 1.5em;
  position: relative;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem {
  background: url(../images/newsplan_hotel_back3.png) no-repeat center top/100%;
  position: relative;
  margin-bottom: 2.6em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem picture img {
  margin: 0 0 0 -1.7em;
  padding-right: 1.5em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem p {
  position: absolute;
  top: 4.75em;
  left: 2em;
  font-size: 1.25em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn {
  display: block;
  position: absolute;
  bottom: 1.2em;
  right: 2.45em;
  z-index: 1;
  width: 23.2em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn img {
  position: absolute;
  bottom: 0.5em;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn img:last-of-type {
  opacity: 0;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn:hover {
  opacity: 1;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn:hover img:first-of-type {
  opacity: 0;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn:hover img:last-of-type {
  opacity: 1;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 {
  margin-bottom: 2em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 picture img {
  margin: 0.2em 0em 2.3em -5.5em;
  padding-right: 0em;
  transform: scale(1.01);
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 .newsplan__btn {
  bottom: 2.3em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type3 picture img {
  margin: 0.6em 0em 2.3em 0.5em;
  padding-right: 0em;
  transform: scale(1.04);
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type3 .newsplan__btn {
  bottom: 1.2em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 {
  margin-bottom: 4em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 picture img {
  margin: 0 0 0 -1.5em;
  padding-right: 1.5em;
  padding-bottom: 1em;
}
.newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 .newsplan__btn {
  bottom: 5.1em;
}
.newsplan .newsplan__couponbtn {
  margin: 0 auto 10em;
  position: relative;
}
.newsplan .newsplan__couponbtn img {
  width: 100%;
  max-width: 1000px;
  margin-bottom: 2em;
}
.newsplan .newsplan__couponbtn::after {
  content: "";
  background: url(../images/newsplan_bar.png) no-repeat center top/contain;
  width: 100%;
  height: 1em;
  position: absolute;
  bottom: -5em;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.newsplan .newsplan__plan {
  position: relative;
  margin: 8em auto 3em;
  padding: 0 0 4em;
  width: 90.5%;
}
.newsplan .newsplan__plan ul li {
  position: absolute;
  text-align: left;
  list-style: none;
  line-height: 1;
  z-index: 5;
}
.newsplan .newsplan__plan ul li a {
  display: block;
  color: #fff;
  width: 8.5em;
  height: 2.45em;
  font-size: 1.25em;
  background: url(../images/newsplan_btn2.png) no-repeat center bottom/contain;
  text-decoration: none;
  transition: none;
  padding: 0.6em 0 0 1.5em;
  letter-spacing: 0.18em;
}
.newsplan .newsplan__plan ul li a:hover {
  opacity: 1;
  background: url(../images/newsplan_btn2_over.png) no-repeat center bottom/contain;
}
.newsplan .newsplan__plan ul li:nth-of-type(1) {
  top: 6.5em;
  right: 19em;
}
.newsplan .newsplan__plan ul li:nth-of-type(2) {
  top: 23.6em;
  right: 7em;
}
.newsplan .newsplan__plan ul li:nth-of-type(3) {
  top: 11.4em;
  right: 19em;
}
.newsplan .newsplan__plan ul li:nth-of-type(4) {
  top: 15.9em;
  right: 19em;
}
.newsplan .newsplan__plan ul li:nth-of-type(5) {
  top: 21.4em;
  right: 29.7em;
}
.newsplan .newsplan__plan ul li:nth-of-type(6) {
  top: 27.7em;
  right: 29.7em;
}
.newsplan .newsplan__plan ul li:nth-of-type(7) {
  top: 28.9em;
  right: 15em;
}
.newsplan .newsplan__plan ul li:nth-of-type(8) {
  top: 33.4em;
  right: 15em;
}

@media screen and (max-width: 1040px) {
  .newsplan {
    font-size: 1.54vw;
  }
}
@media screen and (max-width: 768px) {
  .newsplan {
    font-size: 2.8vw;
    padding: 4em 0 6.8em;
    background: url(../images/newsplan_bk_sp.png) no-repeat center top/cover;
  }
  .newsplan .container {
    width: 96%;
  }
  .newsplan .newsplan__okinawa {
    background: url(../images/newsplan_back1_sp.png) no-repeat center top/100%;
    padding: 1.5em 0 0;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_title {
    padding-right: 0em;
    margin-left: 1.3em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_ichioshi {
    background: url(../images/newsplan_hotel_back0_sp.png) no-repeat center top 1.55em/100%;
    margin: 0.5em 1.6em 0;
    padding: 0 1em 3.1em 0.5em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_ichioshi p {
    font-size: 1.62em;
    margin: 1.1em 1.2em 1.2em;
    line-height: 2;
    text-align: left;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_subtitle {
    width: 20em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn {
    position: relative;
    display: block;
    width: 27.5em;
    height: 8em;
    margin: 1em auto;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn img {
    position: absolute;
    bottom: 0.5em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_leadbtn img:last-of-type {
    opacity: 0;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel {
    background: url(../images/newsplan_hotel_back1_sp.png) no-repeat center top 1.55em/100%;
    margin: 0.5em 1.6em 0;
    padding: 0 0.8em 8em 0.9em;
    position: relative;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_topdeco {
    margin: -6.3em -2.5em 1.2em -2.5em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem {
    background: url(../images/newsplan_hotel_back3_sp.png) no-repeat center top/100%;
    position: relative;
    margin-bottom: 2em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem picture img {
    margin: -0.8em -0.5em 6em -1.5em;
    padding-right: 1.5em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem p {
    position: absolute;
    top: 5.6em;
    left: 1.5em;
    font-size: 1.3em;
    text-align: left;
    padding-right: 1em;
    line-height: 1.5;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn {
    display: block;
    position: absolute;
    bottom: 1.15em;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
    width: 26.4em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn img {
    position: absolute;
    bottom: 0.5em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem .newsplan__btn img:last-of-type {
    opacity: 0;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type2 picture img {
    margin: -0.4em -0.5em 7em -0.5em;
    padding-right: 1.5em;
    transform: scale(1.04);
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type2 .newsplan__btn {
    bottom: 1.15em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type3 picture img {
    margin: -0.3em -0.5em 7.5em 0em;
    padding-right: 1.5em;
    transform: scale(1.06);
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type3 .newsplan__btn {
    bottom: 1.4em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type4 picture img {
    margin: -0.8em -0.5em 6.3em -1.5em;
    padding-right: 1.5em;
    padding-bottom: 0;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type4 .newsplan__btn {
    bottom: 1.1em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type5 picture img {
    margin: 0em -0.5em 7.5em 0.7em;
    padding-right: 1.5em;
    transform: scale(1.08);
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type5 .newsplan__btn {
    bottom: 1.3em;
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type6 picture img {
    margin: -0.2em -0.5em 6.4em -2.2em;
    padding-right: 1.5em;
    transform: scale(1.05);
  }
  .newsplan .newsplan__okinawa .newsplan__okinawa_hotel .newsplan__okinawa_hotelitem.newsplan__okinawa_hotelitem--type6 .newsplan__btn {
    bottom: 1.15em;
  }
  .newsplan .newsplan__miyazaki {
    background: url(../images/newsplan_back2_sp.png) no-repeat center top/100%;
    margin: -2.5em auto 1em;
    padding: 1em 0em 0;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_title {
    padding: 0 0em 0 1em;
    margin-left: 0;
    position: relative;
    margin-bottom: 1.5em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_title p {
    position: relative;
    top: inherit;
    right: inherit;
    left: inherit;
    margin: 0 auto;
    text-align: left;
    font-size: 1.6em;
    line-height: 2;
    padding: 0 1.6em 0 1em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_title p span {
    color: #ed6246;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel {
    background: url(../images/newsplan_hotel_back2_sp.png) no-repeat center top 1.55em/100%;
    margin: -1.3em 1.6em 0;
    padding: 3em 0.8em 2em 0.9em;
    position: relative;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem {
    background: url(../images/newsplan_hotel_back3_sp.png) no-repeat center top/100%;
    position: relative;
    margin-bottom: 2.6em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem picture img {
    margin: -0.8em -0.5em 6em -1.5em;
    padding-right: 1.5em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem p {
    position: absolute;
    top: 5.6em;
    left: 1.5em;
    font-size: 1.3em;
    text-align: left;
    padding-right: 1em;
    line-height: 1.5;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn {
    display: block;
    position: absolute;
    bottom: 1.15em;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
    width: 26.4em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn img {
    position: absolute;
    bottom: 0.5em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem .newsplan__btn img:last-of-type {
    opacity: 0;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 {
    margin-bottom: 2em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 picture img {
    margin: -0.8em -0.5em 6.4em -2em;
    padding-right: 1em;
    transform: scale(1);
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type2 .newsplan__btn {
    bottom: 1.1em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type3 {
    margin-bottom: 2em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type3 picture img {
    margin: -0.3em -0.5em 6.8em -0.5em;
    padding-right: 1em;
    transform: scale(1.04);
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type3 .newsplan__btn {
    bottom: 1.1em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 {
    margin-bottom: 2.5em;
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 picture img {
    margin: -0.6em -0.5em 6.5em -2em;
    padding-right: 1em;
    transform: scale(1.01);
  }
  .newsplan .newsplan__miyazaki .newsplan__miyazaki_hotel .newsplan__miyazaki_hotelitem.newsplan__miyazaki_hotelitem--type4 .newsplan__btn {
    bottom: 2.4em;
  }
  .newsplan .newsplan__couponbtn {
    margin: 0 auto 10em;
    position: relative;
  }
  .newsplan .newsplan__couponbtn img {
    width: 94%;
    margin-bottom: 2em;
  }
  .newsplan .newsplan__couponbtn::after {
    content: "";
    background: url(../images/newsplan_bar_sp.png) no-repeat center top/contain;
    width: 100%;
    height: 1em;
    position: absolute;
    bottom: -3.5em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .newsplan .newsplan__plan {
    position: relative;
    margin: 7em auto 3em;
    padding: 0 0 4em;
    width: 100%;
  }
  .newsplan .newsplan__plan ul li {
    position: absolute;
    text-align: left;
    list-style: none;
    line-height: 1;
  }
  .newsplan .newsplan__plan ul li a {
    display: block;
    color: #fff;
    width: 8em;
    height: 2.4em;
    font-size: 1.35em;
    background: url(../images/newsplan_btn2.png) no-repeat center bottom/contain;
    text-decoration: none;
    transition: none;
    padding: 0.65em 0 0 1.25em;
    letter-spacing: 0.18em;
  }
  .newsplan .newsplan__plan ul li a:hover {
    opacity: 1;
    background: url(../images/newsplan_btn2_over.png) no-repeat center bottom/contain;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(1) {
    top: 27.8em;
    right: 12.5em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(2) {
    top: 44.7em;
    right: -0.3em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(3) {
    top: 32.4em;
    right: 12.5em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(4) {
    top: 36.9em;
    right: 12.5em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(5) {
    top: 42.3em;
    right: 22.9em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(6) {
    top: 48.6em;
    right: 22.9em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(7) {
    top: 49.9em;
    right: 8em;
  }
  .newsplan .newsplan__plan ul li:nth-of-type(8) {
    top: 54.3em;
    right: 8em;
  }
}
/* footer
 ---------------------------------------------------------------- */
footer {
  margin: -10.5em 0 0;
  padding: 5em 0 0em;
  color: #fff;
  letter-spacing: 0.2em;
  background: url(../images/footer_bk.png) no-repeat center top/100%;
  position: relative;
}
footer .footer__catch {
  font-size: 1.875em;
  font-weight: bold;
  margin-bottom: 0.8em;
}
footer .footer__img {
  width: 12.375em;
  margin: 0 auto 2em;
}
footer p {
  margin-bottom: 2em;
}
footer p span {
  display: block;
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1;
  margin-bottom: -1.7em;
}
footer p a {
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  font-size: 3.3125em;
}
footer p a img {
  width: 0.9em;
  margin-right: 0.3em;
  vertical-align: -0.12em;
}
footer .copy {
  font-size: 0.75em;
  letter-spacing: 0;
  padding-bottom: 1em;
}
footer::before {
  content: "";
  background: url(../images/footer_deco.png) no-repeat center bottom/100%;
  width: 91%;
  height: 90%;
  position: absolute;
  top: -27.3em;
  left: 0;
  right: 0;
  margin: 0 auto;
}

@media screen and (max-width: 1366px) {
  footer {
    background: url(../images/footer_bk.png) no-repeat center top/86em;
  }
  footer::before {
    background: url(../images/footer_deco.png) no-repeat center bottom/78em;
    width: 100%;
    height: 40%;
    position: absolute;
    top: -12.2em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1230px) {
  footer {
    font-size: 1.3vw;
  }
}
@media screen and (max-width: 768px) {
  footer {
    font-size: 2.8vw;
    margin: -10.5em 0 0;
    padding: 4.5em 0 0em;
    color: #fff;
    letter-spacing: 0.2em;
    background: url(../images/footer_bk_sp.png) no-repeat center top/100%, url(../images/footer_bk_sp.png) no-repeat center bottom/100%;
    position: relative;
  }
  footer .footer__catch {
    font-size: 1.7em;
    margin-bottom: 0.8em;
  }
  footer .footer__img {
    width: 16em;
    margin: 0 auto 2em;
  }
  footer p {
    margin-bottom: 2em;
    font-size: 1.45em;
  }
  footer p span {
    display: block;
    font-size: 1.15em;
    font-weight: bold;
    line-height: 1;
    margin-bottom: -1.7em;
  }
  footer p a {
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    font-size: 2.6em;
  }
  footer p a img {
    width: 0.9em;
    margin-right: 0.3em;
    vertical-align: -0.12em;
  }
  footer .copy {
    font-size: 1.07em;
    letter-spacing: 0;
    padding-bottom: 15em;
  }
  footer::before {
    content: "";
    background: url(../images/footer_deco_sp.png) no-repeat center bottom/100%;
    width: 88%;
    height: 90%;
    position: absolute;
    top: -48.6em;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
/* backtop
 ---------------------------------------------------------------- */
.backtop {
  position: fixed;
  bottom: 1em;
  right: 2.6em;
  opacity: 0;
  transition: all 0.3s;
  z-index: 100;
}
.backtop a {
  position: relative;
  display: block;
  width: 3.3em;
}
.backtop a img {
  position: absolute;
  transition: all 0.3s;
  bottom: 0;
}
.backtop a img:last-of-type {
  opacity: 0;
}
.backtop a:hover {
  opacity: 1;
}
.backtop a:hover img:first-of-type {
  opacity: 0;
}
.backtop a:hover img:last-of-type {
  opacity: 1;
}

@media screen and (max-width: 1230px) {
  .backtop {
    font-size: 1.3vw;
  }
}
@media screen and (max-width: 768px) {
  .backtop {
    font-size: 2.8vw;
    bottom: 10em;
  }
  .backtop a {
    width: 4.2em;
  }
  .backtop a:hover img:first-of-type {
    opacity: 1;
  }
}
/* fixmenu
 ---------------------------------------------------------------- */
.fixmenu {
  position: fixed;
  bottom: 5.2em;
  right: 0;
  opacity: 0;
  transition: all 0.3s;
  z-index: 100;
}
.fixmenu .fixmenu__wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 15.75em;
}
.fixmenu .fixmenu__wrap > div:nth-of-type(1) {
  flex-basis: 100%;
  height: 3.1874em;
}
.fixmenu .fixmenu__wrap > div:nth-of-type(2) {
  flex-basis: 100%;
  height: 3.1874em;
}
.fixmenu a {
  position: relative;
  display: block;
  width: 100%;
}
.fixmenu a picture img {
  transition: all 0.3s;
}
.fixmenu a > img {
  transition: all 0.3s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
}
.fixmenu a:hover {
  opacity: 1;
}
.fixmenu a:hover picture img {
  opacity: 0;
}
.fixmenu a:hover > img {
  opacity: 1;
}

@media screen and (max-width: 1180px) {
  .fixmenu {
    font-size: 1.35vw;
  }
}
@media screen and (max-width: 768px) {
  .fixmenu {
    font-size: 2.8vw;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
  }
  .fixmenu .fixmenu__wrap {
    width: 100%;
  }
  .fixmenu .fixmenu__wrap > div:nth-of-type(1) {
    flex-basis: 100%;
    height: 4.8em;
  }
  .fixmenu .fixmenu__wrap > div:nth-of-type(2) {
    flex-basis: 100%;
    height: 4.8em;
  }
  .fixmenu a {
    width: 100%;
  }
  .fixmenu a:hover picture img {
    opacity: 1;
  }
}
/* slick
----------------------------------------------------- */
.slick-arrow:before {
  content: "" !important;
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

.slick-next:before {
  background: url(../images/arrow2.png) !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
}

.slick-prev:before {
  background: url(../images/arrow1.png) !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
}

.slick-arrow {
  font-size: 3.9vw !important;
  z-index: 2 !important;
  width: 2.8em !important;
  height: 2.8em !important;
}

.slick-next {
  top: 19em !important;
  right: -0.3em !important;
}

.slick-prev {
  top: 19em !important;
  left: -0.3em !important;
}

@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}