@charset "UTF-8";
/* =======================================

	 CSS BrowserReset BaseElements

 ======================================= */
@import url("https://fonts.googleapis.com/css?family=Oswald:500");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;900&display=swap");
html, body, div, span, nav, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font-style: inherit;
  font-weight: inherit;
  background: transparent; }

table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  /*vertical-align: baseline;*/
  font-family: 'Roboto', YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", Meiryo, "メイリオ", 'ＭＳ Ｐゴシック',sans-serif;
  font-style: inherit;
  font-weight: inherit;
  background: transparent; }

html {
  font-size: 90%;
  overflow-y: scroll;
  color: #333; }

img {
  max-width: 100%;
  vertical-align: bottom; }

strong {
  font-weight: bold; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  /*	border-collapse: separate;*/
  border-spacing: 0; }

/*caption, th, td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}*/
blockquote:before, blockquote:after,
q:before, q:after {
  content: ""; }

blockquote, q {
  quotes: "" ""; }

option {
  padding-right: 10px; }

/* ------------------------------
	HTML5 ELEMENTS
------------------------------ */
header, article, main, aside, section, footer,
nav, menu, details, hgroup, summary, figcaption, figure {
  display: block; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.cl {
  clear: both; }

.clf {
  zoom: 1; }
  .clf:after {
    content: "";
    display: block;
    clear: both; }

.transition {
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s; }

/* --- layout / common ------------------------------- */
a {
  text-decoration: none;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s; }
  a:hover {
    opacity: .7;
    text-decoration: none; }

html {
  font-size: 62.5%; }

.l-container {
  overflow: hidden;
  color: #000;
  font-family: -apple-system, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  overflow-wrap: break-word;
  word-wrap: break-word; }
  .l-container p, .l-container a, .l-container h1, .l-container h2, .l-container h3, .l-container h4, .l-container h5, .l-container h6, .l-container span {
    max-width: 100%; }

.l-wrapper {
  position: relative;
  z-index: 2;
  max-width: 1440px;
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  background: #fff; }
  .l-wrapper.shadow {
    -webkit-box-shadow: 0 8px 100px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0 8px 100px 0px rgba(0, 0, 0, 0.2); }

.l-header {
  position: relative;
  z-index: 1000;
  padding: 3px 0;
  border-bottom: 3px solid #1a4672;
  background: #fff;
  text-align: center; }
  .l-header a {
    display: inline-block; }

.l-main {
  display: block; }

/*-- modules ----------------------------------------*/
.is-fsizeSmaller {
  font-size: 1.2rem !important; }

.is-fsizeSmall {
  font-size: 1.4rem !important; }

.is-fsizeNormal {
  font-size: 1.6rem !important; }

.is-fsizeLarge {
  font-size: 1.8rem !important; }

.is-fsizeLarger {
  font-size: 2rem !important; }

.is-fsizeLargest {
  font-size: 2.2rem !important; }

.is-gothic {
  font-family: -apple-system, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif !important; }

.is-mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", HiraMinPro, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif !important; }

.is-bold {
  font-weight: bold !important; }

.is-normal {
  font-weight: normal !important; }

.is-imgfit {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

.is-tal {
  text-align: left !important; }

.is-tac {
  text-align: center !important; }

.is-tar {
  text-align: right !important; }

.is-vat {
  vertical-align: top !important; }

.is-vam {
  vertical-align: middle !important; }

.is-vab {
  vertical-align: bottom !important; }

.is-fl {
  float: left !important; }

.is-fr {
  float: right !important; }

.c-btn {
  display: block;
  padding: 25px 24px;
  background: #000;
  color: #fff;
  font-size: 2.4rem;
  text-align: center; }
  .c-btn.blank:after {
    display: inline-block;
    content: "";
    width: 32px;
    height: 32px;
    margin-left: 12px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2280.41mm%22%20height%3D%2279.419mm%22%20viewBox%3D%220%200%20227.934%20225.124%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.a%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cg%3E%20%3Cpath%20class%3D%22a%22%20d%3D%22M191.293%2C83.634a4.675%2C4.675%2C0%2C0%2C0-4.675%2C4.676V215.772H9.353V37.346H134.5a4.676%2C4.676%2C0%2C0%2C0%2C0-9.352H4.676A4.676%2C4.676%2C0%2C0%2C0%2C0%2C32.67V220.448a4.676%2C4.676%2C0%2C0%2C0%2C4.676%2C4.676H191.293a4.675%2C4.675%2C0%2C0%2C0%2C4.676-4.676V88.31A4.676%2C4.676%2C0%2C0%2C0%2C191.293%2C83.634Z%22%2F%3E%20%3Cpath%20class%3D%22a%22%20d%3D%22M223.258%2C0H150.307a4.677%2C4.677%2C0%2C0%2C0%2C0%2C9.353h59.917L97.25%2C121.245a4.677%2C4.677%2C0%2C0%2C0%2C6.583%2C6.644L218.583%2C14.238V76.5a4.676%2C4.676%2C0%2C1%2C0%2C9.351%2C0V4.676A4.676%2C4.676%2C0%2C0%2C0%2C223.258%2C0Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-size: 32px 32px;
    vertical-align: text-bottom; }
  .c-btn.search {
    max-width: 574px; }
    .c-btn.search:after {
      display: inline-block;
      content: "";
      width: 32px;
      height: 32px;
      margin-left: 12px;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.a%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22a%22%20d%3D%22M29.78%2C28.72l-7.5-7.5-.011-.008a12.783%2C12.783%2C0%2C1%2C0-1.057%2C1.057l.008.011%2C7.5%2C7.5a.75.75%2C0%2C0%2C0%2C1.06-1.06ZM12.75%2C24A11.25%2C11.25%2C0%2C1%2C1%2C24%2C12.75%2C11.263%2C11.263%2C0%2C0%2C1%2C12.75%2C24Z%22%2F%3E%3C%2Fsvg%3E");
      background-size: contain;
      background-repeat: no-repeat;
      vertical-align: text-bottom; }

.c-btnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 64px -26px 0; }
  .c-btnWrap .c-btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: 0 26px; }

.c-title {
  margin-bottom: 56px;
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 4px; }

.c-bgtitle {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }
  .c-bgtitle > span {
    display: inline-block;
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 5.5px; }
    .c-bgtitle > span + span {
      margin-top: 12px; }
  .c-bgtitle.white > span {
    background: #fff;
    color: #000; }
  .c-bgtitle.gray > span {
    background: #96959a;
    background-image: url(../img/img-boke.png);
    background-repeat: no-repeat;
    background-position: left top;
    color: #fff; }
    .c-bgtitle.gray > span:nth-child(2) {
      background-position: right bottom; }

.c-block {
  display: block;
  padding: 15px; }
  .c-block.skin01 {
    background: #f8f8ea;
    font-size: 1.4rem; }
  .c-block.skin02 {
    background: #f8f8f8;
    font-size: 1.4rem; }
  .c-block + .c-block {
    margin-top: 30px; }
  .c-block > .c-title {
    margin-left: -15px;
    padding-left: 15px; }

.c-inlineBlock {
  display: inline-block; }

.c-inline {
  display: inline; }

.c-flex, .c-pcflex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .c-flex.space-between, .space-between.c-pcflex {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .c-flex.center, .center.c-pcflex {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .c-flex.aic, .aic.c-pcflex {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .c-flex.aie, .aie.c-pcflex {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; }

.c-inlineFlex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.c-bggray {
  background: #e4e0d2;
  font-weight: bold; }

.c-shacow {
  -webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2); }

.c-underline {
  display: inline-block;
  border-bottom: 4px solid #15529b;
  color: #15529b;
  line-height: 1.2; }

.c-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.c-mt0 {
  margin-top: 0px !important; }

.c-mr0 {
  margin-right: 0px !important; }

.c-mb0 {
  margin-bottom: 0px !important; }

.c-ml0 {
  margin-left: 0px !important; }

.c-pt0 {
  padding-top: 0px !important; }

.c-pr0 {
  padding-right: 0px !important; }

.c-pb0 {
  padding-bottom: 0px !important; }

.c-pl0 {
  padding-left: 0px !important; }

.c-mt5 {
  margin-top: 5px !important; }

.c-mr5 {
  margin-right: 5px !important; }

.c-mb5 {
  margin-bottom: 5px !important; }

.c-ml5 {
  margin-left: 5px !important; }

.c-pt5 {
  padding-top: 5px !important; }

.c-pr5 {
  padding-right: 5px !important; }

.c-pb5 {
  padding-bottom: 5px !important; }

.c-pl5 {
  padding-left: 5px !important; }

.c-mt10 {
  margin-top: 10px !important; }

.c-mr10 {
  margin-right: 10px !important; }

.c-mb10 {
  margin-bottom: 10px !important; }

.c-ml10 {
  margin-left: 10px !important; }

.c-pt10 {
  padding-top: 10px !important; }

.c-pr10 {
  padding-right: 10px !important; }

.c-pb10 {
  padding-bottom: 10px !important; }

.c-pl10 {
  padding-left: 10px !important; }

.c-mt15 {
  margin-top: 15px !important; }

.c-mr15 {
  margin-right: 15px !important; }

.c-mb15 {
  margin-bottom: 15px !important; }

.c-ml15 {
  margin-left: 15px !important; }

.c-pt15 {
  padding-top: 15px !important; }

.c-pr15 {
  padding-right: 15px !important; }

.c-pb15 {
  padding-bottom: 15px !important; }

.c-pl15 {
  padding-left: 15px !important; }

.c-mt20 {
  margin-top: 20px !important; }

.c-mr20 {
  margin-right: 20px !important; }

.c-mb20 {
  margin-bottom: 20px !important; }

.c-ml20 {
  margin-left: 20px !important; }

.c-pt20 {
  padding-top: 20px !important; }

.c-pr20 {
  padding-right: 20px !important; }

.c-pb20 {
  padding-bottom: 20px !important; }

.c-pl20 {
  padding-left: 20px !important; }

.c-mt25 {
  margin-top: 25px !important; }

.c-mr25 {
  margin-right: 25px !important; }

.c-mb25 {
  margin-bottom: 25px !important; }

.c-ml25 {
  margin-left: 25px !important; }

.c-pt25 {
  padding-top: 25px !important; }

.c-pr25 {
  padding-right: 25px !important; }

.c-pb25 {
  padding-bottom: 25px !important; }

.c-pl25 {
  padding-left: 25px !important; }

.c-mt30 {
  margin-top: 30px !important; }

.c-mr30 {
  margin-right: 30px !important; }

.c-mb30 {
  margin-bottom: 30px !important; }

.c-ml30 {
  margin-left: 30px !important; }

.c-pt30 {
  padding-top: 30px !important; }

.c-pr30 {
  padding-right: 30px !important; }

.c-pb30 {
  padding-bottom: 30px !important; }

.c-pl30 {
  padding-left: 30px !important; }

.c-mt35 {
  margin-top: 35px !important; }

.c-mr35 {
  margin-right: 35px !important; }

.c-mb35 {
  margin-bottom: 35px !important; }

.c-ml35 {
  margin-left: 35px !important; }

.c-pt35 {
  padding-top: 35px !important; }

.c-pr35 {
  padding-right: 35px !important; }

.c-pb35 {
  padding-bottom: 35px !important; }

.c-pl35 {
  padding-left: 35px !important; }

.c-mt40 {
  margin-top: 40px !important; }

.c-mr40 {
  margin-right: 40px !important; }

.c-mb40 {
  margin-bottom: 40px !important; }

.c-ml40 {
  margin-left: 40px !important; }

.c-pt40 {
  padding-top: 40px !important; }

.c-pr40 {
  padding-right: 40px !important; }

.c-pb40 {
  padding-bottom: 40px !important; }

.c-pl40 {
  padding-left: 40px !important; }

.c-mt45 {
  margin-top: 45px !important; }

.c-mr45 {
  margin-right: 45px !important; }

.c-mb45 {
  margin-bottom: 45px !important; }

.c-ml45 {
  margin-left: 45px !important; }

.c-pt45 {
  padding-top: 45px !important; }

.c-pr45 {
  padding-right: 45px !important; }

.c-pb45 {
  padding-bottom: 45px !important; }

.c-pl45 {
  padding-left: 45px !important; }

.c-mt50 {
  margin-top: 50px !important; }

.c-mr50 {
  margin-right: 50px !important; }

.c-mb50 {
  margin-bottom: 50px !important; }

.c-ml50 {
  margin-left: 50px !important; }

.c-pt50 {
  padding-top: 50px !important; }

.c-pr50 {
  padding-right: 50px !important; }

.c-pb50 {
  padding-bottom: 50px !important; }

.c-pl50 {
  padding-left: 50px !important; }

.c-mt55 {
  margin-top: 55px !important; }

.c-mr55 {
  margin-right: 55px !important; }

.c-mb55 {
  margin-bottom: 55px !important; }

.c-ml55 {
  margin-left: 55px !important; }

.c-pt55 {
  padding-top: 55px !important; }

.c-pr55 {
  padding-right: 55px !important; }

.c-pb55 {
  padding-bottom: 55px !important; }

.c-pl55 {
  padding-left: 55px !important; }

.c-mt60 {
  margin-top: 60px !important; }

.c-mr60 {
  margin-right: 60px !important; }

.c-mb60 {
  margin-bottom: 60px !important; }

.c-ml60 {
  margin-left: 60px !important; }

.c-pt60 {
  padding-top: 60px !important; }

.c-pr60 {
  padding-right: 60px !important; }

.c-pb60 {
  padding-bottom: 60px !important; }

.c-pl60 {
  padding-left: 60px !important; }

.c-mt65 {
  margin-top: 65px !important; }

.c-mr65 {
  margin-right: 65px !important; }

.c-mb65 {
  margin-bottom: 65px !important; }

.c-ml65 {
  margin-left: 65px !important; }

.c-pt65 {
  padding-top: 65px !important; }

.c-pr65 {
  padding-right: 65px !important; }

.c-pb65 {
  padding-bottom: 65px !important; }

.c-pl65 {
  padding-left: 65px !important; }

.c-mt70 {
  margin-top: 70px !important; }

.c-mr70 {
  margin-right: 70px !important; }

.c-mb70 {
  margin-bottom: 70px !important; }

.c-ml70 {
  margin-left: 70px !important; }

.c-pt70 {
  padding-top: 70px !important; }

.c-pr70 {
  padding-right: 70px !important; }

.c-pb70 {
  padding-bottom: 70px !important; }

.c-pl70 {
  padding-left: 70px !important; }

.c-mt75 {
  margin-top: 75px !important; }

.c-mr75 {
  margin-right: 75px !important; }

.c-mb75 {
  margin-bottom: 75px !important; }

.c-ml75 {
  margin-left: 75px !important; }

.c-pt75 {
  padding-top: 75px !important; }

.c-pr75 {
  padding-right: 75px !important; }

.c-pb75 {
  padding-bottom: 75px !important; }

.c-pl75 {
  padding-left: 75px !important; }

.c-mt80 {
  margin-top: 80px !important; }

.c-mr80 {
  margin-right: 80px !important; }

.c-mb80 {
  margin-bottom: 80px !important; }

.c-ml80 {
  margin-left: 80px !important; }

.c-pt80 {
  padding-top: 80px !important; }

.c-pr80 {
  padding-right: 80px !important; }

.c-pb80 {
  padding-bottom: 80px !important; }

.c-pl80 {
  padding-left: 80px !important; }

.c-mt85 {
  margin-top: 85px !important; }

.c-mr85 {
  margin-right: 85px !important; }

.c-mb85 {
  margin-bottom: 85px !important; }

.c-ml85 {
  margin-left: 85px !important; }

.c-pt85 {
  padding-top: 85px !important; }

.c-pr85 {
  padding-right: 85px !important; }

.c-pb85 {
  padding-bottom: 85px !important; }

.c-pl85 {
  padding-left: 85px !important; }

.c-mt90 {
  margin-top: 90px !important; }

.c-mr90 {
  margin-right: 90px !important; }

.c-mb90 {
  margin-bottom: 90px !important; }

.c-ml90 {
  margin-left: 90px !important; }

.c-pt90 {
  padding-top: 90px !important; }

.c-pr90 {
  padding-right: 90px !important; }

.c-pb90 {
  padding-bottom: 90px !important; }

.c-pl90 {
  padding-left: 90px !important; }

.c-mt95 {
  margin-top: 95px !important; }

.c-mr95 {
  margin-right: 95px !important; }

.c-mb95 {
  margin-bottom: 95px !important; }

.c-ml95 {
  margin-left: 95px !important; }

.c-pt95 {
  padding-top: 95px !important; }

.c-pr95 {
  padding-right: 95px !important; }

.c-pb95 {
  padding-bottom: 95px !important; }

.c-pl95 {
  padding-left: 95px !important; }

.c-mt100 {
  margin-top: 100px !important; }

.c-mr100 {
  margin-right: 100px !important; }

.c-mb100 {
  margin-bottom: 100px !important; }

.c-ml100 {
  margin-left: 100px !important; }

.c-pt100 {
  padding-top: 100px !important; }

.c-pr100 {
  padding-right: 100px !important; }

.c-pb100 {
  padding-bottom: 100px !important; }

.c-pl100 {
  padding-left: 100px !important; }

p + h2,
p + h3,
p + h4,
p + h5,
p + h6,
ul + h2,
ul + h3,
ul + h4,
ul + h5,
ul + h6,
ol + h2,
ol + h3,
ol + h4,
ol + h5,
ol + h6,
dl + h2,
dl + h3,
dl + h4,
dl + h5,
dl + h6,
blockquote + h2,
blockquote + h3,
blockquote + h4,
blockquote + h5,
blockquote + h6,
hr + h2,
hr + h3,
hr + h4,
hr + h5,
hr + h6,
pre + h2,
pre + h3,
pre + h4,
pre + h5,
pre + h6,
table + h2,
table + h3,
table + h4,
table + h5,
table + h6,
form + h2,
form + h3,
form + h4,
form + h5,
form + h6,
figure + h2,
figure + h3,
figure + h4,
figure + h5,
figure + h6 {
  margin-top: 40px; }

/* toppage ----------------------------------------- */
.mv-wrap {
  position: relative;
  z-index: 2;
  padding: 110px 0 0 0; }
  .mv-wrap:after {
    position: absolute;
    display: block;
    content: ""; }
  .mv-wrap .txt-hotel {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-600px);
    -ms-transform: translateX(-600px);
    transform: translateX(-600px);
    z-index: 0;
    padding-left: 300px;
    color: #f1f0ed;
    font-size: 19.0rem;
    font-family: "Lato", sans-serif;
    font-weight: 900;
    letter-spacing: 2.2vw;
    line-height: 0.68; }
    .mv-wrap .txt-hotel:before {
      position: absolute;
      left: 0;
      top: 0;
      display: block;
      content: "";
      width: 300px;
      height: 120px;
      background-image: -webkit-linear-gradient(135deg, #b4b2b0 4.17%, transparent 4.17%, transparent 50%, #b4b2b0 50%, #b4b2b0 54.17%, transparent 54.17%, transparent 100%), -webkit-linear-gradient(45deg, #b4b2b0 4.17%, #ecece8 4.17%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 54.17%, #ecece8 54.17%, #ecece8 100%);
      background-image: -o-linear-gradient(135deg, #b4b2b0 4.17%, transparent 4.17%, transparent 50%, #b4b2b0 50%, #b4b2b0 54.17%, transparent 54.17%, transparent 100%), -o-linear-gradient(45deg, #b4b2b0 4.17%, #ecece8 4.17%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 54.17%, #ecece8 54.17%, #ecece8 100%);
      background-image: linear-gradient(-45deg, #b4b2b0 4.17%, transparent 4.17%, transparent 50%, #b4b2b0 50%, #b4b2b0 54.17%, transparent 54.17%, transparent 100%), linear-gradient(45deg, #b4b2b0 4.17%, #ecece8 4.17%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 54.17%, #ecece8 54.17%, #ecece8 100%);
      background-size: 16.97px 16.97px,16.97px 16.97px; }
  .mv-wrap:before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 162px;
    display: block;
    content: "";
    width: calc(50% - 720px + 126px);
    background: url(../img/bg-water.jpg) repeat left top; }
  .mv-wrap:after {
    top: 0;
    right: 0;
    left: calc(50% + 720px);
    bottom: -210px;
    z-index: -1;
    background: #fff; }
  .mv-wrap .l-wrapper {
    position: relative;
    z-index: 2;
    padding-top: 103px;
    padding-bottom: 132px;
    background-image: url(../img/img-ribbon01.png), url(../img/img-ribbon02.png);
    background-repeat: no-repeat;
    background-position: left top, right bottom;
    text-align: center; }
    .mv-wrap .l-wrapper:before {
      position: absolute;
      top: -50px;
      left: -164px;
      display: block;
      content: "";
      z-index: -1;
      width: 1709px;
      height: 1054px;
      background: url(../img/img-confetti01.png) no-repeat center top/contain; }
  .mv-wrap .c-bgtitle {
    margin-top: 28px;
    margin-bottom: 36px; }
  .mv-wrap .li-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 60px; }

.rentacar-wrap {
  position: relative;
  z-index: 1; }
  .rentacar-wrap:before {
    position: absolute;
    left: 0;
    top: -162px;
    bottom: -495px;
    content: "OTSHOTEL";
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: -1;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    width: 50%;
    background-image: -webkit-linear-gradient(135deg, #e0dfdc 4.17%, transparent 4.17%, transparent 50%, #e0dfdc 50%, #e0dfdc 54.17%, transparent 54.17%, transparent 100%), -webkit-linear-gradient(45deg, #e0dfdc 4.17%, #f0efec 4.17%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 54.17%, #f0efec 54.17%, #f0efec 100%);
    background-image: -o-linear-gradient(135deg, #e0dfdc 4.17%, transparent 4.17%, transparent 50%, #e0dfdc 50%, #e0dfdc 54.17%, transparent 54.17%, transparent 100%), -o-linear-gradient(45deg, #e0dfdc 4.17%, #f0efec 4.17%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 54.17%, #f0efec 54.17%, #f0efec 100%);
    background-image: linear-gradient(-45deg, #e0dfdc 4.17%, transparent 4.17%, transparent 50%, #e0dfdc 50%, #e0dfdc 54.17%, transparent 54.17%, transparent 100%), linear-gradient(45deg, #e0dfdc 4.17%, #f0efec 4.17%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 54.17%, #f0efec 54.17%, #f0efec 100%);
    background-size: 16.97px 16.97px,16.97px 16.97px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 19.0rem;
    font-family: "Lato", sans-serif;
    font-weight: 900;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 0.7; }
  .rentacar-wrap:after {
    position: absolute;
    top: 210px;
    right: 0;
    bottom: -70px;
    z-index: -1;
    width: calc(50% - 720px);
    display: block;
    content: "";
    background: url(../img/bg-water.jpg) repeat right top; }
  .rentacar-wrap .tieup-wrap, .rentacar-wrap .safety-wrap {
    margin-left: -120px;
    margin-right: -120px;
    padding-left: 120px;
    padding-right: 120px; }
  .rentacar-wrap .tieup-wrap {
    position: relative;
    z-index: 1;
    padding-top: 104px;
    padding-bottom: 104px;
    background: url(../img/img-confetti02.png) no-repeat center center #0e0908;
    color: #fff; }
    .rentacar-wrap .tieup-wrap:before {
      position: absolute;
      display: block;
      content: ""; }
    .rentacar-wrap .tieup-wrap:before {
      top: 0;
      left: 120px;
      bottom: 0;
      z-index: -1;
      width: 290px;
      background-image: -webkit-linear-gradient(135deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%), -webkit-linear-gradient(45deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%);
      background-image: -o-linear-gradient(135deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%), -o-linear-gradient(45deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%);
      background-image: linear-gradient(-45deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%), linear-gradient(45deg, #534f4f 4.17%, transparent 4.17%, transparent 50%, #534f4f 50%, #534f4f 54.17%, transparent 54.17%, transparent 100%);
      background-size: 16.97px 16.97px,16.97px 16.97px; }
    .rentacar-wrap .tieup-wrap p {
      padding-left: 45px;
      font-size: 1.8rem;
      line-height: 2.44;
      letter-spacing: 1.5px; }
  .rentacar-wrap .c-bgtitle {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 40px; }
    .rentacar-wrap .c-bgtitle > span {
      padding: 3px 8px;
      font-size: 3.6rem;
      letter-spacing: 3.8px; }
  .rentacar-wrap .text-wrap {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 20px; }
  .rentacar-wrap .image-wrap {
    position: relative;
    width: 555px; }
    .rentacar-wrap .image-wrap .img-car {
      position: absolute;
      right: -210px;
      bottom: -78px; }
  .rentacar-wrap .safety-wrap {
    padding-top: 110px;
    padding-bottom: 124px;
    background: #f1f0ed; }
  .rentacar-wrap .li-safety {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 66px; }
    .rentacar-wrap .li-safety > li {
      position: relative;
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1;
      padding: 56px 40px 60px 40px;
      border-radius: 14px;
      background: #fff; }
      .rentacar-wrap .li-safety > li + li {
        margin-left: 25px; }
    .rentacar-wrap .li-safety p {
      text-align: justify;
      letter-spacing: -.5px; }
    .rentacar-wrap .li-safety .txt-num {
      position: absolute;
      top: -68px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); }
    .rentacar-wrap .li-safety .txt-title {
      margin-bottom: 20px;
      font-size: 2.4rem;
      font-weight: bold;
      line-height: 1.5;
      letter-spacing: 1px;
      text-align: center; }

.shop-wrap {
  position: relative; }
  .shop-wrap:before, .shop-wrap:after {
    position: absolute;
    display: block;
    content: "";
    width: calc(50% - 720px); }
  .shop-wrap:before {
    top: 490px;
    left: 0;
    bottom: -700px;
    background: url(../img/bg-leaf01.jpg) no-repeat left top/cover; }
  .shop-wrap:after {
    top: 70px;
    right: 0;
    bottom: -170px;
    background: url(../img/bg-leaf02.jpg) no-repeat right top/cover; }
  .shop-wrap .l-wrapper {
    padding-top: 90px;
    padding-bottom: 158px;
    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.7%, #e3e3e3), color-stop(0.7%, transparent), color-stop(50%, transparent), color-stop(50%, #e3e3e3), color-stop(50.7%, #e3e3e3), color-stop(50.7%, transparent), to(transparent)), -webkit-gradient(linear, left top, right top, color-stop(0.7%, #e3e3e3), color-stop(0.7%, #ffffff), color-stop(50%, #ffffff), color-stop(50%, #e3e3e3), color-stop(50.7%, #e3e3e3), color-stop(50.7%, #ffffff), to(#ffffff));
    background-image: -webkit-linear-gradient(bottom, #e3e3e3 0.7%, transparent 0.7%, transparent 50%, #e3e3e3 50%, #e3e3e3 50.7%, transparent 50.7%, transparent 100%), -webkit-linear-gradient(left, #e3e3e3 0.7%, #ffffff 0.7%, #ffffff 50%, #e3e3e3 50%, #e3e3e3 50.7%, #ffffff 50.7%, #ffffff 100%);
    background-image: -o-linear-gradient(bottom, #e3e3e3 0.7%, transparent 0.7%, transparent 50%, #e3e3e3 50%, #e3e3e3 50.7%, transparent 50.7%, transparent 100%), -o-linear-gradient(left, #e3e3e3 0.7%, #ffffff 0.7%, #ffffff 50%, #e3e3e3 50%, #e3e3e3 50.7%, #ffffff 50.7%, #ffffff 100%);
    background-image: linear-gradient(0deg, #e3e3e3 0.7%, transparent 0.7%, transparent 50%, #e3e3e3 50%, #e3e3e3 50.7%, transparent 50.7%, transparent 100%), linear-gradient(90deg, #e3e3e3 0.7%, #ffffff 0.7%, #ffffff 50%, #e3e3e3 50%, #e3e3e3 50.7%, #ffffff 50.7%, #ffffff 100%);
    background-size: 142.00px 142.00px; }
  .shop-wrap .c-title {
    margin-bottom: 74px;
    font-size: 3.6rem;
    line-height: 1.44; }
  .shop-wrap dl[class*="shops-"] {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
    .shop-wrap dl[class*="shops-"] > dt {
      position: relative;
      margin-bottom: 36px;
      padding: 4px;
      border-radius: 8px;
      background: #cfcbbf;
      font-size: 3.0rem;
      font-weight: bold;
      text-align: center;
      letter-spacing: 4px; }
      .shop-wrap dl[class*="shops-"] > dt:after {
        position: absolute;
        display: block;
        content: ""; }
      .shop-wrap dl[class*="shops-"] > dt:after {
        top: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        border-style: solid;
        border-color: #cfcbbf transparent transparent transparent;
        border-width: 20px 12px 0 12px; }
      .shop-wrap dl[class*="shops-"] > dt ~ dt {
        margin-top: 72px;
        margin-bottom: 40px; }
    .shop-wrap dl[class*="shops-"] .shops {
      padding: 40px 32px 36px 36px;
      border-radius: 16px;
      background: #ebeae7; }
    .shop-wrap dl[class*="shops-"] .c-bgtitle {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      margin-bottom: 20px; }
      .shop-wrap dl[class*="shops-"] .c-bgtitle > span {
        padding: 1px 4px;
        font-size: 2.6rem;
        letter-spacing: 3px; }
      .shop-wrap dl[class*="shops-"] .c-bgtitle .sub {
        margin-top: 6px;
        padding: 2.5px 4px;
        font-size: 2.0rem; }
    .shop-wrap dl[class*="shops-"] .img-car {
      margin-left: -20px;
      margin-right: -30px; }
  .shop-wrap .box-shop .text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 26px; }
  .shop-wrap .box-shop .image {
    padding-top: 6px; }
  .shop-wrap .box-shop p {
    text-align: justify;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: .8px; }
    .shop-wrap .box-shop p:last-child {
      padding-bottom: 20px; }
  .shop-wrap .box-shop .c-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: auto;
    font-size: 1.8rem;
    padding: 11px 20px;
    font-weight: bold;
    text-align: left; }
    .shop-wrap .box-shop .c-btn:after {
      width: 22px;
      height: 22px;
      background-size: 22px 22px;
      vertical-align: middle; }
  .shop-wrap .box-shop + .box-shop {
    margin-top: 40px;
    padding-top: 40px;
    border-top: 2px solid #fff; }
  .shop-wrap .shops-naha {
    margin-left: 48px; }

.usage-wrap {
  padding-bottom: 310px;
  background: url(../img/bg-flower.jpg) no-repeat center top/cover; }
  .usage-wrap .usage {
    position: relative;
    padding-top: 84px;
    padding-bottom: 106px;
    background: #0e0908; }
    .usage-wrap .usage:before {
      position: absolute;
      display: block;
      content: ""; }
    .usage-wrap .usage:before {
      z-index: -1;
      top: 90px;
      left: -24px;
      width: 1523px;
      height: 1026px;
      background: url(../img/img-confetti03.png) no-repeat center center/contain; }
    .usage-wrap .usage .c-title {
      color: #fff;
      font-size: 3.6rem; }
      .usage-wrap .usage .c-title .sub {
        display: block;
        margin-bottom: 16px;
        font-family: "Lato", sans-serif;
        font-weight: 400;
        font-size: 3.0rem;
        letter-spacing: 6px; }
    .usage-wrap .usage .li-step {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .usage-wrap .usage .li-step > li {
        padding: 28px 36px 44px 36px;
        border-radius: 16px;
        background: #fff; }
        .usage-wrap .usage .li-step > li:nth-child(1), .usage-wrap .usage .li-step > li:nth-child(2) {
          position: relative;
          width: calc(50% - 32px); }
          .usage-wrap .usage .li-step > li:nth-child(1):after, .usage-wrap .usage .li-step > li:nth-child(2):after {
            position: absolute;
            display: block;
            content: ""; }
        .usage-wrap .usage .li-step > li:nth-child(1):after {
          top: 22px;
          right: -92px;
          z-index: 2;
          width: 155px;
          height: 50px;
          background: url(../img/img-arrow01.png) no-repeat center center/contain; }
        .usage-wrap .usage .li-step > li:nth-child(2):after {
          bottom: -80px;
          left: -17px;
          z-index: 2;
          width: 79px;
          height: 101px;
          background: url(../img/img-arrow02.png) no-repeat center center/contain; }
        .usage-wrap .usage .li-step > li:nth-child(2) .txt-title {
          letter-spacing: .8px; }
        .usage-wrap .usage .li-step > li:nth-child(2) figure {
          margin: 6px 0 0 50px; }
        .usage-wrap .usage .li-step > li:last-child {
          width: 100%;
          margin-top: 52px; }
          .usage-wrap .usage .li-step > li:last-child figure {
            margin: 20px 0 0 40px; }
      .usage-wrap .usage .li-step .txt-num {
        display: block;
        margin-bottom: 10px;
        font-size: 3.6rem;
        font-family: "Lato", sans-serif;
        font-weight: 900;
        letter-spacing: 4px; }
      .usage-wrap .usage .li-step .txt-title {
        margin-bottom: 16px;
        font-size: 2.4rem;
        font-weight: bold;
        letter-spacing: 4px; }
      .usage-wrap .usage .li-step p {
        letter-spacing: 1px;
        text-align: justify; }
      .usage-wrap .usage .li-step figure {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin-left: 20px; }
  .usage-wrap .goto-travel {
    padding: 70px 78px 60px;
    background: #c5c6ba;
    background: -webkit-linear-gradient(50deg, #e4e4df 0%, #f7f9f9 45%, #e4e4df 100%);
    background: -o-linear-gradient(50deg, #e4e4df 0%, #f7f9f9 45%, #e4e4df 100%);
    background: linear-gradient(40deg, #e4e4df 0%, #f7f9f9 45%, #e4e4df 100%); }
    .usage-wrap .goto-travel .c-columns {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .usage-wrap .goto-travel figure {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      margin: -16px 16px 0 20px; }
    .usage-wrap .goto-travel .c-bgtitle {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      margin-bottom: 20px; }
      .usage-wrap .goto-travel .c-bgtitle > span:nth-child(2) {
        background-position: 23% bottom;
        background-size: 120% 168px;
        font-size: 6.0rem; }
    .usage-wrap .goto-travel p {
      font-size: 2.4rem;
      font-weight: bold;
      line-height: 2;
      letter-spacing: 1.4px; }
  .usage-wrap .c-btnWrap {
    display: block;
    text-align: center; }
    .usage-wrap .c-btnWrap .c-btn {
      margin-left: auto;
      margin-right: auto; }

.box-otsClub {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }
  .box-otsClub .is-fsizeNormal {
    display: block; }
  .box-otsClub .c-btn {
    position: relative;
    margin: 0 26px !important;
    padding: 25px 50px 25px 24px; }
    .box-otsClub .c-btn:after {
      position: absolute;
      top: 50%;
      right: 20px;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }

/* tablet向けスタイル */
@media screen and (max-width: 1520px) {
  .l-wrapper {
    max-width: 1140px;
    padding-left: 60px;
    padding-right: 60px; }
  .mv-wrap:before {
    width: calc(50% - 570px + 126px); }
  .mv-wrap:after {
    left: calc(50% + 570px);
    bottom: -50px; }
  .mv-wrap .txt-hotel {
    left: calc(50% - 570px + 126px);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    padding-left: 200px;
    font-size: 15rem;
    letter-spacing: 1.4vw;
    line-height: 0.78; }
    .mv-wrap .txt-hotel:before {
      width: 200px; }
  .mv-wrap .li-group > li {
    width: calc(25% - 10px); }
  .rentacar-wrap:after {
    top: 50px;
    width: calc(50% - 570px);
    background-size: cover; }
  .rentacar-wrap .tieup-wrap, .rentacar-wrap .safety-wrap {
    margin-left: -60px;
    margin-right: -60px;
    padding-left: 60px;
    padding-right: 60px; }
  .rentacar-wrap .image-wrap {
    width: 385px; }
    .rentacar-wrap .image-wrap .img-car {
      right: -140px;
      bottom: -28px; }
  .rentacar-wrap .text-wrap p {
    padding-left: 0; }
  .shop-wrap:before, .shop-wrap:after {
    width: calc(50% - 570px); }
  .shop-wrap dl[class*="shops-"] > dt {
    font-size: 2.6rem;
    letter-spacing: 2px; }
  .shop-wrap dl[class*="shops-"] .img-car {
    margin-left: -10px;
    margin-right: -10px; }
  .shop-wrap .box-shop > .c-columns {
    display: block; }
  .shop-wrap .box-shop .text {
    padding-right: 0; }
  .shop-wrap .box-shop .c-btn {
    margin-top: 20px; }
  .shop-wrap .box-shop .image {
    margin-top: 30px;
    text-align: center; } }

@media screen and (max-width: 1140px) {
  .l-wrapper {
    max-width: 900px;
    padding-left: 30px;
    padding-right: 30px; }
  .c-btn {
    font-size: 2rem; }
  .c-btnWrap {
    margin: 64px -15px 0; }
    .c-btnWrap .c-btn {
      margin: 0 15px; }
  .mv-wrap:before {
    width: calc(50% - 450px + 126px); }
  .mv-wrap:after {
    left: calc(50% + 450px);
    bottom: -50px; }
  .mv-wrap .txt-hotel {
    left: calc(50% - 450px + 126px);
    padding-left: 100px;
    font-size: 13rem;
    letter-spacing: 1.1vw;
    line-height: 0.98; }
    .mv-wrap .txt-hotel:before {
      width: 100px; }
  .mv-wrap h2.is-tac img {
    width: 70%;
    margin-left: 70px; }
  .mv-wrap .li-group > li {
    width: calc(25% - 10px); }
  .rentacar-wrap:after {
    width: calc(50% - 450px); }
  .rentacar-wrap .tieup-wrap, .rentacar-wrap .safety-wrap {
    margin-left: -30px;
    margin-right: -30px;
    padding-left: 30px;
    padding-right: 30px; }
  .rentacar-wrap .image-wrap {
    width: 320px; }
    .rentacar-wrap .image-wrap .img-car {
      right: -60px;
      bottom: 20px; }
  .rentacar-wrap .c-bgtitle > span {
    font-size: 3.0rem; }
  .rentacar-wrap .tieup-wrap p {
    font-size: 1.6rem;
    letter-spacing: 0; }
  .rentacar-wrap .li-safety > li {
    padding: 56px 20px 40px 20px; }
  .rentacar-wrap .li-safety .txt-title {
    letter-spacing: 0; }
  .shop-wrap:before, .shop-wrap:after {
    width: calc(50% - 450px); }
  .shop-wrap dl[class*="shops-"] > dt {
    font-size: 2.4rem;
    letter-spacing: 0; }
  .shop-wrap .shops-naha {
    margin-left: 30px; }
  .usage-wrap .usage .li-step .c-columns {
    display: block; }
  .usage-wrap .usage .li-step figure {
    margin: 20px 0 0 0 !important;
    text-align: center; }
  .usage-wrap .goto-travel .c-columns {
    display: block; }
  .usage-wrap .goto-travel figure {
    margin: 30px 0 0 0;
    text-align: center; } }

@media screen and (max-width: 920px) {
  /* --- layout / common ------------------------------- */
  .l-wrapper {
    max-width: 750px; }
  .c-title {
    margin-bottom: 36px;
    font-size: 2.6rem;
    letter-spacing: 2px; }
  .c-bgtitle > span {
    font-size: 3.2rem; }
  .c-btn {
    font-size: 1.8rem; }
    .c-btn.blank:after {
      width: 24px;
      height: 24px;
      background-size: 24px 24px; }
  .c-columns {
    display: block; }
  .mv-wrap:before {
    width: calc(50% - 375px + 126px); }
  .mv-wrap:after {
    left: calc(50% + 375px); }
  .mv-wrap .txt-hotel {
    font-size: 12rem; }
  .mv-wrap .l-wrapper {
    padding-top: 120px;
    padding-bottom: 80px;
    background-size: 200px auto, 160px auto; }
    .mv-wrap .l-wrapper:before {
      width: 1100px;
      height: 800px; }
  .mv-wrap h2.is-tac img {
    width: 83%;
    margin-left: 0; }
  .mv-wrap .li-group > li {
    width: calc(25% - 10px); }
  .rentacar-wrap:after {
    width: calc(50% - 375px); }
  .rentacar-wrap .text-wrap {
    padding-right: 0; }
  .rentacar-wrap .image-wrap {
    width: auto;
    margin-top: 30px;
    text-align: center; }
    .rentacar-wrap .image-wrap .img-car {
      right: 50%;
      margin-right: -430px;
      bottom: -70px;
      width: 450px; }
  .rentacar-wrap .c-bgtitle > span {
    font-size: 3.0rem; }
  .rentacar-wrap .tieup-wrap p {
    font-size: 1.6rem;
    letter-spacing: 0; }
  .rentacar-wrap .li-safety {
    display: block;
    padding-top: 40px; }
    .rentacar-wrap .li-safety > li {
      padding: 56px 20px 40px 20px; }
      .rentacar-wrap .li-safety > li + li {
        margin-left: 0;
        margin-top: 80px; }
    .rentacar-wrap .li-safety .txt-num {
      top: -52px; }
    .rentacar-wrap .li-safety .txt-title {
      letter-spacing: 0; }
  .shop-wrap:before, .shop-wrap:after {
    width: calc(50% - 375px); }
  .shop-wrap .c-title {
    margin-bottom: 40px;
    font-size: 3.0rem; }
  .shop-wrap dl[class*="shops-"] > dt {
    font-size: 2.4rem;
    letter-spacing: 0; }
  .shop-wrap .shops-naha {
    margin-top: 60px;
    margin-left: 0; }
  .usage-wrap .usage .c-title {
    margin-bottom: 40px;
    font-size: 3.0rem; }
  .usage-wrap .usage .li-step > li:nth-child(1), .usage-wrap .usage .li-step > li:nth-child(2) {
    width: calc(50% - 10px); }
  .usage-wrap .usage .li-step > li:nth-child(1):after {
    top: -22px; }
  .box-otsClub {
    display: block !important; }
    .box-otsClub .is-fsizeNormal {
      font-size: 1.4rem !important; }
    .box-otsClub .c-btn + .c-btn {
      margin-top: 40px !important; } }

/* pc専用スタイル */
@media screen and (min-width: 768px) {
  .is- showsp {
    display: none !important; } }

/* sp向けスタイル */
@media screen and (max-width: 767px) {
  /* --- layout ------------------------------------ */
  .l-container {
    font-size: 1.4rem;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%; }
  .l-wrapper {
    padding-left: 16px;
    padding-right: 16px; }
  .l-headerLogo img {
    width: 94px; }
  .l-main section {
    padding-left: 30px !important;
    padding-right: 30px !important; }
  /*-- modules ----------------------------------------*/
  .is-showpc {
    display: none !important; }
  .is-sptal {
    text-align: left !important; }
  .is-sptac {
    text-align: center !important; }
  .is-sptar {
    text-align: right !important; }
  .is-fsizeSmall {
    font-size: 1.2rem !important; }
  .c-title {
    font-size: 1.6rem; }
  .c-bgtitle > span {
    font-size: 2.2rem;
    letter-spacing: 1.3px; }
    .c-bgtitle > span + span {
      margin-top: 8px; }
  .c-btn {
    padding: 16px 12px;
    font-size: 1.6rem; }
    .c-btn.blank:after {
      width: 16px;
      height: 20px;
      background-size: 16px 16px; }
    .c-btn.search:after {
      width: 18px;
      height: 20px; }
  .c-btnWrap {
    display: block;
    margin: 30px 0 0; }
    .c-btnWrap .c-btn {
      margin: 0; }
      .c-btnWrap .c-btn + .c-btn {
        margin-top: 12px; }
  .c-pcflex {
    display: block; }
  .c-underline {
    border-bottom-width: 2px; }
  .c-spmt0 {
    margin-top: 0px !important; }
  .c-spmr0 {
    margin-right: 0px !important; }
  .c-spmb0 {
    margin-bottom: 0px !important; }
  .c-spml0 {
    margin-left: 0px !important; }
  .c-sppt0 {
    padding-top: 0px !important; }
  .c-sppr0 {
    padding-right: 0px !important; }
  .c-sppb0 {
    padding-bottom: 0px !important; }
  .c-sppl0 {
    padding-left: 0px !important; }
  .c-spmt5 {
    margin-top: 5px !important; }
  .c-spmr5 {
    margin-right: 5px !important; }
  .c-spmb5 {
    margin-bottom: 5px !important; }
  .c-spml5 {
    margin-left: 5px !important; }
  .c-sppt5 {
    padding-top: 5px !important; }
  .c-sppr5 {
    padding-right: 5px !important; }
  .c-sppb5 {
    padding-bottom: 5px !important; }
  .c-sppl5 {
    padding-left: 5px !important; }
  .c-spmt10 {
    margin-top: 10px !important; }
  .c-spmr10 {
    margin-right: 10px !important; }
  .c-spmb10 {
    margin-bottom: 10px !important; }
  .c-spml10 {
    margin-left: 10px !important; }
  .c-sppt10 {
    padding-top: 10px !important; }
  .c-sppr10 {
    padding-right: 10px !important; }
  .c-sppb10 {
    padding-bottom: 10px !important; }
  .c-sppl10 {
    padding-left: 10px !important; }
  .c-spmt15 {
    margin-top: 15px !important; }
  .c-spmr15 {
    margin-right: 15px !important; }
  .c-spmb15 {
    margin-bottom: 15px !important; }
  .c-spml15 {
    margin-left: 15px !important; }
  .c-sppt15 {
    padding-top: 15px !important; }
  .c-sppr15 {
    padding-right: 15px !important; }
  .c-sppb15 {
    padding-bottom: 15px !important; }
  .c-sppl15 {
    padding-left: 15px !important; }
  .c-spmt20 {
    margin-top: 20px !important; }
  .c-spmr20 {
    margin-right: 20px !important; }
  .c-spmb20 {
    margin-bottom: 20px !important; }
  .c-spml20 {
    margin-left: 20px !important; }
  .c-sppt20 {
    padding-top: 20px !important; }
  .c-sppr20 {
    padding-right: 20px !important; }
  .c-sppb20 {
    padding-bottom: 20px !important; }
  .c-sppl20 {
    padding-left: 20px !important; }
  .c-spmt25 {
    margin-top: 25px !important; }
  .c-spmr25 {
    margin-right: 25px !important; }
  .c-spmb25 {
    margin-bottom: 25px !important; }
  .c-spml25 {
    margin-left: 25px !important; }
  .c-sppt25 {
    padding-top: 25px !important; }
  .c-sppr25 {
    padding-right: 25px !important; }
  .c-sppb25 {
    padding-bottom: 25px !important; }
  .c-sppl25 {
    padding-left: 25px !important; }
  .c-spmt30 {
    margin-top: 30px !important; }
  .c-spmr30 {
    margin-right: 30px !important; }
  .c-spmb30 {
    margin-bottom: 30px !important; }
  .c-spml30 {
    margin-left: 30px !important; }
  .c-sppt30 {
    padding-top: 30px !important; }
  .c-sppr30 {
    padding-right: 30px !important; }
  .c-sppb30 {
    padding-bottom: 30px !important; }
  .c-sppl30 {
    padding-left: 30px !important; }
  .c-spmt35 {
    margin-top: 35px !important; }
  .c-spmr35 {
    margin-right: 35px !important; }
  .c-spmb35 {
    margin-bottom: 35px !important; }
  .c-spml35 {
    margin-left: 35px !important; }
  .c-sppt35 {
    padding-top: 35px !important; }
  .c-sppr35 {
    padding-right: 35px !important; }
  .c-sppb35 {
    padding-bottom: 35px !important; }
  .c-sppl35 {
    padding-left: 35px !important; }
  .c-spmt40 {
    margin-top: 40px !important; }
  .c-spmr40 {
    margin-right: 40px !important; }
  .c-spmb40 {
    margin-bottom: 40px !important; }
  .c-spml40 {
    margin-left: 40px !important; }
  .c-sppt40 {
    padding-top: 40px !important; }
  .c-sppr40 {
    padding-right: 40px !important; }
  .c-sppb40 {
    padding-bottom: 40px !important; }
  .c-sppl40 {
    padding-left: 40px !important; }
  .c-spmt45 {
    margin-top: 45px !important; }
  .c-spmr45 {
    margin-right: 45px !important; }
  .c-spmb45 {
    margin-bottom: 45px !important; }
  .c-spml45 {
    margin-left: 45px !important; }
  .c-sppt45 {
    padding-top: 45px !important; }
  .c-sppr45 {
    padding-right: 45px !important; }
  .c-sppb45 {
    padding-bottom: 45px !important; }
  .c-sppl45 {
    padding-left: 45px !important; }
  .c-spmt50 {
    margin-top: 50px !important; }
  .c-spmr50 {
    margin-right: 50px !important; }
  .c-spmb50 {
    margin-bottom: 50px !important; }
  .c-spml50 {
    margin-left: 50px !important; }
  .c-sppt50 {
    padding-top: 50px !important; }
  .c-sppr50 {
    padding-right: 50px !important; }
  .c-sppb50 {
    padding-bottom: 50px !important; }
  .c-sppl50 {
    padding-left: 50px !important; }
  .c-spmt55 {
    margin-top: 55px !important; }
  .c-spmr55 {
    margin-right: 55px !important; }
  .c-spmb55 {
    margin-bottom: 55px !important; }
  .c-spml55 {
    margin-left: 55px !important; }
  .c-sppt55 {
    padding-top: 55px !important; }
  .c-sppr55 {
    padding-right: 55px !important; }
  .c-sppb55 {
    padding-bottom: 55px !important; }
  .c-sppl55 {
    padding-left: 55px !important; }
  .c-spmt60 {
    margin-top: 60px !important; }
  .c-spmr60 {
    margin-right: 60px !important; }
  .c-spmb60 {
    margin-bottom: 60px !important; }
  .c-spml60 {
    margin-left: 60px !important; }
  .c-sppt60 {
    padding-top: 60px !important; }
  .c-sppr60 {
    padding-right: 60px !important; }
  .c-sppb60 {
    padding-bottom: 60px !important; }
  .c-sppl60 {
    padding-left: 60px !important; }
  .c-spmt65 {
    margin-top: 65px !important; }
  .c-spmr65 {
    margin-right: 65px !important; }
  .c-spmb65 {
    margin-bottom: 65px !important; }
  .c-spml65 {
    margin-left: 65px !important; }
  .c-sppt65 {
    padding-top: 65px !important; }
  .c-sppr65 {
    padding-right: 65px !important; }
  .c-sppb65 {
    padding-bottom: 65px !important; }
  .c-sppl65 {
    padding-left: 65px !important; }
  .c-spmt70 {
    margin-top: 70px !important; }
  .c-spmr70 {
    margin-right: 70px !important; }
  .c-spmb70 {
    margin-bottom: 70px !important; }
  .c-spml70 {
    margin-left: 70px !important; }
  .c-sppt70 {
    padding-top: 70px !important; }
  .c-sppr70 {
    padding-right: 70px !important; }
  .c-sppb70 {
    padding-bottom: 70px !important; }
  .c-sppl70 {
    padding-left: 70px !important; }
  .c-spmt75 {
    margin-top: 75px !important; }
  .c-spmr75 {
    margin-right: 75px !important; }
  .c-spmb75 {
    margin-bottom: 75px !important; }
  .c-spml75 {
    margin-left: 75px !important; }
  .c-sppt75 {
    padding-top: 75px !important; }
  .c-sppr75 {
    padding-right: 75px !important; }
  .c-sppb75 {
    padding-bottom: 75px !important; }
  .c-sppl75 {
    padding-left: 75px !important; }
  .c-spmt80 {
    margin-top: 80px !important; }
  .c-spmr80 {
    margin-right: 80px !important; }
  .c-spmb80 {
    margin-bottom: 80px !important; }
  .c-spml80 {
    margin-left: 80px !important; }
  .c-sppt80 {
    padding-top: 80px !important; }
  .c-sppr80 {
    padding-right: 80px !important; }
  .c-sppb80 {
    padding-bottom: 80px !important; }
  .c-sppl80 {
    padding-left: 80px !important; }
  .c-spmt85 {
    margin-top: 85px !important; }
  .c-spmr85 {
    margin-right: 85px !important; }
  .c-spmb85 {
    margin-bottom: 85px !important; }
  .c-spml85 {
    margin-left: 85px !important; }
  .c-sppt85 {
    padding-top: 85px !important; }
  .c-sppr85 {
    padding-right: 85px !important; }
  .c-sppb85 {
    padding-bottom: 85px !important; }
  .c-sppl85 {
    padding-left: 85px !important; }
  .c-spmt90 {
    margin-top: 90px !important; }
  .c-spmr90 {
    margin-right: 90px !important; }
  .c-spmb90 {
    margin-bottom: 90px !important; }
  .c-spml90 {
    margin-left: 90px !important; }
  .c-sppt90 {
    padding-top: 90px !important; }
  .c-sppr90 {
    padding-right: 90px !important; }
  .c-sppb90 {
    padding-bottom: 90px !important; }
  .c-sppl90 {
    padding-left: 90px !important; }
  .c-spmt95 {
    margin-top: 95px !important; }
  .c-spmr95 {
    margin-right: 95px !important; }
  .c-spmb95 {
    margin-bottom: 95px !important; }
  .c-spml95 {
    margin-left: 95px !important; }
  .c-sppt95 {
    padding-top: 95px !important; }
  .c-sppr95 {
    padding-right: 95px !important; }
  .c-sppb95 {
    padding-bottom: 95px !important; }
  .c-sppl95 {
    padding-left: 95px !important; }
  .c-spmt100 {
    margin-top: 100px !important; }
  .c-spmr100 {
    margin-right: 100px !important; }
  .c-spmb100 {
    margin-bottom: 100px !important; }
  .c-spml100 {
    margin-left: 100px !important; }
  .c-sppt100 {
    padding-top: 100px !important; }
  .c-sppr100 {
    padding-right: 100px !important; }
  .c-sppb100 {
    padding-bottom: 100px !important; }
  .c-sppl100 {
    padding-left: 100px !important; }
  .sp-w0 {
    width: 0%; }
  .sp-w5 {
    width: 5%; }
  .sp-w10 {
    width: 10%; }
  .sp-w15 {
    width: 15%; }
  .sp-w20 {
    width: 20%; }
  .sp-w25 {
    width: 25%; }
  .sp-w30 {
    width: 30%; }
  .sp-w35 {
    width: 35%; }
  .sp-w40 {
    width: 40%; }
  .sp-w45 {
    width: 45%; }
  .sp-w50 {
    width: 50%; }
  .sp-w55 {
    width: 55%; }
  .sp-w60 {
    width: 60%; }
  .sp-w65 {
    width: 65%; }
  .sp-w70 {
    width: 70%; }
  .sp-w75 {
    width: 75%; }
  .sp-w80 {
    width: 80%; }
  .sp-w85 {
    width: 85%; }
  .sp-w90 {
    width: 90%; }
  .sp-w95 {
    width: 95%; }
  .sp-w100 {
    width: 100%; }
  p + h2,
  p + h3,
  p + h4,
  p + h5,
  p + h6,
  ul + h2,
  ul + h3,
  ul + h4,
  ul + h5,
  ul + h6,
  ol + h2,
  ol + h3,
  ol + h4,
  ol + h5,
  ol + h6,
  dl + h2,
  dl + h3,
  dl + h4,
  dl + h5,
  dl + h6,
  blockquote + h2,
  blockquote + h3,
  blockquote + h4,
  blockquote + h5,
  blockquote + h6,
  hr + h2,
  hr + h3,
  hr + h4,
  hr + h5,
  hr + h6,
  pre + h2,
  pre + h3,
  pre + h4,
  pre + h5,
  pre + h6,
  table + h2,
  table + h3,
  table + h4,
  table + h5,
  table + h6,
  form + h2,
  form + h3,
  form + h4,
  form + h5,
  form + h6,
  figure + h2,
  figure + h3,
  figure + h4,
  figure + h5,
  figure + h6 {
    margin-top: 25px; }
  /* --- toppage ---------------------------------- */
  .mv-wrap {
    padding-top: 27px; }
    .mv-wrap:before {
      width: 45px; }
    .mv-wrap:after {
      left: calc(50% + calc(100% - 60px)/2); }
    .mv-wrap .txt-hotel {
      opacity: .5;
      left: 45px;
      padding-left: 90px;
      font-size: 4.0rem;
      line-height: 0.78; }
      .mv-wrap .txt-hotel:before {
        width: 90px;
        background-image: -webkit-linear-gradient(135deg, #b4b2b0 12.5%, transparent 12.5%, transparent 50%, #b4b2b0 50%, #b4b2b0 62.5%, transparent 62.5%, transparent 100%), -webkit-linear-gradient(45deg, #b4b2b0 12.5%, #ecece8 12.5%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 62.5%, #ecece8 62.5%, #ecece8 100%);
        background-image: -o-linear-gradient(135deg, #b4b2b0 12.5%, transparent 12.5%, transparent 50%, #b4b2b0 50%, #b4b2b0 62.5%, transparent 62.5%, transparent 100%), -o-linear-gradient(45deg, #b4b2b0 12.5%, #ecece8 12.5%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 62.5%, #ecece8 62.5%, #ecece8 100%);
        background-image: linear-gradient(-45deg, #b4b2b0 12.5%, transparent 12.5%, transparent 50%, #b4b2b0 50%, #b4b2b0 62.5%, transparent 62.5%, transparent 100%), linear-gradient(45deg, #b4b2b0 12.5%, #ecece8 12.5%, #ecece8 50%, #b4b2b0 50%, #b4b2b0 62.5%, #ecece8 62.5%, #ecece8 100%);
        background-size: 5.66px 5.66px; }
    .mv-wrap .l-wrapper {
      padding-top: 45px;
      padding-bottom: 30px;
      background-size: 90px auto, 72px auto; }
      .mv-wrap .l-wrapper:before {
        left: -20px;
        width: 100vw;
        height: 250px;
        top: -3px; }
    .mv-wrap .c-bgtitle {
      margin-top: 12px;
      margin-bottom: 22px; }
    .mv-wrap .li-group {
      margin-top: 10px;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .mv-wrap .li-group > li {
        width: calc(50% - 5px);
        margin-top: 10px;
        text-align: center; }
  .rentacar-wrap:before {
    width: 30px;
    background-image: -webkit-linear-gradient(135deg, #e0dfdc 12.5%, transparent 12.5%, transparent 50%, #e0dfdc 50%, #e0dfdc 62.5%, transparent 62.5%, transparent 100%), -webkit-linear-gradient(45deg, #e0dfdc 12.5%, #f0efec 12.5%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 62.5%, #f0efec 62.5%, #f0efec 100%);
    background-image: -o-linear-gradient(135deg, #e0dfdc 12.5%, transparent 12.5%, transparent 50%, #e0dfdc 50%, #e0dfdc 62.5%, transparent 62.5%, transparent 100%), -o-linear-gradient(45deg, #e0dfdc 12.5%, #f0efec 12.5%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 62.5%, #f0efec 62.5%, #f0efec 100%);
    background-image: linear-gradient(-45deg, #e0dfdc 12.5%, transparent 12.5%, transparent 50%, #e0dfdc 50%, #e0dfdc 62.5%, transparent 62.5%, transparent 100%), linear-gradient(45deg, #e0dfdc 12.5%, #f0efec 12.5%, #f0efec 50%, #e0dfdc 50%, #e0dfdc 62.5%, #f0efec 62.5%, #f0efec 100%);
    background-size: 5.66px 5.66px;
    font-size: 4.0rem;
    letter-spacing: 7px; }
  .rentacar-wrap:after {
    width: 30px;
    bottom: 40px; }
  .rentacar-wrap .tieup-wrap, .rentacar-wrap .safety-wrap {
    margin-left: -16px;
    margin-right: -16px;
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 30px;
    padding-bottom: 30px; }
  .rentacar-wrap .c-bgtitle {
    margin-bottom: 16px; }
    .rentacar-wrap .c-bgtitle > span {
      font-size: 1.9rem;
      letter-spacing: 0; }
  .rentacar-wrap .image-wrap {
    margin-top: 20px; }
    .rentacar-wrap .image-wrap .img-car {
      margin-right: -180px;
      bottom: -50px;
      width: 250px; }
  .rentacar-wrap .tieup-wrap:before {
    left: 30px;
    width: 90px;
    background-image: -webkit-linear-gradient(135deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%), -webkit-linear-gradient(45deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%);
    background-image: -o-linear-gradient(135deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%), -o-linear-gradient(45deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%);
    background-image: linear-gradient(-45deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%), linear-gradient(45deg, #534f4f 12.5%, transparent 12.5%, transparent 50%, #534f4f 50%, #534f4f 62.5%, transparent 62.5%, transparent 100%);
    background-size: 5.66px 5.66px; }
  .rentacar-wrap .tieup-wrap p {
    font-size: 1.4rem;
    line-height: 1.8; }
  .rentacar-wrap .li-safety {
    padding-top: 20px;
    border-radius: 8px; }
    .rentacar-wrap .li-safety > li {
      padding: 40px 20px 28px 20px; }
      .rentacar-wrap .li-safety > li + li {
        margin-top: 60px; }
    .rentacar-wrap .li-safety .txt-num {
      top: -36px;
      width: 60px; }
    .rentacar-wrap .li-safety .txt-title {
      font-size: 1.9rem; }
  .shop-wrap:before, .shop-wrap:after {
    width: 30px; }
  .shop-wrap:before {
    background: url(../img/bg-leaf-sp.jpg) no-repeat left -380px/cover; }
  .shop-wrap:after {
    top: -40px;
    background: url(../img/bg-leaf-sp.jpg) no-repeat right top/cover; }
  .shop-wrap .l-wrapper {
    padding-top: 30px;
    padding-bottom: 30px;
    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(3.13%, #e3e3e3), color-stop(3.13%, transparent), color-stop(50%, transparent), color-stop(50%, #e3e3e3), color-stop(53.13%, #e3e3e3), color-stop(53.13%, transparent), to(transparent)), -webkit-gradient(linear, left top, right top, color-stop(3.13%, #e3e3e3), color-stop(3.13%, #fff), color-stop(50%, #fff), color-stop(50%, #e3e3e3), color-stop(53.13%, #e3e3e3), color-stop(53.13%, #fff), to(#fff));
    background-image: -webkit-linear-gradient(bottom, #e3e3e3 3.13%, transparent 3.13%, transparent 50%, #e3e3e3 50%, #e3e3e3 53.13%, transparent 53.13%, transparent 100%), -webkit-linear-gradient(left, #e3e3e3 3.13%, #fff 3.13%, #fff 50%, #e3e3e3 50%, #e3e3e3 53.13%, #fff 53.13%, #fff 100%);
    background-image: -o-linear-gradient(bottom, #e3e3e3 3.13%, transparent 3.13%, transparent 50%, #e3e3e3 50%, #e3e3e3 53.13%, transparent 53.13%, transparent 100%), -o-linear-gradient(left, #e3e3e3 3.13%, #fff 3.13%, #fff 50%, #e3e3e3 50%, #e3e3e3 53.13%, #fff 53.13%, #fff 100%);
    background-image: linear-gradient(0deg, #e3e3e3 3.13%, transparent 3.13%, transparent 50%, #e3e3e3 50%, #e3e3e3 53.13%, transparent 53.13%, transparent 100%), linear-gradient(90deg, #e3e3e3 3.13%, #fff 3.13%, #fff 50%, #e3e3e3 50%, #e3e3e3 53.13%, #fff 53.13%, #fff 100%);
    background-size: 32.00px 32.00px; }
  .shop-wrap .c-title {
    margin-bottom: 20px;
    font-size: 1.8rem;
    letter-spacing: 0.7px; }
  .shop-wrap dl[class*="shops-"] > dt {
    margin-bottom: 16px;
    border-radius: 4px;
    font-size: 2.0rem;
    letter-spacing: 0; }
    .shop-wrap dl[class*="shops-"] > dt:after {
      border-width: 12px 8px 0 8px; }
    .shop-wrap dl[class*="shops-"] > dt ~ dt {
      margin-top: 32px;
      margin-bottom: 20px; }
  .shop-wrap dl[class*="shops-"] .shops {
    padding: 20px;
    border-radius: 6px; }
  .shop-wrap dl[class*="shops-"] .c-bgtitle > span {
    font-size: 2.2rem; }
  .shop-wrap dl[class*="shops-"] .c-bgtitle .sub {
    font-size: 1.6rem;
    letter-spacing: 0; }
  .shop-wrap .box-shop .image {
    margin-top: 20px; }
  .shop-wrap .box-shop .c-btn {
    font-size: 1.6rem; }
    .shop-wrap .box-shop .c-btn:after {
      width: 16px;
      height: 20px;
      background-size: 16px 16px; }
  .shop-wrap .box-shop + .box-shop {
    margin-top: 20px;
    padding-top: 20px; }
  .shop-wrap .shops-naha {
    margin-top: 60px;
    margin-left: 0; }
  .usage-wrap {
    padding-bottom: 60px;
    background: url(../img/bg-flower-sp.jpg) no-repeat center bottom/cover; }
    .usage-wrap .usage {
      padding-top: 30px;
      padding-bottom: 30px; }
      .usage-wrap .usage:before {
        top: 20px;
        left: -30px;
        width: 100vw;
        height: 276px; }
      .usage-wrap .usage .c-title {
        margin-bottom: 20px;
        font-size: 1.8rem;
        letter-spacing: 0.7px; }
        .usage-wrap .usage .c-title .sub {
          margin-bottom: 8px;
          font-size: 1.6rem; }
      .usage-wrap .usage .li-step {
        display: block; }
        .usage-wrap .usage .li-step > li {
          padding: 20px;
          border-radius: 8px; }
          .usage-wrap .usage .li-step > li:nth-child(1), .usage-wrap .usage .li-step > li:nth-child(2) {
            width: auto; }
            .usage-wrap .usage .li-step > li:nth-child(1):after, .usage-wrap .usage .li-step > li:nth-child(2):after {
              right: 0;
              top: auto;
              left: auto;
              bottom: -40px;
              width: 60px;
              height: 60px; }
          .usage-wrap .usage .li-step > li:nth-child(1) {
            margin-bottom: 20px; }
            .usage-wrap .usage .li-step > li:nth-child(1):after {
              -webkit-transform: rotate(120deg);
              -ms-transform: rotate(120deg);
              transform: rotate(120deg);
              right: -10px;
              width: 70px;
              height: 70px; }
          .usage-wrap .usage .li-step > li:last-child {
            margin-top: 20px; }
        .usage-wrap .usage .li-step .txt-num {
          font-size: 2.2rem; }
        .usage-wrap .usage .li-step .txt-title {
          font-size: 1.8rem; }
    .usage-wrap .goto-travel {
      padding: 30px 16px; }
      .usage-wrap .goto-travel .c-bgtitle > span {
        font-size: 1.8rem; }
        .usage-wrap .goto-travel .c-bgtitle > span:nth-child(2) {
          font-size: 3.5rem; }
      .usage-wrap .goto-travel p {
        font-size: 1.4rem;
        letter-spacing: 0; }
      .usage-wrap .goto-travel figure {
        width: 50%;
        margin: 20px auto 0; }
  .box-otsClub {
    display: block !important; }
    .box-otsClub .is-fsizeNormal {
      font-size: 1.2rem !important; }
    .box-otsClub .c-btn {
      margin: 0 !important;
      padding: 16px 34px 16px 10px; }
      .box-otsClub .c-btn:after {
        right: 8px; }
      .box-otsClub .c-btn + .c-btn {
        margin-top: 30px !important; } }

/* #Print Fixes */
@media print {
  * {
    color: #000 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  @page {
    margin: 1cm 2cm; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }
  h2, h3 {
    page-break-after: avoid; }
  thead {
    display: table-header-group; }
  tr, img {
    page-break-inside: avoid; }
  body {
    width: auto;
    -webkit-print-color-adjust: exact; } }

/* 201024 追記 */
.btn-cation {
  color: #f00;
  position: absolute;
  bottom: -25px;
  left: 5px;
  font-size: small !important;
}
@media screen and (max-width: 767px) {
  .c-btnWrap.box-otsClub .c-btn.blank .is-fsizeNormal.btn-cation {
    bottom: -18px;
    left: 0;
    font-size: 0.8rem !important;
  }
}
/* 210216 imove追記 */
@media screen and (min-width: 1521px){
	.shop-wrap .box-shop + .box-shop{
		height:356px;
	}
}
@media screen and (max-width: 1520px){
	.shop-wrap .box-shop + .box-shop{
		height:551px;
	}
}
@media screen and (max-width: 920px){
	.shop-wrap .box-shop + .box-shop{
		display:none;
	}
}