@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/NotoSansJP-Bold.woff") format("woff");
  font-weight: 900;
  font-display: swap;
}

@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/NotoSansJP-Medium.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/NotoSansJP-Regular.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP-Light.woff2") format("woff2"), url("../fonts/NotoSansJP-Light.woff") format("woff");
  font-weight: 100;
  font-display: swap;
}

/*
 reset
*/
a,
aside,
blockquote,
code,
dd,
div,
dl,
dt,
fieldset,
figcaption,
figure,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
img,
input,
legend,
li,
main,
ol,
option,
p,
pre,
section,
select,
span,
table,
td,
textarea,
th,
tr,
ul {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  outline: none;
}

section {
  position: relative;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input,
textarea,
button {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
  border: none;
  border-radius: 0;
  color: inherit;
}

textarea::-webkit-input-placeholder {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-weight: normal !important;
}

textarea:-ms-input-placeholder {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-weight: normal !important;
}

textarea::-ms-input-placeholder {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-weight: normal !important;
}

textarea::placeholder {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-weight: normal !important;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

fieldset,
img {
  border: 0;
}

legend {
  color: #000000;
}

sub {
  vertical-align: text-bottom;
}

.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

label {
  cursor: pointer;
}

/*
  common
*/
html {
  font-size: 10px;
}

body {
  height: 100%;
  word-break: break-word;
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 0;
  letter-spacing: 1px;
  line-height: 1.8;
  font-size: 1.2rem;
  color: #333;
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body.scrollOff {
  overflow: hidden;
  position: fixed;
}

#loading {
  background: rgba(198, 198, 198, 0.7);
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99;
  pointer-events: none;
}

#loading > img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 150px;
  height: 150px;
}

.wrap {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 16px;
}

.mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: 1px;
  font-weight: bold;
}

h1 {
  font-size: 2.6rem;
}

.h1-small {
  font-weight: 100;
  font-size: 2rem;
}

h2 {
  font-size: 2rem;
  line-height: 36px;
}

.h2-medium {
  font-size: 2rem;
  line-height: 36px;
}

.h2-small {
  font-size: 1.6rem;
}

.h2-x-small {
  font-size: 1.4rem;
}

h3 {
  font-size: 1.6rem;
}

.h3-small {
  font-size: 1.6rem;
}

h4 {
  font-size: 1.6rem;
}

h5 {
  font-size: 1.4rem;
}

h6 {
  font-size: 1.2rem;
}

p {
  margin-bottom: 8px;
}

a {
  text-decoration: none;
  color: #0066cc;
}

@media (min-width: 768px) {
  a:hover {
    color: #554B98;
  }
}

a.hover:hover,
.hover a:hover {
  opacity: 0.7;
  cursor: pointer;
}

.hover-box:hover {
  opacity: 0.7;
  cursor: pointer;
}

.no-hover {
  pointer-events:none;
  cursor: default;
}

.default-link,
.default-link-gray,
.default-link-black {
  text-decoration: underline;
}

.default-link:hover,
.default-link-gray:hover,
.default-link-black:hover {
  text-decoration: none;
}

.default-link-gray {
  color: #757575;
}

.default-link-gray:hover {
  /*color: #000;*/
  color: #757575;
}

.default-link-black {
  color: #333;
}

.default-link-black:hover {
  color: #333;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-1 {
  opacity: 1 !important;
}

.hide {
  display: none;
}

.pc-only {
  display: none;
}

.line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-one {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-4 {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-5 {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* overlay */
.common-overlay {
  display: none;
  width: 100%;
  height: 100%;
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9;
  background: rgba(0, 0, 0, 0.05);
}

.common-overlay.none {
  background: none;
}

@media (min-width: 1280px) {
  .wrap {
    padding: 0;
  }
}
@media (min-width: 1024px) {
  .tb-only {
    display: none;
  }
}

@media (min-width: 768px) {
  body {
    font-size: 1.4rem;
  }
  .pc-only {
    display: block;
  }
  .sp-only {
    display: none;
  }
  h1 {
    font-size: 4rem;
  }
  .h1-small {
    font-size: 3.6rem;
  }
  .h1-sp-small {
    font-size: 2.6rem;
  }
  h2 {
    font-size: 2.6rem;
    line-height: 48px;
  }
  .h2-medium {
    font-size: 2.6rem;
    line-height: 48px;
  }
  .h2-small {
    font-size: 2.8rem;
  }
  .h2-x-small {
    font-size: 2.4rem;
  }
  .h2-sp-small {
    font-size: 2.4rem;
  }
  .h2-sp-x-small {
    font-size: 1.6rem;
  }
  h3 {
    font-size: 2rem;
    line-height: 36px;
  }
  .h3-small {
    font-size: 2rem;
  }
  .h3-sp-small {
    font-size: 2rem;
  }
  h4 {
    font-size: 2rem;
  }
  h5 {
    font-size: 1.8rem;
  }
  h6 {
    font-size: 1.6rem;
  }
}

/*
  helper-class
*/
.clear {
  clear: both;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

.text-shadow-none {
  text-shadow: none !important;
}
.text-shadow-100 {
  text-shadow: 1px 1px 1px  #000;
}

.text-shadow-50 {
  text-shadow: 0 0 5px #000;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.float-none {
  float: none;
}

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

.space-between {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.space-around {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}

.d-block {
  display: block;
}

.d-inline-block {
  display: inline-block;
}

.d-none {
  display: none;
}

.row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.align-start {
    align-items: flex-start;
}

.align-end {
    align-items: flex-end;
}

.bd-none {
  border: none;
}

.bd-top-none {
  border-top: none;
}

.bd-bottom-none {
  border-bottom: none;
}

.bd-right-none {
  border-right: none;
}

.bd-left-none {
  border-left: none;
}

.bd-top-gray {
  border-top: 1px solid #F5F5F5;
}

.bd-right-gray {
  border-right: 1px solid #F5F5F5;
}

.bd-left-gray {
  border-left: 1px solid #F5F5F5;
}

.bd-bottom-gray {
  border-bottom: 1px solid #F5F5F5;
}

.bd-top-gray-2 {
  border-top: 1px solid #c6c6c6;
}

.bd-bottom-gray-2 {
  border-top: 1px solid #c6c6c6;
}

.bd-width-2 {
  border-width: 2px;
}

.bd-width-3 {
  border-width: 3px;
}

.bd-width-4 {
  border-width: 4px;
}

.bd-width-5 {
  border-width: 5px;
}

.bd-orange {
  border: 1px solid #FF503E;
}

.font-heavy {
  font-weight: 900;
}

.font-bold {
  font-weight: bold;
}

.font-bold.font-small, .font-bold.font-x-small {
  font-weight: 900;
}

.font-bold .font-small,
.font-bold .font-x-small {
  font-weight: 900;
}

.font-normal {
  font-weight: normal;
}

.font-thin {
  font-weight: 100;
}

.font-xxxxxx-large {
  font-size: 3.2rem;
}

.font-xxxxx-large {
  font-size: 3.2rem;
}

.font-xxxx-large {
  font-size: 2.8rem;
}

.font-xxx-large {
  font-size: 2.4rem;
}

.font-xx-large {
  font-size: 2rem;
}

.font-x-large {
  font-size: 1.6rem;
}

.font-large {
  font-size: 1.4rem;
}

.font-default {
  font-size: 1.3rem;
}

.font-small {
  font-size: 1.2rem;
}

.font-small .font-bold {
  font-weight: 900;
}

.font-x-small {
  font-size: 1rem;
}

.font-x-small .font-bold {
  font-weight: 900;
}

.font-64 {
  font-size: 64px;
}
.font-56 {
  font-size: 56px;
}
.font-46 {
  font-size: 46px;
}
.font-40 {
  font-size: 40px;
}
.font-36 {
  font-size: 36px;
}
.font-26 {
  font-size: 26px;
}
.font-16 {
  font-size: 16px;
}

.font-14 {
  font-size: 14px;
}
.font-12 {
  font-size: 12px;
}

.line-x-large {
  line-height: 2.5;
}

.line-large {
  line-height: 2;
}

.line-medium {
  line-height: 1.6;
}

.line-small {
  line-height: 1.5;
}

.line-x-small {
  line-height: 1.2;
}

.line-xx-small {
  line-height: 1;
}

.line-0 {
  line-height: 0;
}

.vertical-middle {
  vertical-align: middle;
}
.vertical-text-bottom {
  vertical-align: text-bottom;
}
.vertical-text-top {
  vertical-align: text-top;
}

.white-pre-wrap {
  white-space: pre-wrap;
  word-break: break-all;
}

.white-no-wrap {
  white-space: nowrap;
}

.position-relative {
  position: relative;
}

@media (min-width: 768px) {
  .font-xxxxxx-large {
    font-size: 4rem;
  }
  .font-xxxxx-large {
    font-size: 3.6rem;
  }
  .font-xxxx-large {
    font-size: 3.2rem;
  }
  .font-xxx-large {
    font-size: 2.6rem;
  }
  .font-xx-large {
    font-size: 2.4rem;
  }
  .font-x-large {
    font-size: 2rem;
  }
  .font-large {
    font-size: 1.6rem;
  }
  .font-default {
    font-size: 1.4rem;
  }
  .font-small {
    font-size: 1.2rem;
  }
  .font-x-small {
    font-size: 1rem;
  }
  .pc-font-24 {
    font-size: 24px !important;
  }
  .pc-font-20 {
    font-size: 20px !important;
  }
  .pc-font-16 {
    font-size: 16px !important;
  }
}

@media (max-width: 767px) {
  .sp-font-32 {
    font-size: 3.2rem;
  }
  .sp-font-30 {
    font-size: 3rem;
  }
  .sp-font-28 {
    font-size: 2.8rem;
  }
  .sp-font-26 {
    font-size: 2.6rem;
  }
  .sp-font-24 {
    font-size: 2.4rem;
  }
  .sp-font-20 {
    font-size: 2rem;
  }
  .sp-font-18 {
    font-size: 1.8rem;
  }
  .sp-font-16 {
    font-size: 1.6rem;
  }
  .sp-font-14 {
    font-size: 1.4rem;
  }
  .sp-font-12 {
    font-size: 1.2rem;
  }
  .sp-font-11 {
    font-size: 1.1rem;
  }
  .sp-font-10 {
    font-size: 1rem;
  }
  .sp-line-small {
    line-height: 1.5;
  }
  .sp-line-x-small {
    line-height: 1.2;
  }
  .sp-line-xx-small {
    line-height: 1;
  }
}

.font-small.line-small {
  color: #757575;
}

.font-small.line-small.color-black {
  color: #333;
}

.color-black {
  color: #000;
}

.color-inherit {
  color: inherit;
}

.color-white {
  color: #fff;
}

.color-gray-1 {
  color: #333;
}

.color-gray-1-hover {
  color: #333 !important;
}

.color-gray-2 {
  color: #757575;
}

a.color-gray-2:hover {
  color: #000;
}

.color-gray-3 {
  color: #c6c6c6;
}

.color-gray-4 {
  color: #f5f5f5;
}

.color-gray-5 {
  color: #A5A4A4;
}

.color-relux {
  color: #0F0A64;
}

.color-blue-1 {
  color: #554B98;
}

.color-blue-2 {
  color: #4F68C2;
}

.color-blue-3 {
  color: #A6BCE9;
}

.color-blue-4 {
  color: #E1E9F8;
}

.color-link {
  color: #0066CC;
}

.color-red {
  color: #CE0000;
}
.color-red-2 {
  color: #C11C3A;
}

.color-maroon {
  color: #FF503E;
}

.color-orange {
  color: #FF850C;
}

.color-orange-2 {
  color: #FF503E;
}
.color-orange-3 {
  color: #EB5505;
}

.color-yellow {
  color: #FEE661;
}
.color-gold {
  color: #A58D2D;
}

.bg-black {
  background: #000;
}

.bg-white {
  background: #fff;
}

.bg-gray {
  background: #f5f5f5;
}

.bg-gold {
  background: #AA9A31;
}

.bg-relux {
  background: #0F0A64;
}
.bg-paleblue {
  background: #F3F8FD;
}

.m-auto {
  margin: 0 auto;
}
.m-0 {
  margin: 0px !important;
}

.m-8 {
  margin: 8px !important;
}

.m-16 {
  margin: 16px !important;
}

.m-24 {
  margin: 24px !important;
}

.m-32 {
  margin: 32px !important;
}

.m-40 {
  margin: 40px !important;
}

.m-48 {
  margin: 48px !important;
}

.m-56 {
  margin: 56px !important;
}

.m-64 {
  margin: 64px !important;
}

.m-72 {
  margin: 72px !important;
}

.m-80 {
  margin: 80px !important;
}

.m-88 {
  margin: 88px !important;
}

.m-96 {
  margin: 96px !important;
}

.m-104 {
  margin: 104px !important;
}

.m-112 {
  margin: 112px !important;
}

.m-120 {
  margin: 120px !important;
}

.m-128 {
  margin: 128px !important;
}

.m-136 {
  margin: 136px !important;
}

.m-144 {
  margin: 144px !important;
}

.m-152 {
  margin: 152px !important;
}

.m-160 {
  margin: 160px !important;
}

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

.mt-4 {
  margin-top: 4px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.mt-24 {
  margin-top: 24px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

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

.mt-48 {
  margin-top: 48px !important;
}

.mt-56 {
  margin-top: 56px !important;
}

.mt-64 {
  margin-top: 64px !important;
}

.mt-72 {
  margin-top: 72px !important;
}

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

.mt-88 {
  margin-top: 88px !important;
}

.mt-96 {
  margin-top: 96px !important;
}

.mt-104 {
  margin-top: 104px !important;
}

.mt-112 {
  margin-top: 112px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mt-128 {
  margin-top: 128px !important;
}

.mt-136 {
  margin-top: 136px !important;
}

.mt-144 {
  margin-top: 144px !important;
}

.mt-152 {
  margin-top: 152px !important;
}

.mt-160 {
  margin-top: 160px !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.mt-auto {
  margin-top: auto !important;
}

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

.mb-2 {
  margin-bottom: 2px !important;
}

.mb-4 {
  margin-bottom: 4px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

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

.mb-24 {
  margin-bottom: 24px !important;
}

.mb-32 {
  margin-bottom: 32px !important;
}

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

.mb-48 {
  margin-bottom: 48px !important;
}

.mb-56 {
  margin-bottom: 56px !important;
}

.mb-64 {
  margin-bottom: 64px !important;
}

.mb-72 {
  margin-bottom: 72px !important;
}

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

.mb-88 {
  margin-bottom: 88px !important;
}

.mb-96 {
  margin-bottom: 96px !important;
}

.mb-104 {
  margin-bottom: 104px !important;
}

.mb-112 {
  margin-bottom: 112px !important;
}

.mb-120 {
  margin-bottom: 120px !important;
}

.mb-128 {
  margin-bottom: 128px !important;
}

.mb-136 {
  margin-bottom: 136px !important;
}

.mb-144 {
  margin-bottom: 144px !important;
}

.mb-152 {
  margin-bottom: 152px !important;
}

.mb-160 {
  margin-bottom: 160px !important;
}
.mb--10 {
  margin-bottom: -10px !important;
}

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

.ml-8 {
  margin-left: 8px !important;
}

.ml-16 {
  margin-left: 16px !important;
}

.ml-24 {
  margin-left: 24px !important;
}

.ml-32 {
  margin-left: 32px !important;
}

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

.ml-48 {
  margin-left: 48px !important;
}

.ml-56 {
  margin-left: 56px !important;
}

.ml-64 {
  margin-left: 64px !important;
}

.ml-72 {
  margin-left: 72px !important;
}

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

.ml-88 {
  margin-left: 88px !important;
}

.ml-96 {
  margin-left: 96px !important;
}

.ml-104 {
  margin-left: 104px !important;
}

.ml-112 {
  margin-left: 112px !important;
}

.ml-120 {
  margin-left: 120px !important;
}

.ml-128 {
  margin-left: 128px !important;
}

.ml-136 {
  margin-left: 136px !important;
}

.ml-144 {
  margin-left: 144px !important;
}

.ml-152 {
  margin-left: 152px !important;
}

.ml-160 {
  margin-left: 160px !important;
}

.mr--10 {
  margin-right: -10px !important;
}
.mr--20 {
  margin-right: -20px !important;
}
.mr--30 {
  margin-right: -30px !important;
}
.mr--40 {
  margin-right: -40px !important;
}

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

.mr-8 {
  margin-right: 8px !important;
}

.mr-16 {
  margin-right: 16px !important;
}

.mr-24 {
  margin-right: 24px !important;
}

.mr-32 {
  margin-right: 32px !important;
}

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

.mr-48 {
  margin-right: 48px !important;
}

.mr-56 {
  margin-right: 56px !important;
}

.mr-64 {
  margin-right: 64px !important;
}

.mr-72 {
  margin-right: 72px !important;
}

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

.mr-88 {
  margin-right: 88px !important;
}

.mr-96 {
  margin-right: 96px !important;
}

.mr-104 {
  margin-right: 104px !important;
}

.mr-112 {
  margin-right: 112px !important;
}

.mr-120 {
  margin-right: 120px !important;
}

.mr-128 {
  margin-right: 128px !important;
}

.mr-136 {
  margin-right: 136px !important;
}

.mr-144 {
  margin-right: 144px !important;
}

.mr-152 {
  margin-right: 152px !important;
}

.mr-160 {
  margin-right: 160px !important;
}

.p-0 {
  padding: 0px !important;
}

.p-8 {
  padding: 8px !important;
}

.p-16 {
  padding: 16px !important;
}

.p-24 {
  padding: 24px !important;
}

.p-32 {
  padding: 32px !important;
}

.p-40 {
  padding: 40px !important;
}

.p-48 {
  padding: 48px !important;
}

.p-56 {
  padding: 56px !important;
}

.p-64 {
  padding: 64px !important;
}

.p-72 {
  padding: 72px !important;
}

.p-80 {
  padding: 80px !important;
}

.p-88 {
  padding: 88px !important;
}

.p-96 {
  padding: 96px !important;
}

.p-104 {
  padding: 104px !important;
}

.p-112 {
  padding: 112px !important;
}

.p-120 {
  padding: 120px !important;
}

.p-128 {
  padding: 128px !important;
}

.p-136 {
  padding: 136px !important;
}

.p-144 {
  padding: 144px !important;
}

.p-152 {
  padding: 152px !important;
}

.p-160 {
  padding: 160px !important;
}

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

.pt-4 {
  padding-top: 4px !important;
}

.pt-8 {
  padding-top: 8px !important;
}

.pt-16 {
  padding-top: 16px !important;
}

.pt-24 {
  padding-top: 24px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

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

.pt-48 {
  padding-top: 48px !important;
}

.pt-56 {
  padding-top: 56px !important;
}

.pt-64 {
  padding-top: 64px !important;
}

.pt-72 {
  padding-top: 72px !important;
}

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

.pt-88 {
  padding-top: 88px !important;
}

.pt-96 {
  padding-top: 96px !important;
}

.pt-104 {
  padding-top: 104px !important;
}

.pt-112 {
  padding-top: 112px !important;
}

.pt-120 {
  padding-top: 120px !important;
}

.pt-128 {
  padding-top: 128px !important;
}

.pt-136 {
  padding-top: 136px !important;
}

.pt-144 {
  padding-top: 144px !important;
}

.pt-152 {
  padding-top: 152px !important;
}

.pt-160 {
  padding-top: 160px !important;
}

.pb-4 {
  padding-bottom: 4px;
}

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

.pb-8 {
  padding-bottom: 8px !important;
}

.pb-16 {
  padding-bottom: 16px !important;
}

.pb-24 {
  padding-bottom: 24px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

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

.pb-48 {
  padding-bottom: 48px !important;
}

.pb-56 {
  padding-bottom: 56px !important;
}

.pb-64 {
  padding-bottom: 64px !important;
}

.pb-72 {
  padding-bottom: 72px !important;
}

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

.pb-88 {
  padding-bottom: 88px !important;
}

.pb-96 {
  padding-bottom: 96px !important;
}

.pb-104 {
  padding-bottom: 104px !important;
}

.pb-112 {
  padding-bottom: 112px !important;
}

.pb-120 {
  padding-bottom: 120px !important;
}

.pb-128 {
  padding-bottom: 128px !important;
}

.pb-136 {
  padding-bottom: 136px !important;
}

.pb-144 {
  padding-bottom: 144px !important;
}

.pb-152 {
  padding-bottom: 152px !important;
}

.pb-160 {
  padding-bottom: 160px !important;
}

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

.pl-8 {
  padding-left: 8px !important;
}

.pl-16 {
  padding-left: 16px !important;
}

.pl-24 {
  padding-left: 24px !important;
}

.pl-32 {
  padding-left: 32px !important;
}

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

.pl-48 {
  padding-left: 48px !important;
}

.pl-56 {
  padding-left: 56px !important;
}

.pl-64 {
  padding-left: 64px !important;
}

.pl-72 {
  padding-left: 72px !important;
}

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

.pl-88 {
  padding-left: 88px !important;
}

.pl-96 {
  padding-left: 96px !important;
}

.pl-104 {
  padding-left: 104px !important;
}

.pl-112 {
  padding-left: 112px !important;
}

.pl-120 {
  padding-left: 120px !important;
}

.pl-128 {
  padding-left: 128px !important;
}

.pl-136 {
  padding-left: 136px !important;
}

.pl-144 {
  padding-left: 144px !important;
}

.pl-152 {
  padding-left: 152px !important;
}

.pl-160 {
  padding-left: 160px !important;
}

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

.pr-8 {
  padding-right: 8px !important;
}

.pr-16 {
  padding-right: 16px !important;
}

.pr-24 {
  padding-right: 24px !important;
}

.pr-32 {
  padding-right: 32px !important;
}

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

.pr-48 {
  padding-right: 48px !important;
}

.pr-56 {
  padding-right: 56px !important;
}

.pr-64 {
  padding-right: 64px !important;
}

.pr-72 {
  padding-right: 72px !important;
}

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

.pr-88 {
  padding-right: 88px !important;
}

.pr-96 {
  padding-right: 96px !important;
}

.pr-104 {
  padding-right: 104px !important;
}

.pr-112 {
  padding-right: 112px !important;
}

.pr-120 {
  padding-right: 120px !important;
}

.pr-128 {
  padding-right: 128px !important;
}

.pr-136 {
  padding-right: 136px !important;
}

.pr-144 {
  padding-right: 144px !important;
}

.pr-152 {
  padding-right: 152px !important;
}

.pr-160 {
  padding-right: 160px !important;
}

@media (min-width: 768px){
  .mt-pc-37 {
    margin-top: 37px !important;
  }
}

@media (max-width: 767px) {
  .m-sp-0 {
    margin: 0px !important;
  }
  .m-sp-8 {
    margin: 8px !important;
  }
  .m-sp-16 {
    margin: 16px !important;
  }
  .m-sp-24 {
    margin: 24px !important;
  }
  .m-sp-32 {
    margin: 32px !important;
  }
  .m-sp-40 {
    margin: 40px !important;
  }
  .m-sp-48 {
    margin: 48px !important;
  }
  .m-sp-56 {
    margin: 56px !important;
  }
  .m-sp-64 {
    margin: 64px !important;
  }
  .m-sp-72 {
    margin: 72px !important;
  }
  .m-sp-80 {
    margin: 80px !important;
  }
  .m-sp-88 {
    margin: 88px !important;
  }
  .m-sp-96 {
    margin: 96px !important;
  }
  .m-sp-104 {
    margin: 104px !important;
  }
  .m-sp-112 {
    margin: 112px !important;
  }
  .m-sp-120 {
    margin: 120px !important;
  }
  .m-sp-128 {
    margin: 128px !important;
  }
  .m-sp-136 {
    margin: 136px !important;
  }
  .m-sp-144 {
    margin: 144px !important;
  }
  .m-sp-152 {
    margin: 152px !important;
  }
  .m-sp-160 {
    margin: 160px !important;
  }
  .mt-sp-0 {
    margin-top: 0px !important;
  }
  .mt-sp-8 {
    margin-top: 8px !important;
  }
  .mt-sp-16 {
    margin-top: 16px !important;
  }
  .mt-sp-24 {
    margin-top: 24px !important;
  }
  .mt-sp-32 {
    margin-top: 32px !important;
  }
  .mt-sp-37 {
    margin-top: 37px !important;
  }
  .mt-sp-40 {
    margin-top: 40px !important;
  }
  .mt-sp-48 {
    margin-top: 48px !important;
  }
  .mt-sp-56 {
    margin-top: 56px !important;
  }
  .mt-sp-64 {
    margin-top: 64px !important;
  }
  .mt-sp-72 {
    margin-top: 72px !important;
  }
  .mt-sp-80 {
    margin-top: 80px !important;
  }
  .mt-sp-88 {
    margin-top: 88px !important;
  }
  .mt-sp-96 {
    margin-top: 96px !important;
  }
  .mt-sp-104 {
    margin-top: 104px !important;
  }
  .mt-sp-112 {
    margin-top: 112px !important;
  }
  .mt-sp-120 {
    margin-top: 120px !important;
  }
  .mt-sp-128 {
    margin-top: 128px !important;
  }
  .mt-sp-136 {
    margin-top: 136px !important;
  }
  .mt-sp-144 {
    margin-top: 144px !important;
  }
  .mt-sp-152 {
    margin-top: 152px !important;
  }
  .mt-sp-160 {
    margin-top: 160px !important;
  }
  .mb-sp-0 {
    margin-bottom: 0px !important;
  }
  .mb-sp-1 {
    margin-bottom: 1px !important;
  }
  .mb-sp-2 {
    margin-bottom: 2px !important;
  }
  .mb-sp-4 {
    margin-bottom: 4px !important;
  }
  .mb-sp-5 {
    margin-bottom: 5px !important;
  }
  .mb-sp-8 {
    margin-bottom: 8px !important;
  }
  .mb-sp-16 {
    margin-bottom: 16px !important;
  }
  .mb-sp-20 {
    margin-bottom: 20px !important;
  }
  .mb-sp-24 {
    margin-bottom: 24px !important;
  }
  .mb-sp-32 {
    margin-bottom: 32px !important;
  }
  .mb-sp-40 {
    margin-bottom: 40px !important;
  }
  .mb-sp-48 {
    margin-bottom: 48px !important;
  }
  .mb-sp-56 {
    margin-bottom: 56px !important;
  }
  .mb-sp-64 {
    margin-bottom: 64px !important;
  }
  .mb-sp-72 {
    margin-bottom: 72px !important;
  }
  .mb-sp-80 {
    margin-bottom: 80px !important;
  }
  .mb-sp-88 {
    margin-bottom: 88px !important;
  }
  .mb-sp-96 {
    margin-bottom: 96px !important;
  }
  .mb-sp-104 {
    margin-bottom: 104px !important;
  }
  .mb-sp-112 {
    margin-bottom: 112px !important;
  }
  .mb-sp-120 {
    margin-bottom: 120px !important;
  }
  .mb-sp-128 {
    margin-bottom: 128px !important;
  }
  .mb-sp-136 {
    margin-bottom: 136px !important;
  }
  .mb-sp-144 {
    margin-bottom: 144px !important;
  }
  .mb-sp-152 {
    margin-bottom: 152px !important;
  }
  .mb-sp-160 {
    margin-bottom: 160px !important;
  }
  .ml-sp-0 {
    margin-left: 0px !important;
  }
  .ml-sp-8 {
    margin-left: 8px !important;
  }
  .ml-sp-16 {
    margin-left: 16px !important;
  }
  .ml-sp-24 {
    margin-left: 24px !important;
  }
  .ml-sp-32 {
    margin-left: 32px !important;
  }
  .ml-sp-40 {
    margin-left: 40px !important;
  }
  .ml-sp-48 {
    margin-left: 48px !important;
  }
  .ml-sp-56 {
    margin-left: 56px !important;
  }
  .ml-sp-64 {
    margin-left: 64px !important;
  }
  .ml-sp-72 {
    margin-left: 72px !important;
  }
  .ml-sp-80 {
    margin-left: 80px !important;
  }
  .ml-sp-88 {
    margin-left: 88px !important;
  }
  .ml-sp-96 {
    margin-left: 96px !important;
  }
  .ml-sp-104 {
    margin-left: 104px !important;
  }
  .ml-sp-112 {
    margin-left: 112px !important;
  }
  .ml-sp-120 {
    margin-left: 120px !important;
  }
  .ml-sp-128 {
    margin-left: 128px !important;
  }
  .ml-sp-136 {
    margin-left: 136px !important;
  }
  .ml-sp-144 {
    margin-left: 144px !important;
  }
  .ml-sp-152 {
    margin-left: 152px !important;
  }
  .ml-sp-160 {
    margin-left: 160px !important;
  }
  .mr-sp-0 {
    margin-right: 0px !important;
  }
  .mr-sp-8 {
    margin-right: 8px !important;
  }
  .mr-sp-16 {
    margin-right: 16px !important;
  }
  .mr-sp-24 {
    margin-right: 24px !important;
  }
  .mr-sp-32 {
    margin-right: 32px !important;
  }
  .mr-sp-40 {
    margin-right: 40px !important;
  }
  .mr-sp-48 {
    margin-right: 48px !important;
  }
  .mr-sp-56 {
    margin-right: 56px !important;
  }
  .mr-sp-64 {
    margin-right: 64px !important;
  }
  .mr-sp-72 {
    margin-right: 72px !important;
  }
  .mr-sp-80 {
    margin-right: 80px !important;
  }
  .mr-sp-88 {
    margin-right: 88px !important;
  }
  .mr-sp-96 {
    margin-right: 96px !important;
  }
  .mr-sp-104 {
    margin-right: 104px !important;
  }
  .mr-sp-112 {
    margin-right: 112px !important;
  }
  .mr-sp-120 {
    margin-right: 120px !important;
  }
  .mr-sp-128 {
    margin-right: 128px !important;
  }
  .mr-sp-136 {
    margin-right: 136px !important;
  }
  .mr-sp-144 {
    margin-right: 144px !important;
  }
  .mr-sp-152 {
    margin-right: 152px !important;
  }
  .mr-sp-160 {
    margin-right: 160px !important;
  }
  .p-sp-0 {
    padding: 0px !important;
  }
  .p-sp-8 {
    padding: 8px !important;
  }
  .p-sp-16 {
    padding: 16px !important;
  }
  .p-sp-24 {
    padding: 24px !important;
  }
  .p-sp-32 {
    padding: 32px !important;
  }
  .p-sp-40 {
    padding: 40px !important;
  }
  .p-sp-48 {
    padding: 48px !important;
  }
  .p-sp-56 {
    padding: 56px !important;
  }
  .p-sp-64 {
    padding: 64px !important;
  }
  .p-sp-72 {
    padding: 72px !important;
  }
  .p-sp-80 {
    padding: 80px !important;
  }
  .p-sp-88 {
    padding: 88px !important;
  }
  .p-sp-96 {
    padding: 96px !important;
  }
  .p-sp-104 {
    padding: 104px !important;
  }
  .p-sp-112 {
    padding: 112px !important;
  }
  .p-sp-120 {
    padding: 120px !important;
  }
  .p-sp-128 {
    padding: 128px !important;
  }
  .p-sp-136 {
    padding: 136px !important;
  }
  .p-sp-144 {
    padding: 144px !important;
  }
  .p-sp-152 {
    padding: 152px !important;
  }
  .p-sp-160 {
    padding: 160px !important;
  }
  .pt-sp-0 {
    padding-top: 0px !important;
  }
  .pt-sp-8 {
    padding-top: 8px !important;
  }
  .pt-sp-16 {
    padding-top: 16px !important;
  }
  .pt-sp-24 {
    padding-top: 24px !important;
  }
  .pt-sp-32 {
    padding-top: 32px !important;
  }
  .pt-sp-40 {
    padding-top: 40px !important;
  }
  .pt-sp-48 {
    padding-top: 48px !important;
  }
  .pt-sp-56 {
    padding-top: 56px !important;
  }
  .pt-sp-64 {
    padding-top: 64px !important;
  }
  .pt-sp-72 {
    padding-top: 72px !important;
  }
  .pt-sp-80 {
    padding-top: 80px !important;
  }
  .pt-sp-88 {
    padding-top: 88px !important;
  }
  .pt-sp-96 {
    padding-top: 96px !important;
  }
  .pt-sp-104 {
    padding-top: 104px !important;
  }
  .pt-sp-112 {
    padding-top: 112px !important;
  }
  .pt-sp-120 {
    padding-top: 120px !important;
  }
  .pt-sp-128 {
    padding-top: 128px !important;
  }
  .pt-sp-136 {
    padding-top: 136px !important;
  }
  .pt-sp-144 {
    padding-top: 144px !important;
  }
  .pt-sp-152 {
    padding-top: 152px !important;
  }
  .pt-sp-160 {
    padding-top: 160px !important;
  }
  .pb-sp-0 {
    padding-bottom: 0px !important;
  }
  .pb-sp-8 {
    padding-bottom: 8px !important;
  }
  .pb-sp-16 {
    padding-bottom: 16px !important;
  }
  .pb-sp-24 {
    padding-bottom: 24px !important;
  }
  .pb-sp-32 {
    padding-bottom: 32px !important;
  }
  .pb-sp-40 {
    padding-bottom: 40px !important;
  }
  .pb-sp-48 {
    padding-bottom: 48px !important;
  }
  .pb-sp-56 {
    padding-bottom: 56px !important;
  }
  .pb-sp-64 {
    padding-bottom: 64px !important;
  }
  .pb-sp-72 {
    padding-bottom: 72px !important;
  }
  .pb-sp-80 {
    padding-bottom: 80px !important;
  }
  .pb-sp-88 {
    padding-bottom: 88px !important;
  }
  .pb-sp-96 {
    padding-bottom: 96px !important;
  }
  .pb-sp-104 {
    padding-bottom: 104px !important;
  }
  .pb-sp-112 {
    padding-bottom: 112px !important;
  }
  .pb-sp-120 {
    padding-bottom: 120px !important;
  }
  .pb-sp-128 {
    padding-bottom: 128px !important;
  }
  .pb-sp-136 {
    padding-bottom: 136px !important;
  }
  .pb-sp-144 {
    padding-bottom: 144px !important;
  }
  .pb-sp-152 {
    padding-bottom: 152px !important;
  }
  .pb-sp-160 {
    padding-bottom: 160px !important;
  }
  .pl-sp-0 {
    padding-left: 0px !important;
  }
  .pl-sp-8 {
    padding-left: 8px !important;
  }
  .pl-sp-16 {
    padding-left: 16px !important;
  }
  .pl-sp-24 {
    padding-left: 24px !important;
  }
  .pl-sp-32 {
    padding-left: 32px !important;
  }
  .pl-sp-40 {
    padding-left: 40px !important;
  }
  .pl-sp-48 {
    padding-left: 48px !important;
  }
  .pl-sp-56 {
    padding-left: 56px !important;
  }
  .pl-sp-64 {
    padding-left: 64px !important;
  }
  .pl-sp-72 {
    padding-left: 72px !important;
  }
  .pl-sp-80 {
    padding-left: 80px !important;
  }
  .pl-sp-88 {
    padding-left: 88px !important;
  }
  .pl-sp-96 {
    padding-left: 96px !important;
  }
  .pl-sp-104 {
    padding-left: 104px !important;
  }
  .pl-sp-112 {
    padding-left: 112px !important;
  }
  .pl-sp-120 {
    padding-left: 120px !important;
  }
  .pl-sp-128 {
    padding-left: 128px !important;
  }
  .pl-sp-136 {
    padding-left: 136px !important;
  }
  .pl-sp-144 {
    padding-left: 144px !important;
  }
  .pl-sp-152 {
    padding-left: 152px !important;
  }
  .pl-sp-160 {
    padding-left: 160px !important;
  }
  .pr-sp-0 {
    padding-right: 0px !important;
  }
  .pr-sp-8 {
    padding-right: 8px !important;
  }
  .pr-sp-16 {
    padding-right: 16px !important;
  }
  .pr-sp-24 {
    padding-right: 24px !important;
  }
  .pr-sp-32 {
    padding-right: 32px !important;
  }
  .pr-sp-40 {
    padding-right: 40px !important;
  }
  .pr-sp-48 {
    padding-right: 48px !important;
  }
  .pr-sp-56 {
    padding-right: 56px !important;
  }
  .pr-sp-64 {
    padding-right: 64px !important;
  }
  .pr-sp-72 {
    padding-right: 72px !important;
  }
  .pr-sp-80 {
    padding-right: 80px !important;
  }
  .pr-sp-88 {
    padding-right: 88px !important;
  }
  .pr-sp-96 {
    padding-right: 96px !important;
  }
  .pr-sp-104 {
    padding-right: 104px !important;
  }
  .pr-sp-112 {
    padding-right: 112px !important;
  }
  .pr-sp-120 {
    padding-right: 120px !important;
  }
  .pr-sp-128 {
    padding-right: 128px !important;
  }
  .pr-sp-136 {
    padding-right: 136px !important;
  }
  .pr-sp-144 {
    padding-right: 144px !important;
  }
  .pr-sp-152 {
    padding-right: 152px !important;
  }
  .pr-sp-160 {
    padding-right: 160px !important;
  }
}

.lt-0 {
  letter-spacing: 0px !important;
}

.lt-1 {
  letter-spacing: 1px !important;
}

.lt-2 {
  letter-spacing: 2px !important;
}

.lt-3 {
  letter-spacing: 3px !important;
}

.lt-4 {
  letter-spacing: 4px !important;
}

.lt-5 {
  letter-spacing: 5px !important;
}

.lt-6 {
  letter-spacing: 6px !important;
}

.lt-7 {
  letter-spacing: 7px !important;
}

.lt-8 {
  letter-spacing: 8px !important;
}

.lt-9 {
  letter-spacing: 9px !important;
}

.lt-10 {
  letter-spacing: 10px !important;
}

.lt-11 {
  letter-spacing: 11px !important;
}

.lt-12 {
  letter-spacing: 12px !important;
}

.lt-13 {
  letter-spacing: 13px !important;
}

.lt-14 {
  letter-spacing: 14px !important;
}

.lt-15 {
  letter-spacing: 15px !important;
}

.lt-16 {
  letter-spacing: 16px !important;
}

.lt-17 {
  letter-spacing: 17px !important;
}

.lt-18 {
  letter-spacing: 18px !important;
}

.lt-19 {
  letter-spacing: 19px !important;
}

.lt-20 {
  letter-spacing: 20px !important;
}

.text-indent-1 {
  text-indent: -1em;
  padding-left: 1em;
}

.bg-none {
  background: none !important;
  -webkit-filter: none !important;
          filter: none !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.width-400 {
  max-width: 100%;
  width: 400px;
}

@media (max-width: 767px) {
  .sp-p-0 {
    padding: 0;
  }
  .sp-m-0 {
    margin: 0;
  }
  .sp-d-block {
    display: block;
  }
}

.text-deco-none {
  text-decoration: none;
}

.text-deco-underline {
  text-decoration: underline;
}

.text-deco-through {
  text-decoration: line-through;
}

.letter-spacing-0 {
  letter-spacing: 0px;
}

.letter-spacing-05 {
  letter-spacing: 0.5px;
}

.letter-spacing-1 {
  letter-spacing: 1px;
}

.letter-spacing-2 {
  letter-spacing: 2px;
}

.wd-100per {
  width: 100%;
}

@media screen and (max-width: 767px){
  .sp-letter-spacing-0 {
    letter-spacing: 0;
  }
}


/* ----------------------------------------------------------------------
 golab-header
---------------------------------------------------------------------- */
.global-header {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  height: 50px;
  z-index: 30;
  color: #fff;
  /* menubox */
  /* sub */
}

.global-header a {
  color: #fff;
}

.global-header .hide {
  display: none !important;
}

.global-header .header-inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 16px;
  position: relative;
}

.global-header .fukidashi {
  cursor: pointer;
  margin-bottom: 5px;
}

.global-header .fukidashi:hover {
  opacity: 0.8;
}

.global-header .logo-image {
  padding-top: 16px;
  display: inline-block;
  cursor: pointer;
  vertical-align: top;
  text-decoration: none;
}

.global-header .logo-image img {
  height: 20px;
}

.global-header .logo-image img.fukidashi {
  height: 24px;
  cursor: pointer;
  margin-bottom: 5px;
}

.global-header .logo-image img.fukidashi:hover {
  opacity: 0.8;
}

.global-header .title {
    position: absolute;
    bottom: 0;
    left: 190px;
    font-size: 1em;
    margin-bottom: 2px;
}

.global-header .sub {
  position: absolute;
  top: 12px;
  right: 0;
  font-size: 1em;
}

.global-header .sub .menu {
  position: absolute;
  top: 0;
  right: 15px;
  display: block;
}

.global-header .sub .menu a {
  display: block;
  font-size: 11px !important;
  color: #fff;
  float: left;
}

.global-header .sub .menu a img {
  width: 40px;
}

.global-header .menu-account,
.global-header .menu-service {
  float: left;
  cursor: pointer;
}

.global-header .menu-account a,
.global-header .menu-service a {
  color: #333;
}

.global-header .menu-service .menu-btn {
  margin-right: 20px;
}

.global-header .menu-account .menu-btn img,
.global-header .menu-service .menu-btn img {
  width: 26px;
  height: 26px;
}

.global-header .menu-btn {
  text-align: center;
  position: relative;
}

.global-header .menu-btn.notice::before {
  top: 4px;
  right: 0;
  border: 1px solid rgba(255, 255, 255, 0.7);
}

@media (max-width: 767px) {
  .global-header .menu-btn.notice::before {
    top: 2px;
  }
}

.global-header .menu-btn span {
  font-size: 1rem;
  margin: 3px 0 0 !important;
  line-height: 1 !important;
  display: none;
}

.global-header .menubox {
  background-color: #fff;
  border: 1px solid #e9e9e9;
  width: 220px;
  clear: both;
  position: absolute;
  top: 42px;
  right: 0;
  z-index: 1;
}

.global-header .menubox ul {
  padding: 10px 0;
}

.global-header .menubox .border {
  border-bottom: 1px solid #e9e9e9;
}

.global-header .menubox .no-padding {
  padding: 0;
}

.global-header .menubox .no-padding a:link {
  padding: 10px 15px;
}

.global-header .menubox ul li a:link {
  display: block;
  padding: 6px 15px;
  background: url("/stcontents/img/common/icon-navigate-right.svg") no-repeat 96% 50%;
  background-size: 16px 16px;
  line-height: 1.5;
  font-size: 1.2rem;
  text-decoration: none;
}

.global-header .menubox ul li a:hover {
  background-color: #ffefb4;
  color: #000;
}

.global-header .menubox-service {
  display: none;
}

.global-header .menubox .name {
  font-size: 1.6rem;
}

.global-header .menubox .id {
  font-size: 1rem;
  display: block;
}

.global-header .menubox .name span {
  font-size: 1.3rem;
}

.global-header .menubox .memberStatusLabel {
  margin-top: 8px;
}

.global-header .menubox .link {
  font-size: 1rem;
  color: #666;
}

.global-header .menu-account .number-badge {
  font-size: 1.3rem;
  color: #fff;
  background: red;
  line-height: 16px !important;
  text-align: center;
  padding: 1px 3px;
  border-radius: 20%;
  -webkit-font-smoothing: auto;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.4) !important;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.7);
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.7);
}

.global-header .menu-account .menu-btn .number-badge {
  position: absolute;
  top: -6px;
  right: 18px;
}

.global-header .menu-account .menu-btn .number-badge:lang(zh-Hant) {
  position: absolute;
  top: -6px;
  right: 5px;
}

.global-header .menubox-account li {
  position: relative;
}

.global-header .menubox-account li .number-badge {
  position: absolute;
  right: 25px;
  top: 7px;
}

.global-header .menubox-account {
  display: none;
}

.global-header .menubox-account img.fukidashi,
.global-header .menubox-service img.fukidashi {
  width: 12px;
  position: absolute;
  top: -9px;
}

.global-header .menubox-service img.fukidashi {
  right: 56px;
}

.global-header .menubox-account img.fukidashi {
  right: 9px;
}

@media screen and (min-width: 767px) {
  .global-header .gray-mark {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .global-header .gray-mark {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: fixed;
    background-color: rgba(198, 198, 198, 0.7);
    display: none;
  }
  .global-header .gray-mark.active {
    display: block;
  }
}

.global-header .menu-member {
  margin-top: -13px;
}

.global-header .menu-member .icon-head-member {
  width: 40px;
  height: 40px;
  cursor: pointer;
}

.global-header .menu-member .menubox.menubox-member {
  width: 320px;
  -webkit-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.2);
}

@media screen and (min-width: 768px) {
  .global-header .menu-member .menubox.menubox-member {
    overflow: hidden;
    border-radius: 8px;
  }
}

@media screen and (max-width: 767px) {
  .global-header .menu-member .menubox.menubox-member {
    height: 100vh;
    height: 100dvh;
    padding-bottom: 40px;
    position: fixed;
    right: 0;
    top: 0;
    border: none;
    overflow: auto;
  }
}

.global-header .menu-member .menubox.menubox-member img.close {
  width: 40px;
  height: 40px;
  top: 4px;
  right: 8px;
  position: absolute;
  position: fixed;
  z-index: 2;
}

.global-header .menu-member .menubox.menubox-member ul {
  border-bottom: none;
}

.global-header .menu-member .menubox.menubox-member ul li {
  background: none;
  padding: 0;
  margin: 0;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-top: 2px solid #f5f5f5;
  min-height: 60px;
  position: relative;
}

.global-header .menu-member .menubox.menubox-member ul li a {
  padding: 16px 24px;
}

.global-header .menu-member .menubox.menubox-member ul li a:hover {
  color: #333;
}

.global-header .menu-member .menubox.menubox-member ul li.member-info {
  padding: 16px 24px;
}

.global-header .menu-member .menubox.menubox-member ul li.member-info:hover {
  color: #333;
  background-color: #fff;
}

.global-header .menu-member .menubox.menubox-member ul li:first-of-type {
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .global-header .menu-member .menubox.menubox-member ul li.member-info,
  .global-header .menu-member .menubox.menubox-member ul li a {
    padding: 16px 24px;
  }
  .global-header .menu-member .menubox.menubox-member ul li.member-info {
    padding-top: 24px;
    border-top: none;
  }
}

.global-header .menu-member .menubox.menubox-member ul li:last-of-type {
  padding-bottom: 8px;
  border-bottom: none;
}

.global-header .menu-member .menubox.menubox-member ul li:first-of-type {
  padding-top: 56px;
  height: auto;
  pointer-events: auto;
}

@media screen and (min-width: 768px) {
  .global-header .menu-member .menubox.menubox-member ul li:first-of-type {
    display: none;
  }
}

.global-header .menu-member .menubox.menubox-member ul li a:link {
  background: none;
  font-size: 1.6rem;
}

.global-header .menu-member .menubox.menubox-member ul li:hover {
  background-color: #F5F5F5;
}

.global-header .menu-member .menubox.menubox-member ul li .title {
  margin-bottom: 24px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  line-height: 1.5;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.global-header .menu-member .menubox.menubox-member ul li .title .memberStatusLabel {
  margin-top: 0;
  margin-right: 8px;
  height: 2.4rem;
}

.global-header .menu-member .menubox.menubox-member ul li .contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.global-header .menu-member .menubox.menubox-member ul li .contents .content1 {
  margin-right: 8px;
}

.global-header .menu-member .menubox.menubox-member ul li .contents .content1, .global-header .menu-member .menubox.menubox-member ul li .contents .content2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.global-header .menu-member .menubox.menubox-member ul li .contents .content1 p, .global-header .menu-member .menubox.menubox-member ul li .contents .content2 p {
  position: relative;
  margin: 0;
}

.global-header .menu-member .menubox.menubox-member ul li .contents .content1 p:first-child, .global-header .menu-member .menubox.menubox-member ul li .contents .content2 p:first-child {
  border-right: 1px solid #c6c6c6;
  padding-right: 4px;
}

.global-header .menu-member .menubox.menubox-member ul li .contents .content1 p:nth-of-type(2), .global-header .menu-member .menubox.menubox-member ul li .contents .content2 p:nth-of-type(2) {
  color: #757575;
  font-size: 1.2rem;
  font-weight: 900;
  padding-left: 4px;
}

@media screen and (max-width: 768px) {
  .global-header .menu-member .menubox.menubox-member ul li .contents .content1 p:nth-of-type(2), .global-header .menu-member .menubox.menubox-member ul li .contents .content2 p:nth-of-type(2) {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 768px) {
  .global-header .menu-member .menubox.menubox-member ul li .contents .content1 p, .global-header .menu-member .menubox.menubox-member ul li .contents .content2 p {
    line-height: 1.8rem;
  }
}

.global-header .menu-member .menubox.menubox-member ul .banner-smartpass {
  border-top: 4px solid #f5f5f5;
}

.global-header .menu-member .menubox.menubox-member ul .banner-smartpass img {
  width: 100%;
}

.global-header .menu-member .menubox.menubox-member ul .mypage,
.global-header .menu-member .menubox.menubox-member ul .setting {
  border-top: 4px solid #f5f5f5;
}

.global-header .sub a:link {
  text-decoration: none;
}

.global-header.static .sub a:link {
  text-shadow: none;
}

.global-header .before-menu {
  display: block;
  overflow: hidden;
  padding: 4px 0;
  padding-top: 3px;
}

.global-header .before-menu > li {
  display: inline;
  float: left;
  margin-left: 24px;
  line-height: 24px;
  font-size: 1.2rem;
}

.global-header .before-menu > li:first-child {
  margin-left: 0;
}

.global-header .before-menu .concept,
.global-header .before-menu .service {
  display: none;
}

.global-header .before-menu > li a:link {
  text-shadow: 1px 1px 1px #000;
}

.global-header .before-menu > li a:hover {
  text-shadow: none;
  color: #554B98;
}

.global-header .menu-member .menubox .title {
  color: #333;
}

.global-header .menu-member .menubox ul li a {
  text-shadow: none;
  color: #333;
}

.global-header.static .before-menu > li a {
  text-shadow: none;
}

.global-header.static .before-menu > li a:hover {
  color: #554B98;
}

@media screen and (max-width: 767px) {
  .global-header.menu-open {
    z-index: 41;
  }
  .global-header .logo-image img {
    height: 16px;
  }
  .global-header .menu-member {
    margin-top: -2px;
  }
  .global-header .menu-member .menubox.menubox-member ul .coupon {
    border-top: 2px solid #f5f5f5;
  }
  .global-header .menu-member .icon-head-member {
    width: 28px;
    height: 28px;
  }
  .global-header .logo {
    display: inline-block;
  }
  .global-header .btn-menu img {
    width: 28px;
    position: absolute;
    top: 10px;
    right: 16px;
    z-index: 1;
  }
  .global-header .before-menu {
    margin-right: 68px;
    padding: 0;
  }
  .global-header .sub-menu {
    background: #fff;
    width: 320px;
    height: 100%;
    position: fixed;
    top: 0;
    right: -100%;
    left: auto;
    z-index: 1;
  }
  .global-header .sub-menu.on {
    right: 0;
  }
  .global-header .sub-menu.on .before-menu {
    margin-right: 0;
  }
  .global-header .sub-menu .btn-menu-close {
    position: absolute;
    top: 4px;
    right: 8px;
  }
  .global-header .sub-menu .btn-menu-close img {
    width: 40px;
    height: 40px;
    top: 0;
    right: 0;
    position: absolute;
  }
  .global-header .sub-menu .before-menu {
    padding-top: 56px;
  }
  .global-header .sub-menu .before-menu > li {
    display: block;
    float: none;
    margin-left: 0;
    border-bottom: 2px solid #f5f5f5;
    line-height: normal;
    font-size: 1.6rem;
  }
  .global-header .sub-menu .before-menu > li:first-child {
    border-top: 2px solid #f5f5f5;
  }
  .global-header .sub-menu .before-menu > li a {
    display: block;
    padding: 20px 56px 20px 24px;
    text-shadow: none !important;
    color: #333;
  }
  .login-header .before-menu {
    margin-right: 16px;
  }
}

@media screen and (max-width: 360px) {
  .global-header .before-menu > li {
    margin-left: 16px;
    font-size: 1.1rem;
  }
}

.global-header.static {
  background: none;
  position: relative;
  border-bottom: 2px solid #F5F5F5;
  color: #000;
}

.global-header.static a {
  color: #000;
}

.global-header.static .before-menu li a:hover {
  border-color: #333;
}

@media (min-width: 768px) {
  .global-header {
    height: 60px;
  }
  .global-header .header-inner {
    margin: 0 auto;
  }
  .global-header .logo-image img {
    height: 26px;
  }
  .global-header .menu a img {
    display: none;
  }
  .global-header h1 {
    padding-top: 17px;
    margin-left: 0;
  }
  .global-header h1 img.logo,
  .global-header img.logo {
    height: 27px;
  }
  .global-header .logo-image {
    padding-top: 16px;
  }
  .global-header .before-menu {
    padding: 10px 0 11px;
    margin-top: 14px;
  }
  .global-header .before-menu > li {
    font-size: 1.4rem;
    line-height: 14px;
    margin-left: 32px;
    vertical-align: middle;
  }
  .global-header .before-menu .concept,
  .global-header .before-menu .service {
    display: inline;
  }

  .global-header .sub {
    position: absolute;
    top: 0;
    right: 16px;
  }
  .global-header .menubox {
    position: absolute;
    top: 69px;
  }
  .global-header .menu-btn span {
    display: block;
  }
  .global-header .menubox-service img.fukidashi {
    right: 103px;
  }
  .global-header .menubox-account img.fukidashi {
    right: 23px;
  }
  .global-header .menu-account,
  .global-header .menu-service {
    display: block;
    margin-top: -9px;
    margin-right: 20px;
  }
  .global-header .menu-service {
    width: 60px;
  }
  .global-header .menu-account {
    width: 34px;
  }
  .global-header .menu-account .menu-btn img,
  .global-header .menu-service .menu-btn img {
    width: 34px;
    height: 34px;
  }
}

@media screen and (min-width: 1280px) {
  .global-header .menubox {
    right: 0;
  }
  .global-header .menu-account,
  .global-header .menu-service {
    margin-right: 0;
  }
  .global-header .header-inner {
    padding: 0;
  }
  .global-header .title {
    font-size: 1.4em;
    left: 150px;
    padding-top: 10px;
    margin-top: 8px;
    margin-left: 2em;
    margin-bottom: 2px;
  }
  .global-header .sub {
    font-size: 1.4em;
    right: 0;
  }
}

/*
  main
*/
.bread-crumbs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 72px 0 8px;
  font-size: 1.0rem;
  color: #757575;
  overflow: hidden;
}

.bread-crumbs li {
  /*float: left;*/
}

.bread-crumbs li:last-child {
  position: relative;
  bottom: 0.5px;
}

.bread-crumbs a {
  color: #0f0a64;
}

.bread-crumbs a:after {
  content: url(/stcontents/img/common/icon-arrow-breadcrumbs.svg);
  display: inline-block;
  vertical-align: middle;
  margin: 0 8px;
}

.bread-crumbs a:hover {
  text-decoration: underline;
  color: #554B98;
}

.bread-crumbs h1 {
  font-size: 1.4rem;
  font-weight: normal;
  display: inline;
}

.title-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  color: #333;
}

.title-box h1 {
  text-align: left;
}

.title-box .count {
  margin-bottom: 4px;
  font-weight: 100;
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .title-box .count {
    font-size: 2rem;
  }
}

/*
  modal-layout
*/
.modal-overlay {
  background: rgba(198, 198, 198, 0.7);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 51;
}

.global-header.modal-on,
main.modal-on,
.logo-image.modal-on {
  -webkit-filter: blur(4px);
          filter: blur(4px);
}

.global-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 52;
}

.global-modal.register {
  background: #fff;
}

.global-modal.au-connect {
  overflow-y: auto;
}

.modal-small {
  background: #fff;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 52;
}

.common-modal {
  width: 90%;
  max-width: 767px;
  height: 100%;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 52;
}

.common-modal .modal-container {
  width: 100%;
  height: 90%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 45px auto;
  padding: 40px 40px;
  border-radius: 8px;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.common-modal .modal-container.scroll-on {
  padding-right: 24px;
}

.common-modal .modal-container.scroll-on .content-body {
  overflow-y: auto;
  padding-right: 16px;
}

.common-modal .modal-container.scroll-on .content-body::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.common-modal .modal-container.scroll-on .content-body::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.common-modal .modal-container.scroll-on .content-body::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.common-modal .modal-container .content-body {
  margin-top: 8px;
  height: 93%;
  overflow: hidden;
  padding: 0;
}

.common-modal .modal-container .content-scroll {
  height: 100%;
  overflow-y: auto;
  padding: 0 20px 0 0;
}

.common-modal .modal-container .content-scroll::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.common-modal .modal-container .content-scroll::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.common-modal .modal-container .content-scroll::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.common-modal .modal-title-blue {
  background: #0F0A64;
  padding: 40px 40px;
  color: #fff;
}

.common-modal .note-wrap {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #C6C6C6;
}

.common-modal .modal-close-footer.js-modal-close {
  background: none;
  width: auto;
  height: auto;
  position: relative;
  top: 0;
  right: 0;
  margin-top: 24px;
}

.common-modal .modal-close-footer.js-modal-close span, .common-modal .modal-close-footer.js-modal-close a {
  width: 100%;
}

.common-title-modal .modal-container {
  padding: 0;
}

.common-title-modal .modal-container.scroll-on {
  padding: 0 0 36px;
}

.common-title-modal .modal-container .content-body {
  height: calc(100% - 126px);
  margin-top: 0;
  padding: 24px 40px 36px;
}

.common-title-modal .modal-container.scroll-on .content-body {
  margin-right: 24px;
  padding-right: 16px;
}

.common-btn-modal .modal-container {
  padding-right: 24px;
}

.common-btn-modal .modal-container .content-scroll {
  height: calc(100% - 96px);
  margin-bottom: 16px;
}

@media (min-width: 768px) {
  .modal-small {
    background: transparent;
  }
  .global-modal.register {
    background: transparent;
  }
}

.modal-container {
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
  position: relative;
  background: #fff;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}

@media (max-width: 767px) {
  .modal-small .modal-container,
  .common-modal .modal-container {
    position: fixed;
    height: 100%;
    width: 100%;
    overflow: auto;
    border-radius: 0;
    margin: 0;
    /*top: 0;
    left: 0;*/
  }
  .common-modal {
    width: 100%;
  }
  .common-modal .modal-container {
    max-height: 100%;
    padding: 50px 16px 64px;
  }
  .common-modal .modal-container.scroll-on .content-body {
    padding: 20px 8px 20px 16px;
    margin-right: 8px;
  }
  .common-modal .modal-title-blue {
    padding: 40px 16px 24px;
  }
  .common-title-modal .modal-container {
    padding: 0;
  }
  .common-title-modal .modal-container.scroll-on {
    padding: 0 0 36px;
  }
  .common-title-modal .js-modal-close {
    background-image: url(/stcontents/img/common/icon-close-2-white.svg);
    width: 30px;
    height: 30px;
  }
}

.modal-container .contents {
  padding: 30px 80px 40px;
}

.modal-container .refine-contents {
  padding: 10px;
}

.modal-container .header {
  border-bottom: 1px solid #dedede;
  padding-top: 10px;
}

.modal-container .header p {
  font-size: 1.6rem;
  text-align: center;
  margin: 10px 0;
}

.modal-container .header img.close {
  position: absolute;
  top: 10px;
  right: 13px;
  cursor: pointer;
}

.modal_refine .header {
  padding: 10px 0;
}

.modal_refine .header img.close {
  position: absolute;
  top: 14px !important;
  right: 13px;
  cursor: pointer;
}

.modal-container .center-contents {
  margin: 0 auto;
  width: 249px;
  padding-top: 25px;
  display: block;
}

.modal-container .center-contents-connect {
  margin: 0 auto;
  width: 270px;
  padding-top: 25px;
  display: block;
}

.modal-container .center-contents-connect-eng {
  width: 100%;
}

.modal-container .contents .signup-welcome {
  display: none;
}

.modal-container .contents .sns-btn-area {
  margin-bottom: 24px;
}

.modal-container .contents .sns-btn-area a.btn {
  display: block;
  margin-bottom: 12px;
}

.modal-container .contents .mail-area {
  margin-bottom: 16px;
}

.modal-container .contents .mail-area input[type="text"] {
  padding: 6px 5%;
  width: 90%;
  font-size: 1.2rem;
  border: 1px solid #ccc;
  display: inline-block;
  line-height: 25px;
  height: 25px;
  margin-bottom: 8px;
  -webkit-appearance: none;
  border-radius: 2px;
  -webkit-box-sizing: initial;
          box-sizing: initial;
}

.modal-container .contents .reservationMailBox {
  margin-bottom: 10px;
  display: table;
  width: 100%;
}

.modal-container .contents .reservationMailBox input[type="text"] {
  height: 35px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: none;
  padding: 0 2%;
  border-radius: 2px;
  -webkit-appearance: none;
  display: table-cell;
  width: 100%;
}

.modal-container .contents .reservationMailBox input[type="text"]:focus {
  outline: none;
}

.modal-container .contents .reservationMailBox a.btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  -webkit-appearance: none;
  display: table-cell;
  padding: 9px 0;
}

.modal-container .contents .signup-special {
  display: none;
}

.modal-container .contents .small-mail-area {
  display: inline-block;
  margin-left: 32px;
  vertical-align: top;
  width: 300px;
}

.modal-container .contents .mail-area .title {
  text-align: center;
  font-size: 1.1rem;
  margin-bottom: 5px;
  margin-top: 15px;
}

.modal-container .contents .small-mail-area label {
  display: block;
  font-size: 1.1rem;
  margin-bottom: 3px;
}

.modal-container .contents .small-mail-area input {
  width: 90%;
  -webkit-appearance: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  padding: 6px 5%;
  -webkit-box-sizing: initial;
          box-sizing: initial;
  margin-bottom: 10px;
  line-height: 25px;
  height: 25px;
}

.modal-container .contents .small-mail-area .recover {
  font-size: 1.1rem;
  margin-top: 15px;
  text-align: center;
}

.loginBtn-fix {
  margin-top: 12px;
}

.loginBtn-fix-sp {
  margin-top: 16px;
}

.login_error {
  font-size: 1.1rem;
  color: #ff0000;
}

.login_error-sp {
  font-size: 1.1rem;
  color: #ff0000;
}

.modal-forgetPassword {
  font-size: 1.4rem;
  text-align: center;
  margin-top: 16px;
  margin-bottom: 0;
}

.modal-forgetPassword a,
.modal-forgetPassword-sp a {
  color: #757575;
  text-align: center;
  font-size: 1.4rem;
  text-decoration: underline;
}

.modal-forgetPassword a:hover,
.modal-forgetPassword-sp a:hover {
  color: #000;
}

.modal-forgetPassword-sp {
  font-size: 1.1rem;
  text-align: right;
  margin: 16px 0 24px;
}

.modal-small .modal-container .contents .sns-btn-area {
  display: inline-block;
  vertical-align: top;
}

.modal-split {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 1.2rem;
  color: #757575;
  text-align: center;
  margin-bottom: 16px;
}

.modal-split::after,
.modal-split::before {
  margin-top: 7px;
  content: "";
  width: 40%;
  height: 1px;
  background-color: #cccccc;
  display: block;
}

.modal-split::after {
  margin-left: 8px;
}

.modal-split::before {
  margin-right: 8px;
}

.modal-split-pc {
  display: none;
}

.modal-title {
  margin-bottom: 24px;
  text-align: center;
  font-weight: 600;
  font-size: 2.4rem;
  padding-top: 2px;
}

@media screen and (max-width: 767px){
  .modal-title.font-sp-heavy {
    font-weight: 900;
  }
}

.btn-modal {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 308px;
  height: 48px;
  line-height: 48px;
  text-align: center;
  border-radius: 4px;
  vertical-align: middle;
  font-size: 1.4rem;
  padding: 0 4px;
  cursor: pointer;
}

.btn-modal .title {
  margin-bottom: 16px;
  text-align: center;
}

.btn-modal-sp {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 44px;
  text-align: center;
  border-radius: 4px;
  vertical-align: middle;
  line-height: 44px !important;
  font-size: 1.4rem;
  margin-bottom: 16px;
}

.btn-modal-login-sp {
  line-height: 40px;
}

.js-modal-close {
  background: url(/stcontents/img/common/icon-close-2.svg) no-repeat 0 0;
  background-size: contain;
  width: 48px;
  height: 48px;
  position: fixed;
  top: 32px;
  right: 32px;
  display: block;
  cursor: pointer;
}

.modal-loginsignin {
  height: 100%;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.modal-loginsignin::-webkit-scrollbar {
  display: none;
}

.modal-loginsignin .text-link {
  display: block;
  margin: 16px 0;
  text-align: right;
}

.modal-loginsignin .text-link a {
  font-size: 1.4rem;
  color: #0f0a64;
}

.modal-loginsignin .text-link:after {
  width: 8px;
}

.modal-loginsignin .text-link:hover {
  color: #554B98;
}

.register .wrap-loginsignin {
  padding: 0;
}

.modal-logInWithMailArea {
  width: 100%;
  margin-bottom: 0;
}

.modal-logInWithMailArea-sp {
  width: 100%;
  margin-top: 8px;
}

.modal-loginInput {
  position: relative;
  margin-bottom: 16px;
}

.modal-loginInput.error {
  margin-bottom: 4px;
}

.modal-loginInput.error .loginInput {
  border-color: #ce0000;
}

.modal-loginInput.error + .error-text {
  display: block;
  font-size: 12px;
  margin-bottom: 16px;
  color: #ce0000;
}

.modal-loginInput.password > input[type=password] {
  padding-right: 41px;
}

.modal-loginInput .icon-eye {
  position: absolute;
  right: 9px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 32px;
  height: 32px;
  background-size: 20px;
  background-position: center;
  right: 0;
}

.modal-loginInput-sp {
  position: relative;
}

.loginError-logInWithMailArea-sp input[type=password],
.loginError-logInWithMailArea-sp input[type=text] {
  background: #FFF !important;
}

.modal-loginInput input[type=password],
.modal-loginInput input[type=text],
.modal-loginInput-sp input[type=password],
.modal-loginInput-sp input[type=text] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.4rem;
  color: #333333;
  padding: 0 12px 0 48px;
}

.loginInput-sp::-webkit-input-placeholder,
.loginInput::-webkit-input-placeholder {
  font-size: 1.4rem;
  color: #C6C6C6;
}

.loginInput-sp:-ms-input-placeholder,
.loginInput:-ms-input-placeholder {
  font-size: 1.4rem;
  color: #C6C6C6;
}

.loginInput-sp::-ms-input-placeholder,
.loginInput::-ms-input-placeholder {
  font-size: 1.4rem;
  color: #C6C6C6;
}

.loginInput-sp::placeholder,
.loginInput::placeholder {
  font-size: 1.4rem;
  color: #C6C6C6;
}

.modal-loginInput input,
.modal-loginInput-sp input {
  font-size: 1.4rem;
  color: #cccccc;
  width: 100% !important;
  border: 1px solid #cccccc;
  border-radius: 4px;
}

.global-modal input,
.loginError-logInWithElseArea-sp input,
.loginError-logInWithMailArea-sp input,
.loginError-resetPassword-sp input,
.modal-small input {
  -webkit-appearance: none;
}

.loginInput {
  height: 48px;
  width: 308px;
}

.loginInput-sp {
  height: 48px;
}

.modal-logInWithMailArea input,
.modal-logInWithMailArea-sp input {
  border-radius: 4px;
}

.wrap-loginsignin .title {
  font-size: 1.6rem;
  margin-bottom: 16px;
  text-align: center;
  font-weight: bold;
  color: #000;
}

.sns-login {
  margin: 0 auto;
  display: block;
  width: 100%;
}

.sns-login > div a {
  width: 100%;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ccc;
  border-radius: 4px;
  background-color: #fff;
  position: relative;
  color: #333;
  font-weight: bold;
  font-size: 1.4rem !important;
}

.sns-login > div a:hover {
  opacity: 0.7;
}

.sns-login > div a img {
  position: absolute;
  left: 16px;
}

.register .sns-login > div a img {
  height: 24px;
}

.InputIconPosition,
.IconPosition {
  position: absolute;
  width: 24px;
  height: 24px;
  left: 12px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.InputEyePosition {
  position: absolute;
  width: 24px;
  height: 24px;
  right: 12px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.modal-logInWithMailArea,
.modal-logInWithElseArea {
  width: 100%;
}

/* facebook対応 */
.icon-modal-close {
  background: url(/stcontents/img/common/icon-close-2.svg) no-repeat 0 0;
  background-size: contain;
  width: 40px;
  height: 40px;
  position: absolute;
  top: -48px;
  right: -48px;
  display: block;
  cursor: pointer;
}
.modal-small.facebook-modal {
  height: 690px;
}
.modal-small.facebook-modal-wrap {
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.modal-small.facebook-modal-wrap .contents {
  cursor: default;
}
.modal-small.facebook-modal-wrap .contents a {
  pointer-events: auto;
}
.facebook-modal-wrap .modal-container {
  width: 800px;
  height: 676px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
    box-shadow: none;
}
.facebook-modal .modal-container {
  overflow: visible;
}
.facebook-modal .wrap-loginsignin,
.facebook-modal .js-modal-close {
  display: none !important;
}


@media (max-width: 1280px) {
  .js-modal-close {
    width: 40px;
    height: 40px;
    top: 16px;
    right: 14px;
    z-index: 53;
  }
}

@media (max-width: 767px) {
  .modal-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: #fff;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
    z-index: 10;
  }
  .modal-header-ttl {
    display: flex;
    justify-content: center;
    height: 100%;
    font-weight: bold;
    margin-bottom: 0;
  }
  .modal-header-ttl span,
  .common-modal-title span {
    display: flex;
    align-items: center;
  }
  .js-modal-close {
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    position: fixed;
    top: 10px;
    width: 30px;
    height: 30px;
  }
  .js-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-3.svg);
    width: 40px;
    height: 40px;
    top: 8px;
    right: 12px;
  }
  .modal-header .js-modal-close,
  .modal-header .js-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    position: fixed;
    top: 6px;
    right: 14px;
    width: 30px;
    height: 30px;
  }
  .wrap-loginsignin,
  .register .wrap-loginsignin {
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: unset;
    -webkit-justify-content: unset;
        -ms-flex-pack: unset;
            justify-content: unset;
    margin: 0 auto;
    width: 100%;
  }
  .modal-logInWithElseArea,
  .register .modal-logInWithElseArea {
    margin: 28px auto 0;
  }
  .sns-login,
  .register .sns-login {
    width: auto;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .sns-login > div:last-child,
  .register .sns-login > div:last-child {
    margin-right: 0;
  }
  .wrap-loginsignin .title {
    margin-bottom: 24px;
  }
  .modal-logInWithMailArea {
    width: 100%;
    margin: 0 auto;
  }
  .modal-split-pc {
    width: 308px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 1.2rem;
    color: #757575;
    text-align: center;
    margin: 16px auto;
  }
  .modal-split-signin-pc {
    margin: 24px auto 16px;
  }
  .modal-split-pc::after,
  .modal-split-pc::before {
    margin-top: 7px;
    content: "";
    width: 40%;
    height: 1px;
    background-color: #cccccc;
  }
  .modal-split-pc::after {
    margin-left: 8px;
  }
  .modal-split-pc::before {
    margin-right: 8px;
  }
  .modal-loginsignin .smapreBoost__banner {
    margin-top: 0 !important;
  }
  .auid-info p {
    font-weight: 900;
  }
  .modal-loginInput input[type=password],
  .modal-loginInput input[type=text],
  .modal-loginInput-sp input[type=password],
  .modal-loginInput-sp input[type=text] {
    padding-left: 32px;
  }
  .InputIconPosition,
  .IconPosition {
    width: 16px;
    height: 16px;
    left: 8px;
  }
  .InputEyePosition {
    width: 16px;
    height: 16px;
    right: 8px;
  }
  .area-partition {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .area-partition:before,
  .area-partition:after {
    border-top: 1px solid #C6C6C6;
    content: "";
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    color: #757575;
  }
  .area-partition:before {
    margin-right: 8px;
  }
  .area-partition:after {
    margin-left: 8px;
  }
  .facebook-modal-wrap .modal-container {
    width: 100%;
    height: 100%;
  }
  .modal-small.facebook-modal-wrap .contents {
    cursor: default;
    overflow-y: auto;
    height: 100%;
    padding-bottom: 20px;
  }
  .icon-modal-close {
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    position: fixed;
    width: 30px;
    height: 30px;
    top: 16px;
    right: 10px;
  }
  .icon-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-3.svg);
    width: 35px;
    height: 35px;
    top: 12px;
    right: 7px;
  }
}

.modal-container .contents ul > li {
  margin-bottom: 4px;
  font-size: 1.2rem;
}

.modal-container .refine-contents ul > li {
  margin: 0 2px 8px 0;
  font-size: 1.2rem;
}

.modal-container .refine-contents .area ul > li {
  margin: 0 8px 8px 0;
  font-size: 1.2rem;
}

.modal-small .modal-container .contents .smapreBoost__banner {
  margin: 0 auto;
}

.modal-small .modal-container .contents .smapreBoost__banner img {
  width: 100%;
}

@media (max-width: 500px) {
  .modal-container .contents {
    padding: 48px 24px 48px;
  }
  .common-modal .modal-container {
    padding: 50px 16px 64px;
  }
  .common-modal .modal-container .common-modal-title {
    display: flex;
    justify-content: center;
    height: 100%;
    font-size: 1.4rem;
    margin-bottom: 12px;
  }
  .common-modal .modal-container .content-body {
    height: auto;
  }
  .common-modal .modal-container.scroll-on {
    padding-right: 0;
  }
  .common-modal .modal-container.scroll-on .content-body {
    padding-right: 16px;
  }
  .common-modal .modal-container .content-scroll {
    height: calc(100% - 200px);
    padding: 0 8px 0 0;
  }
  .modal-small .modal-container .contents .sns-btn-area {
    display: block;
    width: 100%;
  }
  .modal-container .contents .small-mail-area {
    display: block;
    margin-left: 0;
    width: 100%;
  }
  .modal-small .modal-container .contents .smapreBoost__banner {
    height: auto;
    width: 100%;
  }
}

@media (max-width: 360px) {
  .modal-container .contents {
    padding: 24px 4px 48px;
  }
}

.sns-btn-area-sp {
  margin-bottom: 56px;
}

.refine-contents {
  overflow: scroll;
  height: 100vh;
}

.refine-contents .height_block {
  height: 150px;
}

.refine-contents ul li {
  display: inline-block;
  border: 1px solid #d6d6d6;
  padding: 8px;
  border-radius: 5px;
  vertical-align: middle;
}

.refine-contents .grade ul .museum {
  padding: 8px 8px 10px;
}

.refine-contents .grade ul .casual {
  padding: 7px 8px 10px;
}

.refine-contents ul li img.museum {
  width: 64px;
}

.refine-contents ul li img.star {
  width: 15px;
}

.refine-contents input {
  border: 1px solid #d6d6d6;
}

.refine-contents select {
  border: 1px solid #d6d6d6;
  background: #fff;
  height: 36px;
}

.refine-contents .price {
  padding: 0 10px;
}

.refine-contents h2,
.refine-contents p {
  margin-bottom: 9px;
  font-weight: bold;
}

.refine-contents .con {
  margin-bottom: 30px;
}

.refine-btn {
  position: fixed;
  bottom: 0;
  background: #fff;
  -webkit-box-shadow: 0 2px 9px 0 rgba(141, 137, 137, 0.5);
          box-shadow: 0 2px 9px 0 rgba(141, 137, 137, 0.5);
  width: 100%;
}

.refine-btn ul li {
  display: inline-block;
  background-color: #fff;
  color: #fff;
  width: 28%;
  height: 44px;
  text-align: center;
  line-height: 44px;
  color: #0f0a64;
  margin: 10px 0 10px 10px;
  border: solid 1px #0f0a64;
  border-radius: 2px;
}

.refine-btn ul li:first-child {
  background: #0f0a64;
  color: #fff;
  width: 60%;
  height: 44px;
  text-align: center;
  line-height: 44px;
  margin: 10px 0 10px 10px;
}

#color-list .js_active {
  background-color: #0f0a64;
  border: 1px solid #0f0a64;
  color: #fff;
}

#color-list .js_disabled {
  background-color: #FFF;
  border: 1px solid #F5F5F5;
  color: #CCC;
}

@media (min-width: 768px) {
  .global-modal {
    width: 600px;
    height: 560px;
  }
  .modal-small {
    width: 720px;
    height: 560px;
  }
  .loginsignin-modal {
    width: 800px;
    height: 690px;
  }
  .loginsignin-modal .btn-modal {
    line-height: 48px;
    padding: 0 4px;
    font-size: 1.6rem;
  }
  .loginsignin-modal .modal-logInWithMailArea .btn-modal {
    height: 48px;
  }
  .loginsignin-modal .modal-container .contents {
    padding: 40px 56px;
  }
  .register.loginsignin-modal {
    height: 676px;
  }
  .modal-container .contents .signup-welcome {
    display: block;
    text-align: center;
  }
  .modal-container .contents .signup-welcome .title {
    font-size: 1.7rem;
    margin-bottom: 16px;
  }
  .modal-container .contents .signup-welcome .txt {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-bottom: 32px;
    color: #757575;
  }
  .modal-container .contents .wrap {
    margin-bottom: 20px;
    display: table;
    width: 540px;
  }
  .modal-container .contents .wrap .sns-btn-area {
    margin-bottom: 20px;
    text-align: center;
    display: table-cell;
    width: 250px;
    border-right: 1px solid #ccc;
    padding-right: 20px;
    vertical-align: top;
  }
  .modal-container .contents .wrap .mail-area {
    margin-bottom: 20px;
    display: table-cell;
    width: 250px;
    padding-left: 20px;
    vertical-align: top;
  }
  .modal-container .contents .mail-area .title {
    text-align: center;
    font-size: 1.3rem;
    padding: 12px 0;
    margin: 0 0 5px;
  }
  .modal-container .contents .signup-special {
    margin: 24px 0;
    display: block;
  }
  .modal-container .contents .signup-special .title {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
  .modal-container .contents .signup-special .note {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
  .wrap-loginsignin {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row;
        -ms-flex-flow: row;
            flex-flow: row;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .modal-logInWithElseArea {
    position: relative;
    padding-left: 24px;
    margin-left: 24px;
    border-top: none;
  }
  .modal-logInWithElseArea:after {
    border-left: 1px solid #C6C6C6;
    width: 1px;
    height: 240px;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
  }
  .area-partition {
    display: none;
  }
}

.attention {
  font-size: 1.2rem;
  color: #757575;
}

.attention a {
  text-decoration: underline;
  color: #757575;
}

.modal-loginsignin .attention {
  margin-top: 32px;
  text-align: center;
}

.auid-info p, .auid-info ul > li {
  margin-bottom: 0 !important;
}

@media (max-width: 500px) {
  .loginsignin-modal .modal-container .contents {
    padding: 10px 16px 16px 16px;
  }
  .loginsignin-modal .modal-title {
    font-size: 1.4rem;
  }
}

/* ----------------------------------------------------------------------
  modal-resend-email
---------------------------------------------------------------------- */
.global-modal.modal-resend-email {
  background-color: #fff;
}

.modal-resend-email button,
.modal-resend-email input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background-color: transparent;
}

.modal-resend-email__form {
  margin-bottom: 8px;
}

input.modal-resend-email__text {
  height: 40px;
  width: 100%;
  padding: 0 10px;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.modal-resend-email button.btn {
  display: block;
  text-align: center;
  font-size: 1.4rem;
}

.modal-resend-email button.btn-inline {
  height: 38px;
  border: 1px solid #0f0a64;
}

.modal-resend-email button.btn-relux {
  height: 44px;
  background-color: #0f0a64;
}

.modal-resend-email__footer {
  padding: 16px;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: 1px solid #dedede;
}

@media (min-width: 768px) {
  .global-modal.modal-resend-email {
    background-color: transparent;
    width: 360px;
  }
  .modal-resend-email__footer {
    padding: 0;
    margin-top: 32px;
    position: static;
    border-top: none;
  }
}

/* ----------------------------------------------------------------------
  .modal-float
---------------------------------------------------------------------- */
.global-modal.modal-float {
  width: 100%;
  height: 100%;
  background-position: 0 0;
  background-repeat: repeat;
  background-image: url("/stcontents/img/common/popup_bg_b.png");
}

.global-modal.modal-float .modal-container {
  width: calc(100% - 48px);
  max-width: 360px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), 0 1px 5px rgba(0, 0, 0, 0.2), 0 0 0 10px rgba(200, 200, 200, 0.4);
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), 0 1px 5px rgba(0, 0, 0, 0.2), 0 0 0 10px rgba(200, 200, 200, 0.4);
}

.global-modal.modal-float .modal-container .header {
  background-color: #f0f0f0;
}

.modal-float-button {
  margin-top: 24px;
}

.modal-float-button__item + .modal-float-button__item {
  margin-top: 8px;
}

.modal-float-button__item .btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 38px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.modal-float-button__item a.btn-inline {
  color: #0f0a64;
}

/* modal__text */
.modal__text,
.modal__text--center {
  font-size: 1.6rem;
  color: #333;
}

.modal__text__marginbottom {
  margin-bottom: 24px;
}

.modal__text--center {
  text-align: center;
}

.modal__annotation {
  margin-top: 24px;
  font-size: 1.1rem;
  letter-spacing: 1.2px;
  color: #333;
}

/* ----------------------------------------------------------------------

  modal-share-reservation

---------------------------------------------------------------------- */
.modal-share-reservation .contents {
  height: 100vh;
}

.modal-share-reservation-shareicon {
  text-align: center;
}

.modal-share-reservation-shareicon img {
  width: 104px;
  height: auto;
  margin-top: 20px;
  margin-bottom: 40px;
}

.modal-share-reservation-text {
  font-size: 1.4rem;
  font-weight: bold;
  color: #0F0A64;
  margin-bottom: 24px;
  line-height: 24px;
}

.modal-share-reservation-snstext {
  font-size: 1.3rem;
  font-weight: bold;
  color: #0F0A64;
}

.modal-share-reservation-attention {
  font-size: 1.2rem;
  line-height: 20px;
}

.modal-share-reservation-sharesns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 32px;
}

.modal-share-reservation-snsicon img {
  width: 56px;
  height: 56px;
  border-radius: 28px;
  margin-left: 8px;
}

.btn-modal-share-copy {
  width: 104px;
  border-radius: 0 4px 4px 0 !important;
}

.reservation-modal-url-input {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(100vw - 154px);
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  padding: 0 8px;
}

.reservation-modal-url-inputtext {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.2rem;
  line-height: 34px;
  overflow: hidden;
  white-space: nowrap;
}

.modal-share-reservation-pc {
  width: 380px;
}

.reservation-modal-url-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 24px;
}

.modal-share-reservation .contents-pc {
  height: auto;
}

.modal-share-reservation-shareicon-pc img {
  margin-top: 4px;
  margin-bottom: 22px;
}

.modal-share-reservation-text-pc {
  margin-bottom: 16px;
}

.reservation-modal-url-container-pc {
  margin-bottom: 16px;
}

.modal-share-reservation-sharesns-pc {
  margin: 0 auto 16px;
}

.reservation-modal-url-input-pc {
  width: 206px;
}

.modal-share-reservation .modal-container-pc {
  width: 360px;
}

.global-modal.smartpassBenefits__modal {
  bottom: auto;
  height: 96%;
  overflow-y: auto;
  top: 2%;
  width: calc(100% - 32px);
}

.global-modal.smartpassBenefits__modal ~ .modal-overlay {
  background-color: rgba(0, 0, 0, 0.67);
}

.global-modal.smartpassBenefits__modal .modal-container {
  margin: 0 auto;
}

.global-modal.smartpassBenefits__modal .modal-container .header {
  background: #ec671f;
  padding: 24px 16px;
}

.global-modal.smartpassBenefits__modal .modal-container .header p {
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 27px;
  margin: 0;
  text-align: left;
}

.global-modal.smartpassBenefits__modal .modal-container .header .caption {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 18px;
  margin: 16px 0 0;
}

.global-modal.smartpassBenefits__modal .modal-container .header img.close {
  height: 14px;
  right: 10px;
  top: 10px;
  width: 14px;
}

.global-modal.smartpassBenefits__modal .modal-container .contents {
  padding: 24px 16px;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsChecklist ul > li {
  background: url("/stcontents/img/common/relux-icon_icon-check-smps.svg") no-repeat;
  background-size: 28px 28px;
  font-size: 1.2rem;
  min-height: 24px;
  line-height: 18px;
  margin: 0 0 24px;
  padding: 0 0 0 40px;
  vertical-align: bottom;
  width: 87%;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsChecklist ul > li:last-of-type {
  margin: 0 0 32px;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsNotice {
  background: #efefef;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 18px;
  margin: 0 0 8px;
  padding: 16px;
  width: 90%;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsNotice dl > dt {
  margin: 0 0 8px;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsNotice dl > dd {
  display: list-item;
  font-weight: normal;
  line-height: 1.8;
  list-style: disc;
  margin: 0 0 0 14px;
  width: 96%;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsLink {
  color: #0f0a64;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .benefitsLink img {
  height: 21px;
  margin: 0 0 0 3px;
  vertical-align: -6px;
  width: 21px;
}

.global-modal.smartpassBenefits__modal .modal-container .benefitsLinkGroup {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 16px 0 0;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .close_btn {
  display: block;
  margin: 24px 0 0;
  text-align: center;
}

.global-modal.smartpassBenefits__modal .modal-container .contents .close_btn a {
  border: solid 1px #0f0a64;
  border-radius: 4px;
  color: #0f0a64;
  display: block;
  font-size: 1.6rem;
  height: 44px;
  line-height: 2.5;
}

@media (min-width: 768px) {
  .global-modal.smartpassBenefits__modal {
    bottom: 0;
    height: 592px;
    top: 0;
    max-width: 100%;
    width: 960px;
  }
  .global-modal.smartpassBenefits__modal ~ .modal-overlay {
    background-color: transparent;
  }
  .global-modal.smartpassBenefits__modal .modal-container {
    -webkit-box-shadow: none;
            box-shadow: none;
    margin: 0;
  }
  .global-modal.smartpassBenefits__modal .modal-container .header {
    padding: 40px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .header p {
    font-size: 2.4rem;
    line-height: 24px;
    margin: 0;
  }
  .global-modal.smartpassBenefits__modal .modal-container .header .caption {
    font-size: 1.4rem;
    line-height: 21px;
    margin: 16px 0 0;
  }
  .global-modal.smartpassBenefits__modal .modal-container .header img.close {
    height: 22px;
    right: 20px;
    top: 20px;
    width: 22px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents {
    padding: 40px 40px 24px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .scrollWrap {
    height: 340px;
    overflow-y: scroll;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .scrollWrap::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .scrollWrap::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
            box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .benefitsChecklist ul > li {
    background-size: 28px 28px;
    font-size: 1.4rem;
    min-height: 24px;
    line-height: 21px;
    margin: 0 0 24px;
    padding: 0 0 0 50px;
    max-width: 100%;
    width: 800px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .benefitsChecklist ul > li:last-of-type {
    margin: 0 0 40px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .benefitsNotice {
    font-size: 1.2rem;
    line-height: 18px;
    margin: 0 0 8px;
    padding: 24px;
    max-width: 100%;
    width: 804px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .benefitsNotice dl > dd {
    line-height: 1.8;
    margin: 0 0 0 18px;
    max-width: 100%;
    width: 800px;
  }
  .global-modal.smartpassBenefits__modal .modal-container .contents .close_btn {
    display: none;
  }
}

/* ----------------------------------------------------------------------
 footer
---------------------------------------------------------------------- */

/* トップページの.l-footerに関するcss */
.l-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.875rem;
  width: 100%;
  background-color: #303233;
  color: #fff;
  margin-top: 7.5rem;
  padding-block: 3.125rem;
  text-align: center;
}

.l-footer__logo {
  font-size: 3.125rem;
  margin-bottom: 1.25rem;
}

.l-footer__navi {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.875rem 1.25rem;
}
.l-footer__navi a {
  color: #fff;
}

.l-footer__social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}

.l-footer__copyright {
  margin-top: 0.625rem;
  font-size: .875rem;
}


.global-footer {
  background-color: #303233;
  color: #fff;
  clear: both;
}

.google-code {
  background-color: #303233;
}

.global-footer .footer-inner {
  max-width: 1080px;
  margin: 0 auto;
}

.global-footer .title {
  background: url("/stcontents/img/common/icon-footer-menu.svg") no-repeat right 15px top 50%;
  padding: 16px 16px;
  border-bottom: 1px solid #000;
}

.global-footer .title.active {
  background: #555 url("/stcontents/img/common/icon-footer-menu-top.svg") no-repeat right 15px top 50%;
}

.global-footer .nav {
  display: none;
}

.global-footer .nav li a {
  background: url(/stcontents/img/common/icon-footer-arrow-right.svg) no-repeat right 15px top 50% #F5F5F5;
  background-size: 6px;
  text-decoration: none;
  color: #333;
  padding: 16px 24px;
  display: block;
  border-bottom: 1px solid #333;
}

.global-footer .info {
  text-align: center;
  padding: 30px 10px;
}

.global-footer .info a.logo img {
  width: 124px;
}

.global-footer .info a.logo img.logo-kddi {
  width: 82px;
}

.global-footer .info .nav-info {
  margin: 20px 0 15px;
}

.global-footer .info .nav-info li {
  display: inline-block;
  margin: 0 5px;
}

.global-footer .info .nav-info li a {
  color: #ccc;
  font-size: 1rem;
  text-decoration: none;
}

.global-footer .info .nav-social {
  margin: 10px 0 20px;
}

.global-footer .info .nav-social li {
  display: inline;
  margin: 0 5px;
}

.global-footer .info .nav-social li a {
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none;
}

.global-footer .info .nav-social li img {
  height: 24px;
  vertical-align: middle;
}

.global-footer small {
  font-size: 1.1rem;
  color: #ccc;
}

@media (min-width: 768px) {
  .global-footer .footer-inner {
    padding: 40px 20px 0;
  }
  .global-footer .col-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid #393c3e;
    width: 100%;
    padding: 0 60px 30px;
    margin: 0 auto 10px;
  }
  .global-footer .col {
    display: table-cell;
    width: 25%;
    vertical-align: top;
  }
  .global-footer .inbound {
    display: block;
    width: auto;
  }
  .global-footer .inbound li {
    display: block;
    width: auto;
    text-align: left;
    margin-bottom: 20px;
    text-align: center;
    cursor: pointer;
  }
  .global-footer .title {
    padding: 0;
    margin-bottom: 15px;
    border-bottom: none;
    background: none;
    background-size: auto;
    text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .global-footer .nav {
    display: block;
  }
  .global-footer .nav li {
    margin-bottom: 10px;
  }
  .global-footer .nav li a {
    font-size: 1.4rem;
    margin-bottom: 12px;
    background: none;
    background-size: auto;
  }
  .global-footer .inbound li a,
  .global-footer .nav li a {
    text-decoration: none;
    color: #ccc;
    background-color: inherit;
    padding: 0;
    border-bottom: none;
  }
  .global-footer .nav li a:hover,
  .global-footer .nav-info li a:hover {
    text-decoration: underline !important;
  }
  .global-footer .inbound li a {
    padding: 12px 10px;
    width: 160px;
    background-color: #494e50;
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    border-radius: 1px;
  }
  .global-footer .inbound .displayCurrency a {
    padding: 12px 10px;
    width: 160px;
    background-color: #494e50;
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    border-radius: 1px;
    letter-spacing: 2px;
  }
}

@media (min-width: 768px) and (max-width: 800px) {
  .global-footer .col {
    width: 29%;
  }
}

/* ----------------------------------------------------------------------
line web app
---------------------------------------------------------------------- */
.lineLoading {
  color: #fff !important;
  background-color: #00bb00;
  border-color: #00bb00;
  text-decoration: none !important;
  margin-bottom: 10px;
}

.lineProfileBtn {
  color: #fff !important;
  background-color: #00bb00;
  border-color: #00bb00;
  text-decoration: none !important;
  margin-bottom: 10px;
}

.lineLoadingExpo {
  text-align: center;
}

.lineProfileBtnExpo {
  text-decoration: underline;
  background-color: #fff;
}

.lineUnderline {
  padding-bottom: 3px;
}

/* ----------------------------------------------------------------------

会員ステータス

---------------------------------------------------------------------- */
/* ラベル */
.memberStatusLabel {
  font-family: Calibre,Helvetica Neue,Helvetica,Arial,sans-serif !important;
  border-radius: 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff !important;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.6rem;
  min-height: 1.6rem;
  min-width: 70px;
  padding: 4px;
  text-align: center;
  text-decoration: none !important;
}

/* GREEN */
.memberStatusColor--green {
  background-color: #61803a;
}

.memberStatusColor--greenTxt {
  color: #61803a;
}

.memberStatusLabel.memberStatusColor--green {
  background: -webkit-linear-gradient(276deg, #81A754 48%, #688C3B 50%);
  background: linear-gradient(174deg, #81A754 48%, #688C3B 50%);
}

/* GOLD */
.memberStatusColor--gold {
  background-color: #a08a42;
}

.memberStatusColor--goldTxt {
  color: #a08a42;
}

.memberStatusLabel.memberStatusColor--gold {
  background: -webkit-linear-gradient(315deg, #b59f58 0%, #b59f58 66%, #a08a42 66%, #a08a42 100%);
  background: linear-gradient(135deg, #b59f58 0%, #b59f58 66%, #a08a42 66%, #a08a42 100%);
}

/* PLATINUM */
.memberStatusColor--platinum {
  background-color: #667a81;
}

.memberStatusColor--platinumTxt {
  color: #667a81;
}

.memberStatusLabel.memberStatusColor--platinum {
  background: -webkit-linear-gradient(315deg, #799098 0%, #799098 66%, #667a81 66%, #667a81 100%);
  background: linear-gradient(135deg, #799098 0%, #799098 66%, #667a81 66%, #667a81 100%);
}

/* DIAMOND */
.memberStatusColor--diamond {
  background-color: #07061f;
}

.memberStatusColor--diamondTxt {
  color: #07061f;
}

.memberStatusLabel.memberStatusColor--diamond {
  background: -webkit-linear-gradient(315deg, #333062 0%, #333062 66%, #07061f 66%, #07061f 100%);
  background: linear-gradient(135deg, #333062 0%, #333062 66%, #07061f 66%, #07061f 100%);
}

/* ----------------------------------------------------------------------
 btn
---------------------------------------------------------------------- */
.btn {
  display: inline-block;
  padding: 8px 12px;
  margin-bottom: 0;
  font-size: 1.4rem;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 0 solid transparent;
  border-radius: 2px;
  -webkit-appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.btn:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:focus,
.btn:hover {
  color: #333;
}

.btn.active,
.btn:active {
  background-image: none;
  outline: 0;
}

.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.65;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.btn-default {
  height: 48px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 10px;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #0F0A64;
  border-radius: 4px;
  line-height: 1.8;
  font-weight: bold;
  font-size: 1.6rem;
  color: #0F0A64;
  cursor: pointer;
  outline: none;
}

.btn-default:hover {
  border-color: #554B98;
  color: #554B98;
}

.btn-default .badge {
  color: #fff;
  background-color: #fff;
}

.btn-gray {
  border-color: #c6c6c6;
}

.btn-gray:hover {
  border-color: #554B98;
}

.btn-relux {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 48px;
  padding: 0 10px;
  background-color: #0f0a64;
  border: 1px solid #0f0a64;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  font-size: 1.6rem;
  color: #fff;
  cursor: pointer;
  outline: none;
}

.btn-small {
  height: 40px;
  font-size: 1.4rem;
}

.btn-x-small {
  height: 40px;
  font-size: 1.4rem;
}

.btn-xx-small {
  height: 32px;
  font-size: 1.4rem;
  font-weight: 500;
}

.btn-wide {
  width: 100%;
}

.btn-to-top {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 40px;
  padding: 0 10px;
  background-color: #0f0a64;
  border: 1px solid #0f0a64;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  font-size: 1.4rem;
  color: #fff;
  cursor: pointer;
}

.btn-to-top:hover {
  text-decoration: none;
  background-color: #554B98;
  border-color: #554B98;
  color: #fff;
}

.btn-relux-app {
  color: #000;
  background-color: #fff;
  color: #0f0a64 !important;
  border: solid 1px #0f0a64;
  text-decoration: none;
  border-radius: 4px;
}

.btn-relux.active,
.btn-relux:active,
.btn-relux:hover,
.open .dropdown-toggle.btn-relux {
  text-decoration: none;
  background-color: #554B98;
  border-color: #554B98;
  color: #fff;
}

.btn-relux.active,
.btn-relux:active,
.open .dropdown-toggle.btn-relux {
  background-image: none;
}

.btn-disabled {
  opacity: .2;
  cursor: default;
  pointer-events: none;
}

.btn-disabled-gray {
  background-color: #F5F5F5;
  border-color: #f5f5f5;
  color: #C6C6C6;
  cursor: default;
  pointer-events: none;
}

.btn-invalid {
  background-color: #C6C6C6 !important;
  border-color: #C6C6C6 !important;
  color: #fff !important;
  cursor: default;
  pointer-events: none;
}

.btn-relux .badge {
  color: #428bca;
  background-color: #fff;
}

.btn-large-blue {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 66px;
  line-height: 66px;
  display: inline-block;
  font-size: 1.8rem;
  background-color: #0f0a64;
  color: #fff !important;
  border-color: #0f0a64;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 0 solid transparent;
  border-radius: 4px !important;
  -webkit-appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.btn-large-blue:active,
.btn-large-blue:focus,
.btn-large-blue:hover {
  text-decoration: none !important;
  background-color: #554B98;
  border-color: #554B98;
}

.btn-middle-blue {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 44px;
  line-height: 44px;
  display: inline-block;
  font-size: 1.6rem;
  background-color: #0f0a64;
  color: #fff !important;
  border-color: #0f0a64;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 0 solid transparent;
  border-radius: 4px !important;
  -webkit-appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.btn-middle-blue:active,
.btn-middle-blue:focus,
.btn-middle-blue:hover {
  text-decoration: none !important;
  background-color: #554B98;
  border-color: #554B98;
}

.btn-small-blue {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 36px;
  line-height: 36px;
  display: inline-block;
  font-size: 1.2rem;
  background-color: #0f0a64;
  color: #fff !important;
  border-color: #0f0a64;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 0 solid transparent;
  border-radius: 4px !important;
  -webkit-appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.btn-small-blue:active,
.btn-small-blue:focus,
.btn-small-blue:hover {
  text-decoration: none !important;
  background-color: #554B98;
  border-color: #554B98;
}

.btn-small-white {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 36px;
  line-height: 34px;
  display: inline-block;
  font-size: 1.2rem;
  background-color: #fff;
  color: #0f0a64 !important;
  border-color: #0F0A64;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: solid 1px #0f0a64;
  border-radius: 4px !important;
  -webkit-appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.btn-border {
  background-color: #fff !important;
  color: #0f0a64 !important;
  border: 1px solid #0f0a64 !important;
  text-decoration: none !important;
}

.btn-inline {
  color: #0f0a64;
  border: 1px solid #0f0a64;
  text-decoration: none !important;
}

.btn-inline.active,
.btn-inline:active,
.btn-inline:focus,
.btn-inline:hover,
.open .dropdown-toggle.btn-inline {
  text-decoration: none !important;
  background-color: #fff;
  border: 1px solid #261777 !important;
  color: #261777 !important;
}

.btn-inline.active,
.btn-inline:active,
.open .dropdown-toggle.btn-relux {
  background-image: none;
}

.btn-fb {
  display: inline-block;
  color: #fff !important;
  background-color: #3b5998;
  border-color: #3b5998;
  text-decoration: none !important;
  border: 1px solid #3b5998;
}

.btn-fb.active,
.btn-fb:active,
.btn-fb:focus,
.btn-fb:hover,
.open .dropdown-toggle.btn-fb {
  color: #fff;
  background-color: #5872a7;
  border-color: #5872a7;
  text-decoration: none !important;
}

.btn-fb.active,
.btn-fb:active,
.open .dropdown-toggle.btn-fb {
  background-image: none;
}

.btn-fb.disabled,
.btn-fb.disabled.active,
.btn-fb.disabled:active,
.btn-fb.disabled:focus,
.btn-fb.disabled:hover,
.btn-fb[disabled],
.btn-fb[disabled].active,
.btn-fb[disabled]:active,
.btn-fb[disabled]:focus,
.btn-fb[disabled]:hover,
fieldset[disabled] .btn-fb,
fieldset[disabled] .btn-fb.active,
fieldset[disabled] .btn-fb:active,
fieldset[disabled] .btn-fb:focus,
fieldset[disabled] .btn-fb:hover {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-fb .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-fb img {
  height: 18px;
  vertical-align: middle;
  margin: -12px 0 -10px;
}

.btn-gg {
  color: #1f1f1f !important;
  background-color: #fff;
  border-color: #e0430d;
  text-decoration: none !important;
  border: 1px solid #1f1f1f;
}

.btn-gg.active,
.btn-gg:active,
.btn-gg:focus,
.btn-gg:hover,
.open .dropdown-toggle.btn-gg {
  color: #1f1f1f;
  background-color: #fff;
  border-color: #1f1f1f;
  text-decoration: none !important;
}

.btn-gg.active,
.btn-gg:active,
.open .dropdown-toggle.btn-gg {
  background-image: none;
}

.btn-gg.disabled,
.btn-gg.disabled.active,
.btn-gg.disabled:active,
.btn-gg.disabled:focus,
.btn-gg.disabled:hover,
.btn-gg[disabled],
.btn-gg[disabled].active,
.btn-gg[disabled]:active,
.btn-gg[disabled]:focus,
.btn-gg[disabled]:hover,
fieldset[disabled] .btn-gg,
fieldset[disabled] .btn-gg.active,
fieldset[disabled] .btn-gg:active,
fieldset[disabled] .btn-gg:focus,
fieldset[disabled] .btn-gg:hover {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-fb .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-gg img {
  height: 18px;
  vertical-align: middle;
  margin: -12px 0 -10px;
}

.btn-au {
  color: #fff !important;
  background-color: #e0430d;
  border-color: #e0430d;
  text-decoration: none !important;
  border: 1px solid #e0430d;
}

.btn-au-eng {
  font-size: 1rem;
}

.btn-au.active,
.btn-au:active,
.btn-au:focus,
.btn-au:hover,
.open .dropdown-toggle.btn-au {
  color: #fff;
  background-color: #e55517;
  border-color: #e55517;
  text-decoration: none !important;
}

.btn-au.active,
.btn-au:active,
.open .dropdown-toggle.btn-au {
  background-image: none;
}

.btn-au.disabled,
.btn-au.disabled.active,
.btn-au.disabled:active,
.btn-au.disabled:focus,
.btn-au.disabled:hover,
.btn-au[disabled],
.btn-au[disabled].active,
.btn-au[disabled]:active,
.btn-au[disabled]:focus,
.btn-au[disabled]:hover,
fieldset[disabled] .btn-au,
fieldset[disabled] .btn-au.active,
fieldset[disabled] .btn-au:active,
fieldset[disabled] .btn-au:focus,
fieldset[disabled] .btn-au:hover {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-au img {
  height: 18px;
  vertical-align: middle;
  margin: -12px 0 -10px;
}

.btn-line {
  color: #fff !important;
  background-color: #00b900;
  border-color: #00b900;
  text-decoration: none !important;
  border: 1px solid #00BB00;
}

.btnLineExport {
  text-align: center;
}

#btnLineExport {
  text-decoration: underline;
  margin-top: 5px;
}

#btnLineExport img {
  display: inline-block;
  width: 100%;
  max-width: 189px;
  border: 0;
  margin: 0;
  padding: 0;
  position: static;
  vertical-align: middle;
}

#btnLineExport :first-child,
#btnLineImport :first-child {
  border-radius: 2px;
}

.btn-line.active,
.btn-line:active,
.btn-line:focus,
.btn-line:hover,
.open .dropdown-toggle.btn-line {
  color: #fff;
  background-color: #24c224;
  border-color: #24c224;
  text-decoration: none !important;
}

.btn-line.active,
.btn-line:active,
.open .dropdown-toggle.btn-line {
  background-image: none;
}

.btn-line.disabled,
.btn-line.disabled.active,
.btn-line.disabled:active,
.btn-line.disabled:focus,
.btn-line.disabled:hover,
.btn-line[disabled],
.btn-line[disabled].active,
.btn-line[disabled]:active,
.btn-line[disabled]:focus,
.btn-line[disabled]:hover,
fieldset[disabled] .btn-line,
fieldset[disabled] .btn-line.active,
fieldset[disabled] .btn-line:active,
fieldset[disabled] .btn-line:focus,
fieldset[disabled] .btn-line:hover {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-line .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-line img {
  height: 18px;
  vertical-align: middle;
  margin: -12px 0 -10px;
}

.btn-line-export {
  background-color: #37c65c;
  color: #fff;
  height: 43px;
  text-align: center;
  vertical-align: middle;
}

.line-add-fiend .line-icon {
  height: 22px;
}

.users.line-add-friend .btn-area {
  width: 280px;
  margin: 0 auto;
  padding-top: 40px;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}

.btn-sub.active,
.btn-sub:active,
.btn-sub:focus,
.btn-sub:hover,
.open .dropdown-toggle.btn-sub {
  color: #333;
  background-color: #ebebeb;
  border-color: #e7e7e7;
  text-decoration: none !important;
}

.btn-sub.active,
.btn-sub:active,
.open .dropdown-toggle.btn-sub {
  background-image: none;
}

.btn-sub.disabled,
.btn-sub.disabled.active,
.btn-sub.disabled:active,
.btn-sub.disabled:focus,
.btn-sub.disabled:hover,
.btn-sub[disabled],
.btn-sub[disabled].active,
.btn-sub[disabled]:active,
.btn-sub[disabled]:focus,
.btn-sub[disabled]:hover,
fieldset[disabled] .btn-sub,
fieldset[disabled] .btn-sub.active,
fieldset[disabled] .btn-sub:active,
fieldset[disabled] .btn-sub:focus,
fieldset[disabled] .btn-sub:hover {
  background-color: #fff;
  border-color: #ccc;
}

.btn-sub .badge {
  color: #fff;
  background-color: #fff;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success.active,
.btn-success:active,
.btn-success:focus,
.btn-success:hover,
.open .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #47a447;
  border-color: #398439;
}

.btn-success.active,
.btn-success:active,
.open .dropdown-toggle.btn-success {
  background-image: none;
}

.btn-success.disabled,
.btn-success.disabled.active,
.btn-success.disabled:active,
.btn-success.disabled:focus,
.btn-success.disabled:hover,
.btn-success[disabled],
.btn-success[disabled].active,
.btn-success[disabled]:active,
.btn-success[disabled]:focus,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success,
fieldset[disabled] .btn-success.active,
fieldset[disabled] .btn-success:active,
fieldset[disabled] .btn-success:focus,
fieldset[disabled] .btn-success:hover {
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info.active,
.btn-info:active,
.btn-info:focus,
.btn-info:hover,
.open .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #39b3d7;
  border-color: #269abc;
}

.btn-info.active,
.btn-info:active,
.open .dropdown-toggle.btn-info {
  background-image: none;
}

.btn-info.disabled,
.btn-info.disabled.active,
.btn-info.disabled:active,
.btn-info.disabled:focus,
.btn-info.disabled:hover,
.btn-info[disabled],
.btn-info[disabled].active,
.btn-info[disabled]:active,
.btn-info[disabled]:focus,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info,
fieldset[disabled] .btn-info.active,
fieldset[disabled] .btn-info:active,
fieldset[disabled] .btn-info:focus,
fieldset[disabled] .btn-info:hover {
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}

.btn-link {
  font-weight: normal;
  color: #428bca;
  cursor: pointer;
  border-radius: 0;
}

.btn-link,
.btn-link:active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.btn-link,
.btn-link:active,
.btn-link:focus,
.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus,
.btn-link:hover {
  color: #2a6496;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link[disabled]:focus,
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:focus,
fieldset[disabled] .btn-link:hover {
  color: #999;
  text-decoration: none;
}

.btn-lg {
  padding: 10px 16px;
  font-size: 1.8rem;
}

.btn-sm,
.btn-sm_app,
.btn-xs {
  font-size: 1.2rem;
  line-height: 1.5;
}

.btn-sm {
  padding: 5px 10px;
}

.btn-sm_app {
  padding: 7px 10px;
}

.btn-xs {
  padding: 1px 5px;
}

.btn-block {
  display: block;
  position: relative;
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}

.btn-block + .btn-block {
  margin-top: 5px;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.sns-fav {
  position: absolute;
  top: 33%;
  left: 13px;
}

.sns-fav-img {
  position: absolute;
  top: 57%;
  left: 8px;
}

.btn-pagetop {
  background: url("/stcontents/img/common/icon-pagetop.png") no-repeat 0 0;
  background-size: cover;
  display: block;
  width: 40px;
  height: 40px;
  position: fixed;
  bottom: 14px;
  bottom: calc(env(safe-area-inset-bottom) + 44px);
  right: 20px;
  text-indent: -200px;
  white-space: nowrap;
  overflow: hidden;
  z-index: 1;
}

.btn-pagetop.static {
  position: relative;
  bottom: inherit;
  right: inherit;
  margin-top: -56px;
  margin-right: 20px;
  margin-bottom: 0 !important;
  float: right;
}

.btn-close {
  background: url("/stcontents/img/common/icon-modal-close.svg") no-repeat 0 0;
  background-size: contain;
  display: block;
  width: 30px;
  height: 30px;
  text-indent: -200px;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

.btn-close:hover {
  opacity: 0.7;
}

.btn-anker {
  height: 32px;
  background: #FFF;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 14px;
  cursor: pointer;
  text-align: center;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
  border: 1px solid #f5f5f5;
  border-radius: 40px;
  font-weight: bold;
  font-size: 1.2rem;
  color: #0F0A64;
  letter-spacing: 0;
}

.btn-anker.active {
  background: #0F0A64;
  border-color: #0F0A64;
  text-decoration: none;
  color: #fff;
}

.btn-diamond {
  background: url(/stcontents/img/common/bg-diamond-banner.png) no-repeat 0 0;
  background-size: cover;
  max-width: 542px;
  width: 100%;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  letter-spacing: 1px;
  color: #fff;
}

.btn-diamond img {
  margin-left: 8px;
}

.btn-diamond:after {
  width: 16px;
  content: url(/stcontents/img/common/icon-jump.png);
  margin-top: 1px;
  margin-left: 4px;
  line-height: 0;
  -webkit-transform: scale(0.3);
          transform: scale(0.3);
  -webkit-transform-origin: center left;
          transform-origin: center left;
}

.btn-diamond:hover {
  color: #c6c6c6;
}

.btn-diamond:hover:after {
  opacity: 0.7;
}

.btn-col-2 a {
  margin-bottom: 16px;
}

@media (min-width: 768px) {
  .btn-default {
    height: 56px;
    padding: 0 16px;
    font-size: 1.6rem;
  }
  .btn-relux {
    height: 56px;
    padding: 0 16px;
    font-size: 1.6rem;
  }
  .btn-small {
    height: 48px;
  }
  .btn-x-small {
    height: 40px;
    font-size: 1.4rem;
  }
  .btn-xx-small {
    height: 32px;
    font-size: 1.4rem;
  }
  .btn-wide {
    width: auto;
    min-width: 300px;
  }
  .btn-to-top {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: auto;
    min-width: 300px;
    height: 48px;
    padding: 0 10px;
    background-color: #0f0a64;
    border: 1px solid #0f0a64;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
    font-size: 1.6rem;
    color: #fff;
    cursor: pointer;
  }
  .btn-to-top:hover {
    text-decoration: none;
    background-color: #554B98;
    border-color: #554B98;
    color: #fff;
  }
  .btn-pagetop {
    width: 58px;
    height: 58px;
    bottom: 40px;
    right: 60px;
  }
  .btn-pagetop:hover {
    background: url("/stcontents/img/common/icon-pagetop-hover.png") no-repeat 0 0;
    background-size: contain;
  }
  .btn-pagetop.static {
    margin-top: -90px;
    margin-right: 60px;
  }
  .btn-close {
    width: 40px;
    height: 40px;
  }
  .btn-anker {
    height: 40px;
  }
  .btn-anker:hover {
    background: #554B98;
    border-color: #554B98;
    text-decoration: none;
    color: #fff;
  }
  .btn-diamond {
    height: 56px;
  }
  .btn-diamond:after {
    -webkit-transform: scale(0.35);
            transform: scale(0.35);
  }
  .btn-col-2 a {
    margin: 0 8px;
  }
}

@media (max-width: 767px) {
  .btn-sp-wide {
    max-width: 343px;
  }
}

@media screen and (max-width: 340px) {
  .btn-default,
  .btn-relux,
  .btn-small,
  .btn-x-small {
    font-size: 1.2rem;
  }
}

/*
  追従アンカーリンク
*/
.anchor-link.position-measure {
  position: -webkit-sticky;
  position: sticky;
  top: 8px;
  z-index: 21;
  overflow-x: auto;
  margin: 0 auto;
}

.anchor-link.position-measure::-webkit-scrollbar {
  display: none;
}

.anchor-link.position-measure ul {
  min-width: 500px;
  height: 42px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.anchor-link.position-measure li {
  margin-right: 8px;
  white-space: nowrap;
}

.anchor-link.position-measure li:first-child {
  margin-left: 8px;
}

@media (min-width: 768px) {
  .anchor-link.position-measure {
    width: 680px;
    top: 16px;
  }
  .anchor-link.position-measure ul {
    height: 52px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .anchor-link.position-measure ul li {
    margin-right: 16px;
  }
  .anchor-link.position-measure ul li:first-child {
    margin-left: 16px;
  }
  .anchor-link.position-measure .btn-anker {
    padding: 8px 24px 8px;
    font-size: 1.4rem;
  }
}

/*
  text-link
*/
.text-link {
  display: inline-block;
  font-size: 1.4rem;
  color: #0F0A64;
  cursor: pointer;
}

.text-link:hover {
  text-decoration: none;
  opacity: 0.7;
}

.text-link:after {
  background: url("/stcontents/img/common/icon-text-link.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-left: 10px;
  margin-bottom: -1px;
}

.text-link.link-close:after {
  content: none;
}

.text-link.link-close:before {
  background: url("/stcontents/img/common/icon-text-link-close.svg") no-repeat 0 center;
  background-size: contain;
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-right: 10px;
}

.text-link.link-add::after {
  background: url("/stcontents/img/common/icon-arrow-bottom-relux.svg") no-repeat 0 center;
  background-size: contain;
  width: 16px;
  height: 9px;
  margin-bottom: 0;
  margin-top: -2px;
}

.text-link.link-left::after {
  content: none;
}

.text-link.link-left::before {
  background: url("/stcontents/img/common/icon-text-link.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -1px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.text-link-gray {
  display: inline-block;
  font-size: 1.4rem;
  color: #757575;
  cursor: pointer;
}

.text-link-gray:hover {
  text-decoration: none;
  color: #000000;
}

.text-link-gray:hover:after {
  background: url("/stcontents/img/common/icon-text-link-gray-hover.svg") no-repeat 0 center;
}

.text-link-gray:after {
  background: url("/stcontents/img/common/icon-text-link-gray.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-left: 10px;
  margin-bottom: -1px;
}

.text-link-gray.link-close:after {
  content: none;
}

.text-link-gray.link-close:before {
  background: url("/stcontents/img/common/icon-text-link-gray-close.svg") no-repeat 0 center;
  background-size: contain;
  content: "";
  display: inline-block;
  margin-right: 10px;
  width: 14px;
  height: 14px;
  margin-bottom: -2px;
}

.text-link-gray.link-close:hover:before {
  background: url("/stcontents/img/common/icon-text-link-gray-close-hover.svg") no-repeat 0 center;
  background-size: contain;
}

.text-link-gray.pale-gray a {
  color: #757575;
}

.text-link-gray.pale-gray:after {
  background: url("/stcontents/img/common/icon-text-link-gray-2.svg") no-repeat 0 center;
  background-size: contain;
}

.text-link-gray.link-left::after {
  content: none;
}

.text-link-gray.link-left::before {
  background: url("/stcontents/img/common/icon-text-link-gray.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -1px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.text-link-gray.link-left:hover:before {
  background: url("/stcontents/img/common/icon-text-link-gray-hover.svg") no-repeat 0 center;
}

.text-link-white {
  display: inline-block;
  font-size: 1.4rem;
  color: #FFF;
  cursor: pointer;
}

.text-link-white:hover {
  text-decoration: none;
  color: #C6C6C6;
}

.text-link-white:hover::after {
  background: url("/stcontents/img/common/icon-text-link-white-hover.svg") no-repeat 0 center;
}

.text-link-white::after {
  background: url("/stcontents/img/common/icon-text-link-white.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-left: 10px;
  margin-bottom: -1px;
}

.text-link-white.link-left::after {
  content: none;
}

.text-link-white.link-left::before {
  background: url("/stcontents/img/common/icon-text-link-white.svg") no-repeat 0 center;
  content: "";
  width: 8px;
  height: 12px;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -1px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.text-link-white.link-left:hover::before {
  background: url("/stcontents/img/common/icon-text-link-white-hover.svg") no-repeat 0 center;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.text-link-default {
  text-decoration: underline;
  cursor: pointer;
}
.text-link-default:hover {
  text-decoration: none;
  color: #0066cc;
}
.text-link-default.color-gray-2:hover {
  color: #757575;
}

.icon-alert {
  background: url("/stcontents/img/common/icon-alert.svg") no-repeat 0 center;
  background-size: 18px;
  padding-left: 26px;
}

a.icon-alert {
  text-decoration: underline;
}

.js-conent-fadein {
  display: none;
}

.message.multi {
  height: auto;
}

/* アコーディオン */
.js-accordion-open:after {
  background: url("/stcontents/img/common/icon-arrow-bottom-relux.svg") no-repeat 0 center;
  background-size: contain;
  content: "";
  width: 16px;
  height: 9px;
  display: inline-block;
  margin-left: 10px;
  margin-bottom: 0;
  margin-top: -2px;
}

.js-accordion-open.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.accordion-content {
  display: none;
}

.js-accordion-open.accordion-gray::after {
  background: url("/stcontents/img/common/icon-accordion-gray.svg") no-repeat 0 center;
  background-size: contain;
}

.js-accordion-open.accordion-gray:hover::after {
  background: url("/stcontents/img/common/icon-accordion-gray-hover.svg") no-repeat 0 center;
  background-size: contain;
}

.js-accordion-open.gray-line {
  background: rgb(245,245,245);
  position: relative;
  padding: 16px 16px;
  color: #0F0A64;
  cursor: pointer;
  font-weight: bold;
}
.js-accordion-open.gray-line::after {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}
.js-accordion-open.gray-line.active:after {
  transform: translateY(-50%) rotate(180deg);
}

.accordion-box .border {
  border: 1px solid #C6C6C6;
  border-radius: 4px;
  overflow: hidden;
}
.accordion-box .border.active {
  border: 1px solid #0F0A64;
}
.accordion-box .border.error {
  border: 1px solid #CE0000
}
.accordion-box .label {
  background: #F5F5F5;
  width: 100%;
  position: relative;
  margin-bottom: 0 !important;
  padding: 8px 8px;
  border: none;
}
.accordion-box .label:after {
  background: url(/stcontents/img/common/icon-arrow-bottom-relux.svg) no-repeat 0 center;
  background-size: contain;
  content: "";
  width: 16px;
  height: 9px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -4px;
}
.accordion-box .label.active:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.accordion-box .text-area-common-style textarea {
  width: calc(100% - 8px);
  height: 200px;
  display: block;
  margin: 0 auto 8px;
  border: none !important;
}
.accordion-box .text-number {
  display: none;
  line-height: 1.6;
  margin: 0;
  font-size: 1rem;
  color: #757575;
  text-align: right;
}
.accordion-box .text-number.active {
  display: block;
}
.accordion-box .input-error-word {
  padding: 4px 0 8px 8px;
}

@media (min-width: 768px) {
  .text-link,
  .text-link-gray {
    font-size: 1.6rem;
  }
  .js-accordion-open:after {
    width: 19px;
    height: 10px;
    margin-top: -4px;
    margin-bottom: 0;
  }
}

@media (max-width: 767px){
  .js-accordion-open.gray-line {
    padding: 12px 8px;
  }
  .js-accordion-open.gray-line::after {
    right: 10px;
  }
}

.modal-link,
.modal-link-gray,
.modal-link-black {
  font-size: 1.4rem;
  position: relative;
  padding-right: 20px;
  text-decoration: underline;
}

.modal-link:hover,
.modal-link-gray:hover,
.modal-link-black:hover {
  text-decoration: none;
}

.modal-link::after,
.modal-link-gray::after,
.modal-link-black::after {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.modal-link {
  color: #0066cc;
}

.modal-link:hover {
  color: #0066cc;
}

.modal-link::after {
  background-image: url("../img/common/icon-modal-link-blue.svg");
}

.modal-link-gray {
  color: #757575;
}

.modal-link-gray:hover {
  color: #757575;
}

.modal-link-gray::after {
  background-image: url("../img/common/icon-modal-link-gray.svg");
}

.modal-link-black {
  color: #333;
}

.modal-link-black:hover {
  color: #333;
}

.modal-link-black::after {
  background-image: url("../img/common/icon-modal-link-black.svg");
}

.bnr-detail-benefit {
  background: #F3F8FD;
  width: 100%;
  height: 48px;
  padding: 8px ;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  border: 1px solid #0F0A64;
}
.bnr-detail-benefit img {
  height: 21px;
  width: auto;
}
.bnr-detail-benefit.bnr-orange {
  border-color: #EB5505;
  background-color: #FFF5EF;
}

@media (min-width: 768px) {
  .modal-link,
  .modal-link-gray,
  .modal-link-black {
    font-size: 1.6rem;
    padding-right: 32px;
  }
  .modal-link::after,
  .modal-link-gray::after,
  .modal-link-black::after {
    width: 24px;
    height: 24px;
  }
  .bnr-detail-benefit {
    max-width: 33%;
    width: 343px;
    height: 58px;
  }
  .bnr-detail-benefit img {
    max-width: 100%;
    width: 300px;
    height: auto;
  }
}

/*
  Icon
*/
.icon {
  width: 16px;
  height: auto;
}

.icon-orange {
  background: #fff;
  height: 18px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 8px;
  border: 1px solid #FF503E;
  border-radius: 50px;
  line-height: 0;
  white-space: nowrap;
  font-size: 1rem;
  color: #FF503E;
}

.icon-red {
  background: #CE4949;
  height: 18px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 8px;
  border: 1px solid #fff;
  border-radius: 50px;
  line-height: 0;
  white-space: nowrap;
  font-size: 1rem;
  color: #fff;
}

.icon-breads,
.icon-room,
.icon-smoke,
.icon-wifi {
  display: inline-block;
  padding-left: 24px;
  font-size: 1rem;
}

.border-none {
  border: none;
}
.border-gray {
  border-color:#C6C6C6 !important;
}

.icon-smoke {
  background: url("/stcontents/img/common/icon-smoke.svg") no-repeat 0 center;
  background-size: contain;
}

/* .icon-smoke-on {
  background: url("/stcontents/img/common/icon-smoke-on.svg") no-repeat 0 center;
  background-size: contain;
} */

.icon-room {
  background: url("/stcontents/img/common/icon-room.svg") no-repeat 0 center;
  background-size: contain;
}

.icon-breads {
  background: url("/stcontents/img/common/icon-breads.svg") no-repeat 0 center;
  background-size: contain;
}

.icon-wifi {
  background: url("/stcontents/img/common/icon-wifi.svg") no-repeat 0 center;
  background-size: contain;
}

.icon-label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50px;
  line-height: 0;
  white-space: nowrap;
  height: 18px;
  padding: 0 8px;
  font-size: 1rem;
}

.color-white {
  color: #fff;
}

.bg-deep-gray {
  background-color: #333;
  border: 1px solid #fff;
}

.bg-blue {
  background-color: #4F68C2;
}

.bg-orange {
  background-color: #FF503E;
  color: #fff;
  border: 1px solid #fff;
}

@media (min-width: 768px) {
  .icon {
    width: 24px;
    height: auto;
  }
  .icon-label {
    height: 24px;
    padding: 0 10px;
    font-size: 1.2rem;
  }
  .icon-breads,
  .icon-room,
  .icon-smoke,
  .icon-wifi {
    padding-left: 30px;
    font-size: 1.2rem;
  }
  .icon-orange {
    height: 24px;
    padding: 0 10px;
    font-size: 1.2rem;
  }
  .icon-red {
    height: 24px;
    padding: 0 10px;
    font-size: 1.2rem;
  }
  .icon-alert {
    background-size: contain;
  }
}

/*
  Tag
*/
.icon-grade,
.icon-grade2 {
  height: 16px;
  width: auto;
}

.icon-grade[src*="grade-star"] + .icon-grade[src*="grade-star"],
.icon-grade2[src*="grade-star"] + .icon-grade[src*="grade-star"], .icon-grade[src*="grade-star"] +
.icon-grade2[src*="grade-star"],
.icon-grade2[src*="grade-star"] +
.icon-grade2[src*="grade-star"] {
  margin-left: 2px;
}

.icon-museum, .icon-casual {
  height: 16px;
}

.icon-question {
  height: 16px;
  width: auto;
  margin: 0 6px;
  cursor: pointer;
}

.icon-ranking {
  width: 30px;
}

.tag-auberge,
.tag-business,
.tag-city,
.tag-consept,
.tag-hostel,
.tag-kominka,
.tag-machiya,
.tag-require,
.tag-any,
.tag-resort,
.tag-ryokan,
.tag-ryokan,
.tag-villa,
.tag-coupon,
.tag-fcfs,
.tag-done {
  height: 20px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 center;
          transform-origin: 0 center;
  padding: 0 5px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
  color: #fff;
}

.tag-hoteltype {
  height: 20px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 center;
          transform-origin: 0 center;
  padding: 0 5px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1;
  color: #333;
  border: 1px solid #333;
  border-radius: 2px;
  background-color: #fff;
  white-space: nowrap;
}


.tag-require,
.tag-any {
  height: 14px;
  padding: 0 4px;
  background: #CE0000;
  font-size: 1rem;
  line-height: 1;
}

.tag-any {
  background: #757575;
}

.tag-ryokan {
  background: #4AA265;
}

.tag-auberge {
  background: #81C858;
}

.tag-city {
  background: #39669C;
}

.tag-business {
  background: #67B1CF;
}

.tag-resort {
  background: #796BAF;
}

.tag-consept {
  background: #BA79B1;
}

.tag-hostel {
  background: #FF997F;
}

.tag-machiya {
  background: #937453;
}

.tag-kominka {
  background: #937453;
}

.tag-villa {
  background: #D38958;
}

.tag-coupon {
  background: #FFF;
  border: 1px solid #CE0000;
  color: #CE0000;
}

.tag-fcfs {
  background: #FFF;
  border: 1px solid #0F0A64;
  color: #0F0A64;
}

.tag-done {
  background: #FFF;
  border: 1px solid #333;
  color: #333;
}

.tag-label,
.tag-label-white {
  background: #4F68C2;
  display: inline-block;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  padding: 0 7px;
  border-radius: 20px;
  line-height: 22px;
  font-size: 1rem;
  color: #fff;
}

.tag-label-white {
  border: 1px solid #fff;
  line-height: 20px;
}

.tag-label-ro {
  border: none !important;
  background: none !important;
  padding: 0 !important;
}

.tag-pr {
  background: #FFF;
  display: inline-block;
  padding: 2px 7px;
  border: 1px solid #757575;
  border-radius: 2px;
  font-size: 10px;
  line-height: 1;
  color: #757575;
}

.tag-hoteltype-white {
  height: 20px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 center;
          transform-origin: 0 center;
  padding: 0 5px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1;
  border-radius: 2px;
  border: 1px solid;
  color: #fff;
  background: rgba(0, 0, 0, 0.1);
}

.tag-gtt {
  height: 20px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 center;
          transform-origin: 0 center;
  padding: 0 5px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1;
  background-color: #4F68C2;
  border-radius: 2px;
  border: none;
  color: #fff;
  white-space: nowrap;
}

.tag-gtt-white {
  height: 20px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: 0 center;
          transform-origin: 0 center;
  padding: 0 5px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1;
  background-color: #fff;
  border-radius: 2px;
  border: 1px solid #4F68C2;
  color: #4F68C2;
}

.tag-label-orange {
  background: #fff;
  color: #FF503E;
  border: 1px solid #FF503E;
}

@media (min-width: 768px) {
  .icon-grade {
    height: auto;
  }
  .icon-grade[src*="grade-star"] + .icon-grade[src*="grade-star"] {
    margin-left: 4px;
  }
  .icon-grade2 {
    width: 24px;
    height: 24px;
  }
  .icon-grade2[src*="grade-star"] + .icon-grade2[src*="grade-star"] {
    margin-left: 4px;
  }
  .icon-museum, .icon-casual {
    height: 24px;
  }
  .icon-question {
    height: 20px;
    margin: 0 10px;
  }
  .icon-ranking {
    width: 56px;
  }
  .tag-auberge,
  .tag-business,
  .tag-city,
  .tag-consept,
  .tag-hostel,
  .tag-kominka,
  .tag-machiya,
  .tag-require,
  .tag-any,
  .tag-resort,
  .tag-ryokan,
  .tag-ryokan,
  .tag-villa,
  .tag-coupon,
  .tag-fcfs,
  .tag-done {
    height: 24px;
    -webkit-transform: scale(1);
            transform: scale(1);
    padding: 0 10px;
    font-size: 1.2rem;
  }
  .tag-hoteltype,
  .tag-gtt,
  .tag-hoteltype-white,
  .tag-gtt-white {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    height: 24px;
    -webkit-transform: scale(1);
            transform: scale(1);
    padding: 4px 10px;
    font-size: 1.2rem;
    line-height: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transform-origin: 0 center;
            transform-origin: 0 center;
  }

  .tag-require,
  .tag-any {
    height: 16px;
    padding: 0 4px;
    line-height: 1;
    font-size: 1rem;
  }
  .tag-label,
  .tag-label-white,
  .tag-label-orange {
    -webkit-transform: none;
            transform: none;
    padding: 0 10px;
    line-height: 22px;
    font-size: 1.2rem;
  }
  .tag-label {
    line-height: 24px;
  }
  .tag-label-orange {
    line-height: 22px;
  }
}

/*
  tab
*/
.tab-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 2px solid #0F0A64;
}

.tab-box > * {
  background: #ffffff;
  width: calc(100% / 2);
  padding: 8px 6px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #0F0A64;
  cursor: pointer;
  height: 3.8rem;
}

.tab-box > *:hover {
  background: #58489d;
  color: #fff;
}

.tab-box > *:hover a {
  display: block;
  color: #fff;
}

.tab-box > * a {
  color: #0F0A64;
}

.tab-box > *.active {
  background: #0F0A64;
  color: #fff;
  cursor: default;
}

.tab-box > *.active a {
  color: #fff;
}

.tab-box.type-gray {
  border-bottom: 2px solid #f5f5f5;
}

.tab-box.type-gray > * {
  background: #555555;
  color: #fff;
}

.tab-box.type-gray > *:hover {
  background: #757575;
}

.tab-box.type-gray > *.active {
  background: #f5f5f5;
  color: #333;
  cursor: default;
}

.tab-box.column-3 > * {
  width: calc(100% / 3);
}

.tab-box.column-4 > * {
  width: calc(100% / 4);
}

.tab-box.column-5 > * {
  width: calc(100% / 5);
}

.tab-box.column-6 > * {
  width: calc(100% / 6);
}

.tab-box.column-7 > * {
  width: calc(100% / 7);
}

.tab-box.column-8 > * {
  width: calc(100% / 8);
}

.flex-wrap {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.flex-shrink-0 {
  flex-shrink: 0;
}

.scroll-line {
  overflow-x: auto;
  white-space: nowrap;
}

.scroll-line::-webkit-scrollbar {
  height: 5px;
}

.scroll-line::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 5px;
}

.scroll-line::-webkit-scrollbar-thumb {
  background: #C6C6C6;
  border-radius: 5px;
}

.scroll-line .scroll-child {
  width: 1080px;
}

.tab-content > * {
  display: none;
}

.tab-content > *:first-child {
  display: block;
}

.tab-search-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.tab-search-list li {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  margin-right: 8px;
  cursor: pointer;
}

.tab-search-list li.icon-search-3, .tab-search-list li.icon-search-4 {
  margin-right: 0;
}

.tab-search-list li.icon-search-1 {
  background: url(/stcontents/img/common/icon-seach-list-1.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-2 {
  background: url(/stcontents/img/common/icon-seach-list-2.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-3 {
  background: url(/stcontents/img/common/icon-seach-list-3.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-4 {
  background: url(/stcontents/img/common/icon-seach-list-4.svg) no-repeat center center;
  background-size: 16px;
}

.tab-search-list li.active.icon-search-1 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-1-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-2 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-2-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-3 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-3-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-4 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-4-white.svg) no-repeat center center;
  background-size: 16px;
}

.tab-box.large-style > * {
  font-size: 1.6rem;
  padding-top: 9px;
  padding-bottom: 9px;
}

@media (min-width: 768px) {
  .tab-box > * {
    padding: 13px;
    height: 4.8rem;
  }
}

@media (max-width: 768px) {
  .scroll-line .tab-box.column-3 > *, .scroll-line .tab-box.column-4 > *, .scroll-line .tab-box.column-5 > *, .scroll-line .tab-box.column-6 > *, .scroll-line .tab-box.column-7 > *, .scroll-line .tab-box.column-8 > * {
    width: auto;
    height: auto;
    padding: 10px 10px;
  }
  .tab-box.large-style > * {
    font-size: 1.4rem;
    padding: 9px 2px;
  }
}

/*
  table
*/
.table-basic {
  width: 100%;
  border-bottom: 2px solid #F5F5F5;
}

.table-basic td,
.table-basic th {
  display: block;
  width: 100%;
  padding: 8px 8px;
  vertical-align: top;
  font-size: 1.4rem;
}

.table-basic th {
  background: #F5F5F5;
  min-width: 120px;
  font-weight: bold;
}

.table-basic.bd-none td,
.table-basic.bd-none th {
  border: none;
}

.table-basic.large-style td,
.table-basic.large-style th {
  font-size: 1.6rem;
}

.tableSpVertical {
  width: 100%;
  border: 1px solid #C6C6C6;
  line-height: 1.4;
}

.tableSpVertical th,
.tableSpVertical td {
  border-bottom: 1px solid #C6C6C6;
  padding: 16px;
}

.tableSpVertical th {
  background-color: #F5F5F5;
  font-weight: 900;
}

@media (min-width: 768px) {
  .table-basic {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
  }
  .table-basic td,
  .table-basic th {
    width: auto;
    display: table-cell;
    padding: 16px;
    border-bottom: 1px solid #C6C6C6;
    font-size: 1.6rem;
  }
  .table-basic th {
    width: 25.6%;
  }
}

/*
  Form
*/
.input-radio {
  background: url("/stcontents/img/common/icon-radio.svg") no-repeat 0 center;
  background-size: contain;
  width: 22px;
  height: 22px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 4px;
}

.input-radio.radio-error {
  background: url("/stcontents/img/common/icon-radio-error.svg") no-repeat 0 center;
  background-size: contain;
}

.input-radio:checked {
  background: url("/stcontents/img/common/icon-radio-on.svg") no-repeat 0 center;
  background-size: contain;
}

.input-radio:disabled {
  background: url("/stcontents/img/common/icon-radio-disabled.svg") no-repeat 0 center;
  background-size: contain;
}

/* 非活性時、input(radio)の親要素に付与 */
.radio-disabled label {
  color: #C6C6C6;
}

.input-checkbox {
  background: #fff url("/stcontents/img/common/icon-checkbox.svg") no-repeat 0 center;
  background-size: contain;
  width: 22px;
  height: 22px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 4px;
}

.input-checkbox:checked {
  background: #fff url("/stcontents/img/common/icon-checkbox-on.svg") no-repeat 0 center;
  background-size: contain;
}

.input-checkbox:disabled {
  background: #f5f5f5;
  cursor: default;
}

.bg-gray .input-checkbox:disabled {
  background: #dfdfdf;
}

.input-checkbox2 input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
  left: -99999px;
}
.input-checkbox2 span {
  padding-left: 28px;
  position: relative;
  font-size: 1.6rem;
  display: block;
  line-height: 1.4;
}
.input-checkbox2 span::before {
  content: '';
  display: block;
  width: 17px;
  height: 17px;
  border: 2px solid #757575;
  border-radius: 2px;
  background-color: #FFFFFF;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.input-checkbox2 span::after {
  content: '';
  display: none;
  width: 10px;
  height: 4px;
  border-left: 2px solid #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  position: absolute;
  left: 4px;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(-45deg);
}
.input-checkbox2 input[type="checkbox"]:checked + span::before {
  background-color: #0F0A64;
  border-color: #0F0A64;
}
.input-checkbox2 input[type="checkbox"]:checked +span::after {
  display: block;
}

.input-box .label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  /*margin-bottom: 6px;*/
  font-size: 1.6rem;
}

.input-box .label span {
  margin-right: 4px;
}

.input-box input {
  padding-bottom: 6px;
  border: none;
  border-bottom: 1px solid #C6C6C6;
  font-size: 1.4rem;
}

.input-box input::-webkit-input-placeholder {
  color: #C6C6C6;
}

.input-box input:-ms-input-placeholder {
  color: #C6C6C6;
}

.input-box input::-ms-input-placeholder {
  color: #C6C6C6;
}

.input-box input::placeholder {
  color: #C6C6C6;
}

.input-box .input-content {
  position: relative;
}

.input-box .input-content2 {
  position: relative;
  margin-bottom: 16px;
}

.input-box .input-content2 > input {
  width: 100%;
  padding: 0 12px;
  height: 48px;
  font-size: 1.4rem;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
}

.input-box .input-content2 > input::-webkit-input-placeholder {
  color: #C6C6C6;
}

.input-box .input-content2 > input:-ms-input-placeholder {
  color: #C6C6C6;
}

.input-box .input-content2 > input::-ms-input-placeholder {
  color: #C6C6C6;
}

.input-box .input-content2 > input::placeholder {
  color: #C6C6C6;
}

.input-box .input-content2.password > input {
  padding-right: 41px;
}

.input-box .input-content2.password .icon-eye {
  position: absolute;
  left: auto;
  right: 9px;
  /*top: 0;*/
  top: 12px;
  /*bottom: 0;*/
  bottom: auto;
  margin: auto;
}

.input-box .input-content2.icon-mail::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("/stcontents/img/common/icon-mail.svg");
  position: absolute;
  left: 9px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.input-box .input-content2.icon-mail > input {
  padding-left: 41px;
  padding-right: 41px;
}

.input-box .input-content2.icon-lock::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("/stcontents/img/common/icon-lock.svg");
  position: absolute;
  left: 9px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.input-box .input-content2.icon-lock > input {
  padding-left: 41px;
}

.input-box .input-content2.icon-number::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("/stcontents/img/common/icon-number.svg");
  position: absolute;
  left: 9px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.input-box .input-content2.icon-number > input {
  padding-left: 41px;
}

.input-box .input-content2.error {
  margin-bottom: 4px;
}

.input-box .input-content2.error > input {
  border-color: #ce0000;
}

.input-box .input-content2.error + .error-text {
  display: block;
  color: #ce0000;
  margin-bottom: 16px;
}

.input-box .icon-eye {
  position: absolute;
  z-index: 2;
  left: 316px;
}

.input-box .input-error {
  border-bottom: 1px solid #CE0000;
}

.input-box .text-box {
  max-width: 100%;
  padding: 13px 12px;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
  -webkit-appearance: none;
}

.input-box .text-box-error {
  border: 1px solid #CE0000;
}

.input-box .btn-submit {
  background: #0F0A64;
  padding: 14px 16px;
  border: none;
  border-radius: 4px;
  color: #fff;
  font-weight: bold;
  font-size: 1.4rem;
  cursor: pointer;
}

.input-box .btn-submit:hover {
  opacity: 0.7;
}

.input-box .btn-submit:disabled {
  opacity: .2;
}

.input-box .input-clear-wrap {
  position: relative;
}

.input-box .input-clear-wrap .input-clear-btn {
  display: inline-block;
  position: absolute;
  cursor: pointer;
  outline: none;
  content: '';
  width: 19px;
  height: 18px;
  background-image: url(/stcontents/img/common/icon-input-delete.svg);
  background-color: transparent;
  background-repeat: no-repeat;
  right: 18px;
  top: 0;
  bottom: 0;
  margin: auto;
  border: none;
}

.input-box .input-clear-wrap .js-input-clear:placeholder-shown + .input-clear-btn {
  display: none;
}

.apply .text-box, .apply-disabled .text-box {
  width: 493px;
  height: 56px;
  border-radius: 4px 0 0 4px;
  border-right: none;
}

.apply .text-box :disabled, .apply-disabled .text-box :disabled {
  background-color: #fff;
  border-color: #c6c6c6;
  color: #c6c6c6;
}

.apply .btn-submit, .apply-disabled .btn-submit {
  width: 113px;
  height: 56px;
  border-radius: 0 4px 4px 0;
  padding: 16px 24px;
}

.apply .btn-submit :disabled, .apply-disabled .btn-submit :disabled {
  border: 1px solid #c6c6c6;
  border-left: none;
}

.apply .btn-disabled-gray, .apply-disabled .btn-disabled-gray {
  width: 113px;
  height: 56px;
  border: 1px solid #c6c6c6;
  border-left: none;
  border-radius: 0 4px 4px 0;
  padding: 15px 24px;
  font-size: 1.6rem;
}

.apply-disabled .text-box {
  cursor: default;
  pointer-events: none;
  background-color: #fff;
}

@media (min-width: 768px) {
  .input-checkbox,
  .input-radio {
    width: 22px;
    height: 22px;
    margin-right: 8px;
  }
  .input-box .label {
    margin-bottom: 8px;
    /*font-size: 2rem;*/
    font-size: 1.6rem;
  }
  .input-box .label span {
    margin-right: 8px;
  }
  .input-box input {
    padding-bottom: 8px;
    font-size: 1.6rem;
    border-width: 2px;
  }
  .input-box .input-error {
    border-width: 2px;
  }
  .input-box .text-box-min {
    padding: 13px 12px;
    font-size: 1.4rem;
  }
  .input-box .btn-submit {
    padding: 16px 28px 16px;
    font-size: 1.6rem;
  }
}

@media (max-width: 767px) {
  .input-box {
    margin-bottom: 16px;
  }
  .input-box .input-content2 {
    position: relative;
  }
  .input-box .input-content2 > input {
    width: 100%;
    padding: 0 12px;
    height: 48px;
    font-size: 1.4rem;
    border: 1px solid #C6C6C6;
    border-radius: 4px;
  }
  .input-box .input-content2 > input::-webkit-input-placeholder {
    color: #C6C6C6;
  }
  .input-box .input-content2 > input:-ms-input-placeholder {
    color: #C6C6C6;
  }
  .input-box .input-content2 > input::-ms-input-placeholder {
    color: #C6C6C6;
  }
  .input-box .input-content2 > input::placeholder {
    color: #C6C6C6;
  }
  .input-box .input-content2.password > input {
    padding-right: 41px;
  }
  .input-box .input-content2.password .icon-eye {
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    left: auto;
    right: 9px;
    top: 14px;
    margin: auto;
    cursor: pointer;
  }
  .input-box .input-content2.icon-mail::before {
    width: 16px;
    height: 16px;
    background-size: 100%;
    left: 8px;
  }
  .input-box .input-content2.icon-mail > input {
    padding-left: 32px;
  }
  .input-box .input-content2.icon-lock::before {
    width: 16px;
    height: 16px;
    background-size: 100%;
    left: 8px;
  }
  .input-box .input-content2.icon-lock > input {
    padding-left: 32px;
  }
  .input-box .input-content2.icon-number::before {
    width: 16px;
    height: 16px;
    background-size: 100%;
    left: 8px;
  }
  .input-box .input-content2.icon-number > input {
    padding-left: 32px;
  }
  .input-box .input-content2.error > input {
    border-color: #ce0000;
  }
  .input-box .input-content2.error + .error-text {
    display: block;
    color: #ce0000;
    margin-top: 4px;
  }
  .input-box .js-radio-acd-content-b .input-content2 {
    max-width: 155px;
  }
  .apply, .apply-disabled {
    width: 100%;
  }
  .apply .text-box, .apply-disabled .text-box {
    width: calc(100% - 77px) !important;
    height: 48px;
    padding: 8px;
    border-radius: 4px 0 0 4px;
    border-right: none;
  }
  .apply .btn-submit, .apply-disabled .btn-submit {
    width: 77px;
    height: 48px;
    padding: 2px 8px;
    font-size: 1.4rem;
  }
  .apply .btn-disabled-gray, .apply-disabled .btn-disabled-gray {
    width: 77px;
    height: 48px;
    padding: 2px 8px;
    font-size: 1.4rem;
  }
  .input-checkbox2 span {
    padding: 4px 12px;
    background: #FFFFFF;
    font-size: 1.4rem;
    border-radius: 100px;
    border: 1px solid #FFFFFF;
  }
  .input-checkbox2 span::before,
  .input-checkbox2 span::after {
    display: none;
  }
  .input-checkbox2 input[type="checkbox"]:checked + span {
    background: #F3F8FD;
    border-color: #0F0A64;
  }
  .input-checkbox2 input[type="checkbox"]:checked +span::after {
    display: none;
  }
}

.form-validation .btn-target.disabled,
.member-form-validation .btn-target.disabled {
  opacity: .2;
  pointer-events: none;
}

.form-validation .on .input-error-word,
.member-form-validation .on .input-error-word {
  display: block;
  white-space: nowrap;
}

.form-validation .on input,
.member-form-validation .on input {
  border: 1px solid #CE0000;
}

.form-validation .on .input-radio,
.member-form-validation .on .input-radio {
  background: url(/stcontents/img/common/icon-radio-error.svg) no-repeat 0 center;
  background-size: contain;
  width: 20px;
  height: 20px;
  margin-left: 1px;
}

.form-validation .on .input-radio:checked,
.member-form-validation .on .input-radio:checked {
  background: url(/stcontents/img/common/icon-radio-on-checked.svg) no-repeat 0 center;
  background-size: contain;
}

.form-validation .no-validate input,
.member-form-validation .no-validate input {
  border-color: #C6C6C6 !important;
}

.form-validation .js-notice-text,
.member-form-validation .js-notice-text {
  display: none;
}

.form-validation .alert-baloon,
.member-form-validation .alert-baloon {
  display: none !important;
  margin-bottom: 40px;
}

.form-validation .alert-baloon .list,
.member-form-validation .alert-baloon .list {
  background: #fff;
  max-width: 400px;
  position: relative;
  overflow: hidden;
  padding: 5px 18px 7px;
  border-radius: 50px;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
  cursor: pointer;
}

.form-validation .alert-baloon .list:after,
.member-form-validation .alert-baloon .list:after {
  width: 6px;
  height: 6px;
  content: "";
  display: block;
  position: absolute;
  top: 45%;
  right: 18px;
  border-top: 2px solid #CE0000;
  border-right: 2px solid #CE0000;
  -webkit-transform: rotate(-45deg) translateY(-30%);
          transform: rotate(-45deg) translateY(-30%);
}

.form-validation .alert-baloon .list:before,
.member-form-validation .alert-baloon .list:before {
  width: 2px;
  height: 10px;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 23px;
  margin-top: -4px;
  border-right: 2px solid #CE0000;
}

.form-validation .alert-baloon .list span,
.member-form-validation .alert-baloon .list span {
  width: 100%;
  display: none;
  position: relative;
  z-index: 1;
}

.form-validation .alert-baloon .list span:only-child,
.member-form-validation .alert-baloon .list span:only-child {
  padding: 3px 0;
}

.form-validation .alert-baloon .list span:nth-of-type(-n+2),
.member-form-validation .alert-baloon .list span:nth-of-type(-n+2) {
  display: block;
}

.form-validation .alert-baloon .list span span span:before,
.form-validation .alert-baloon .list span div:before,
.member-form-validation .alert-baloon .list span span span:before,
.member-form-validation .alert-baloon .list span div:before {
  content: "※";
}

.form-validation .alert-baloon .list .more,
.member-form-validation .alert-baloon .list .more {
  display: none;
  position: absolute;
  top: 22px;
  right: 36px;
  font-weight: bold;
  text-align: right;
}

.form-validation .alert-baloon .list .more span,
.member-form-validation .alert-baloon .list .more span {
  width: auto;
  display: inline;
}

.form-validation .alert-baloon .list.on a,
.member-form-validation .alert-baloon .list.on a {
  display: block;
  margin-bottom: 4px;
}

.form-validation .alert-baloon .list.on .more,
.member-form-validation .alert-baloon .list.on .more {
  display: none !important;
}

.form-validation .alert-baloon .input-error-word,
.member-form-validation .alert-baloon .input-error-word {
  display: block;
  padding-right: 70px;
}

.form-validation .alert-baloon .input-error-word .add,
.member-form-validation .alert-baloon .input-error-word .add {
  display: none !important;
}

.form-validation .input-box .select-dropdown-search .search-area input,
.member-form-validation .input-box .select-dropdown-search .search-area input {
  border-color: #c6c6c6;
}

.form-validation .input-box-birth > div,
.form-validation .input-box-checkin > div,
.member-form-validation .input-box-birth > div,
.member-form-validation .input-box-checkin > div {
  width: 68px;
  height: 48px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 8px;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
  margin-bottom: 4px;
  color: #C6C6C6;
  text-align: center;
}

@media (min-width: 768px) {
  .form-validation .input-box-birth > div:first-of-type,
  .form-validation .input-box-checkin > div:first-of-type,
  .member-form-validation .input-box-birth > div:first-of-type,
  .member-form-validation .input-box-checkin > div:first-of-type {
    width: 90px;
  }
}

.form-validation .input-box-birth > div:last-of-type,
.form-validation .input-box-checkin > div:last-of-type,
.member-form-validation .input-box-birth > div:last-of-type,
.member-form-validation .input-box-checkin > div:last-of-type {
  margin-right: 0;
}

.form-validation .input-box-birth > div.fill,
.form-validation .input-box-checkin > div.fill,
.member-form-validation .input-box-birth > div.fill,
.member-form-validation .input-box-checkin > div.fill {
  border-color: #c6c6c6 !important;
}

.form-validation .input-box-birth > div input,
.form-validation .input-box-checkin > div input,
.member-form-validation .input-box-birth > div input,
.member-form-validation .input-box-checkin > div input {
  padding: 0 0;
  text-align: center;
  color: #333;
  border: none !important;
}

.form-validation .input-box-birth > div.focus,
.form-validation .input-box-checkin > div.focus,
.member-form-validation .input-box-birth > div.focus,
.member-form-validation .input-box-checkin > div.focus {
  border: 1px solid #0F0A64;
}

.form-validation .input-box-birth > div.on,
.form-validation .input-box-checkin > div.on,
.member-form-validation .input-box-birth > div.on,
.member-form-validation .input-box-checkin > div.on {
  border-color: #CE0000;
}

.form-validation .input-box-birth.on > div,
.form-validation .input-box-checkin.on > div,
.member-form-validation .input-box-birth.on > div,
.member-form-validation .input-box-checkin.on > div {
  border-color: #CE0000;
}

.form-validation .anniversary-input > div,
.member-form-validation .anniversary-input > div {
  width: 68px;
  border-color: #c6c6c6 !important;
}

.form-validation .anniversary-input > div input:first-of-type,
.member-form-validation .anniversary-input > div input:first-of-type {
  width: 20px !important;
}

.form-validation .mypage-btn-double,
.member-form-validation .mypage-btn-double {
  margin-top: 60px;
}

.form-validation .input-box .password,
.member-form-validation .input-box .password {
  max-width: 343px;
}

.form-validation .js-dropdown .select-frame,
.member-form-validation .js-dropdown .select-frame {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.form-validation .input-hint,
.member-form-validation .input-hint {
  display: none;
}

.form-validation .input-hint.active,
.member-form-validation .input-hint.active {
  display: block;
}

.form-validation input:-webkit-autofill,
.member-form-validation input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 300px #fff inset;
}

.form-validation .float-bar-fix,
.member-form-validation .float-bar-fix {
  -webkit-transform: translateY(0) !important;
          transform: translateY(0) !important;
}

.form-validation a.btn-target.no-disabled,
.member-form-validation a.btn-target.no-disabled {
  background: #0f0a64;
  border: 1px solid #0f0a64;
  pointer-events: auto;
}

@media (min-width: 768px) {
  .form-validation .alert-baloon .list,
  .member-form-validation .alert-baloon .list {
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .form-validation .phone .js-dropdown.js-half-modal-trigger,
  .member-form-validation .phone .js-dropdown.js-half-modal-trigger {
    width: auto !important;
  }
  .form-validation .alert-baloon .list .more,
  .form-validation .alert-baloon .input-error-word,
  .member-form-validation .alert-baloon .list .more,
  .member-form-validation .alert-baloon .input-error-word {
    font-size: 1rem;
  }
  .reservation .member-form-validation .reserve-float-bar {
    box-shadow: 0 0 8px rgba(0,0,0,0.15);
  }
}

@media (max-width: 360px) {
  .form-validation .on .input-error-word,
  .member-form-validation .on .input-error-word {
    white-space: normal;
  }
}

/*
  Grid
*/
.grid-1,
.grid-2,
.grid-2-left,
.grid-2-right,
.grid-3,
.grid-4,
.grid-5,
.grid-6 {
  display: block;
}

.grid-1 > *,
.grid-2 > *,
.grid-2-left > *,
.grid-2-right > *,
.grid-3 > *,
.grid-4 > *,
.grid-5 > *,
.grid-6 > * {
  width: 100%;
  margin-bottom: 16px;
}

@media (min-width: 768px) {
  .grid-1,
  .grid-2,
  .grid-2-left,
  .grid-2-right,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .grid-2 > * {
    width: 48.7%;
  }
  .grid-2-left > *:first-child {
    width: 65%;
  }
  .grid-2-left > *:last-child {
    width: 32.4%;
  }
  .grid-2-right > *:first-child {
    width: 32.4%;
  }
  .grid-2-right > *:last-child {
    width: 65%;
  }
  .grid-3 > * {
    width: 48.7%;
  }
  .grid-4 > * {
    width: 48.7%;
  }
  .grid-5 > * {
    width: 48.7%;
  }
  .grid-6 > * {
    width: 48.7%;
  }
}

@media (min-width: 1024px) {
  .grid-3 > * {
    width: 32%;
  }
  .grid-4 > * {
    width: 24%;
  }
  .grid-5 > * {
    width: 19%;
  }
  .grid-6 > * {
    width: 16%;
  }
}

/*=============================================================================
  searchBox 基本
=============================================================================*/
.searchBox {
  position: relative;
  display: table;
  table-layout: fixed;
  height: 70px;
}

.searchBox .box {
  display: table-cell;
  vertical-align: middle;
  background-color: #fff;
  cursor: pointer;
  overflow: hidden;
  height: 68px;
  cursor: pointer;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.searchBox .box .reset-btn {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.searchBox .box.area {
  display: table-cell;
}

.searchBox .box.area.unset .box-name {
  display: block;
}

.searchBox .box.area .box-name {
  display: none;
}

.searchBox .box.checkin-out {
  display: table-cell;
  position: relative;
}

.searchBox .box.checkin-out.unset .box-name {
  display: block;
}

.searchBox .box.checkin-out .box-name {
  display: none;
}

.searchBox .box.peopleroom {
  display: table-cell;
  position: relative;
}

.searchBox .box.peopleroom.unset .box-name {
  display: block;
}

.searchBox .box.peopleroom.unset .main {
  color: #757575;
}

.searchBox .box.peopleroom .box-name {
  display: none;
}

.searchBox .searchBtn {
  display: table-cell;
  width: 120px;
}

.searchBoxArea {
  position: absolute;
  top: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 10;
}

.searchBoxArea.fixed {
  background: #fff;
  position: fixed;
  width: 100%;
  top: 0;
  padding: 8px;
  z-index: 30;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
}

.searchBoxArea .searchBox {
  width: calc(100vw - 32px);
  height: 48px;
  border-radius: 4px;
  margin: 0 auto;
  overflow: hidden;
}

.searchBoxArea .searchBox .box {
  display: none;
  height: 48px;
  border-top: 1px solid #0F0A64;
  border-bottom: 1px solid #0F0A64;
}

.searchBoxArea .searchBox .box:first-child {
  border-left: 1px solid #0F0A64;
  border-radius: 4px 0 0 4px;
}

.searchBoxArea .searchBox .box.area {
  display: table-cell;
  width: auto;
}

.searchBoxArea .searchBox .box.area .box-inner {
  position: relative;
  padding-right: 32px;
}

.searchBoxArea .searchBox .box.area .box-inner .reset-btn {
  position: absolute;
}

.searchBoxArea .searchBox .box.area .box-inner .reset-btn.unset a {
  display: none;
}

.searchBoxArea .searchBox .box.area .box-inner .reset-btn a {
  display: block;
  font-size: 1.6rem;
  color: #757575 !important;
  background-color: transparent;
  padding: 0;
  padding-left: 28px;
  position: relative;
}

.searchBoxArea .searchBox .box.area .box-inner .reset-btn a::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("../img/common/icon-reset.svg");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.searchBoxArea .searchBox .box.checkin-out {
  width: 34%;
}

.searchBoxArea .searchBox .box.area .box-inner .reset-btn,
.searchBoxArea .searchBox .box.checkin-out .box-inner .reset-btn {
  display: none;
}

.searchBoxArea .searchBox .box.area.focus .box-inner .reset-btn,
.searchBoxArea .searchBox .box.checkin-out.focus .box-inner .reset-btn {
  display: block;
}

.searchBoxArea .searchBox .box.peopleroom {
  width: 29%;
}

.searchBoxArea .searchBox .searchBtn {
  width: 48px;
  height: 100%;
}

.searchBoxArea .searchBox .searchBtn button {
  width: 100%;
  height: 48px;
  padding: 0;
}

.searchBoxArea .searchBox .unset {
  color: #757575;
}

.searchBoxArea .searchBox .box .sub {
  display: none;
  font-size: 1.1rem;
  color: #757575;
}

.sub-page .searchBoxArea {
  position: relative;
  top: inherit;
  left: inherit;
  -webkit-transform: none;
          transform: none;
}

.sub-page .searchBoxArea .searchBox {
  margin: 0 auto;
}

.sub-page .searchBoxArea.fixed {
  position: fixed;
  top: 0;
  left: 0;
}

.searchBox .box-inner {
  padding: 0 8px;
}

.searchBox .box-inner .box-name {
  width: 100%;
  margin-bottom: 2px;
  line-height: 1.5;
  font-size: 1.2rem;
  font-weight: bold;
  color: #333;
}

.searchBox .checkin-out .box-name {
  margin-bottom: -8px;
}

.searchBox .checkin-out .stay {
  margin-left: 16px;
  margin-bottom: 19px;
  display: none;
}

.searchBox .checkin-out .checkin-out-unselected {
  font-size: 1rem;
  color: #757575;
}

.searchBox .checkin-out .checkin-out-unselected::before {
  background: url(/stcontents/img/common/icon-calendar.svg) no-repeat center 0;
  background-size: 14px;
  content: "";
  display: block;
  width: 100%;
  height: 14px;
  margin-top: 4px;
  margin-bottom: 2px;
}

@media (min-width: 768px) {
  .bread-crumbs {
    padding: 8px 0 16px;
    font-size: 1.2rem;
  }
  .bread-crumbs a:after {
    margin: 0 8px;
  }
  .searchBoxArea {
    top: 80px;
  }
  .searchBoxArea .searchBox {
    max-width: none;
    width: 736px;
  }
  .searchBoxArea .searchBox .box {
    display: table-cell;
    height: 60px;
  }
  .searchBoxArea .searchBox .searchBtn {
    width: 60px;
  }
  .searchBoxArea .searchBox .searchBtn button {
    width: 60px;
    height: 60px;
    padding: 0;
  }
  .searchBoxArea .searchBox .box-inner {
    padding: 0 10px 0 24px;
  }
}

@media (min-width: 1024px) {
  .searchBoxArea .searchBox {
    width: 800px;
    height: 60px;
  }
  .searchBoxArea .searchBox .box.area {
    width: 48%;
  }
  .searchBoxArea .searchBox .box.checkin-out {
    width: 40%;
  }
  .searchBoxArea .searchBox .box.peopleroom {
    width: 30%;
  }
}

.searchBox .box.checkin-out.unset .box-inner {
  padding-right: 10px;
  -webkit-box-pack: unset;
  -webkit-justify-content: unset;
      -ms-flex-pack: unset;
          justify-content: unset;
}

.searchBox .box.checkin-out .box-inner {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0 24px;
  border-left: 1px solid #efefef;
  border-right: 1px solid #efefef;
  line-height: 1.4;
}

.searchBox .box.checkin-out .box-inner .unset {
  color: #757575;
}

.searchBox .box.checkin-out .box-inner .unset .main {
  color: inherit;
  font-size: 1.4rem;
}

.searchBox .box.checkin-out .box-inner .border {
  margin: 0 4px;
  color: #757575;
}

.searchBox .box.checkin-out .box-inner .reset-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.searchBox .box.checkin-out .box-inner .reset-btn.unset a {
  display: none;
}

.searchBox .box.checkin-out .box-inner .reset-btn a {
  font-size: 1.6rem;
  color: #757575 !important;
  background-color: transparent;
  padding: 0;
  padding-left: 28px;
  position: relative;
}

.searchBox .box.checkin-out .box-inner .reset-btn a::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("../img/common/icon-reset.svg");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.searchBoxArea .searchBox .box.area.selected .box-name,
.searchBoxArea .searchBox .box.peopleroom.selected .box-name {
  display: none;
}

.searchBoxArea .searchBox .box.area.selected .sub,
.searchBoxArea .searchBox .box.peopleroom.selected .sub {
  display: block;
}

.searchBoxArea .searchBox .box.area.selected.checkin-out .box-inner,
.searchBoxArea .searchBox .box.peopleroom.selected.checkin-out .box-inner {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}

.searchBoxArea .searchBox .box.area.selected.checkin-out .box-inner > div,
.searchBoxArea .searchBox .box.peopleroom.selected.checkin-out .box-inner > div {
  width: calc(50% - 20px);
}

.searchBoxArea .searchBox .box.area.selected.checkin-out .box-inner .border,
.searchBoxArea .searchBox .box.peopleroom.selected.checkin-out .box-inner .border {
  margin: 0 16px 0 8px;
}

.searchBox .box.peopleroom .box-inner {
  padding: 0 10px 0 24px;
}

.searchBox .box.meal .box-inner {
  padding: 0 10px 0 24px;
}

.searchBox .box .main {
  font-size: 1.3rem;
  color: #333;
  display: block;
}

.searchBox .box .main #searchTotalNumOfAdult,
.searchBox .box .main #searchTotalNumOfChild {
  margin-left: 4px;
}

/* エリアと食事のinputタグの設定 */
.searchBox .box input[type="text"] {
  border: none;
  line-height: 1.6;
  font-size: 1.4rem;
  width: 100%;
  background-color: transparent;
}

.searchBox .box input[type="text"]::-webkit-input-placeholder {
  font-size: 1.4rem;
}

.searchBox .box input[type="text"]:-ms-input-placeholder {
  font-size: 1.4rem;
}

.searchBox .box input[type="text"]::-ms-input-placeholder {
  font-size: 1.4rem;
}

.searchBox .box input[type="text"]::placeholder {
  font-size: 1.4rem;
}

.searchBox .box input[type="text"]:focus {
  outline: none;
}

.searchBox .box.area input[type="text"] {
  font-size: 1.6rem;
}

.searchBox .box.area input[type="text"]::-webkit-input-placeholder {
  font-size: 1.6rem;
}

.searchBox .box.area input[type="text"]:-ms-input-placeholder {
  font-size: 1.6rem;
}

.searchBox .box.area input[type="text"]::-ms-input-placeholder {
  font-size: 1.6rem;
}

.searchBox .box.area input[type="text"]::placeholder {
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .searchBox .box.area input[type="text"]::-webkit-input-placeholder {
    font-size: 1.2rem;
  }
  .searchBox .box.area input[type="text"]:-ms-input-placeholder {
    font-size: 1.2rem;
  }
  .searchBox .box.area input[type="text"]::-ms-input-placeholder {
    font-size: 1.2rem;
  }
  .searchBox .box.area input[type="text"]::placeholder {
    font-size: 1.2rem;
  }
}

.searchBox .box.area:hover,
.searchBox .box.checkin-out:hover,
.searchBox .box.meal:hover,
.searchBox .box.peopleroom:hover,
.searchBox .box.sort:hover {
  background: #f5f5f5 !important;
}

.searchBox .searchBtn button {
  vertical-align: middle;
  display: table-cell;
  width: 120px;
  font-size: 2rem;
  height: 70px;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 3px !important;
  border-bottom-right-radius: 3px !important;
  border-bottom-left-radius: 0 !important;
}

.searchBox .searchBtn button img {
  height: 24px;
  vertical-align: -5px;
  width: 24px;
}

.searchBox .searchBtn button.js-searchButton img {
  height: 17px;
  margin: 0 3px 0 0;
  vertical-align: -4px;
  width: 17px;
}

.searchBox .box.error {
  color: #990000;
  border: 3px solid #990000;
}

.searchBox .box.error input[type='text']:-ms-input-placeholder {
  color: #990000;
}

.searchBox .box.error input[type='text']::-ms-input-placeholder {
  color: #990000;
}

.searchBox .box.error input[type='text']::-webkit-input-placeholder {
  color: #990000;
}

.searchBox .box.error input[type='text']::placeholder {
  color: #990000;
}

.searchBox .box.error .box-inner {
  background: url("/stcontents/img/searchbox/icon-room-error.svg") no-repeat 8px 50%;
  background-size: 24px auto;
  padding-left: 40px;
}

/* ポップアップ */
.popup-position {
  display: none;
  width: 736px;
  position: absolute;
  top: 140px;
  left: calc(50% + 1px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #333;
  z-index: 10;
  pointer-events: none;
}

.search-result .popup-position {
  top: 68px;
}

.search-result .popup-position.fixed {
  top: 68px;
}

.search-result .btn-popup-close {
  background: url(/stcontents/img/common/icon-close-4.svg);
  left: auto;
  right: 14px;
}

.btn-popup-close {
  display: none;
  background: url(/stcontents/img/common/icon-arrow-left-black-2.svg) no-repeat center center;
  background-size: 9px;
  width: 30px;
  height: 30px;
  position: fixed;
  top: 10px;
  left: 8px;
  z-index: 42;
}

.btn-popup-close.right {
  background: url(/stcontents/img/common/icon-close-4.svg);
  left: auto;
  right: 14px;
}

.popup-suggest,
.popup-dateSelector,
.popup-peopleroom {
  display: none;
  -webkit-box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
  padding: 0 24px 0;
  z-index: 1;
  background: #fff;
  border: 1px solid #efefef;
  border-radius: 0 0 8px 8px;
  max-height: 460px;
  overflow-y: auto;
  pointer-events: auto;
}

.popup-suggest::-webkit-scrollbar,
.popup-dateSelector::-webkit-scrollbar,
.popup-peopleroom::-webkit-scrollbar {
  width: 0;
}

.popup-suggest {
  background: #fff;
  width: 550px;
  position: absolute;
  top: 0;
  left: 0;
  padding: 8px 24px 8px;
  border-radius: 0 0 8px 8px;
}

.popup-suggest .description {
  border-bottom: 1px solid #F5F5F5;
  padding-bottom: 10px;
  margin-bottom: 0;
  font-size: 12px;
}

.popup-suggest ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #F5F5F5;
}

.popup-suggest ul li:last-of-type {
  border: none;
}

.popup-suggest ul li.region a {
  background: url(/stcontents/img/common/icon-map.svg) no-repeat 4px 16px;
  background-size: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 32px;
}

.popup-suggest ul li.prefecture a {
  background: url(/stcontents/img/common/icon-hang.svg) no-repeat 40px 16px;
  background-size: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 64px;
}

.popup-suggest ul li.hotel a {
  background: url(/stcontents/img/common/icon-room-2.svg) no-repeat 4px 20px;
  background-size: 16px;
  padding-left: 32px;
}

.popup-suggest ul li.japan a {
  border-bottom: 1px solid #f5f5f5 !important;
}

.popup-suggest ul li a {
  width: 100%;
  padding: 12px 0;
  color: #333 !important;
  cursor: pointer;
}

.popup-suggest ul li a:hover {
  background-color: #F3F8FD;
}

.popup-suggest ul li:last-child a {
  border: none;
}

.popup-suggest ul li strong {
  font-weight: 900;
}

.popup-suggest ul li .num {
  padding-left: 8px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #757575;
}

.popup-suggest .area-words {
  display: none;
  border-bottom: 1px solid #f5f5f5;
}

.popup-peopleroom {
  position: absolute;
  top: 0;
  right: 1px;
}

.js-child-modalbox-detail .modalbox-container {
  display: block;
}

.js-child-modalbox-detail .select-dropdown {
  width: 100%;
}

.js-child-modalbox-detail .select-dropdown > span.select-frame {
  padding-left: 0;
}

.js-child-modalbox-detail .select-dropdown .dropdown-select-button {
  right: -16px;
}

.js-child-modalbox-detail .select-dropdown ul {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.js-child-modalbox-detail .select-dropdown ul li {
  padding-left: 16px;
  text-align: left;
}

.js-child-modalbox-detail .select-dropdown ul li:hover {
  background: #F3F8FD;
}

.js-child-modalbox-detail .js-dropdown .select-frame {
  color: #333;
  font-size: 1.4rem;
}

.js-child-modalbox-detail .js-dropdown .select-frame > span {
  font-size: 1.2rem;
}

.js-child-modalbox-detail .js-dropdown .dropdown-select-ul {
  position: static;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.js-child-modalbox-detail .js-dropdown .dropdown-select-ul > li {
  font-size: 1.4rem;
}

.js-child-modalbox-detail .js-dropdown .dropdown-select-ul > li:hover {
  background-color: #F3F8FD;
}

.js-child-modalbox-detail .js-dropdown .dropdown-select-ul > li + li {
  border-top: 1px solid #f5f5f5;
}

.js-child-modalbox-detail .js-dropdown .dropdown-select-ul > li > span {
  color: #333;
  font-size: 1.2rem;
}

@media (max-width: 767px) {
  .popup-suggest,
  .popup-dateSelector,
  .popup-peopleroom {
    max-height: 100%;
  }
  .js-child-modalbox-detail {
    padding-left: 50px;
  }
  .js-child-modalbox-detail .modalbox-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .js-child-modalbox-detail .modalbox-itemname {
    width: 76px;
  }
  .js-child-modalbox-detail .modalbox-select {
    width: calc(100% - 86px);
  }
  .popup-suggest,
  .popup-dateSelector,
  .popup-peopleroom {
    -webkit-box-shadow: unset;
            box-shadow: unset;
    border: none;
  }
  .popup-peopleroom {
    padding-bottom: 120px;
  }
  .popup-peopleroom .peopleroomArea {
    height: 100%;
    overflow-y: auto;
    font-size: 1.4rem;
  }
  .popup-suggest ul li.prefecture a {
    background-position: 35px 16px;
    padding-left: 60px;
  }
}

@media (max-width: 360px) {
  .js-child-modalbox-detail {
    padding-left: 8px;
  }
}

.popup-dateSelector {
  padding: 24px 32px;
  background-color: #fff;
  position: absolute;
  left: 1px;
  right: 1px;
  border-radius: 0 0 8px 8px;
}

.dateSelector .error-msg {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  color: #ce0000;
  font-size: 1.2rem;
  margin-bottom: 0;
}

.dateSelector .error-msg::before {
  content: '※';
  margin-right: 4px;
}

.dateSelector .arrow-left,
.dateSelector .arrow-right {
  width: 48px;
  height: 48px;
  display: block;
  color: transparent;
  text-indent: -99999px;
  position: absolute;
  top: -16px;
  left: 10px;
  z-index: 1;
}

.dateSelector .arrow-left.slick-disabled,
.dateSelector .arrow-right.slick-disabled {
  pointer-events: none;
}

.dateSelector .arrow-left.slick-disabled:before,
.dateSelector .arrow-right.slick-disabled:before {
  border-color: #c6c6c6;
}

.dateSelector .arrow-left:hover,
.dateSelector .arrow-right:hover {
  opacity: 0.4;
}

.dateSelector .arrow-left:before {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 15px;
  width: 18px;
  height: 18px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.dateSelector .arrow-right {
  right: 10px;
  left: auto;
}

.dateSelector .arrow-right:before {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  right: 15px;
  width: 18px;
  height: 18px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.calendar-area {
  margin-left: -25px;
  margin-right: -25px;
}

.calendar {
  padding: 0 25px;
}

.calendar .month {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}

.calendar table {
  width: 100%;
  table-layout: fixed;
  word-wrap: break-word;
}

.calendar table tr {
  border-bottom: 2px solid #f5f5f5;
}

.calendar table tr th, .calendar table tr td {
  text-align: center;
  padding: 2px 0;
}

.calendar table tr th:last-child, .calendar table tr td:last-child {
  color: #ce0000;
}

.calendar table tr th:nth-last-child(2), .calendar table tr td:nth-last-child(2) {
  color: #06c;
}

.calendar table tr th {
  height: 34px;
  font-size: 1.2rem;
}

.calendar table tr td .date-btn {
  height: 40px;
}

.calendar table tr td .date-btn button {
  height: 100%;
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  background-color: transparent;
  font-size: 1.6rem;
  padding: 8px 0;
}

.calendar table tr td .date-btn button .stay-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  justify-self: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.2rem;
  margin-top: 8px;
  color: #333;
}

.calendar table tr td .date-btn button .stay-price-none {
  display: none;
}

.calendar table tr:last-child {
  border-bottom: none;
}

.calendar .stay-date .date-btn {
  background-color: #4F68C2;
}

.calendar .stay-date .date-btn button {
  color: #fff;
}

.calendar .stay-date .date-btn button .stay-price {
  display: none;
}

.calendar .stay-date .date-btn button .stay-price-none {
  display: none !important;
}

.calendar .stay-date.checkin-date .date-btn {
  border-radius: 4px 0 0 4px;
  overflow: hidden;
}

.calendar .stay-date.checkin-date .date-btn button {
  background-color: #0F0A64;
}

.calendar .stay-date.checkin-date .date-btn button .stay-price-none {
  display: none !important;
}

.calendar .stay-date.checkout-date .date-btn {
  border-radius: 0 4px 4px 0;
  overflow: hidden;
}

.calendar .stay-date.checkout-date .date-btn button {
  background-color: #0F0A64;
}

.calendar .passed-day .date-btn,
.calendar .disabled .date-btn,
.calendar .last-day .date-btn,
.calendar .full-day .date-btn,
.calendar .future-day .date-btn {
  color: #c6c6c6;
}

.calendar .passed-day .date-btn button,
.calendar .disabled .date-btn button,
.calendar .last-day .date-btn button,
.calendar .full-day .date-btn button,
.calendar .future-day .date-btn button {
  cursor: none;
  pointer-events: none;
}

.calendar .passed-day .date-btn button .stay-price,
.calendar .disabled .date-btn button .stay-price,
.calendar .last-day .date-btn button .stay-price,
.calendar .full-day .date-btn button .stay-price,
.calendar .future-day .date-btn button .stay-price {
  color: #c6c6c6;
  display: none;
}

.calendar .passed-day .date-btn button .stay-price-none,
.calendar .disabled .date-btn button .stay-price-none,
.calendar .last-day .date-btn button .stay-price-none,
.calendar .full-day .date-btn button .stay-price-none,
.calendar .future-day .date-btn button .stay-price-none {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  justify-self: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.calendar .holiday .date-btn {
  color: #ce0000;
}

.calendar .holiday.stay-date .date-btn {
  color: #fff;
}

.calendar .holiday.disabled .date-btn, .calendar .holiday.full-day .date-btn, .calendar .holiday.future-day .date-btn {
  color: #c6c6c6;
}

.calendar .holiday.disabled .date-btn button, .calendar .holiday.full-day .date-btn button, .calendar .holiday.future-day .date-btn button {
  cursor: none;
  pointer-events: none;
}

.calendar .holiday.last-day .date-btn, .calendar .holiday.last-day.full-day .date-btn, .calendar .holiday.last-day.future-day .date-btn {
  color: #c6c6c6;
}

.calendar .holiday.last-day .date-btn button, .calendar .holiday.last-day.full-day .date-btn button, .calendar .holiday.last-day.future-day .date-btn button {
  cursor: none;
  pointer-events: none;
}

.index .anchor-bar {
  display: flex;
  position: absolute;
  top: 64px;
  left: 0;
  width: 100%;
  padding: 0 16px 10px;
  overflow-x: auto;
  align-items: center;
  white-space: nowrap;
}
.index .modal-on .anchor-bar {
  display: none;
}
.index .anchor-bar a {
  background: #fff;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 8px;
  padding: 0 14px;
  border-radius: 40px;
  font-weight: bold;
  font-size: 1.2rem;
  color: #0F0A64 !important;
  -webkit-box-shadow: 0 3px 6px rgb(0 0 0 / 15%);
  box-shadow: 0 3px 6px rgb(0 0 0 / 15%);
  border: 1px solid #f5f5f5;
  text-align: center;
}
.index .anchor-bar a.active {
  background: #0F0A64;
  color: #fff !important;
}
.index .anchor-bar::-webkit-scrollbar {
 display: none;
}
.pointer-none {
  pointer-events: none;
}

@media (min-width: 1024px) {
  .popup-position {
    width: 800px;
  }
  .popup-peopleroom {
    width: 254px;
  }
}

@media (min-width: 768px) {
  .popup-position.fixed {
    position: fixed;
    top: 68px;
    z-index: 30;
  }
  .popup-position.fixed .popup-suggest,
  .popup-position.fixed .popup-peopleroom {
    max-height: calc(100vh - 90px);
    overflow-y: auto;
  }
  .detail-page .popup-position.fixed .popup-peopleroom {
    top: -6px;
  }
  .date-btn button:hover {
    color: #fff;
    background-color: #554B98 !important;
    border-radius: 4px;
  }
  .date-btn button:hover .stay-price {
    color: #fff !important;
  }
  .index .anchor-bar {
    max-width: 800px;
    top: 72px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 0 30px;
  }
  .index .fixed .anchor-bar {
    display: flex;
    top: 84px;
  }
  .index .anchor-bar a:hover {
    background: #0F0A64;
    color: #fff !important;
  }
}

@media (max-width: 1023px) {
  .index .anchor-bar {
    max-width: 736px;
  }
}

@media (max-width: 767px) {
  .index .key-visual {
    height: 500px;
  }
  .index .searchBoxArea .searchBox {
    background: #fff;
    width: calc(100vw - 32px);
    height: 48px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 4px;
    border: 1px solid #0F0A64;
  }
  .index .searchBoxArea .searchBox.focus {
    border-color: #0F0A64;
  }
  .index .searchBoxArea .searchBox .box.area {
    width: 100%;
    height: auto;
    border: none;
    border-radius: 0;
  }
  .index .searchBoxArea .searchBox .box.area:hover {
    background: none !important;
  }
  .index .searchBoxArea .searchBox .searchBtn {
    width: 24px;
  }
  .index .searchBoxArea .searchBox .searchBtn.hide {
    display: none;
  }
  .index .searchBoxArea .searchBox .searchBtn button {
    background: transparent url(/stcontents/img/common/icon-search.svg) no-repeat 8px center;
    width: 100%;
    border: none;
  }
  .index .searchBoxArea .searchBox .searchBtn button img {
    display: none;
  }
  .index .searchBoxArea .searchBox .searchBtn:hover {
    border: none;
  }
  .searchBoxArea.modal-on {
    background: #fff;
    position: fixed;
    top: 0;
    padding: 32px 0 0;
    z-index: 41;
  }
  .searchBoxArea.modal-on .searchBox {
    width: calc(100vw - 32px);
    height: 48px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #C6C6C6;
  }
  .searchBoxArea.modal-on .searchBox.focus {
    border-color: #0F0A64;
  }
  .searchBoxArea.modal-on .searchBox .box.area {
    width: 100%;
    height: auto;
    border: none;
    border-radius: 0;
  }
  .searchBoxArea.modal-on .searchBox .box.area:hover {
    background: none !important;
  }
  .searchBoxArea.modal-on .searchBox .searchBtn {
    width: 20px;
  }
  .searchBoxArea.modal-on .searchBox .searchBtn.hide {
    display: none;
  }
  .searchBoxArea.modal-on .searchBox .searchBtn button {
    background: transparent url(/stcontents/img/common/icon-search.svg) no-repeat 4px center;
    width: 100%;
    border: none;
  }
  .searchBoxArea.modal-on .searchBox .searchBtn button img {
    display: none;
  }
  .searchBoxArea.modal-on .searchBox .searchBtn:hover {
    border: none;
  }
  .searchBoxArea.modal-on ~ .popup-position .popup-suggest,
  .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom {
    overflow-y: hidden;
    border-radius: 0;
  }
  .keywordSelectListArea {
    height: 100%;
    overflow-y: auto;
    margin-left: -16px;
    margin-right: -16px;
    padding: 0 16px 64px;
  }
  .keywordSelectListArea .japan {
    display: none;
  }
  .suggest-panel-foot {
    background-color: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 8px 16px 16px;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
  }
  .detail-page .searchBoxArea.modal-on,
  .sale-page .searchBoxArea.modal-on,
  .search-from-area .searchBoxArea.modal-on {
    position: relative;
    width: 100%;
    background: #fff;
    top: -20px;
    bottom: auto;
    left: 0;
    padding: 0;
  }
  .detail-page .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom,
  .sale-page .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom,
  .search-from-area .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom {
    padding: 26px 24px 120px;
    width: 100%;
  }
  .detail-page .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom .peopleroomArea,
  .sale-page .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom .peopleroomArea,
  .search-from-area .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom .peopleroomArea {
    height: 100%;
    overflow-y: auto;
  }
  .search-result .searchBoxArea {
    position: static;
    left: 0;
    -webkit-transform: none;
            transform: none;
  }
  .search-result .searchBoxArea.modal-on {
    position: fixed;
    width: 100%;
    background: #fff;
    bottom: auto;
  }
  .search-result .searchBoxArea.modal-on.fixed {
    margin-top: -26px;
  }
  .search-result .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom {
    padding: 26px 0 120px;
    width: 100%;
  }
  .search-result .searchBoxArea.modal-on ~ .popup-position .popup-peopleroom .peopleroomArea {
    height: 100%;
    padding: 0 24px;
    overflow-y: auto;
  }
  .search-result .searchBox {
    position: static;
  }
  .popup-position {
    width: 100%;
    height: 100%;
    top: 0 !important;
    left: 0;
    right: 0;
    bottom: 0;
    position: fixed;
    -webkit-transform: none;
            transform: none;
    z-index: 40;
  }
  .popup-suggest,
  .popup-peopleroom {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    overflow-y: auto;
    padding: 110px 16px 0;
    border-radius: 0;
  }
  .popup-suggest {
    padding-top: 80px;
  }
  .searchBox .box.area.unset .box-name {
    display: none;
  }
  .searchBox .box.checkin-out .box-inner .unset .main {
    font-size: 1.2rem;
  }
  .checkin-sp,
  .checkout-sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .checkin-sp .sub,
  .checkout-sp .sub {
    margin-left: 8px;
  }
  .popup-dateSelector {
    position: fixed;
    display: block;
    padding: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0 16px 64px;
    overflow-y: auto;
    display: none;
    border-radius: 0;
    touch-action: manipulation;
  }
  .popup-dateSelector.is-show {
    display: block;
  }
  .popup-dateSelector.scrolling .panel-head {
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  }
  .panel-head {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 45px 16px 0;
    margin-left: -16px;
    margin-right: -16px;
    background-color: #fff;
    -webkit-transition: -webkit-box-shadow .25s;
    transition: -webkit-box-shadow .25s;
    transition: box-shadow .25s;
    transition: box-shadow .25s, -webkit-box-shadow .25s;
  }
  .panel-head .btn-back {
    background: url(/stcontents/img/common/icon-arrow-left-black-2.svg) no-repeat center center;
    background-size: auto;
    width: 30px;
    height: 30px;
    position: fixed;
    top: 10px;
    left: 8px;
    z-index: 1;
  }
  .panel-head .date-box {
    height: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 16px;
    border-bottom: 1px solid #c6c6c6;
    padding: 6px 22px 0 28px;
  }
  .panel-head .date-box .checkin,
  .panel-head .date-box .checkout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .panel-head .date-box .unset {
    color: #757575;
  }
  .panel-head .date-box .unset .sub {
    display: none;
  }
  .panel-head .date-box .sub {
    color: #757575;
    font-size: 1.2rem;
    margin-left: 4px;
  }
  .panel-head .date-box .stay {
    margin-left: auto;
    margin-right: 48px;
  }
  .panel-head .date-box .border {
    margin: 0 16px;
    color: #757575;
  }
  .panel-head .date-box .reset-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    right: 12px;
  }
  .panel-head .date-box .reset-btn.unset {
    display: none;
  }
  .panel-head .date-box .reset-btn a {
    font-size: 1.6rem;
    color: #757575 !important;
    background-color: transparent;
    padding: 0;
    padding-left: 28px;
    position: relative;
  }
  .panel-head .date-box .reset-btn a::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("../img/common/icon-reset.svg");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .calendar-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    margin-left: 0;
    margin-right: 0;
  }
  .calendar-head {
    width: 100%;
    height: 34px;
    font-size: 1.2rem;
  }
  .calendar-head tr > th {
    text-align: center;
    padding: 6px;
  }
  .calendar-head tr > th:last-child {
    color: #ce0000;
  }
  .calendar-head tr > th:nth-last-child(2) {
    color: #06c;
  }
  .calendar {
    margin-top: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .calendar:last-child {
    margin-bottom: 24px;
  }
  .calendar .month {
    position: -webkit-sticky;
    position: sticky;
    top: 118px;
    padding: 24px 0 8px;
    background-color: #fff;
    margin-bottom: 40px;
  }
  .calendar table {
    margin-top: -40px;
  }
  .calendar table thead {
    display: none;
  }
  .calendar table tbody tr td .date-btn button .stay-price {
    margin-top: 2px;
  }
  .btn-area {
    background-color: #fff;
    width: auto;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 64px;
    padding: 0 16px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
  }
  .btn-area.unset {
    display: none;
  }
  .btn-area > a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .popup-peopleroom-foot {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 16px;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
  }
  .popup-peopleroom-foot .peopleroom-sum {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 12px;
  }
  .popup-peopleroom-foot .peopleroom-sum-ttl {
    margin-bottom: 0;
    font-size: 1.2rem;
  }
  .popup-peopleroom-foot .peopleroom-sum-detail {
    font-size: 1.2rem;
  }

  .index .searchBoxArea {
    width: 100%;
  }
}

/*
  SP検索ハブページ
*/
.sp-hub-page {
  background: #fff;
}

.sp-hub-page main {
  padding-bottom: 117px;
}

.sp-hub-page .searchBoxArea.modal-on {
  padding-top: 48px;
  position: relative;
  width: 100%;
  top: inherit;
  left: inherit;
  -webkit-transform: none;
          transform: none;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox {
  width: calc(100vw - 32px);
  height: auto;
  display: block;
  border: none;
  padding-bottom: 16px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .searchBtn {
  display: none;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box-inner {
  padding: 0 16px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box-inner .box-name {
  display: none !important;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .input-name {
  margin-top: 24px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.checkin-out .box-inner {
  padding: 0 16px;
  border: none;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"],
.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"]::-webkit-input-placeholder,
.sp-hub-page .searchBoxArea.modal-on .searchBox .box .main {
  font-size: 1.6rem;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"],
.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"]:-ms-input-placeholder,
.sp-hub-page .searchBoxArea.modal-on .searchBox .box .main {
  font-size: 1.6rem;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"],
.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"]::-ms-input-placeholder,
.sp-hub-page .searchBoxArea.modal-on .searchBox .box .main {
  font-size: 1.6rem;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"],
.sp-hub-page .searchBoxArea.modal-on .searchBox .box input[type="text"]::placeholder,
.sp-hub-page .searchBoxArea.modal-on .searchBox .box .main {
  font-size: 1.6rem;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.area,
.sp-hub-page .searchBoxArea.modal-on .searchBox .box.checkin-out,
.sp-hub-page .searchBoxArea.modal-on .searchBox .peopleroom {
  display: block;
  width: 100%;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.area {
  border-radius: 4px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.area input {
  height: 46px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.area.focus {
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  border-bottom-color: #0f0a64;
  height: 48px;
}

.sp-hub-page .searchBoxArea.modal-on .searchBox .box.area.focus .box-inner {
  padding: 0 32px 0 8px;
}

.sp-hub-page .searchBox .box.checkin-out .box-inner {
  -webkit-box-pack: unset;
  -webkit-justify-content: unset;
      -ms-flex-pack: unset;
          justify-content: unset;
}

.sp-hub-page .searchBox .box.checkin-out .box-inner .border {
  margin: 0 20px;
}

.sp-hub-page .btn-popup-close {
  background: none;
  display: block !important;
  position: absolute;
  left: inherit;
  right: 16px;
}

.sp-hub-page .btn-popup-close img {
  width: 30px;
}

.sp-hub-page .popup-position {
  display: block !important;
  height: auto;
  position: relative;
  top: inherit;
  left: inherit;
}

.sp-hub-page .popup-suggest {
  top: inherit;
  position: relative !important;
  margin-bottom: 50px;
  padding: 0px 16px 8px;
}

.sp-hub-page .popup-peopleroom {
  display: block !important;
  width: 100%;
  position: relative;
  border: none;
  padding: 0 16px;
  border-radius: 0;
}

.sp-hub-page .input-box input[type='number'] {
  font-size: 2rem;
}

.sp-hub-page .float-bar {
  z-index: 20;
}

.sp-hub-page .peopleroomArea {
  border-top: 4px solid #f5f5f5;
}

.sp-hub-page .peopleroom .box-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 8px;
}

@media (max-width: 360px) {
  .sp-hub-page .font-x-large {
    font-size: 1.6rem;
  }
}

/*
  SP検索ハブページ
*/
.sp-hub-modal {
  display: none;
}

@media (max-width: 767px) {
  .sp-hub-modal {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    color: #333;
    overflow-y: auto;
  }
  .sp-hub-modal.show {
    display: block;
  }
  .sp-hub-modal .sp-hub-modal-inner {
    padding-top: 48px;
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 120px;
  }
  .sp-hub-modal .btn-hub-close {
    background: none;
    display: block !important;
    position: absolute;
    top: 10px;
    left: auto;
    right: 16px;
    width: 30px;
    height: 30px;
  }
  .sp-hub-modal .btn-hub-close img {
    width: 30px;
  }
  .sp-hub-modal .box.area, .sp-hub-modal .box.checkin-out {
    border: 1px solid #C6C6C6;
    border-radius: 4px;
    padding: 0 16px;
    height: 4.6rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    white-space: nowrap;
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .sp-hub-modal .box.area::-webkit-scrollbar, .sp-hub-modal .box.checkin-out::-webkit-scrollbar {
    display: none;
  }
  .sp-hub-modal .box.area .main, .sp-hub-modal .box.checkin-out .main {
    font-size: 1.6rem;
  }
  .sp-hub-modal .box.area .sub, .sp-hub-modal .box.checkin-out .sub {
    display: none;
    font-size: 1.1rem;
    color: #757575;
  }
  .sp-hub-modal .box.area.unset .main, .sp-hub-modal .box.checkin-out.unset .main {
    color: #757575;
  }
  .sp-hub-modal .box.checkin-out .box-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
  }
  .sp-hub-modal .box.checkin-out .border {
    margin: 0 20px;
    color: #757575;
  }
  .sp-hub-modal .box.checkin-out .checkin-sp .sub,
  .sp-hub-modal .box.checkin-out .checkout-sp .sub {
    margin-left: 8px;
  }
  .sp-hub-modal .box.peopleroom {
    padding: 0;
    border: none;
    height: auto;
  }
  .sp-hub-modal .box.peopleroom .box-inner {
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sp-hub-modal .box.peopleroom .box-inner .box-name {
    margin-bottom: 0;
  }
  .sp-hub-modal .box.peopleroom .main {
    font-size: 1.2rem;
    color: #333;
  }
  .sp-hub-modal .box.peopleroom .people-breakdown {
    color: #757575;
  }
  .sp-hub-modal .box.peopleroom .people-breakdown-child.unset {
    display: none;
  }
  .sp-hub-modal .input-name {
    margin-top: 24px;
  }
  .sp-hub-modal .searchBoxArea.modal-on {
    padding-top: 48px;
    position: relative;
    width: 100%;
    top: inherit;
    left: inherit;
    -webkit-transform: none;
            transform: none;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox {
    width: calc(100vw - 32px);
    height: auto;
    display: block;
    border: none;
    padding-bottom: 16px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .searchBtn {
    display: none;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box-inner {
    padding: 0 16px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box-inner .box-name {
    display: none !important;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .input-name {
    margin-top: 24px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.checkin-out .box-inner {
    padding: 0 16px;
    border: none;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"],
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"]::-webkit-input-placeholder,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box .main {
    font-size: 1.6rem;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"],
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"]:-ms-input-placeholder,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box .main {
    font-size: 1.6rem;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"],
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"]::-ms-input-placeholder,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box .main {
    font-size: 1.6rem;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"],
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box input[type="text"]::placeholder,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box .main {
    font-size: 1.6rem;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.area,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.checkin-out,
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .peopleroom {
    display: block;
    width: 100%;
    border: 1px solid #C6C6C6;
    border-radius: 4px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.area {
    border-radius: 4px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.area input {
    height: 46px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.area.focus {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    border-bottom-color: #0f0a64;
    height: 48px;
  }
  .sp-hub-modal .searchBoxArea.modal-on .searchBox .box.area.focus .box-inner {
    padding: 0 32px 0 8px;
  }
  .sp-hub-modal .searchBox .box.checkin-out .box-inner {
    -webkit-box-pack: unset;
    -webkit-justify-content: unset;
        -ms-flex-pack: unset;
            justify-content: unset;
  }
  .sp-hub-modal .searchBox .box.checkin-out .box-inner .border {
    margin: 0 20px;
  }
  .sp-hub-modal .popup-position {
    display: block !important;
    height: auto;
    position: relative;
    top: inherit;
    left: inherit;
  }
  .sp-hub-modal .popup-suggest {
    top: inherit;
    position: relative !important;
    margin-bottom: 50px;
    padding: 0px 16px 72px;
  }
  .sp-hub-modal .popup-peopleroom {
    display: block !important;
    width: auto;
    height: auto;
    max-height: none !important;
    position: static;
    border: none;
    padding: 0;
    border-radius: 0;
    margin-top: 16px;
    margin-left: -16px;
    margin-right: -16px;
    padding: 0 16px;
    overflow-y: unset !important;
  }
  .sp-hub-modal .popup-peopleroom .spinner-area input:first-of-type {
    margin-right: 8px;
  }
  .sp-hub-modal .popup-peopleroom .spinner-area input:last-of-type {
    margin-left: 8px;
  }
  .sp-hub-modal .popup-peopleroom .spinner-area input.disabled {
    background-color: #c6c6c6;
  }
  .sp-hub-modal .input-box input[type='number'] {
    font-size: 2rem;
    width: 24px !important;
  }
  .sp-hub-modal .float-bar2 {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 8px 16px 16px;
    background-color: #fff;
  }
  .sp-hub-modal .float-bar2.shadow {
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
  }
  .sp-hub-modal .peopleroomArea.peopleroom-on {
    border-top: 4px solid #f5f5f5;
  }
  .sp-hub-modal .peopleroom .box-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 8px;
  }
  .sp-hub-modal .modalbox-room {
    border-bottom: 2px solid #F5F5F5;
  }
  .sp-hub-modal .peopleroom .peopleroom-num{
    display: inline !important;
  }

  /* UI改修 */
  .sp-hub-modal .box.area,
  .sp-hub-modal .checkin-out-wrap {
    display: none !important;
  }
  .sp-hub-modal .popup-peopleroom {
    margin-top: 0 !important;
  }
  .sp-hub-modal .peopleroomArea.peopleroom-on {
    border: none;
  }
  .sp-hub-modal .sp-hub-modal .popup-peopleroom .modal-room-title {
    padding-top: 0;
  }

}

@media (max-width: 360px) {
  .sp-hub-modal .font-x-large {
    font-size: 1.6rem;
  }
}
@media (max-width: 330px) {
  .panel-head .date-box {
    padding-left: 14px;
    font-size: 1.3rem;
  }
}

/*
 施設詳細用
*/
.searchBox.detail {
  border-left: 1px solid #0F0A64;
  border-right: 1px solid #0F0A64;
}

.searchBox.detail .box.area {
  display: none !important;
}

.searchBox.detail .box.checkin-out,
.searchBox.detail .box.peopleroom {
  width: 50%;
}

.detail-page .searchBoxArea {
  position: relative;
  bottom: inherit;
}

.detail-page .popup-position {
  position: relative;
  top: 0;
}

.detail-page .popup-position .popup-peopleroom {
  width: calc(50% + 31px);
}

.detail-page .calendar table tr td {
  padding: 8px 0;
}

.detail-page .calendar table tr td .calendar-date.stay-date .date-btn button {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.detail-page .calendar table tr td .date-btn {
  height: 70px;
}

.detail-page .calendar table tr td .date-btn button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
}

@media (max-width: 767px) {
  .searchBox.detail .box.checkin-out,
  .searchBox.detail .box.peopleroom {
    display: table-cell;
  }
  .searchBox.detail .searchBtn {
    display: none !important;
  }
  .searchBox.detail .box-inner .box-name {
    display: block;
  }
  .detail-page .popup-position {
    background: #fff;
    z-index: 40;
  }
  .detail-page .popup-position .popup-peopleroom {
    top: 0;
    left: 0;
    right: 0;
    width: auto;
    padding-top: 32px;
  }
  .detail-page .month {
    margin-bottom: calc( (78 / 800) * 100vh);
  }
  .detail-page .calendar table {
    margin-top: calc(((78 / 800) * 100vh) * -1);
  }
}

/*
  searchBox （ポップアップの位置）
*/
.popup-position.detail {
  width: 796px;
  position: absolute;
  top: 100%;
  margin: 0 auto;
}

/* チェックインの位置 */
.popup-position.detail .popup-checkin {
  position: absolute;
  top: -1px;
  left: 0;
}

/* チェックアウトの位置 */
.popup-position.detail .popup-checkout {
  position: absolute;
  top: -1px;
  left: 126px;
}

/* 人数部屋の位置 */
.popup-position.detail .popup-peopleroom {
  position: absolute;
  top: -1px;
  left: 292px;
}

/* 食事の位置 */
.popup-position.detail .popup-meal {
  position: absolute;
  top: -1px;
  right: 132px;
}

/*
  人数部屋
*/
.popup-peopleroom {
  width: 264px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.popup-peopleroom .select-dropdown ul {
  position: static;
}

.popup-peopleroom .peopleroomArea .modalbox-room,
.popup-peopleroom .peopleroomArea .modal-room-title {
  display: none;
}

.popup-peopleroom .peopleroomArea.peopleroom-on .modal-room-title {
  display: block;
}

.popup-peopleroom .peopleroomArea.peopleroom-on .modalbox-room {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.peopleroom .peopleroom-num,
.peopleroom .room-num {
  display: none !important;
}

.peopleroom.peopleroom-on .peopleroom-num,
.peopleroom.peopleroom-on .room-num {
  display: inline !important;
}

.modalbox-title {
  padding: 16px 0 0;
}

.modalbox-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 12px 0 16px;
}

.modalbox-container + .modalbox-container {
  padding-top: 0;
}

.popup-position .spinner-area input.disabled {
  background-color: #c6c6c6;
}

.popup-position .spinner-area input:first-of-type {
  margin-right: 10px;
}

.popup-position .spinner-area input:last-of-type {
  margin-left: 10px;
}

.popup-position .control-area .spinner-area input:first-of-type {
  margin-right: 8px;
}

.popup-position .control-area .spinner-area input:last-of-type {
  margin-left: 8px;
}

.popup-position .control-area .spinner-area .min.disabled {
  background: #C6C6C6;
  pointer-events: none;
}

.popup-position .control-area .spinner-area .add.disabled {
  background: #C6C6C6;
  pointer-events: none;
}

.modalbox-room {
  border-bottom: 4px solid #F5F5F5;
}

.modalbox-itemname {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

/* 子供の詳細入力 */
.modalbox_detail {
  margin-bottom: 30px;
}

@media (min-width: 1024px) {
  .searchBox .box input[type="text"] {
    font-size: 1.6rem;
  }
  .searchBox .box input[type="text"]::-webkit-input-placeholder {
    font-size: 1.6rem;
  }
  .searchBox .box input[type="text"]:-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .searchBox .box input[type="text"]::-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .searchBox .box input[type="text"]::placeholder {
    font-size: 1.6rem;
  }
  .searchBox .box .main {
    font-size: 1.6rem;
  }
  .searchBox .box.checkin-out .main .date.unset {
    font-size: 1.4rem;
  }
  .popup-peopleroom {
    width: 250px;
  }
}

@media (max-width: 767px) {
  .searchBox.selected {
    background: #fff;
  }
  .searchBox.selected .box.checkin-out,
  .searchBox.selected .box.peopleroom {
    display: table-cell;
  }
  .searchBox.selected .box-inner {
    padding: 0 8px !important;
  }
  .searchBox.selected .sub {
    display: none !important;
  }
  .searchBox.selected .box.area .box-name {
    display: none;
  }
  .searchBox.selected .box.checkin-out {
    background: #f5f5f5;
    width: 56px;
    text-align: center;
    letter-spacing: 0;
  }
  .searchBox.selected .box.checkin-out .box-inner {
    height: 100%;
    padding: 2px 0;
    border-left: none;
    border-right: none;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .searchBox.selected .box.checkin-out .box-inner .border {
    display: none;
  }
  .searchBox.selected .box.checkin-out .main {
    font-size: 1.2rem;
  }
  .searchBox.selected .box.checkin-out .js-checkin,
  .searchBox.selected .box.checkin-out .js-checkout {
    width: 100% !important;
  }
  .searchBox.selected .box.checkin-out .js-checkin .js-checkin-display.unset {
    font-size: 1rem;
  }
  .searchBox.selected .box.checkin-out .js-checkin .js-checkin-display.unset:before {
    background: url(/stcontents/img/common/icon-calendar.svg) no-repeat center 0;
    background-size: 14px;
    content: "";
    display: block;
    width: 100%;
    height: 14px;
    margin-top: 2px;
  }
  .searchBox.selected .box.checkin-out .js-checkout {
    display: none;
  }
  .searchBox.selected .box.checkin-out.selected {
    background: #fff;
    width: 76px;
    text-align: right;
  }
  .searchBox.selected .box.checkin-out.selected .box-inner {
    border-left: 1px solid #c6c6c6;
    padding-left: 4px !important;
  }
  .searchBox.selected .box.checkin-out.selected .box-inner > div {
    width: auto;
  }
  .searchBox.selected .box.checkin-out.selected .checkin-out-selected {
    font-size: 1.2rem;
    color: #333;
  }
  .searchBox.selected .box.checkin-out.selected .js-checkout {
    display: block;
  }
  .searchBox.selected .box.checkin-out.selected .js-checkout .js-checkout-display:before {
    content: "~";
  }
  .searchBox.selected .box.peopleroom {
    width: 56px;
    white-space: nowrap;
    border-right: 1px solid #0F0A64;
    border-radius: 0 4px 4px 0;
  }
  .searchBox.selected .box.peopleroom.unset {
    background: #f5f5f5;
  }
  .searchBox.selected .box.peopleroom.unset .box-inner {
    border-left: 1px solid #fff;
  }
  .searchBox.selected .box.peopleroom.unset .box-name {
    display: none;
  }
  .searchBox.selected .box.peopleroom.unset .people-num,
  .searchBox.selected .box.peopleroom.unset .room-num {
    display: inline;
    font-size: 1rem;
  }
  .searchBox.selected .box.peopleroom.unset .searchTotalNum {
    font-size: 1rem;
  }
  .searchBox.selected .box.peopleroom.unset .searchTotalNum::before {
    background: url(/stcontents/img/common/icon-people.svg) no-repeat center 0;
    background-size: 14px;
    content: "";
    display: block;
    width: 100%;
    height: 14px;
    margin-top: 4px;
    margin-bottom: 2px;
  }
  .searchBox.selected .box.peopleroom .box-inner {
    height: 100%;
    border-left: 1px solid #c6c6c6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .searchBox.selected .box.peopleroom .main {
    font-size: 1rem;
    letter-spacing: 0;
  }
  .searchBox.selected .box.peopleroom .people-num {
    font-size: 1.2rem;
    display: block;
  }
  .searchBox.selected .box.peopleroom .room-num {
    display: block;
    color: #757575;
  }
  .searchBox.selected .box.peopleroom .searchTotalNum.unset {
    font-size: 1rem;
  }
  .searchBox.selected .box.peopleroom .searchTotalNum.unset:before {
    background: url(/stcontents/img/common/icon-people.svg) no-repeat center 0;
    background-size: 14px;
    content: "";
    display: block;
    width: 100%;
    height: 14px;
    margin-top: 4px;
    margin-bottom: 2px;
  }
  .searchBox.selected .box.peopleroom.selected {
    background: #fff;
  }
  .searchBox.selected .box.peopleroom.selected .box-inner {
    border-left: 1px solid #c6c6c6;
  }
  .searchBox.selected .box.peopleroom.selected .main {
    text-align: center;
  }
  .searchBox.selected .box.peopleroom.selected .main .searchTotalNum,
  .searchBox.selected .box.peopleroom.selected .main #searchTotalNumOfRoom {
    display: block;
  }
  .searchBox.selected .box.peopleroom.selected .main .searchTotalNum {
    font-size: 1.2rem;
  }
  .searchBox.selected .searchBtn {
    display: none;
  }
  .searchBoxArea.modal-on .searchBox.selected .peopleroom,
  .searchBoxArea.modal-on .searchBox.selected .checkin-out {
    display: none;
  }
  .searchBoxArea.modal-on .searchBox.selected .searchBtn {
    display: block;
  }
}

/*
  エリア用検索バー
*/
.area-search-box .searchBox {
  overflow: visible;
  z-index: 10;
}

.area-search-box .searchBox .box {
  overflow: visible;
}

.area-search-box .searchBox .box input[type="text"] {
  background: #fff url(/stcontents/img/common/icon-arrow-bottom-gray-2.svg) no-repeat right 18px center;
  border-left: 1px solid #C6C5C5;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.area-search-box .searchBox .box input[type="text"]::-webkit-input-placeholder {
  color: #C6C6C6;
}

.area-search-box .searchBox .box input[type="text"]:-ms-input-placeholder {
  color: #C6C6C6;
}

.area-search-box .searchBox .box input[type="text"]::-ms-input-placeholder {
  color: #C6C6C6;
}

.area-search-box .searchBox .box input[type="text"]::placeholder {
  color: #C6C6C6;
}

.area-search-box .searchBox .box .box-inner,
.area-search-box .searchBox .box .main {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
}

.area-search-box .searchBox .box .main {
  border-right: 1px solid #c6c6c6;
}

.area-search-box .searchBox .box.select-area .main {
  border-right: none !important;
}

.area-search-box .searchBox .box.active .main {
  border-color: #0F0A64;
}

.area-search-box .searchBox .select-dropdown span.select-frame {
  padding: 0 32px 0 16px;
  height: 58px;
  line-height: 58px;
  border-bottom: none;
  color: #C6C6C6;
}

.area-search-box .searchBox .select-dropdown div {
  top: 50%;
  margin-top: -6px;
}

.area-search-box .searchBox .select-dropdown div:before, .area-search-box .searchBox .select-dropdown div:after {
  width: 10px;
  right: 16px;
}

.area-search-box .searchBox .select-dropdown div:before {
  margin-right: 6px;
}

.area-search-box .searchBox .select-dropdown ul {
  top: 54px;
  border-radius: 0 4px 4px 0;
}

.area-search-box .searchBox .select-dropdown ul li {
  padding-left: 14px;
  border: none;
  border-bottom: 1px solid #F5F5F5;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.area-search-box .searchBox .select-dropdown ul li:first-child {
  height: 46px;
  padding-top: 6px;
}

.area-search-box .searchBox .select-dropdown ul li:hover {
  background-color: #F5F5F5;
}

.area-search-box .searchBox .active input[type="text"] {
  background: #fff url(/stcontents/img/common/icon-arrow-bottom-2.svg) no-repeat right 18px center;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding-right: 40px;
  color: #333;
}

.area-search-box .searchBox .active input[type="text"]::-webkit-input-placeholder {
  color: #333;
}

.area-search-box .searchBox .active input[type="text"]:-ms-input-placeholder {
  color: #333;
}

.area-search-box .searchBox .active input[type="text"]::-ms-input-placeholder {
  color: #333;
}

.area-search-box .searchBox .active input[type="text"]::placeholder {
  color: #333;
}

.area-search-box .searchBox .active .select-dropdown span.select-frame {
  color: #333;
}

.area-search-box .searchBox .disabled {
  pointer-events: none;
}

.area-search-box .searchBox .disabled div:before, .area-search-box .searchBox .disabled div:after {
  background: #c6c6c6;
}

.sp-area-modal.modal-sort .modal-sort-area {
  display: block !important;
}

.sp-area-modal.modal-sort .inner {
  padding-top: 52px;
}

.sp-area-modal.modal-sort .scroll {
  height: 100%;
  padding-bottom: 160px;
}

.sp-area-modal.modal-sort .list-title {
  display: none;
  height: 48px;
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 24px;
  margin: 0 16px 24px;
  padding: 3px 8px;
  border: 1px solid #0F0A64;
  border-radius: 4px;
  cursor: pointer;
  line-height: 40px;
  color: #c6c6c6;
}

.sp-area-modal.modal-sort .list-title:after {
  background: #fff url(/stcontents/img/common/icon-arrow-bottom-2.svg) no-repeat right center;
  background-size: 100%;
  content: "";
  width: 16px;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  right: 16px;
  -webkit-transform-origin: center;
          transform-origin: center;
}

.sp-area-modal.modal-sort .list-title.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.sp-area-modal.modal-sort .list-title:first-of-type {
  display: block;
}

.sp-area-modal.modal-sort .list-title.selected {
  color: inherit;
}

.sp-area-modal.modal-sort .btn-list li,
.sp-area-modal.modal-sort .btn-list .sort-element {
  width: 100%;
  float: none;
  margin: 0;
}

.sp-area-modal.modal-sort .btn-list .sort-element {
  display: block;
  padding: 16px 16px;
  border: none;
  border-bottom: 1px solid #F5F5F5;
  border-radius: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.sp-area-modal.modal-sort .btn-list .sort-element.active {
  background-color: #F5F5F5;
  border-color: #fff;
  padding-top: 16px;
  color: #333;
}

.sp-area-modal.modal-sort .btn-list li:first-of-type .sort-element {
  padding-top: 0;
}

.sp-area-modal.modal-sort .btn-list li:first-of-type .sort-element.active {
  padding-top: 16px;
}

.sp-area-modal.modal-sort .prefecture {
  display: none;
}

.sp-area-modal.modal-sort .prefecture .middle-title {
  background: none;
  padding: 16px 0;
  margin-left: 8px;
  color: inherit;
  margin-bottom: 0;
}

.sp-area-modal.modal-sort .largearea_group-wrap {
  display: none;
}

.sp-area-modal.modal-sort .submit-box {
  background: #fff;
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  padding: 8px 16px 24px;
  z-index: 1;
}

.sp-area-modal.modal-sort .submit-box > div {
  width: calc(50% - 8px);
  margin: 0 4px;
}

.sp-area-modal.modal-sort .submit-box > div button,
.sp-area-modal.modal-sort .submit-box > div span {
  width: 100%;
}

.sp-area-modal.modal-sort .submit-box > div:only-child {
  width: 100%;
  margin: 0;
}

.sp-area-modal.modal-sort .submit-box > div:only-child button {
  background: #0F0A64;
  color: #fff;
}

.sp-area-modal.modal-sort .submit-box.disabled > div {
  pointer-events: none;
}

.sp-area-modal.modal-sort .submit-box.disabled > div button,
.sp-area-modal.modal-sort .submit-box.disabled > div span {
  background: #C6C6C6;
  border: 1px solid #C6C6C6;
  color: #fff;
  pointer-events: none;
}

.sp-area-modal.modal-sort .submit-box.disabled > div:only-child button {
  background: #CFCEDF !important;
  border-color: #CFCEDF !important;
}

.sp-area-modal.modal-sort .submit-box.active .btn-area-select {
  display: none;
}

.sp-area-modal.modal-sort .submit-box.active .btn-submit {
  width: 100%;
  margin: 0;
}

.sp-area-modal.modal-sort .submit-box.active .btn-submit button {
  background-color: #0f0a64;
  border: 1px solid #0F0A64;
  color: #fff;
}

@media (min-width: 768px) {
  .area-search-box .searchBox select {
    padding: 0 10px 0 24px;
  }
  .area-search-box .searchBox .box {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
  }
  .area-search-box .searchBox .box:first-child {
    border-top: 1px solid #0F0A64;
    border-bottom: 1px solid #0F0A64;
  }
  .area-search-box .searchBox .box:first-child .main {
    border-right: 1px solid #0F0A64;
  }
  .area-search-box .searchBox .box:first-child .main span.select-frame {
    color: #333;
  }
  .area-search-box .searchBox .searchBtn:not(.active):hover {
    border: none;
  }
  .area-search-box .searchBox .searchBtn:not(.active) button {
    background: #C6C6C6;
    border: none;
    pointer-events: none;
  }
  .area-search-box .searchBox .select-area {
    width: 300px;
    border-right: none;
  }
  .area-search-box .searchBox .active + .box {
    border-top: 1px solid #0F0A64;
    border-bottom: 1px solid #0F0A64;
  }
  .area-search-box .searchBox .active + .box .main {
    border-right: 1px solid #0F0A64;
  }
  .area-search-box .searchBox .active + .box input[type="text"],
  .area-search-box .searchBox .active + .box select {
    border-left: 1px solid #0F0A64;
  }
  .area-search-box .searchBox .active + .box span.select-frame {
    color: #333;
  }
  .area-search-box .searchBox .active + .active input[type="text"],
  .area-search-box .searchBox .active + .active select {
    border-left: 1px solid #C6C5C5;
  }
}

@media (max-width: 767px) {
  .area-search-box .searchBox {
    width: calc(100vw - 32px);
    display: block;
  }
  .area-search-box .searchBox .select-region {
    display: block;
  }
  .area-search-box .searchBox .box:first-child {
    display: block;
    border-radius: 4px 4px;
    overflow: hidden;
  }
  .area-search-box .searchBox .box input {
    padding: 0 8px;
    display: block;
    font-size: 1.6rem;
    line-height: 44px;
    border: none;
    cursor: pointer;
  }
  .area-search-box .searchBox .active input[type="text"] {
    border: none;
  }
}

/*
  2カラム検索バー
*/
.search-box-col2 {
  top: inherit;
  bottom: 40px;
  text-align: left;
}

.search-box-col2 .box {
  width: 50% !important;
  display: table-cell !important;
}

.search-box-col2 .box .box-name {
  display: block;
}

.search-box-col2 .box-inner {
  -webkit-box-pack: unset !important;
  -webkit-justify-content: unset !important;
      -ms-flex-pack: unset !important;
          justify-content: unset !important;
}

.search-box-col2 .checkin-out .border {
  margin: 0 10px !important;
}

.search-box-col2 .checkin,
.search-box-col2 .checkout {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.search-box-col2 .checkin .main + .sub,
.search-box-col2 .checkout .main + .sub {
  margin-left: 8px;
}

.search-box-col2 .searchBtn {
  width: 60px !important;
}

@media (max-width: 767px) {
  .search-box-col2 {
    bottom: 24px;
  }
  .search-box-col2 .searchBox {
    width: calc(100vw - 24px);
  }
  .search-box-col2 .searchBtn {
    width: 48px !important;
  }
  .search-box-col2 .box .box-inner {
    padding: 0 10px !important;
  }
  .search-box-col2 .box .main {
    font-size: 1.2rem;
  }
  .search-box-col2 .box .box-name {
    font-size: 1rem !important;
  }
}

@media (max-width: 360px) {
  .common-modal.calendar-modal .panel-head .date-box {
    padding: 6px 22px 0 16px !important;
    font-size: 1.2rem !important;
  }
  .search-box-col2 .box .main {
    font-size: 1rem;
  }
  .search-box-col2 .box.checkin-out .box-inner .unset .main {
    font-size: 1rem !important;
  }
  .search-box-col2 .box.checkin-out .box-name {
    display: none !important;
  }
  .btn-anker {
    padding: 0 8px;
  }
}

/*
  ranking
*/
.ranking-area {
  padding: 24px 0 8px 0;
  overflow: hidden;
}

.year-ranking .entry-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.year-ranking .entry {
  background: #FFF;
  width: 32%;
  height: 280px;
  margin-right: 2%;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  overflow: hidden;
}

.year-ranking .entry > a {
  display: block;
  color: #333;
}

.year-ranking .entry .info {
  width: auto;
  padding: 8px 16px 16px;
}

.year-ranking .entry .info .entry-header .left .icon img {
  width: 40px;
  margin-left: 16px;
}

.year-ranking .entry .info .name {
  margin-bottom: 0px;
  padding-top: 0;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.year-ranking .entry .info .grade {
  height: 20px;
  margin-bottom: 8px;
  line-height: 1;
}

.year-ranking .entry .info .grade img {
  height: 20px;
  vertical-align: middle;
}

.year-ranking .entry .info .grade img.casual,
.year-ranking .entry .info .grade img.museum {
  height: 12px;
}

.year-ranking .entry .info .grade img.star {
  margin-right: 3px;
}

.year-ranking .entry .thumb {
  width: auto;
  height: 140px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  position: relative;
  overflow: hidden;
  display: block;
  margin-bottom: 0;
}

.year-ranking .entry .thumb img {
  height: 100%;
  width: 100%;
  vertical-align: bottom;
  -o-object-fit: cover;
     object-fit: cover;
}

.year-ranking .entry .thumb a {
  vertical-align: text-bottom;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.year-ranking .entry:last-child {
  margin-right: 0;
}

.year-ranking .entry .price-box .tax {
  font-size: 1.2rem;
}

.year-ranking .entry .month {
  font-size: 1.6rem;
}

.year-ranking .entry a {
  text-decoration: none;
}

.year-ranking .entry .info .entry-header .left {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
}

.year-ranking .entry .info .area {
  overflow: hidden;
  white-space: nowrap;
  margin-bottom: 4px;
  text-overflow: ellipsis;
  text-align: left;
  font-size: 1.2rem;
  color: #757575;
}

.year-ranking .entry .info .area a:hover,
.year-ranking .entry .info .name a:hover {
  text-decoration: underline;
}

.year-ranking .entry .info .entry-header {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.year-ranking .entry .price-box {
  margin-top: 16px;
  text-align: right;
  line-height: 1.3;
}

.year-ranking .entry .price-box .room {
  margin-right: 8px;
  font-size: 1.2rem;
}

.year-ranking .entry .price-box .price {
  font-weight: bold;
  font-size: 1.6rem;
}

.year-ranking .entry .price-box .tax {
  white-space: nowrap;
  font-size: 1rem;
}

.year-ranking .entry.more-banner {
  border: none;
}

.year-ranking .entry.more-banner a {
  background: #0F0A64;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.year-ranking .entry.more-banner img {
  width: 200px;
}

.year-ranking .entry.more-banner .more {
  text-align: right;
  font-size: 1.2rem;
  margin-top: 16px;
  color: #fff;
}

.year-ranking .entry.more-banner .more::after {
  background: url("/stcontents/img/common/icon-navigate-right-white.svg") no-repeat 0 0;
  background-size: 100%;
  content: "";
  width: 26px;
  height: 26px;
  display: inline-block;
  vertical-align: middle;
  margin: -1px -4px 0 7px;
}

.year-ranking .bnr-more a {
  background-image: url(/stcontents/img/common/bg-ranking.png);
  width: 100%;
  height: 100%;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 26px 26px;
  color: #fff;
}

.year-ranking .bnr-more a img {
  margin: 0 auto 16px;
}

.year-ranking .bnr-more a .text {
  line-height: 1.5;
  font-size: 1.6rem;
}

.year-ranking .bnr-more a .text:after {
  background: url(/stcontents/img/common/icon-arrow-right-white-2.svg) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  vertical-align: middle;
  margin-left: 8px;
}

.recommend-sec.year-ranking .js-scroll-box {
  padding: 0 0 24px;
}
.recommend-sec.year-ranking .entry {
  width: 352px;
  height: 200px;
}

.recommend-sec.year-ranking .entry a,
.recommend-sec.year-ranking .entry .thumb {
  width: 100%;
  height: 100%;
}

.recommend-sec.year-ranking .entry .info {
  background: linear-gradient(to bottom, transparent,rgba(0,0,0,0.6));
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  text-shadow: 0 0 1px #000;
}

.recommend-sec.year-ranking .entry .info .name,
.recommend-sec.year-ranking .entry .info .area,
.recommend-sec.year-ranking .entry .info .price-box {
  color: #fff;
}

.recommend-sec.year-ranking .bnr-more a {
  background: none;
  color: inherit;
}
.recommend-sec.year-ranking .bnr-more a .text:after {
  background: url(/stcontents/img/common/icon-arrow-right.svg) no-repeat 0 0;
  background-size: contain;
}

.recommend-sec.year-ranking .bnr-more a .text-link:after {
  background: url(/stcontents/img/common/icon-text-link.svg) no-repeat 0 center;
}
.recommend-sec.year-ranking .info .grade img {
  height: 16px;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
  margin: 0;
}
.recommend-sec.year-ranking .info .grade img[alt="CASUAL"],
.recommend-sec.year-ranking .info .grade img[alt="MUSEUM"] {
  background: rgba(0,0,0,0.1);
  border: 1px solid #fff;
  border-radius: 2px;
  padding: 0px 3px;
  filter: none;
}

.plan-sec {
  margin-top: 20px;
}
.plan-sec.year-ranking .entry-list {
  margin: 16px 0 64px;
}
.plan-sec.year-ranking .entry {
  width: 358px;
  height: 310px;
  box-shadow: none;
}
.plan-sec.year-ranking .entry .thumb {
    width: 90%;
    height: 100%;
}
.plan-sec.year-ranking .entry .thumb img {
    object-fit: contain;
    object-position: left;
}
.plan-sec.year-ranking .entry .info {
  background: rgba(0,0,0,0.7);
  width: 88%;
  padding-right: 40px;
  border-radius: 8px;
  color: #fff;
  position: absolute;
  bottom: 0;
  right: 0;
}
.plan-sec.year-ranking .entry .info:after {
  content: "";
  width: 12px;
  height: 12px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%) rotate(-45deg);
}
.plan-sec.year-ranking .entry .info .text {
  display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 4;
   overflow: hidden;
  margin-bottom: 16px;
}

.plan-sec.year-ranking .entry .info .name,
.plan-sec.year-ranking .entry .info .area {
  text-align: right;
}
.plan-sec.year-ranking .entry .info .name {
    font-size: 1.2rem;
    font-weight: 900;
}
.plan-sec.year-ranking .entry .info .area {
    margin-top: 8px;
    color: #fff;
}
.plan-sec.year-ranking .rigt-img .entry .thumb {
  float: right;
}
.plan-sec.year-ranking .rigt-img .entry .info {
  right: inherit;
  left: 0;
}

@media screen and (max-width: 1023px) {
  .year-ranking .bnr-more span > img {
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .recommend-sec.year-ranking .js-scroll-box {
    padding: 0 16px 0 0;
  }
  .recommend-sec.year-ranking .entry {
    width: 320px;
    flex-shrink: 0;
  }
  .recommend-sec.year-ranking .bnr-more {
    width: 200px;
    min-width: 0;
  }
  .recommend-sec.year-ranking .js-scroll-box,
  .plan-sec.year-ranking .js-scroll-box {
    margin: 0 -16px;
  }
  .recommend-sec.year-ranking .js-scroll-box {
    padding-left: 16px;
  }
}

@media (min-width: 768px) {
  .ranking-area {
    padding: 40px 0;
  }
  .year-ranking .entry {
    height: 300px;
    margin-right: 2%;
  }
  .year-ranking .entry .thumb {
    width: auto;
    height: 170px;
  }
  .year-ranking .entry > a:hover {
    opacity: .7;
  }
  .recommend-sec.year-ranking .entry {
    width: 352px;
  }
}

@media (min-width: 1024px) {
  .year-ranking .entry {
    height: 300px;
    margin-right: 2%;
  }
  .year-ranking .entry .thumb {
    width: auto;
    height: 170px;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .year-ranking .entry .price-box {
    margin-top: 8px;
  }
}

@media (min-width: 1280px) {
  .year-ranking .entry {
    width: 256px;
    margin-right: 32px;
  }
  .year-ranking .entry .info .entry-header .left .icon img {
    margin-left: 16px;
  }
  .year-ranking .text-link-gray {
    margin-top: 32px;
  }
}

@media (max-width: 767px) {
  .year-ranking .entry-list {
    width: calc(100% + 32px);
    margin: 0 -16px;
    padding: 0 16px 16px;
    overflow-x: scroll;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .year-ranking .entry-list::-webkit-scrollbar {
    display: none;
  }
  .year-ranking .entry {
    min-width: 256px;
    height: 266px;
  }
  .year-ranking .entry .info .entry-header .left .icon img {
    width: 30px;
  }
  .year-ranking .bnr-more a {
    background-image: url(/stcontents/img/common/bg-ranking-sp.png);
  }

  .plan-sec.year-ranking .entry-list {
    margin: 16px 0 24px;
  }
  .plan-sec.year-ranking .entry {
    min-width: 300px;
    height: 300px;
  }
  .plan-sec.year-ranking .entry .thumb img {
    width: 80%;
  }
  .plan-sec.year-ranking .rigt-img .entry .thumb {
    width: 100%;
    text-align: right;
  }
  .plan-sec.year-ranking .entry .info {
    right: 16px;
    padding-right: 30px;
  }
  .plan-sec.year-ranking .entry .info:after {
    width: 10px;
    height: 10px;
    right: 12px;
  }
  .plan-sec.year-ranking .rigt-img .entry .info {
    right: inherit;
    left: 0;
  }
  .plan-sec.year-ranking .entry .info .name {
    font-size: inherit;
  }
}

@media screen and (max-width: 360px) {
  .plan-sec.year-ranking .entry {
    min-width: 260px;
  }
}

/*
  スライダー
*/
.btn-slide-arrow .slick-arrow {
  width: 16px;
  height: 32px;
  z-index: 2;
}

.btn-slide-arrow .slick-arrow:before {
  content: none;
}

.btn-slide-arrow .slick-prev {
  background: url(/stcontents/img/common/icon-arrow-left-white.svg) no-repeat center center;
  background-size: contain;
  left: 8%;
}

.btn-slide-arrow .slick-prev:hover {
  background: url(/stcontents/img/common/left_Hover-3.svg) no-repeat center center;
  background-size: contain;
}

.btn-slide-arrow .slick-next {
  background: url(/stcontents/img/common/icon-arrow-right-white.svg) no-repeat center center;
  background-size: contain;
  right: 8%;
}

.btn-slide-arrow .slick-next:hover {
  background: url(/stcontents/img/common/right_Hover-3.svg) no-repeat center center;
  background-size: contain;
}

.btn-slide-arrow.btn-black .slick-prev {
  background: url(/stcontents/img/common/left_Hover.svg) no-repeat center center;
  background-size: contain;
}

.btn-slide-arrow.btn-black .slick-prev:hover {
  background: url(/stcontents/img/common/icon-arrow-left-white.svg) no-repeat center center;
  background-size: contain;
}

.btn-slide-arrow.btn-black .slick-next {
  background: url(/stcontents/img/common/right_Hover.svg) no-repeat center center;
  background-size: contain;
}

.btn-slide-arrow.btn-black .slick-next:hover {
  background: url(/stcontents/img/common/icon-arrow-right-white.svg) no-repeat center center;
  background-size: contain;
}

.js-slick-slider .slick-dots,
.js-kv-slider .slick-dots {
  height: 0;
  bottom: 26px;
}

.js-slick-slider .slick-dots li,
.js-kv-slider .slick-dots li {
  width: auto;
  height: auto;
  margin: 0 2px;
}

.js-slick-slider .slick-dots li:only-child,
.js-kv-slider .slick-dots li:only-child {
  display: none;
}

.js-slick-slider .slick-dots li button,
.js-kv-slider .slick-dots li button {
  background: #fff;
  width: 4px;
  height: 4px;
  opacity: 1;
  font-size: 10px;
  border-radius: 50%;
  padding: 0;
}

.js-slick-slider .slick-dots li button:before,
.js-kv-slider .slick-dots li button:before {
  content: none;
}

.js-slick-slider .slick-dots li.slick-active button,
.js-kv-slider .slick-dots li.slick-active button {
  width: 6px;
  height: 6px;
}

@media (max-width: 767px) {
  .js-slick-slider .slick-dots li button,
  .js-kv-slider .slick-dots li button {
    width: 2px;
    height: 2px;
  }
  .js-slick-slider .slick-dots li.slick-active button,
  .js-kv-slider .slick-dots li.slick-active button {
    width: 4px;
    height: 4px;
  }
}

.js-scroll-box {
  overflow-x: auto;
  scrollbar-width: none;
}

.js-scroll-box::-webkit-scrollbar {
  display: none;
}

/*
  絞り込み検索
*/
.modal-sort {
  display: none;
  width: auto;
  height: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 52;
  /* 範囲選択スライダー */
}

.modal-sort .inner {
  background: #fff;
  width: 100vw;
  height: auto;
  max-width: 848px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
  margin: 0 auto;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 8px;
  overflow: hidden;
}

.modal-sort .js-modal-close {
  -webkit-transform: scale(0.75);
          transform: scale(0.75);
  right: 9px;
}

.modal-sort .modal-sort-area,
.modal-sort .modal-sort-conditions,
.modal-sort .modal-sort-price {
  display: none;
}

.modal-sort .modal-sort-area.active,
.modal-sort .modal-sort-conditions.active,
.modal-sort .modal-sort-price.active {
  display: block;
}

.modal-sort .modal-title {
  margin: 8px 0 0;
  font-size: 1.4rem;
}

.modal-sort .scroll {
  height: auto;
  padding: 16px 16px 24px;
  overflow-y: auto;
}

.modal-sort .scroll::-webkit-scrollbar {
  width: 4px;
}

.modal-sort .scroll::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 4px;
  -webkit-box-shadow: 0;
          box-shadow: 0;
}

.modal-sort .scroll::-webkit-scrollbar-thumb {
  background: #C6C6C6;
  border-radius: 4px;
  -webkit-box-shadow: 0;
          box-shadow: 0;
}

.modal-sort .box {
  overflow: hidden;
  margin-bottom: 8px;
  clear: both;
}

.modal-sort .box:last-of-type {
  margin-bottom: 0;
}

.modal-sort .title {
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 1.6rem;
}

.modal-sort .btn-list li {
  float: left;
  margin: 0 10px 14px 0;
}

.modal-sort .btn-list li:last-of-type {
  margin-right: 0;
}

.modal-sort .btn-list li img {
  width: 16px;
  margin-right: 4px;
}

.modal-sort .btn-list li img:last-of-type {
  margin-right: 0;
}

.modal-sort .btn-list li span {
  margin-left: 8px;
}

.modal-sort .price-slider {
  padding-top: 16px;
}

.modal-sort .price-slider .range-max {
  display: none;
  margin-top: 16px;
}

.modal-sort .price-slider .range-max input {
  width: 22px;
  height: 22px;
  border: none;
}

.modal-sort .price-slider .range-max label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.modal-sort .price-title {
  color: #757575;
}

.modal-sort .slider-range {
  width: calc(100% - 50px);
  margin: 0 0 16px 14px;
}

.modal-sort .slider-guide {
  width: calc(100% - 38px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 8px 10px;
  color: #757575;
}

.modal-sort .slider-guide .max {
  margin-right: -28px;
}

.modal-sort .slider-guide .middle {
  position: absolute;
  left: 60%;
}

.modal-sort .slider-guide .middle.long {
  left: 19%;
}

.modal-sort .slider-guide .middle:before {
  content: "";
  display: block;
  background: #c6c6c6;
  height: 12px;
  width: 2px;
  position: absolute;
  top: -26px;
  left: calc(50% - 1px);
  z-index: 1;
}

.modal-sort .range-note {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 1rem;
  color: #757575;
}

.ui-slider-horizontal.ui-widget-content {
  background: #efefef;
  height: 8px;
  border: none;
}

.ui-slider-horizontal .ui-slider-handle {
  background: #0F0A64 !important;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  top: -12px;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  cursor: pointer;
}

.ui-slider-horizontal .ui-slider-handle:hover {
  background: #554B98 !important;
}

.ui-slider-horizontal .ui-slider-range {
  background: #E1E9F8;
}

.submit-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  padding: 24px 16px 24px;
  -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
}

.submit-box .link-reset {
  margin-left: 0;
  margin-right: auto;
}

.submit-box .link-reset .js-btn-reset {
  text-decoration: underline;
  padding: 0;
  color: #757575;
  cursor: pointer;
}

.submit-box .link-reset .js-btn-reset:hover {
  text-decoration: none;
}

.submit-box .link-reset .js-btn-reset:active {
  opacity: 0.5;
}

.submit-box .link-reset .js-btn-reset.disabled {
  opacity: 0.5;
  pointer-events: none;
}

.submit-box .link-reset .js-btn-reset.disabled:hover {
  color: #757575;
}

.submit-box .count {
  font-size: 1.0rem;
  color: #757575;
  letter-spacing: 0;
}

.submit-box .count span {
  margin-left: 4px;
  margin-right: 4px;
  font-weight: bold;
  font-size: 2rem;
  color: #333;
}

.submit-box .count .num {
  letter-spacing: 1px;
}

.submit-box .count .unit {
  margin-left: 0;
  margin-right: 0;
  font-size: 1.2rem;
  font-weight: normal;
}

.submit-box .btn-reset {
  margin: 0 8px;
}

.submit-box .js-btn-reset {
  padding: 6px 10px;
  font-weight: bold;
  font-size: 1.4rem;
}

.submit-box .btn-submit {
  margin-left: 8px;
}

.submit-box .js-btn-submit {
  padding: 6px 55px;
  font-size: 1.4rem;
}

.submit-box .count-title {
  margin-right: 4px;
  font-weight: bold;
  font-size: 1.4rem;
}

.modal-sort .price-range {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.modal-sort .price-range input {
  width: 100%;
  height: 56px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ccc;
  border-radius: 4px;
  text-align: center;
  letter-spacing: 1px;
  font-weight: 100;
  font-size: 1.6rem;
}

.modal-sort .price-range .border {
  padding: 48px 10px 0;
}

.modal-sort.price-modal .inner {
  max-width: 503px;
  height: auto;
}

.modal-sort.price-modal .scroll {
  height: auto;
  padding-bottom: 0;
}

.modal-sort .modal-sort-price .submit-box {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.modal-sort .modal-sort-price .submit-box .js-btn-submit {
  padding: 10px 78px;
}

.searchbox-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: left;
}

.searchbox-bar .sort-box {
  display: none;
}

.searchbox-bar.float {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.search-bar-section .searchBoxArea {
  position: relative;
  top: inherit !important;
  bottom: inherit !important;
  margin: 24px auto;
}

.sort-conditions-box {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4px;
}

.sort-conditions-box .js-sort-conditions {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-top: -4px;
  margin-bottom: 8px;
}

.sort-conditions-box .sort-conditions-list {
  display: none;
}

.sort-conditions-box.active .sort-conditions-list {
  display: block;
}

.sort-conditions-box .element-list {
  display: inline;
}

.sort-conditions-box .element-list .sort-element {
  height: 32px !important;
  margin-left: 8px;
  margin-bottom: 8px;
  vertical-align: bottom;
  line-height: 1;
}

.sort-conditions-box .element-list .sort-element span {
  margin-left: 4px;
}

.sort-conditions-box .element-list .sort-element span:after {
  content: "×";
  display: inline-block;
  margin-left: 2px;
  margin-right: -2px;
  font-size: 12px;
  color: #757575;
}

.sort-conditions-box .element-list .sort-element:hover {
  background: #fff;
  color: #0F0A64;
}

.sort-conditions-box .element-list .sort-element:hover span:after {
  color: #0F0A64;
}

.sort-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.sort-box .btn-relux {
  height: 40px;
  min-width: 100px;
  padding: 4px 16px;
  border-radius: 4px;
  font-size: 1.2rem;
}

.sort-box .search-wrap {
  margin: 0 auto;
}

.sort-box .number {
  background: #fff;
  display: inline-block;
  display: none;
  margin-left: 8px;
  margin-right: -15px;
  padding: 3.5px 5px;
  border-radius: 4px;
  letter-spacing: 0;
  font-size: 1.6rem;
  font-weight: bold;
  color: #0F0A64;
  min-width: 32px;
  text-align: center;
}

.sort-box .number:empty {
  display: none;
}

.sort-box .number .number-over {
  margin-left: 2px;
  position: relative;
  bottom: 1px;
  font-size: 1.4rem;
}

.sort-box .sort-price .count-box {
  display: none;
}

.sort-box .sort-price.active .label {
  display: none;
}

.sort-box .sort-price.active .count-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.sort-box .sort-price.active .count-box .count > div {
  display: inline-block;
  margin-left: 0;
  font-size: 1.6rem;
}

.sort-box .sort-price.active .count-box .count .number {
  margin-right: -15px;
  margin-left: 4px;
  text-align: left;
}

.sort-box .sort-price.active .count-box .count input {
  background: none;
}

.sort-box .btn-sort-conditions {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 0 !important;
  width: 28px !important;
  height: 28px !important;
  margin-top: 2px;
  margin-left: 8px;
  padding: 0 !important;
  letter-spacing: 0;
  border-radius: 50%;
  vertical-align: top;
  font-size: 20px !important;
  font-weight: normal;
}

@media (max-width: 767px) {
  .sort-box {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    letter-spacing: 0;
  }
  .sort-box .btn-relux {
    height: 32px;
    min-width: 64px;
    padding: 2px 8px;
    font-size: 1.2rem;
    line-height: 1;
  }
  .sort-box .number {
    margin-left: 4px;
    margin-right: -7px;
    padding: 8px 4px;
    font-size: 1.2rem;
    min-width: 28px;
  }
  .sort-box .number .number-over {
    font-size: 1.0rem;
  }
  .sort-conditions-box .sort-conditions-list {
    display: none !important;
  }
}

.sort-element {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3px 10px 4px;
  border: 2px solid #F5F5F5;
  border-radius: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #333;
  position: relative;
}

.sort-element .icon-grade {
  width: 2rem;
}

.sort-element .icon-grade:last-of-type {
  margin-right: .4rem;
}

.sort-element.active {
  background: #F3F8FD;
  padding: 4px 11px 5px;
  border: 1px solid #0F0A64;
  color: #000;
}

.sort-element:hover {
  background: #fff;
  padding: 4px 11px 5px;
  border: 1px solid #554B98;
  color: #554B98;
}

.sort-element.active:hover {
  background: #F3F8FD;
  border: 1px solid #0F0A64;
}

.sort-box > div {
  margin-right: 4px;
}

.sort-box > div:last-child {
  margin-right: 0;
}

.sort-element-disabled {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3px 10px 4px;
  border: 2px solid #f5f5f5;
  border-radius: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #c6c6c6;
  background-color: #f5f5f5;
  position: relative;
  pointer-events: none;
}

.sort-element-disabled .icon-grade {
  width: 2rem;
}

.sort-element-disabled .icon-grade:last-of-type {
  margin-right: .4rem;
}

.result-header-sort {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 0 8px;
}

.result-number {
  font-size: 2rem;
}

.result-number span {
  margin-left: 4px;
  font-weight: bold;
  font-size: 2.4rem;
}

.result-number label {
  margin-left: 16px;
  font-size: 1.6rem;
}

.result-number input {
  margin-top: -4px;
}

.float-search-box {
  background: #fff;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 10;
  padding: 8px 0;
}

.float-search-box .searchbox-bar {
  padding-bottom: 16px;
}

.float-search-box .searchBoxArea.float-box.fixed {
  position: relative;
  top: auto;
  left: auto;
  padding: 0;
}

.float-search-box.fixed {
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
}

.float-search-box.fixed .float-result-header {
  display: block;
}

.float-search-box.fixed .result-header-sort {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.float-search-box.fixed .result-header-sort .sort-change {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.float-search-box .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.float-search-box .result-header-sort {
  display: none;
  padding: 0;
}

.float-search-box .result-header-sort .result-number {
  margin-left: 32px;
  font-size: 1.6rem;
}

.float-search-box .result-header-sort .result-number span {
  font-size: 2rem;
}

.float-search-box .result-header-sort .sort-change {
  position: absolute;
  bottom: 0;
  right: 0;
}

@media (min-width: 768px) {
  .float-search-box {
    z-index: 10;
  }
}

.sort-change {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.2rem;
  line-height: 1;
  padding-right: 1rem;
}

.sort-change a {
  display: inline-block;
  padding: 5px 18px;
  border-right: 1px solid #757575;
  font-weight: 100;
  color: #0f0a64;
}

.sort-change a:hover {
  color: #554B98;
}

.sort-change a:nth-of-type(3) {
  padding-right: 12px;
  border: none;
}

.sort-change a:last-child {
  margin-right: 0;
  padding-right: 0;
  border: none;
}

.sort-change a.active {
  font-weight: bold;
}

.sort-change.station a:nth-of-type(4) {
  padding-right: 12px;
  border-right: none;
}

.sort-change.station a:nth-of-type(3) {
  padding-right: 16px;
  border-right: 1px solid #757575;
}

.search-result .bread-crumbs.sp-only {
  background-color: #f5f5f5;
  padding-left: 16px;
}

.fixed-on .result-header-sort {
  opacity: 0;
}

@media (min-width: 768px) {
  .modal-sort .js-modal-close {
    -webkit-transform: none;
            transform: none;
  }
  .modal-sort .scroll {
    max-height: calc(78vh - 100px);
    margin: 24px 12px 0;
    padding-right: 10px;
  }
  .modal-sort .btn-list li img {
    width: 20px;
  }
  .modal-sort .sort-element {
    padding: 1px 10px 2px;
  }
  .modal-sort .sort-element.active {
    padding: 2px 11px 3px;
  }
  .modal-sort .sort-element:hover {
    padding: 2px 11px 3px;
  }
  .modal-sort .sort-element-disabled {
    padding: 1px 10px 2px;
  }
  .modal-sort .price-slider .border {
    padding: 48px 19px 0;
  }
  .modal-sort .price-slider .range-max {
    margin-top: 36px;
  }
  .modal-sort .price-range label {
    font-size: 1.6rem;
  }
  .modal-sort .price-range input {
    height: 56px;
    font-size: 2rem;
  }
  .modal-sort .middle-title {
    padding: 14px 16px;
  }
  .submit-box {
    padding: 24px 24px 24px;
  }
  .submit-box > div {
    margin-left: 8px;
  }
  .submit-box .count-title {
    margin-right: 0;
    font-size: 2.0rem;
  }
  .submit-box .count {
    font-size: inherit;
  }
  .submit-box .count span {
    margin-left: 8px;
    font-size: 2.4rem;
  }
  .submit-box .count .unit {
    font-size: 1.4rem;
  }
  .submit-box .btn-reset {
    margin: 0 0 0 16px;
  }
  .submit-box .js-btn-reset {
    padding: 10px 16px;
    font-size: 1.6rem;
  }
  .submit-box .btn-submit {
    margin-left: 16px;
  }
  .submit-box .js-btn-submit {
    padding: 10px 111px;
    font-size: 1.6rem;
  }
  .modal-sort.price-modal .inner {
    top: 250px;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    margin-left: -98px;
  }
  .modal-sort.price-modal.fixed .inner {
    top: 130px;
  }
  .modal-sort.price-modal .js-modal-close {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1120px) {
  .modal-sort.price-modal .inner {
    -webkit-transform: none;
            transform: none;
    margin-left: 0;
    left: 234px;
  }
}

@media (max-width: 1200px) {
  .float-search-box .result-header-sort {
    width: 100%;
  }
  .float-search-box .result-header-sort .sort-change {
    position: relative;
    bottom: auto;
    right: auto;
  }
}

@media (max-width: 767px) {
  .float-search-box {
    padding-bottom: 16px;
    font-size: 1.4rem;
  }
  .float-search-box.modal-on {
    z-index: 40;
    padding: 0 0 8px;
  }
  .float-search-box .wrap {
    padding: 0;
  }
  .float-search-box .result-sort,
  .float-search-box .result-number {
    padding: 0 16px;
  }
  .float-search-box .result-sort {
    padding-bottom: 8px;
  }
  .float-search-box .js-accordion-open {
    display: none;
    position: absolute;
    top: 0;
    right: 20px;
  }
  .float-search-box .searchbox-bar {
    padding-bottom: 16px;
  }
  .float-search-box .float-result-header {
    width: 100%;
  }
  .float-search-box:not(.fixed) .float-result-header {
    display: block !important;
  }
  .float-search-box .result-header-sort {
    display: block;
  }
  .float-search-box .result-header-sort .sort-change {
    display: none;
    background: #F5F5F5;
    width: 100%;
    margin-top: 10px;
  }
  .float-search-box .result-header-sort .result-number {
    margin-left: 0;
    font-size: 1.4rem;
  }
  .float-search-box .result-header-sort .result-number label {
    font-size: 1.4rem;
  }
  .float-search-box .result-header-sort .result-number span {
    margin-left: 4px;
    font-size: 1.6rem;
  }
  .float-search-box.fixed {
    padding-bottom: 0;
  }
  .float-search-box.fixed .float-result-header {
    display: none;
  }
  .float-search-box.fixed .js-accordion-open {
    display: block;
  }
  .sub-target .result-header-sort {
    display: block;
    padding: 0;
  }
  .result-list.fixed-on {
    margin-top: 0;
  }
  .sub-target .result-header-sort .result-number {
    display: none;
  }
  .sort-change.station a:nth-child(3) {
    padding-right: 10px;
  }
  .sort-change a {
    padding: 1px 10px;
    margin: 4px 0;
  }
  .sort-change a:hover {
    color: #0f0a64;
  }
  .sort-change a:last-child {
    padding-left: 6px;
  }
  .modal-sort .inner {
    height: 100%;
    border-radius: 0;
  }
  .modal-sort .title {
    font-size: 1.4rem;
  }
  .modal-sort .btn-list li {
    margin: 0 4px 12px 0;
  }
  .modal-sort .modal-sort-body {
    height: 100%;
  }
  .modal-sort .scroll {
    height: 100%;
    overflow: auto;
    padding: 16px 0 50px;
    margin-bottom: 0;
  }
  .modal-sort .js-btn-submit {
    padding: 6px 45px !important;
    width: 166px;
    height: 40px;
  }
  .modal-sort .submit-box {
    position: fixed;
    bottom: 0;
    left: 0;
  }
  .modal-sort-conditions {
    overflow-y: auto;
    padding-bottom: 80px;
  }
  .modal-sort-conditions .scroll {
    height: auto;
    overflow: hidden;
    padding: 64px 16px 60px;
  }
  .modal-sort-conditions .submit-box {
    padding: 8px 16px 16px 16px;
    background: #fff;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
  }
  .modal-sort-conditions .js-btn-submit {
    width: 130px;
  }
  .modal-sort-conditions .btn-list .sort-element,
  .modal-sort-conditions .btn-list .sort-element-disabled {
    height: 33px;
  }
  .modal-sort.price-modal > .js-modal-close {
    display: none;
  }
  .modal-sort.price-modal .js-modal-close {
    position: absolute;
    top: 16px;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .modal-sort.price-modal .inner {
    max-width: 100%;
    top: auto;
    bottom: 0;
    left: 0;
    -webkit-transform: none;
            transform: none;
    border-radius: 24px 24px 0 0;
    padding-top: 30px;
  }
  .modal-sort.price-modal .modal-title {
    width: 100%;
    position: absolute;
    top: 22px;
    left: 0;
    margin: 0;
    text-align: center;
  }
  .modal-sort.price-modal .scroll {
    margin-bottom: 0;
    padding: 16px 16px 0;
  }
  .modal-sort.price-modal .submit-box {
    width: 100%;
    padding: 0 16px 16px 16px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .modal-sort.price-modal .submit-box .count span {
    font-size: 2rem;
  }
  .modal-sort.price-modal .submit-box .count span.unit {
    font-size: 1.2rem;
  }
  .modal-sort.price-modal .submit-box .js-btn-submit {
    max-width: 130px;
    width: 35vw;
  }
  .modal-sort.price-modal .submit-box .link-reset {
    position: absolute;
    left: 16px;
    top: 5px;
  }
  .modal-sort.price-modal .price-slider {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .modal-sort.price-modal .price-range input {
    font-size: 2rem;
  }
  .sort-element:hover {
    border-color: #F5F5F5;
    color: #757575;
  }
  .sort-element.active:hover {
    color: #000;
  }
  .sort-box .sort-price.active .count-box {
    font-size: 1.2rem;
  }
  .sort-box .sort-price.active .count-box .count {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sort-box .sort-price.active .count-box .count .mark {
    margin-right: 2px;
  }
  .sort-box .sort-price.active .count-box .count > div {
    font-size: 12px;
    margin-left: 2px;
  }
  .sort-box .sort-price.active .count-box .count > div span {
    font-size: 1.0rem;
  }
  .sort-box .sort-price.active .count-box .count .number {
    margin-right: -7px;
    line-height: 1.2;
    padding: 0.5px 8px;
  }
  .sort-box .sort-price.active .count-box .count span:first-child {
    display: block;
  }
}

@media (max-width: 360px) {
  .sort-box {
    white-space: nowrap;
  }
  .sort-box .number {
    padding: 3px 3px;
    margin-right: 0;
  }
  .sort-box .sort-price.active .count-box .count .number {
    margin-right: 0;
  }
  .sort-box .btn-relux,
  .sort-box .sort-price.active .count-box {
    font-size: 10px;
  }
  .submit-box .js-btn-reset {
    padding: 6px 6px;
    font-size: 1.4rem;
  }
  .modal-sort .slider-guide {
    font-size: 10px;
  }
  .modal-sort .js-btn-submit {
    padding: 6px 32px !important;
    font-size: 1.4rem;
    width: 100px;
    height: 32px;
  }
  .modal-sort.price-modal .submit-box .js-btn-submit {
    width: 32vw;
  }
  .modal-sort.price-modal .submit-box .count span {
    font-size: 1.7rem;
  }
}

@media screen and (max-width: 1023px) {
  .result-number {
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .detail-page .modal-sort .btn-submit {
    margin-left: 4px;
  }
  .detail-page .modal-sort .js-btn-submit {
    padding: 6px !important;
    width: 100px;
  }
  .detail-page .modal-sort .submit-box .link-reset {
    letter-spacing: 0;
  }
  .detail-page .modal-sort .submit-box .count-title {
    margin-right: 4px;
    font-size: 1.4rem;
  }
  .detail-page .modal-sort .submit-box .count .num {
    font-size: 1.6rem;
  }
}

@media (max-width: 360px) {
  .detail-page .modal-sort .btn-submit {
    margin-left: 4px;
  }
  .detail-page .modal-sort .js-btn-submit {
    padding: 6px !important;
    width: 80px;
  }
  .detail-page .modal-sort .submit-box .link-reset {
    letter-spacing: 0;
  }
  .detail-page .modal-sort .submit-box .count-title {
    margin-right: 2px;
    font-size: 1.2rem;
    letter-spacing: 0;
  }
  .detail-page .modal-sort .submit-box .count span {
    margin-left: 1px;
    margin-right: 1px;
  }
  .detail-page .modal-sort .submit-box .js-btn-reset {
    font-size: 1.3rem;
    letter-spacing: 0;
  }
}

/*
  エリア検索モーダル
*/
.modal-sort-area {
  height: 700px;
  position: relative;
}

.modal-sort-area .scroll {
  max-height: calc(90vh - 116px);
  height: calc(100% - 116px);
  overflow-y: auto;
}

.modal-sort-area .scroll.on {
  height: calc(100% - 140px);
}

.modal-sort-area .scroll.open {
  /* height: calc(100% - 220px); */
}

.modal-sort-area .region-element {
  display: none;
}

.modal-sort-area .bottom-box {
  background: #fff;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 8px 12px 0 16px;
  z-index: 21;
}

.modal-sort-area .bottom-box .select-list {
  display: none;
}

.modal-sort-area .bottom-box .select-list dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.modal-sort-area .bottom-box .select-list dt {
  width: 130px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-left: 24px;
  padding-top: 3px;
}

.modal-sort-area .bottom-box .select-list dd {
  width: 100%;
}

.modal-sort-area .bottom-box .select-list dd .sort-element {
  margin: 0 8px 8px 0;
}

.modal-sort-area .bottom-box .select-list dd .sort-element.active:after {
  display: inline-block;
  content: "×";
  vertical-align: middle;
  margin-left: 4px;
  margin-right: -2px;
  color: #757575;
}

.modal-sort-area .bottom-box .select-list .num {
  background: #C6C6C6;
  min-width: 28px;
  padding: 2px 8px 4px;
  border-radius: 100px;
  display: inline-block;
  text-align: center;
  color: #fff;
}

.modal-sort-area .bottom-box .select-list .area-list {
  height: 36px;
  overflow: hidden;
  padding-right: 42px;
  padding-bottom: 8px;
  position: relative;
}

.modal-sort-area .bottom-box .select-list .area-list.open {
  height: auto;
  max-height: 172px;
  overflow-y: auto;
}

.modal-sort-area .bottom-box .select-list .area-list::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.modal-sort-area .bottom-box .select-list .area-list::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.modal-sort-area .bottom-box .select-list .area-list::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.modal-sort-area .bottom-box .select-list .area-list .sort-element:last-of-type {
  margin-right: 0 !important;
}

.modal-sort-area .bottom-box .btn-open {
  display: none;
  top: 24px;
  right: 28px;
}

.modal-sort-area .bottom-box .submit-box {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.modal-sort-area .bottom-box .sort-element.active:hover {
  background: #fff;
  color: #0F0A64;
}

.modal-sort-area .bottom-box .sort-element.active:hover:after {
  color: #0F0A64 !important;
}

.modal-sort-area .bottom-box {
  -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
  border-top: 1px solid #F5F5F5;
}

@-webkit-keyframes slideUp {
  100% {
    height: 250px;
  }
}

@keyframes slideUp {
  100% {
    height: 250px;
  }
}

.modal-sort-area .region {
  padding: 10px 10px 0;
  border-top: 3px solid #F5F5F5;
  overflow: hidden;
  position: relative;
}

.modal-sort-area .region dt {
  width: 90px;
  float: left;
  clear: both;
  padding: 3px 0;
  font-weight: bold;
  margin-right: 16px;
}

.modal-sort-area .region dd {
  width: calc(100% - 130px);
  float: left;
  padding-right: 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.modal-sort-area .region dd .sort-element {
  margin-bottom: 10px;
}

.modal-sort-area .region dd .sort-element-disabled {
  margin-bottom: 10px;
}

.modal-sort-area .btn-open {
  position: absolute;
  top: 30px;
  right: 6px;
  padding: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  cursor: pointer;
  z-index: 10;
}

.modal-sort-area .btn-open:before {
  content: "";
  display: block;
  margin-top: 7px;
  border: 8px solid transparent;
  border-top: 7px solid #0F0A64;
}

.modal-sort-area .btn-open.open:before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  margin-top: -9px;
}

.modal-sort-area .btn-open:hover::before {
  border-top-color: #c6c6c6;
}

.modal-sort-area .btn-open.no-element {
  pointer-events: none;
}

.modal-sort-area .checkbox {
  background: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  width: 22px;
  height: 22px;
  border: 2px solid #757575;
  border-radius: 2px;
  vertical-align: top;
  margin-top: 4px;
}

.modal-sort-area .checkbox:checked {
  background: #0F0A64 url(/stcontents/img/common/icon-checked-white.svg) no-repeat center center;
  background-size: 14px;
  border-color: #0F0A64;
}

.modal-sort-area a.no-element {
  background: #f5f5f5 !important;
  border: 2px solid #f5f5f5 !important;
  padding: 2px 11px 3px;
  color: #c6c6c6 !important;
  cursor: default !important;
  pointer-events: none;
}

.modal-sort-area .no-element.checkbox:checked,
.modal-sort-area .no-element label .checkbox:checked {
  background: #f5f5f5 !important;
  border-color: #f5f5f5 !important;
}

.modal-sort-area .no-element label,
.modal-sort-area .no-element span {
  color: #c6c6c6 !important;
  pointer-events: none;
}

.modal-sort-area .no-element label input {
  background: #f5f5f5 !important;
  border: 2px solid #f5f5f5 !important;
}

.modal-sort-area label.no-element {
  color: #c6c6c6 !important;
  pointer-events: none;
}

.modal-sort-area label.no-element input {
  background: #f5f5f5 !important;
  border: 2px solid #f5f5f5 !important;
  pointer-events: none;
}

.modal-sort-area .prefecture-box {
  display: none;
}

.modal-sort-area .prefecture {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 24px;
}

.modal-sort-area .prefecture dt,
.modal-sort-area .prefecture dd {
  padding: 10px 10px 2px 0;
}

.modal-sort-area .prefecture dt {
  padding-top: 12px;
  padding-right: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.modal-sort-area .prefecture dt span {
  padding: 0 8px;
  display: inline-block;
  width: 132px;
}

.modal-sort-area .prefecture dd {
  width: 100%;
  padding-right: 30px;
  position: relative;
}

.modal-sort-area .prefecture .btn-open {
  top: 30px;
}

.modal-sort-area .prefecture .btn-open:before {
  width: 8px;
  height: 8px;
  margin: -8px 3px 0 0;
  border: none;
  border-top: 2px solid #0F0A64;
  border-right: 2px solid #0F0A64;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.modal-sort-area .prefecture .btn-open:hover::before {
  border-top-color: #c6c6c6;
  border-right-color: #c6c6c6;
}

.modal-sort-area .prefecture .btn-open.open {
  top: 35px;
}

.modal-sort-area .prefecture .btn-open.open:before {
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}

.modal-sort-area .prefecture + .prefecture {
  border-top: 1px solid #F5F5F5;
}

.modal-sort-area .largearea_group {
  height: 40px;
  overflow: hidden;
}

.modal-sort-area .largearea_group li {
  float: left;
  margin-right: 8px;
  margin-bottom: 8px;
}

.modal-sort-area .largearea_group.open {
  height: 100%;
}

.modal-sort-area .largearea_group.open-fix {
  height: 100%;
}

@media (max-height: 750px) {
  .modal-sort-area {
    height: auto;
  }
  .modal-sort-area .scroll {
    padding-bottom: 116px;
  }
  .modal-sort-area .scroll.on {
    padding-bottom: 156px;
  }
}

@media (max-width: 767px) {
  .modal-sort .slider-range {
    margin-top: 24px;
  }
  .modal-sort-area {
    height: 100% !important;
    overflow-y: auto;
    padding: 35px 16px 80px 16px;
    border-radius: 0;
  }
  .modal-sort-area .scroll {
    max-height: none;
    height: auto;
    overflow-y: auto;
    padding-bottom: 30px !important;
  }
  .modal-sort-area .scroll.on {
    height: auto;
    padding-bottom: 60px !important;
  }
  .modal-sort-area .js-modal-close, .modal-sort-conditions .js-modal-close {
    z-index: 20;
  }
  .modal-sort-area .js-modal-close.float, .modal-sort-conditions .js-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    position: fixed;
    top: 10px;
    width: 30px;
    height: 30px;
  }
  .modal-sort-area .modal-title, .modal-sort-conditions .modal-title {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: block;
    z-index: 12;
    margin: 0;
    padding: 10px;
    -webkit-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.08);
  }
  .modal-sort-area .region {
    padding: 0;
    border-top: 2px solid #f5f5f5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .modal-sort-area .region dt {
    width: 74px;
    padding: 10px 0;
    word-break: keep-all;
    letter-spacing: 0;
  }
  .modal-sort-area .region label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    pointer-events: none;
  }
  .modal-sort-area .region dd {
    width: auto;
    padding: 8px 16px 8px 0;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .modal-sort-area .region dd .sort-element {
    background: none !important;
    margin-bottom: 0;
    padding: 4px 0;
    border: none !important;
    display: block;
    margin-right: 8px;
  }
  .modal-sort-area .region dd .sort-element:after {
    content: '';
    margin-left: 4px;
  }
  .modal-sort-area .region dd .sort-element span {
    text-decoration: underline;
  }
  .modal-sort-area .region dd .sort-element span:nth-child(2) {
    display: none;
  }
  .modal-sort-area .region dd .sort-element.active {
    background: none;
    color: #0F0A64;
  }
  .modal-sort-area .checkbox {
    background-size: 13px;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    margin-right: 6px;
  }
  .modal-sort-area .btn-open {
    top: 24px;
    right: -10px;
  }
  .modal-sort-area .prefecture {
    display: block;
    position: relative;
    padding-left: 0;
  }
  .modal-sort-area .prefecture dt.no-element + dd .btn-open {
    display: none !important;
  }
  .modal-sort-area .prefecture dt span {
    padding: 0;
  }
  .modal-sort-area .prefecture dd {
    position: unset;
  }
  .modal-sort-area .prefecture .btn-open {
    top: 26px;
  }
  .modal-sort-area .prefecture .btn-open.open {
    top: 32px;
  }
  .modal-sort-area .prefecture .sort-element span {
    white-space: nowrap;
  }
  .modal-sort-area .largearea_group {
    height: 0;
  }
  .modal-sort-area .bottom-box {
    position: fixed;
    background: none;
    bottom: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
    padding: 0;
  }
  .modal-sort-area .bottom-box .select-list {
    background: #fff;
    -webkit-box-shadow: 0px -4px 15px rgba(0, 0, 0, 0.1);
            box-shadow: 0px -4px 15px rgba(0, 0, 0, 0.1);
    border-radius: 30px 30px 0 0;
    padding: 15px 0 0;
  }
  .modal-sort-area .bottom-box .select-list dl {
    display: block;
  }
  .modal-sort-area .bottom-box .select-list dt {
    width: auto;
    float: right;
    margin-right: 45px;
    margin-bottom: 16px;
    padding: 0;
  }
  .modal-sort-area .bottom-box .select-list dd {
    clear: both;
  }
  .modal-sort-area .bottom-box .select-list dd .sort-element {
    margin: 0 4px 16px 0;
  }
  .modal-sort-area .bottom-box .select-list .num {
    min-width: 22px;
    padding: 0px 4px 2px;
  }
  .modal-sort-area .bottom-box .select-list .area-list {
    width: 100%;
    height: 0;
    clear: both;
    padding: 0 16px 0;
  }
  .modal-sort-area .bottom-box .select-list .area-list.open {
    max-height: 326px;
  }
  .modal-sort-area .bottom-box .btn-open {
    top: 22px;
    right: 12px;
    margin: 0;
  }
  .modal-sort-area .bottom-box .btn-open:before {
    width: 8px;
    height: 8px;
    border: none;
    border-top: 2px solid #0F0A64;
    border-right: 2px solid #0F0A64;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .modal-sort-area .bottom-box .btn-open.open {
    top: 35px;
  }
  .modal-sort-area .bottom-box .btn-open.open:before {
    -webkit-transform: rotate(315deg);
            transform: rotate(315deg);
  }
  .modal-sort-area .bottom-box .submit-box {
    width: 100%;
    background: #fff;
    position: unset;
    bottom: auto;
    left: auto;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
    border-top: 1px solid #f5f5f5;
    padding: 8px 16px 16px 16px;
    clear: both;
  }
  .modal-sort-area .bottom-box .submit-box .link-reset {
    position: absolute;
    top: 16px;
    left: 16px;
  }
  .modal-sort-area .bottom-box .submit-box .js-btn-submit {
    width: 34vw;
  }
  .modal-sort-area .scroll.on .modal-sort-area-overlay {
    display: none;
    background: rgba(198, 198, 198, 0.7);
    content: "";
    width: 100%;
    height: 100%;
    position: fixed;
    top: -30px;
    left: 0;
    z-index: 20;
  }
  .modal-sort-area .scroll.on.open .modal-sort-area-overlay {
    display: block;
  }
  .modal-sort-area .scroll.on + .bottom-box .link-reset {
    display: block;
  }
  .modal-sort-price {
    padding-bottom: 120px;
  }
}

@media screen and (max-width: 360px) {
  .modal-sort .submit-box .count .unit {
    font-size: 1.0rem;
  }
  .modal-sort-conditions .submit-box {
    padding-bottom: 10px;
  }
  .submit-box .btn-submit {
    margin-left: 4px;
  }
  .submit-box .count {
    font-size: 1.0rem;
  }
  .submit-box .count span {
    margin-left: 2px;
    margin-right: 2px;
    font-size: 1.6rem;
  }
}

/*
  トップページ使用パーツ
*/
.feature-line {
  width: 100%;
  overflow-x: auto;
  position: relative;
  text-align: center;
  padding-top: 16px;
  padding-bottom: 8px;
}

.feature-line .js-scroll-box {
  margin-left: -16px;
  margin-right: -16px;
}

.feature-line .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-content: space-between;
      -ms-flex-line-pack: justify;
          align-content: space-between;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.feature-line .inner:after {
  content: "";
  display: block;
  padding: 0 20px;
}

.feature-line .btn-relux-offer {
  width: 100%;
}

.feature-line a {
  float: left;
  margin: 0 8px 8px 0;
  padding: 5px 16px;
  font-weight: bold;
}

.feature-line a:last-child {
  margin-right: 0px;
}

.feature-line .btn-default.active,
.feature-line .btn-default:active,
.feature-line .btn-default:focus,
.feature-line .open .dropdown-toggle.btn-default {
  background: #fff;
  color: #0F0A64;
  text-decoration: none;
  border-color: #c6c6c6;
}

.feature-line .btn-scroll {
  display: none;
}

@media (min-width: 768px) {
  .feature-line {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .feature-line::-webkit-scrollbar {
    display: none;
  }
  .feature-line .js-scroll-box {
    margin-left: 0;
    margin-right: 0;
  }
  .feature-line .inner {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0 auto;
  }
  .feature-line .btn-relux-offer {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 24px;
  }
  .feature-line a {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 8px 16px 0;
    margin-right: 20px;
  }
  .feature-line .btn-scroll, .feature-line .btn-scroll-prev {
    width: 12px;
    height: 22px;
  }
  .feature-line .btn-scroll {
    display: block;
  }
  .feature-line .js-scroll-box:after,
  .feature-line .js-scroll-box:before {
    background: #fff;
    content: "";
    display: block;
    width: 60px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
  }
  .feature-line .js-scroll-box:before {
    width: 50px;
    right: inherit;
    left: 0;
  }
  .feature-line .js-scroll-box .inner {
    margin-left: 40px;
  }
}

.feature-area-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 16px;
}

.feature-area-list li {
  width: calc(50% - 4px);
  height: 120px;
  margin-bottom: 8px;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  text-shadow: 1px 1px 1px #000;
}

.feature-area-list li a {
  display: block;
  width: 100%;
  height: 100%;
}

.feature-area-list li span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  font-size: 1.6rem;
  color: #fff;
}

.feature-area-list li img {
  height: 100%;
  width: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
}

.feature-area.pb-0 {
  padding-bottom: 0;
}

.special-list li {
  height: auto;
  box-shadow: none;
  margin-bottom: 16px;
}
.special-list li a:after {
  content: none;
}
.special-list li .photo {
  height: 120px;
  margin-bottom: 8px;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
}
.special-list li .notice {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
  font-size: 2rem;
  color: #fff;
  text-align: center;
}
.special-list li span {
  position: relative;
  top: inherit;
  left: inherit;
  transform: none;
  color: inherit;
  text-align: left;
}
.special-list li .text span {
  font-size: inherit !important;
  display: inline;
  padding: 0;
}
.special-list .coming,
.special-list .finish {
  pointer-events: none;
}
.special-list .coming .photo:before,
.special-list .finish .photo:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 8px;
}
.special-list li .text {
  font-size: 1.6rem;
  z-index: 1;
  text-shadow: none;
  color: #333;
  padding: 0;
}

@media (min-width: 768px) {
  .feature-area-list {
    margin-bottom: 16px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .feature-area-list::after {
    content:"";
    display: block;
    width: 32%;
  }
  .feature-area-list a:hover {
    opacity: 0.7;
  }
  .feature-area-list li {
    height: 160px;
    width: 32%;
    max-width: 352px;
    margin-right: 0;
    overflow: hidden;
    position: relative;
    border-radius: 8px;
    margin-bottom: 20px;
  }
  .feature-area-list li:last-child, .feature-area-list li:nth-child(3n) {
    margin-right: 0;
  }
  .feature-area-list li .text {
    font-size: 2.4rem;
  }
  .special-list li {
    height: auto;
    margin-bottom: 24px;
  }
  .special-list li .photo {
    height: 160px;
  }
  .special-list li .text {
    font-size: 1.6rem;
  }
}

@media (min-width: 1280px) {
  .feature-line {
    max-width: 1120px;
  }
  .feature-line .btn-scroll, .feature-line .btn-scroll-prev {
    display: none;
  }
  .feature-area-list li span {
    font-size: 2.4rem;
  }
}

.feature-area-list2 {
  display: flex;
  flex-wrap: wrap;
}

.feature-area-list2 > li {
  width: calc(25% - 24px);
  height: 80px;
  margin-right: 32px;
  margin-bottom: 8px;
}

.feature-area-list2 > li:last-child {
  margin-right: 0;
}

.card-arrow-link {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.card-arrow-link-inner {
  width: 100%;
  height: 100%;
}

.card-arrow-link:before {
  background: rgba(0,0,0,0.15);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.card-arrow-link .image {
  width: 100%;
  height: 100%;
}

.card-arrow-link .image img {
  object-fit:cover;
  width: 100%;
  height: 100%;
}

.card-arrow-link:nth-child(1) .image img {
  object-position: center 70%;
}

.card-arrow-link .text {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 0 10px;
  text-align: center;
  line-height: 1.5;
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  text-shadow: 1px 1px 1px #000;
}
.card-arrow-link:hover {
  opacity: .7;
}

@media (min-width: 768px) {
  /* 3カラム表示の場合、.column-3をつける */
  .feature-area-list2.column-3 > li {
    width: calc(100% / 3 - 21.33px); /* (32 * 2) / 3 = 21.33px */
    height: 120px;
    margin-right: 32px;
    margin-bottom: 32px;
  }
  .feature-area-list2.column-3 > li:nth-child(3n) {
    margin-right: 0;
  }
  .feature-area-list2.column-3 .card-arrow-link .text {
    font-size: 2rem;
  }
}

@media (max-width: 1023px) {
  .feature-area-list2 > li {
    width: calc(25% - 12px);
    margin-right: 16px;
  }
}

@media (max-width: 767px) {
  .feature-area-list2 > li {
    width: calc(50% - 4px);
    height: 64px;
    margin-right: 8px;
    margin-bottom: 8px;
  }
  .feature-area-list2 > li:last-child {
    margin-right: 8px;
  }
  .feature-area-list2 > li:nth-child(2n) {
    margin-right: 0;
  }
}

.access-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.access-list dt,
.access-list dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid #C6C6C6;
}

.access-list dt:first-of-type,
.access-list dd:first-of-type {
  border-top: 1px solid #C6C6C6;
}

.access-list dt {
  width: 74px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.access-list dd {
  width: calc(100% - 74px);
}

.access-list.large-style dd {
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .feature-area-list li {
    height: 90px;
  }

  .access-list dt,
  .access-list dd {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 8px 0;
  }
  .access-list dt img,
  .access-list dd img {
    width: 13px;
  }
  .access-list dt {
    width: 40px;
    padding-top: 14px;
  }
  .access-list dd {
    width: calc(100% - 40px);
  }
}

.col3-article {
  width: auto;
  overflow-x: auto;
  margin-top: 40px;
  margin-left: -16px;
  margin-right: -16px;
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}

.col3-article::-webkit-scrollbar {
  display: none;
}

.col3-article ul {
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 16px;
  padding-right: 16px;
  float: left;
}

.col3-article li {
  width: 226px;
  height: 120px;
  position: relative;
  margin-right: 8px;
  float: left;
  line-height: 1.5;
}

.col3-article li:last-child {
  margin-right: 0;
}

.col3-article li .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.col3-article li .inner {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 8px;
  z-index: 2;
  font-size: 1.2rem;
  text-shadow: 0 0 5px #000;
  color: #fff;
}

.col3-article .slick-arrow {
  width: 15px;
  height: 28px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.col3-article .slick-arrow::before {
  display: none;
}

.col3-article .slick-arrow.slick-disabled {
  display: none !important;
}

.col3-article .slick-next {
  background-image: url(/stcontents/img/common/icon-arrow-right-white.svg);
  right: 24px;
}

.col3-article .slick-next:hover {
  background-image: url(/stcontents/img/common/right_Hover.svg);
  background-size: contain;
}

.col3-article .slick-prev {
  background-image: url(/stcontents/img/common/icon-arrow-left-white.svg);
  left: 24px;
}

.col3-article .slick-prev:hover {
  background-image: url(/stcontents/img/common/left_Hover.svg);
  background-size: contain;
}

.col3-article .hotel-1 {
  background: url("/stcontents/img/index/bg-grade-hotel-1.jpg") no-repeat center center;
  background-size: cover;
}

.col3-article .hotel-2 {
  background: url("/stcontents/img/index/bg-grade-hotel-2.jpg") no-repeat center center;
  background-size: cover;
}

.col3-article .hotel-3 {
  background: url("/stcontents/img/index/bg-grade-hotel-3.jpg") no-repeat center center;
  background-size: cover;
}

.col3-article .hotel-4 {
  background: url("/stcontents/img/index/bg-grade-hotel-4.jpg") no-repeat center center;
  background-size: cover;
}

.col3-article .hotel-5 {
  background: url("/stcontents/img/index/bg-grade-hotel-5.jpg") no-repeat center center;
  background-size: cover;
}

.col3-article .grade {
  margin-bottom: 0;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.col3-article .grade img {
  height: 16px;
  margin-right: 4px;
  vertical-align: top;
}

.col3-article .grade .museum,
.col3-article .grade .casual {
  height: 16px;
}

.col3-article .text {
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

@media (min-width: 768px) {
  .col3-article {
    height: auto;
    margin-top: 32px;
    padding-bottom: 16px;
    margin-left: 0;
    margin-right: 0;
  }
  .col3-article ul {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .col3-article li {
    width: 384px;
    height: 200px;
    margin-right: 16px;
  }
  .col3-article li a:hover {
    opacity: .7;
  }
  .col3-article li .inner {
    bottom: 0;
    padding: 10px 24px 16px;
    font-size: 1.6rem;
  }
  .col3-article .text {
    height: 48px;
    margin: 0;
    -webkit-line-clamp: 2;
  }
  .col3-article .grade {
    line-height: 1;
  }
  .col3-article .grade img {
    height: 20px;
    vertical-align: top;
  }
  .col3-article .grade .museum,
  .col3-article .grade .casual {
    height: 20px;
  }
}

.col4-article ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.col4-article ul li {
  width: calc(50% - 4px);
  height: 21vw;
  position: relative;
  margin-bottom: 8px;
  margin-right: 8px;
  border-radius: 6px;
}

.col4-article ul li:nth-child(2n) {
  margin-right: 0;
}

.col4-article ul li:hover {
  opacity: 0.7;
}

.col4-article ul li:before {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(0, 0, 0, 0.18)), to(rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0.18) 60%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(rgba(0, 0, 0, 0.18) 60%, rgba(0, 0, 0, 0) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.col4-article ul .area-1 {
  background: url(/stcontents/img/index/hot-area-photo-1.png) no-repeat center center;
  background-size: cover;
}

.col4-article ul .area-2 {
  background: url(/stcontents/img/index/hot-area-photo-1.png) no-repeat center center;
  background-size: cover;
}

.col4-article ul .area-3 {
  background: url(/stcontents/img/index/hot-area-photo-1.png) no-repeat center center;
  background-size: cover;
}

.col4-article ul .area-4 {
  background: url(/stcontents/img/index/hot-area-photo-1.png) no-repeat center center;
  background-size: cover;
}

.col4-article ul a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding: 0 16px;
  font-size: 1.6rem;
  text-align: center;
  text-shadow: 1px 1px 1px #000;
  color: #fff;
  z-index: 1;
}

.col4-article.flex-wrap .flex {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.col4-article.flex-wrap ul {
  margin-top: 20px;
}

.col4-article.flex-wrap ul a {
  padding: 0;
}

.col4-article.flex-wrap ul li {
  width: calc(50% - 4px);
  height: 152px;
  margin-bottom: 8px;
  overflow: hidden;
}

.col4-article.flex-wrap ul li:before {
  content: none;
}

.col4-article.flex-wrap ul li:nth-child(4n) {
  margin-right: 0;
}

.col4-article.flex-wrap ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hot-area-line {
  position: relative;
}

.hot-area-line .inner {
  width: 100%;
  overflow: hidden;
}

.hot-area-tag {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 16px;
}

.hot-area-tag li {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.hot-area-tag a {
  height: 40px;
  margin-bottom: 10px;
  margin-right: 8px;
}

.hot-area-tag .btn-default.active,
.hot-area-tag .btn-default:active,
.hot-area-tag .btn-default:focus,
.hot-area-tag .open .dropdown-toggle.btn-default {
  background: #fff;
  color: #0F0A64;
  text-decoration: none;
  border-color: #c6c6c6;
}

@media (min-width: 1024px) {
  .col4-article ul a {
    font-size: 2rem;
  }
  .col4-article.flex-wrap ul li {
    width: calc(25% - 24px);
    height: 152px;
    margin-bottom: 32px;
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  .col4-article ul {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .col4-article ul li {
    width: 260px;
    height: 104px;
    margin-bottom: 0;
    margin-right: 32px;
    border-radius: 6px;
  }
  .col4-article ul li:nth-child(2n) {
    margin-right: 32px;
  }
  .col4-article ul li:last-child {
    margin-right: 0;
  }
  .hot-area-tag {
    width: 100%;
  }
  .hot-area-tag a {
    margin: 0 14px 10px 0;
  }
  .hot-area-line {
    overflow: hidden;
    padding-right: 0;
  }
  .hot-area-line .inner {
    position: relative;
  }
  .hot-area-line .inner:after {
    content: none;
  }
}

@media (max-width: 1023px) {
  .col4-article.flex-wrap ul li {
    margin-right: 8px;
  }
  .col4-article.flex-wrap ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media (max-width: 360px) {
  .col4-article ul a {
    font-size: 1.3rem;
  }
}

.col5-article {
  position: relative;
  margin-left: -16px;
  margin-right: -16px;
}

.col5-article ul {
  padding-left: 16px;
  padding-right: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: left;
}

.col5-article ul .photo {
  width: 106px;
  height: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.col5-article ul .photo img {
  max-width: none;
  height: 100%;
  width: auto;
}

.col5-article ul li {
  text-align: center;
  margin-right: 8px;
}

.col5-article ul li:last-child {
  margin-right: 0;
}

.col5-article ul li .text {
  font-weight: bold;
}

.col5-article ul a {
  display: block;
  text-decoration: none;
  text-align: left;
  font-size: 1.2rem;
  color: #333;
}

.col5-article .btn-scroll,
.col5-article .btn-scroll-prev {
  top: 50px;
}

.col5-article .btn-scroll-prev {
  left: 36px;
}

@media (width: 768px) {
  .js-scroll-box .btn-scroll.pc-only,
  .js-scroll-box .btn-scroll-prev.pc-only {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .col5-article {
    margin-left: 0;
    margin-right: 0;
  }
  .col5-article .wrap:after {
    content: none;
  }
  .col5-article ul {
    width: 1250px;
    padding-left: 0;
    padding-right: 0;
  }
  .col5-article ul .photo {
    width: 198px;
    height: 100px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    overflow: hidden;
    border-radius: 8px;
  }
  .col5-article ul .photo img {
    width: 100%;
  }
  .col5-article ul li {
    text-align: center;
    margin-right: 32px;
  }
  .col5-article ul a {
    font-size: 1.6rem;
  }
  .col5-article ul a:hover {
    opacity: .7;
  }
}

@media (min-width: 1280px) {
  .col5-article .btn-scroll,
  .col5-article .btn-scroll-prev {
    display: none;
  }
  .col5-article ul {
    width: auto;
  }
}

.selections-area {
  padding: 20px 0;
}

.col6-article,
.col6-article-2 {
  position: relative;
}

.col6-article .js-scroll-box,
.col6-article-2 .js-scroll-box {
  margin-left: -16px;
  margin-right: -16px;
}

.col6-article .js-scroll-box ul,
.col6-article-2 .js-scroll-box ul {
  padding-left: 16px;
  padding-right: 16px;
}

.col6-article ul,
.col6-article-2 ul {
  float: left;
  margin: 0 auto;
  padding-right: 32px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

.col6-article li,
.col6-article-2 li {
  min-width: 230px;
  margin-bottom: 16px;
  margin-right: 8px;
}

.col6-article li:last-child,
.col6-article-2 li:last-child {
  margin-right: 0;
}

.col6-article li a,
.col6-article-2 li a {
  display: block;
  font-weight: 100;
  font-size: 1.4rem;
  color: #000;
}

.col6-article li .thumb,
.col6-article-2 li .thumb {
  width: 230px;
  height: 160px;
  overflow: hidden;
  border-radius: 8px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
}

.col6-article li .thumb img,
.col6-article-2 li .thumb img {
  width: 230px;
  height: 160px;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
  -webkit-transform-origin: center;
          transform-origin: center;
}

.col6-article li .date,
.col6-article-2 li .date {
  font-size: 1.2rem;
}

.col6-article li .date,
.col6-article-2 li .date {
  font-weight: normal;
  color: #757575;
}

.col6-article li:last-child,
.col6-article-2 li:last-child {
  margin-right: 0;
}

.col6-article .more-box,
.col6-article-2 .more-box {
  min-width: 168px;
  height: 160px;
}

.col6-article .more-box a,
.col6-article-2 .more-box a {
  background: #fff;
  width: calc(100% - 8px);
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: 8px;
  padding: 10px;
  border-radius: 6px;
  overflow: hidden;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
}

.col6-article .more-box p,
.col6-article-2 .more-box p {
  width: 100%;
  text-align: center;
  margin: 0;
}

.col6-article .more-box p:first-child,
.col6-article-2 .more-box p:first-child {
  margin-bottom: 10px;
}

.col6-article .more-box .text-link,
.col6-article-2 .more-box .text-link {
  font-weight: bold;
}

.col6-article .btn-scroll,
.col6-article .btn-scroll-prev,
.col6-article-2 .btn-scroll,
.col6-article-2 .btn-scroll-prev {
  top: 150px;
}

.journal .col6-article ul li .thumb {
  position: relative;
}

.journal .col6-article ul .more-box .thumb:after {
  content: none;
}

.journal .col6-article ul .more-box a {
  background-color: #f5f5f5;
}

.journal .col6-article ul .btn-scroll,
.journal .col6-article ul .btn-scroll-prev {
  top: 146px;
}

.col6-article-2 ul li {
  width: 17%;
  min-width: 109px;
  margin-right: 8px;
}

.col6-article-2 ul li .thumb {
  width: 109px;
  height: 109px;
}

.col6-article-2 ul li .thumb img {
  width: 109px;
  height: 109px;
}

.col6-article-2 ul li .text {
  font-weight: bold;
  color: #333;
}

.col6-article-2 ul .more-box {
  min-width: 109px;
  height: 109px;
}

.col6-article-2 ul .more-box a {
  background: rgba(0, 0, 0, 0.1);
  height: 109px;
  padding: 0;
}

.col6-article-2 ul .more-box .text-link {
  font-size: 1.2rem;
}

.col6-article-2 ul .more-box .text-link:after {
  margin-left: 4px;
  margin-bottom: -2px;
}

@media (min-width: 768px) {
  .selections-area {
    padding: 40px 0;
  }
  .col6-article .js-scroll-box,
  .col6-article-2 .js-scroll-box {
    margin-left: 0;
    margin-right: 0;
  }
  .col6-article .js-scroll-box ul,
  .col6-article-2 .js-scroll-box ul {
    padding-left: 0;
    padding-right: 0;
  }
  .col6-article li {
    min-width: 290px;
  }
  .col6-article li .thumb {
    width: 290px;
    height: 164px;
  }
  .col6-article li .thumb img {
    width: 290px;
    height: 164px;
  }
  .col6-article li a:hover {
    opacity: .7;
  }
  .col6-article-2 ul li,
  .col6-article-2 ul .more-box {
    min-width: 160px;
    margin-right: 24px;
  }
  .col6-article-2 ul li .thumb,
  .col6-article-2 ul .more-box .thumb {
    width: 160px;
    height: 160px;
  }
  .col6-article-2 ul li .thumb img,
  .col6-article-2 ul .more-box .thumb img {
    width: 160px;
    height: 160px;
  }
  .col6-article-2 ul .more-box a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 160px;
  }
  .col6-article-2 ul .more-box .text-link {
    font-size: 1.6rem;
  }
  .col6-article-2 ul .more-box .text-link:after {
    margin-left: 10px;
    margin-bottom: -1px;
  }
}

@media (min-width: 1024px) {
  .col6-article ul {
    max-width: none;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .col6-article li {
    margin-right: 32px;
  }
  .col6-article li a {
    font-size: 1.6rem;
  }
}

.banner-list figure {
  width: 100%;
  height: 100%;
}

.banner-list figure:before {
  background-color: rgba(0, 0, 0, 0.35);
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
}

.banner-list figcaption {
  width: calc(100% - 24px);
  font-weight: bold;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: normal;
}

.banner-list figcaption span {
  display: block;
}

.banner-list figcaption .area-name {
  font-size: 2.0rem;
}

.banner-list figcaption .area-subname {
  font-size: 1.6rem;
}

.banner-list.large figcaption .area-name,
.banner-list.large figcaption .area-subname {
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .banner-list figcaption .area-name {
    font-size: 1.4rem;
  }
  .banner-list figcaption .area-subname {
    font-size: 1.2rem;
  }
  .banner-list.large figcaption .area-subname {
    font-size: 1.2rem;
  }
}

@media (max-width: 767px) {
  .room-tab-frame {
    width: 100%;
    overflow: hidden;
  }
  .banner-list.large figcaption .area-name,
  .banner-list.large figcaption .area-subname {
    font-size: 1.6rem;
  }
}

/*
  その他パーツ
*/
/* スクロールボタン */
.btn-scroll,
.btn-scroll-prev,
.btn-scroll-2,
.btn-scroll-prev-2 {
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
}

.btn-scroll:hover,
.btn-scroll-prev:hover,
.btn-scroll-2:hover,
.btn-scroll-prev-2:hover {
  opacity: 0.7;
  cursor: pointer;
}

.btn-scroll-prev,
.btn-scroll-prev-2 {
  display: none;
  right: inherit;
  left: 16px;
  margin-top: 4px;
}

.btn-scroll-prev .rotate,
.btn-scroll-prev-2 .rotate {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.btn-inactive {
  pointer-events: none;
}

/* KV */
.key-visual {
  width: 100%;
  height: calc(80vh - 116px);
  position: relative;
  color: #fff;
}

.key-visual h1 {
  text-shadow: 0 0 5px #000;
}

.key-visual .inner {
  position: absolute;
  width: 94%;
  top: 50%;
  left: 3%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  z-index: 2;
}

.key-visual .sns {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0;
  text-align: right;
  line-height: 1;
}

.featureRecommendRank__piechart {
  width: 88px;
  height: 88px;
  text-align: center;
}

.featureRecommendRank__circleValuation {
  -webkit-animation: circleValuation 3s;
  animation: circleValuation 3s;
  stroke: #0f0a64;
}

@-webkit-keyframes circleValuation {
  0% {
    stroke-dasharray: 0 427;
  }
}

@keyframes circleValuation {
  0% {
    stroke-dasharray: 0 427;
  }
}

.icon-off-eye, .icon-on-eye {
  background: url(/stcontents/img/common/icon-off-eye.svg) no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.icon-on-eye {
  background: url(/stcontents/img/common/icon-on-eye.svg) no-repeat;
  background-size: contain;
}

@media (min-width: 768px) {
  .icon-off-eye:hover, .icon-on-eye:hover {
    background-image: url(/stcontents/img/common/hover-icon-off-eye.svg);
  }
  .icon-on-eye:hover {
    background-image: url(/stcontents/img/common/hover-icon-on-eye.svg);
  }
}

.icon-frame {
  width: 18px;
  margin: 0 6px;
}

.icon-frame-2 {
  width: 32px;
  margin: 0 6px;
}

.icon-help {
  width: 20px;
}

@media (max-width: 767px) {
  .icon-frame,
  .icon-frame-2 {
    margin: 0 10px;
  }
}

.icon-map {
  background: #0F0A64 url(/stcontents/img/common/icon-map-white.svg) no-repeat center center;
  width: 32px;
  height: 32px;
  background-size: 22px;
  display: inline-block;
  border-radius: 4px;
  overflow: hidden;
  text-indent: -300px;
}

.icon-big {
  background: url(/stcontents/img/common/icon-big.svg) no-repeat;
  background-size: contain;
  width: 2.5rem;
  height: 2.5rem;
  cursor: pointer;
}

.icon-big:hover {
  background: url(/stcontents/img/common/hover-icon-big.svg) no-repeat;
  background-size: contain;
}

.slick-counter {
  bottom: 8px;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.3);
  height: auto !important;
  width: 4rem !important;
  border-radius: 2rem;
  padding: 0 .5rem;
  font-size: 1rem;
  text-align: center;
  color: #fff;
}

.kv-slider .slick-counter {
  display: block;
}

@media (min-width: 1024px) {
  .slick-counter {
    right: 0;
    font-size: 1.4rem;
  }
}

.icon-favorite a,
.icon-favorite-on a {
  display: block;
  width: 30px;
  height: 30px;
  cursor: pointer;
}

.icon-favorite a {
  background: url(/stcontents/img/common/icon-favorite.svg) no-repeat center center;
  background-size: 100%;
}

.icon-favorite-on a {
  background: url(/stcontents/img/common/icon-favorite-on.svg) no-repeat center center;
  background-size: 100%;
}

/* PC */
@media screen and (min-width: 768px) {
  .icon-favorite a:hover {
    background-image: url(/stcontents/img/common/icon-favorite-hover.svg);
    background-size: 100%;
  }
  .icon-favorite-on a:hover {
    background-image: url(/stcontents/img/common/icon-favorite-on-hover.svg);
    background-size: 100%;
  }
  .icon-map {
    width: 40px;
    height: 40px;
    background-size: auto;
  }
}

.btn-previous, .btn-next {
  background: url(/stcontents/img/common/icon-arrow-left-white.svg) no-repeat center center;
  background-size: contain;
  display: block;
  margin-top: 0;
  width: 50px;
  height: 26px;
  padding: 0;
  border: none;
  color: transparent;
  -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
  cursor: pointer;
}

.btn-previous:hover, .btn-next:hover {
  background: url(/stcontents/img/common/left_Hover.svg) no-repeat center center;
}

.btn-next {
  background: url(/stcontents/img/common/icon-arrow-right-white.svg) no-repeat center center;
}

.btn-next:hover {
  background: url(/stcontents/img/common/right_Hover.svg) no-repeat center center;
}

.btn-scroll,
.btn-scroll-prev,
.btn-scroll-2,
.btn-scroll-prev-2 {
  width: 15px;
  height: 28px;
  margin: 0;
  font-size: 0;
  -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
}

.btn-scroll,
.btn-scroll-2 {
  background: url(/stcontents/img/common/icon-arrow-right-white.svg) no-repeat center center;
  background-size: contain;
}

.btn-scroll:hover,
.btn-scroll-2:hover {
  background: url(/stcontents/img/common/right_Hover.svg) no-repeat center center;
}

.btn-scroll.btn-black,
.btn-scroll-2.btn-black {
  background: url(/stcontents/img/common/right_Hover.svg) no-repeat center center;
  background-size: contain;
}

.btn-scroll.btn-black:hover,
.btn-scroll-2.btn-black:hover {
  background: url(/stcontents/img/common/icon-arrow-right-white.svg) no-repeat center center;
}

.btn-scroll-prev,
.btn-scroll-prev-2 {
  background: url(/stcontents/img/common/icon-arrow-left-white.svg) no-repeat center center;
}

.btn-scroll-prev:hover,
.btn-scroll-prev-2:hover {
  background: url(/stcontents/img/common/left_Hover.svg) no-repeat center center;
}

.btn-scroll-prev.btn-black,
.btn-scroll-prev-2.btn-black {
  background: url(/stcontents/img/common/left_Hover.svg) no-repeat center center;
  background-size: contain;
}

.btn-scroll-prev.btn-black:hover,
.btn-scroll-prev-2.btn-black:hover {
  background: url(/stcontents/img/common/icon-arrow-left-white.svg) no-repeat center center;
}

.photo-article a {
  display: block;
  color: inherit;
}

.photo-article a:hover {
  opacity: 0.7;
}

.photo-article .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.photo-article .flex .photo {
  width: 256px;
  overflow: hidden;
}

.photo-article .flex .photo img {
  width: 100%;
}

.photo-article .flex .text {
  width: calc(100% - 256px);
  padding-left: 24px;
}

.photo-article .flex .text .heading {
  margin-bottom: 8px;
}

.photo-article.half-box {
  border: 1px solid #EFEFEF;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 8px 8px;
  overflow: hidden;
}

.photo-article.half-box .photo {
  width: 43%;
}

.photo-article.half-box .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.photo-article.half-box .text {
  width: 57%;
  padding: 32px 32px;
}

.col2-article {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.col2-article > a {
  color: #333;
}

.col2-article > a:hover {
  opacity: 0.7;
}

.col2-article > * {
  background: #fff;
  width: calc(50% - 8px);
  display: block;
  margin-bottom: 16px;
  border: 1px solid #E5E5E5;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  border-radius: 8px;
  position: relative;
}

.col2-article > * .photo {
  width: 222px;
  height: 170px;
  line-height: 0;
}

.col2-article > * .photo img {
  width: 100%;
}

.col2-article > * .text {
  width: calc(100% - 222px);
  padding: 12px 40px 12px 16px;
}

.col2-article > *:after {
  content: url(/stcontents/img/common/icon-arrow-right-4.svg);
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -8px;
}

@media (max-width: 1023px) {
  .col2-article {
    display: block;
  }
  .col2-article > * {
    width: 100%;
    margin-bottom: 8px;
  }
  .col2-article > *:last-child {
    margin-bottom: 0;
  }
  .col2-article > * .flex .photo {
    width: 116px;
    height: 116px;
    overflow: hidden;
  }
  .col2-article > * .flex .photo img {
    height: 100%;
  }
  .col2-article > * .flex .text {
    width: calc(100% - 116px);
    padding: 4px 32px 0 8px;
  }
  .col2-article > * .flex .text .heading {
    margin-bottom: 0;
  }
  .col2-article > * .flex .font-xx-large {
    font-size: 1.6rem;
  }
}

@media (max-width: 767px) {
  .photo-article.col-1.mt-40 {
    margin-top: 24px;
  }
  .photo-article.col-1 .flex {
    display: block;
  }
  .photo-article.col-1 .flex .photo {
    width: 100%;
    max-height: 280px;
    position: relative;
  }
  .photo-article.col-1 .flex .photo img {
    width: 100%;
  }
  .photo-article.col-1 .flex .text {
    width: 100%;
    padding-left: 0;
  }
  .photo-article.col-1 .flex .text p {
    margin-bottom: 0;
  }
  .photo-article.col-1 .flex .heading {
    position: absolute;
    bottom: 16px;
    left: 16px;
    color: #fff;
  }
  .photo-article.col-1.half-box .flex .photo {
    height: auto;
  }
  .photo-article.col-1.half-box .flex .photo img {
    height: auto;
  }
  .photo-article.col-1.half-box .flex .text {
    padding: 8px 16px;
  }
}

@media (min-width: 768px) {
  .key-visual {
    height: 80vh;
  }
  .index .key-visual {
    max-height: 640px;
    min-height: 520px;
    height: 56.25vw;
  }
  .icon-off-eye, .icon-on-eye {
    width: 25px;
    height: 25px;
  }
  .icon-frame {
    width: 24px;
  }
  .icon-frame-2 {
    width: 32px;
  }
  .icon-help {
    width: 24px;
  }
  .icon-big {
    width: 3.5rem;
    height: 3.5rem;
  }
  .icon-favorite a,
  .icon-favorite-on a {
    width: 40px;
    height: 40px;
  }
}

/*
  カードレイアウト
*/
.frame-sub-list .btn-detail a {
  width: 100%;
  margin-top: 8px;
}

.frame-sub-list .page-number {
  display: none;
  background: rgba(255, 255, 255, 0.3);
  position: absolute;
  top: 8px;
  right: 20px;
  padding: 0 4px;
  border-radius: 15px;
  z-index: 1;
  font-size: 10px;
  color: #fff;
}

.frame-sub-list .sub-box > a {
  display: block;
  color: #333;
}

.frame-sub-list .sub-box > a:hover {
  opacity: 0.7;
}

.frame-sub-list .sub-box .sub-box-name {
  padding: 8px 16px 0;
}

.frame-sub-list .sub-box .sub-box-name .font-large {
  font-size: 1.6rem;
}

.frame-sub-list .sub-box .sub-box-name a {
  color: #333;
}
.frame-sub-list .sub-box .sub-box-name a::after {
  content: ' >';
}

.sale-page .frame-sub-list .sub-box .sub-box-name a {
  color: #333;
  text-decoration: underline;
}
.sale-page .frame-sub-list .sub-box .sub-box-name a:hover {
  text-decoration: none;
}

.sale-page .frame-sub-list .sub-box .sub-box-name a::after {
  content: none;
}

@media (max-width: 767px) {
  .frame-sub-list.carousel-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
    margin-bottom: 24px;
    padding: 0;
  }
  .frame-sub-list.carousel-box::-webkit-scrollbar {
    height: 4px;
  }

  /* スクロールバーの削除 */
  .frame-sub-list.carousel-box {
    /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
    -ms-overflow-style: none;
    /*Firefoxへの対応*/
    scrollbar-width: none;
  }
  .frame-sub-list.carousel-box::-webkit-scrollbar {
    /*Google Chrome、Safariへの対応*/
    display: none;
  }

  .frame-sub-list.carousel-box::-webkit-scrollbar-thumb {
    background-color: transparent;
    background-color: #C6C6C6;
  }
  .frame-sub-list.carousel-box::-webkit-scrollbar-track {
    background-color: #F5F5F5;
  }
  .frame-sub-list.carousel-box .sub-box {
    width: 280px;
    margin-right: 8px;
    margin-left: 0;
    min-width: 280px;
  }
  .frame-sub-list.carousel-box .sub-box:first-child {
    margin-left: 16px;
  }
  .frame-sub-list.carousel-box .sub-box:last-child {
    margin-right: 16px;
  }
  .frame-sub-list .page-number {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}

@media (min-width: 1024px) {
  .root-sub-list.responsive-2col .sub-box, .responsive-2col.root-main-foot .sub-box {
    -webkit-flex-basis: calc(100% / 2 - 1rem);
        -ms-flex-preferred-size: calc(100% / 2 - 1rem);
            flex-basis: calc(100% / 2 - 1rem);
  }
}

@media (min-width: 1120px) {
  .root-sub-list.responsive-2col .sub-box, .responsive-2col.root-main-foot .sub-box {
    -webkit-flex-basis: 26.8rem;
        -ms-flex-preferred-size: 26.8rem;
            flex-basis: 26.8rem;
  }
}

@media (max-width: 767px) {
  .index .key-visual .common-overlay,
  .search-bar-wrap .common-overlay,
  .search-wrap .common-overlay {
    display: none !important;
  }
}

/*
  販促カード
*/
.ro-box .sub-box {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.ro-box .sub-box figure .link-coupon:after {
  content: none;
}

.ro-box .frame-card-float {
  padding-right: 1.4rem;
}

.ro-box .ro-line {
  background: #F5F5F5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4px 16px;
  font-weight: bold;
  letter-spacing: 0;
  color: #0F0A64;
}

.ro-box .ro-line img {
  margin-right: 8px;
  height: auto;
}

.ro-box figure p {
  margin-bottom: 2px;
}

.ro-box .tag-label-white {
  background: #fff;
  color: #FF503E;
  border: 1px solid #FF503E;
  position: absolute;
  top: 16px;
  left: 16px;
}

.ro-box .tag-label,
.ro-box .tag-label-white {
  padding: 0 10px;
  line-height: 22px;
  font-size: 1.2rem;
  -webkit-transform: none;
          transform: none;
}

.ro-box .tag-multi-box {
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  top: 16px;
  left: 16px;
}

.ro-box .tag-multi-box > div {
  position: relative;
  top: auto;
  left: auto;
  margin-right: 8px;
}

.ro-box .tag-multi-box .tag-label-ro {
  line-height: 0 !important;
}

.ro-box .tag-multi-box .tag-label-ro img {
  height: 24px;
}

.ro-box .bg-red {
  background-color: #FF503E;
  color: #fff;
  border: 1px solid #FFF;
}

.ro-box .sub-box-detail {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.ro-box .sub-box-detail .note {
  font-size: 1.4rem;
}

.sub-box-detail .boost-box {
  height: 18px;
  margin-top: 8px;
}
.sub-box-detail .boost-box + .price-tax {
  height: 25px;
}

.hotel-info-list .feature-hotel-name {
   border-left: 2px solid #FF503E;
   padding-left: 8px;
}

@media screen and (max-width: 1200px) and (min-width: 1120px){
  .sub-box-detail .boost-box {
    font-size: 1rem;
  }
}

.ro-box .no-room .ro-line,
.ro-box .no-date .ro-line {
  display: none;
}

.ro-box .no-room .sub-box-detail,
.ro-box .no-date .sub-box-detail {
  padding-top: 10px;
}

.ro-box .no-date .sub-box-detail {
  min-height: 0;
  padding: 22px 0 35px !important;
}

.ro-box .intro-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
}

.ro-box .intro-text.color-gray-2 {
  margin-top: 0;
}

.ro-box .button-action {
  margin-top: 10px;
}

.ro-box .button-action a {
  width: 100%;
}

.ro-box .button-action .btn-disabled {
  background: #f5f5f5;
  margin-top: 8px;
  border: none;
  opacity: 1;
  color: #C6C6C6;
}

.ro-box .price-tax {
  font-size: 14px;
}

.ro-box .price-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1.5;
}

.ro-box .price-box .people {
  display: inline-block;
  padding-bottom: 3px;
  letter-spacing: 0;
  color: #757575;
}

.ro-box .price-box .price {
  margin-left: 4px;
  font-weight: bold;
  font-size: 20px;
}

.ro-box .no-login .sub-box-detail {
  min-height: 0;
  padding: 16px 16px;
}

@media (max-width: 767px) {
  .ro-box .intro-text {
    padding: 0;
  }
  .ro-box .tag-label-white {
    height: 18px;
    font-size: 1rem;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    align-items: center;
  }
  .ro-box .tag-multi-box .tag-label-ro img {
    height: 18px;
  }
  .ro-box .sub-box-detail {
    min-height: 0;
  }
}

/*
  ROページ
*/
.sale-ro .ro-box .no-room .sub-box-detail,
.sale-ro .ro-box .no-date .sub-box-detail {
  padding: 22px 16px 24px !important;
  color: #CE0000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.sale-ro .ro-box .no-login .sub-box-detail {
  min-height: 0;
}

@media (max-width: 767px) {
  .sale-ro .ro-box .sub-box-detail,
  .sale-ro .ro-box .no-room .sub-box-detail {
    min-height: 0;
  }
}

.sale-ro .ro-box .no-date .sub-box-detail {
  min-height: 0;
}

.sale-ro .ro-box .no-date .sub-box-detail .btn-default:hover {
  opacity: 0.7;
}

.sale-ro .float-bar {
  -webkit-transform: translate(0) !important;
          transform: translate(0) !important;
}

@media screen and (max-width: 1023px) {
  .sale-ro .float-bar {
    padding: 0 16px;
  }
}

.sale-ro .sp-low-contents .sp-only {
  margin-bottom: 8px;
}

.no-room-text {
  width: 100%;
}

.sale-page .no-room-text + #zero {
  display: none !important;
}

.root-sub-list.large-style .sub-box-detail .color-gray-2, .large-style.root-main-foot .sub-box-detail .color-gray-2 {
  font-size: 1.4rem;
}

.root-sub-list.large-style .sub-box-detail .price-box .people, .large-style.root-main-foot .sub-box-detail .price-box .people {
  font-size: 1.4rem;
}

.root-sub-list.large-style .sub-box-detail .price-box .price, .large-style.root-main-foot .sub-box-detail .price-box .price {
  font-size: 2.4rem;
}

@media (max-width: 767px) {
  .root-sub-list.large-style .sub-box-detail .font-large, .large-style.root-main-foot .sub-box-detail .font-large {
    font-size: 1.6rem;
  }
}

/* フロートバー */
.float-bar {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  background: #fff;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 16px 16px;
  text-align: center;
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  z-index: 20;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.float-bar.active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.campaign-package .float-bar .btn-block {
  display: flex;
  justify-content: center;
  margin-bottom: 8px;
}

.float-bar .btn-block a {
  max-width: calc(50% - 4px);
  width: 224px;
  margin-right: 6px;
}

.campaign-package .float-bar a {
  max-width: calc(50% - 8px);
  width: 224px;
  margin-right: 8px;
}

.campaign-package .float-bar a:last-child {
  margin-right: 0;
  margin-left: 8px;
}

.float-bar .btn-block a:last-child {
  margin-right: 0;
  margin-left: 6px;
}

.modal-on .float-bar:last-of-type {
  display: none;
}

.float-bar.default {
  transform: translateY(0) !important;
}
@media screen and (max-width: 1023px){
  .float-bar.default {
    padding: 0 16px 8px;
  }

  .float-bar .btn-block a {
    margin-right: 8px;
  }

  .float-bar .btn-block a:last-child {
    margin-left: 0;
  }
}

.low-contents {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.text-low {
  display: inline-block;
  margin: 0 16px 8px;
}

@media (max-width: 1023px) {
  .low-contents .pc-only {
    display: none !important;
  }
  .sp-low-contents .sp-only {
    display: flex !important;
    justify-content: center;
    margin-bottom: 0;
    margin-top: 8px;
    font-size: 1.2rem;
  }
  .campaign-package .float-bar .btn-block {
    margin-bottom: 5px;
  }
}

@media (max-width: 767px) {
  .float-bar {
    z-index: 20;
  }
  .float-bar .text {
    margin-top: 8px;
    margin-bottom: 0;
    font-size: 1.2rem;
  }
  .campaign-package .float-bar {
    padding: 8px 16px !important;
  }
  .campaign-package .float-bar a {
    font-size: 1.4rem;
    width: 166px;
    height: 40px;
    max-width: initial;
    margin-right: 8px;
  }
  .campaign-package .float-bar a:last-child {
    margin-left: 0;
    margin-right: 0;
  }
}

/*
  セレクトボックスのカスタマイズ
*/
.select-dropdown {
  width: 99px;
  display: inline-block;
  position: relative;
}

.select-dropdown .dropdown {
  display: none;
}

.select-dropdown ul, .select-dropdown li, .select-dropdown span {
  -webkit-user-select: none;
  -moz-user-select: none;
  /*firefox*/
  -ms-user-select: none;
      user-select: none;
}

.select-dropdown ul {
  margin: 0px;
  padding: 0px;
  top: 37px;
  left: 0;
  width: 100%;
  max-height: 350px;
  border-radius: 4px;
  display: none;
  position: absolute;
  list-style: none;
  z-index: 2;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  overflow: auto;
}

.select-dropdown ul li {
  height: 48px;
  border: 1px solid #F5F5F5;
  border-top: none;
  background-color: #FFFFFF;
  line-height: 48px;
  text-align: center;
  cursor: pointer;
}

.select-dropdown ul li span {
  color: #757575;
  font-size: 0.875rem;
}

.select-dropdown ul li.active {
  background-color: #F5F5F5;
}

.select-dropdown ul.active {
  display: block;
}

.select-dropdown span.select-frame {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 0 8px 11px;
  width: 100%;
  border-bottom: 1px solid #C6C6C6;
  display: block;
  color: #757575;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.select-dropdown .dropdown-select-button {
  width: 17px;
  height: 9px;
  position: absolute;
  top: 9px;
  right: 0;
  cursor: pointer;
}

.select-dropdown .dropdown-select-button::before, .select-dropdown .dropdown-select-button::after {
  content: '';
  background-color: #333333;
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 21px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.select-dropdown .dropdown-select-button::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.select-dropdown .dropdown-select-button::after {
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.select-dropdown .dropdown-select-button.active::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.select-dropdown .dropdown-select-button.active::after {
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.child-type.options div.active::before,
.child-type.options div.active::after {
  display: none;
}

@media (min-width: 768px) {
  .select-dropdown span.select-frame {
    border-width: 2px;
  }
}

/*
  ハーフモーダル
*/
.js-half-modal-overlay {
  width: 100%;
  height: 100%;
  background-color: rgba(198, 198, 198, 0.7);
  cursor: pointer;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 51;
  display: none;
}

.js-half-modal-container {
  width: 100%;
  height: 80%;
  bottom: -81%;
  left: 0;
  border-radius: 16px 16px 0 0;
  background: #FFF;
  position: fixed;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
  overflow: auto;
  z-index: 52;
  opacity: 0;
}

.js-half-modal-trigger {
  cursor: pointer;
}

.js-half-modal-close {
  margin: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  right: 0;
  z-index: 53;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.js-half-modal-close::before {
  content: "";
  width: 20px;
  height: 20px;
  border-right: 2px solid #000;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 12px;
  left: -3px;
}

.js-half-modal-close::after {
  content: "";
  width: 20px;
  height: 20px;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: -2px;
  left: -3px;
}

@-webkit-keyframes SlideUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-80%);
            transform: translateY(-80%);
  }
}

@keyframes SlideUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-80%);
            transform: translateY(-80%);
  }
}

@-webkit-keyframes SlideDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(-80%);
            transform: translateY(-80%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
}

@keyframes SlideDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(-80%);
            transform: translateY(-80%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
}

.js-half-modal-container._slideUp {
  -webkit-animation: SlideUp .3s ease-in-out forwards;
          animation: SlideUp .3s ease-in-out forwards;
}

.js-half-modal-container._slideDown {
  opacity: 0;
  -webkit-transform: translateY(-1%);
          transform: translateY(-1%);
}

/* ハーフモーダル JS干渉しない箇所 */
.half-modal-head {
  background: #FFF;
  z-index: 1;
  border-radius: 16px 16px 0 0;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.half-modal-head-inner {
  position: relative;
}

.half-modal-content {
  overflow-y: scroll;
}

.half-modal-content::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.half-modal-content::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.half-modal-content::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.half-modal-content dt {
  font-weight: bold;
}

/* ハーフモーダル サイズ（＝height）別class */
.half-modal-container-280 {
  height: 280px !important;
  bottom: -281px;
}

.half-modal-container-320 {
  height: 320px !important;
  bottom: -321px;
}

.half-modal-container-360 {
  height: 360px !important;
  bottom: -361px;
}

.half-modal-container-400 {
  height: 400px !important;
  bottom: -401px;
}

.half-modal-container-440 {
  height: 440px !important;
  bottom: -441px;
}

.half-modal-container-480 {
  height: 480px !important;
  bottom: -481px;
}

.half-modal-container-520 {
  height: 520px !important;
  bottom: -521px;
}

.half-modal-container-560 {
  height: 560px !important;
  bottom: -561px;
}

.half-modal-container-600 {
  height: 600px !important;
  bottom: -601px;
}

/*
  数値スピナー
*/
.js-spinner-btn {
  -ms-user-select: none;
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none;
}

.spinner-area {
  /* Chrome/Safari */
  /* Firefox */
}

.spinner-area input {
  border: none;
  width: auto;
  vertical-align: middle;
}

.spinner-area input[type="button"] {
  cursor: pointer;
  color: #FFF;
  background: #0F0A64;
  border-radius: 4px;
  padding: 3px 7px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.spinner-area input[type="button"].disabled {
  background: #C6C6C6;
}

.spinner-area input[type="number"] {
  width: 20px !important;
  text-align: center;
  padding: 3px 0;
  border: none !important;
}

.spinner-area span {
  position: relative;
  top: 2px;
}

.spinner-area input[type="number"]::-webkit-outer-spin-button,
.spinner-area input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.spinner-area input[type="number"] {
  -moz-appearance: textfield;
}

/*
  Secretプラン
*/

.font-century {
  font-family: 'Century Gothic', sans-serif;
}
.secret-page .key-visual {
  background: url(/stcontents/img/sub-page/lp/secret/kv.jpg) no-repeat center center !important;
  background-size: cover !important;
}
.no-login-kv {
  background-image: url(/stcontents/img/sub-page/lp/secret/bg-kv-1.png), url(/stcontents/img/sub-page/lp/secret/bg-kv-2.png), linear-gradient(180deg, #1E1E1E, #2B2A2A);
  background-position: left top, right bottom 88px;
  background-repeat: no-repeat, no-repeat;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  text-shadow: 1px 1px 1px #000;
}
.secret-page .region_tab .col6-article-2 ul li {
  width: auto;
}
.secret-page .float .note {
  display: none;
}
.secret-page .border-title {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.secret-page .border-title > div {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.secret-page .border-title .text {
  width: 200px;
  padding: 0;
  flex-shrink: 0;
  font-size: 20px;
  font-weight: 100;
}
.secret-page .border-title .border:after {
  content: " ";
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
}
.secret-page .popup-position {
  bottom: 94px !important;
}

.secret-page .plans {
  display: flex;
}
.secret-page .plans > div {
  margin-right: 64px;
}
.secret-page .plans > div:last-child {
  margin-right: 0;
  margin-left: -28px;
}
.secret-page .diamond {
  background: #E1E9F8;
  position: relative;
  width: 250px;
  height: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 8px;
  color: #0F0A64;
  letter-spacing: 0;
  font-size: 12px;
  text-shadow: none;
}
.secret-page .diamond:before,
.secret-page .diamond:after {
  content: " ";
  display: block;
  background: #E1E9F8;
  width: 20px;
  height: 24px;
  position: absolute;
  top: 0;
  left: -9px;
  transform: skewX(-30deg);
}
.secret-page .diamond:after {
  left: inherit;
  right: -9px;
}
.secret-page .diamond.color-orange {
  background: #FFF5EF;
  color: #EB5505;
}
.secret-page .diamond.color-orange:before,
.secret-page .diamond.color-orange:after {
  background: #FFF5EF;
}

.secret-page main .key-visual .inner {
  bottom: 172px;
}
.secret-page main .key-visual .inner .title span {
  height: 36px;
  display: inline-flex;
  align-items: center;
  padding-top: 2px;
  margin-bottom: 8px;
  font-size: 20px;
}
.secret-page main .key-visual h1,
.secret-page main .key-visual .note {
  text-shadow: 1px 1px 1px #000;
}
.secret-page main .search-box-col2 {
  bottom: 44px;
}
.secret-page main .key-visual .inner .title,
.secret-page main .key-visual .inner .title h1 {
  display: block;
}
.secret-page main .key-visual .inner .title h1 strong {
  font-weight: bold;
}
.secret-page .root-sub-list {
  padding-top: 16px;
  padding-bottom: 0;
}
.secret-page .prefecture_list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.secret-page .root-sub-list .root-sub-list {
  padding-top: 24px;
  padding-bottom: 32px;
}
.secret-page .prefecture_list .prefecture_btn a {
  height: 32px;
  white-space: nowrap;
  padding: 0 8px 0 16px;
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 14px;
}

.secret-page .frame-sub-list .sub-box .sub-box-name {
  padding: 0;
  color: #fff;
}
.secret-page .frame-sub-list .sub-box .sub-box-name a {
  text-decoration: none;
  color: #fff;
}
.secret-page .ro-box a:hover {
  opacity: 0.7;
}
.secret-page .sub-box figure {
  height: 180px;
}
.secret-page .ro-box .label-line {
  margin: 8px 8px 0;
}
.secret-page .ro-box .no-date .label-line {
  height: 48px;
}
.secret-page .ro-box .label-line div + div {
  margin-top: 2px;
}
.secret-page .ro-box .ro-line {
  display: flex;
  justify-content: center;
  padding: 2px 0;
  font-weight: normal;
  background: #E1E9F8;
  color: #0F0A64;
}
.secret-page .ro-box .au-line {
  background: #FFF5EF;
  display: flex;
  justify-content: center;
  padding: 2px 0;
  color: #EB5505;
  letter-spacing: -0.5px;
}
.secret-page .ro-box .price-box {
  color: #333;
}
.secret-page .ro-box .price-box .price {
  letter-spacing: 0;
}
.secret-page .ro-box .no-date .price-box .price span {
  font-size: 16px;
  margin-left: 3px;
}
.secret-page .ro-box .button-action {
  margin-top: 10px;
}

.secret-page .ro-box .no-room .sub-box-detail,
.secret-page .ro-box .no-date .sub-box-detail {
  padding: 8px 16px 16px !important;
}
.secret-page .ro-box .plan-box {
  height: 58px;
  margin-top: 4px;
}
.secret-page .page-nav {
  margin: 40px 0;
  position: relative;
}
.secret-page .page-nav > a {
  padding: 0 16px;
  font-size: 16px;
  color: #333 !important;
  text-decoration: underline;
  border-right: 1px solid #C6C6C6;
}
.secret-page .page-nav > a:last-child {
  border: none;
}
.secret-page .page-nav > a:hover {
  text-decoration: none;
}
.secret-page .page-nav > a.active {
  font-weight: bold;
  color: #0F0A64 !important;
  text-decoration: none;
  pointer-events: none;
}

@media screen and (max-width: 1024px){
  .no-login-kv .inner {
    padding: 0 16px;
  }
  .secret-page .diamond {
    width: 263px;
  }
  .secret-page .plans {
    justify-content: space-between;
  }
  .secret-page .plans > div {
    width: 30%;
    margin: 0 !important;
  }
}
@media screen and (max-width: 900px){
  .secret-page .plans {
    display: block;
  }
  .secret-page .plans > div {
    width: auto;
    margin: 0 auto 12px !important;
  }
  .secret-page .page-nav {
    font-size: 14px;
  }
}

@media screen and (max-width: 767px){
  .no-login-kv {
    background-image: url(/stcontents/img/sub-page/lp/secret/bg-kv-1-sp.png), url(/stcontents/img/sub-page/lp/secret/bg-kv-2-sp.png), linear-gradient(180deg, #1E1E1E, #2B2A2A);
    background-size: 100%, 100%;
    background-position: left top, right bottom 56px;
    background-repeat: no-repeat, no-repeat;
  }
  .no-login-kv .h1-title {
    font-size: 24px;
    line-height: 1.5;
  }
  .secret-page .key-visual .inner .title span {
    height: 28px !important;
    font-size: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 2px !important;
  }
  .secret-page .key-visual .inner .title br.sp-only {
    display: block;
  }
  .secret-page .border-title .text {
    width: 180px;
    font-size: 16px;
  }
  .secret-page .plans p {
    margin-bottom: 2px;
  }
  .secret-page .key-visual .inner .title h1 {
    margin-bottom: 4px !important;
    line-height: initial !important;
  }
  .secret-page .key-visual .note {
    text-align: left;
  }
  .secret-page .key-visual .modal-on .note {
    display: none;
  }
  .secret-page .page-nav {
    height: auto;
    display: flex;
    align-items: center;
    overflow-x: auto;
    margin: 24px 0 20px;
    padding: 0 16px;
    white-space: nowrap;
    font-size: 14px;
  }
  .secret-page .page-nav::-webkit-scrollbar {
    display: none;
  }
  .secret-page .page-nav > a {
    border-radius: 100px;
    border: 1px solid #c6c6c6 !important;
    box-shadow: none;
    margin-right: 8px;
    margin-bottom: 6px;
    padding: 2px 12px;
    font-size: 14px;
    text-decoration: none;
  }
  .secret-page .page-nav > a.active {
    border: 1px solid #0F0A64 !important;
    background: #F3F8FD;
    font-weight: normal;
  }
  .secret-page .searchBoxArea .page-nav {
    margin: 8px 0 0;
    padding: 0 2px;
  }

  .secret-page .prefecture_list .prefecture_btn a {
    padding: 0 2px 0 10px;
  }
  .secret-page .ro-box .label-line {
    height: auto !important;
  }
  .secret-page .ro-box .price-tax {
    height: auto;
  }
  .secret-page .ro-box .plan-box {
    height: auto;
    margin-top: 8px;
  }
}
@media screen and (max-width: 360px){

  .no-login-kv .inner * {
    font-size: 11px !important;
  }
  .no-login-kv .h1-title {
    font-size: 18px !important;
  }
  .secret-page .key-visual .inner p {
    font-size: 12px;
  }
}

/*
  クーポンTICKET
*/
.coupon-list {
  /* 予約ページ用クーポンStyle */
}

.coupon-list .coupon-ticket {
  max-width: 928px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #C6C6C6;
}

.coupon-list .coupon-ticket .js-half-modal-trigger {
  text-decoration: none;
}

.coupon-list .coupon-ticket-expired {
  border: none;
}

.coupon-list .coupon-data-sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.coupon-list .coupon-data-wrap {
  padding: 16px;
}

.coupon-list .coupon-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
}

.coupon-list .coupon-data dt {
  min-width: 86px;
}

.coupon-list .coupon-data-hidden {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.coupon-list .coupon-unusable {
  color: #757575;
}

.coupon-list .coupon-unusable .coupon-data-sub {
  color: #333;
}

.coupon-list .coupon-ticket-reserve {
  position: relative;
}

.coupon-list .coupon-ticket-reserve .coupon-control {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 1;
}

.coupon-list .coupon-ticket-reserve input[type="radio"] {
  display: none;
}

.coupon-list .coupon-ticket-reserve input[type="radio"]:checked ~ .coupon-data-wrap {
  border: 2px solid #A6BCE9;
  padding: 15px !important;
}

.coupon-list .coupon-ticket-reserve .coupon-data-wrap:has(> .coupon-data-sub input[type="checkbox"]:checked) {
  border: 2px solid #A6BCE9;
  padding: 15px !important;
}

.coupon-list .coupon-ticket-reserve .coupon-data-wrap {
  display: block;
  cursor: pointer;
  /*transition: 0.5s;*/
}

.coupon-list .coupon-ticket-reserve .accordion-content {
  width: 100%;
}

.coupon-list .coupon-ticket-reserve .js-coupon-terms-open {
  width: 100% !important;
}

.coupon-list .coupon-ticket-reserve .js-coupon-terms-open::before {
  content: "利用条件をみる";
}

.coupon-list .coupon-ticket-reserve .js-coupon-terms-close::before {
  content: "とじる";
}

.coupon-list .coupon-data-pc {
  display: none;
}

/* マイページ用クーポンStyle（こちらはモーダル内でも使用） */
.coupon-target-hotel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.coupon-target-hotel .default-link-black {
  text-decoration: none;
}

.coupon-target-hotel .default-link-black:hover {
  text-decoration: underline;
}

.reservation .coupon-list .coupon-ticket .input-checkbox {
  vertical-align: text-top;
  margin-right: 0;
}
.reservation .coupon-list .coupon-ticket.disabled {
  pointer-events: none;
  color: #c6c6c6;
}
.reservation .coupon-list .coupon-ticket.disabled .coupon-data-sub .tag-coupon {
  border: 1px solid #c6c6c6;
  color: #c6c6c6;
}
.reservation .coupon-list .coupon-ticket.disabled .coupon-data-sub .tag-fcfs {
  border: 1px solid #c6c6c6;
  color: #c6c6c6;
}
.reservation .coupon-list .coupon-ticket.disabled .coupon-terms {
  color: #c6c6c6;
}
.reservation .coupon-list .coupon-ticket.disabled .coupon-data-sub small:last-child::before {
  background-color: #c6c6c6;
}
.reservation .coupon-list .coupon-ticket.checked .coupon-data-wrap {
  border: 4px solid #A6BCE9;
  padding: 13px !important;
}
.reservation .coupon-list .coupon-notice {
  padding: 8px;
  border: 1px solid #333;
  font-size: 12px;
}

@media (min-width: 768px) {
  .coupon-list .coupon-data-sub span {
    margin-right: 8px;
  }
  .coupon-list .coupon-data-sub small {
    font-size: 1.4rem;
  }
  .coupon-list .coupon-data-main-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .coupon-list .coupon-data {
    margin: 0 32px 8px 0;
  }
  .coupon-list .coupon-data dt {
    min-width: auto !important;
    margin-right: 16px;
    font-size: 1.2rem;
  }
  .coupon-list .coupon-data dd {
    font-size: 1.4rem;
  }
  .coupon-list .coupon-data-wrap {
    padding: 24px 64px;
    border: none;
  }
  .coupon-list .coupon-data-hidden {
    width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    display: block !important;
    border-top: 1px solid #C6C6C6;
    padding-top: 16px;
    margin: 8px 0 0 0 !important;
  }
  .coupon-list .coupon-terms {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .coupon-list .coupon-terms dt {
    margin-bottom: 0;
    width: 100px !important;
    float: left;
    font-size: 1.2rem;
  }
  .coupon-list .coupon-terms dd {
    float: right;
    width: calc(100% - 100px);
  }
  .coupon-list .coupon-ticket-expired {
    color: #757575 !important;
  }
  .coupon-list .coupon-ticket-reserve .js-accordion-open {
    display: none;
  }
  .coupon-list .coupon-ticket-reserve .accordion-content {
    display: block;
  }
  .coupon-list .coupon-ticket-mypage .coupon-data-pc {
    display: block;
    width: 100%;
  }
  .coupon-list .coupon-ticket-mypage .coupon-data-pc dt {
    font-weight: bold;
  }
  .coupon-list .coupon-ticket-mypage .js-half-modal-trigger {
    display: none;
  }
}

@media screen and (max-width: 767px){
  .reservation .coupon-list .coupon-ticket.checked .coupon-data-wrap {
    border: 2px solid #A6BCE9;
    padding: 15px !important;
  }
}

/*
マイページ用クーポン > 利用可能な施設一覧モーダル
*/
.coupon-hotel-modal {
  height: auto !important;
  max-width: 768px !important;
}

.coupon-hotel-modal .coupon-target-hotel {
  max-height: 240px;
  overflow-y: scroll;
}

.coupon-hotel-modal .coupon-target-hotel::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.coupon-hotel-modal .coupon-target-hotel::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.coupon-hotel-modal .coupon-target-hotel::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.half-modal-scroll {
  overflow-y: scroll;
  max-height: 104px;
}

.half-modal-scroll::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.half-modal-scroll::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.half-modal-scroll::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.half-modal-scroll .coupon-target-hotel li {
  font-size: 1.0rem;
  margin: 0 8px 8px 0;
  letter-spacing: 0;
}

/*
  input ＋ submit-button
*/
.reserve-input-point {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reserve-input-point input {
  width: 65%;
  border-radius: 4px 0 0 4px !important;
}

.reserve-input-point .text-box {
  height: 48px;
}

.reserve-input-point .btn-submit {
  min-width: 88px;
  height: 48px;
  margin-left: 0;
  padding: 8px 28px;
  border-radius: 0 4px 4px 0;
}

@media screen and (max-width: 767px) {
  .reserve-input-point .btn-submit {
    padding: 8px 16px;
  }
}

/*
  common-modal-min（小型の汎用モーダル ）
*/
.common-modal-min .modal-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (min-width: 768px) {
  .common-modal-min {
    border-radius: 4px;
  }
  .common-modal-min .common-modal-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
  }
  .common-modal-min .modal-container {
    display: block;
    margin: auto;
    height: auto;
    border-radius: 4px;
  }
  .common-modal-min .modal-container-inner {
    display: block;
  }
  .min-modal-width {
    max-width: 520px;
  }
}

@media screen and (max-width: 767px) {
  .modal-container-inner {
    width: 100%;
  }
}

/*
  セッションタイムアウトモーダル
*/
.timeout-modal .timeout-modal-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 768px) {
  .timeout-modal {
    height: 268px;
    max-width: 560px !important;
  }
  .timeout-modal .modal-container {
    max-width: 560px;
  }
  .timeout-modal .timeout-modal-btn a {
    width: 224px;
  }
}

/*
  特集の施設カード
*/
.hotel-info-list {
  padding-top: 16px;
}

.hotel-info-list .result-hotel {
  display: block;
  height: auto;
  margin-bottom: 16px;
  color: #333;
  border-radius: 8px;
}

.hotel-info-list .result-hotel:last-child {
  margin-bottom: 0;
}

.hotel-info-list .result-hotel .upper {
  position: relative;
  overflow: hidden;
}

.hotel-info-list .result-hotel .photo {
  width: 560px;
  height: 300px;
  overflow: hidden;
}

.hotel-info-list .result-hotel .photo > a {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.hotel-info-list .result-hotel .photo > a:hover {
  opacity: .7;
}

.hotel-info-list .result-hotel .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hotel-info-list .result-hotel .ranking-card {
  border-radius: 8px;
}

.hotel-info-list .result-hotel .photo-ranking {
  width: 560px;
  height: 300px;
  overflow: hidden;
}

.hotel-info-list .result-hotel .photo-ranking img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hotel-info-list .result-hotel .hotel-info {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  top: auto;
  left: 0px;
  bottom: 0px;
  padding: 24px;
  width: 560px;
}

.hotel-info-list .result-hotel .hotel-info .name {
  color: #ffffff;
  margin-bottom: 0;
  letter-spacing: 1px;
}

.hotel-info-list .result-hotel .hotel-info .address {
  font-size: 1.4rem;
  color: #ffffff;
}

.hotel-info-list .result-hotel .sale-icon {
  top: 0;
}

.hotel-info-list .result-hotel .icon-grade {
  height: 20px;
  margin: 0 2px;
}

.hotel-info-list .result-hotel .text-link {
  color: #0F0A64 !important;
}

.hotel-info-list .result-hotel .text-link:hover {
  color: #554B98 !important;
}

.hotel-info-list .result-hotel .text-link:hover::after {
  opacity: .7;
}

.hotel-info-list .result-hotel .price-box {
  color: #ffffff;
  position: relative;
  right: 0;
  bottom: 0;
  font-size: 1.4rem;
  float: right;
}

.hotel-info-list .result-hotel .intro {
  font-size: 1.6rem;
}

.hotel-info-list .result-hotel .info-text {
  left: 585px;
  top: 24px;
  padding-right: 24px;
  position: absolute;
}

.hotel-info-list .result-hotel .info-text-ranking {
  left: 585px;
  top: 32px;
  bottom: 32px;
  padding-right: 24px;
  position: absolute;
}

.hotel-info-list .result-hotel .ranking-intro {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: 4px;
  font-size: 1.6rem;
}

.hotel-info-list .result-hotel .intro-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-bottom: 8px;
}

.hotel-info-list .result-hotel .ranking-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: 16px;
  font-size: 1.6rem;
}

.hotel-info-list .result-hotel .hotel-review {
  border: none;
  padding: 0;
}

.hotel-info-list .result-hotel .point-price-box .price {
  margin-bottom: 0;
  font-weight: normal;
}

.hotel-info-list .result-hotel .hotel-review .right-col {
  width: calc(100% - 88px);
}

.hotel-info-list .result-hotel .hotel-review .review-score {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.hotel-info-list .result-hotel .hotel-review .review-score .text-right-mg {
  margin-right: 34px;
}

.hotel-info-list .result-hotel .hotel-review .review-score .mr-0 {
  margin-right: 0;
}

.hotel-info-list .result-hotel .hotel-review .review-score > div {
  font-size: 1.4rem;
  line-height: 24px;
  margin-right: 16px;
  margin-bottom: 0;
  padding: 0;
}

.hotel-info-list .result-hotel .hotel-review .review-score > div span {
  font-size: 1.6rem;
  margin-left: 8px;
}

.hotel-info-list a.result-hotel:hover {
  opacity: 0.7;
}

.hotel-info-list .text-link-gray {
  color: #757575 !important;
}

.hotel-info-list .text-link-gray:hover {
  color: #000 !important;
}

.hotel-info-list.large-style .intro .font-bold {
  font-size: 1.4rem;
}

.hotel-info-list.large-style .hotel-review .review-score > div {
  font-size: 1.6rem;
}

.hotel-info-list.large-style .hotel-review .review-score > div span {
  font-size: 2.4rem;
}

.hotel-info-list.hotel-info-plan .result-hotel .info-text {
  height: 100%;
}
.hotel-info-list.hotel-info-plan .result-hotel .intro-text,
.hotel-info-list.hotel-info-plan .result-hotel .text-link {
  font-size: 1.4rem;
}
.hotel-info-list.hotel-info-plan .result-hotel .price-box {
  position: absolute;
  bottom: 40px;
  right: 24px;
  color: inherit;
}
.hotel-info-list.hotel-info-plan .result-hotel .people {
  font-weight: normal;
}

.hotel-info-list .feature-hotel-name {
   border-left: 2px solid #FF503E;
   padding-left: 8px;
}


@media screen and (max-width: 1023px) {
  .hotel-info-list.hotel-info-plan .result-hotel .price-box {
    position: relative;
    bottom: inherit;
    right: auto;
    float: right;
    margin: 8px 0 16px;
    clear: both;
    text-shadow: none;
  }
  .hotel-info-list.hotel-info-plan .result-hotel .price-box .price {
    font-size: 2rem;
  }
  .hotel-info-list.hotel-info-plan .result-hotel .people {
    font-size: 1.3rem;
  }
  .hotel-info-list.hotel-info-plan .result-hotel .photo:before {
    content: none;
  }
  .hotel-info-list.hotel-info-plan .result-hotel .photo a:before {
    content: "";
    background: linear-gradient(transparent 50%, rgba(0, 0, 0, 0.7));
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media (max-width: 767px) {
  .hotel-info-list .result-hotel .hotel-info .address {
    max-width: 50%;
  }
  .hotel-info-list.large-style .intro .font-bold {
    font-size: 1.6rem;
  }
  .hotel-info-list.large-style .hotel-review .review-score > div {
    font-size: 1rem;
  }
  .hotel-info-list.large-style .hotel-review .review-score > div span {
    font-size: 1.4rem;
  }
}

@media (min-width: 768px) {
  .hotel-info-list .result-hotel .name {
    font-size: 2rem;
  }
  .hotel-info-list .result-hotel .price-box .price {
    line-height: 1;
    font-size: 2.6rem;
  }
  .hotel-info-list .result-hotel .text-link-gray {
    font-size: 1.6rem;
  }
  .hotel-info-list .result-hotel .card-border {
    border: solid 1px #f5f5f5;
    border-radius: 8px;
  }
}

@media (max-width: 1023px) {
  .hotel-info-list .result-hotel .photo {
    width: 100%;
    height: 240px;
  }
  .hotel-info-list .result-hotel .photo:before {
    content: "";
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(rgba(0, 0, 0, 0.7)));
    background: -webkit-linear-gradient(transparent 50%, rgba(0, 0, 0, 0.7));
    background: linear-gradient(transparent 50%, rgba(0, 0, 0, 0.7));
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .hotel-info-list .result-hotel .photo-ranking {
    width: 100%;
    height: 184px;
  }
  .hotel-info-list .result-hotel .photo-ranking:before {
    content: "";
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(rgba(0, 0, 0, 0.7)));
    background: -webkit-linear-gradient(transparent 50%, rgba(0, 0, 0, 0.7));
    background: linear-gradient(transparent 50%, rgba(0, 0, 0, 0.7));
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .hotel-info-list .result-hotel .icon-ranking {
    width: 30px;
  }
  .hotel-info-list .result-hotel .hotel-info {
    width: 100%;
    padding: 16px;
  }
  .hotel-info-list .result-hotel .hotel-info .name {
    margin-bottom: 8px;
  }
  .hotel-info-list .result-hotel .hotel-info .address {
    font-size: 1rem;
  }
  .hotel-info-list .result-hotel .people {
    font-size: 1rem;
  }
  .hotel-info-list .result-hotel .price {
    font-weight: bold;
  }
  .hotel-info-list .result-hotel .price-box {
    margin-top: -22px;
  }
  .hotel-info-list .result-hotel .pc-only {
    display: none !important;
  }
  .hotel-info-list .result-hotel .sp-only {
    display: block !important;
  }
  .hotel-info-list .result-hotel .intro {
    padding: 8px 16px 0;
  }
  .hotel-info-list .result-hotel .hotel-review {
    padding: 16px 16px 16px;
  }
  .hotel-info-list .result-hotel .hotel-review h3 {
    font-size: 1.6rem;
  }
  .hotel-info-list .result-hotel .hotel-review .left-col {
    width: 92px;
  }
  .hotel-info-list .result-hotel .hotel-review .right-col {
    width: calc(100% - 92px);
  }
  .hotel-info-list .result-hotel .hotel-review .info {
    margin-bottom: 8px;
  }
  .hotel-info-list .result-hotel .hotel-review .featureRecommendRank__piechart {
    width: 92px;
    height: 92px;
    text-align: center;
  }
  .hotel-info-list .result-hotel .hotel-review .review-score {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .hotel-info-list .result-hotel .hotel-review .review-score > div {
    font-size: 1rem;
    width: 39%;
    padding-top: 8px;
  }
  .hotel-info-list .result-hotel .hotel-review .review-score > div:nth-child(2n+1) {
    font-size: 1rem;
    width: 48%;
  }
  .hotel-info-list .result-hotel .hotel-review .review-score > div span {
    font-size: 1.4rem;
    margin: 0;
  }
  .hotel-info-list .result-hotel .text-link-gray {
    margin-top: 0;
  }
}

@media (max-width: 360px) {
  .hotel-info-list .result-hotel .hotel-info .address {
    max-width: 40%;
  }
  .hotel-info-list .result-hotel .hotel-review .right-col {
    width: 100%;
    margin-top: 8px;
  }
}

/*
  箇条書きリストの各行先頭に「※」を表示。（インデント付き）
*/
.list-asterisk li {
  margin-left: 1em;
  list-style-type: none;
  text-indent: -1em;
}

.list-asterisk li::before {
  display: inline;
  content: "※";
}

/*
  特定のテキスト先頭に「※」を表示。（インデント付き）
*/
.text-asterisk {
  display: inline-block;
  margin-left: 1em;
  list-style-type: none;
  text-indent: -1em;
}

.text-asterisk::before {
  display: inline;
  content: "※";
}

/*
リストにdot＆indent付与
*/
.list-indent li {
  margin-left: 1em;
  list-style-type: none;
  text-indent: -1em;
}

.list-indent li::before {
  display: inline;
  content: "・";
}

.list-indent.no-type li {
  list-style-type: none;
}

/*
  Halfモーダル起動ボタン > アイコン設定
*/
.icn-modal-gray:after {
  background: url(/stcontents/img/common/icon-modal-link-gray.svg) no-repeat 0 center;
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;
  margin-left: 4px;
  margin-bottom: -3px;
}

.icn-modal-black:after {
  background: url(/stcontents/img/common/icon-modal-link-black.svg) no-repeat 0 center;
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;
  margin-left: 4px;
  margin-bottom: -3px;
}

/*
  ステップナビゲーション
*/
/* .stepnavi-large */
.stepnavi-large {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 540px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.stepnavi-large li {
  list-style: none;
  position: relative;
  width: 33.333%;
  line-height: 1;
}

.stepnavi-large li::after {
  background: #C6C6C6;
  content: "";
  width: calc(100% - 32px);
  height: 2px;
  position: absolute;
  left: calc(-50% + 16px);
  top: 16px;
}

.stepnavi-large li:first-child::after {
  display: none;
}

.stepnavi-large .stepnavi-circle {
  background: #FFF;
  display: inline-block;
  height: 32px;
  margin-bottom: 8px;
  line-height: 32px;
  width: 32px;
  border-radius: 50%;
  border: 2px solid #C6C6C6;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.stepnavi-large .stepnavi-circle img {
  position: relative;
  top: 2px;
}

@media screen and (max-width: 768px) {
  .stepnavi-large li::after {
    width: calc(100% - 28px);
    left: calc(-50% + 14px);
    top: 14px;
  }
  .stepnavi-large .stepnavi-circle {
    height: 28px;
    margin-bottom: 4px;
    line-height: 28px;
    width: 28px;
  }
  .stepnavi-large .stepnavi-circle img {
    width: 20px;
    position: relative;
    top: 2px;
  }
}

/* .stepnavi-small */
.stepnavi-small {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 520px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.stepnavi-small li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  position: relative;
  width: 33.333%;
  color: #333;
  font-weight: bold;
  line-height: 1;
}

.stepnavi-small li:after {
  background: #C6C6C6;
  content: "";
  width: calc(100% - 68px);
  height: 2px;
  position: absolute;
  left: calc(-50% + 34px);
  top: 12px;
}

.stepnavi-small li:first-child::after {
  display: none;
}

.stepnavi-small .stepnavi-circle {
  background: #FFF;
  display: inline-block;
  height: 24px;
  line-height: 24px;
  width: 24px;
  border-radius: 50%;
  border: 2px solid #C6C6C6;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-right: 6px;
}

.stepnavi-small .stepnavi-circle img {
  width: 16px;
  height: 16px;
  position: relative;
  top: 1px;
}

/* large/small 共通設定 */
.stepnavi-circle img {
  display: none;
}

.step-completed .stepnavi-circle {
  background: #0F0A64 !important;
  border: 2px solid #0F0A64 !important;
}

.step-completed img {
  display: inline-block;
}

.step-currently .stepnavi-circle {
  background: #0F0A64 !important;
  border: 2px solid #0F0A64 !important;
}

/* stepnavi付きのHeader専用Style */
.stepnavi-header .stepnavi-small {
  bottom: 30px;
}

@media screen and (min-width: 768px) {
  .stepnavi-header .before-menu {
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .stepnavi-header .stepnavi-small {
    display: none;
  }
}

@media screen and (max-width: 920px) {
  .stepnavi-header .stepnavi-small {
    max-width: 320px;
  }
}

/*
  認証コード入力
*/
.js-auth-code .input-error-word {
  display: none;
}

.js-auth-code .js-auth-code-btn[disabled] {
  opacity: .2;
}

.js-auth-code .auth-code-input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 400px;
}

.js-auth-code .auth-code-input input[type="text"] {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  width: 60px;
  height: 68px;
}

.auth-code-error input[type="text"] {
  border: 1px solid #CE0000;
}

.auth-code-error .input-error-word {
  display: block;
}

/* SP */
@media screen and (max-width: 430px) {
  .js-auth-code .auth-code-input input[type="text"] {
    font-size: 2.0rem;
    width: 100%;
    height: 56px;
    margin-right: 8px;
  }
  .js-auth-code .auth-code-input input[type="text"]:last-of-type {
    margin-right: 0;
  }
}

.social-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.social-buttons .social-button {
  margin-right: 24px;
}

.social-buttons .social-button:last-child {
  margin-right: 0;
}

.social-buttons .social-button > a {
  width: 48px;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
}

.social-buttons .social-button > a img {
  width: 24px;
  height: 24px;
}

.score {
  display: inline-block;
  vertical-align: top;
}

.score div {
  margin-left: 2px;
  width: 20px;
  height: 20px;
  border: 2px solid #0F0A64;
  border-radius: 50%;
  display: inline-block;
  vertical-align: top;
}

.score div.active {
  background-color: #0F0A64;
}

/* SP */
@media screen and (max-width: 767px) {
  .score {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .score div {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-right: 4px;
    padding: 0;
    width: 14px;
    height: 14px;
    border: 2px solid #0F0A64;
    border-radius: 50%;
    display: inline-block;
    vertical-align: top;
  }
  .score div.active {
    background-color: #0F0A64;
  }
}

/*
  施設用GoogleMap
*/
.hotel-gmap iframe {
  width: 100%;
  height: 560px;
  margin-bottom: 10px;
}

.number-text-list {
  counter-reset: number 0;
}

.btn-number-text {
  max-width: 100%;
  background: #FFFFFF;
  display: inline-block;
  position: relative;
  border: 1px solid #C6C6C6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  margin: 0 16px 2px 0;
  padding: 8px 8px 8px 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #0F0A64;
}

.btn-number-text:before {
  counter-increment: number 1;
  content: counter(number) " ";
  padding-left: 4px;
  font-size: 10px;
  margin-right: 12px;
  color: #fff;
  z-index: 10;
  position: relative;
  margin-top: -5px;
  display: inline-block;
  vertical-align: middle;
  letter-spacing: 0;
}

.btn-number-text:after {
  display: block;
  content: "";
  position: absolute;
  top: 10px;
  left: 8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background-color: #0f0a64;
}

.btn-number-text:nth-of-type(n+10):after {
  left: 11px;
}

@media screen and (max-width: 767px) {
  .hotel-gmap iframe {
    height: 400px;
  }
  .btn-number-text {
    margin-bottom: 8px;
    font-size: 1.4rem;
  }
  .btn-number-text:before {
    margin-top: -2px;
  }
}

/*
inputのFocus時Style設定（email, passwordはbootstrapと衝突するためコメントアウト中）
*/
input[type="text"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
/* input[type="email"]:focus,
input[type="password"]:focus, */
input[type="search"]:focus,
textarea:focus {
  border: 1px solid #0F0A64;
}

/*
input-type:numberからスピンボタンを削除するclass
*/
.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

/*
旧マイページ専用Style
*/
.old-my-page .banner-induction {
  display: block;
  background-image: url(/stcontents/img/old/banner-induction-bg.jpg);
  background-size: cover;
  background-position: center 37%;
  padding: 16px;
  position: relative;
}

.old-my-page .banner-induction::after {
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#020067), to(#020067));
  background-image: -webkit-linear-gradient(#020067, #020067);
  background-image: linear-gradient(#020067, #020067);
  opacity: 0.1;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.old-my-page .banner-induction .banner-induction-text {
  color: #FFF;
  text-align: center;
}

.old-my-page .banner-induction .banner-induction-text p {
  margin: 0;
}

.old-my-page .banner-induction .banner-induction-text p:first-child {
  font-size: 1.6rem;
  font-weight: bold;
}

.old-my-page .banner-induction .banner-induction-text p:last-child {
  font-size: 1.2rem;
}

.old-my-page .banner-induction .banner-induction-btn {
  width: 100%;
  margin-top: 8px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.old-my-page .banner-induction .banner-induction-btn .btn-relux {
  width: 100%;
  max-width: 300px;
}

.old-my-page .menubox-wrap {
  height: 100vh;
  position: relative;
}

.old-my-page .menubox-wrap .banner-induction {
  position: absolute;
  bottom: 0;
  padding: 24px;
}

.old-my-page .menubox-wrap .banner-induction .banner-induction-text p:first-child {
  font-size: 1.6rem;
  margin-bottom: 8px;
}

.old-my-page .menubox-wrap .banner-induction .banner-induction-text p:last-child {
  font-size: 1.4rem;
}

.old-my-page .menubox-wrap .banner-induction .banner-induction-btn {
  margin-top: 24px;
}

.old-my-page .menubox-wrap .banner-induction .banner-induction-btn .btn-relux {
  width: 100%;
  color: #FFF;
}

.old-my-page .global-header .menu-member .menubox.menubox-member .menubox-wrap ul li:first-of-type {
  padding-top: 16px;
  /*共通設定の上書き*/
  border-top: 2px solid #F5F5F5;
  /*共通設定の上書き*/
}

.old-my-page .global-header.static .menubox-wrap li a {
  color: #333;
}

.old-my-page .float-bar {
  display: none;
}

.old-my-page footer {
  display: none;
}

@media (min-width: 768px) {
  .old-my-page .banner-induction {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px;
    padding: 16px 32px;
    max-width: 1120px;
    margin: 0 auto;
  }
  .old-my-page .banner-induction:hover {
    opacity: 0.7;
  }
  .old-my-page .banner-induction .banner-induction-text {
    width: calc(100% - 300px);
  }
  .old-my-page .banner-induction .banner-induction-text p:first-child {
    font-size: 2.4rem;
  }
  .old-my-page .banner-induction .banner-induction-text p:last-child {
    font-size: 1.6rem;
  }
  .old-my-page .banner-induction .banner-induction-btn {
    width: 300px;
    margin-top: 0;
  }
  .old-my-page .banner-induction .banner-induction-btn .btn-relux {
    width: 100% !important;
  }
  .old-my-page .banner-induction .banner-induction-btn .btn-relux:hover {
    background: #0F0A64;
    border-color: #0F0A64;
  }
  .old-my-page .alert-modal .modal-container {
    max-width: 432px;
  }
}

@media (max-width: 767px) {
  .old-my-page .banner-induction .banner-induction-btn .btn-relux {
    height: 40px !important;
  }
}

.mypage-btn-double {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mypage-btn-double a, .mypage-btn-double button {
  width: 176px;
}

.alert-modal-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.alert-modal-btn a {
  width: 82px;
}

.withdrawal-done .main-page-white .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: calc(100vh - 60px);
}

.alert-modal {
  border-radius: 4px;
}

.alert-modal .common-modal-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}

.alert-modal .modal-container {
  max-width: 432px;
  width: calc(100% - 32px);
  display: block;
  margin: auto;
  height: auto;
  border-radius: 4px;
}

@media (max-width: 500px) {
  .alert-modal .modal-container {
    padding: 16px;
  }
}

@media (max-width: 767px) {
  .alert-modal .modal-container {
    padding: 16px;
  }
  .alert-modal .alert-modal-btn .btn-small {
    width: 50%;
  }
}

/*
  地域選択Tab > 基本設定
*/
.region_tab {
  background: #FFF;
  overflow: hidden;
}

.region_tab .col6-article-2-wrap {
  border-bottom: 2px solid #0F0A64;
  position: relative;
}

.region_tab .col6-article-2 {
  overflow-y: hidden;
  padding-bottom: 0;
  position: static;
}

.region_tab .col6-article-2 .btn-scroll-prev,
.region_tab .col6-article-2 .btn-scroll-prev-2,
.region_tab .col6-article-2 .btn-scroll,
.region_tab .col6-article-2 .btn-scroll-2 {
  top: 50%;
  -webkit-filter: none;
          filter: none;
  background: none;
  width: 1.3rem;
  margin: 0 1rem;
}

.region_tab .col6-article-2 .btn-scroll-prev img,
.region_tab .col6-article-2 .btn-scroll-prev-2 img,
.region_tab .col6-article-2 .btn-scroll img,
.region_tab .col6-article-2 .btn-scroll-2 img {
  width: 1.3rem;
}

.region_tab .col6-article-2 .btn-scroll-prev,
.region_tab .col6-article-2 .btn-scroll-prev-2 {
  left: .6rem;
}

.region_tab .col6-article-2 .btn-scroll,
.region_tab .col6-article-2 .btn-scroll-2 {
  right: -.6rem;
}

.region_tab .col6-article-2 ul {
  padding-right: 0;
}

.region_tab .col6-article-2 ul li {
  margin: 0;
  padding: 0;
  float: none;
  min-width: auto;
  white-space: nowrap;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.region_tab .col6-article-2 ul li:hover {
  background-color: #554B98;
  color: #FFF;
}

.region_tab .col6-article-2 .btn-scroll-2 .icon-inactive {
  display: none;
}

.region_tab .col6-article-2 .btn-scroll-prev-2 .icon-inactive {
  display: none;
}

.region_tab .col6-article-2 .btn-inactive .icon-active {
  display: none;
}

.region_tab .col6-article-2 .btn-inactive .icon-inactive {
  display: block;
}

.region_tab .region_tab-data > *.active {
  background-color: #0F0A64;
  color: #FFF;
}

.region_tab .region_tab-data > *.active a {
  color: #fff;
}

.region_tab .region_tab-data a {
  font-size: 1.6rem;
  font-weight: bold;
  color: #0F0A64;
}

.region_tab .region_tab-data > *:hover a {
  color: #fff;
}

.region_tab .js-region_tab {
  text-align: center;
  font-weight: bold;
  color: #0F0A64;
  font-weight: bold;
  display: block;
  padding: 0 12px 0 20px !important;
  height: 4rem;
  line-height: 4rem;
  font-size: 1.6rem;
  cursor: pointer;
}

.region_tab .js-region_tab.none {
  pointer-events: none;
  color: #C6C6C6;
}

.region_tab .js-region_tab .area-nuber {
  font-size: 1.4rem;
}

.region_tab .btn-scroll-prev.pc-only,
.region_tab .btn-scroll-prev-2.pc-only {
  display: none;
}

.region_tab .region_tab-content .tab-content-inner {
  display: none;
}

.region_tab .region_tab-content .tab-content-inner.show {
  display: block !important;
}

/*
地域選択Tab >
（※幅1120px以上:左右のナビゲーション非表示 → 1120px以下:表示 → 768px以下:再度非表示)
*/
.region_tab-fits .region_tab .col6-article-2 ul li a {
  text-align: center;
  font-weight: bold;
  color: #0F0A64;
  font-weight: bold;
  display: block;
  font-size: 1.6rem;
  height: 4rem;
  line-height: 4rem;
  cursor: pointer;
}

.region_tab-fits .region_tab .col6-article-2 ul li a:hover {
  color: #FFF;
  opacity: 1;
}

.region_tab-fits .region_tab .col6-article-2 ul li.active a {
  background-color: #0F0A64;
  color: #FFF;
}

.region_tab-fits .region_tab .region_tab-content .prefecture_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn {
  margin: 0 8px 8px 0;
}

.region_tab-fits .region_tab .linkPrefectureAll {
  display: none;
}

.region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn a,
.region_tab-fits .region_tab .linkPrefectureAll a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 16px;
  width: 100%;
  height: 32px;
  white-space: nowrap;
  background-color: #FFF;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: bold;
  color: #0F0A64;
}

.region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn a:hover,
.region_tab-fits .region_tab .linkPrefectureAll a:hover {
  border-color: #554B98;
  color: #554B98;
}

.region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn.active a,
.region_tab-fits .region_tab .linkPrefectureAll.active a {
  background: #0F0A64;
  color: #FFF;
  border: 1px solid #0F0A64;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area {
  display: none;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area.large_area-show {
  display: block;
  border-top: 2px solid #F5F5F5;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_inner {
  overflow: hidden;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 0;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags a {
  margin-bottom: 8px;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_more {
  text-align: center;
  color: #757575;
  cursor: pointer;
  background: #FFF;
  font-size: 1.4rem;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_more span {
  position: relative;
  display: inline-block;
  padding-right: 3rem;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_more span:after {
  content: "";
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 0;
  background-size: contain;
  position: absolute;
  display: block;
  width: 1.5rem;
  height: 0.8rem;
  display: inline-block;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_more.is-active span:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.region_tab-fits .region_tab-2 .col6-article-2 ul li {
  min-width: 90px;
}

.region_tab-fits .region_tab-2 .col6-article-2 ul li.name-mid {
  min-width: 93px;
}

.region_tab-fits .region_tab-2 .col6-article-2 ul li.name-long {
  min-width: 118px;
}

.region_tab-fits .region_tab-3 .col6-article-2 ul li {
  min-width: 80px;
}

.region_tab-fits .region_tab-3 .col6-article-2 ul li.name-mid {
  min-width: 90px;
}

.region_tab-fits .region_tab-3 .col6-article-2 ul li.name-long {
  min-width: 120px;
}

@media (min-width: 768px) {
  .ranking-page .region_tab .col6-article-2-wrap,
  .type-page .region_tab .col6-article-2-wrap,
  .search-from-area .region_tab .col6-article-2-wrap {
    padding: 0 3.3rem;
  }
  .feature-page .region_tab .col6-article-2-wrap {
    padding: 0;
  }
  .region_tab .left-show,
  .feature-page .region_tab .left-show {
    padding-left: 3.3rem;
  }
  .region_tab .right-show,
  .feature-page .region_tab .right-show {
    padding-right: 3.3rem;
  }
  .region_tab .col6-article-2 {
    width: auto;
  }
  .region_tab .btn-scroll-prev.pc-only,
  .region_tab .btn-scroll-prev-2.pc-only {
    display: block;
  }
  .region_tab .large_area_list .large_area_tags li {
    padding: 0 16px 0 0;
    margin: 0 16px 8px 0;
    position: relative;
  }
  .region_tab .large_area_list .large_area_tags li:after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 24px;
    background-color: #757575;
    position: absolute;
    top: 4px;
    right: 0;
  }
  .region_tab .large_area_list .large_area_tags li a {
    border: none;
    color: #333;
    font-weight: normal;
    margin: 0;
    padding: 0;
    background: none !important;
    text-decoration: none;
  }
  .region_tab .large_area_list .large_area_tags li a:hover {
    color: #0F0A64;
    font-weight: bold;
  }
  .region_tab .large_area_list .large_area_tags li.active a {
    color: #0F0A64;
    font-weight: bold;
    pointer-events: none;
  }
  .root-sub-list, .root-main-foot {
    padding-top: 1.6rem;
  }
  .region_tab-fits .region_tab .col6-article-2 ul {
    width: 108rem;
  }
  .region_tab-content {
    margin: 0 auto;
    width: 100%;
  }
  .large_area {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .large_area_inner {
    height: auto !important;
  }
  .large_area_more {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .region_tab-fits .region_tab .col6-article-2-wrap {
    padding: 0;
  }
  .region_tab-fits .region_tab .col6-article-2 ul li {
    font-size: 1.4rem;
    min-width: 64px;
  }
  .region_tab-fits .region_tab .col6-article-2 ul li.name-mid {
    min-width: 64px;
  }
  .region_tab-fits .region_tab .col6-article-2 ul li .name-long {
    min-width: 94px;
  }
  .region_tab-fits .region_tab .col6-article-2 ul li a {
    font-size: 1.4rem;
  }
  .region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn {
    margin-right: 4px;
  }
  .region_tab-fits .region_tab .region_tab-content .prefecture_list .prefecture_btn a,
  .region_tab-fits .region_tab .linkPrefectureAll a {
    padding: 0 10px;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list {
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list .large_area.large_area-show {
    padding: 16px 16px 8px 16px;
    border-top: 4px solid #F5F5F5;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags li {
    margin-bottom: 8px;
    margin-right: 24px;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags li a {
    margin-right: 0;
    color: #0F0A64;
    text-decoration: underline;
  }
  .region_tab-fits .region_tab .region_tab-content .large_area_list .large_area_tags li.active a {
    color: #757575;
    text-decoration: none;
    pointer-events: none;
  }
}

@media (min-width: 1120px) {
  .region_tab-fits .region_tab .col6-article-2-wrap {
    padding: 0;
  }
  .region_tab-fits .region_tab .col6-article-2 ul {
    width: 100% !important;
  }
  .region_tab-fits .region_tab .col6-article-2 .btn-scroll-2,
  .region_tab-fits .region_tab .col6-article-2 .btn-scroll-prev-2 {
    display: none;
  }
}

.carousel-area .col3-article,
.carousel-area .slick-slider {
  margin-bottom: 0 !important;
}

.carousel-area .col3-article {
  padding-bottom: 24px;
}

.carousel-area .slick-slider {
  overflow: visible;
}

@media (max-width: 767px) {
  .carousel-area .col3-article {
    margin-top: 16px;
    padding-bottom: 0;
  }
  .carousel-area .slick-slider {
    overflow: hidden;
  }
}

.carousel-area .col3-article .js-carousel-slider {
  display: -webkit-box;
}

.carousel-area .col3-article .js-carousel-slider.slick-slider {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.carousel-wrap {
  overflow: hidden;
}

.carousel-wrap li {
  width: 352px;
  max-height: 12vw;
  height: 120px;
  margin-right: 32px;
  border-radius: 8px;
  overflow: hidden;
}

.carousel-wrap li a {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.carousel-wrap li a .text {
  width: 100%;
  height: auto;
  -webkit-line-clamp: unset;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  font-size: 2.4rem;
  color: #fff;
}

.carousel-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 1280px) {
  .carousel-wrap li {
    width: 341px;
  }
}

@media (max-width: 1150px) {
  .carousel-wrap li {
    width: calc(31vw - 6px);
    margin-right: 2vw;
  }
}

@media (max-width: 900px) {
  .carousel-wrap li {
    width: calc(31vw - 8px);
  }
}

@media (max-width: 767px) {
  .carousel-wrap {
    height: 120px;
    overflow: hidden;
  }
  .carousel-wrap .slick-list {
    overflow-x: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .carousel-wrap li {
    width: 256px;
    max-height: none;
    margin-right: 8px;
  }
  .carousel-wrap li a .text {
    font-size: 1.6rem;
  }
  .carousel-wrap .slick-arrow {
    display: none !important;
  }
}

.carousel-wrap .slick-next,
.carousel-wrap .slick-prev {
  background-image: none;
  right: 0;
}

.carousel-wrap .slick-next::before,
.carousel-wrap .slick-prev::before {
  background-image: url(/stcontents/img/common/SwipeArrow_right.png);
  background-size: contain;
  width: 48px;
  height: 48px;
  right: 4px;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  color: transparent;
}

.carousel-wrap .slick-next:hover,
.carousel-wrap .slick-prev:hover {
  background-image: none;
  background-size: contain;
}

.carousel-wrap .slick-next:hover::before,
.carousel-wrap .slick-prev:hover::before {
  background-image: url(/stcontents/img/common/SwipeArrow_right_hover.png);
  background-size: contain;
}

.carousel-wrap .slick-prev {
  left: 0;
}

.carousel-wrap .slick-prev::before {
  background-image: url(/stcontents/img/common/SwipeArrow_left.png);
  left: 4px;
}

.carousel-wrap .slick-prev:hover::before {
  background-image: url(/stcontents/img/common/SwipeArrow_left_hover.png);
  left: 4px;
}

.carousel-wrap .slick-dots {
  width: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -18px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  pointer-events: none;
}

.carousel-wrap .slick-dots li {
  width: auto;
  height: auto;
  margin: 0 2px;
}

.carousel-wrap .slick-dots li button {
  background: #fff;
  width: 8px;
  height: 8px;
  opacity: 1;
  font-size: 10px;
  border: 1px solid #ccc;
  border-radius: 50%;
  padding: 0;
}

.carousel-wrap .slick-dots li button:before {
  content: none;
}

.carousel-wrap .slick-dots li.slick-active button {
  background: #c6c6c6;
  width: 10px;
  height: 10px;
}

@media (max-width: 767px) {
  .carousel-wrap .slick-dots {
    display: none;
  }
}

/*
Reluxグレード紹介エリア
*/
.relux-grade {
  padding: 16px 24px;
  background-image: url(/stcontents/img/common/reluxgrade-bg-sp.png);
  background-size: cover;
  background-repeat: no-repeat;
  color: #FFF;
}

.relux-grade .relux-grade-title {
  margin-bottom: 24px;
}

.relux-grade .relux-grade-title h2 {
  font-size: 2.4rem;
  margin-bottom: 12px;
}

.relux-grade .relux-grade-title p {
  margin-bottom: 0;
  padding-left: 24px;
  border-left: 1px solid #FF503E;
  padding-left: 8px;
  font-weight: 100;
}

.relux-grade figure {
  margin-bottom: 24px;
  text-align: center;
}

.relux-grade figure img {
  width: 100%;
  max-width: 327px;
  height: auto;
}

.relux-grade .col3-article {
  margin-left: -24px;
  margin-right: -24px;
}

.relux-grade .col3-article li {
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.relux-grade .col3-article li .bg {
  border: 1px solid #A6BCE9;
}

.relux-grade .col3-article li .bg::before {
  content: '';
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.relux-grade .col3-article .grade {
  margin-bottom: 2px;
}

.relux-grade .col3-article .grade img {
  height: 12px;
  margin-right: 2px;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
}

.relux-grade .col3-article .grade img.museum {
  height: 16px;
  margin-right: 0;
}

@media (min-width: 768px) {
  .relux-grade {
    padding: 32px 38px 40px 38px;
    background-image: url(/stcontents/img/common/reluxgrade-bg.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .relux-grade .relux-grade-title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 32px;
  }
  .relux-grade .relux-grade-title h2 {
    margin-bottom: 0;
    font-weight: normal;
    line-height: 1.2;
    white-space: nowrap;
  }
  .relux-grade .relux-grade-title p {
    margin-left: 24px;
  }
  .relux-grade figure {
    margin-bottom: 0;
  }
  .relux-grade figure img {
    max-width: 837px;
  }
  .relux-grade .col3-article {
    margin: 0;
    padding-bottom: 0;
  }
  .relux-grade .col3-article .text {
    display: none;
  }
  .relux-grade .col3-article li {
    width: 196px;
    height: 100px;
  }
  .relux-grade .col3-article li .inner {
    top: 0;
    padding: 8px;
  }
  .relux-grade .col3-article li .bg::before {
    background: -webkit-gradient(linear, left top, left bottom, from(#000000), to(rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(top, #000000 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
    height: 45px;
    opacity: .6;
  }
  .relux-grade .col3-article .slick-next {
    width: 48px;
    height: 48px;
    background: url(/stcontents/img/common/SwipeArrow_right.png) no-repeat center center;
    background-size: contain;
    right: 12px;
    top: 55%;
  }
  .relux-grade .col3-article .slick-next:hover {
    background: url(/stcontents/img/common/SwipeArrow_right_hover.png) no-repeat center center;
    width: 48px;
    height: 48px;
    background-size: contain;
  }
  .relux-grade .col3-article .slick-prev {
    background: url(/stcontents/img/common/SwipeArrow_left.png) no-repeat center center;
    width: 48px;
    height: 48px;
    background-size: contain;
    left: 12px;
    top: 55%;
  }
  .relux-grade .col3-article .slick-prev:hover {
    background: url(/stcontents/img/common/SwipeArrow_left_hover.png) no-repeat center center;
    width: 48px;
    height: 48px;
    background-size: contain;
  }
}

@media (min-width: 1280px) {
  .relux-grade .col3-article .slick-arrow {
    display: none !important;
  }
  .relux-grade .col3-article .slick-track {
    width: 100% !important;
    -webkit-transform: none !important;
            transform: none !important;
  }
}

/* App訴求バナー */
.app-banner {
  max-width: 1120px;
  height: auto;
  margin: 0 auto;
  background: #EFEFEF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 24px 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.app-banner .device {
  margin-right: 54px;
}

.app-banner .device img {
  width: 222px;
}

.app-banner .title h3 {
  padding: 0;
  margin-bottom: 8px;
}

.app-banner .title p.font-large {
  margin-bottom: 16px;
}

.app-banner .title .qrList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 24px;
}

.app-banner .title .qrList .qr01 {
  margin-right: 40px;
}

.app-banner .title .qrList img.btn-app {
  height: 45px;
  margin-right: 8px;
}

.app-banner .title .qrList img.qr {
  height: 45px;
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .app-banner .device {
    margin-right: 32px;
  }
  .app-banner .device img {
    width: 158px;
    height: 191px;
  }
}

@media (max-width: 767px) {
  .app-banner {
    width: 100%;
    display: block;
    text-align: center;
    padding: 24px 16px;
  }
  .app-banner .device {
    margin-right: 0;
  }
  .app-banner .description {
    margin-bottom: 24px;
  }
  .app-banner .description .font-large {
    font-size: 1.2rem;
  }
  .app-banner .description .font-small {
    font-size: 1rem;
  }
  .app-banner .title .qrList {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 16px;
  }
  .app-banner .title .qrList .qr01 {
    margin-right: 8px;
  }
  .app-banner .title .qrList .qr02 {
    margin: 0;
  }
  .app-banner .title .qrList img.qr {
    display: none;
  }
  .app-banner .title .qrList img.btn-app {
    margin: 0;
  }
}

/***** 開発環境対応 ******/
/* stripe部品用のcss設定 */
.StripeElement {
  height: 45px;
  line-height: 45px;
  vertical-align: middle;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 12px;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
  -webkit-appearance: none;
}

.__PrivateStripeElement {
  width: 100%;
}

.on .StripeElement--empty {
  border: 1px solid #CE0000;
}

.on .StripeElement--focus {
  border: 1px solid #0F0A64;
}

.on .StripeElement--invalid {
  border: 1px solid #CE0000;
}

/* 全国旅行支援 */
.disclaimer header, .disclaimer footer,
.disclaimer .headeralert {
  display: none !important;
}

.disclaimer .wrap {
  max-width: 700px;
  line-height: 1.8;
  padding: 40px 30px 500px;
  padding-top: 40px !important;
}

.disclaimer .h1 {
  margin-bottom: 32px;
  text-align: center;
  font-size: 20px;
}

.disclaimer .notice-box {
  padding-top: 10px;
  margin-bottom: 60px;
}

.disclaimer .notice-box h2 {
  background: #1973B7;
  margin-bottom: 24px;
  padding: 8px;
  font-size: 14px;
  text-align: center;
  line-height: initial;
  color: #fff;
}

.disclaimer .notice-box ul {
  padding-left: 1.5em;
}

.disclaimer .notice-box ul li {
  list-style: disc;
  margin-bottom: 8px;
}

.disclaimer .notice-box a {
  color: #757575;
}

.disclaimer .notice-box .no-text {
  text-align: center;
  font-size: 13px;
  color: #333;
}

.disclaimer .notice-box ul.note {
  color: #757575;
  padding-left: 1em;
  text-indent: -1em;
}

.disclaimer .notice-box ul.note li {
  list-style: none;
}

@media screen and (max-width: 767px) {
  .disclaimer .wrap {
    padding: 0 16px 500px;
  }
  .disclaimer .h1 {
    letter-spacing: 0;
    font-size: 16px;
  }
}

/* トップページ */
.index {
  /*
    feature-line
  */
  /*
    selections
  */
  /*
    Campain
  */
  /*
    特集から探す
  */
  /*
    　閲覧履歴　
  */
  /*
     グレードから探す
  */
  /*
    宿タイプから探す
  */
  /*
    人気エリア
  */
  /*
    エリアから探す
  */
  /*
    ReluxJournal
  */
}

.index h1 {
  text-align: center;
}

.index h1 img {
  width: 290px;
  max-width: 100%;
}

.index h2 {
  margin-bottom: 16px;
}

.index .key-visual a {
  color: #fff;
}

.index .key-visual .js-slick-slider .slick-arrow {
  display: none !important;
}

.index .btn-slide-arrow .slick-prev:focus {
  background: url(/stcontents/img/common/left_Hover-3.svg) no-repeat center center;
  background-size: contain;
}
.index .btn-slide-arrow .slick-next:focus {
  background: url(/stcontents/img/common/right_Hover-3.svg) no-repeat center center;
  background-size: contain;
}

.index .history .btn-scroll-prev,
.index .history .btn-scroll {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .index .relux-grade .col3-article {
      margin-left: -16px;
      margin-right: -16px;
  }
}
.btn-calendar-close {
  text-align: right;
}

.btn-calendar-close .btn-popup-close {
  background: none;
  width: auto;
  height: 40px;
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  z-index: auto;
}

.btn-calendar-close .color-relux {
  color: #0F0A64 !important;
}

.index .btn-area .color-relux {
  color: #0F0A64 !important;
}

.index .js-slick-slider {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  /* スライドショー */
}

.index .js-slick-slider .slick-track,
.index .js-slick-slider .slick-list,
.index .js-slick-slider .slick-slide {
  height: 100%;
  position: relative;
}

.index .js-slick-slider .hotel-1 {
  background: url(/stcontents/img/index/kv-1.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-2 {
  background: url(/stcontents/img/index/kv-2.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-3 {
  background: url(/stcontents/img/index/kv-3.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-4 {
  background: url(/stcontents/img/index/kv-4.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-5 {
  background: url(/stcontents/img/index/kv-5.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-6 {
  background: url(/stcontents/img/index/kv-6.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-7 {
  background: url(/stcontents/img/index/kv-7.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-8 {
  background: url(/stcontents/img/index/kv-8.jpg) no-repeat center center;
}

.index .js-slick-slider .hotel-9 {
  background: url(/stcontents/img/index/kv-9.jpg) no-repeat center center;
}

.index .js-slick-slider .slick-counter {
  position: absolute;
  bottom: 16px;
}

.index .js-slick-slider .slick-current .hotel-info, .index .js-slick-slider .slick-current .hotel-info2 {
  opacity: 1;
}

.index .js-slick-slider .hotel-info {
  opacity: 0;
  width: 100%;
  height: auto;
  position: absolute;
  bottom: 48px;
  font-size: 14px;
}

.index .js-slick-slider .hotel-info .hotel-info-inner {
  max-width: 1128px;
  margin: 0 auto;
  height: auto;
  margin: 0 auto;
  padding: 0 42px 0 16px;
  text-align: left;
}

.index .js-slick-slider .hotel-info .text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1088px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 6px;
  background: rgba(0, 0, 0, 0.2);
}

.index .js-slick-slider .hotel-info .text:hover {
  opacity: .7;
}

.index .js-slick-slider .hotel-info .text .grade {
  width: 66px;
  height: 20px;
  margin-right: 8px;
}

.index .js-slick-slider .hotel-info .text .name {
  display: inline;
}

.index .js-slick-slider .hotel-info .text p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0;
}

.index .js-slick-slider .hotel-info .text .arrow {
  display: inline;
  margin-left: 8px;
}

.index .js-slick-slider .hotel-info2 {
  opacity: 0;
  width: 100%;
  height: auto;
  position: absolute;
  bottom: 48px;
}

.index .js-slick-slider .hotel-info2 .hotel-info-inner2 {
  max-width: 1128px;
  margin: 0 auto;
  height: auto;
  margin: 0 auto;
  padding: 0 42px 0 16px;
  text-align: right;
}

.index .js-slick-slider .hotel-info2 .hotel-info-inner2 a {
  font-size: 14px;
  text-decoration: underline;
  text-shadow: 1px 1px 1px #000;
}

.index .js-slick-slider .hotel-info2 .hotel-info-inner2 a:hover {
  text-decoration: none;
}

.key-visual .js-slick-slider .slick-track,
.key-visual .js-slick-slider .slick-list,
.js-kv-slider .slick-track,
.js-kv-slider .slick-list {
  height: 100%;
}

@media screen and (max-width: 1280px) {
  .key-visual .js-slick-slider .slick-slide,
  .js-kv-slider .slick-slide {
    background-size: 1280px !important;
  }
}

@media screen and (max-width: 767px) {
  .key-visual .js-slick-slider .slick-slide,
  .js-kv-slider .slick-slide {
    background-size: cover !important;
  }
}

.key-visual .js-slick-slider .slick-slide {
  background-size: 100% !important;
  width: 100vw !important;
  position: absolute !important;
  left: 0 !important;
}

@media screen and (max-width: 1023px) {
  .key-visual .js-slick-slider .slick-slide {
    background-size: cover !important;
  }
}

.index .key-hotels {
  opacity: 0;
  position: absolute;
  right: 16px;
  margin-left: 16px;
  bottom: 45px;
  text-align: right;
  text-shadow: 0 0 5px #000;
}

.index .key-hotels a {
  background: rgba(0, 0, 0, 0.3);
  display: block;
  padding: 16px 32px 16px 16px;
  border-radius: 8px;
  text-decoration: none;
}

.index .key-hotels a:after {
  background: url(/stcontents/img/common/icon-arrow-right-white-2.svg) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: block;
  width: 6px;
  height: 9px;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.slick-current .key-hotels {
  opacity: 1;
}

.index .key-hotels .grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.index .key-hotels .grade img {
  height: 14px;
}

.index .key-hotels .name {
  line-height: 1.5;
  font-weight: 500;
  font-size: 1.6rem;
}

.index .key-hotels .price {
  margin-bottom: 0;
  font-size: 1rem;
}

.index .key-hotels .price span {
  font-weight: 500;
  font-size: 1.8rem;
}

.index .popup-position {
  bottom: 40px;
}

@media (min-width: 768px) {
  .index h1 img {
    width: auto;
  }
  .index .key-visual .js-slick-slider .slick-arrow {
    display: inline-block !important;
  }
  .index .key-visual .js-slick-slider .slick-prev:hover,
  .index .key-visual .js-slick-slider .slick-next:hover {
    opacity: 0.7;
  }
  .index .key-visual .js-slick-slider .slick-prev {
    left: calc(8% - 20px);
    right: auto;
  }
  .index .key-visual .js-slick-slider .slick-next {
    left: auto;
    right: calc(8% - 20px);
  }
  .index .key-visual .js-slick-slider .slick-counter {
    bottom: 24px;
  }
  .index .key-hotels {
    bottom: 24px;
    right: calc(8% - 20px);
  }
  .index .key-hotels a {
    background: none;
    padding: 16px;
  }
  .index .key-hotels a:hover {
    background: rgba(0, 0, 0, 0.3);
  }
  .index .key-hotels a:after {
    content: none;
  }
  .index .key-hotels .grade img {
    height: auto;
  }
  .index .key-hotels .name {
    max-width: 515px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 2.4rem;
  }
  .index .key-hotels .price {
    font-size: 1.2rem;
  }
  .index .key-hotels .price span {
    font-size: 2.4rem;
  }
}

@media (max-width: 767px) {
  .index .searchBoxArea.fixed {
    background: #fff;
    padding: 0;
    left: 0;
    right: 0;
    -webkit-transform: none;
            transform: none;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
  }
  .index .searchBoxArea.fixed .searchBox {
    width: calc(100vw - 32px);
    height: 48px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 0;
    border: none;
  }
  .index .searchBoxArea.fixed .searchBox .box.area {
    width: 100%;
    height: auto;
    border: none;
    border-radius: 0;
  }
  .index .searchBoxArea.fixed .searchBox .box.area #text::-webkit-input-placeholder {
    color: #c6c6c6;
  }
  .index .searchBoxArea.fixed .searchBox .box.area #text:-ms-input-placeholder {
    color: #c6c6c6;
  }
  .index .searchBoxArea.fixed .searchBox .box.area #text::-ms-input-placeholder {
    color: #c6c6c6;
  }
  .index .searchBoxArea.fixed .searchBox .box.area #text::placeholder {
    color: #c6c6c6;
  }
  .index .searchBoxArea.fixed .searchBox .searchBtn {
    width: 20px;
  }
  .index .searchBoxArea.fixed .searchBox .searchBtn button {
    background: transparent url(/stcontents/img/common/icon-search.svg) no-repeat 4px center;
    width: 100%;
    border: none;
  }
  .index .searchBoxArea.fixed .searchBox .searchBtn button img {
    display: none;
  }
  .index .searchBoxArea.modal-on.fixed {
    background: #fff;
    position: fixed;
    top: 0;
    padding: 32px 0 0;
    -webkit-transform: none;
            transform: none;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .index .searchBoxArea.modal-on.fixed .searchBox {
    border-bottom: 1px solid #C6C6C6;
  }
  .index .hotel-info .text {
    display: block !important;
  }
  .index .key-visual .inner {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  .index .js-slick-slider .hotel-info2 .hotel-info-inner2 {
    padding-right: 16px;
  }
  .index .js-slick-slider .slick-counter {
    bottom: 8px;
  }
}

.index .selections-area {
  overflow: hidden;
  padding: 20px 0 140px;
  margin-bottom: 0;
}

.index .selections-area .text-link-gray {
  float: right;
}

.index .selections-area .col6-article li {
  margin-bottom: 0;
}

.index .selections-area .col6-article li .title {
  margin-bottom: 0;
}

.index .selections-area .btn-scroll,
.index .selections-area .btn-scroll-2 {
  width: 48px;
  height: 48px;
  background: url(/stcontents/img/common/SwipeArrow_right.png) no-repeat center center;
  background-size: contain;
}

.index .selections-area .btn-scroll:hover,
.index .selections-area .btn-scroll-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_right_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .selections-area .btn-scroll-prev,
.index .selections-area .btn-scroll-prev-2 {
  background: url(/stcontents/img/common/SwipeArrow_left.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .selections-area .btn-scroll-prev:hover,
.index .selections-area .btn-scroll-prev-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_left_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

@media (min-width: 768px) {
  .index .selections-area {
    padding: 20px 0 200px;
    margin-bottom: 0;
  }
}

.index .campaign {
  padding: 40px 0;
}

.index .campaign .wrap {
  padding: 0;
}

.index .campaign .campaign-list {
  position: relative;
  margin-bottom: 0;
}

.index .campaign .campaign-list .slick-dots {
  position: absolute;
  bottom: 8px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.index .campaign .campaign-list .slick-dots li {
  position: relative;
  display: inline-block;
  cursor: pointer;
  width: auto;
  height: auto;
  margin: 0 2px;
}

.index .campaign .campaign-list .slick-dots li button {
  background-color: #fff;
  width: 2px;
  height: 2px;
  opacity: 1;
  border-radius: 50%;
  line-height: 0;
  color: transparent;
  padding: 0;
}

.index .campaign .campaign-list .slick-dots li button::before {
  display: none;
}

.index .campaign .campaign-list .slick-dots li.slick-active button {
  width: 4px;
  height: 4px;
}

.index .campaign .campaign-list .slick-dots li:only-child {
  display: none;
}

.index .campaign .campaign-list .slick-arrow {
  width: 15px;
  height: 28px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.index .campaign .campaign-list .slick-arrow::before {
  display: none;
}

.index .campaign .campaign-list .slick-next {
  background-image: url(/stcontents/img/common/icon-arrow-right-white.svg);
  right: 24px;
}

.index .campaign .campaign-list .slick-next:hover {
  background-image: url(/stcontents/img/common/right_Hover.svg);
}

.index .campaign .campaign-list .slick-prev {
  background-image: url(/stcontents/img/common/icon-arrow-left-white.svg);
  left: 24px;
}

.index .campaign .campaign-list .slick-prev:hover {
  background-image: url(/stcontents/img/common/left_Hover.svg);
}

.index .campaign .campaign-list-item {
  padding-left: 4px;
  padding-right: 4px;
}

.index .campaign .campaign-list-item a {
  pointer-events: none;
}

.index .campaign .campaign-list-item.item1 a {
  background-image: url(/stcontents/img/index/bnr-campaign01.png);
}

.index .campaign .campaign-list-item.item2 a {
  background-image: url(/stcontents/img/index/bnr-campaign02.png);
}

.index .campaign .campaign-list-item.item3 a {
  background-image: url(/stcontents/img/index/bnr-campaign03.png);
}

.index .campaign .campaign-list-item.slick-current a {
  pointer-events: visible;
}

.index .campaign .campaign-list-item.slick-current a::before {
  display: none;
}

.index .campaign .campaign-list-item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 300px;
  height: 180px;
  padding-left: 16px;
  padding-right: 16px;
  text-decoration: none;
  text-shadow: 0 0 5px #000;
  font-size: 1.6rem;
  color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.index .campaign .campaign-list-item a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.index .campaign h2 {
  font-size: 2rem;
  letter-spacing: 2px;
}

.index .campaign .campaign-text {
  font-weight: 500;
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .index .campaign .wrap {
    padding: 0 16px;
  }
  .index .campaign .campaign-list .slick-dots li button {
    width: 4px;
    height: 4px;
  }
  .index .campaign .campaign-list .slick-dots li.slick-active button {
    width: 6px;
    height: 6px;
  }
  .index .campaign .campaign-list-item {
    padding-left: 19px;
    padding-right: 19px;
    position: relative;
  }
  .index .campaign .campaign-list-item a {
    width: 730px;
    height: 250px;
  }
  .index .campaign .campaign-list-item a:hover {
    opacity: 0.7;
  }
  .index .campaign h2 {
    font-size: 2.6rem;
    margin-bottom: 30px;
  }
  .index .campaign .campaign-text {
    font-size: 1.6rem;
  }
}

@media (min-width: 1280px) {
  .index .campaign .wrap {
    padding: 0;
  }
}

.index .feature-area {
  padding: 20px 0 20px;
}
.index .feature-area#feature-sec {
  padding:40px 0 !important;
}
.index .feature-area .feature-area-list li {
  background: #fff;
  height: auto;
  width: calc(25% - 24px);
  margin-bottom: 24px;
}
.index .feature-area .feature-area-list li a {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 16px 16px 6px;
}
.index .feature-area .feature-area-list li img {
  height: 145px;
}
.index .feature-area .feature-area-list li .text {
  position: relative;
  top: inherit;
  left: inherit;
  transform: none;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: pre-wrap;
  line-height: 1.3;
  padding: 10px 10px 10px;
  font-weight: bold;
  font-size: 1.6rem;
  color: #333;
  text-shadow: none;
}

@media (min-width: 1024px) {
  .index .feature-area .feature-area-list {
    justify-content: flex-start;
  }
  .index .feature-area .feature-area-list li {
    margin: 0 30px 24px 0;
  }
  .index .feature-area .feature-area-list li:nth-child(4n) {
    margin-right: 0;
  }
}
@media (max-width: 1023px) {
  .index .feature-area .feature-area-list li {
      width: calc(35% - 24px);
  }
}
@media (max-width: 767px) {
  .index .feature-area .feature-area-list li {
    width: calc(50% - 4px);
    margin-bottom: 8px;
  }
  .index .feature-area .feature-area-list li a {
    padding: 8px 8px 2px;
  }
  .index .feature-area .feature-area-list li img {
    height: 82px;
  }
  .index .feature-area .feature-area-list li .text {
    min-height: 52px;
    padding: 10px 0 10px;
    font-size: 1.2rem;
  }
}
@media (max-width: 360px) {
  .index .feature-area .feature-area-list li .text {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  .index .feature-area {
    padding: 40px 0 56px;
  }
}

.index .history {
  overflow: hidden;
  padding: 40px 0;
}
.index .last-section {
  padding-bottom: 56px !important;
}

.index .history .js-scroll-box {
  margin-left: -16px;
  margin-right: -16px;
}

.index .history .js-scroll-box::-webkit-scrollbar {
  width: 4px;
  display: block;
}

.index .history .js-scroll-box ul {
  padding-left: 16px;
  padding-right: 16px;
  float: left;
}

.index .history .js-scroll-box ul > li {
  margin-bottom: 0;
}

.index .history .js-scroll-box ul > li.more-box a {
  width: 100%;
  margin-right: 0;
  background-color: #fff;
}

.index .history .js-scroll-box ul > li .text {
  margin-bottom: 0;
}

@media (min-width: 1280px) {
  .index .history .js-scroll-box ul > li {
    margin-right: 31px;
  }
}

@media (min-width: 768px) {
  .index .last-section {
    padding-bottom: 180px !important;
  }
  .index .history .js-scroll-box {
    margin-left: 0;
    margin-right: 0;
  }
  .index .history .js-scroll-box ul {
    padding-left: 0;
    padding-right: 0;
    float: none;
  }
  .index .history .js-scroll-box ul > li {
    width: 160px;
  }
  .index .history .js-scroll-box ul > li a {
    width: 100%;
  }
  .index .history .js-scroll-box ul > li a:hover {
    opacity: .7;
  }
  .index .history .js-scroll-box ul > li.more-box a {
    width: 100%;
    margin-right: 0;
  }
}

.point-sec {
  background-image: url(/stcontents/img/index/bg-point-sec-1.png), url(/stcontents/img/index/bg-point-sec-2.png);
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: right top 0, left bottom;
  background-size: auto, auto, 100%;
  font-weight: 200;
  font-size: 2rem;
}
.point-sec .relux-grade {
  background: none !important;
  padding: 32px 0 20px;
  color: #333;
}
.point-sec h2 {
  margin: 24px auto 40px;
  text-align: center;
  font-weight: normal;
  font-size: 3.6rem;
  color: #0F0A64;
}
.point-sec h2:after {
  width: 60px;
  content: "";
  display: block;
  border-bottom: 1px solid #FF503E;
  margin: 16px auto 0;
}
.point-sec h3 {
  display: flex;
  margin-bottom: 16px;
  line-height: 2;
  font-weight: normal;
  font-size: 2.4rem;
}
.point-sec img {
  max-width: 100%;
}
.point-sec .col3-article img {
  max-width: none;
}
.point-sec .d-flex {
  margin-bottom: 72px;
}
.point-sec .mincho {
  margin-right: 3rem;
  font-size: 4.8rem;
  letter-spacing: 4px;
  line-height: 1;
  color: #A6BCE9;
}
.point-sec .text-link-gray {
  color: inherit;
}
.point-sec .text-link-gray:after {
  content: none;
}
.point-sec .text-link {
  font-weight: normal;
}
.point-sec .icon-ponta {
  width: 190px;
  margin-left: 24px;
}
.point-sec .border-red {
  display: flex;
  align-items: center;
  white-space: nowrap;
  padding-right: 16px;
  margin-right: 16px;
  border-right: 2px solid #FF503E;
}
.point-sec .text-link-white.text-deco-underline:after {
  content: none;
}
.point-sec .text-link-white {
  color: inherit;
}
.point-sec .grade-wrap {
  width: calc(100% - 80px);
}
.point-sec .col3-article {
  padding: 0 16px 10px 0;
}
.point-sec .col3-article ul {
  width: auto;
}
.point-sec .col3-article li {
  border-radius: 10px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}
.point-sec .relux-grade .col3-article li .bg {
  border: none;
}

@media screen and (min-width: 1200px) {
  .point-sec .grade-wrap {
      width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .point-sec .col3-article li {
    margin-right: 12px;
  }
  .point-sec .col3-article::-webkit-scrollbar {
    display: block;
    height: 6px;
  }
  .point-sec .col3-article::-webkit-scrollbar-track {
    background: #f5f5f5;
    border-radius: 4px;
  }
  .point-sec .col3-article::-webkit-scrollbar-thumb {
    background: #C6C6C6;
    border-radius: 4px;
  }
  .point-sec h3 .font-x-large {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 1024px) {
  .point-sec {
    padding-top: 20vw;
    font-size: 1.6rem;
  }
  .point-sec .mincho {
    font-size: 3.6rem;
    margin-right: 1rem;
  }
  .point-sec h3,
  .point-sec h3 .font-x-large {
    font-size: 2rem;
  }
  .point-sec .grade-wrap {
    width: calc(100% - 40px);
  }
}


@media screen and (max-width: 767px) {
  .point-sec {
    background-image: url(/stcontents/img/index/bg-point-sec-1.png), url(/stcontents/img/index/bg-point-sec-2.png);
    background-repeat: no-repeat, no-repeat, no-repeat;
    background-position: right -160px top 78vw, left bottom 150px;
    background-size: 330px, 90%, 100%;
    padding-top: 0;
    font-size: 1.4rem;
  }
  .point-sec h2 {
    font-size: 2.6rem;
  }
  .point-sec .pl-40 {
    padding-left: 0 !important;
  }
  .point-sec .border-red {
    border: none !important;
  }
  .point-sec .d-flex .pc-only {
    display: none;
  }
  .point-sec .d-flex .sp-only {
    display: block !important;
  }
  .point-sec .relux-grade {
    padding: 16px 0;
  }
  .point-sec h3 {
    margin-bottom: 16px;
    padding-top: 4px;
    font-size: 2rem;
    line-height: 1.5;
  }
  .point-sec h3 .font-x-large {
    font-size: 1.6rem;
  }
  .point-sec .d-flex {
    display: block;
    margin-bottom: 40px;
  }
  .point-sec .grade-wrap {
    width: auto;
  }
  .point-sec .title-num {
    float: left;
  }
  .point-sec .icon-ponta {
    width: 108px;
    margin: 24px 0 0;
  }
}

@media screen and (max-width: 380px) {
  .point-sec h3.line-2 {
    margin-top: -14px;
  }
}

.hotel-grade {
  padding-top: 40px;
}
.hotel-grade .upper {
  background: #fff;
  padding: 24px 14px 8px 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.hotel-grade .upper .lead {
  width: 100%;
  font-size: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  line-height: 1.8;
  text-align: center;
  font-weight: 100;
}

.hotel-grade .upper .lead .contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.hotel-grade .upper .lead .text-link, .hotel-grade .upper .lead .text-link-gray {
  font-size: 1.4rem;
}

.hotel-grade .upper .lead .w-100 {
  width: 100%;
  margin-top: auto;
  font: initial;
}

.hotel-grade .upper .lead .star {
  position: relative;
}

.hotel-grade .upper .lead .star:after {
  background: -webkit-radial-gradient(circle, rgba(0, 0, 0, 0.1) 0, rgba(255, 255, 255, 0) 60%);
  background: radial-gradient(circle, rgba(0, 0, 0, 0.1) 0, rgba(255, 255, 255, 0) 60%);
  width: 80px;
  height: 80px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-45%, -10px);
          transform: translate(-45%, -10px);
}

.hotel-grade .upper .lead h3 {
  font-weight: bold;
  font-size: 2rem;
  letter-spacing: 2px;
  margin-bottom: 10px;
  margin-top: 0;
}

.hotel-grade .upper .lead p {
  margin: 0;
}

.hotel-grade .upper .figure img {
  max-width: 273px;
  width: 100%;
  display: block;
  margin: 22px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
}

.hotel-grade .under {
  position: relative;
}

@media (max-width: 767px) {
  .hotel-grade {
    margin-top: 8px;
    padding-top: 0;
  }
  .hotel-grade .wrap {
    padding: 0;
  }
  .hotel-grade .contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .hotel-grade .upper .lead {
    letter-spacing: 0;
  }
  .hotel-grade .text-link-gray {
    font-size: 1.2rem;
  }
}

@media (min-width: 768px) {
  .hotel-grade .upper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 24px 30px 24px 20px;
  }
  .hotel-grade .upper .lead {
    width: 73.6%;
    line-height: 2;
    font-size: 1.6rem;
  }
  .hotel-grade .upper .lead .inner {
    margin-top: 40px;
    margin-bottom: 20px;
  }
  .hotel-grade .upper .lead h3 {
    font-size: 3.2rem;
    margin-bottom: 30px;
  }
  .hotel-grade .upper .figure img {
    max-width: 100%;
    margin: 0;
    padding-right: 48px;
  }
  .hotel-grade .under {
    position: relative;
    margin-bottom: 32px;
  }
  .hotel-grade .under:after {
    content: none;
  }
  .hotel-grade .col3-article .btn-scroll-next {
    right: 12px;
  }
}

@media (max-width: 1024px) {
  .hotel-grade .upper .lead .inner {
    margin-top: 0;
  }
}

.index .hotel-type {
  margin-bottom: 40px;
}

.index .hotel-type h2 {
  margin-bottom: 20px;
}

.index .hotel-type .col5-article ul li .text {
  margin-bottom: 0;
}

.index .hotel-type .col5-article .btn-scroll,
.index .hotel-type .col5-article .btn-scroll-prev {
  top: 50px;
}

.index .hotel-type .col5-article .btn-scroll,
.index .hotel-type .col5-article .btn-scroll-2 {
  width: 48px;
  height: 48px;
  background: url(/stcontents/img/common/SwipeArrow_right.png) no-repeat center center;
  background-size: contain;
}

.index .hotel-type .col5-article .btn-scroll:hover,
.index .hotel-type .col5-article .btn-scroll-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_right_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .hotel-type .col5-article .btn-scroll-prev,
.index .hotel-type .col5-article .btn-scroll-prev-2 {
  background: url(/stcontents/img/common/SwipeArrow_left.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .hotel-type .col5-article .btn-scroll-prev:hover,
.index .hotel-type .col5-article .btn-scroll-prev-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_left_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .hot-area {
  padding: 40px 0;
}

.index .hot-area h2 {
  margin-bottom: 30px;
}

.index .hot-area-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.index .hot-area-list li {
  width: calc(50% - 4px);
  height: 80px;
  margin-bottom: 8px;
  margin-right: 8px;
  overflow: hidden;
  border-radius: 8px;
  position: relative;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.index .hot-area-list li:nth-child(2n) {
  margin-right: 0;
}

.index .hot-area-list li:last-child {
  margin-right: 0;
}

.index .hot-area-list li img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.index .hot-area-list li .caption {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  text-align: center;
  font-size: 1.6rem;
}

.index .hot-area-list a {
  display: block;
  text-decoration: none;
  color: #fff;
  height: 100%;
}

@media (min-width: 768px) {
  .index .hot-area .wrap:nth-child(2) {
    padding: 0;
  }
  .index .hot-area-list {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .index .hot-area-list li {
    width: 280px;
    height: 100px;
    margin-bottom: 0;
    margin-right: 32px;
  }
  .index .hot-area-list li:nth-child(2n) {
    margin-right: 32px;
  }
  .index .hot-area-list li:last-child {
    margin-right: 0;
  }
  .index .hot-area-list li .caption {
    font-size: 2rem;
  }
  .index .hot-area-list a:hover {
    opacity: 0.7;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .index .hot-area-list li {
    width: 280px;
    margin-right: 16px;
  }
  .index .hot-area-list li:nth-child(2) {
    margin-right: 16px;
  }
}

@media (min-width: 1280px) {
  .index .hot-area-list li .caption {
    font-size: 2rem;
  }
}

.index .area-map {
  background: url("/stcontents/img/common/area-map.svg") no-repeat center top;
  background-size: contain;
  width: 1000px;
  height: 650px;
  position: relative;
  margin: 64px auto 50px;
}

.index .area-map > div {
  width: 130px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
}

.index .area-map a {
  background: #f5f5f5;
  border-radius: 4px;
  display: block;
  position: relative;
  text-decoration: none;
  padding: 3px 16px 4px;
  border-bottom: 1px solid #c6c6c6;
  font-size: 1.4rem;
  color: #333;
}

.index .area-map a:after {
  background: url("/stcontents/img/common/icon-map-arrow-gray.svg") no-repeat 0 0;
  background-size: contain;
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -7px;
}

.index .area-map .area-title {
  overflow: hidden;
  margin-bottom: 0;
}

.index .area-map .area-title a {
  background: #0F0A64;
  border-bottom: none;
  color: #fff;
}

.index .area-map .area-title a:after {
  background: url("/stcontents/img/common/icon-map-arrow.svg") no-repeat 0 0;
  background-size: contain;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  right: 8px;
  margin-top: -5px;
}

.index .area-map > div:hover .area-title a:after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  right: 5px;
  margin-top: -7px;
}

.index .area-map .hokkaido .area-title a:after,
.index .area-map .okinawa .area-title a:after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  right: 5px;
  margin-top: -7px;
}

.index .area-map .hokkaido {
  top: 5px;
  left: 525px;
}

.index .area-map .tohoku {
  top: 177px;
  left: 850px;
}

.index .area-map .kitakanto {
  top: 300px;
  left: 850px;
}

.index .area-map .syutoken {
  top: 456px;
  left: 782px;
}

.index .area-map .koushinetsu {
  top: 222px;
  left: 488px;
}

.index .area-map .hokuriku {
  top: 322px;
  left: 330px;
}

.index .area-map .tokai {
  top: 524px;
  left: 670px;
}

.index .area-map .kinki {
  top: 560px;
  left: 500px;
}

.index .area-map .saninsanyou {
  top: 358px;
  left: 136px;
}

.index .area-map .shikoku {
  top: 620px;
  left: 325px;
}

.index .area-map .kyushu {
  top: 570px;
  left: 22px;
}

.index .area-map .okinawa {
  top: 65px;
  left: 262px;
}

.index .area-map .okinawa a,
.index .area-map .hokkaido a {
  border-radius: 4px !important;
}

.index .area-map .area-child {
  height: 0;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.index .area-map > div:hover .area-title {
  border-radius: 4px 4px 0 0;
}

.index .area-map > div:hover .area-child {
  height: auto;
}

.index .area-map > div:hover a {
  border-radius: 0;
}

.index .area-map > div:hover a:hover {
  background: #554B98;
  color: #fff;
  opacity: 1;
}

.index .area-map > div:hover a:hover:after {
  background: url("/stcontents/img/common/icon-map-arrow.svg") no-repeat 0 0;
  background-size: contain;
}

.index .area-map .area-child li:last-child a {
  border-bottom: none;
  border-radius: 0 0 4px 4px;
  padding-bottom: 5px;
}

.index .area-list {
  max-width: 600px;
  margin: 20px auto 12px;
  border-radius: 4px;
  font-weight: bold;
  font-size: 1.4rem;
  cursor: pointer;
}

.index .area-list li,
.campaigns.template .area-list li {
  background: #fff;
  position: relative;
}

.index .area-list li:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-gray.svg);
  width: 18px;
  height: 9px;
  position: absolute;
  right: 20px;
  top: 14px;
}

.index .area-list > li {
  background: #0F0A64;
  margin-bottom: 0;
  padding: 6px 0 2px;
  border: none;
  border-radius: 4px;
  color: #fff;
}

.index .area-list > li:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-white.svg);
  width: 18px;
  height: 9px;
  position: absolute;
  right: 20px;
  top: 14px;
}

.index .area-list > li.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  top: 30px;
}

.index .area-list > li.active,
.campaigns.template .area-list > li.active {
  padding-bottom: 0;
}

.index .area-list > li > ul {
  border: 1px solid #0F0A64;
  border-radius: 0 0 4px 4px;
}

.index .area-list > li span {
  display: block;
  padding: 8px 16px 12px;
}

.index .area-list ul {
  display: none;
}

.index .area-list ul > li.active {
  background: #E1E9F8;
}

.index .area-list ul > li.active:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-gray.svg);
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  top: 30px;
}

.index .area-list ul li {
  font-weight: bold;
}

.index .area-list ul li a {
  display: block;
  padding: 13px 16px;
  border-top: 1px solid #ccc;
  color: #000;
}

.index .area-list ul ul {
  overflow: hidden;
}

.index .area-list ul ul li {
  background: #f5f5f5;
  font-weight: normal;
}

.index .area-list ul ul li:after {
  top: 20px !important;
  right: 28px !important;
  -webkit-transform: rotate(-90deg) !important;
          transform: rotate(-90deg) !important;
}

.index .area-list ul ul li a {
  padding-left: 24px;
  border-top: 1px solid #C6C6C6;
}

.index .area-list ul .okinawa {
  border-radius: 0 0 4px 4px;
}

.index .area-list ul .okinawa a {
  padding-bottom: 10px;
}

.index .area-list ul .hokkaido::after,
.index .area-list ul .okinawa::after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  top: 22px;
  right: 28px;
}

.index .area-list ul .hokkaido.active,
.index .area-list ul .okinawa.active {
  background: #fff;
}

.index .area-list ul .hokkaido.active::after,
.index .area-list ul .okinawa.active::after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  top: 22px;
  right: 28px;
}

@media (min-width: 768px) {
  .index .area-list {
    margin: 40px auto;
  }
  .index .area-map.pc-only {
    display: none;
  }
  .index .area-list.sp-only {
    display: block;
  }
}

@media (min-width: 1024px) {
  .index .area-map.pc-only {
    display: block;
  }
  .index .area-list.sp-only {
    display: none;
  }
}

.index .journal {
  overflow: hidden;
  padding: 30px 0;
}

.index .journal .col6-article li {
  margin-bottom: 0;
}

.index .journal .col6-article li p:last-child {
  margin-bottom: 0;
}

.index .journal .text-link-gray {
  margin-top: 30px;
  float: right;
}

.index .journal .text-link-gray a {
  color: #757575;
}

.index .journal .text-link-gray:after {
  margin-bottom: -1px;
}

.index .journal .btn-scroll,
.index .journal .btn-scroll-2 {
  width: 48px;
  height: 48px;
  background: url(/stcontents/img/common/SwipeArrow_right.png) no-repeat center center;
  background-size: contain;
}

.index .journal .btn-scroll:hover,
.index .journal .btn-scroll-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_right_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .journal .btn-scroll-prev,
.index .journal .btn-scroll-prev-2 {
  background: url(/stcontents/img/common/SwipeArrow_left.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

.index .journal .btn-scroll-prev:hover,
.index .journal .btn-scroll-prev-2:hover {
  background: url(/stcontents/img/common/SwipeArrow_left_hover.png) no-repeat center center;
  width: 48px;
  height: 48px;
  background-size: contain;
}

@media (min-width: 768px) {
  .index .journal {
    padding: 40px 0;
  }
}

@media (min-width: 1024px) {
  .index .journal .text-link-gray {
    margin-top: 40px;
  }
}

.headeralert {
  display: none;
  z-index: 60;
  top: 0;
  right: 0;
  left: 0;
  padding: 16px 0;
  text-align: center;
  background: #333;
  color: #FFF;
}

.headeralert .wrap {
  position: relative;
}

.headeralert .js-headeralert-close {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}

.headeralert .headeralert-title {
  font-size: 1.6rem;
  font-weight: bold;
}

.headeralert .headeralert-text {
  margin-bottom: 0;
  /*font-size: 1.4rem;*/
}

.headeralert .headeralert-text a {
  color: #FFF;
  text-decoration: underline;
}

.headeralert .headeralert-text a:hover {
  text-decoration: none;
}

.headeralert .headeralert-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 12px;
}

.headeralert .headeralert-btns a {
  padding: 0;
  width: 167px;
}

@media (max-width: 767px) {
  .headeralert {
    text-align: left;
  }
  .headeralert .headeralert-btns a {
    height: 32px;
  }
}

@media (max-width: 1120px) {
  .headeralert .js-headeralert-close {
    right: 12px;
  }
}

/* 検索結果ページ */
.title-box {
  margin-bottom: 5px;
}

.title-box h1 {
  line-height: 1.5;
}

.result-list {
  padding-bottom: 0;
  background-color: #f5f5f5;
}

.result-list .wrap {
  max-width: 1152px;
  padding: 0;
}

.result-list.bg-on:before {
  background: rgba(198, 198, 198, 0.7);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}

.result-header-sort.disabled {
  cursor: default;
  pointer-events: none;
}

.result-header-sort.disabled .result-number label {
  color: #C6C6C6;
}

.result-header-sort.disabled .result-number .input-checkbox {
  background-color: #f5f5f5;
}

@media (max-width: 768px) {
  .result-header-sort.disabled .result-number .input-checkbox {
    background: none;
    background-color: #f5f5f5;
    border-radius: 2px;
  }
}

.result-header-sort.disabled .sort-change a {
  color: #C6C6C6;
  border-color: #C6C6C6;
}

.result-header-sort.disabled .icon-map-2 {
  background-color: #C6C6C6;
}

.float-target.fixed .result-header-sort.disabled .input-checkbox {
  background: none;
  background-color: #f5f5f5;
  border-radius: 2px;
}

.result-hotel {
  height: 240px;
  overflow: hidden;
  position: relative;
  margin-bottom: 8px;
  border-radius: 0;
  color: #fff;
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
}

.result-hotel a {
  color: #fff;
}

.result-hotel a:hover {
  opacity: 1;
}

.result-hotel .js-slick-slider,
.result-hotel .result-hotel-inner {
  width: 100%;
  height: 100%;
}

.result-hotel .js-slick-slider > div,
.result-hotel .result-hotel-inner > div {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.result-hotel .js-slick-slider > div a,
.result-hotel .result-hotel-inner > div a {
  width: 100%;
  height: 100%;
  display: block;
}

.result-hotel .js-slick-slider > div img,
.result-hotel .result-hotel-inner > div img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.result-hotel .js-slick-slider .slick-track {
  height: 100%;
}

.result-hotel .sale-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: absolute;
  top: 16px;
  left: 16px;
  margin-right: 60px;
  font-size: 1.4rem;
}

.result-hotel .sale-icon > * {
  margin-right: 4px;
}

.result-hotel .sale-icon > *:last-child {
  margin-right: 0;
}

.result-hotel .sale-icon > *.active {
  font-size: 1.6rem;
}

.result-hotel .hotel-info {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 24px;
}

.result-hotel .hotel-info > a {
  display: block;
}

.result-hotel .hotel-info .name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.5;
  font-weight: normal;
  text-shadow: 1px 1px 1px #000;
}

.result-hotel .hotel-info .address {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 1.1rem;
}

.result-hotel .hotel-info .review {
  font-size: 1rem;
}

.result-hotel .hotel-info .review .count {
  font-size: 1.2rem;
  font-weight: 700;
}

.result-hotel .hotel-info .review .review-link {
  color: #333;
}

.result-hotel .hotel-info .hotel-info-head a:hover {
  opacity: 0.7;
}

.result-hotel .hotel-info-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.result-hotel .hotel-info-body .price-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  flex-wrap: wrap;
  cursor: pointer;
}

.result-hotel .hotel-info-body .price-link:hover {
  opacity: 0.7;
}

.result-hotel .point-price-box {
  width: 100%;
  margin-top: 8px;
  text-align: right;
  line-height: 1;
}

.result-hotel .address-box {
  padding-right: 8px;
  text-shadow: 1px 1px 1px #000;
}

.result-hotel .price-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 100;
  font-size: 1.2rem;
  text-shadow: 1px 1px 1px #000;
  white-space: nowrap;
  position: relative;
}

.result-hotel .price-box .food {
  margin-right: 8px;
  font-size: 1rem;
}

.result-hotel .price-box .food-option {
  position: absolute;
  top: -12px;
  left: 0;
}

.result-hotel .price-box .per {
  display: none;
}

.result-hotel .price-box .price {
  font-weight: normal;
  font-size: 1.4rem;
}

.result-hotel .icon-favorite,
.result-hotel .icon-favorite-on {
  position: absolute;
  top: 16px;
  right: 16px;
}

.result-hotel .icon-favorite a,
.result-hotel .icon-favorite-on a {
  width: 24px;
  height: 22px;
}

.result-hotel .hotel-grade {
  background: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8px;
  padding: 0;
}

.result-hotel .icon-grade[src*="grade-star"] {
  height: 20px;
}

.result-hotel .sale-icon .icon-grade {
  height: 18px;
}

.result-hotel .tag-hoteltype,
.result-hotel .tag-hoteltype-white {
  margin: 0 0 -2px 4px;
}

.result-hotel .address {
  margin-top: 4px;
}

.result-hotel .review .count {
  font-size: 1.4rem;
}

.btn-slide-arrow .slick-prev {
  display: none !important;
  width: 50px;
  left: 10px;
  margin-top: -20px;
}

.btn-slide-arrow .slick-next {
  display: none !important;
  width: 50px;
  right: 10px;
  margin-top: -20px;
}

@media (min-width: 768px) {
  .h2-small {
    font-size: 2.4rem;
  }
  h1 {
    font-size: 3.6rem;
  }
  .searchbox-bar {
    padding-top: 0;
  }
  .js-slick-slider > div a:hover {
    opacity: .7;
  }
  .result-sort {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .sort-change {
    font-size: 1.4rem;
    padding-right: 0;
  }
  .sort-change a {
    padding: 4px 16px;
  }
  .sort-change a.active {
    font-size: 1.6rem;
  }
  .sort-box {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .sort-box > div {
    margin-right: 8px;
  }
  .sort-box .btn-relux {
    padding: 12px 16px;
    font-size: 1.6rem;
  }
  .result-list {
    padding-bottom: 160px;
  }
  .result-list .wrap {
    padding: 0 16px;
  }
  .result-hotel {
    height: 350px;
    border-radius: 8px;
  }
  .result-hotel .sale-icon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 2rem;
    left: 2rem;
    padding-right: 0;
    font-size: 1.4rem;
  }
  .result-hotel .sale-icon > * {
    margin-right: 8px;
  }
  .result-hotel .sale-icon > *:last-child {
    margin-right: 0;
  }
  .result-hotel .sale-icon > *.active {
    font-size: 1.6rem;
  }
  .result-hotel .icon-favorite,
  .result-hotel .icon-favorite-on {
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .result-hotel .icon-favorite a,
  .result-hotel .icon-favorite-on a {
    width: 32px;
    height: 30px;
  }
  .result-hotel .icon-grade,
  .result-hotel .sale-icon .icon-grade {
    height: auto;
  }
  .result-hotel .tag-hoteltype,
  .result-hotel .tag-hoteltype-white {
    margin: 0 0 0 8px;
  }
  .result-hotel .hotel-info .review {
    font-size: inherit;
  }
  .result-hotel .hotel-info .review .count {
    margin-left: 4px;
    font-size: 2rem;
  }
  .result-hotel .hotel-info .review .review-link {
    display: inline-block;
    text-decoration: underline;
  }
  .result-hotel .hotel-info .review .review-link:hover {
    text-decoration: none;
  }
  .result-hotel .hotel-info .review.color-white,
  .result-hotel .hotel-info .review.color-white a {
    color: #fff !important;
  }
  .result-hotel .hotel-info .address {
    font-size: 1.6rem;
  }
  .result-hotel .price-box {
    font-size: 1.4rem;
  }
  .result-hotel .price-box .food {
    margin: 8px 14px 0 0;
    font-size: 1.4rem;
  }
  .result-hotel .price-box .price {
    font-size: 2.6rem;
  }
}

@media (min-width: 1024px) {
  .searchbox-bar {
    padding-top: 0;
  }
  .result-hotel {
    margin-bottom: 16px;
  }
  .result-hotel .js-slick-slider > div {
    max-width: 736px;
  }
  .result-hotel .js-slick-slider > div a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .result-hotel .js-slick-slider .slick-dots {
    width: 300px;
    height: 0;
    left: 228px;
    bottom: 30px;
    margin-left: 0;
  }
  .result-hotel .hotel-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    left: 760px;
    right: 0;
    top: 3rem;
    padding-right: 2rem;
  }
  .result-hotel .hotel-info .name {
    text-shadow: none;
  }
  .result-hotel .hotel-info .review {
    color: #333;
  }
  .result-hotel .hotel-info-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: normal;
    -webkit-align-items: normal;
        -ms-flex-align: normal;
            align-items: normal;
    height: 100%;
  }
  .result-hotel a {
    color: #333333;
  }
  .result-hotel .address-box {
    text-shadow: none;
  }
  .result-hotel .price-box {
    color: #333333;
    text-shadow: none;
    margin-left: auto;
  }
  .result-hotel .point-price-box {
    margin-bottom: 4px;
  }
  .result-hotel .price-box .food-option {
    position: static;
    top: auto;
    left: auto;
  }
  .result-hotel .price-box .per {
    display: inline;
  }
  .result-hotel .icon-favorite,
  .result-hotel .icon-favorite-on {
    top: 3rem;
    left: 68.6rem;
    right: auto;
  }
  .result-hotel .sale-icon {
    top: 3rem;
  }
  .result-hotel .address,
  .result-hotel .review-link {
    color: #757575;
  }
  .result-hotel.full .hotel-grade {
    opacity: 0.5;
  }
  .result-hotel.full .hotel-info,
  .result-hotel.full .price-box {
    color: #999;
  }
  .result-hotel.full .hotel-info h2,
  .result-hotel.full .price-box h2 {
    color: #999;
  }
  .result-hotel.full .hotel-info .review,
  .result-hotel.full .price-box .review {
    color: #999;
  }
  .result-hotel.full .hotel-info .review .review-link,
  .result-hotel.full .price-box .review .review-link {
    color: #999;
  }
  .btn-slide-arrow .slick-prev {
    display: block !important;
    margin-top: 0;
    -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
  }
  .btn-slide-arrow .slick-next {
    display: block !important;
    margin-top: 0;
    -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
    left: 676px;
    right: auto;
  }
  .result-hotel .hotel-info .review .no-count {
    color: #757575;
  }
}

@media (max-width: 767px) {
  .result-hotel.full .hotel-info h2, .result-hotel.full .hotel-info .address, .result-hotel.full .hotel-info .review a, .result-hotel.full .hotel-info .review-link, .result-hotel.full .hotel-info .price-box {
    color: #BFBFBF !important;
  }
  .result-hotel .hotel-info {
    pointer-events: none;
  }
  .result-hotel .hotel-info .review .review-link {
    pointer-events: none !important;
    text-decoration: none;
    letter-spacing: 0;
  }
  .result-hotel.btn-slide-arrow .icon-grade[src*="grade-star"] {
    height: 12px;
  }
}

@media (max-width: 360px) {
  .sort-box .btn-relux {
    padding: 6px 2px;
    font-size: 1.1rem;
  }
}

.slick-counter {
  bottom: .5rem;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.3);
  height: auto !important;
  width: 4rem !important;
  border-radius: 2rem;
  padding: 0 .5rem;
  font-size: 1rem;
  text-align: center;
}

/*
  MAPビュー
*/
.map-view {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.map-view .map-hotel-list {
  width: 432px;
  height: 800px;
  margin: 0 8px 0 40px;
  padding-right: 8px;
  overflow-y: auto;
}

.map-view .map-hotel-list::-webkit-scrollbar {
  width: 4px;
}

.map-view .map-hotel-list::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 4px;
}

.map-view .map-hotel-list::-webkit-scrollbar-thumb {
  background: #C6C6C6;
  border-radius: 4px;
}

.map-view .map-hotel-list .h2-small {
  font-size: 1.6rem;
}

.map-view .map-hotel-list .result-hotel {
  height: 240px;
  overflow: hidden;
  position: relative;
  margin-bottom: 30px;
  border-radius: 8px;
  color: #fff;
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
}

.map-view .map-hotel-list .result-hotel a {
  color: #fff;
}

.map-view .map-hotel-list .result-hotel a:hover {
  opacity: 1;
}

.map-view .map-hotel-list .result-hotel .js-slick-slider {
  width: 100%;
  height: 100%;
}

.map-view .map-hotel-list .result-hotel .js-slick-slider > div {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.map-view .map-hotel-list .result-hotel .js-slick-slider > div a {
  width: 100%;
  height: 100%;
  display: block;
}

.map-view .map-hotel-list .result-hotel .js-slick-slider > div img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.map-view .map-hotel-list .result-hotel .js-slick-slider .slick-track {
  height: 100%;
}

.map-view .map-hotel-list .result-hotel .sale-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: absolute;
  top: 16px;
  left: 16px;
  margin-right: 60px;
  font-size: 1.4rem;
}

.map-view .map-hotel-list .result-hotel .sale-icon > * {
  margin-right: 8px;
}

.map-view .map-hotel-list .result-hotel .sale-icon > *:last-child {
  margin-right: 0;
}

.map-view .map-hotel-list .result-hotel .sale-icon > *.active {
  font-size: 1.6rem;
}

.map-view .map-hotel-list .result-hotel .hotel-info {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 24px;
  display: block;
  top: inherit;
  padding: 0;
}

.map-view .map-hotel-list .result-hotel .hotel-info > a {
  display: block;
}

.map-view .map-hotel-list .result-hotel .hotel-info .name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.5;
  font-weight: 700;
  text-shadow: 1px 1px 1px #000;
}

.map-view .map-hotel-list .result-hotel .hotel-info .address {
  display: block;
  overflow: hidden;
  font-size: 1rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.map-view .map-hotel-list .result-hotel .hotel-info .review {
  font-size: 1rem;
}

.map-view .map-hotel-list .result-hotel .hotel-info .review .count {
  font-size: 1.2rem;
  font-weight: 700;
}

.map-view .map-hotel-list .result-hotel .hotel-info-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: auto;
  -webkit-flex-flow: nowrap;
      -ms-flex-flow: nowrap;
          flex-flow: nowrap;
}

.map-view .map-hotel-list .result-hotel .hotel-info-body .review-link,
.map-view .map-hotel-list .result-hotel .hotel-info-body .address {
  color: #fff;
}

.map-view .map-hotel-list .result-hotel .address-box {
  padding-right: 8px;
  text-shadow: 1px 1px 1px #000;
  color: #fff !important;
}

.map-view .map-hotel-list .result-hotel .price-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 100;
  font-size: 1.2rem;
  text-shadow: 1px 1px 1px #000;
  white-space: nowrap;
  position: relative;
  color: #fff;
}

.map-view .map-hotel-list .result-hotel .price-box .food {
  margin: 0;
  margin-right: 8px;
  font-size: 1rem;
}

.map-view .map-hotel-list .result-hotel .price-box .food-option {
  position: absolute;
  top: -12px;
  left: 0;
}

.map-view .map-hotel-list .result-hotel .price-box .per {
  display: none;
}

.map-view .map-hotel-list .result-hotel .price-box .price {
  font-weight: normal;
  font-size: 1.4rem;
}

.map-view .map-hotel-list .result-hotel .hotel-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8px;
}

.map-view .map-hotel-list .result-hotel .icon-grade {
  height: 16px;
}

.map-view .map-hotel-list .result-hotel .sale-icon .icon-grade {
  height: 18px;
}

.map-view .map-hotel-list .result-hotel .tag-hoteltype {
  margin: 0 0 -2px 4px;
}

.map-view .map-hotel-list .result-hotel .address {
  margin-top: 4px;
}

.map-view .map-hotel-list .result-hotel .review .count {
  font-size: 1.4rem;
}

.map-view .map-hotel-list .result-hotel .review .review-link {
  display: none;
}

.map-view .map-hotel-list .result-hotel.full .hotel-info,
.map-view .map-hotel-list .result-hotel.full .price-box {
  opacity: .5;
}

.map-view .map-hotel-list .btn-slide-arrow .slick-prev {
  display: none !important;
}

.map-view .map-hotel-list .icon-orange {
  height: 18px;
  padding: 0 8px;
  font-size: 1rem;
}

.map-view .map-hotel-list .slick-counter {
  right: 0;
  bottom: 10px;
}

.map-view .g-map {
  width: calc(100% - 448px);
  height: 100%;
}

@media (max-width: 1023px) {
  .map-view .map-hotel-list {
    width: 280px;
    margin-left: 16px;
  }
  .map-view .g-map {
    width: calc(100% - 296px);
  }
  .result-hotel .tag-hoteltype-white {
    background: rgba(0, 0, 0, 0.1);
  }
  .result-hotel.full .tag-hoteltype-white {
    color: #BFBFBF;
  }
}

@media (max-width: 767px) {
  .map-view {
    width: 100%;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    overflow: hidden;
  }
  .map-view .map-hotel-list,
  .map-view .g-map {
    width: 100%;
    margin: 0;
  }
  .map-view .map-hotel-list #g-map,
  .map-view .g-map #g-map {
    height: calc(100vh - 80px) !important;
  }
}

.result-hotel-none {
  padding: 112px 24px;
  text-align: center;
  background: #FFF;
}

@media (max-width: 767px) {
  .result-hotel-none {
    padding: 80px 24px;
  }
  .result-hotel .hotel-info .name {
    font-weight: bolder;
  }
}

@media (max-width: 1023px) {
  .result-hotel .js-slick-slider > div a,
  .result-hotel .result-hotel-inner > div a {
    position: relative;
  }
  .result-hotel .js-slick-slider > div a ::before,
  .result-hotel .result-hotel-inner > div a ::before {
    width: 100%;
    height: 60%;
    background-color: #333;
    opacity: 0.45;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    -webkit-filter: blur(16px);
            filter: blur(16px);
  }
  .result-hotel .hotel-info .review .review-link {
    color: #FFF;
    pointer-events: auto !important;
    text-decoration: underline;
  }
  .result-hotel .hotel-info .review .review-link:hover {
    text-decoration: none;
  }
  .result-hotel .icon-grade-sp-full {
    display: none;
  }
  .result-hotel .hotel-grade img {
    -webkit-filter: drop-shadow(0 0 3px #000);
            filter: drop-shadow(0 0 3px #000);
  }
  .result-hotel .tag-hoteltype {
    color: #fff;
    background: rgba(0, 0, 0, 0.1);
    border: 1px solid #fff;
  }
  .result-hotel.full .hotel-info .name {
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
    font-weight: bolder;
  }
  .result-hotel.full a {
    color: #BFBFBF !important;
  }
  .result-hotel.full .hotel-info,
  .result-hotel.full .price-box {
    opacity: 1;
    color: #BFBFBF !important;
  }
  .result-hotel.full .price-box,
  .result-hotel.full .address-box {
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  }
  .result-hotel.full .tag-hoteltype {
    color: #BFBFBF;
    border: 1px solid #BFBFBF;
  }
  .result-hotel.full .icon-grade-sp {
    display: none;
  }
  .result-hotel.full .icon-grade-sp-full {
    display: block;
  }
  .icon-grade-pc {
    display: none;
  }
  .result-list .result-hotel .js-slick-slider > div::after,
  .result-list .result-hotel .result-hotel-inner > div::after {
    width: 100%;
    height: 116px;
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.85)), to(transparent));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.85), transparent);
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.85), transparent);
    /* opacity: 0.15; */
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    display: block;
    pointer-events: none;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .result-hotel .tag-hoteltype.pc-only {
    display: none !important;
  }
  .result-hotel .tag-hoteltype-white.sp-only {
    display: block !important;
  }
  .result-hotel.full .tag-hoteltype-white {
    color: #BFBFBF;
  }
}

@media (min-width: 1024px) {
  .icon-grade-sp,
  .icon-grade-sp-full {
    display: none;
  }
}

/*
  絞り込みUI > Scorll → 固定追従後のStyle
*/
.search-result .float-search-box .searchBoxArea.fixed {
  -webkit-box-shadow: none;
          box-shadow: none;
}

@media (max-width: 767px) {
  .search-result .float-search-box {
    z-index: 40;
  }
  .search-result .float-search-box.fixed {
    padding-top: 0;
    padding-bottom: 0;
  }
  .search-result .float-search-box.fixed .searchBoxArea {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .search-result .float-search-box.fixed .searchBoxArea.modal-on {
    padding-top: 40px;
  }
  .search-result .float-search-box.fixed .searchbox-bar {
    padding-top: 0;
    width: calc(100vw - 32px);
    margin: 0 auto;
  }
  .search-result .float-search-box.fixed .searchbox-bar .search-wrap {
    padding-top: 4px;
    padding-bottom: 4px;
    border-bottom: 1px solid #C6C6C6;
  }
  .search-result .float-search-box.fixed .searchBox.selected .box:first-child {
    border: none;
  }
  .search-result .float-search-box.fixed .searchBox.selected .box.checkin-out, .search-result .float-search-box.fixed .searchBox.selected .box.peopleroom {
    border: none;
    border-radius: 4px;
  }
  .search-result .float-search-box .searchbox-bar {
    display: block;
  }
}

/*
  おすすめ順 > MAP Viewへの切り替えボタン
*/
.icon-map-2 {
  background: #0F0A64 url(/stcontents/img/common/icon-map-white2-sp.svg) no-repeat center center;
  width: 32px;
  height: 32px;
  display: inline-block;
  border-radius: 4px;
  overflow: hidden;
  text-indent: -300px;
}

@media (min-width: 768px) {
  .icon-map-2 {
    background: #0F0A64 url(/stcontents/img/common/icon-map-white2.svg) no-repeat center center;
    width: 40px;
    height: 40px;
    background-size: auto;
  }
  .icon-map-2:hover {
    background-color: #554B98;
  }
}

.detail-page main {
  padding-bottom: 8px;
}

.detail-page h2 {
  margin-bottom: 16px;
}

.detail-page .kv-slider {
  position: relative;
  min-height: 380px;
  max-height: 538px;
  height: calc(100vh - 300px);
  overflow: hidden;
}

.detail-page .kv-slider .icon-favorite,
.detail-page .kv-slider .icon-favorite-on {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
}

.detail-page .kv-slider .icon-favorite a,
.detail-page .kv-slider .icon-favorite-on a {
  background-size: 24px;
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 2;
  -webkit-transform: translate(8px, -8px);
          transform: translate(8px, -8px);
}

@media screen and (max-width: 767px) {
  .detail-page .kv-slider .icon-favorite a:hover,
  .detail-page .kv-slider .icon-favorite-on a:hover {
    opacity: 1;
    cursor: default;
  }
}

.detail-page .kv-slider .js-kv-slider {
  height: 100%;
}

.detail-page .kv-slider .slide {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
}

.detail-page .kv-slider .slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.detail-page .hotel-movie {
  overflow: hidden;
  position: relative;
}
.detail-page .hotel-movie video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.detail-page .hotel-movie.resize video {
  transform: scale(1.01);
}

.detail-page .kv-slider .slick-slider {
  height: 100%;
  display: none;
  z-index: 0;
}

.detail-page .kv-slider .slick-slider.slick-initialized {
  display: block;
}

.detail-page .kv-slider .slick-counter {
  top: auto;
  bottom: 10px;
}

.detail-page .kv-slider .visit-number {
  position: absolute;
  bottom: 28px;
  z-index: 10;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-animation: fadeout 1s 7s forwards;
          animation: fadeout 1s 7s forwards;
}

.detail-page .kv-slider .visit-number p {
  margin: 0;
  background: rgba(0, 0, 0, 0.7);
  padding: 8px 12px;
  color: #fff;
  display: inline-block;
  font-size: 1rem;
}

.detail-page .cxl-insurance {
  border: 1px solid #0F0a64;
  padding: 16px;
  text-align: center;
}

.detail-page .cxl-insurance p {
  text-align: center;
}

.detail-page .cxl-insurance .title {
  color: #0F0A64;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.detail-page .cxl-insurance .description {
  width: 92%;
  margin: 0 auto 8px;
  font-size: 1.6rem;
}

.detail-page .cxl-insurance .description .color-gray-2 {
  margin-top: 8px;
  font-size: 1.2rem;
}

.detail-page .cxl-insurance .cxl-insurance-detail {
  text-align: right;
}

.detail-page .plan-fee-area {
  border-top: 5px solid #f5f5f5;
  margin-top: 16px;
  padding-top: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.detail-page .plan-fee-area .right {
  text-align: right;
}

.detail-page .plan-fee-area .right p.color-gray-3 {
  text-decoration: line-through;
  font-size: 1.4rem;
  margin-bottom: 4px;
}

.detail-page .plan-fee-area .right p.color-maroon {
  font-size: 2.4rem;
  margin-bottom: 0;
}

.detail-page .plan-fee-area .right p:last-child {
  font-size: 1,6rem;
}

@media (max-width: 767px) {
  .detail-page .plan-fee-area {
    border-top: none;
    padding: 0 16px;
  }
  .detail-page .plan-fee-area .right p.color-gray-3 {
    margin-bottom: 0;
  }
}

.detail-page .searchBoxArea.modal-on,
.detail-page .popup-position {
  z-index: 40;
}

.detail-page .gtt-banner {
  display: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 16px;
  background: #4F68C2;
  border-radius: 4px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  bottom: 40px;
  right: 60px;
  z-index: 10;
  cursor: pointer;
}

.detail-page .gtt-banner:hover {
  opacity: 0.8;
}

.detail-page .gtt-banner a {
  color: #fff;
}

.detail-page .gtt-banner .d-flex {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.detail-page .gtt-banner .arrow {
  width: 8px;
}

.detail-page .gtt-banner .close-btn {
  width: 32px;
  position: absolute;
  right: -13px;
  top: -13px;
}

@-webkit-keyframes fadeout {
  0% {
    opacity: 1;
  }
  99% {
    height: auto;
  }
  100% {
    opacity: 0;
    height: 0;
  }
}

@keyframes fadeout {
  0% {
    opacity: 1;
  }
  99% {
    height: auto;
  }
  100% {
    opacity: 0;
    height: 0;
  }
}

.detail-page .kv-small {
  max-width: 880px;
}

.detail-page .kv-small .js-slick-slider .slick-dots,
.detail-page .kv-small .js-kv-slider .slick-dots {
  height: 0;
  bottom: 26px;
}

.detail-page .kv-small .slide img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.detail-page .kv-small .slick-prev {
  left: 5px !important;
}

.detail-page .kv-small .slick-next {
  right: 5px !important;
}

.detail-page .kv-small .btn-coupon {
  left: 16px;
}

.detail-page .galleryBtn {
  position: absolute;
  bottom: 16px;
  right: 16px;
  margin: auto;
  z-index: 1;
}

.detail-page .galleryBtn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 56px;
  height: 56px;
  margin-left: auto;
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.detail-page .galleryBtn a::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("../img/common/icon-picture.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}

.detail-page .galleryBtn a:hover {
  color: #757575;
}

.detail-page .galleryBtn a:hover::before {
  background-image: url("../img/common/icon-picture-gray.svg");
}

.detail-page .galleryBtn a img {
  width: 20px;
  height: 20px;
}

.detail-page .galleryBtn a p {
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .detail-page .kv-slider {
    min-height: 0;
    height: 52vw;
  }
  .detail-page .kv-slider .slide img {
    min-width: 0;
  }
  .detail-page .galleryBtn a {
    width: 40px;
    height: 40px;
    padding-top: 6px;
  }
  .detail-page .galleryBtn a::before {
    width: 16px;
    height: 16px;
  }
  .detail-page .galleryBtn a p {
    font-size: 1rem;
  }
  .detail-page .gtt-banner {
    padding: 8px;
    right: 16px;
    bottom: calc(env(safe-area-inset-bottom) + 16px);
  }
  .detail-page .gtt-banner .font-bold {
    margin-bottom: 4px;
  }
  .detail-page .gtt-banner .arrow {
    width: 12px;
  }
}

.detail-page .gallery-line {
  margin: 8px -16px 24px;
}

.detail-page .gallery-line .wrap {
  padding: 0 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.detail-page .gallery-line .js-kv-slider-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 264px;
  height: 80px;
  overflow: hidden;
}

.detail-page .gallery-line .js-kv-slider-nav .slick-track {
  width: auto !important;
  -webkit-transform: none !important;
          transform: none !important;
}

.detail-page .gallery-line .js-kv-slider-nav .slick-cloned {
  display: none !important;
}

.detail-page .gallery-line .thumb, .detail-page .gallery-line .btn-gallery {
  width: 80px !important;
  height: 80px !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  position: relative;
  margin-right: 8px;
  overflow: hidden;
  border-radius: 8px;
}

.detail-page .gallery-line .thumb img, .detail-page .gallery-line .btn-gallery img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
  z-index: 0;
}

.detail-page .gallery-line .thumb {
  margin-bottom: 50px;
}

.detail-page .gallery-line .btn-gallery {
  display: block;
  margin-right: 0 !important;
}

.detail-page .gallery-line .btn-gallery a {
  width: 100%;
  height: 100%;
  text-align: center;
  display: block;
  color: #fff;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  z-index: 1;
}

.detail-page .gallery-line .btn-gallery a:before {
  background: rgba(0, 0, 0, 0.6);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.detail-page .gallery-line .btn-gallery a:hover {
  color: #757575;
}

.detail-page .gallery-line .btn-gallery a:hover div {
  color: #757575;
}

.detail-page .gallery-line .btn-gallery a:hover div::before {
  background-image: url("../img/common/icon-picture-gray.svg");
}

.detail-page .gallery-line .btn-gallery div {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 2;
}

.detail-page .gallery-line .btn-gallery div::before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("../img/common/icon-picture.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  margin-bottom: 0;
}

.detail-page .gallery-line .btn-gallery div img {
  width: auto;
  height: auto;
}

.detail-page .common-modal.calendar-modal {
  width: calc( (960 / 800) * 100vh);
  max-width: none;
  height: 84.75vh;
  font-size: calc( (14 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .modal-container {
  padding: calc( (32 / 800) * 100vh) calc( (32 / 800) * 100vh) calc( (24 / 800) * 100vh);
  margin: 0;
  height: 100%;
  max-height: none;
}

.detail-page .common-modal.calendar-modal .dateSelector .arrow-left,
.detail-page .common-modal.calendar-modal .dateSelector .arrow-right {
  width: calc( (20 / 800) * 100vh);
  height: calc( (20 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar {
  padding: 0 calc( (25 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar .month {
  font-size: calc( (16 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar table tr th {
  height: calc( (34 / 800) * 100vh);
  font-size: calc( (12 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar table tr td {
  padding: calc( (4 / 800) * 100vh) 0;
}

.detail-page .common-modal.calendar-modal .calendar table tr td .date-btn {
  height: calc( (70 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar table tr td .date-btn button {
  font-size: calc( (16 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .calendar table tr td .date-btn button .stay-price {
  font-size: calc( (12 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .date-panel-foot {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-page .common-modal.calendar-modal .stay-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: calc( (400 / 800) * 100vh);
  height: calc( (60 / 800) * 100vh);
  padding-right: calc( (32 / 800) * 100vh);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 2px solid #c6c6c6;
  position: relative;
}

.detail-page .common-modal.calendar-modal .stay-box.unset {
  padding-right: 0;
}

.detail-page .common-modal.calendar-modal .stay-box.unset .reset-btn {
  display: none;
}

.detail-page .common-modal.calendar-modal .stay-box .checkin,
.detail-page .common-modal.calendar-modal .stay-box .checkout {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-page .common-modal.calendar-modal .stay-box .checkin.unset,
.detail-page .common-modal.calendar-modal .stay-box .checkout.unset {
  color: #757575;
}

.detail-page .common-modal.calendar-modal .stay-box .checkin.unset .main,
.detail-page .common-modal.calendar-modal .stay-box .checkout.unset .main {
  font-size: calc( (16 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .stay-box .checkin.unset .sub,
.detail-page .common-modal.calendar-modal .stay-box .checkout.unset .sub {
  display: none;
}

.detail-page .common-modal.calendar-modal .stay-box .main {
  font-size: calc( (20 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .stay-box .sub {
  color: #757575;
  font-size: calc( (14 / 800) * 100vh);
  margin-left: calc( (16 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .stay-box .border {
  margin: 0 calc( (8 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .stay-box .reset-btn {
  position: absolute;
  right: calc( (10 / 800) * 100vh);
}

.detail-page .common-modal.calendar-modal .stay-box .reset-btn a {
  display: block;
}

.detail-page .common-modal.calendar-modal .stay-box .reset-btn a::before {
  content: '';
  display: block;
  width: calc( (24 / 800) * 100vh);
  height: calc( (24 / 800) * 100vh);
  background-image: url("../img/common/icon-reset.svg");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}

.detail-page .common-modal.calendar-modal .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-page .common-modal.calendar-modal .price-area {
  margin-right: calc( (16 / 800) * 100vh);
  text-align: right;
}

.detail-page .common-modal.calendar-modal .price {
  font-size: calc( (24 / 800) * 100vh);
  font-weight: bold;
}

.detail-page .common-modal.calendar-modal .stay-people {
  text-align: right;
}

.detail-page .common-modal.calendar-modal .stay-people-child.unset {
  display: none;
}

.detail-page .common-modal.calendar-modal .decide-btn a {
  width: calc( (230 / 800) * 100vh);
  height: calc( (56 / 800) * 100vh);
  max-width: calc( (230 / 800) * 100vh);
  font-size: calc( (16 / 800) * 100vh);
}

@media (max-width: 767px) {
  .detail-page .cxl-insurance {
    padding: 8px;
  }
  .detail-page .cxl-insurance p {
    text-align: left;
    font-size: 14px;
  }
  .detail-page .cxl-insurance .title {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
  .detail-page .cxl-insurance .description {
    width: 100%;
    margin: 0;
  }
  .detail-page .cxl-insurance .description .color-gray-2 {
    margin-top: 0;
    font-size: 1rem;
  }
  .detail-page .cxl-insurance .note {
    font-size: 10px;
  }
  .detail-page .searchBtn {
    display: none;
  }
  .detail-page .popup-peopleroom-foot .searchBtn {
    display: block;
  }
  .detail-page .searchBoxArea {
    background: none;
  }
  .detail-page .searchBoxArea .searchBox .box {
    width: auto !important;
  }
  .detail-page .searchBoxArea .searchBox .box.peopleroom {
    border-right: 1px solid #0F0A64;
    border-radius: 0 4px 4px 0;
    width: 40% !important;
  }
  .detail-page .searchBoxArea .checkin-out.unset .box-inner {
    -webkit-box-pack: unset !important;
    -webkit-justify-content: unset !important;
        -ms-flex-pack: unset !important;
            justify-content: unset !important;
  }
  .detail-page .searchBoxArea .checkin-out.unset .border {
    margin: 0 4px !important;
  }
  .detail-page .searchBoxArea .checkin-out .box-inner {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .detail-page .searchBoxArea .checkin,
  .detail-page .searchBoxArea .checkout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .detail-page .searchBoxArea .checkin .sub,
  .detail-page .searchBoxArea .checkout .sub {
    margin-left: 0;
  }
  .detail-page .reservation-box {
    padding-top: 10px;
    padding-bottom: 8px;
  }
  .detail-page .reservation-box .stay-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 40px;
    border: 1px solid #c6c6c6;
    border-radius: 4px;
    margin-bottom: 8px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .detail-page .reservation-box .stay-box.unset {
    display: none;
    padding-right: 0;
    color: #757575;
  }
  .detail-page .reservation-box .stay-box.unset .reset-btn {
    display: none;
  }
  .detail-page .reservation-box .stay-box.unset .sub {
    display: none;
  }
  .detail-page .reservation-box .stay-box .checkin,
  .detail-page .reservation-box .stay-box .checkout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-page .reservation-box .stay-box .main {
    font-size: 1.6rem;
  }
  .detail-page .reservation-box .stay-box .sub {
    color: #757575;
    font-size: 1.2rem;
    margin-left: 4px;
  }
  .detail-page .reservation-box .stay-box .border {
    margin: 0 8px;
  }
  .detail-page .reservation-box .stay-box .reset-btn {
    position: absolute;
    right: 10px;
  }
  .detail-page .reservation-box .stay-box .reset-btn a {
    display: block;
  }
  .detail-page .reservation-box .stay-box .reset-btn a::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("../img/common/icon-reset.svg");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
  }
  .detail-page .reservation-box .info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .detail-page .reservation-box .price-area {
    text-align: right;
    line-height: 1.2;
  }
  .detail-page .reservation-box .price {
    font-size: 2rem;
    font-weight: bold;
    margin-left: 8px;
  }
  .detail-page .reservation-box .stay-people-child.unset {
    display: none;
  }
  .detail-page .reservation-box .info-btn-area {
    margin-left: 16px;
  }
  .detail-page .reservation-box .info-btn-area .decide-btn a {
    min-width: 166px;
    height: 48px;
    padding: 0 24px;
  }
  .detail-page .reservation-box .info-btn-area .date-select-btn a {
    width: 166px;
    height: 40px;
  }
  .detail-page .reservation-box .info-btn-area .decide-btn a:hover, .detail-page .reservation-box .info-btn-area .decide-btn a:active,
  .detail-page .reservation-box .info-btn-area .date-select-btn a:hover,
  .detail-page .reservation-box .info-btn-area .date-select-btn a:active {
    background-color: #0f0a64;
    border-color: #0f0a64;
  }
  .detail-page .reservation-box .info-btn-area .decide-btn {
    display: none;
  }
}

@media screen and (max-width: 360px) {
  .detail-page .searchBoxArea .searchBox .box.peopleroom {
    width: 33% !important;
  }
  .detail-page .common-modal.calendar-modal .date-panel-foot {
    padding: 8px;
  }
}

@media (max-width: 767px) {
  .detail-page .kv-slider .visit-number {
    position: fixed;
    bottom: 96px;
    left: 0;
    right: 0;
    -webkit-transform: none;
            transform: none;
    text-align: center;
    padding: 0 16px;
    overflow: hidden;
  }
  .detail-page .kv-slider .visit-number p {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
  }
  .detail-page .kv-slider .visit-number.bottom {
    bottom: 24px;
  }
}

@media (min-width: 768px) {
  .detail-page main {
    padding-bottom: 160px;
  }
  .detail-page .kv-slider .icon-favorite,
  .detail-page .kv-slider .icon-favorite-on {
    top: 24px;
    right: 24px;
  }
  .detail-page .kv-slider .icon-favorite a,
  .detail-page .kv-slider .icon-favorite-on a {
    background-size: 100%;
    width: 32px;
    height: 30px;
    -webkit-transform: none;
            transform: none;
  }
  .detail-page .kv-slider .visit-number {
    bottom: 40px;
  }
  .detail-page .kv-slider .visit-number p {
    padding: 8px 16px;
    font-size: inherit;
  }
  .detail-page .gallery-line {
    margin: 24px auto 24px;
  }
  .detail-page .gallery-line .wrap {
    padding: 0;
  }
  .detail-page .gallery-line .js-kv-slider-nav {
    width: auto;
    height: auto;
  }
  .detail-page .gallery-line .thumb, .detail-page .gallery-line .btn-gallery {
    width: 12vw !important;
    height: 12vw !important;
    margin-right: 20px;
  }
  .detail-page .gallery-line .thumb {
    margin-bottom: 0;
  }
  .detail-page .gallery-line .btn-gallery div::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url("../img/common/icon-picture.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    margin-bottom: 0;
  }
  .detail-page .gallery-line .btn-gallery div img {
    width: auto;
    height: auto;
  }
  .detail-page .gallery-line .btn-gallery div .number {
    font-size: 2rem;
  }
  .detail-page .btn-slide-arrow .slick-next,
  .detail-page .btn-slide-arrow .slick-prev {
    display: block !important;
  }
}

@media (min-width: 800px) {
  .detail-page .kv-small {
    margin: 0 auto;
  }
  .detail-page .kv-small .galleryBtn {
    padding: 0 24px;
    bottom: 32px;
  }
  .detail-page .kv-small .btn-coupon {
    left: 22px;
  }
}

@media (min-width: 1024px) {
  .detail-page .kv-small .js-slick-slider .slick-dots,
  .detail-page .kv-small .js-kv-slider .slick-dots {
    height: 0;
    bottom: 33px;
  }
}

@media (min-width: 1280px) {
  .detail-page .gallery-line .thumb, .detail-page .gallery-line .btn-gallery {
    width: 160px !important;
    height: 160px !important;
  }
}

.detail-page .hotel-summary {
  padding-bottom: 0;
}

.detail-page .hotel-summary .address span {
  margin-right: 1em;
}

.detail-page .hotel-summary .address a {
  text-decoration: underline;
  display: inline-block;
}

.detail-page .hotel-summary .address a:hover {
  opacity: 1;
  color: #0066CC;
  text-decoration: none;
}

.detail-page .hotel-summary .intro-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.detail-page .hotel-summary .intro-wrap > div:first-of-type {
  width: 864px;
  margin-right: 16px;
}

.detail-page .hotel-summary .intro-wrap > div:only-child {
  width: auto;
  margin-right: 0;
}

.detail-page .hotel-summary .bnr-xrdoor img {
  max-width: 100%;
  width: 192px;
}

.detail-page .hotel-summary .intro-text {
  margin-bottom: 20px;
  padding-top: 8px;
  font-size: 1.6rem;
}

.detail-page .hotel-summary .intro-text u {
  color: #757575;
  cursor: pointer;
}

.detail-page .hotel-summary .intro-text u:hover {
  text-decoration: none;
}

.detail-page .hotel-summary .more-link {
  color: #757575;
}

.detail-page .hotel-summary .title-box {
  position: relative;
}

.detail-page .hotel-summary .title-box h1 {
  line-height: 1;
  margin-left: -2px;
}

.detail-page .hotel-summary .title-box .icon-question {
  margin: 0 4px;
}

.detail-page .hotel-summary .title-box .title-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 4px;
}

.detail-page .hotel-summary .title-box .title-grade span {
  margin-right: 8px;
}

.detail-page .hotel-summary .title-box .hotels-name {
  width: 100%;
  font-size: 1.2rem;
}

.hotel-grade.js-tips-content {
  background: none;
  position: absolute;
  top: 32px;
  left: 0;
  z-index: 2;
  padding: 0;
}

.hotel-grade.js-tips-content .relux-grade {
  padding: 24px 16px 16px 16px;
  position: relative;
  border-radius: 8px;
}

.hotel-grade.js-tips-content .relux-grade .relux-grade-text p:first-child {
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
}

.hotel-grade.js-tips-content .relux-grade .relux-grade-text p:nth-child(2) {
  margin-bottom: 24px;
  padding-left: 8px;
  border-left: 1px solid #FF503E;
}

.hotel-grade.js-tips-content .relux-grade .relux-grade-text p:nth-child(2) br {
  display: none;
}

.hotel-grade.js-tips-content .relux-grade figure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.hotel-grade.js-tips-content .relux-grade .relux-grade-close {
  background: url(/stcontents/img/common/icon-close-white.svg) no-repeat 0 0;
  background-size: contain;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 8px;
  right: 8px;
  display: block;
}

.js-tips-content {
  display: none;
}

@media (min-width: 768px) {
  .detail-page .hotel-summary.small .title-box,
  .detail-page .hotel-summary.small .address,
  .detail-page .hotel-summary.small .intro-wrap,
  .detail-page .hotel-summary.small .gallery-line {
    width: 880px;
    margin-left: auto;
    margin-right: auto;
  }
  .detail-page .hotel-summary.small .gallery-line {
    max-width: 100%;
  }
  .detail-page .hotel-summary.small .intro-wrap > div:first-of-type {
    width: auto;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .detail-page .hotel-summary.small .gallery-line .thumb {
    margin-right: 20px;
  }
}

@media screen and (min-width: 768px) {
  .hotel-grade.js-tips-content {
    max-width: 700px;
  }
  .hotel-grade.js-tips-content .relux-grade {
    max-width: 700px;
    padding: 20px 20px 20px 40px;
    -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-flow: row-reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-text {
    text-align: center;
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-text p:first-child {
    display: inline-block;
    margin-bottom: 28px;
    position: relative;
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-text p:first-child::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -12px;
    display: inline-block;
    width: 16px;
    height: 1px;
    -webkit-transform: translate(-50%);
            transform: translate(-50%);
    background-color: #FF503E;
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-text p:nth-child(2) {
    margin-bottom: 0;
    padding-left: 0;
    border-left: none;
  }
  .hotel-grade.js-tips-content .relux-grade .relux-grade-text p:nth-child(2) br {
    display: block;
  }
  .hotel-grade.js-tips-content .relux-grade figure img {
    width: 274px;
  }
}

@media screen and (max-width: 767px) {
  .detail-page .hotel-summary .title-box .title-grade span {
    margin-right: 0;
  }
  .detail-page .hotel-summary .title-box .title-grade span + span {
    margin-left: -4px;
  }
  .hotel-grade.js-tips-content {
    width: 100%;
    top: 26px;
  }
  .detail-page .hotel-summary .hotels-name {
    margin-bottom: 4px;
  }
  .detail-page .hotel-summary .intro-wrap {
    display: block;
  }
  .detail-page .hotel-summary .intro-wrap > div:first-of-type {
    width: 100%;
    margin-right: 0;
  }
  .detail-page .hotel-summary .bnr-xrdoor img {
    display: block;
    width: auto;
    margin: 0 auto 10px;
  }
}

.detail-page .hotel-summary h3 {
  margin-top: 40px;
  font-size: 1.6rem;
}

.detail-page .hotel-summary .links {
  margin-top: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-page .hotel-summary .links > * {
  margin-right: 24px;
}

.detail-page .hotel-summary .links > *:last-child {
  margin-right: 0;
}

.detail-page .hotel-summary .note {
  margin-bottom: 0;
}

.detail-page .hotel-summary .modal-btn {
  background-color: #F5F5F5;
  padding: 14px 48px 14px 16px;
  font-weight: bold;
}

.detail-page .hotel-summary .modal-btn::after {
  right: 16px;
}

@media screen and (max-width: 767px) {
  .detail-page .hotel-summary .links {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .detail-page .hotel-summary .links > * {
    margin-right: 0;
    margin-bottom: 24px;
  }
  .detail-page .hotel-summary .links > *:last-child {
    margin-bottom: 0;
  }
  .detail-page .hotel-summary .note {
    margin-bottom: 24px;
  }
  .detail-page .hotel-summary .modal-btn {
    padding: 8px;
    font-size: 1.4rem;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-page .hotel-summary .modal-btn::after {
    position: static;
    display: inline-block;
    margin: 0 0 0 4px;
  }
}

@media screen and (min-width: 768px) {
  .detail-page .hotel-summary .note a:hover {
    text-decoration: none;
  }
}

.hotel-review {
  position: relative;
  overflow: hidden;
  padding: 16px 0 8px;
}

.hotel-review .left-col {
  width: 108px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  float: left;
}

.hotel-review .right-col {
  width: calc(100% - 108px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding-left: 8px;
  float: left;
}

.hotel-review .review-score,
.hotel-review .info {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.hotel-review .review-score {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.hotel-review .review-score > div {
  width: 47%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #F5F5F5;
  font-size: 1rem;
}

.hotel-review .review-score > div span {
  font-size: 1.4rem;
}

.hotel-review .info-wrap {
  width: 100%;
}

.hotel-review .info {
  width: 100%;
  display: block;
  padding-top: 8px;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1.5;
  clear: both;
}

.hotel-review .info .notice {
  text-align: center;
  color: #757575;
}

.hotel-review .info .notice:not(:empty) {
  margin-bottom: 16px;
}

.hotel-review.no-review .info .notice {
  margin-bottom: 0;
}

.hotel-review .text-link-gray {
  width: 100%;
  padding-left: 8px;
  text-align: right;
  font-size: 1.4rem;
  white-space: nowrap;
}

.hotel-review .text-link-gray:empty {
  display: none;
}

.hotel-review .text-link-gray:empty:after {
  content: none;
}

.detail-page .facility,
.detail-page .access,
.detail-page .history {
  padding: 40px 0;
}

.detail-page .room-plan,
.detail-page .facility,
.detail-page .access {
  padding-top: 40px;
  border-bottom: 4px solid #F5F5F5;
  word-break: break-all;
}

.detail-page .hotel-summary {
  padding-top: 40px;
}

.detail-page .facility h3 {
  padding: 12px 0 8px;
}

.detail-page .facility table {
  margin-bottom: 24px;
  /*border: none;*/
  font-size: 1.6rem;
}

.detail-page .facility table:last-of-type {
  margin-bottom: 0;
}

.detail-page .facility table th, .detail-page .facility table td {
  border: none;
  padding: 12px 8px;
}

.detail-page .facility a,
.detail-page .access a {
  text-decoration: underline;
}

.detail-page .facility a:hover,
.detail-page .access a:hover {
  opacity: 1;
  color: #0066CC;
  text-decoration: none;
}

.detail-page .facility .note,
.detail-page .access .note {
  display: block;
  padding-top: 8px;
}

.detail-page .access h3 {
  margin-bottom: 16px;
  padding-top: 12px;
}

.detail-page .access .text {
  padding-bottom: 8px;
  font-size: 1.6rem;
}

.detail-page .access .text p {
  margin-bottom: 16px;
}

.detail-page .access .g-map {
  padding-top: 16px;
}

.detail-page .access .g-map iframe {
  width: 100%;
  height: 400px;
}

.detail-page .characteristic {
  height: 300px;
  margin-top: 40px;
  margin-bottom: 8px;
}

.detail-page .characteristic div {
  width: calc(20% - 16px);
  float: left;
  font-size: 16px;
  margin-right: 16px;
}

.detail-page .characteristic ul li {
  padding-left: 28px;
  white-space: nowrap;
}

.detail-page .characteristic ul li.circle {
  background: url("/stcontents/img/detail/circle.svg") no-repeat 0 50%;
  background-size: 16px 16px;
}

.detail-page .characteristic ul li.triangle {
  background: url("/stcontents/img/detail/triangle.svg") no-repeat 0 50%;
  background-size: 16px 16px;
}

.detail-page .characteristic ul li.cross {
  color: #c6c6c6;
  background: url("/stcontents/img/detail/cross.svg") no-repeat 0 50%;
  background-size: 16px 16px;
}

@media (max-width: 959px) {
  .detail-page .characteristic div {
    width: 100%;
    margin-bottom: 8px;
    font-size: 14px;
  }
  .detail-page .characteristic div .font-heavy {
    font-size: 1.6rem;
  }
  .detail-page .characteristic ul li {
    width: 50%;
    margin-bottom: 4px;
    padding-left: 22px;
    float: left;
  }
  .detail-page .characteristic ul li.circle {
    background-size: 14px 14px;
  }
  .detail-page .characteristic ul li.triangle {
    background-size: 14px 14px;
  }
  .detail-page .characteristic ul li.cross {
    background-size: 14px 14px;
  }
}

.detail-page .col6-article-2 {
  padding-bottom: 0;
}

.detail-page .journal .text-link-gray {
  margin-top: 8px;
}

.detail-page .anchor-link.float-on .btn-arrow {
  background: #0F0A64 url(/stcontents/img/common/icon-search-white.svg) no-repeat center center;
  background-size: 24px;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: fixed;
  top: 16px;
  left: calc(50% + 300px);
  border-radius: 4px;
  cursor: pointer;
}

@media (min-width: 768px) {
  .detail-page .anchor-link.float-on .btn-arrow.active {
    display: none;
  }
}

.detail-page .float-wrap {
  min-height: 110px;
}

.detail-page .float-box {
  background: #fff;
}

.detail-page .float-box.float {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  padding-top: 56px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
}

.detail-page .float-box.float .sort-box {
  margin: -4px 0 0;
}

.detail-page .float-box.float > div {
  display: none;
}

@media (min-width: 768px) {
  .detail-page .float-box.float > .wrap {
    display: block;
  }
  .detail-page .float-box.float:not(.on) .sort-conditions-list {
    display: none !important;
  }
  .detail-page .float-box.float.on {
    padding-top: 70px;
  }
  .detail-page .float-box.float.on .sort-box .btn-relux {
    margin-top: 0;
  }
  .detail-page .float-box.float.on .search-wrap {
    margin-bottom: 16px;
  }
  .detail-page .float-box.float .sort-box .btn-relux {
    margin-top: 16px;
  }
}

@media (min-width: 900px) {
  .detail-page .float-box.float .sort-box .btn-relux {
    margin-top: -32px;
  }
}

.detail-page .float-box.on > div {
  display: block;
}

.detail-page .float-box .tab-box {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.detail-page .search-wrap {
  margin-bottom: 24px;
}

.detail-page .searchBoxArea.fixed {
  position: relative;
  top: inherit;
  left: inherit;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .detail-page .anchor-link.position-measure {
    top: 0;
    padding-top: 8px;
  }
  .detail-page .anchor-link.position-measure.hide {
    display: none;
  }
  .detail-page .anchor-link.float-on .btn-arrow {
    background: #fff url(/stcontents/img/common/icon-arrow-bottom-gray.svg) no-repeat center center;
    background-size: 14px;
    width: 30px;
    height: 30px;
    top: 10px;
    left: inherit;
    right: 12px;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
    border: 1px solid #f5f5f5;
    border-radius: 50%;
  }
  .detail-page .anchor-link.float-on .btn-arrow.active {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    -webkit-box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
            box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
  }
  .detail-page .float-box .wrap {
    padding: 0 12px;
  }
}

.detail-page .room-plan .sort-box {
  margin-bottom: 8px;
}

.detail-page .tab-content > * {
  display: block;
  visibility: hidden;
  position: absolute;
}

.detail-page .tab-content > *:first-child {
  visibility: visible;
  position: static;
}

.detail-page .tab-target .tab-content > * {
  visibility: visible;
  position: static;
}

/*
  au,ROタグ追加
*/

.au-tag,
.ro-tag {
  background: #FFF5EF;
  display: inline-block;
  padding: 4px 8px;
  font-size: 1.2rem;
  color: #EB5505;
}
.ro-tag {
  background: #E1E9F8;
  color: #0F0A64;
}
.ro-au-tag {
  display: flex;
  justify-content: space-between;
  letter-spacing: 0;
  white-space: nowrap;
}
.ro-au-tag > span:first-child,
.ro-au-tag span span {
  position: relative;
  display: inline-block;
  z-index: 2;
}
.ro-au-tag .au-tag {
  width: calc(100% - 60px);
  position: relative;
  margin: -4px -10px -4px 0;
  padding-right: 30px;
}
.ro-au-tag .au-tag:before {
  content: "";
  background: linear-gradient(to right, #E1E9F8 50%, #FFF5EF 50%);
  transform: rotate(20deg);
  position: absolute;
  top: -10px;
  left: -15px;
  width: 28px;
  height: 45px;
}
.ro-au-tag > span {
  position: relative;
  z-index: 1;
}
.au-tag.wide {
  display: block;
  padding: 7px 8px;
  text-align: center;
}

.result-hotel > .ro-tag,
.result-hotel > .au-tag {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(100% - 736px);
  overflow: hidden;
}

.result-hotel.tag-line-add .hotel-info {
  padding-top: 16px;
}

@media (min-width: 1024px) and (max-width: 1168px){
  .result-hotel .js-slick-slider > div {
    max-width: 596px;
  }
  .btn-slide-arrow .slick-next {
    left: 536px;
  }
  .result-hotel .icon-favorite,
  .result-hotel .icon-favorite-on {
    left: 546px;
  }
  .result-hotel > .ro-tag,
  .result-hotel > .au-tag {
    width: calc(100% - 596px);
  }
  .result-hotel .hotel-info {
    left: 620px;
  }
}

@media (max-width: 1023px) {
  .result-hotel > .ro-tag,
  .result-hotel > .au-tag {
    width: 100%;
    padding-left: 8px !important;
  }
  .ro-au-tag > span:first-child {
    width: 70px;
    text-align: center;
  }
  .ro-au-tag .au-tag {
    width: calc(100% - 70px);
    padding-left: 12px;
  }
}

@media (max-width: 767px) {
  .result-list .result-hotel .tag-label,
  .result-list .result-hotel .tag-label-white {
    transform: scale(0.8) translateX(4px);
    margin-right: -1rem;
  }
  .result-hotel.tag-line-add {
    height: 270px;
  }
  .ro-au-tag .au-tag {
    width: calc(100% - 60px);
    padding-left: 16px;
  }
  .ro-au-tag .au-tag:before {
    left: -8px;
  }
  .result-hotel.new-style {
    height: auto;
  }
  .result-hotel.new-style .result-hotel-inner {
    height: 200px;
    margin-bottom: 0;
  }
  .result-hotel.new-style .hotel-info {
    bottom: 76px;
  }
  .result-hotel.tag-line-add.new-style .hotel-info {
    bottom: 110px;
  }
  .result-hotel.new-style .hotel-info.no-usage {
    bottom: 50px;
  }
  .result-hotel.tag-line-add.new-style .hotel-info.no-usage {
    bottom: 86px;
  }
  .result-hotel.new-style .point-price-box {
    margin: 8px 0 -6px;
    padding: 0 16px;
    letter-spacing: 0px;
    color: #333;
  }
  .result-hotel.new-style .price-box {
    margin: 0;
    padding: 0 16px 8px;
    text-shadow: none;
    justify-content: flex-end;
  }
  .result-hotel.new-style .price-box .food {
    margin-top: 2px;
    letter-spacing: 0;
    color: #333;
  }
  .result-hotel.new-style .au-tag,
  .result-hotel.new-style .ro-tag {
    position: relative;
  }
  .result-hotel .price-box .food-option {
    position: relative;
    top: 0;
  }
  .result-hotel .price-box .per {
    display: inline-block;
  }
  .result-hotel.new-style .slick-dotted.slick-slider {
    margin-bottom: 0;
  }

}

@media (max-width: 360px) {
  .result-list .result-hotel .au-tag,
  .result-list .result-hotel .ro-tag {
    font-size: 1rem;
  }
}

.detail-page .au-tag-label-on > div,
.detail-page .ro-tag-label-on > div {
  min-height: calc(11rem + 32px) !important;
  position: relative;
  padding-top: 32px;
}

.detail-page .au-tag-label-on > .plan-list-sec03,
.detail-page .ro-tag-label-on > .plan-list-sec03 {
  padding-top: 0;
}

@media (min-width: 768px) {
  .detail-page .plan-list-sec03 {
    min-width: 218px; /* pc表示 ボタン上「\ auスマートパスプレミアム /」 の文字崩れ対策 */
  }
}

.detail-page .au-tag-label-on .button-action.align-center,
.detail-page .ro-tag-label-on .button-action.align-center,
.detail-page .au-tag-plan-on .button-action.align-center,
.detail-page .ro-tag-plan-on .button-action.align-center {
  align-items: center !important;
}

.detail-page .au-tag-label,
.detail-page .ro-tag-label {
  background: #FFF5EF;
  width: 100%;
  display: flex;
  align-items: center;
  position: absolute;
  top: -1px;
  left: 0;
  border-right: none;
  margin-bottom: 8px;
  padding: 7px 16px !important;
  font-size: 12px;
  color: #EB5505;
}
.detail-page .ro-tag-label {
  background: #E1E9F8;
  color: #0F0A64;
}

.detail-page .landing .au-tag-label,
.detail-page .landing .ro-tag-label {
  top: 0;
}

.au-btn-label,
.ro-btn-label {
  display: block;
  width: 100%;
  position: absolute;
  top: -24px;
  left: 0;
  text-align: center;
  font-weight: 900;
  font-size: 12px;
  color: #0F0A64;
}

.au-btn-label.font-x-small,
.ro-btn-label.font-x-small {
  letter-spacing: 0;
  font-size: 10px;
}

.au-tag-label-on .frame-flex-base .btn-relux,
.ro-tag-label-on .frame-flex-base .btn-relux,
.au-tag-plan-on .frame-flex-base .btn-relux,
.ro-tag-plan-on .frame-flex-base .btn-relux {
  padding: 0 10px;
}

.au-tag-plan-on,
.ro-tag-plan-on {
  position: relative;
  padding-top: 36px !important;
}
.au-tag-plan-on .room-tag-label .icon-label,
.ro-tag-plan-on .room-tag-label .icon-label,
.au-tag-plan-on .room-tag-label .icon-orange,
.ro-tag-plan-on .room-tag-label .icon-orange  {
  margin-top: 8px;
}

.au-tag-plan-on > .au-tag-label,
.ro-tag-plan-on > .ro-tag-label {
  display: block;
  text-align: center;
}

.room-detail-article .au-tag,
.room-detail-article .ro-tag {
  width: calc(100% + 32px);
  margin-left: -16px;
  margin-bottom: 8px;
  text-align: center;
}

@media (max-width: 767px) {
  .detail-page .au-tag-label-on > div,
  .detail-page .ro-tag-label-on > div {
    min-height: 0 !important;
    padding-top: 40px;
  }
  .detail-page .au-tag-label-on .plan-list-sec02,
  .detail-page .ro-tag-label-on .plan-list-sec02 {
    padding-top: 0;
  }
  .detail-page .au-tag-label-on .plan-list-sec02 .au-tag-label,
  .detail-page .ro-tag-label-on .plan-list-sec02 .ro-tag-label {
    display: none;
  }
  .detail-page .au-tag-label,
  .detail-page .ro-tag-label {
    justify-content: center;
    padding: 2px 8px !important;
  }
  .au-tag-plan-on,
  .ro-tag-plan-on {
    padding-top: 24px !important;
  }
}

@media (max-width: 341px) {
  .detail-page .plan-list-sec01 .au-tag-label.sp-small {
    font-size: 1rem;
    height: 26px;
  }
}

@media (min-width: 768px) {
  .detail-page .hotel-summary h3 {
    margin-top: 0;
  }
  .detail-page .hotel-summary .title-box h1 {
    margin-left: -2px;
  }
  .detail-page .hotel-summary .title-box .icon-question {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center;
    margin: 0 8px;
  }
  .detail-page .hotel-summary {
    padding-top: 0;
  }
  .detail-page .hotel-summary .title-box,
  .detail-page .hotel-summary .address,
  .detail-page .hotel-summary .intro-wrap {
    max-width: 880px;
    margin-right: auto;
    margin-left: auto;
  }
  .detail-page .hotel-summary .intro-text {
    margin-bottom: 0px;
  }
  .detail-page .float-wrap {
    min-height: 140px;
  }
  .detail-page .access {
    border: none;
    padding-top: 40px;
  }
  .detail-page .access .g-map iframe {
    height: 600px;
  }
  .detail-page .facility table {
    border-top: 1px solid #C6C6C6;
  }
  .detail-page .facility table th, .detail-page .facility table td {
    border-bottom: 1px solid #C6C6C6;
    padding: 16px 8px;
  }
  .detail-page .facility .note,
  .detail-page .access .note {
    display: inline;
    padding-top: 0;
  }
  .detail-page .review-title {
    display: block;
  }
  .hotel-review {
    margin-bottom: 16px;
  }
  .hotel-review .sp-only {
    display: block;
  }
  .hotel-review .pc-only {
    display: none;
  }
  .hotel-review .review-score > div {
    font-size: inherit;
  }
  .hotel-review .review-score > div span {
    margin-left: 4px;
    font-size: 2.4rem;
  }
  .hotel-review .text-link-gray {
    margin-top: 20px;
    font-size: 1.4rem;
  }
}

@media (min-width: 1024px) {
  .detail-page .review-title {
    display: none;
  }
  .hotel-review {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
    padding: 24px 20px;
    border-bottom: 4px solid #F5F5F5;
    border-top: 4px solid #F5F5F5;
  }
  .hotel-review .sp-only {
    display: none;
  }
  .hotel-review .pc-only {
    display: block;
  }
  .hotel-review .left-col {
    width: 250px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .hotel-review .right-col {
    width: calc(100% - 250px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding-left: 20px;
  }
  .hotel-review .review-score,
  .hotel-review .info {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .hotel-review .info .notice {
    text-align: left;
  }
  .hotel-review .info .notice:not(:empty) {
    margin-bottom: 0;
  }
  .hotel-review .review-score > div {
    width: auto;
    border: none;
    font-size: inherit;
  }
  .hotel-review .review-score > div span {
    font-size: 2.4rem;
  }
  .hotel-review .text-link-gray {
    width: auto;
    font-size: 1.4rem;
  }
}

@media (min-width: 1280px) {
  .hotel-review .review-score > div span {
    margin-left: 16px;
  }
  .hotel-review .left-col {
    width: 276px;
  }
  .hotel-review .right-col {
    width: calc(100% - 276px);
    padding-left: 40px;
  }
  .hotel-review .info,
  .hotel-review .text-link-gray {
    font-size: 1.6rem;
  }
}

@media (max-width: 360px) {
  .detail-page .gallery-line .thumb, .detail-page .gallery-line .btn-gallery {
    width: 20vw !important;
    height: 20vw !important;
    margin-right: 4vw;
  }
}

@media (max-width: 1100px) {
  .detail-page .common-modal.calendar-modal {
    margin: 0;
    height: auto;
    width: auto;
  }
  .detail-page .common-modal.calendar-modal .pc-only {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .sp-only {
    display: block !important;
  }
  .detail-page .common-modal.calendar-modal .modal-container {
    padding: 0;
    overflow-y: auto;
  }
  .detail-page .common-modal.calendar-modal .modal-container.scrolling .panel-head {
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  }
  .detail-page .common-modal.calendar-modal .dateSelector {
    padding: 0 16px;
  }
  .detail-page .common-modal.calendar-modal .panel-head {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 45px 16px 0;
    margin-left: 0;
    margin-right: 0;
    background-color: #fff;
    -webkit-transition: -webkit-box-shadow .25s;
    transition: -webkit-box-shadow .25s;
    transition: box-shadow .25s;
    transition: box-shadow .25s, -webkit-box-shadow .25s;
  }
  .detail-page .common-modal.calendar-modal .panel-head .btn-back {
    background: url(/stcontents/img/common/icon-arrow-left-black-2.svg) no-repeat center center;
    background-size: auto;
    width: 30px;
    height: 30px;
    position: fixed;
    top: 10px;
    left: 8px;
    z-index: 1;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box {
    height: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 16px;
    border-bottom: 1px solid #c6c6c6;
    padding: 6px 22px 0 28px;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .checkin,
  .detail-page .common-modal.calendar-modal .panel-head .date-box .checkout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .unset {
    color: #757575;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .unset .sub {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .sub {
    color: #757575;
    font-size: 1.2rem;
    margin-left: 4px;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .stay {
    margin-left: auto;
    margin-right: 48px;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .border {
    margin: 0 16px;
    color: #757575;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .reset-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    right: 12px;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .reset-btn.unset {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .reset-btn a {
    font-size: 1.6rem;
    color: #757575 !important;
    background-color: transparent;
    padding: 0;
    padding-left: 28px;
    position: relative;
  }
  .detail-page .common-modal.calendar-modal .panel-head .date-box .reset-btn a::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("../img/common/icon-reset.svg");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .detail-page .common-modal.calendar-modal .calendar-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    margin-left: 0;
    margin-right: 0;
  }
  .detail-page .common-modal.calendar-modal .calendar-head {
    width: 100%;
    height: 34px;
  }
  .detail-page .common-modal.calendar-modal .calendar-head tr > th {
    text-align: center;
    font-size: 1.2rem;
  }
  .detail-page .common-modal.calendar-modal .calendar-head tr > th:last-child {
    color: #ce0000;
  }
  .detail-page .common-modal.calendar-modal .calendar-head tr > th:nth-last-child(2) {
    color: #06c;
  }
  .detail-page .common-modal.calendar-modal .calendar {
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .detail-page .common-modal.calendar-modal .calendar:last-child {
    margin-bottom: 24px;
  }
  .detail-page .common-modal.calendar-modal .calendar table thead {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .calendar table tr td .date-btn button {
    font-size: 1.6rem;
  }
  .detail-page .common-modal.calendar-modal .calendar table tr td .date-btn button .stay-price,
  .detail-page .common-modal.calendar-modal .calendar table tr td .date-btn button .stay-price-none {
    font-size: 1.4rem;
  }
  .detail-page .common-modal.calendar-modal .calendar .month {
    font-size: 1.6rem;
  }
  .detail-page .common-modal.calendar-modal .btn-area {
    background-color: #fff;
    width: auto;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 64px;
    padding: 0 16px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.1);
  }
  .detail-page .common-modal.calendar-modal .btn-area.unset {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .btn-area > a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .detail-page .common-modal.calendar-modal .date-panel-foot {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 70px;
    background-color: #fff;
    padding: 16px;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
    position: -webkit-sticky;
    position: sticky;
    margin-left: -16px;
    margin-right: -16px;
  }
  .detail-page .common-modal.calendar-modal .stay-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 400px;
    height: 60px;
    padding-right: 32px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-bottom: 2px solid #c6c6c6;
    position: relative;
  }
  .detail-page .common-modal.calendar-modal .stay-box.unset {
    padding-right: 0;
    color: #757575;
  }
  .detail-page .common-modal.calendar-modal .stay-box.unset .reset-btn {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .stay-box.unset .main {
    font-size: 1.6rem;
  }
  .detail-page .common-modal.calendar-modal .stay-box.unset .sub {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .stay-box .checkin,
  .detail-page .common-modal.calendar-modal .stay-box .checkout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-page .common-modal.calendar-modal .stay-box .main {
    font-size: 2rem;
  }
  .detail-page .common-modal.calendar-modal .stay-box .sub {
    color: #757575;
    font-size: 1.4rem;
    margin-left: 16px;
  }
  .detail-page .common-modal.calendar-modal .stay-box .border {
    margin: 0 8px;
  }
  .detail-page .common-modal.calendar-modal .stay-box .reset-btn {
    position: absolute;
    right: 10px;
  }
  .detail-page .common-modal.calendar-modal .stay-box .reset-btn a {
    display: block;
  }
  .detail-page .common-modal.calendar-modal .stay-box .reset-btn a::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("../img/common/icon-reset.svg");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
  }
  .detail-page .common-modal.calendar-modal .info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .detail-page .common-modal.calendar-modal .price-area {
    margin-right: 16px;
    text-align: right;
    font-size: 1.2rem;
    line-height: 1.2;
  }
  .detail-page .common-modal.calendar-modal .price {
    font-size: 2rem;
    font-weight: bold;
  }
  .detail-page .common-modal.calendar-modal .stay-people {
    text-align: right;
  }
  .detail-page .common-modal.calendar-modal .stay-people-child.unset {
    display: none;
  }
  .detail-page .common-modal.calendar-modal .decide-btn a {
    height: 40px;
    width: 166px;
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .detail-page h2 {
    margin-bottom: 8px;
    font-size: 2.4rem;
  }
  .detail-page h3 {
    font-size: 2.0rem;
  }
  .detail-page .room-plan h2 {
    margin-bottom: 0;
    padding-bottom: 16px;
    font-size: 2.4rem;
  }
  .detail-page .frame-flex-base.button-action {
    margin: 0 0 8px 0;
    margin-bottom: 8px;
  }
  .detail-page .frame-flex-separat {
    margin: 8px 0;
  }
  .detail-page .room-tab-frame .tab-stage.plan-stage {
    padding: 12px 0 0;
  }
  .detail-page .search-wrap {
    margin-bottom: 16px;
  }
  .detail-page .search-wrap .btn-popup-close {
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    background-size: contain;
    position: fixed;
    top: 10px;
    width: 30px;
    height: 30px;
    left: auto;
    right: 9px;
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .detail-page .room-plan {
    padding-top: 34px;
  }
  .detail-page .room-plan .sort-box {
    margin-bottom: 8px;
  }
  .detail-page .room-tag-label + p {
    margin-top: 4px;
    line-height: 1.8;
  }
  .detail-page .frame-flex-base.button-action > div a {
    height: 40px;
    font-size: 1.4rem;
  }
  .detail-page .hotel-box .room-tag-label {
    margin-bottom: 8px;
  }
  .detail-page .hotel-box.landing .plan-list-box .icon-label {
    margin-bottom: 8px;
  }
  .detail-page .room-top {
    margin-bottom: 16px;
  }
  .detail-page .hotel-summary {
    padding: 24px 0;
  }
  .detail-page .hotel-summary .title-box h1 {
    margin-bottom: 4px;
  }
  .detail-page .hotel-summary .title-box .title-grade {
    margin-bottom: 4px;
  }
  .detail-page .hotel-summary .intro-text {
    font-size: 1.4rem;
  }
  .detail-page .hotel-summary h3 {
    margin-top: 24px;
  }
  .detail-page .hotel-summary .links {
    margin-bottom: 0;
  }
  .detail-page .root-room-sp-modal .frame-item {
    padding: 8px;
  }
  .detail-page .frame-item .room-item-list {
    margin-right: 8px;
  }
  .detail-page .facility {
    padding-bottom: 0;
  }
  .detail-page .facility h3 {
    padding-top: 0;
  }
  .detail-page .access h3 {
    margin-bottom: 8px;
    padding-top: 0;
  }
  .detail-page .access .g-map {
    padding-top: 0;
  }
  .detail-page .history {
    padding-bottom: 0;
  }
  .detail-page .text p {
    font-size: 1.4rem;
  }
}

.mtb-0 {
  margin: 0;
}

.mtb-10 {
  margin: 1rem 0;
}

.mt-16 {
  margin-top: 1.6rem;
}

.mt-8 {
  margin-top: .8rem;
}

.mt-10 {
  margin-top: 10px;
}

.area-right {
  text-align: right;
}

.deco-bt-line {
  text-decoration: underline;
}

.clickable {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.room-top {
  margin: .8rem 1.6rem 0;
}

.room-top .h3-sp-small {
  font-size: 1.8rem;
}

.room-top .icon-label {
  border: 1px solid #333;
  margin-bottom: 8px;
}

.room-plan {
  border-bottom: none;
}

.room-plan h2 {
  padding: 0 0 2rem;
  font-size: 2.4rem;
}

.room-plan .result-hotel {
  height: 17rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: 0;
}

.room-tab-frame {
  position: relative;
  overflow: hidden;
}

.room-tab-frame .tab-stage {
  background-color: #ffffff;
  padding: 8px 0 0;
  overflow: hidden;
}

.room-tab-frame .tab-stage.pb-reservation {
  padding-bottom: 20rem;
}

.room-tab-frame .tab-stage .frame-root {
  padding: 0 1.6rem;
}

.room-tab-frame .room-detail-article {
  padding: 0;
}

.room-tab-frame .room-detail-article h3 {
  margin-bottom: 1rem;
}

.room-tab-frame .smartpass-link .keyword-box {
  width: 100%;
  padding: 8px 16px;
  background-color: #FFF5EF;
  position: relative;
  border-radius: 8px;
  margin-top: 8px;
  margin-bottom: 16px;
}

.room-tab-frame .smartpass-link .keyword-box p {
  color: #333;
  margin-bottom: 0;
  font-size: 1.4rem;
}

.room-tab-frame .smartpass-link .keyword-box .arrow {
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.room-tag-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.room-tag-label .tag-label {
  -webkit-transform: none;
          transform: none;
}

.room-tag-label + p {
  margin-top: 5px;
  line-height: 1.4;
}

.room-tag-label .icon-orange,
.room-tag-label .icon-label,
.room-tag-label .icon-grade {
  margin-right: 8px;
}

.frame-flex-base {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.frame-flex-base.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.frame-flex-base.button-action {
  margin: 1.6rem 0;
}

.frame-flex-base.button-action > div {
  -webkit-flex-basis: calc(100% / 2 - .4rem);
      -ms-flex-preferred-size: calc(100% / 2 - .4rem);
          flex-basis: calc(100% / 2 - .4rem);
}

.frame-flex-base.button-action > div a {
  width: 100%;
}

.frame-flex-base.justify-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.frame-flex-base.justify-end {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.frame-flex-base.justify-start {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.frame-flex-base.flex-wrap {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.frame-flex-base.room-reservation-data {
  border: 1px solid #c6c6c6;
  border-radius: .4rem;
  margin-bottom: 1rem;
}

.frame-flex-base.room-reservation-data dl:first-of-type {
  border-radius: .4rem 0 0 .4rem;
}

.frame-flex-base.room-reservation-data dl:first-of-type + dl {
  border-radius: 0 .4rem .4rem 0;
}

.frame-flex-base dl {
  background-color: #f5f5f5;
  padding: .2rem 1.6rem;
  -webkit-flex-basis: calc(100% / 2 - .2rem);
      -ms-flex-preferred-size: calc(100% / 2 - .2rem);
          flex-basis: calc(100% / 2 - .2rem);
}

.img-thumbnail {
  -webkit-flex-basis: 7rem;
      -ms-flex-preferred-size: 7rem;
          flex-basis: 7rem;
  position: relative;
  height: 7rem;
}

.img-thumbnail img {
  width: 100%;
  height: 7rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.img-thumbnail .icon-label {
  position: absolute;
  top: .5rem;
  left: .5rem;
  font-size: .8rem;
  letter-spacing: 0;
}

.img-thumbnail + div {
  -webkit-flex-basis: calc(100% - 8rem);
      -ms-flex-preferred-size: calc(100% - 8rem);
          flex-basis: calc(100% - 8rem);
}

.img-thumbnail + div p {
  margin-bottom: 0;
}

.sale-icon .icon-label {
  border: 1px solid #333;
}

.frame-flex-separat {
  letter-spacing: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.frame-flex-separat.add-column {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: .8rem 0;
}

.frame-flex-separat.add-x-position {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.frame-flex-separat.plan-detail-data {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  background-color: #f5f5f5;
  padding: .8rem .1rem;
  margin-top: 1.6rem;
}

.frame-flex-separat.plan-detail-data dl {
  -webkit-flex-basis: calc(100% / 2);
      -ms-flex-preferred-size: calc(100% / 2);
          flex-basis: calc(100% / 2);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1rem;
  letter-spacing: 0;
}

.frame-flex-separat.plan-detail-data dl dt {
  font-weight: bold;
}

.frame-flex-separat li {
  padding-right: .5rem;
}

.frame-flex-separat li::after {
  content: "";
  border-right: solid 1px #c6c6c6;
  padding-right: .5rem;
}

.frame-flex-separat li:last-child {
  padding-right: 0;
}

.frame-flex-separat li:last-child::after {
  border: none;
  padding-right: 0;
}

@media (min-width: 768px) {
  .reservation-login-modal .modal-loginsignin {
    height: auto;
  }
  .reservation-login-modal .wrap-loginsignin {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .reservation-login-modal .modal-loginInput {
    margin-bottom: 8px;
  }
  .reservation-login-modal .loginBtn-fix {
    margin-bottom: 8px;
  }
  .reservation-login-modal .modal-logInWithMailArea {
    margin: 0 auto;
    width: 320px;
  }
  .reservation-login-modal .modal-logInWithElseArea {
    padding: 0;
    width: 320px;
    border-left: none;
  }
  .reservation-login-modal .area-partition {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .reservation-login-modal .area-partition:before,
  .reservation-login-modal .area-partition:after {
    border-top: 1px solid #C6C6C6;
    content: "";
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    color: #757575;
  }
  .reservation-login-modal .area-partition:before {
    margin-right: 8px;
  }
  .reservation-login-modal .area-partition:after {
    margin-left: 8px;
  }
  .reservation-login-modal .sns-login > div a {
    border: 1px solid #757575;
  }
  .reservation-login-modal .reservation-link {
    text-align: center;
    margin-top: 32px;
    margin-bottom: 0;
  }
}

.reservation-login-modal .modal-logInWithElseArea {
  margin: 0 auto;
}

.reservation-login-modal .reservation-link {
  text-align: center;
  margin-top: 24px;
  margin-bottom: 0;
}

.list-star li {
  padding-left: 1em;
  text-indent: -1em;
}

.list-star li::before {
  content: "※";
}

.frame-table-line dl {
  border-top: 1px solid #C6C6C6;
  padding: .8rem 0;
}

.frame-table-line dl:last-child {
  border-bottom: 1px solid #C6C6C6;
}

.title-member-fee {
  background-color: #f5f5f5;
  padding: .4rem;
  margin: .8rem 0;
  text-align: right;
  min-height: 2.4rem;
  line-height: 1;
}

.title-member-fee .member-fee-mark {
  margin-right: .5rem;
  vertical-align: sub;
  display: inline-block;
}

.title-member-fee .member-fee-name {
  color: #0F0A64;
  font-weight: bold;
  font-size: 1rem;
}

.plan-fee {
  text-align: right;
  line-height: 1.6;
}

.plan-fee .frame-fee-member {
  height: 1.4rem;
  margin-bottom: .4rem;
}

.plan-fee .fee-member-rate {
  text-decoration: line-through;
}

.plan-fee .plan-fee-point {
  margin-top: .4rem;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.plan-fee.sp-plam-fee-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.fee-payment {
  font-size: 1.6rem;
  font-weight: bold;
}

.hotel-box {
  border-bottom: 4px solid #f5f5f5;
  padding: 0 1.6rem 1.6rem;
  margin-bottom: 1.6rem;
}

.hotel-box.root-continue {
  padding: 0 0 1.6rem;
}

.hotel-box:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}

.hotel-box.landing {
  border: 2px solid #A6BCE9;
}

.hotel-box.landing .plan-list-box .icon-label {
  margin-bottom: 4px;
}

.hotel-box .empty-text {
  padding: 80px 16px 80px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .hotel-box.root-continue {
    padding: 0;
  }
  .hotel-box.landing {
    padding-top: 16px;
  }
  .hotel-box.landing .room-top .icon-label {
    margin-bottom: 4px;
  }
  .hotel-box .empty-text {
    padding: 56px 16px;
  }
  .hotel-box .room-tag-label {
    padding: 0 16px;
  }
  .hotel-box .plan-list-sec01 .room-tag-label {
    margin-top: -8px !important;
    margin-bottom: 0;
    padding: 0;
  }
  .plan-stage .hotel-box .empty-text {
    padding: 52px 16px 56px;
  }
}

.plan-list-box {
  margin: 0 1.6rem 2rem;
  padding: 1.6rem 2.3em 1.6rem 1.6rem;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  position: relative;
}

.plan-list-box .room-list-clickable {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.plan-list-box .room-list-clickable::after {
  /*@include img-mark;*/
  content: "";
  background: url("../img/common/icon-text-link-black.svg") no-repeat 0 0;
  background-size: contain;
  position: absolute;
  display: block;
  width: 1.3rem;
  height: 18px;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: scaleY(1.3);
          transform: scaleY(1.3);
}

.plan-list-box.landing {
  border: 1px solid #A6BCE9;
}

.plan-list-box.text-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 2.4rem 1.6rem;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.plan-list-box.text-center p {
  margin-bottom: 0;
}

.room-detail-article {
  padding: 2rem 1.6em 1.6rem;
}

.room-detail-article .result-hotel {
  -webkit-box-shadow: none;
          box-shadow: none;
  height: 19rem;
}

.frame-item {
  color: #000000;
  padding: 16px;
}

.frame-item dt {
  margin-bottom: 1rem;
  font-weight: bold;
}

.frame-item dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2rem;
}

.frame-item dd:last-of-type {
  margin: 0;
}

.frame-item .room-item-list {
  margin-right: 24px;
  margin-bottom: 8px;
}

.frame-item .room-item-list li {
  display: inline-block;
  margin-left: 1em;
  text-indent: -1em;
}

.frame-item .room-item-list li::before {
  content: "・";
}

@media (max-width: 767px) {
  .frame-item .room-item-list {
    margin-right: 8px;
  }
}

.frame-plan-add {
  margin-top: 1.6rem;
}

.reservation-box {
  -webkit-box-shadow: 0 -0.2rem 1rem 0 rgba(0, 0, 0, 0.07);
          box-shadow: 0 -0.2rem 1rem 0 rgba(0, 0, 0, 0.07);
  padding: .8rem 1.6rem;
  background-color: #ffffff;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}

.reservation-box .fee-payment {
  font-size: 2rem;
}

.reservation-box .plan-fee {
  margin-right: .5rem;
}

.reservation-box .btn-submit {
  -webkit-flex-basis: 40%;
      -ms-flex-preferred-size: 40%;
          flex-basis: 40%;
  text-align: center;
}

.reservation-box .btn-submit button,
.reservation-box .btn-submit a {
  width: 100%;
}

.remarks p u {
  color: #757575;
  cursor: pointer;
}

.area-continue {
  padding-top: .8rem;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

@media screen and (max-width: 767px) {
  .area-continue {
    background-color: #f5f5f5;
    overflow: hidden;
    padding-top: 2rem;
  }
}

.display-more-button {
  text-align: center;
}

.display-more-button a {
  display: block;
  padding-top: 2rem;
  cursor: pointer;
  color: #0F0A64;
}

.display-more-button a span {
  position: relative;
  display: inline-block;
  padding-right: 3rem;
}

.display-more-button a span::after {
  content: "";
  background: url("../img/common/icon-accordion.svg") no-repeat 0 0;
  background-size: contain;
  position: absolute;
  display: block;
  width: 1.5rem;
  height: 0.8rem;
  display: inline-block;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.display-more-button.open a span::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

@media screen and (max-width: 767px) {
  .display-more-button {
    background-color: #f5f5f5;
  }
  .display-more-button p {
    margin-bottom: 0;
  }
  .display-more-button a {
    padding-top: 8px;
    padding-bottom: 24px;
    font-size: 1.4rem;
  }
}

.plan-tab-modal {
  height: calc(100% - 15rem);
  overflow: auto;
}

.root-room-pc-modal .plan-fee {
  margin-right: 1rem;
  line-height: 1.4;
}

.root-room-pc-modal .plan-fee .frame-fee-member {
  margin-bottom: 0;
}

.root-room-pc-modal .plan-fee .plan-fee-point {
  margin-top: 0;
}

.root-room-pc-modal .hotel-box {
  padding: 0;
}

.root-room-pc-modal .result-hotel {
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  margin-bottom: 0;
}

.root-room-pc-modal .modal-container {
  padding: 0 0 1.6rem;
}

.root-room-pc-modal .modal-container .content-body {
  margin: 1.6rem;
}

.root-room-pc-modal .modal-container.scroll-on {
  padding-right: 0;
}

.root-room-pc-modal .modal-container.wrap-plan-modal .content-body {
  margin: 0;
  height: calc(100% - 11.6rem);
}

.root-room-pc-modal .modal-container.wrap-plan-modal .content-body.scroll-all {
  height: 100%;
}

.root-room-pc-modal .modal-container.wrap-plan-modal .content-body.scroll-all .room-detail-article {
  padding: .8rem 1.6rem;
}

.root-room-pc-modal .modal-container.wrap-plan-modal .tab-content {
  padding: 1.6rem;
}

.root-room-pc-modal .room-detail-article {
  padding: 0;
}

.root-room-pc-modal .room-detail-article u {
  color: #757575;
}

.root-room-pc-modal .room-detail-article u:hover {
  text-decoration: none;
  cursor: pointer;
}

.root-room-pc-modal .slick-dotted.slick-slider {
  margin-bottom: 0;
}

.root-room-pc-modal .slick-dots {
  left: 0 !important;
  right: 0 !important;
  margin: auto !important;
}

.root-room-pc-modal .room-top {
  margin: 0 0 2rem;
}

.root-room-sp-modal .common-modal .modal-container .content-body {
  height: auto;
}

.root-room-sp-modal .room-detail-article {
  position: relative;
  padding-bottom: 8rem;
  padding: 0;
}

.root-room-sp-modal .btn-modal-close {
  background: none;
  width: auto;
  height: auto;
  left: 2rem !important;
  right: 2rem !important;
  bottom: 2rem;
  text-align: center;
  top: auto;
}

.root-room-sp-modal .btn-modal-close .btn-default {
  display: block;
  border: solid 1px #c6c6c6;
}

.root-room-sp-modal .slick-dotted.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.root-room-sp-modal .result-hotel {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 0;
}

.root-room-sp-modal .result-hotel .sale-icon {
  top: 8px;
  left: 8px;
}

.root-room-sp-modal .room-top {
  margin: 0;
}

.root-room-sp-modal .frame-item {
  padding: 16px;
}

.room-plan-info .anchor-link,
.wrap-plan-modal .anchor-link {
  background-color: #ffffff;
  max-width: 100%;
  padding-top: 1.6rem;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1;
}

.room-plan-info .result-hotel {
  margin-bottom: 0;
}

.room-plan-info .room-tab-frame {
  padding: 0;
}

.room-plan-info .hotel-box {
  padding: 0 1.6rem;
}

.frame-fee-member {
  display: none;
}

.screen-member .frame-fee-member {
  display: block;
}

@media (max-width: 767px) {
  .title-member-fee {
    padding-right: 8px;
  }
  .title-member-fee .member-fee-mark {
    margin-right: 4px;
    height: 1.6rem;
  }
  .root-room-pc-modal .modal-container.scroll-on .content-body {
    padding: 0;
  }
  .room-detail-article .font-large,
  .room-plan-info .font-large {
    font-size: 1.4rem;
  }
  .room-detail-article .font-large.sp-foint-size14,
  .room-plan-info .font-large.sp-foint-size14 {
    font-size: 1.4rem;
  }
  .sp-foint-size14 {
    font-size: 1.4rem;
  }
  .cancel-rate {
    display: block;
  }
}

@media (min-width: 768px) {
  .kv-slider .slick-next {
    left: auto;
    right: calc(8% - 20px);
  }
  .kv-slider .slick-prev {
    left: calc(8% - 20px);
    right: auto;
  }
  .room-top {
    margin-left: 0;
    margin-right: 0;
  }
  .room-top .frame-flex-base.button-action {
    margin: 2.4rem 0 0;
  }
  .room-top.frame-flex-base-pc .pc-only {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .room-top.frame-flex-base-pc .plan-list-sec01 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
  .plan-list-box {
    margin: 0;
    padding: 1.6rem 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 0;
    position: relative;
    border-top: 1px solid #C6C6C6;
  }
  .plan-list-box:only-child {
    border-bottom: 1px solid #C6C6C6;
  }
  .plan-list-box .room-list-clickable {
    display: none;
  }
  .plan-list-box > div {
    border-right: 1px solid #C6C6C6;
  }
  .plan-list-box > div:last-of-type {
    border-right: none;
  }
  .plan-list-box.landing {
    border-left: none;
    border-right: none;
    border-width: 2px;
  }
  .plan-list-box.landing + div {
    border-top: none;
  }
  .plan-list-box.landing:only-child {
    border-bottom: 2px solid #A6BCE9;
  }
  .frame-flex-base-pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .frame-flex-base-pc .img-thumbnail {
    display: block;
    height: 18rem;
  }
  .frame-flex-base-pc .img-thumbnail a:hover {
    opacity: .7;
  }
  .frame-flex-base-pc .img-thumbnail + .room-top {
    -webkit-flex-basis: calc(100% - 29.2rem);
        -ms-flex-preferred-size: calc(100% - 29.2rem);
            flex-basis: calc(100% - 29.2rem);
    margin: 0;
  }
  .frame-flex-base-pc.direction-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .frame-flex-base-pc.align-center {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .frame-flex-base-pc.align-base {
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .frame-flex-base-pc.fee-pc {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .frame-flex-base-pc.fee-pc .pc-only {
    font-size: 1.2rem;
    margin-right: .5rem;
  }
  .frame-flex-base-pc.relux-offer-none {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .frame-flex-base-pc.relux-offer-none .title-member-fee {
    display: none;
  }
  .frame-flex-base-pc.box-wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .frame-flex-base-pc.justify-start {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .frame-flex-base-pc .plan-list-sec01,
  .frame-flex-base-pc .plan-list-sec02,
  .frame-flex-base-pc .plan-list-sec03 {
    min-height: 9.2rem;
  }
  .frame-flex-base-pc .plan-list-sec01 {
    padding-right: 1.6rem;
    -webkit-flex-basis: calc(100% - 55rem);
        -ms-flex-preferred-size: calc(100% - 55rem);
            flex-basis: calc(100% - 55rem);
  }
  .frame-flex-base-pc .plan-list-sec01 > .frame-flex-base {
    height: 100%;
  }
  .frame-flex-base-pc .plan-list-sec01 .frame-flex-base-pc {
    height: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .frame-flex-base-pc .plan-list-sec01 .frame-flex-base-pc .room-tag-label {
    margin: 0;
  }
  .frame-flex-base-pc .plan-list-sec02 {
    -webkit-flex-basis: 31rem;
        -ms-flex-preferred-size: 31rem;
            flex-basis: 31rem;
  }
  .frame-flex-base-pc .plan-list-sec02 > .frame-flex-base-pc {
    height: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .frame-flex-base-pc .plan-list-sec02 .plan-fee {
    padding-right: 1.6rem;
    line-height: 1.4;
  }
  .frame-flex-base-pc .plan-list-sec03 {
    -webkit-flex-basis: 24rem;
        -ms-flex-preferred-size: 24rem;
            flex-basis: 24rem;
    padding-left: 1.6rem;
  }
  .frame-flex-base-pc .plan-list-sec03 .button-action {
    height: 100%;
    align-items: center;
  }
  .frame-flex-base-pc .plan-list-sec03 .button-action.day-none div:nth-child(-n+2) {
    display: none;
  }
  .frame-flex-base-pc .plan-list-sec03 .button-action.day-none .btn-day-none {
    -webkit-flex-basis: 21.4rem;
        -ms-flex-preferred-size: 21.4rem;
            flex-basis: 21.4rem;
  }
  .frame-flex-base-pc.reservation-box {
    position: absolute;
    border-radius: 0 0 1.4rem 1.4rem;
    padding: 1.4rem 4rem;
  }
  .frame-flex-base-pc.reservation-box .stay-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 400px;
    height: 60px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border: 1px solid #c6c6c6;
    border-radius: 4px;
    position: relative;
    cursor: pointer;
    visibility: visible;
    pointer-events: visible;
  }
  .frame-flex-base-pc.reservation-box .stay-box.unset {
    visibility: hidden;
    pointer-events: none;
    padding-right: 0;
    color: #757575;
  }
  .frame-flex-base-pc.reservation-box .stay-box.unset .reset-btn {
    display: none;
  }
  .frame-flex-base-pc.reservation-box .stay-box.unset .main {
    font-size: 1.6rem;
  }
  .frame-flex-base-pc.reservation-box .stay-box.unset .sub {
    display: none;
  }
  .frame-flex-base-pc.reservation-box .stay-box .checkin,
  .frame-flex-base-pc.reservation-box .stay-box .checkout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .frame-flex-base-pc.reservation-box .stay-box .main {
    font-size: 2rem;
  }
  .frame-flex-base-pc.reservation-box .stay-box .sub {
    color: #757575;
    font-size: 1.4rem;
    margin-left: 16px;
  }
  .frame-flex-base-pc.reservation-box .stay-box .border {
    margin: 0 8px;
  }
  .frame-flex-base-pc.reservation-box .stay-box .reset-btn {
    position: absolute;
    right: 10px;
  }
  .frame-flex-base-pc.reservation-box .stay-box .reset-btn a {
    display: block;
  }
  .frame-flex-base-pc.reservation-box .stay-box .reset-btn a::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("../img/common/icon-reset.svg");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
  }
  .frame-flex-base-pc.reservation-box .info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .frame-flex-base-pc.reservation-box .price-area {
    margin-right: 16px;
  }
  .frame-flex-base-pc.reservation-box .price {
    font-size: 2.4rem;
    font-weight: bold;
    margin-left: 8px;
  }
  .frame-flex-base-pc.reservation-box .stay-people {
    text-align: right;
  }
  .frame-flex-base-pc.reservation-box .stay-people-child.unset {
    display: none;
  }
  .frame-flex-base-pc.reservation-box .info-btn-area .decide-btn {
    display: none;
  }
  .frame-flex-base-pc.reservation-box .decide-btn a,
  .frame-flex-base-pc.reservation-box .date-select-btn a {
    width: 230px;
    max-width: 230px;
    height: 48px;
  }
  .frame-flex-base.button-action {
    margin: 0;
  }
  .frame-flex-base.button-action div {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
  .frame-flex-base.button-action div.to-form {
    -webkit-flex-basis: 65%;
        -ms-flex-preferred-size: 65%;
            flex-basis: 65%;
    position: relative;
  }
  .frame-flex-base.button-action div.to-detail {
    -webkit-flex-basis: 32%;
        -ms-flex-preferred-size: 32%;
            flex-basis: 32%;
  }
  .frame-flex-base.room-reservation-data {
    margin-bottom: 0;
  }
  .frame-flex-separat.font-x-small {
    font-size: 1.2rem;
  }
  .frame-flex-separat.plan-detail-data {
    padding: 1.6rem;
    margin-top: 2.6rem;
  }
  .frame-flex-separat.plan-detail-data dl {
    font-size: 1.4rem;
  }
  .frame-flex-separat.plan-detail-data dl:first-child {
    margin-bottom: 8px;
  }
  .frame-flex-separat li {
    padding-right: .8rem;
  }
  .frame-flex-separat li::after {
    padding-right: .8rem;
  }
  .title-member-fee {
    margin: 0 0 1rem;
    text-align: right;
  }
  .title-member-fee .member-fee-mark {
    vertical-align: middle;
  }
  .img-thumbnail {
    -webkit-flex-basis: 26rem;
        -ms-flex-preferred-size: 26rem;
            flex-basis: 26rem;
  }
  .img-thumbnail.pc-plan-thumbnail {
    -webkit-flex-basis: 15rem;
        -ms-flex-preferred-size: 15rem;
            flex-basis: 15rem;
    position: relative;
    height: 9.2rem;
  }
  .img-thumbnail.pc-plan-thumbnail img {
    height: 9.2rem;
  }
  .img-thumbnail img {
    height: 18rem;
  }
  .img-thumbnail + div {
    -webkit-flex-basis: calc(100% - 17rem);
        -ms-flex-preferred-size: calc(100% - 17rem);
            flex-basis: calc(100% - 17rem);
  }
  .room-plan .tab-box {
    margin: 0 auto;
    max-width: 1120px;
  }
  .room-plan .tab-box > div {
    font-size: 1.6rem;
  }
  .room-plan .tab-box > div .number {
    font-size: 1.4rem;
  }
  .room-tab-frame {
    background-color: #f5f5f5;
    padding-top: 8px;
    padding-bottom: 24px;
  }
  .room-tab-frame .tab-stage {
    max-width: 1120px;
    margin: 0 auto;
    background: none;
  }
  .hotel-box {
    background-color: #ffffff;
    margin: 0 0 16px;
    border-bottom: none;
  }
  .hotel-box.root-continue {
    padding: 2.4rem 3.2rem;
  }
  .hotel-box .room-tag-label {
    margin-bottom: 0;
  }
  .display-more-button {
    font-size: 1.6rem;
    border-top: 1px solid #C6C6C6;
  }
  .display-more-button a {
    padding-top: 1.6rem;
  }
  .area-continue {
    padding-top: 1.6rem;
    background-color: #fff;
  }
  .continue-wrap {
    font-size: 1.6rem;
  }
  .continue-open {
    bottom: -.6rem;
  }
  .fee-payment {
    font-size: 2.4rem;
  }
  .btn-default {
    font-weight: bold;
  }
  .root-room-pc-modal {
    max-width: 96rem;
  }
  .root-room-pc-modal .modal-container {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    max-height: 100%;
    height: 90%;
  }
  .root-room-pc-modal .modal-container.tab-content {
    height: calc(100% - 5%) !important;
  }
  .root-room-pc-modal .modal-container .content-body {
    margin: 1.6rem 2rem 0 4rem;
    height: calc(100% - 35.5vw);
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal {
    padding: 0;
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal .tab-content {
    padding: 1.6rem 4rem;
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal .content-body {
    padding-right: 0;
    margin: 0;
    height: calc(100% - 8.8rem);
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal .content-body::-webkit-scrollbar {
    display: none;
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal .content-body.scroll-all .room-detail-article {
    padding: 1.6rem 4rem;
  }
  .root-room-pc-modal .modal-container.wrap-plan-modal .anchor-link {
    padding: 1.6rem 2.4rem 0;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
  .root-room-pc-modal .room-detail-article .result-hotel {
    height: 35rem;
    position: relative;
  }
  .root-room-pc-modal .room-detail-article .result-hotel .icon-red {
    position: absolute;
    top: 1rem;
    left: 1rem;
  }
  .root-room-pc-modal .plan-fee {
    line-height: 1.4;
  }
  .root-room-pc-modal .plan-fee .fee-member-rate {
    font-size: 1.2rem;
  }
  .tab-screen-modal {
    position: fixed;
    top: 3.2rem;
    right: 3.2rem;
  }
  .plan-tab-modal {
    height: calc(100% - 6.9rem);
  }
  .plan-tab-modal h3 {
    font-size: 2.4rem;
    margin: 0 0 1.6rem;
  }
  .plan-tab-modal .hotel-box {
    padding: 0;
    border-bottom: 5px solid #f5f5f5;
  }
  .room-tag-label {
    margin: 0 0 0.8rem;
  }
  .screen-member .plan-list-sec01,
  .screen-member .plan-list-sec02,
  .screen-member .plan-list-sec03 {
    min-height: 11rem;
  }
  .on-zoom01 {
    display: block;
    height: 18rem;
  }
  .on-zoom01:after {
    content: "";
    background: url("/stcontents/img/common/icon-big.svg");
    background-size: contain;
    width: 3rem;
    height: 3rem;
    position: absolute;
    bottom: 0;
    right: 0;
    pointer-events: none;
  }
  .on-zoom01:hover:after {
    background: url("/stcontents/img/common/hover-icon-big.svg");
    background-size: contain;
  }
  .cancel-rate {
    display: inline-block;
    margin-left: 1rem;
  }
}

@media (max-width: 1023px) {
  .result-hotel .js-slick-slider > div a::before {
    display: none;
  }
}

@media (min-width: 1024px) {
  .root-room-pc-modal .btn-slide-arrow .slick-next {
    left: auto;
    right: 1rem;
  }
  .root-room-pc-modal .result-hotel {
    height: 40rem;
  }
  .root-room-pc-modal .result-hotel .js-slick-slider > div {
    max-width: 100%;
  }
  .root-room-pc-modal .modal-container .content-body {
    height: calc(100% - 41.5rem);
  }
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .frame-flex-base-pc .plan-list-sec01 {
    -webkit-flex-basis: 50vw;
        -ms-flex-preferred-size: 50vw;
            flex-basis: 50vw;
    padding-right: 0;
  }
  .frame-flex-base-pc .plan-list-sec01 .frame-flex-base {
    display: block;
  }
  .frame-flex-base-pc .plan-list-sec02 {
    -webkit-flex-basis: 33vw;
        -ms-flex-preferred-size: 33vw;
            flex-basis: 33vw;
  }
  .frame-flex-base-pc .plan-list-sec02 .plan-fee {
    padding-right: 1rem;
  }
  .frame-flex-base-pc .plan-list-sec03 {
    -webkit-flex-basis: 22vw;
        -ms-flex-preferred-size: 22vw;
            flex-basis: 22vw;
    padding-left: 1rem;
  }
  .frame-flex-base-pc .plan-list-sec03 .btn-small {
    font-size: 1.3vw;
    padding: 0 0.2rem;
  }
  .room-tag-label .tag-label {
    font-size: 1vw;
    padding: 3px 1.1vw 4px;
  }
  .room-top.frame-flex-base-pc {
    display: block;
  }
  .plan-stage .plan-list-sec01 .pc-plan-thumbnail {
    width: 15rem;
  }
  .plan-stage .plan-list-sec01 .pc-plan-thumbnail + div {
    margin-right: 1rem;
  }
}

コンシェルジュ専用プラン
*/
.concierge-box {
  width: 100%;
  padding-bottom: 24px !important;
}
.concierge-box .info .price-area {
  flex-shrink: 0;
}
.concierge-box .announce {
  width: 100%;
  height: 100%;
  padding-right: 10px;
  font-size: 14px;
  color: #757575;
}
.concierge-box .announce .text {
  margin-bottom: 0;
  display: flex;
  align-items: center;
}
.concierge-box .announce strong {
  margin-right: 8px;
  vertical-align: middle;
  font-weight: bold;
  font-size: 16px;
  color: #333;
}
.concierge-box .announce strong:first-child:after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1em;
  padding-right: 8px;
  border-right: 1.5px solid #FF503E;
  vertical-align: middle;
}
.concierge-box .announce strong:nth-child(2) {
  font-size: 20px;
}
.concierge-box .announce .note {
  font-size: 12px;
}
.concierge-box .announce .note a:hover {
  opacity: 1;
  color: #0066CC;
  text-decoration: none;
}
@media screen and (max-width: 900px){
  .concierge-box .announce .text {
    display: block;
  }
  .concierge-box .announce .text span {
    display: block;
    margin-bottom: 8px;
  }
}
@media screen and (max-width: 767px){
  .concierge-box .announce {
    padding-right: 0;
  }
  .concierge-box .announce .text {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-left: 2px solid #FF503E;
    padding-left: 8px;
    line-height: 1.3;
    margin-bottom: 4px;
  }
  .concierge-box .announce strong {
    margin: 0 !important;
    font-size: 14px;
  }
  .concierge-box .announce strong:first-child:after {
    content: none;
  }
  .concierge-box .announce .text span {
    margin-bottom: 0;
    font-size: 12px;
    letter-spacing: 0;
  }
  .concierge-box .announce .note {
    font-size: 10px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .concierge-box .announce .text > div:last-child {
    flex-shrink: 0;
    margin-left: 8px;
  }
  .concierge-box .announce .text .btn {
    width: 134px;
    height: 32px;
    font-size: 14px;
  }
}

/*
  衛生管理モーダル
*/
.health-modal .health-list .title {
  background: url(/stcontents/img/common/icon-health-1.svg) no-repeat 0 center;
  padding-left: 40px;
}

.health-modal .health-list ul {
  margin-bottom: 24px;
}

.health-modal .health-list ul li {
  background: url(/stcontents/img/common/icon-checked.svg) no-repeat 0 0;
  margin-bottom: 8px;
  padding-left: 40px;
}

.health-modal .health-list ul li:last-child {
  margin-bottom: 0;
}

.health-modal .health-list-2 .title {
  background-image: url(/stcontents/img/common/icon-health-2.svg);
}

.health-modal .health-list-3 .title {
  background-image: url(/stcontents/img/common/icon-health-3.svg);
}

.health-modal .health-list-4 .title {
  background-image: url(/stcontents/img/common/icon-health-4.svg);
}

.health-modal .health-list-5 .title {
  background-image: url(/stcontents/img/common/icon-health-5.svg);
}

.health-modal .health-list-6 .title {
  background-image: url(/stcontents/img/common/icon-health-6.svg);
}

/*
  クーポンの登録
*/
.detail-page .btn-coupon {
  position: absolute;
  top: 24px;
  left: calc(50% - 560px);
  z-index: 1;
}

.detail-page .btn-coupon a {
  background: #4F68C2;
  border: 1px solid #fff;
}

.detail-page .btn-coupon a:hover {
  background: #554B98;
  border: 1px solid #fff;
}

.detail-page .btn-coupon a:after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 4px;
  margin-bottom: -2px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.detail-page .coupon-modal .modal-container,
.detail-page .coupon-get-modal .modal-container,
.detail-page .coupon-multi-modal .modal-container {
  height: 560px;
  padding: 100px 40px 150px;
  border-radius: 8px;
}

.detail-page .coupon-modal .flex,
.detail-page .coupon-get-modal .flex,
.detail-page .coupon-multi-modal .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.detail-page .coupon-modal .flex > div,
.detail-page .coupon-get-modal .flex > div,
.detail-page .coupon-multi-modal .flex > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-page .coupon-modal .flex .border,
.detail-page .coupon-get-modal .flex .border,
.detail-page .coupon-multi-modal .flex .border {
  width: 1px;
  height: 24px;
  margin: 0 16px;
  border-right: 1px solid #C6C6C6;
}

.detail-page .coupon-modal .flex span,
.detail-page .coupon-get-modal .flex span,
.detail-page .coupon-multi-modal .flex span {
  margin-left: 8px;
}

.detail-page .coupon-modal .coupon-get-error,
.detail-page .coupon-get-modal .coupon-get-error,
.detail-page .coupon-multi-modal .coupon-get-error {
  width: 100%;
  height: 100%;
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 50;
  background: rgba(0, 0, 0, 0.05);
}

.detail-page .coupon-modal .coupon-get-error .inner,
.detail-page .coupon-get-modal .coupon-get-error .inner,
.detail-page .coupon-multi-modal .coupon-get-error .inner {
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: inline-block;
  padding: 24px 32px;
  border-radius: 8px;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
}

.detail-page .coupon-modal .coupon-get-error .btn-relux,
.detail-page .coupon-get-modal .coupon-get-error .btn-relux,
.detail-page .coupon-multi-modal .coupon-get-error .btn-relux {
  padding: 0 24px;
}

.detail-page .coupon-modal .coupon-get-error .js-modal-close,
.detail-page .coupon-get-modal .coupon-get-error .js-modal-close,
.detail-page .coupon-multi-modal .coupon-get-error .js-modal-close {
  background-image: none;
  position: relative;
  width: auto;
  top: inherit;
  left: inherit;
  right: inherit;
}

@media screen and (max-width: 767px) {
  .detail-page .coupon-modal .coupon-get-error .inner,
  .detail-page .coupon-get-modal .coupon-get-error .inner,
  .detail-page .coupon-multi-modal .coupon-get-error .inner {
    max-width: 100%;
    width: 300px;
    padding: 16px 16px;
  }
  .detail-page .coupon-modal .coupon-get-error .btn-relux,
  .detail-page .coupon-get-modal .coupon-get-error .btn-relux,
  .detail-page .coupon-multi-modal .coupon-get-error .btn-relux {
    height: 40px;
    padding: 0 40px;
  }
}

.detail-page .coupon-modal .content-body p {
  color: #0F0A64;
}

.detail-page .coupon-modal .content-body p:first-child {
  font-size: 2.4rem;
  margin-bottom: 0 !important;
}

@media screen and (max-width: 767px) {
  .detail-page .coupon-modal .content-body p:first-child {
    font-size: 1.4rem;
  }
}

.detail-page .coupon-get-modal .modal-container {
  padding: 32px 40px 24px;
}

.detail-page .coupon-get-modal .content-body p:nth-child(2) {
  color: #0F0A64;
}

.detail-page .coupon-get-modal .code-box {
  display: inline-block;
  padding: 8px 24px 12px;
}

.detail-page .coupon-get-modal .code-box .clip-btn {
  text-decoration: underline;
  color: inherit;
}

.detail-page .coupon-get-modal .code-box .clip-btn.clicked {
  text-decoration: none;
  color: #757575;
}

.detail-page .coupon-get-modal .code-box .clip-btn:hover {
  text-decoration: none;
}

.detail-page .coupon-get-modal .code-box .clip-btn img {
  width: 24px;
  height: 24px;
  vertical-align: top;
}

.detail-page .coupon-get-modal .notice-box {
  height: 192px;
  overflow-y: auto;
}

.detail-page .coupon-get-modal .notice-box ul {
  padding-left: 1.2em;
}

.detail-page .coupon-get-modal .notice-box ul li {
  margin-bottom: 8px;
  list-style: disc;
}

.detail-page .coupon-get-modal .btn-wide {
  min-width: 187px;
  height: 40px;
  font-size: 1.4rem;
}

.detail-page .coupon-multi-modal .modal-container {
  padding: 40px 20px 50px 65px;
}

.detail-page .coupon-multi-modal .coupon-list {
  height: 380px;
  padding-right: 20px;
  overflow-y: auto;
}

.detail-page .coupon-multi-modal .coupon-list::-webkit-scrollbar {
  width: 4px;
}

.detail-page .coupon-multi-modal .coupon-list::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.detail-page .coupon-multi-modal .coupon-list::-webkit-scrollbar-thumb {
  background-color: #C6C6C6;
}

.detail-page .coupon-multi-modal .coupon-list .font-xxxx-large {
  line-height: 1;
}

.detail-page .coupon-multi-modal .coupon-list .disabled {
  pointer-events: none;
  color: #C6C6C6;
}

.detail-page .coupon-multi-modal .coupon-list .disabled .coupon-item {
  color: #C6C6C6;
}

.detail-page .coupon-multi-modal .coupon-list .disabled .icon-disabled {
  display: inline-block;
  padding: 0px 10px;
  height: 24px;
  border: 1px solid #333333;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 2px;
  color: #333;
}

.detail-page .coupon-multi-modal .coupon-list .disabled .btn-coupon-get a {
  background: #C6C6C6;
  border-color: #C6C6C6;
  color: #fff;
}

.detail-page .coupon-multi-modal .flex {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.detail-page .coupon-multi-modal .coupon-item {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #0F0A64;
}

.detail-page .coupon-multi-modal .coupon-item > div {
  display: block;
}

.detail-page .coupon-multi-modal .btn-coupon-get a {
  min-width: 172px;
  height: 48px;
}

@media screen and (max-width: 1120px) {
  .detail-page .btn-coupon {
    left: 16px;
  }
}

@media screen and (max-width: 1024px) {
  .detail-page .coupon-modal .flex span,
  .detail-page .coupon-get-modal .flex span,
  .detail-page .coupon-multi-modal .flex span {
    display: block;
  }
  .detail-page .coupon-modal .flex .border,
  .detail-page .coupon-get-modal .flex .border,
  .detail-page .coupon-multi-modal .flex .border {
    height: 16px;
  }
}

@media screen and (max-width: 767px) {
  .detail-page .btn-coupon {
    top: 16px;
  }
  .detail-page .btn-coupon a {
    height: 32px;
  }
  .detail-page .coupon-modal .modal-container,
  .detail-page .coupon-get-modal .modal-container,
  .detail-page .coupon-multi-modal .modal-container {
    height: 100%;
    padding: 20px 16px 20px;
    border-radius: 0;
  }
  .detail-page .coupon-modal .js-modal-close.float,
  .detail-page .coupon-get-modal .js-modal-close.float,
  .detail-page .coupon-multi-modal .js-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-btn.png);
    width: 32px;
    height: 32px;
  }
  .detail-page .coupon-modal .flex,
  .detail-page .coupon-get-modal .flex,
  .detail-page .coupon-multi-modal .flex {
    display: block;
    color: #757575;
    margin-bottom: 24px;
  }
  .detail-page .coupon-modal .flex > div,
  .detail-page .coupon-get-modal .flex > div,
  .detail-page .coupon-multi-modal .flex > div {
    display: block;
  }
  .detail-page .coupon-modal .flex span,
  .detail-page .coupon-get-modal .flex span,
  .detail-page .coupon-multi-modal .flex span {
    font-size: 1.6rem;
    color: #333;
  }
  .detail-page .coupon-modal .border,
  .detail-page .coupon-get-modal .border,
  .detail-page .coupon-multi-modal .border {
    border-right: unset !important;
  }
  .detail-page .coupon-modal .btn-coupon-get,
  .detail-page .coupon-get-modal .btn-coupon-get,
  .detail-page .coupon-multi-modal .btn-coupon-get {
    position: absolute;
    left: 16px;
    bottom: 40px;
    width: calc(100vw - 32px);
  }
  .detail-page .coupon-get-modal .modal-container .content-body {
    margin-top: 90px;
    padding-bottom: 90px;
  }
  .detail-page .coupon-get-modal .modal-container-inner {
    height: 100%;
  }
  .detail-page .coupon-get-modal .btn-double {
    background: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 16px 16px;
    z-index: 1;
    -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.08);
  }
  .detail-page .coupon-get-modal .btn-double .btn-wide {
    min-width: 0;
  }
  .detail-page .coupon-get-modal .notice-box {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .detail-page .coupon-multi-modal {
    text-align: center;
  }
  .detail-page .coupon-multi-modal .modal-container {
    display: block;
    padding: 50px 0 0;
  }
  .detail-page .coupon-multi-modal .coupon-list {
    height: auto;
    padding: 0 0 30px;
    overflow-y: hidden;
  }
  .detail-page .coupon-multi-modal .coupon-list .disabled .icon-disabled {
    height: 20px;
    padding: 0 4px;
    font-size: 1rem;
  }
  .detail-page .coupon-multi-modal .coupon-list .disabled .flex, .detail-page .coupon-multi-modal .coupon-list .disabled span {
    color: #c6c6c6;
  }
  .detail-page .coupon-multi-modal .btn-coupon-get {
    position: relative;
    left: inherit;
    bottom: inherit;
    margin: 24px auto;
  }
  .detail-page .coupon-multi-modal .btn-coupon-get a {
    max-width: 400px;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    font-size: 1.4rem;
  }
}

.detail-page .kv-slider-inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .detail-page .room-plan .result-hotel .slick-counter {
    display: none !important;
  }
}

.detail-gallery .btn-plan,
.detail-gallery-2 .btn-plan {
  height: 104px;
}

.detail-gallery .btn-plan > div,
.detail-gallery-2 .btn-plan > div {
  background: #fff;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1;
  padding: 16px 16px;
}

.detail-gallery .btn-plan.static > div,
.detail-gallery-2 .btn-plan.static > div {
  position: relative;
  margin-top: 32px;
}

.detail-gallery .photo-modal,
.detail-gallery-2 .photo-modal {
  display: none;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow-y: auto;
  z-index: 1000;
  padding-bottom: 80px;
}

.detail-gallery .photo-modal figure,
.detail-gallery-2 .photo-modal figure {
  line-height: 0;
  margin-bottom: 2px;
}

.detail-gallery .photo-modal figure img,
.detail-gallery-2 .photo-modal figure img {
  width: 100%;
  height: auto;
}

.detail-gallery .photo-modal a,
.detail-gallery-2 .photo-modal a {
  pointer-events: none;
}

.detail-gallery .photo-modal a img,
.detail-gallery-2 .photo-modal a img {
  width: 100%;
  height: auto;
}

.detail-gallery .photo-modal .btn-close,
.detail-gallery-2 .photo-modal .btn-close {
  background: url(/stcontents/img/common/icon-close-3.svg) no-repeat 0 0;
  background-size: contain;
  width: 34px;
  height: 34px;
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .detail-gallery main.modal-on {
    -webkit-filter: none !important;
            filter: none !important;
  }
  .detail-gallery .lb-close {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .detail-gallery-2 .pswp__zoom-wrap {
    width: 80vw;
    height: 70vh;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) !important;
  }
  .detail-gallery-2 .pswp__img {
    display: block;
    object-fit: contain;
    width: 100% !important;
    height: 100% !important;
    border: none;
  }
}

/*
  不揃いタイル表示
*/
.detail-gallery {
  /*
@media (max-width: 1024px) and (orientation: landscape){
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block !important;
  }

  .pswp__bg {
    background-color: #fff !important;
  }
  .pswp img {
    border: none;
    box-shadow: none;
    border-radius: 0;
  }
}
*/
}

.detail-gallery main {
  padding-top: 16px;
  padding-bottom: 8px;
  overflow: hidden;
}

.detail-gallery .title-box {
  position: relative;
}

.detail-gallery .title-box .title-grade {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-gallery .title-box .icon-question {
  margin: 0 4px;
}

.detail-gallery .sub-header span {
  margin-right: 4px;
}

.detail-gallery .sub-header h1 a {
  color: inherit !important;
}

.detail-gallery .sub-header .address {
  width: 100%;
}

.detail-gallery .photo-gallery {
  overflow: hidden;
}

.detail-gallery .photo-gallery .wrap {
  max-width: none;
  padding-left: 8px;
}

.detail-gallery .photo-gallery .grid-wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
      grid-template-columns: repeat(5, 1fr);
  grid-auto-rows: 222px;
  grid-gap: 2px;
}

.detail-gallery .photo-gallery .grid {
  grid-column: span 1;
  grid-row: span 1;
  overflow: hidden;
}

.detail-gallery .photo-gallery .grid:nth-child(24n+1), .detail-gallery .photo-gallery .grid:nth-child(24n+16) {
  grid-column: span 2;
  grid-row: span 2;
}

@media screen and (max-width: 767px) {
  .detail-gallery .photo-gallery .grid:nth-child(24n+1), .detail-gallery .photo-gallery .grid:nth-child(24n+16) {
    grid-column: span 1;
    grid-row: span 1;
  }
  .detail-gallery .photo-gallery .grid:nth-child(12n+1), .detail-gallery .photo-gallery .grid:nth-child(12n+8) {
    grid-column: span 2;
    grid-row: span 2;
  }
}

.detail-gallery .photo-gallery .grid img {
  max-width: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.detail-gallery .lightbox,
.detail-gallery .lightboxOverlay {
  width: 100% !important;
  height: auto !important;
}

.detail-gallery .lightboxOverlay {
  height: 100% !important;
}

.detail-gallery .lb-outerContainer {
  overflow: auto;
}

.detail-gallery .lb-outerContainer,
.detail-gallery .lb-container {
  width: 100% !important;
  height: auto !important;
  border: none;
  border-radius: 0;
}

.detail-gallery .lb-image {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  border: none;
  border-radius: 0;
}

.detail-gallery .lb-nav {
  width: 96%;
  position: fixed;
  left: 2%;
  height: calc(100% - 200px);
  top: 100px;
}

.detail-gallery .lb-nav a.lb-prev {
  background-image: url(/stcontents/img/common/icon-arrow-left-white.svg);
  background-position: left 20px top 50%;
  background-size: 16px;
  width: 20%;
  left: 0;
  height: 100%;
  -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
}

.detail-gallery .lb-nav a.lb-prev:hover {
  background-image: url(/stcontents/img/common/left_Hover-2.svg);
  background-size: 16px;
}

.detail-gallery .lb-nav a.lb-next {
  background-image: url(/stcontents/img/common/icon-arrow-right-white.svg);
  background-position: right 20px top 50%;
  background-size: 16px;
  width: 20%;
  right: 0;
  height: 100%;
  -webkit-filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6));
}

.detail-gallery .lb-nav a.lb-next:hover {
  background-image: url(/stcontents/img/common/right_Hover-2.svg);
  background-size: 16px;
}

.detail-gallery .lb-dataContainer {
  width: 100% !important;
  position: absolute;
  bottom: 26px;
  left: 0;
}

.detail-gallery .lb-data .lb-details {
  margin-top: 0;
}

.detail-gallery .lb-data .lb-number {
  display: inline-block !important;
}

.detail-gallery .lb-close {
  top: 24px;
  right: 16px;
}

@media (max-width: 1140px) {
  .detail-gallery .photo-gallery .grid-wrapper {
    grid-auto-rows: 19vw;
  }
}

@media (min-width: 768px) {
  .detail-gallery main {
    padding-top: 0;
    padding-bottom: 160px;
  }
  .detail-gallery .title-box .icon-question {
    margin: 0 8px;
  }
  .detail-gallery .sub-header .title-grade {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-gallery .sub-header span {
    margin-right: 8px;
  }
  .detail-gallery .sub-header h1 {
    text-decoration: underline;
    text-underline-position: under;
    text-decoration-thickness: 2px;
  }
  .detail-gallery .sub-header h1:hover {
    text-decoration: none;
  }
  .detail-gallery .sub-header .address {
    padding-top: 15px;
  }
  .detail-gallery .lightbox,
  .detail-gallery .lightboxOverlay {
    height: 100% !important;
    top: 0 !important;
    left: 0 !important;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .detail-gallery .lb-outerContainer {
    overflow: auto;
  }
  .detail-gallery .lb-outerContainer,
  .detail-gallery .lb-container {
    width: auto !important;
    height: 100% !important;
    border: none;
    border-radius: 0;
  }
  .detail-gallery .lb-close {
    top: 30px;
    right: 48px;
  }
}

@media (max-width: 767px) {
  .detail-gallery .sub-header span + span {
    margin-left: -4px;
  }
  .detail-gallery .photo-gallery .grid-wrapper {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: calc(33.3vw - 22px);
    grid-gap: 2px;
  }
  .detail-gallery .lb-close {
    background: url(/stcontents/img/common/icon-close-2.svg) no-repeat 0 0;
    background-size: contain;
  }
  .detail-gallery .lb-image {
    width: 100% !important;
    height: auto !important;
    border: none;
  }
  .detail-gallery .lightboxOverlay {
    background: #fff;
  }
  .detail-gallery .lb-dataContainer {
    bottom: -40px;
  }
  .detail-gallery .lb-nav {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }
  .detail-gallery .lb-nav a {
    background: none !important;
    width: 50% !important;
  }
  .detail-gallery .lb-data .lb-number {
    display: inline-block !important;
    color: #fff;
  }
}

@media (max-width: 1024px) and (orientation: landscape) {
  .detail-gallery .lightbox, .detail-gallery .detail-gallery .lightboxOverlay {
    height: 100% !important;
  }
  .detail-gallery .lb-close {
    background: url(/stcontents/img/common/icon-close-2.svg) no-repeat 0 0;
    background-size: contain;
  }
  .detail-gallery .lb-outerContainer {
    background-color: #fff;
  }
  .detail-gallery .lb-data .lb-number {
    position: absolute;
    bottom: 12px;
    background: rgba(255, 255, 255, 0.25);
  }
  .detail-gallery .lb-dataContainer {
    bottom: 12px;
  }
  .detail-gallery .lb-image {
    width: auto !important;
    height: 100vh !important;
    -o-object-fit: inherit;
       object-fit: inherit;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .detail-gallery .pswp__bg {
    background-color: #fff !important;
  }
  .detail-gallery .pswp img {
    max-width: 100% !important;
    margin: 0;
    border: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 0;
  }
  .detail-gallery .pswp__ui .pswp__button--arrow--left,
  .detail-gallery .pswp__ui .pswp__button--arrow--right {
    display: none;
  }
}

/*
  通常タイル表示
*/
.detail-gallery-2 main {
  padding-top: 16px;
  padding-bottom: 8px;
  overflow: hidden;
}

.detail-gallery-2 .title-box {
  position: relative;
}

.detail-gallery-2 .title-box .title-grade {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.detail-gallery-2 .title-box .icon-question {
  margin: 0 4px;
}

.detail-gallery-2 .sub-header span {
  margin-right: 4px;
}

.detail-gallery-2 .sub-header h1 a {
  color: inherit !important;
}

.detail-gallery-2 .sub-header .address {
  width: 100%;
}

.detail-gallery-2 .photo-gallery {
  overflow: hidden;
}

.detail-gallery-2 .photo-gallery .wrap {
  max-width: none;
  padding-left: 16px;
}

.detail-gallery-2 .photo-gallery .grid-wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
      grid-template-columns: repeat(5, 1fr);
  grid-auto-rows: calc(33.3vw - 22px);
  grid-gap: 2px;
}

.detail-gallery-2 .photo-gallery .grid-wrapper .grid {
  grid-column: span 1;
  grid-row: span 1;
  overflow: hidden;
}

.detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(24n+1), .detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(24n+16) {
  grid-column: span 2;
  grid-row: span 2;
}

@media screen and (max-width: 767px) {
  .detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(24n+1), .detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(24n+16) {
    grid-column: span 1;
    grid-row: span 1;
  }
  .detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(12n+1), .detail-gallery-2 .photo-gallery .grid-wrapper .grid:nth-child(12n+8) {
    grid-column: span 2;
    grid-row: span 2;
  }
}

.detail-gallery-2 .photo-gallery .grid-wrapper .grid img {
  max-width: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.detail-gallery-2 .lb-close {
  background-image: url(/stcontents/img/common/icon-close-2.svg);
  background-size: contain;
  top: 24px;
  right: 16px;
}

.detail-gallery-2 .lb-dataContainer {
  display: block !important;
  opacity: 1 !important;
}

.detail-gallery-2 .pswp__ui .pswp__top-bar {
  z-index: 10;
}

.detail-gallery-2 .pswp__ui .pswp__button--arrow--left {
  background-image: url(/stcontents/img/common/icon-arrow-left-black.svg);
  background-position: left 4vw top 50%;
  background-size: 16px;
  width: 20%;
  left: 0;
  height: calc(100% - 200px);
  -webkit-filter: none;
          filter: none;
}

.detail-gallery-2 .pswp__ui .pswp__button--arrow--left:hover {
  opacity: 0.4 !important;
  background-size: 16px;
}

.detail-gallery-2 .pswp__ui .pswp__button--arrow--right {
  background-image: url(/stcontents/img/common/icon-arrow-right-black.svg);
  background-position: right 4vw top 50%;
  background-size: 16px;
  width: 20%;
  right: 0;
  height: calc(100% - 200px);
  -webkit-filter: none;
          filter: none;
}

.detail-gallery-2 .pswp__ui .pswp__button--arrow--right:hover {
  opacity: 0.4 !important;
  background-size: 16px;
}

@media (min-width: 768px) {
  .detail-gallery-2 main {
    padding-top: 0;
    padding-bottom: 160px;
  }
  .detail-gallery-2 .title-box .icon-question {
    margin: 0 8px;
  }
  .detail-gallery-2 .sub-header .title-grade {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .detail-gallery-2 .sub-header span {
    margin-right: 8px;
  }
  .detail-gallery-2 .sub-header h1 {
    text-decoration: underline;
    text-underline-position: under;
    text-decoration-thickness: 2px;
  }
  .detail-gallery-2 .sub-header h1:hover {
    text-decoration: none;
  }
  .detail-gallery-2 .sub-header .address {
    padding-top: 15px;
  }
}

@media (min-width: 1024px) {
  .detail-gallery-2 .photo-gallery .wrap {
    padding-left: 16px;
  }
  .detail-gallery-2 .photo-gallery .grid-wrapper {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[5];
        grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: 222px;
    grid-gap: 2px;
  }
  .detail-gallery-2 .lb-close {
    top: 30px;
    right: 48px;
  }
  .detail-gallery-2 .lb-outerContainer {
    margin-top: 24px;
  }
}

@media (max-width: 767px) {
  .detail-gallery-2 .sub-header span + span {
    margin-left: -4px;
  }
  .detail-gallery-2 .pswp__bg {
    background-color: #fff !important;
  }
  .detail-gallery-2 .pswp img {
    max-width: 100% !important;
    margin: 0;
    border: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 0;
  }
  .detail-gallery-2 .pswp__ui .pswp__button--arrow--left,
  .detail-gallery-2 .pswp__ui .pswp__button--arrow--right {
    display: none;
  }
}

@media screen and (max-width: 1280px) {
  .detail-gallery .photo-gallery .grid-wrapper,
  .detail-gallery-2 .photo-gallery .grid-wrapper {
    grid-auto-rows: 18vw;
  }
}

@media screen and (max-width: 767px) {
  .detail-gallery .photo-gallery .grid-wrapper,
  .detail-gallery-2 .photo-gallery .grid-wrapper {
    -ms-grid-columns: (1fr)[3] !important;
        grid-template-columns: repeat(3, 1fr) !important;
    grid-auto-rows: 30vw;
  }
}

.detail-gallery .photo-gallery.zoom-photo .grid-wrapper .grid img,
.detail-gallery-2 .photo-gallery.zoom-photo .grid-wrapper .grid img {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transform-origin: center;
          transform-origin: center;
}

.benefits-modal-top .font-xxx-large {
  font-size: 2rem;
}

.sub-diamond .key-visual {
  height: 43rem;
  background: url(/stcontents/img/sub-page/diamond/bg-top-sp.png) no-repeat left top, url(/stcontents/img/sub-page/diamond/bg-bottom-sp.png) no-repeat right bottom;
  background-size: contain;
  background-color: #0F0A64;
}

.sub-diamond .key-visual .inner {
  left: 0;
  top: auto;
  bottom: 0;
  text-align: left;
  -webkit-transform: none;
          transform: none;
  width: 100%;
  padding: 0 16px;
}

.sub-diamond .key-visual h1 {
  margin-bottom: 8px;
  font-size: 2.4rem;
}

.sub-diamond .key-visual h1 img {
  width: 300px;
  height: auto;
}

.sub-diamond .key-visual .h1-bottom-text {
  font-size: 1.6rem;
  text-shadow: none;
  margin-bottom: 16px;
}

.sub-diamond .key-visual .h1-bottom-sns {
  text-align: right;
}

@media (min-width: 768px) {
  .sub-diamond .key-visual {
    background: url(/stcontents/img/sub-page/diamond/bg-top.png) no-repeat left top, url(/stcontents/img/sub-page/diamond/bg-bottom.png) no-repeat right bottom;
    background-size: contain;
    background-color: #0F0A64;
  }
  .sub-diamond .key-visual h1 {
    font-size: 3.6rem;
    line-height: 1.56;
    text-align: center;
    position: relative;
    bottom: 10px;
  }
  .sub-diamond .key-visual h1 img {
    width: 560px;
  }
  .sub-diamond .key-visual .h1-bottom-text {
    margin-bottom: 8px;
    text-align: center;
  }
  .sub-diamond .key-visual .h1-bottom-sns {
    position: relative;
    top: 15px;
  }
}

@media (max-width: 536px) {
  .sub-diamond .key-visual {
    background: url(/stcontents/img/sub-page/diamond/bg-top-sp.png) no-repeat left top, url(/stcontents/img/sub-page/diamond/bg-bottom-sp-min.png) no-repeat right bottom;
    background-size: cover;
    background-color: #0F0A64;
  }
}

.mode-au .key-visual {
  background: url(/stcontents/img/sub-page/keyvisual-smps.jpg) center center no-repeat;
  background-size: cover;
}

.mode-au .benefits-modal-top {
  background-color: #D86036;
}

.mode-au .benefits-modal-box li::before {
  color: #D86036;
}

.mode-hotel .key-visual {
  background: url(/stcontents/img/sub-page/mainvisual-06.jpg) center center no-repeat;
  background-size: cover;
}

.mode-hotel .key-visual:before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.mode-hotel .key-visual .inner {
  width: 100%;
  text-align: center;
  top: inherit;
  bottom: 107px !important;
  -webkit-transform: none;
          transform: none;
}

.mode-hotel .key-visual .inner .title {
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 8px;
}

.mode-hotel .key-visual .inner .title span {
  height: 64px;
  font-size: 3.4rem;
  text-shadow: 1px 1px 1px #000;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 100px;
  padding: 0px 20px;
  margin-right: 8px;
}

.mode-hotel .key-visual .inner .title h1 {
  font-size: 5.2rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 0px;
  line-height: 1.3;
}

.mode-hotel .key-visual .inner h2 {
  text-shadow: 1px 1px 1px #000;
}

.mode-selections .key-visual {
  background: url(/stcontents/img/sub-page/mainvisual-03.jpg) center center no-repeat;
  background-size: cover;
}

.mode-selections .key-visual .inner {
  margin: 1.6rem;
}

.mode-selections .h1-bottom-text {
  text-shadow: 1px 1px 1px #000;
  margin-bottom: 13px;
}

.mode-selections .benefits-h1 {
  background: none;
}

.mode-selections .benefits-h1 h1 span {
  display: block;
}

.mode-selections .benefits-h1-bottom {
  padding: 0;
}

.mode-selections h1 img {
  width: auto;
  height: 60px;
}

.mode-selections .sub-box-02 {
  margin-bottom: 16px;
  height: 302px;
  position: relative;
  width: 49.3%;
  border-radius: 8px;
  -webkit-filter: drop-shadow(0px 3px 4px rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0px 3px 4px rgba(0, 0, 0, 0.15));
}

.mode-selections .sub-box-02 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover !important;
  object-fit: cover !important;
  border-radius: 8px;
}

.mode-selections .sub-box-02 .sub-box-detail-02 {
  width: 100%;
  max-height: 100%;
  position: absolute;
  bottom: 0;
}

.mode-selections .sub-box-02 .sub-box-detail-02 .sub-box-title {
  width: 100%;
  color: #fff;
  padding: 32px 24px 24px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.7)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.7));
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));
  border-radius: 0 0 8px 8px;
}

.mode-selections .sub-box-02 .sub-box-bottom {
  display: none;
}

.mode-selections .sub-box-02:hover {
  cursor: pointer;
}

.mode-selections .sub-box-02:hover .sub-box-title {
  border-radius: 0;
  padding: 0 24px 16px;
  max-height: 118px;
}

.mode-selections .sub-box-02:hover .sub-box-title .sub-box-title-text {
  height: auto;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-bottom: 0;
}

.mode-selections .sub-box-02:hover .sub-box-bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 16px 16px 24px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0 0 8px 8px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-height: 552px;
}

.mode-selections .sub-box-02:hover .sub-box-bottom .sub-box-bottom-text {
  width: 100%;
  height: auto;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
  color: #000;
  margin-bottom: 0;
}

.mode-selections .sub-box-02:hover .sub-box-bottom img {
  width: 24px;
  height: 24px;
  margin-left: 8px;
}

.mode-selections .navigation {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 24px auto 154px;
  font-size: 1.6rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mode-selections .navigation a,
.mode-selections .navigation span {
  display: inline-block;
  margin: 0 4px;
  text-decoration: none;
  border-radius: 4px;
  background: #F5F5F5;
  width: 40px;
  height: 44px;
  padding: 13px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #757575;
  line-height: 1;
  text-align: center;
}

.mode-selections .navigation .dots {
  width: 16px;
}

.mode-selections .navigation a:hover {
  color: #554B98;
  font-weight: bold;
}

.mode-selections .navigation .current {
  font-weight: bold;
  color: #0F0A64;
}

.mode-selections .navigation .arrow-left,
.mode-selections .navigation .arrow-right {
  height: 44px;
  width: 24px;
  display: inline-block;
  padding: 10px 0;
}

.mode-selections .navigation .arrow-left a,
.mode-selections .navigation .arrow-right a {
  background: none;
}

.mode-selections .navigation .arrow-left {
  margin-right: 4px;
  background: url(/stcontents/img/sub-page/navigation-left.svg) no-repeat center center;
}

.mode-selections .navigation .arrow-left:hover {
  background: url(/stcontents/img/sub-page/navigation-left-hover.svg) no-repeat center center;
}

.mode-selections .navigation .arrow-left.disabled {
  background: url(/stcontents/img/sub-page/navigation-left-disabled.svg) no-repeat center center;
}

.mode-selections .navigation .arrow-right {
  margin-left: 4px;
  background: url(/stcontents/img/sub-page/navigation-right.svg) no-repeat center center;
}

.mode-selections .navigation .arrow-right:hover {
  background: url(/stcontents/img/sub-page/navigation-right-hover.svg) no-repeat center center;
}

.mode-selections .navigation .arrow-right.disabled {
  background: url(/stcontents/img/sub-page/navigation-right-disabled.svg) no-repeat center center;
}

@media screen and (max-width: 767px) {
  .mode-selections .navigation {
    margin: 24px 16px 0;
  }
  .mode-selections .navigation a,
  .mode-selections .navigation span {
    margin: 0 5px;
    width: 34px;
    height: 40px;
    font-size: 1.4rem;
    padding: 12px 0;
  }
  .mode-selections .navigation .arrow-left,
  .mode-selections .navigation .arrow-right {
    height: 40px;
    padding: 8px 0;
  }
  .mode-selections .navigation .arrow-left {
    margin-right: 11px;
  }
  .mode-selections .navigation .arrow-right {
    margin-left: 11px;
  }
}

@media (max-width: 767px) {
  .mode-hotel .key-visual {
    height: 430px;
  }
  .mode-hotel .key-visual .inner {
    bottom: 72px !important;
    text-align: left;
  }
  .mode-hotel .key-visual .inner .title {
    display: block;
    margin: 0;
  }
  .mode-hotel .key-visual .inner .title span {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 36px;
    margin: 0;
    font-size: 2rem;
    padding: 0 10px;
  }
  .mode-hotel .key-visual .inner .title h1 {
    width: 100%;
    font-size: 2.6rem;
    line-height: 48px;
  }
  .mode-hotel .key-visual .inner h2 {
    font-size: 16px;
    line-height: 2.8rem;
  }
  .mode-selections .h1-bottom-text {
    margin-bottom: 16px !important;
  }
}

.selections-detail .key-visual {
  height: 390px;
  overflow: hidden;
}

.selections-detail .key-visual .kv-bg {
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  max-width: inherit;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.selections-detail .key-visual .inner {
  position: absolute;
  top: 75%;
}

.selections-detail .theme-pagination-wrap {
  position: relative;
}

.selections-detail .theme-pagination-wrap .default-link-black {
  position: absolute;
  left: 16px;
  top: 4px;
}

.selections-detail .theme-pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 300px;
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 767px) {
  .selections-detail .key-visual {
    height: 375px;
  }
  .selections-detail .key-visual .inner {
    position: absolute;
    top: 62%;
    text-align: left !important;
  }
  .selections-detail .key-visual h1, .selections-detail .key-visual p {
    text-shadow: 1px 1px 1px #000;
  }
  .selections-detail .theme-pagination {
    max-width: 100%;
  }
}

.back-blur-black {
  -webkit-filter: blur(100px);
          filter: blur(100px);
  background-color: #000000;
  height: 147px;
  width: 100%;
  bottom: 0;
  position: absolute;
}

.result-list.mode-select-detail {
  padding-top: 1.6rem;
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}

.result-list.mode-select-detail .hotel-info {
  color: #333333;
  position: static;
  width: 100%;
  padding: 1.6rem;
}

.result-list.mode-select-detail .result-hotel {
  height: auto;
  border-radius: 8px;
}

.result-list.mode-select-detail .result-hotel .hotel-info .name {
  text-shadow: none;
}

.result-list.mode-select-detail .result-hotel .hotel-info .name,
.result-list.mode-select-detail .result-hotel .hotel-info .address {
  flex-shrink: 0;
}
.result-list.mode-select-detail .result-hotel .hotel-info .hotel-grade img {
  filter: none;
}

.select-detail-photo {
  height: 18.4rem;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  position: relative;
}

.select-detail-photo > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.select-detail-photo .float-p {
  margin-bottom: 0;
}

.select-detail-photo .float-p img {
  width: 2rem;
  height: 2rem;
}

.tag-smartpass {
  margin: 0;
  padding: 8px 16px;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 100px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 16px;
  font-size: 20px;
  font-weight: bold;
  text-shadow: 1px 1px 1px #000000;
}

@media (max-width: 767px) {
  .tag-smartpass {
    padding: 4px 8px;
    font-size: 16px;
    display: block;
    margin: 0;
  }
}

.benefits-h1 {
  background-color: #32315F;
  padding: 1.6rem;
  display: inline-block;
}

.benefits-h1 h1 {
  text-shadow: none;
}

.benefits-h1-bottom {
  padding: .5rem 0 0 1.6rem;
  text-align: right;
}

.benefits-h1-bottom p:last-child {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .benefits-h1-bottom {
    margin-bottom: 16px;
  }
}

.h1-bottom-text {
  text-shadow: 0 0 5px #000;
  margin: 0 auto 13px;
  max-width: 1120px;
}

.h1-bottom-text.long {
  max-width: 980px;
}

.select-detail-head h1 {
  margin: 2.4rem 0 .8rem;
}

.area-number {
  font-size: 1.4rem;
}

.root-sub-list, .root-main-foot {
  background-color: #f5f5f5;
  padding-top: .8rem;
  padding-bottom: 10rem;
}

.frame-sub-list {
  margin: 0 auto;
  padding: 0 1.6rem;
}

.frame-sub-list .sub-box-detail .price-box {
  line-height: 1;
  margin-bottom: 8px;
}

.root-main-foot {
  padding-bottom: 1rem !important;
}

.root-main-foot .bread-crumbs {
  padding: 0;
}

.sub-box {
  background-color: #ffffff;
  -webkit-filter: drop-shadow(0px 3px 4px rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0px 3px 4px rgba(0, 0, 0, 0.15));
  border-radius: .8rem;
  margin-bottom: .8rem;
}

.sub-box figure {
  position: relative;
  height: 18.4rem;
}

.sub-box figure::before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 50%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.sub-box figure .sub-img-photo {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: .8rem .8rem 0 0;
}

@media screen and (min-width: 768px) {
  .sub-box figure {
    height: 160px;
  }
}

.sub-box figure .frame-flex-base {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.sub-box figure .link-coupon:after {
  content: "";
  background: url("../img/common/icon-arrow-right-white-2.svg") no-repeat 0 0;
  background-size: contain;
  position: absolute;
  display: block;
  width: 1.3rem;
  height: 1.8rem;
  right: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-filter: drop-shadow(0px 2px 10px rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0px 2px 10px rgba(0, 0, 0, 0.1));
}

.frame-card-float {
  position: absolute;
  bottom: .8rem;
  left: 1.6rem;
  padding-right: 3rem;
  margin-bottom: 0;
}

.frame-card-float .icon-grade {
  height: 2rem;
}

.frame-card-float .line-clamp,
.frame-card-float .line-clamp-one {
  color: #ffffff;
  text-shadow: 1px 1px 1px #000000;
}

.frame-card-float > p:last-of-type {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .frame-card-float .icon-grade {
    height: 16px;
    width: auto;
  }
}

.line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.float-p {
  position: absolute;
  bottom: .8rem;
  left: 1.6rem;
  color: #ffffff;
  text-shadow: 1px 1px 1px #000000;
  margin-bottom: 0;
}

.sub-box-detail {
  padding: .5rem 1.6rem 1.6rem;
}

.sub-box-detail p {
  margin-top: .5rem;
  margin-bottom: 0;
}

.sub-box-detail .frame-flex-base.button-action {
  margin: 1rem 0 0;
}

.sub-box-detail .frame-flex-base.button-action > div {
  -webkit-flex-basis: calc(100% / 2 - .4rem);
      -ms-flex-preferred-size: calc(100% / 2 - .4rem);
          flex-basis: calc(100% / 2 - .4rem);
}

.coupon-acquired .frame-flex-base {
  color: #bfbfbf;
}

.coupon-acquired .btn-coupon {
  height: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.coupon-acquired .btn-coupon div {
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .coupon-acquired .sub-box-detail {
    position: relative;
  }
}

.rooot-benefits-modal .modal-container .contents {
  padding: 0;
}

.rooot-benefits-modal.common-modal .modal-container {
  padding: 0;
}

.rooot-benefits-modal.common-modal .modal-container .content-body {
  margin-top: 0;
}

.benefits-modal-top {
  background-color: #32315F;
  padding: 4rem 1.6rem 1.6rem;
  color: #ffffff;
}

.benefits-modal-main {
  padding: 0;
}

.benefits-modal-main .benefits-modal-box {
  padding-bottom: 1.6rem;
  margin-bottom: 1.6rem;
  border-bottom: solid 1px #c4c4c4;
}

.benefits-modal-main .text-link-gray {
  font-size: 1.4rem;
}

.benefits-modal-box li::before {
  color: #32315F;
}

.modal-container .contents ul.font-x-large > li {
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

.modal-container .contents ul.font-large > li {
  font-size: 1.4rem;
}

.list-check li, .list-attention li {
  padding-left: 1em;
  text-indent: -1em;
}

.list-check li::before, .list-attention li::before {
  content: "■";
}

.list-attention li::before {
  content: "・";
}

.btn-modal-close {
  background: none;
  width: auto;
  height: auto;
  position: absolute;
  left: 2rem !important;
  right: 2rem !important;
  bottom: 2rem;
  text-align: center;
  top: auto;
}

.btn-modal-close a {
  display: block;
}

.frame-coupon-detail:first-of-type {
  margin-bottom: .5rem;
}

.frame-coupon-detail:first-of-type dd {
  -webkit-flex-basis: auto !important;
      -ms-flex-preferred-size: auto !important;
          flex-basis: auto !important;
}

.frame-coupon-detail dt,
.frame-coupon-detail dd {
  -webkit-flex-basis: calc(100% / 2);
      -ms-flex-preferred-size: calc(100% / 2);
          flex-basis: calc(100% / 2);
}

.frame-coupon-detail dt.font-small {
  letter-spacing: 0;
}

.frame-coupon-detail dd {
  text-align: right;
}

.frame-coupon-detail.flex-basic-none dt,
.frame-coupon-detail.flex-basic-none dd {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
}

.frame-coupon-detail.flex-basic-none dd:nth-child(n + 2) {
  -webkit-flex-basis: 117px;
      -ms-flex-preferred-size: 117px;
          flex-basis: 117px;
  text-align: left;
}

.button-action.btn-coupon {
  margin: .8rem 0 0;
}

.button-action.btn-coupon a {
  width: 100%;
}

.flex-align {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flex-align .align-place {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.period-limited {
  margin-top: 1.6rem;
}

.period-limited dt.font-large {
  font-size: 1.6rem;
}

.period-limited dd.font-large {
  font-size: 1.4rem;
}

@media (max-width: 767px) {
  .mode-selections h1 {
    height: 32px;
    margin-bottom: 24px;
  }
  .mode-selections h1 img {
    height: 32px;
  }
  .mode-selections .benefits-h1 {
    padding: 0;
    position: relative;
    bottom: 50px;
  }
  .mode-selections .benefits-h1 h1 span.h1-selection {
    width: 80%;
  }
  .mode-selections .benefits-h1 h1 span.h1-selection img {
    width: 100%;
  }
  .mode-selections .sub-box-02 {
    width: 100%;
  }
  .mode-selections .sub-box-02:hover {
    background: none;
    padding: 0;
  }
  .mode-selections .sub-box-02:hover .sub-box-bottom {
    background: none;
    padding: 0;
    display: block;
  }
  .mode-selections .sub-box-02:hover .sub-box-bottom img {
    display: none;
  }
  .mode-selections .sub-box-02:hover .sub-box-bottom .sub-box-bottom-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mode-selections .sub-box-02 .sub-box-bottom {
    background: none;
    padding: 0;
    display: block;
  }
  .mode-selections .sub-box-02 .sub-box-bottom img {
    display: none;
  }
  .mode-selections .sub-box-02 .sub-box-bottom .sub-box-bottom-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
    font-size: 1.4rem;
  }
  .mode-selections .sub-box-02 .sub-box-detail-02 {
    position: absolute;
    right: 0;
    bottom: 16px;
    width: calc(100% - 16px);
    max-width: 560px;
    height: auto;
    max-height: 120px;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 8px;
    color: #000;
  }
  .mode-selections .sub-box-02 .sub-box-detail-02 .sub-box-title {
    background: none;
    padding: 0;
    color: #000;
    font-weight: bold;
  }
  .mode-selections .sub-box-02 .sub-box-detail-02 .sub-box-title .sub-box-title-text {
    margin-bottom: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mode-selections .bottom-text {
    text-align: left;
  }
  .mode-selections .sub-box-detail div > p:first-child {
    position: absolute;
    margin-top: -7.6rem;
    color: #ffffff;
  }
  .mode-selections .sub-box-detail .font-large {
    font-size: 1.4rem;
  }
  .mode-selections .float-p.font-large {
    font-size: 1.6rem;
  }
  .mode-selections .root-sub-list, .mode-selections .root-main-foot {
    padding-top: 1.6rem;
  }
  .mode-select-detail .h2-small {
    font-size: 2rem;
  }
  .mode-select-detail .address.font-large {
    font-size: 1.2rem;
  }
  .mode-select-detail .result-hotel {
    margin-bottom: .8rem;
  }
  .frame-coupon-detail:first-of-type {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .frame-coupon-detail:first-of-type dt {
    margin-right: 1.6rem;
    font-size: 1.6rem;
  }
  .frame-coupon-detail:first-of-type dd.font-x-large {
    font-size: 2rem;
  }
  .frame-coupon-detail:nth-of-type(n+2) {
    font-size: 1.4rem;
  }
  .frame-coupon-detail:nth-of-type(n+2) .font-small {
    font-size: 1.4rem;
  }
  .select-detail-head .font-large {
    font-size: 1.6rem;
  }
  .mode-au .benefits-h1 h1 {
    font-size: 2rem;
  }
  .mode-au .register {
    display: block !important;
  }
  .rooot-benefits-modal.common-modal .modal-container .content-body {
    padding: 1.6rem;
  }
  .rooot-benefits-modal .js-modal-close {
    background-image: url(/stcontents/img/common/icon-close-2-white.svg);
  }
  .rooot-benefits-modal .js-modal-close.float {
    background-image: url(/stcontents/img/common/icon-close-3.svg);
  }
}

@media (min-width: 768px) {
  .frame-wrap {
    margin: 0 auto;
    max-width: 1120px;
  }
  .rooot-benefits-modal p.font-x-large {
    font-size: 1.4rem;
  }
  .sub-diamond .key-visual,
  .type-page .key-visual {
    height: 40rem;
  }
  .sub-diamond .key-visual .inner,
  .type-page .key-visual .inner {
    bottom: 16px;
    max-width: 1120px;
    margin: auto;
    right: 0;
  }
  .benefits-h1 {
    padding: 1rem 13rem 1rem 0;
    position: relative;
  }
  .benefits-h1::before, .benefits-h1::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
  }
  .benefits-h1::before {
    right: 100%;
    background-color: #32315F;
  }
  .mode-hotel .benefits-h1::before {
    background-color: #0F0A64;
  }
  .mode-au .benefits-h1::before {
    background-color: #D86036;
  }
  .benefits-h1-bottom {
    padding-top: .5rem;
  }
  .benefits-h1-bottom p:last-of-type {
    margin-bottom: 0;
    line-height: 1;
  }
  .frame-sub-list {
    margin: 0 auto;
    max-width: 1120px;
    padding: 0;
  }
  .root-sub-list, .root-main-foot {
    padding: 16px;
    padding-top: 1.6rem;
  }
  .sub-box {
    -webkit-flex-basis: calc(100% / 2 - 1rem);
        -ms-flex-preferred-size: calc(100% / 2 - 1rem);
            flex-basis: calc(100% / 2 - 1rem);
    margin-bottom: 1.6rem;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1.6rem;
    -webkit-filter: drop-shadow(0px 4px 6px rgba(0, 0, 0, 0.15));
            filter: drop-shadow(0px 4px 6px rgba(0, 0, 0, 0.15));
  }
  .frame-card-float {
    bottom: 1rem;
  }
  .benefits-modal-top {
    padding: 4rem 4rem 2rem;
  }
  .rooot-benefits-modal.common-modal .modal-container {
    max-height: 700px;
    position: absolute;
    top: 50%;
    bottom: auto;
    margin: 0;
    height: auto;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .rooot-benefits-modal.common-modal .modal-container .content-body {
    max-height: 58vh;
    height: auto;
    margin: 1.6rem 3rem 32px 4rem;
  }
  .sub-box-detail {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: .5rem 1.6rem 1.6rem;
  }
  .sub-box-detail .color-gray-2 {
    margin-top: 0;
  }
  .button-action.btn-coupon {
    margin: 1.6rem 0 0;
  }
  .benefits-h1 {
    padding: 1rem 5rem 1rem 1.6rem;
    position: relative;
    width: 55rem;
  }
  .benefits-h1 h1,
  .benefits-h1 h2 {
    font-size: 3.6rem;
  }
  .benefits-h1::before, .benefits-h1::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
  }
  .benefits-h1::before {
    right: 100%;
    background-color: #32315F;
  }
  .mode-selections .key-visual .inner {
    margin: auto;
    max-width: 113.6rem;
    right: 0;
    padding-left: 1.6rem;
  }
  .mode-selections .key-visual .inner .benefits-h1 {
    padding: 0;
  }
  .mode-selections .key-visual .inner .benefits-h1::before, .mode-selections .key-visual .inner .benefits-h1::after {
    background: none;
  }
  .mode-selections .key-visual .inner .benefits-h1-bottom {
    padding: 0;
  }
  .mode-selections .sub-box-detail {
    padding: .5rem 2.4rem 2.4rem;
  }
  .mode-selections .sub-box-detail div > p:first-child {
    min-height: 5.6rem;
  }
  .result-list.mode-select-detail {
    padding-top: 1.6rem;
    padding-left: 0;
    padding-right: 0;
  }
  .result-list.mode-select-detail .result-hotel {
    height: 31rem;
  }
  .result-list.mode-select-detail .hotel-info {
    padding: 2.4rem 2.4rem 0;
    height: calc(100% - 2.4rem);
    overflow: hidden;
  }
  .select-detail-photo {
    width: 64rem;
    height: 31rem;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .select-detail-head {
    padding: 0 0 2.4rem;
  }
  .select-detail-head .h1-sp-small {
    font-size: 3.6rem;
  }
  .select-detail-head .select-head-left {
    width: 65%;
    padding-right: 1.6rem;
  }
  .select-detail-head .select-head-img {
    width: 35.2rem;
    height: 26.4rem;
    -webkit-filter: drop-shadow(0px 4px 15px rgba(0, 0, 0, 0.1));
            filter: drop-shadow(0px 4px 15px rgba(0, 0, 0, 0.1));
  }
  .select-detail-head .select-head-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .period-limited dd.font-large {
    font-size: 1.6rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .result-list.mode-select-detail .result-hotel .hotel-info .address + p {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 5;
      overflow: hidden;
  }

  .result-list.mode-select-detail .result-hotel .hotel-info .period-limited + p {
      display: -webkit-box;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      overflow: hidden;
  }
}

@media (min-width: 1024px) {
  .root-sub-list .frame-sub-list::after, .root-main-foot .frame-sub-list::after, .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    display: block;
    content: "";
    width: 47vw;
  }
  .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .sub-box {
    -webkit-flex-basis: calc(100% / 3 - 1.6rem);
        -ms-flex-preferred-size: calc(100% / 3 - 1.6rem);
            flex-basis: calc(100% / 3 - 1.6rem);
  }
  .root-sub-list .frame-sub-list::after, .root-main-foot .frame-sub-list::after, .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    display: block;
    content: "";
    width: 31.3vw;
  }
  .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .result-list.mode-select-detail .h2-small {
    font-size: 2.4vw;
  }
  .result-list.mode-select-detail .select-detail-photo {
    width: calc(100% - 41.5vw);
  }
  .result-list.mode-select-detail .hotel-info {
    width: 41.5vw;
    height: calc(100% - 2rem);
  }
  .result-list.mode-select-detail .hotel-info .period-limited dd.font-large {
    font-size: 100%;
  }
}

@media (min-width: 1146px) {
  .benefits-h1-bottom {
    padding: .5rem 0 0;
  }
  .benefits-h1 {
    padding: 1rem 5rem 1rem 0;
  }
}

@media (min-width: 1120px) {
  .mode-selections .sub-box {
    -webkit-flex-basis: 36.2rem;
        -ms-flex-preferred-size: 36.2rem;
            flex-basis: 36.2rem;
  }
  .mode-selections .root-sub-list .frame-sub-list::after, .mode-selections .root-main-foot .frame-sub-list::after, .mode-selections .root-sub-list .frame-sub-list::before, .mode-selections .root-main-foot .frame-sub-list::before {
    display: block;
    content: "";
    width: 36.2rem;
  }
  .mode-selections .root-sub-list .frame-sub-list::before, .mode-selections .root-main-foot .frame-sub-list::before {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .sub-box {
    -webkit-flex-basis: calc(100% / 4 - 1.6rem);
        -ms-flex-preferred-size: calc(100% / 4 - 1.6rem);
            flex-basis: calc(100% / 4 - 1.6rem);
  }
  .root-sub-list .frame-sub-list::after, .root-main-foot .frame-sub-list::after, .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    display: block;
    content: "";
    width: 26.4rem;
  }
  .root-sub-list .frame-sub-list::before, .root-main-foot .frame-sub-list::before {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .result-list.mode-select-detail .hotel-info {
    width: 42.5%;
  }
  .result-list.mode-select-detail .h2-small {
    font-size: 2.4rem;
  }
}

@media (max-width: 767px) {
  .mode-selections .key-visual .sns .wrap {
    padding-right: 0;
  }
  .mode-selections .key-visual .sns .wrap a:last-of-type img {
    margin-right: 0;
  }
}

.input-name-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.input-name-wrap li {
  width: 47.5%;
}

.input-name-wrap input {
  width: 100%;
}

.au-message-area {
  background: #FFF5EF;
  padding: 16px 0;
}

.au-message-area .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.au-message-area .text-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
}

.cms .sub-box-detail .line-clamp {
  -webkit-line-clamp: 3;
}

.cms .key-visual {
  background: url(/stcontents/img/sub-page/kv-cms.jpg) center center no-repeat;
  background-size: cover !important;
  height: auto !important;
  padding: 80px 0;
}

.cms .key-visual .kv-inner {
  max-height: 90%;
  max-width: 700px;
  width: fit-content;
  height: auto;
  position: relative;
  padding: 24px;
  background-color: rgba(255, 255, 255, 0.8);
  margin: 0 auto;
  z-index: 2;
}

.cms .key-visual .kv-inner h2 {
  white-space: pre-wrap;
  line-height: 1.3;
  padding: 0.25em 0;
  text-align: center;
}

.cms .key-visual .kv-inner h2, .cms .key-visual .kv-inner p {
  color: #333;
}

.cms .key-visual .type-ciry-h1-bottom > p {
  white-space: pre-wrap;
}

.cms .key-visual .kv-inner .text-link-bottom {
  margin-top: 8px;
}

/*
  KV改修
*/
.cms .new-kv .sns {
  display: none !important;
}
.cms .new-kv .kv-inner {
  background: none;
  padding: 0;
}
.cms .new-kv .type-ciry-h1 {
  padding: 24px 24px 0;
}
.cms .new-kv .type-ciry-h1 h2 {
  text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
  color: #fff;
}
.cms .new-kv .type-ciry-h1-bottom {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 24px 24px;
}
.cms .kv-note {
  margin-bottom: 0;
  padding-top: 4px;
  font-size: 12px;
  color: #757575 !important;
}

@media (max-width: 767px) {

  .cms .key-visual .kv-inner {
    text-align: left;
    margin: 0 16px;
    padding: 16px;
    -webkit-transform: none;
            transform: none;
  }
  .cms .key-visual .kv-inner h2 {
    font-size: 24px;
  }
  .cms .key-visual .kv-inner .text-link-bottom {
    text-align: right;
  }
  .cms .frame-card-float .line-clamp-one {
    display: none;
  }
  .cms .new-kv {
    height: 240px !important;
    padding-bottom: 0;
  }
  .cms .new-kv .kv-inner {
    position: absolute;
    max-width: none;
    width: 100%;
    bottom: 0;
    left: 0;
    margin: 0;
    padding-bottom: 8px;
    text-align: center;
  }
  .cms .new-kv .type-ciry-h1 {
    padding: 0;
  }
  .cms .new-kv .type-ciry-h1 h2 {
    margin-bottom: 0 !important;
  }
  .cms .new-kv + .type-ciry-h1-bottom {
    background: #f5f5f5;
    margin: 16px 16px;
    padding: 16px 16px;
  }
  .cms .new-kv + .type-ciry-h1-bottom p {
    white-space: pre-wrap;
  }
}

.campaign-package {
  /* エントリー完了画面 */
}

.campaign-package h2 {
  margin-bottom: 24px;
}

.campaign-package .key-visual {
  background: url(/stcontents/img/sub-page/campaign-package/pc-key-photo.jpg) bottom !important;
  background-size: cover !important;
  /*background-attachment: fixed !important;*/
  height: 500px !important;
}

.campaign-package .key-visual h1 {
  text-shadow: 1px 1px 1px #000;
}

.campaign-package .key-visual-2 {
  background: url(/stcontents/img/sub-page/campaign-package/pc-key-photo-2.jpg) bottom !important;
  background-size: cover !important;
}

.campaign-package .campaign-logo img {
  width: 250px;
  margin: 0 auto;
}

.campaign-package .type-ciry-h1 p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: 2px solid #fff;
  padding: 0 8px;
  margin: 0 auto 8px;
  border-radius: 4px;
  -webkit-filter: drop-shadow(1px 1px 1px #000);
          filter: drop-shadow(1px 1px 1px #000);
}

.campaign-package .type-ciry-h1-blue p {
  -webkit-filter: none;
          filter: none;
  margin: 0 auto 8px !important;
  color: #0F0A64;
  border-color: #0F0A64;
}

.campaign-package .type-ciry-h1-bottom p {
  font-size: 2.4rem;
  text-shadow: 1px 1px 1px #000;
}

.campaign-package .type-ciry-h1-bottom .entry {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.campaign-package .type-ciry-h1-bottom .entry span {
  margin-right: 16px;
  line-height: 16px;
  -webkit-filter: drop-shadow(1px 1px 1px #000);
          filter: drop-shadow(1px 1px 1px #000);
}

.campaign-package .type-ciry-h1-bottom .entry p {
  margin-bottom: 0;
}

.campaign-package .entry-flow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.campaign-package .entry-flow img {
  margin: 0 32px;
}

.campaign-package .flow-contents img {
  margin: 0 0 16px 0 !important;
  height: 57px;
}

.bnr-easy-flow-img-wrap img {
  vertical-align: top;
}

.campaign-package .bnr-easy-flow .note {
  text-align: left;
  font-size: 1.4rem;
  color: #757575;
  margin-top: 8px;
  margin-bottom: 24px;
}

.campaign-package .bnr-easy-flow .note li {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 18px;
  color: #757575;
  padding-left: 1em;
  text-indent: -1em;
}

.campaign-package .bnr-easy-flow .note li::before {
  content: "※";
}

.campaign-package .coupon {
  width: 100%;
  background: url(/stcontents/img/sub-page/campaign-package/pc-coupon-bg.jpg) 50% 50% no-repeat;
  background-size: cover;
  padding: 40px 0;
  /*background-attachment: fixed;*/
  position: relative;
}

.campaign-package .coupon::before {
  content: "";
  background-color: rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.campaign-package .coupon p {
  font-size: 1.6rem;
}

.campaign-package .coupon .coupon-contents {
  width: calc(100% - 32px);
  max-width: 600px;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 24px 40px;
  color: #000;
  position: inherit;
  z-index: 2;
}

.campaign-package .coupon .coupon-contents .coupon-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  width: auto;
}

.campaign-package .coupon .coupon-contents .coupon-text div {
  line-height: 64px;
}

.campaign-package .coupon .coupon-contents .coupon-text .title {
  margin-bottom: 8px;
  font-size: 22px;
  width: 25%;
  width: auto;
  min-width: 25%;
  text-align: right;
  margin-right: 16px;
}

.campaign-package .coupon .coupon-contents .coupon-text .detail {
  margin-bottom: 8px;
  font-size: 30px;
  text-align: left;
  font-weight: bold;
  width: auto;
  min-width: 50%;
}

.campaign-package .coupon .coupon-contents .coupon-text :only-child {
  margin-bottom: 24px;
  font-size: 36px;
  text-align: center;
  width: 100%;
  font-weight: bold;
}

.campaign-package .coupon .date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.campaign-package .coupon .date div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3rem;
}

.campaign-package .coupon .date div p {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 0;
}

.campaign-package .coupon .date div span {
  font-size: 1.6rem;
  font-weight: normal;
  padding-right: 8px;
  margin-right: 0;
  line-height: 24px;
}

.campaign-package .coupon .date .reservation {
  border-right: 1px solid #333;
}

.campaign-package .coupon .date .reservation p {
  margin-right: 16px;
}

.campaign-package .coupon .date .checkout span {
  margin-left: 16px;
}

.campaign-package .coupon .list-attention li {
  margin-left: 1em;
  list-style-type: none;
  text-indent: -1em;
}

.campaign-package .coupon .list-attention li::before {
  display: inline;
  content: "・";
}

.campaign-package .col2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.campaign-package .hotel-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #f5f5f5;
  width: calc(50% - 16px);
  height: 152px;
  margin-bottom: 16px;
}
.campaign-package .hotel-list a {
  width: 100%;
  display: flex;
  color: inherit;
}
.campaign-package .hotel-list a:hover {
  opacity: 0.7;
}
.campaign-package .hotel-list a.disabled {
  pointer-events: none;
}
.campaign-package .hotel-list .photo img {
  width: 192px;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaign-package .hotel-list .text {
  text-align: left;
  padding: 16px;
}

.campaign-package .hotel-list .text p {
  margin-bottom: 0 !important;
}

.campaign-package .hotel-list .text .grade {
  line-height: 0;
}

.campaign-package .hotel-list .text .grade img {
  height: 20px;
  margin-right: 4px;
}

.campaign-package .hotel-list .text .area {
  font-size: 1.2rem;
  color: #757575;
}

@media screen and (max-width: 1120px) {
  .campaign-package .hotel-list a {
    height: 100%;
    display: block;
  }
}

.campaign-package .text-low {
  width: 436px;
  margin-right: 16px;
  vertical-align: middle;
}

.campaign-package .low-contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.campaign-package .entry-btn .btn-block a {
  width: 300px;
  max-width: unset;
}

.campaign-package .key-visual-complete {
  background: url(/stcontents/img/sub-page/campaign-package/pc-key-photo.jpg) bottom !important;
  background-size: cover !important;
  /*background-attachment: fixed !important;*/
  overflow: visible;
  height: 500px !important;
  position: relative;
}

.campaign-package .inner-box {
  width: 100%;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.campaign-package .result-coupon {
  display: inline-block;
  min-width: 600px;
  max-width: 100%;
  padding: 24px 40px;
  background-color: rgba(255, 255, 255, 0.8);
  margin: 0 auto;
  color: #000;
}

.campaign-package .result-coupon .offcoupon-text-1 {
  line-height: 64px;
}

.campaign-package .result-coupon .offcoupon-text-2 {
  line-height: 44px;
}

.campaign-package .result-coupon .date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 20px;
  font-size: 0;
  color: #333333;
}

.campaign-package .result-coupon .date div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.campaign-package .result-coupon .date div p {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0;
}

.campaign-package .result-coupon .date div span {
  font-size: 1.6rem;
  font-weight: normal;
  margin-right: 8px;
  flex-shrink: 0;
}

.campaign-package .result-coupon .date .checkout {
  font-size: 0;
}

.campaign-package .result-coupon .date .checkout span {
  margin-left: 16px;
}

.campaign-package .result-coupon .coupon-code {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8px auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f5f5f5;
  padding: 8px;
}

.campaign-package .result-coupon .coupon-code .clip-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
}

.campaign-package .result-coupon .coupon-code .clip-btn > span {
  text-decoration: underline;
}

.campaign-package .result-coupon .coupon-code .clip-btn > img {
  display: block;
  width: 24px;
  height: 24px;
}

.campaign-package .result-coupon .coupon-code .clip-btn:hover span {
  text-decoration: none;
}

.campaign-package .result-coupon .coupon-code .clip-btn.clicked {
  color: #757575;
}

.campaign-package .result-coupon .coupon-code .clip-btn.clicked span {
  text-decoration: none;
}

.campaigns .anime-box {
  width: 560px !important;
  height: 300px;
  position: relative;
  margin: 0 auto;
  transform: translateY(-22%) !important;
  z-index: 1;
}
.campaigns .anime-box .result-coupon {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-1.png) no-repeat center center;
  background-size: contain;
  width: 550px;
  height: 278px;
  padding: 64px 12px 0;
}
.campaigns .anime-box .anime-parts-1 {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-4.png) no-repeat center center;
  background-size: contain;
  width: 560px;
  height: 189px;
  position: absolute;
  top: 19px;
  left: 0;
  z-index: 2;
  animation: 0.3s 1.5s fadeout-anime forwards;
}
.campaigns .anime-box .anime-parts-2 {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-3.png) no-repeat center center;
  background-size: contain;
  width: 560px;
  height: 270px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  animation: 0.3s 3s fadeout-anime forwards;
}
.campaigns .anime-box .anime-parts-3 {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-2.png) no-repeat center center;
  background-size: contain;
  width: 560px;
  height: 414px;
  position: absolute;
  top: -138px;
  left: 0;
  z-index: -1;
  opacity: 0;
  animation: 2s 1.5s fadein-out-anime forwards;
}
.campaigns .anime-box .anime-parts-4 {
  animation: 1.5s 1.5s letter-anime ease-in-out forwards;
  position: relative;
  margin-left: -10px;
}
.campaigns .anime-box .anime-parts-4.kv-sf {
  animation: none;
}
.campaigns .anime-box .anime-parts-4.kv-sf .letter-box.kv-special-feature {
  position: absolute;
  top: 50% !important;
  bottom: inherit !important;
  left: 50%;
  transform: translate(-50%, -35%) scale(1) !important;
}
.campaigns .anime-box .icon-anime-ponta {
  background: url(/stcontents/img/sub-page/campaigns/icon-ponta-anime.png) no-repeat center center;
  background-size: contain;
  width: 150px;
  height: 150px;
  position: absolute;
  bottom: -30px;
  right: -110px;
  z-index: 3;
  opacity: 0;
  animation: 0.4s 3.2s fadein-anime forwards;
}

.particles-js-canvas-el {
  position: absolute;
  top: 0;
  left: 0;
}

@keyframes fadein-anime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadein-out-anime {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeout-anime {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes letter-anime {
    0% {
    }
    50% {
      transform:translateY(-220px);
    }
    70% {
      z-index: 2;
    }
    100% {
      transform:translateY(-20px) scale(1.35);
      z-index: 2;
    }
}

@media (min-width: 768px) {
  .campaign-package .result-coupon .date .border {
    border-right: 2px solid #C6C6C6;
    height: 24px;
    margin-left: 18px;
  }
}

@media screen and (max-width: 1023px){
  .campaigns .anime-box .icon-anime-ponta {
    width: 120px;
    height: 120px;
    bottom: -30px;
    right: -20px;
  }
}

@media screen and (max-width: 767px){
  .campaign-package .result-coupon .offcoupon-text-1 {
    font-size: 2.6rem;
    line-height: 36px;
  }
  .campaign-package .result-coupon .offcoupon-text-2 {
    font-size: 2rem;
    line-height: 36px;
  }
  .campaigns .anime-box {
    max-width: 358px;
    width: 100% !important;
    height: auto;
    top: 34% !important;
  }
  .campaigns .anime-box .result-coupon {
      background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-sp.png) no-repeat center center;
      background-size: contain;
      width: 262px;
      height: 214px;
      padding: 35px 16px 0;
      line-height: 1.6;
      letter-spacing: 0;
  }
  .campaigns .anime-box .icon-anime-ponta {
    width: 160px;
    height: 140px;
    bottom: -118px;
    right: 20%;
  }
  .campaigns .anime-box .anime-parts-1 {
    width: 358px;
    height: 110px;
    top: -2px;
    left: 2px;
  }
  .campaigns .anime-box .anime-parts-2 {
    width: 358px;
    height: 159px;
    bottom: 32px;
    left: 2px;
    transform: scale(1, 1.27);
  }
  .campaigns .anime-box .anime-parts-3 {
    width: 336px;
    height: 270px;
    top: -112px;
    left: 13px;
  }
  .campaigns .anime-box .anime-parts-4 {
    margin-left: 0;
  }
  .campaigns .anime-box .anime-parts-4.kv-sf {
    left: 50%;
    transform: translate(-50%, -17%) scale(1) !important;
  }
}
@media screen and (max-width: 360px) {
  .campaigns.template .key-visual-complete .inner-box {
    transform: scale(0.8) !important;
  }
  .campaigns .anime-box .anime-parts-1 {
    top: -2px;
    left: -21px;
  }
  .campaigns .anime-box .anime-parts-2 {
    bottom: 31px;
    left: -21px;
  }
  .campaigns .anime-box .anime-parts-3 {
    top: -110px;
    left: -10px;
  }
}

.campaigns .roulette-wrap .roulette-box {
  text-align: center;
  position: relative;
  z-index: 2;
}
.campaigns .roulette-wrap .roulette-box .roulette-img {
  width: 411px;
  height: auto;
  margin: 30px auto;
}
.campaigns .roulette-wrap .roulette-box .figure {
  position: relative;
  padding-top: 60px;
  z-index: 2;
}
.campaigns .roulette-wrap .roulette-box .roulette-pin {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,100%);
  width: 44px;
}
.campaigns .roulette-wrap .kv-shadow {
  position: relative;
}
.campaigns .roulette-wrap .letter-box {
  position: absolute;
  top: inherit !important;
  bottom: 130px !important;
  left: 50%;
  opacity: 0;
  transition: all 0.5s;
  transform: translate(-50%, 40px) scale(1.33) !important;
  padding: 0 !important;
  margin-bottom: -100px;
}
.campaigns .roulette-wrap .letter-box.kv-special-feature {
  top: 50% !important;
  bottom: inherit !important;
  left: 50%;
  transform: translate(-50%, -50%) scale(1) !important;
}
.campaigns .roulette-wrap .letter-box.active {
  margin-bottom: 0 !important;
}
.campaigns .roulette-wrap .per3 .roulette-img{
  animation: roulette3 3s 0.5s ease-in-out forwards;
}
.campaigns .roulette-wrap .per5 .roulette-img{
  animation: roulette5 3s 0.5s ease-in-out forwards;
}
.campaigns .roulette-wrap .per10 .roulette-img{
  animation: roulette10 3s 0.5s ease-in-out forwards;
}
.campaigns .roulette-wrap .per15 .roulette-img{
  animation: roulette15 3s 0.5s ease-in-out forwards;
}
.campaigns .roulette-wrap .per20 .roulette-img{
  animation: roulette20 3s 0.5s ease-in-out forwards;
}
.campaigns .roulette-wrap .per30 .roulette-img{
  animation: roulette30 3s 0.5s ease-in-out forwards;
}
@keyframes roulette3 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(5790deg);
  }
}
@keyframes roulette5 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(5850deg);
  }
}
@keyframes roulette10 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(5910deg);
  }
}
@keyframes roulette15 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(5970deg);
  }
}
@keyframes roulette20 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(6030deg);
  }
}
@keyframes roulette30 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(6090deg);
  }
}

.campaign-package .app-banner {
  background: url(/stcontents/img/common/app_bg_image.jpg) no-repeat center center;
  color: #fff;
  background-size: cover;
}

.campaign-package .app-banner .title {
  text-shadow: 1px 1px 1px #000;
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .campaign-package .carousel {
    overflow-x: scroll;
  }
  .campaign-package .sub-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: 16px;
  }
  .campaign-package .hotel-list {
    height: 308px;
    width: 280px;
    display: block;
    margin-right: 16px;
    background-color: #fff;
  }
  .campaign-package .hotel-list .photo {
    height: 140px;
    width: 100%;
  }
  .campaign-package .hotel-list .photo img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .campaign-package .hotel-list .text {
    padding: 8px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .campaign-package .float-bar {
    height: 87px;
    padding: 8px 16px;
  }
  .campaign-package .float-bar .sp-only {
    margin: 0 auto 8px;
  }
  .campaign-package .entry-btn {
    height: auto;
  }
}

@media (max-width: 767px) {
  .campaign-package {
    /* エントリー完了画面 */
  }
  .campaign-package h2 {
    margin-bottom: 16px;
  }
  .campaign-package .root-sub-list h2, .campaign-package .root-main-foot h2 {
    text-align: left;
  }
  .campaign-package .key-visual {
    height: 400px !important;
  }
  .campaign-package .key-visual::before {
    height: 232px !important;
  }
  .campaign-package .key-visual-complete {
    height: auto !important;
  }
  .campaign-package .result-coupon {
    max-width: initial;
    min-width: 0;
    padding: 16px 24px;
  }
  .campaign-package .result-coupon {
    max-width: initial;
    min-width: 0;
    width: 100%;
    padding: 16px 24px;
  }
  .campaign-package .type-ciry-h1 p {
    margin: 0 0 8px;
  }
  .campaign-package .type-ciry-h1-bottom p {
    font-size: 1.6rem;
  }
  .campaign-package .type-ciry-h1-bottom .entry span {
    margin-right: 8px;
    padding-right: 8px;
  }
  .campaign-package .entry-flow {
    display: block;
  }
  .campaign-package .entry-flow span {
    margin-bottom: 0;
  }
  .campaign-package .entry-flow p {
    margin-bottom: 0;
  }
  .campaign-package .entry-flow img {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    margin: 16px;
  }
  .campaign-package .entry-flow .flow-contents img {
    -webkit-transform: unset;
            transform: unset;
    margin-bottom: 8px !important;
    height: 48px;
  }
  .campaign-package .coupon {
    padding: 24px 16px;
  }
  .campaign-package .coupon p {
    font-size: 1.4rem;
  }
  .campaign-package .coupon .coupon-contents {
    width: auto;
    padding: 16px;
  }
  .campaign-package .coupon .coupon-contents p {
    font-size: 2.4rem;
    margin-bottom: 24px;
  }
  .campaign-package .coupon .coupon-contents p:first-child {
    font-size: 2.6rem;
  }
  .campaign-package .coupon .coupon-contents span {
    font-size: 1.6rem;
    margin-right: 24px;
  }
  .campaign-package .coupon .coupon-contents .coupon-text {
    justify-content: flex-start;
    width: auto;
  }
  .campaign-package .coupon .coupon-contents .coupon-text div {
    line-height: 44px;
  }
  .campaign-package .coupon .coupon-contents .coupon-text .title {
    margin-bottom: 4px;
    font-size: 16px;
    width: auto;
    min-width: 36%;
    text-align: right;
    margin-right: 24px;
  }
  .campaign-package .coupon .coupon-contents .coupon-text .detail {
    margin-bottom: 4px;
    font-size: 24px;
    width: auto;
  }
  .campaign-package .coupon .coupon-contents .coupon-text :only-child {
    margin: 0 auto 24px;
    font-size: 24px;
  }
  .campaign-package .coupon .date {
    display: block;
    margin-bottom: 0;
  }
  .campaign-package .coupon .date div {
    display: block;
  }
  .campaign-package .coupon .date div p {
    font-size: 1.6rem;
    margin: 0;
  }
  .campaign-package .coupon .date div span {
    font-size: 1.2rem;
    margin: 0;
    border-right: none;
    padding-right: 0;
  }
  .campaign-package .coupon .date .reservation {
    padding-right: 0;
    border-right: none;
    height: auto;
  }
  .campaign-package .coupon .date .reservation p {
    margin: 0;
  }
  .campaign-package .coupon .date .checkout {
    padding-left: 0;
    height: auto;
  }
  .campaign-package .coupon .date .checkout span {
    margin: 0;
  }
  .campaign-package .coupon .date .border {
    border-bottom: 1px solid #333;
    width: 60px;
    margin: 8px auto;
    height: 1px;
  }
  .campaign-package .entry-btn .btn-block a {
    width: 100%;
    margin: 0;
  }
  .campaign-package .inner-box {
    padding: 60px 16px 24px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    top: unset;
  }
  .campaign-package .key-visual-complete .inner-box {
    padding: 73px 16px 20px;
  }
  .campaign-package .result-coupon .date {
    height: auto;
    display: block;
  }
  .campaign-package .result-coupon .date .reservation {
    padding-right: 0;
    border-right: none;
  }
  .campaign-package .result-coupon .date .checkout {
    padding-left: 0px;
  }
  .campaign-package .result-coupon .date .checkout span {
    margin: 0;
  }
  .campaign-package .result-coupon .date .border {
    border-bottom: 1px solid #333;
    width: 60px;
    margin: 8px auto;
  }
  .campaign-package .result-coupon .date div {
    display: block;
  }
  .campaign-package .result-coupon .date div span {
    font-size: 1.4rem;
    margin: 0;
  }
  .campaign-package .carousel {
    overflow-x: scroll;
  }
  .campaign-package .sub-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: 16px;
  }
  .campaign-package .hotel-list {
    height: 300px;
    width: 280px;
    display: block;
    margin-right: 16px;
    background-color: #fff;
  }
  .campaign-package .hotel-list .photo {
    height: 140px;
    width: 100%;
  }
  .campaign-package .hotel-list .photo img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .campaign-package .hotel-list .text {
    padding: 8px;
  }
  .campaign-package .app-banner {
    background-size: cover;
  }
}

.campaign-finish .key-visual {
  height: 100vh !important;
}

.campaign-finish .key-visual .blur {
  background-color: rgba(0, 0, 0, 0.1) !important;
  -webkit-filter: blur(200px);
          filter: blur(200px);
}

.campaign-finish .key-visual .shadow {
  background-color: black;
  position: absolute;
  width: 100%;
  height: 175px;
  left: 0;
  top: 325px;
  -webkit-filter: blur(200px);
          filter: blur(200px);
}

.campaign-finish .comment {
  text-shadow: 0 0 5px #000;
  margin-bottom: 40px;
}

.campaign-finish .back-to-top {
  width: 300px;
}

@media (max-width: 767px) {
  .campaign-finish .back-to-top {
    width: 100%;
  }
}

.coupon-complete .btn-col-2 {
  margin-top: 40px;
}

.coupon-complete .btn-col-2 a {
  width: 176px;
}

@media (max-width: 767px) {
  .coupon-complete .btn-col-2 {
    margin-top: 24px;
  }
  .coupon-complete .btn-col-2 a {
    width: calc(50% - 4px);
  }
  .coupon-complete .btn-col-2 a:first-child {
    margin-right: 8px;
  }
}

.gray-modal {
  background: rgba(0, 0, 0, 0.60);
  width: 100%;
  height: 100%;
}
.gray-modal .modal-container {
  background: none;
}
.gray-modal .contents-center {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.float-login-box {
  position: relative;
  padding: 32px 16px;
  border-radius: 8px;
}
.float-login-box .btn-block {
  display: flex;
  justify-content: center;
}
.float-login-box .btn-block a {
  flex-wrap: wrap;
  font-size: 14px;
}
.float-login-box .btn-block a span {
  display: block;
  width: 100%;
  font-size: 10px;
  transform: scale(0.85);
  transform-origin: bottom;
  margin-bottom: -6px;
  font-weight: normal;
  line-height: 1.5;
}
.float-login-box .btn-block a strong {
  font-weight: bold;
}
@media screen and (min-width: 768px){
  .float-login-box .btn-block a {
    height: auto;
    font-size: 16px;
  }
  .float-login-box .btn-block a span {
    margin-top: 5px;
    margin-bottom: -10px;
  }
}
@media acreen and (max-width: 360px){
  .float-login-box .btn-block a {
    font-size: 13px;
  }
}

/*
  「ハローページ」
  「au会員登録ページ」
*/
.t-hello-2001 .key-visual-wrap,
.au-register .key-visual-wrap {
  position: relative;
  height: 470px;
}

.t-hello-2001 .bg-blue,
.au-register .bg-blue {
  background: #0F0A64;
}

.t-hello-2001 .key-visual,
.au-register .key-visual {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: url(/stcontents/img/sub-page/t/kv-hello-pc.jpg) no-repeat center center;
  background-color: #0F0A64;
  background-size: cover;
  height: 470px;
}

/* ハローページのグラデーションbg削除（必要に応じて切り替え） */
/* .t-hello-2001 .key-visual::before,
.au-register .key-visual::before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
} */

/* .t-hello-2001 .key-visual .inner,
.au-register .key-visual .inner {
  -webkit-transform: none;
          transform: none;
  top: 0;
  left: 0;
  position: relative;
  width: 100%;
} */

.t-hello-2001 .key-visual .catch h1,
.au-register .key-visual .catch h1 {
  color: #0F0A64;
  font-size: 3.2rem;
  line-height: 1;
  text-shadow: none;
  letter-spacing: 1px;
  display: inline-block;
  font-weight: 900;
}

.t-hello-2001 .key-visual .catch h1 span,
.au-register .key-visual .catch h1 span {
  color: #0F0A64;
  font-size: 5rem;
  line-height: 1;
  letter-spacing: 1px;
  font-weight: bold;
}

.t-hello-2001 .key-visual .catch h1 img,
.au-register .key-visual .catch h1 img {
  max-width: 100%;
  width: 218px;
  height: auto;
}

/* .t-hello-2001 .key-visual .catch h1 img:first-child {
  max-width: 160px;
  margin-bottom: 32px;
} */

/* .au-register .key-visual .catch h1 img:first-child {
  max-width: 160px;
  margin-bottom: 32px;
} */

.t-hello-2001 .key-visual .catch .border-red,
.au-register .key-visual .catch .border-red {
  border: 1px solid #FF503E;
  width: 40px;
  margin: 8px auto 16px auto;
}

.t-hello-2001 .key-visual .catch div,
.au-register .key-visual .catch div {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.t-hello-2001 .key-visual .catch div p:first-child,
.au-register .key-visual .catch div p:first-child {
  font-size: 1.8rem;
  margin: 0 auto;
  text-shadow: none;
}

.t-hello-2001 .key-visual .catch div p,
.au-register .key-visual .catch div p {
  font-size: 2.4rem;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  font-weight: 400;
  margin: 8px auto;
}

.t-hello-2001 .key-visual .catch div p .coupon,
.au-register .key-visual .catch div p .coupon {
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.t-hello-2001 .key-visual .catch div br,
.au-register .key-visual .catch div br {
  display: none;
}

.t-hello-2001 .key-visual .catch span,
.au-register .key-visual .catch span {
  color: #757575;
  display: inline-block;
  font-size: 1.4rem;
  margin-top: 8px;
}

.t-hello-2001 .key-visual .catch .sns,
.au-register .key-visual .catch .sns {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0px;
  text-align: right;
  line-height: 1;
}

.t-hello-2001 .key-visual .kv-coupon,
.au-register .key-visual .kv-coupon
 {
  position: relative;
}

.t-hello-2001 .key-visual .kv-coupon img,
.au-register .key-visual .kv-coupon img
 {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-52%,-16%);
  width: 664px;
  height: 366px;
  z-index: -1;
}

.t-hello-2001 .key-visual .kv-relux-logo img,
.au-register .key-visual .kv-relux-logo img
 {
  margin: auto;
}

.t-hello-2001 .key-visual .wave,
.au-register .key-visual .wave {
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}

.t-hello-2001 .introduction,
.t-hello-2001 .feature,
.au-register .introduction,
.au-register .feature {
  font-weight: 300;
}

.t-hello-2001 .introduction h1,
.t-hello-2001 .feature h1,
.au-register .introduction h1,
.au-register .feature h1 {
  font-weight: 300;
  color: #0F0A64;
}

.t-hello-2001 .introduction .border-red,
.t-hello-2001 .feature .border-red,
.au-register .introduction .border-red,
.au-register .feature .border-red {
  border: 1px solid #FF503E;
  width: 40px;
  margin: 0 auto 40px;
}

.t-hello-2001 .introduction .text,
.t-hello-2001 .feature .text,
.au-register .introduction .text,
.au-register .feature .text {
  width: 52%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.t-hello-2001 .introduction .text p,
.t-hello-2001 .feature .text p,
.au-register .introduction .text p,
.au-register .feature .text p {
  line-height: 3.2rem;
}

.t-hello-2001 .introduction .text img,
.t-hello-2001 .feature .text img,
.au-register .introduction .text img,
.au-register .feature .text img {
  width: 55px;
  height: 48px;
  margin-right: 24px;
}

.t-hello-2001 .feature,
.au-register .feature {
  margin-top: 160px;
}

.t-hello-2001 .feature h3,
.au-register .feature h3 {
  font-weight: 300;
}

.t-hello-2001 .feature img,
.au-register .feature img {
  width: 37%;
  height: 37%;
}

.t-hello-2001 .feature .content,
.au-register .feature .content {
  margin-bottom: 140px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.t-hello-2001 .feature .content:last-child,
.au-register .feature .content:last-child {
  margin-bottom: 0;
}

.t-hello-2001 .ranking,
.au-register .ranking {
  background-color: #f5f5f5;
}

@media (max-width: 767px) {
  .t-hello-2001 .key-visual-wrap,
  .au-register .key-visual-wrap {
    height: 504px;
  }
  .t-hello-2001 .key-visual,
  .au-register .key-visual {
    background: url(/stcontents/img/sub-page/t/kv-hello-sp.jpg) no-repeat center center;
    padding: 16px;
  }
  .t-hello-2001 .key-visual .catch .border-red,
  .au-register .key-visual .catch .border-red {
    width: 40px;
  }
  .t-hello-2001 .key-visual .catch .btn-default,
  .au-register .key-visual .catch .btn-default {
    width: 100%;
    margin-top: 30px;
  }
  .t-hello-2001 .key-visual .catch div p,
  .au-register .key-visual .catch div p {
    font-size: 1.6rem;
  }
  .t-hello-2001 .key-visual .catch div p:first-child,
  .au-register .key-visual .catch div p:first-child {
    font-size: 1.2rem;
  }
  .t-hello-2001 .key-visual .catch div p .coupon,
  .au-register .key-visual .catch div p .coupon {
    font-size: 1.6rem;
    display: inline-block;
  }
  .t-hello-2001 .key-visual .catch div br,
  .au-register .key-visual .catch div br {
    display: block;
  }
  .t-hello-2001 .key-visual .catch span,
  .au-register .key-visual .catch span {
    font-size: 1.2rem;
    display: block;
  }

  /* helloページ、au-registerページのKV変更用 */
  .t-hello-2001 .key-visual .catch h1,
  .au-register .key-visual .catch h1 {
    font-size: 2rem;
    line-height: 0.7;
  }
  .t-hello-2001 .key-visual .catch h1 span,
  .au-register .key-visual .catch h1 span {
    color: #0F0A64;
    font-size: 3.2rem;
    line-height: 1;
    letter-spacing: 1px;
    font-weight: bold;
  }
  .t-hello-2001 .key-visual .kv-coupon img,
  .au-register .key-visual .kv-coupon img
   {
    width: 375px;
    height: auto;
    transform: translate(-53%,-16%);
  }
  .t-hello-2001 .key-visual .btn-sp-wide,
  .au-register .key-visual .btn-sp-wide
   {
    max-width: 343px;
    width: 261px;
    height: 40px;
  }
  .t-hello-2001 .key-visual .catch .kv-relux-logo img,
  .au-register .key-visual .catch .kv-relux-logo img {
    width: 148px;
    height: auto;
  }
  /* /helloページ、au-registerページのKV変更用 */

  .t-hello-2001 .key-visual .wave,
  .au-register .key-visual .wave {
    height: 133px;
    width: auto;
  }
  .t-hello-2001 .kv-bottom,
  .au-register .kv-bottom {
    padding: 16px 16px 24px;
  }
  .t-hello-2001 .kv-bottom .btn-default,
  .au-register .kv-bottom .btn-default {
    width: 100%;
    margin-bottom: 24px;
  }
  .t-hello-2001 .kv-bottom .sns,
  .au-register .kv-bottom .sns {
    text-align: right;
  }
  .t-hello-2001 .p-80,
  .au-register .p-80 {
    padding: 40px 16px !important;
  }
  .t-hello-2001 .introduction,
  .au-register .introduction {
    margin-bottom: 100px;
  }
  .t-hello-2001 .introduction-content p,
  .au-register .introduction-content p {
    line-height: 3.2rem;
  }
  .t-hello-2001 .bg-white,
  .au-register .bg-white {
    overflow: hidden;
  }
  .t-hello-2001 .feature,
  .au-register .feature {
    margin-top: 0;
  }
  .t-hello-2001 .feature .content,
  .au-register .feature .content {
    display: block;
    margin-bottom: 40px;
  }
  .t-hello-2001 .feature .content .text,
  .au-register .feature .content .text {
    width: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .t-hello-2001 .feature .content .text h3,
  .au-register .feature .content .text h3 {
    font-size: 2rem;
  }
  .t-hello-2001 .feature .content .feature-img01,
  .au-register .feature .content .feature-img01 {
    position: relative;
    margin: 24px 0;
    background-image: none;
    width: 100%;
    height: 334px;
  }
  .t-hello-2001 .feature .content .feature-img01 img,
  .au-register .feature .content .feature-img01 img {
    position: absolute;
    top: 0;
    right: -64px;
    width: 344px;
    height: 334px;
  }
  .t-hello-2001 .feature .content .feature-img02,
  .t-hello-2001 .feature .content .feature-img03,
  .au-register .feature .content .feature-img02,
  .au-register .feature .content .feature-img03 {
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: 24px 0;
  }
  .t-hello-2001 .feature .content .feature-img02 img,
  .t-hello-2001 .feature .content .feature-img03 img,
  .au-register .feature .content .feature-img02 img,
  .au-register .feature .content .feature-img03 img {
    width: 100%;
    height: auto;
  }
  .t-hello-2001 .introduction-content,
  .au-register .introduction-content {
    text-align: left;
    line-height: 3.2rem;
  }
}

.sns-share {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 12px 0;
}

.sns-share > a {
  width: 32px;
  height: 32px;
}

.sns-share > a + a {
  margin-left: 12px;
}

.sns-share > a > img {
  width: 100%;
  height: 100%;
}

.sns-share > a + a {
  margin-left: 12px;
}

.sub-page .relux-induction {
  display: block;
  position: absolute;
  bottom: 24px;
  left: 16px;
  width: 100%;
  width: calc(100% - 32px);
}

.sub-page .relux-induction a {
  width: 100%;
}

.sub-page .relux-induction:hover {
  color: #554B98 !important;
}

.sub-page .relux-induction:hover::after {
  opacity: .7;
}

.sub-page .feature .feature-img {
  background-image: url("/stcontents/img/sub-page/t/bg-feature.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.sub-page .feature .feature-content {
  padding-left: 56px;
  position: relative;
}

.sub-page .feature .feature-content::before {
  position: absolute;
  top: -2px;
  left: 0;
  content: url("/stcontents/img/sub-page/t/headline-01.svg");
}

.sub-page .feature .feature-content:nth-of-type(2)::before {
  content: url("/stcontents/img/sub-page/t/headline-02.svg");
}

.sub-page .feature .feature-content:nth-of-type(3)::before {
  content: url("/stcontents/img/sub-page/t/headline-03.svg");
}

.sub-page .feature .feature-content p {
  text-align: left;
  font-size: 1.4rem;
}

.sub-page .heading {
  font-size: 2.4rem;
  padding-bottom: 8px;
  position: relative;
  text-align: center;
  margin-bottom: 24px;
}

.sub-page .heading::before {
  content: '';
  display: block;
  height: 1px;
  width: 40px;
  background-color: #FF503E;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}



@media (min-width: 768px) {
  .sub-page .feature .feature-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    max-width: 926px;
  }
  .sub-page .feature .feature-img {
    width: 40%;
  }
  .sub-page .feature .feature-content-wrap {
    padding-left: 56px;
    width: 60%;
  }
  .sub-page .feature .feature-content {
    padding-left: 56px;
  }
}

@media (max-width: 767px) {
  .sub-page .feature .bg-parallax {
    background-image: url("/stcontents/img/sub-page/t/bg-feature.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: calc(100% + 32px);
    margin: 0 -16px;
    min-height: 200px;
  }
  .sub-page .feature .feature-content-wrap {
    margin-top: 32px;
  }
  .sub-page .feature .feature-content h3 {
    font-weight: 900;
  }
}

/*
  「au会員登録ページ」「ハローページ」「ANAマイレージモールページ」「GTTページ」共通
*/

.anamileagemall .float-bar,
.gototravel .float-bar {
  -webkit-transform: none;
          transform: none;
  padding: 8px 16px;
  padding: 16px;
  -webkit-transition: none;
  transition: none;
}

.au-register .float-bar .float-btns,
.t-hello-2001 .float-bar .float-btns,
.anamileagemall .float-bar .float-btns,
.gototravel .float-bar .float-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.au-register .float-bar .float-btns a,
.t-hello-2001 .float-bar .float-btns a,
.anamileagemall .float-bar .float-btns a,
.gototravel .float-bar .float-btns a {
  width: 224px;
}

.t-hello-2001 .float-bar .float-btns .floatbtn-wide,
.au-register .float-bar .float-btns .floatbtn-wide
 {
  max-width: 343px;
  width: 300px;
  height: 56px;
}

/* 下部固定フロートバー専用-active2-pc */
.au-register .float-bar.active2,
.t-hello-2001 .float-bar.active2 {
  -webkit-transform: none;
          transform: none;
  padding: 8px 16px;
  padding: 16px;
  -webkit-transition: none;
  transition: none;
}
/* /下部固定フロートバー専用-active2-pc */

/* au-registerページのフロートバー箇所のボタン専用-pc */
.au-register .float-bar .contents,
.au-register .float-bar.active2 .contents {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.au-register .float-bar .contents p,
.au-register .float-bar.active2 .contents p {
  display: inline-block;
  margin: 8px 16px 8px;
  white-space: nowrap;
}
.au-register .float-bar .float-btn-block a,
.au-register .float-bar.active2 .float-btn-block a {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  vertical-align: middle;
}
.au-register .float-bar .float-btn-block a span,
.au-register .float-bar.active2 .float-btn-block a span {
  width: 100%;
  display: block;
  margin-bottom: -12px;
  font-size: 10px;
  font-weight: normal;
}
/* /au-registerページのフロートバー箇所のボタン専用-pc */


@media (max-width: 767px) {
  .au-register .float-bar,
  .t-hello-2001 .float-bar,
  .anamileagemall .float-bar,
  .gototravel .float-bar {
    padding: 8px 16px;
  }
  .au-register .float-bar .float-btns a,
  .t-hello-2001 .float-bar .float-btns a,
  .anamileagemall .float-bar .float-btns a,
  .gototravel .float-bar .float-btns a {
    width: 166px;
    height: 40px;
    font-size: 1.4rem;
  }
  .t-hello-2001 .float-bar .float-btns .floatbtn-sp-wide,
  .au-register .float-bar .float-btns .floatbtn-sp-wide {
    width: 100%;
    height: 48px;
  }

  /* 下部固定フロートバー専用-active2-sp */
  .au-register .float-bar.active2,
  .t-hello-2001 .float-bar.active2 {
    padding: 8px 16px 24px;
  }
/* /下部固定フロートバー専用-active2-sp */

  /* au-registerページのフロートバー箇所のボタン専用-sp */
  .au-register .float-bar .contents,
  .au-register .float-bar.active2 .contents {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: auto;
  }
  .au-register .float-bar .contents p,
  .au-register .float-bar.active2 .contents p {
    margin-top: 0;
  }
  .au-register .float-bar .float-btn-block,
  .au-register .float-bar.active2 .float-btn-block {
    width: 100%;
    height: auto;
  }
  .au-register .float-bar .float-btn-block a span,
  .au-register .float-bar.active2 .float-btn-block a span {
    font-size: 8px;
  }
  /* /au-registerページのフロートバー箇所のボタン専用-sp */
}

/* hello、au-registerページのKV、スマプレロゴ変更用-SE以下で適用 */
@media (max-width: 374px) {
  .t-hello-2001 .key-visual .catch h1,
  .au-register .key-visual .catch h1 {
    font-size: 1.6rem;
    line-height: 0.5;
  }

  .t-hello-2001 .key-visual .catch h1 span,
  .au-register .key-visual .catch h1 span {
    font-size: 2.4rem;
  }

  .t-hello-2001 .key-visual .kv-coupon img,
  .au-register .key-visual .kv-coupon img
   {
    width: 328px;
    transform: translate(-53%,-13%);
  }

  .au-register .auSmartpass .smartpassPremiumLogo
   {
    width: 100%!important;
    height: auto!important;
  }
}
/* /hello、au-registerページのKV、スマプレロゴ変更用-SE以下で適用 */

@media (min-width: 768px) {
  .au-register .login.loginsignin-modal,
  .t-hello-2001 .login.loginsignin-modal,
  .anamileagemall .login.loginsignin-modal,
  .gototravel .login.loginsignin-modal {
    height: 477px;
  }
}

.au-register .login.loginsignin-modal .smapreBoost__banner,
.t-hello-2001 .login.loginsignin-modal .smapreBoost__banner,
.anamileagemall .login.loginsignin-modal .smapreBoost__banner,
.gototravel .login.loginsignin-modal .smapreBoost__banner {
  display: none;
}

.key-visual .sns a:hover {
  opacity: 0.7;
}

.type-page main > section {
  padding: 24px 0;
}

.type-page main h3 {
  margin-bottom: 16px;
  padding-top: 8px;
}

.type-page .bread-crumbs {
  padding-top: 60px;
}

.type-page .key-visual {
  height: 460px;
  background: url(/stcontents/img/sub-page/mv-type.jpg) center center no-repeat;
  background-size: cover;
  overflow: visible;
}

.type-page .key-visual h1 {
  margin-bottom: 8px;
}

.type-page .key-visual::before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.type-page .campaign-package .key-visual-complete::before {
  background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
  opacity: 0.8;
  transform: rotate(-180deg);
  height: 50%;
}

.type-page .key-visual .sns {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0;
  text-align: right;
  line-height: 1;
  z-index: 2;
}

.type-page .key-visual + section {
  padding-top: 24px;
}

.type-page .searchBoxArea {
  top: inherit;
  bottom: 48px;
}

.type-page .area-section h2 {
  margin-bottom: 16px;
}

.type-page .recommend {
  background: #F5F5F5;
  padding-bottom: 8px;
}

.type-page .frame-sub-list {
  margin-bottom: 8px;
}

.type-page .root-sub-list, .type-page .root-main-foot {
  padding: 0;
}

.type-page .other-type {
  padding-bottom: 0;
}

.type-page .other-type h2 {
  margin-bottom: 14px;
}

.type-page .year-ranking h2 {
  margin-bottom: 14px;
}

@media (min-width: 768px) {
  .type-page main > section {
    padding: 40px 0;
  }
  .type-page .bread-crumbs {
    padding-top: 160px;
  }
}

@media (max-width: 1023px) {
  .type-page .searchBoxArea {
    bottom: 64px;
  }
}

@media (max-width: 767px) {
  .type-page main h3 {
    margin-bottom: 8px;
  }
  .type-page .key-visual {
    height: 525px;
  }
  .type-page .key-visual .inner {
    top: inherit;
    bottom: 0;
    -webkit-transform: none;
            transform: none;
    padding-bottom: 144px;
    text-align: left;
  }
  .type-page .campaign-package .key-visual .inner.sp-text-left {
    text-align: left !important;
  }
  .type-page .searchBoxArea {
    bottom: 74px;
  }
}

/*
  シティエリア
*/
.type-city .key-visual {
  background: url(/stcontents/img/sub-page/kv-city.jpg) center center no-repeat;
  background-size: cover;
}

.col4-article ul .area-1 {
  background-image: url(/stcontents/img/sub-page/city-area-1.png);
  background-size: cover;
}

.col4-article ul .area-2 {
  background-image: url(/stcontents/img/sub-page/city-area-2.png);
  background-size: cover;
}

.col4-article ul .area-3 {
  background-image: url(/stcontents/img/sub-page/city-area-3.png);
  background-size: cover;
}

.col4-article ul .area-4 {
  background-image: url(/stcontents/img/sub-page/city-area-4.png);
  background-size: cover;
}

.col4-article ul .area-5 {
  background-image: url(/stcontents/img/sub-page/city-area-5.png);
  background-size: cover;
}

/*
  お子さま歓迎
*/
.type-kids main h2 {
  margin-bottom: -4px;
}

.type-kids main h3 {
  line-height: 1.5;
}

.type-kids .key-visual {
  background: url(/stcontents/img/sub-page/kv-kids.jpg) center center no-repeat;
  background-size: cover;
  height: 400px;
}

.type-kids .key-visual .inner {
  top: 65%;
}

.type-kids .spot {
  padding-top: 24px;
}

.type-kids .spot h3 {
  margin-bottom: 8px;
  padding-top: 16px;
}

.type-kids .spot h3 span {
  margin-left: 6px;
  font-weight: normal;
  font-size: 1.6rem;
  color: #757575;
}

.type-kids .recommend {
  padding-bottom: 28px;
}

.type-kids .recommend h3 {
  margin-bottom: 28px;
  padding-top: 12px;
}

.type-kids .recommend .sub-box {
  margin-bottom: 6px;
}

.type-kids .goods h2 {
  margin-bottom: 6px;
}

@media (max-width: 767px) {
  .type-kids .spot h3 {
    font-size: 2rem;
  }
  .type-kids .recommend h3 {
    margin-bottom: 12px;
  }
  .type-kids .key-visual {
    height: 375px;
  }
  .type-kids .key-visual .inner {
    top: 46%;
  }
}

@media (min-width: 768px) {
  .type-kids .spot .root-sub-list, .type-kids .spot .root-main-foot {
    padding-bottom: 32px;
    margin: 0 auto 24px;
    border-bottom: 4px solid #F5F5F5;
    max-width: 1120px;
  }
  .type-kids .spot .root-sub-list:last-child, .type-kids .spot .root-main-foot:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

/*
  温泉
*/
.feature-onsen .key-visual {
  background: url(/stcontents/img/feature/kv-onsen.jpg) center center no-repeat;
  background-size: cover;
  height: 400px;
}

.feature-onsen .key-visual .inner {
  top: 67%;
}

@media (max-width: 767px) {
  .feature-onsen .key-visual {
    height: 375px;
  }
  .feature-onsen .key-visual .inner {
    top: 46%;
  }
}

/*
  露天風呂特集
*/
.feature-roten .key-visual {
  background: url(/stcontents/img/feature/kv-roten.jpg) center center no-repeat;
  background-size: cover;
}

.feature-roten .key-visual .inner {
  top: inherit;
  bottom: 26px;
  -webkit-transform: none;
          transform: none;
  padding-bottom: 0;
}

@media (max-width: 1023px) {
  .feature-roten .key-visual .inner {
    bottom: 48px;
  }
}

@media (max-width: 767px) {
  .feature-roten .key-visual {
    height: 460px;
  }
  .feature-roten .key-visual .inner {
    bottom: 56px;
  }
}

/*
  USJ、TDL、ハウステンボス特集
*/
.feature-page .key-visual {
  height: 400px;
}

.feature-page .hotel-info-list {
  padding-top: 0;
}

.feature-tdr .flex-align .align-place,
.feature-usj .flex-align .align-place,
.feature-huistenbosch .flex-align .align-place {
  white-space: normal;
}
.feature-tdr .feature-hotel-list .sub-box-detail .line-clamp-one,
.feature-usj .feature-hotel-list .sub-box-detail .line-clamp-one,
.feature-huistenbosch .feature-hotel-list .sub-box-detail .line-clamp-one {
  display: -webkit-box;
}
.feature-usj .key-visual {
  background: url(/stcontents/img/feature/kv-usj.jpg) center center no-repeat;
  background-size: cover;
}

.feature-tdr .key-visual {
  background: url(/stcontents/img/feature/kv-tdr.jpg) center center no-repeat;
  background-size: cover;
}

.feature-huistenbosch .key-visual {
  background: url(/stcontents/img/feature/kv-huistenbosch.jpg) center center no-repeat;
  background-size: cover;
}

.mb-h2 {
  margin-bottom: 16px;
}

.pb-section {
  padding-bottom: 40px;
}

.type-page .search-section .bg-gray {
  padding-bottom: 40px;
}

.type-page .access-list {
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  .type-page .key-visual .inner.bottom {
    top: inherit;
    bottom: 44px;
    max-width: 1120px;
    margin: auto;
    -webkit-transform: none;
            transform: none;
    left: 0;
    right: 0;
  }
  .type-page .campaign-package .key-visual .inner.bottom {
    bottom: 40px;
  }
  .type-page .key-visual .inner.bottom h1 {
    margin-bottom: 20px;
  }
  .type-page .campaign-package .key-visual .inner.bottom h1 {
    margin-bottom: 8px;
  }
}

@media (max-width: 767px) {
  .result-hotel.new-style {
    border-bottom: 1px solid #c6c6c6;
  }
  .hotel-info-list .result-hotel .point-price-box .price {
    margin-bottom: 4px
  }
  .feature-page .key-visual {
    height: 525px;
  }
  .feature-page .result-hotel {
    border-radius: 8px;
  }
  .type-page .key-visual .inner.bottom {
    padding-bottom: 62px;
  }
  .type-page .campaign-package .key-visual .inner.bottom {
    padding-bottom: 40px;
  }
  .feature-hotel-list .intro-text {
    padding: 4px 0;
  }
  .feature-hotel-list .sub-box-detail .line-clamp,
  .feature-hotel-list .sub-box-detail .line-clamp-one {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mb-h2 {
    margin-bottom: 8px;
  }
  .pb-section {
    padding-bottom: 16px;
  }
  .type-page .search-section .wrap {
    padding: 0;
  }
  .type-page .search-section .bg-gray {
    padding-bottom: 24px;
  }
  .type-page .search-section .page-number {
    display: none !important;
  }
}

@media (max-width: 360px) {
  .feature-page .tab-box > * {
    font-size: 12px;
  }
}

/*
  ビジネス
*/
.type-biz .key-visual {
  background: url(/stcontents/img/sub-page/kv-biz.jpg) center center no-repeat;
  background-size: cover;
}

/*
  リゾート
*/
.type-resorts .key-visual {
  background: url(/stcontents/img/sub-page/kv-resorts.jpg) center center no-repeat;
  background-size: cover;
}

/*
  旅館
*/
.type-ryokan .key-visual {
  background: url(/stcontents/img/sub-page/kv-ryokan.jpg) center center no-repeat;
  background-size: cover;
}

/*
  ペンション
*/
.type-villa .key-visual {
  background: url(/stcontents/img/sub-page/kv-villa.jpg) center center no-repeat;
  background-size: cover;
}

.feature-onsen .key-visual::before,
.feature-usj .key-visual::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#0F0A64), to(rgba(15, 10, 100, 0.29)));
  background: -webkit-linear-gradient(top, #0F0A64 0%, rgba(15, 10, 100, 0.29) 100%);
  background: linear-gradient(180deg, #0F0A64 0%, rgba(15, 10, 100, 0.29) 100%);
  opacity: 0.5;
}

.sale-page .key-visual {
  background: url(/stcontents/img/sub-page/kv-reluxoffer.jpg) no-repeat center center;
  background-size: cover;
  height: 490px;
}

.sale-page .key-visual:before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.sale-page .key-visual .inner {
  top: inherit;
  bottom: 164px;
  -webkit-transform: none;
          transform: none;
}

.sale-page .key-visual .inner .title {
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8px;
}

.sale-page .key-visual .inner .title span {
  height: 52px;
  font-size: 2.6rem;
  line-height: 1.5;
  text-shadow: 1px 1px 1px #000;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 100px;
  padding: 6px 20px;
  margin-right: 8px;
}

.sale-page .key-visual .inner .title h1 {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 0px;
  line-height: 1.5;
}

.sale-page .key-visual .inner p {
  margin-bottom: 0;
  text-shadow: 1px 1px 1px #000;
}

.sale-page .search-box-col2 {
  bottom: 64px;
}

.sale-page .search-box-col2.float {
  background: #fff;
  width: 100%;
  position: fixed;
  top: 0;
  bottom: inherit;
  bottom: inherit;
  left: 0;
  -webkit-transform: none;
          transform: none;
  padding: 8px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
}

.sale-page .popup-position {
  top: auto;
  bottom: 66px;
}

.sale-page .popup-peopleroom {
  width: 430px;
}

.sale-page .region_tab .col6-article-2 .btn-scroll, .sale-page .region_tab .col6-article-2 .btn-scroll-2,
.sale-page .region_tab .col6-article-2 .btn-scroll-prev, .sale-page .region_tab .col6-article-2 .btn-scroll-prev-2 {
  z-index: 1;
}

@media screen and (max-width: 920px) {
  .sale-page .key-visual .inner .title {
    margin-bottom: 8px;
  }
  .sale-page .key-visual .inner .title span {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 32px;
    font-size: 2rem;
    padding: 0 10px;
  }
  .sale-page .key-visual .inner .title h1 {
    font-size: 2.6rem;
  }
}

.sale-page .search-box-col2 .checkin-out .pc-only {
  display: inline-block;
}

@media (max-width: 767px) {
  .sale-page .key-visual {
    height: 430px;
  }
  .sale-page .key-visual .inner {
    bottom: 144px;
    text-align: left;
  }
  .sale-page .key-visual .inner .title {
    display: block;
    margin: 0;
  }
  .sale-page .key-visual .inner .title span {
    margin: 0;
  }
  .sale-page .key-visual .inner .title br {
    display: none;
  }
  .sale-page .key-visual .inner .title h1 {
    width: 100%;
    line-height: 48px;
  }
  .sale-page .searchBox .checkin,
  .sale-page .searchBox .checkout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .sale-page .searchBox .checkin .main + .sub,
  .sale-page .searchBox .checkout .main + .sub {
    margin-left: 0;
  }
  .sale-page .search-box-col2 {
    bottom: 72px;
  }
  .sale-page .search-box-col2.float.modal-on {
    position: relative;
    width: 100%;
    background: #fff;
    top: -20px;
    bottom: auto;
    left: 0;
    padding: 0;
  }
  .sale-page .search-box-col2 .box .main {
    display: inline-block;
  }
  .sale-page .search-box-col2 .js-peopleroom {
    width: 29% !important;
  }
  .sale-page .search-box-col2 .checkin-out .pc-only {
    display: none;
  }
  .sale-page .search-box-col2 .checkin-out .sp-only {
    display: inline-block;
  }
  .sale-page .search-box-col2 .searchBox {
    border-right: 1px solid #0F0A64;
  }
}

.sale-page .searchBoxArea.float + div + .popup-position {
  position: fixed;
  top: 68px;
  bottom: auto;
}

/*
  早期割
*/
.sale-early .key-visual {
  background: url(/stcontents/img/sub-page/kv-early.jpg) center center no-repeat;
  background-size: cover;
}

/*
  直前割
*/
.sale-lastminute .key-visual {
  background: url(/stcontents/img/sub-page/kv-lastminute.jpg) center center no-repeat;
  background-size: cover;
}

/*
  ポイントアップ
*/
.sale-pointup .key-visual {
  background: url(/stcontents/img/sub-page/kv-pointup.jpg) center center no-repeat;
  background-size: cover;
}
.sale-pointup .ro-box .no-date .sub-box-detail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 22px 16px 24px !important;
}

.sale-pointup .ro-box .no-date .sub-box-detail.disabled {
 padding-top: 16px !important;
 padding-bottom: 16px !important;
}

.sale-pointup .ro-box .no-date .sub-box-detail .btn-disabled {
 background: #f5f5f5;
 border: none;
 opacity: 1;
 color: #c6c6c6;
}

/*
  タイムセール
*/
.sale-timesale .key-visual {
  background: url(/stcontents/img/sub-page/kv-timesale.jpg) center center no-repeat;
  background-size: cover;
}

/* トップページ */
.notfound h2 {
  margin-bottom: 16px;
}

.notfound p {
  font-size: 1.6rem;
  margin-bottom: 24px;
}

.notfound .wrap {
  padding-top: 120px;
  padding-bottom: 160px;
}

/* トップページ */
.error h2 {
  margin-bottom: 16px;
}

.error p {
  font-size: 1.6rem;
  margin-bottom: 24px;
}

.error .wrap {
  padding-top: 120px;
  padding-bottom: 160px;
}

.error .wrap .btn-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 16px;
}

.error .wrap .btn-group > a {
  min-width: 176px;
  margin-right: 16px;
}

.error .wrap .btn-group > a:last-child {
  margin-right: 0;
}

.error .wrap .error-code {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 16px auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  padding: 8px 24px;
  font-size: 1.6rem;
}

.error .wrap .error-code .clip-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
}

.error .wrap .error-code .clip-btn > span {
  text-decoration: underline;
}

.error .wrap .error-code .clip-btn > img {
  display: block;
  width: 24px;
  height: 24px;
}

.error .wrap .error-code .clip-btn:hover span {
  text-decoration: none;
}

.error .wrap .error-code .clip-btn.clicked {
  color: #757575;
}

.error .wrap .error-code .clip-btn.clicked span {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .error .wrap {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .error .wrap p {
    font-size: 1.4rem;
  }
  .error .wrap .error-code {
    width: 100%;
    font-size: 1.4rem;
  }
  .error .wrap .btn-small {
    height: 40px;
    font-size: 1.4rem;
  }
  .error .wrap .btn-group {
    margin-top: 24px;
    width: 100%;
  }
  .error .wrap .btn-group > a {
    width: 100%;
    min-width: 163px;
  }
}

.busy .wrap {
  padding-top: 120px;
  height: 100vh;
}

.busy .logo {
  width: 220px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 48px;
}

@media screen and (max-width: 767px) {
  .busy .wrap {
    padding-top: 48px;
    padding-left: 32px;
    padding-right: 32px;
  }
}

.r-maintenance {
  text-align: center;
}

.r-maintenance .wrap {
  padding-top: 120px;
}

.r-maintenance .relux-logo {
  width: 220px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 48px;
}

.r-maintenance .copyright {
  padding-bottom: 80px;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .r-maintenance {
    text-align: left;
    font-size: 1.4rem;
  }
  .r-maintenance .wrap {
    padding-top: 48px;
  }
  .r-maintenance .font-large {
    font-size: 1.6rem;
  }
  .r-maintenance .copyright {
    text-align: center;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.font-standard {
  font-size: 1.2rem;
}

/* PC */
@media screen and (min-width: 768px) {
  .font-standard {
    font-size: 1.4rem;
  }
}

.text-area-common-style textarea {
  border-style: solid;
  border-width: 1px;
  border-color: #C6C6C6;
  border-radius: 4px;
  outline: none;
  resize: none;
}

.text-area-common-style textarea::-webkit-input-placeholder {
  color: #c6c6c6;
  font-family: "NotoSansJP";
}

.text-area-common-style textarea::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #c6c6c6;
  font-family: "NotoSansJP";
}

.text-area-common-style textarea:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #c6c6c6;
  font-family: "NotoSansJP";
}

.text-area-common-style textarea:focus {
  border: 1px solid #0F0A64;
}

.text-area-common-style p {
  margin: 0;
  color: #757575;
  text-align: right;
}

.main-page {
  padding: 16px 0 150px 0;
  background-color: #F5F5F5;
}

.main-page-white {
  padding: 16px 0 150px 0;
}

/* PC */
@media screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
  .breadcrumb-nav.nonmember {
    margin-top: -24px !important;
  }
  .breadcrumb-nav.pc-page {
    margin: 0 auto;
    padding-bottom: 8px;
  }
  .message {
    width: 100%;
    height: 60px;
    background-color: #0F0A64;
    position: fixed;
    top: 0;
    left: 0;
    text-align: center;
    z-index: 60;
  }
  .message p {
    margin: 8.5px 0;
    color: #FFFFFF;
  }
  .text-area-common-style {
    width: 100%;
    max-width: 906px;
  }
  .text-area-common-style textarea {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 16px;
    width: 100%;
    height: 200px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .text-area-common-style textarea::-webkit-input-placeholder {
    font-size: 1.6rem;
  }
  .text-area-common-style textarea::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    font-size: 1.6rem;
  }
  .text-area-common-style textarea:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    font-size: 1.6rem;
  }
  .text-area-common-style p {
    line-height: 1.5;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .sp-title {
    margin: 24px 18px 16px;
  }
  .pc-only {
    display: none !important;
  }
  .message {
    width: 100%;
    height: 50px;
    background-color: #0F0A64;
    position: fixed;
    top: 0;
    left: 0;
    text-align: center;
    z-index: 60;
  }
  .message p {
    margin: 11px 0;
    color: #FFFFFF;
    font-size: 1.6rem;
  }
  .main-page {
    padding: 8px 0 20px 0;
    background-color: #F5F5F5;
  }
  .main-page-white {
    padding: 8px 0 20px 0;
  }
  .text-area-common-style textarea {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 8px;
    width: 100%;
    height: 120px;
    font-size: 1.4rem;
    font-size: 1.4rem;
    line-height: 2;
    -webkit-appearance: none;
  }
  .text-area-common-style textarea::-webkit-input-placeholder {
    font-size: 1.4rem;
    font-size: 1.4rem;
  }
  .text-area-common-style textarea::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    font-size: 1.4rem;
    font-size: 1.4rem;
  }
  .text-area-common-style textarea:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    font-size: 1.4rem;
    font-size: 1.4rem;
  }
  .text-area-common-style p {
    font-size: 1rem;
    line-height: 1.6;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
/* PC */
@media screen and (min-width: 768px) {
  .done-page {
    text-align: center;
  }
  .done-page .main-title {
    margin-bottom: 16px;
  }
  .done-page .title {
    margin-top: 16px;
  }
  .done-page p {
    margin-bottom: 24px;
  }
  .done-page a {
    margin-top: 16px;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .done-page {
    padding: 24px 0 16px;
    text-align: center;
  }
  .done-page .main-title {
    margin-bottom: 8px;
  }
  .done-page.none-breadcrumb {
    margin-bottom: 72px;
  }
  .done-page p {
    margin-bottom: 24px;
  }
  .done-page a {
    width: 100%;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.hotel-item {
  margin-bottom: 15px;
  position: relative;
}

.hotel-item p {
  margin: 0;
}

.hotel-item .bg-img {
  width: 100%;
  height: 300px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}

.hotel-item .bg-img::after {
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fff0), to(#000000));
  background-image: -webkit-linear-gradient(#fff0, #000000);
  background-image: linear-gradient(#fff0, #000000);
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.hotel-item .hotel-item-content {
  padding: 24px 32px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
}

.hotel-item .hotel-item-content .top-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotel-item .hotel-item-content .top-area span {
  margin-right: 10px;
}

.hotel-item .hotel-item-content .top-area .name {
  margin: 0 0 0 10px;
}

.hotel-item .hotel-item-content .top-area .name a {
  color: #fff;
}

.hotel-item .hotel-item-content .address span {
  position: relative;
}

.hotel-item .hotel-item-content .address span:first-child {
  margin-right: 15px;
}

.hotel-item .hotel-item-content .address span:not(:first-child) {
  padding-left: 15px;
}

.hotel-item .hotel-item-content .address span:not(:first-child)::before {
  width: 1px;
  height: 80%;
  background-color: #FFFFFF;
  -webkit-box-shadow: 1px 1px 1px #000000;
          box-shadow: 1px 1px 1px #000000;
  position: absolute;
  top: 15%;
  left: 0;
  content: "";
}

.hotel-item .hotel-item-content .detail-area {
  padding: 0 32px 24px 32px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: absolute;
  top: 143px;
  left: 0;
}

.hotel-item .hotel-item-content .detail-area .detail-info .info-item {
  margin-bottom: 2px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotel-item .hotel-item-content .detail-area .detail-info .info-item .detail-title {
  width: 126px;
  position: relative;
}

.hotel-item .hotel-item-content .detail-area .detail-info .info-item .detail-title::after {
  width: 2px;
  height: 80%;
  background-color: #FFFFFF;
  -webkit-box-shadow: 1px 1px 1px #000000;
          box-shadow: 1px 1px 1px #000000;
  position: absolute;
  top: 15%;
  right: 0;
  content: "";
}

.hotel-item .hotel-item-content .detail-area .detail-info .info-item .date {
  margin-left: 24px;
  margin-right: 14px;
}

.hotel-item .hotel-item-content .detail-area .detail-info .info-item .time span:first-child {
  margin-right: 10px;
}

.hotel-item .hotel-item-content .detail-area .right-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.hotel-item .hotel-item-content .detail-area .right-area .amount-area {
  margin-bottom: -10px;
}

.hotel-item .hotel-item-content .detail-area .right-area a {
  margin-left: 16px;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
  color: #333333;
  text-shadow: none;
}

.hotel-item .icon-favorite, .hotel-item .icon-favorite-on {
  position: absolute;
  top: 26px;
  right: 28px;
}

.hotel-item .write-review-area {
  padding: 12px 20px;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotel-item .write-review-area p {
  margin-left: 23px;
}

/* PCより小さい SPより大きい */
@media screen and (max-width: 1050px) and (min-width: 768px) {
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item:not(:last-child) {
    margin-bottom: 22px !important;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .detail-title {
    width: 100px !important;
    font-size: 1.2rem;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .date, .hotel-item .hotel-item-content .detail-area .detail-info .info-item .time {
    font-size: 1.2rem;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .hotel-item {
    margin-bottom: 8px;
    margin-right: -1px;
    margin-left: -1px;
    height: 318px;
    background-color: #FFFFFF;
    border: 1px solid #F5F5F5;
  }
  .hotel-item .bg-img {
    height: 168px;
  }
  .hotel-item .hotel-item-content {
    padding: 12px 16px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 0 16px 8px;
    height: 168px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-align-content: flex-end;
        -ms-flex-line-pack: end;
            align-content: flex-end;
  }
  .hotel-item .hotel-item-content .top-area {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .hotel-item .hotel-item-content .top-area .name {
    margin: 0;
    width: 100%;
    font-size: 2rem;
  }
  .hotel-item .hotel-item-content .address {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    font-size: 1.2rem;
  }
  .hotel-item .hotel-item-content .address span {
    padding-left: 0 !important;
    width: 100%;
    display: block;
  }
  .hotel-item .hotel-item-content .address span::before {
    display: none;
  }
  .hotel-item .hotel-item-content .detail-area {
    padding: 0 16px 12px 16px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    top: 175px;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info {
    width: 100%;
    color: #333333;
    font-size: 1.2rem;
    text-shadow: none;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-number {
    position: absolute;
    top: -160px;
    left: 16px;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-number .detail-title {
    width: auto !important;
    color: #FFFFFF !important;
    text-shadow: 1px 1px 1px #000000 !important;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-number .date {
    color: #FFFFFF !important;
    text-shadow: 1px 1px 1px #000000 !important;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-number p:nth-child(2) {
    margin-left: 6px;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-number p:nth-child(3) {
    margin-left: 6px;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .detail-title {
    width: 100%;
    color: #757575;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .detail-title::after {
    display: none;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .date {
    margin: 0;
    width: 134px;
    color: #333333;
    font-size: 1.2rem;
    font-weight: 700;
    text-shadow: none;
    white-space: nowrap;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .time {
    font-size: 1.2rem;
  }
  .hotel-item .hotel-item-content .detail-area .detail-info .info-item .time span:not(:last-child) {
    margin-right: 8px;
  }
  .hotel-item .hotel-item-content .detail-area .right-area {
    width: 100%;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .hotel-item .hotel-item-content .detail-area .right-area .amount-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-shadow: none;
  }
  .hotel-item .hotel-item-content .detail-area .right-area .amount-area .amount-title {
    margin-right: 8px;
    color: #757575;
  }
  .hotel-item .hotel-item-content .detail-area .right-area .amount-area .amount {
    font-size: 2rem;
    color: #333333;
  }
  .hotel-item .hotel-item-content .detail-area .right-area a {
    margin: 0;
    color: #757575;
    font-size: 1.6rem;
    font-weight: 400;
    text-decoration: underline;
  }
  .hotel-item .right-arrow {
    position: absolute;
    top: 100px;
    right: 17px;
  }
  .hotel-item .right-arrow::before {
    width: 2px;
    height: 10px;
    background-color: #FFFFFF;
    -webkit-box-shadow: 0 3px 6px #000000;
            box-shadow: 0 3px 6px #000000;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    content: "";
  }
  .hotel-item .right-arrow::after {
    width: 2px;
    height: 10px;
    background-color: #FFFFFF;
    -webkit-box-shadow: 0 1px 3px #000000;
            box-shadow: 0 1px 3px #000000;
    position: absolute;
    top: 6px;
    right: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    content: "";
  }
  .hotel-item .write-review-area {
    width: 100%;
    padding: 0 16px;
    position: absolute;
    left: 0;
    bottom: 16px;
  }
  .hotel-item .write-review-area a {
    width: 100%;
  }
  .hotel-item .icon-favorite, .hotel-item .icon-favorite-on {
    top: 16px;
    right: 16px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.options {
  position: relative;
  width: auto;
  display: block;
}

.options .dropdown {
  display: none;
}

.options ul {
  display: none;
  position: relative;
  top: auto;
  left: auto;
  margin: 0px;
  padding: 0px;
  list-style: none;
  border-radius: 0 0 4px 4px;
  border: 1px solid #C6C6C6;
  border-top: none;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
}

.options ul li {
  border: 1px solid #F5F5F5;
  border-top: none;
  background-color: #FFFFFF;
  font-size: 1.6rem;
  line-height: 48px;
  text-align: left;
  cursor: pointer;
}

.options ul li:last-child {
  border-radius: 0 0 4px 4px;
}

.options ul li span {
  color: #757575;
  font-size: 1.4rem;
}

.options ul li.active {
  background-color: #F5F5F5;
}

.options ul.active {
  display: block;
}

.options span.select-frame {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 48px;
  padding: 9px 16px;
  background-color: #FFFFFF;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  font-size: 1.6rem;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  cursor: pointer;
}

.options span.select-frame.empty {
  color: #C6C6C6;
}

.options span.select-frame-active {
  border-radius: 4px 4px 0 0 !important;
}

.options div {
  width: 48px !important;
  height: 48px !important;
  border-radius: 0 4px 4px 0 !important;
  position: absolute;
  top: 0 !important;
  right: 0 !important;
  cursor: pointer;
}

.options div::before, .options div::after {
  content: '';
  background-color: #ffffff;
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 13px !important;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.options div::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.options div::after {
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.options div.active {
  border-radius: 0 4px 0 0;
}

.options div.active::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.options div.active::after {
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.options.left-justified ul li {
  padding-left: 16px;
  text-align: left;
}

.modalbox-container .child-type .dropdown-select-button {
  pointer-events: none;
}

.options ul li {
  border-bottom: 1px solid #f5f5f5;
  padding-left: 16px;
}

.options ul li:last-child {
  border-bottom: none;
}

@media (max-width: 767px) {
  .text-box,
  .js-dropdown {
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 360px) {
  .options span.select-frame {
    padding: 8px 24px 8px 8px;
    font-size: 1.4rem;
    letter-spacing: 0;
  }
  .options ul li {
    padding-left: 8px;
    font-size: 1.4rem;
  }
  .options.left-justified ul li {
    padding-left: 8px;
  }
}

/* PC */
@media screen and (min-width: 768px) {
  .options {
    max-width: 592px;
  }
  .options ul {
    width: 100%;
    position: absolute;
    top: 48px;
    left: 0;
    z-index: 9;
  }
  .options ul li:hover {
    background-color: #F5F5F5;
  }
  .options span.select-frame {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .dropdown-sp {
    width: 100%;
    height: 48px;
    position: relative;
  }
  .dropdown-sp::before {
    width: 48px;
    height: 48px;
    background-color: #0F0A64;
    border-radius: 0 4px 4px 0;
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    z-index: 9;
  }
  .dropdown-sp::after {
    width: 19px;
    height: 10px;
    background-image: url(/stcontents/img/common/icon-arrow-bottom-white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    position: absolute;
    top: 20px;
    right: 14px;
    content: "";
    z-index: 10;
  }
  .dropdown-sp select {
    padding: 9px 10px;
    width: 100%;
    height: 48px;
    background-color: #FFFFFF;
    border: 1px solid #C6C6C6;
    border-radius: 6px;
    color: #757575;
    font-family: "Noto Sans JP";
    font-size: 1.6rem;
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* 右端の色違いver. */
.options-2 div {
  background-color: transparent;
}

.options-2 div::before, .options-2 div::after {
  background-color: #333;
}

.options-2 ul {
  overflow: auto;
  max-height: 350px;
}

/* 生年月日pulldown専用Style */
.dropdown-date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.options#birth-year {
  width: 104px;
}

.options#birth-month,
.options#birth-day {
  width: 84px;
}

.options#birth-month {
  margin-left: 4px;
  margin-right: 4px;
}

/* Color */
/* Font Size */
/* Font Weight */
.login .hidden-form {
  opacity: 0;
  height: 0;
  overflow: hidden;
  padding: 0;
}

/* PC */
@media screen and (min-width: 768px) {
  .login .wrap {
    padding: 0;
    max-width: 688px;
  }
  .login .login-item {
    position: relative;
    background: #FFFFFF;
  }
  .login .login-item .login-title {
    margin-top: 1px;
    margin-bottom: 40px;
  }
  .login .login-item .login-btn a {
    width: 100%;
    text-align: center;
  }
  .login .login-item .login-wrap-loginsignin {
    margin: 0 auto;
    padding: 24px 21px 29px 24px;
    width: 640px;
    background-color: #F5F5F5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea {
    width: 400px;
    margin-bottom: 24px;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .mail-text {
    color: #000;
    margin: 0 1px 16px 1px;
    height: 31px;
    text-align: center;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .login-input {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 16px;
    padding: 0 12px 0 41px;
    width: 400px;
    height: 48px;
    border: 1px solid #C6C6C6;
    border-radius: 4px;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .login-input::-webkit-input-placeholder {
    /* WebKit browsers */
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .login-input::-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .login-input::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .login-input:focus {
    outline: none;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .btn-block {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea .btn {
    margin: 0 auto;
  }
  .login .login-item .login-wrap-loginsignin .forget-password {
    margin-top: 20px;
    display: block;
    text-align: center;
    text-decoration: underline;
  }
  .login .login-item .login-wrap-loginsignin .forget-password:hover {
    color: #000;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .sns-text {
    margin-top: 0;
    margin-bottom: 19px;
    color: #000000;
    line-height: 28px;
    text-align: center;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .sns-icon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .sns-icon .btnWithIcon {
    width: 50px;
    height: 50px;
    margin-left: 24px;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .sns-icon .btnWithIcon:first-child {
    margin-left: 0;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .sns-icon a:hover {
    opacity: 0.7;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .btn-block {
    padding-right: 0;
    padding-left: 0;
    width: 100%;
    position: relative;
    display: block;
  }
  .login .login-item .login-wrap-loginsignin .wrap-sns .btn-icon {
    width: 50px;
    height: 50px;
    border: 1px solid #ccc;
    border-radius: 2px;
    background-color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .login .login-item .wrap-account-create {
    margin: 0 auto;
    padding-top: 34px;
    width: 640px;
    text-align: right;
  }
  .login .login-item .wrap-account-create .smapreBoost-banner {
    padding-top: 24px;
    padding-bottom: 150px;
  }
  .login .login-item .wrap-account-create .smapreBoost-banner a:hover {
    opacity: 0.7;
  }
  .login .input-box {
    margin-bottom: 16px;
  }
  .login .input-box .input-content2 > input {
    width: 100%;
  }
  .login-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: auto;
    margin-right: auto;
  }
  .login-wrap .btn-modal {
    height: 48px;
  }
  .login-wrap .banner-smartpass {
    display: block;
    margin: auto;
    margin-top: 32px;
  }
  .login-wrap-inner {
    width: 100%;
  }
  .btn-modal {
    height: 48px;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .login.wrap {
    margin-top: 24px;
  }
  .login .login-item {
    position: relative;
  }
  .login .login-item .login-title {
    margin-top: 24px;
    margin-bottom: 16px;
  }
  .login .login-item .login-btn a {
    height: 48px;
    width: 100%;
    text-align: center;
  }
  .login .login-item .login-wrap-loginsignin {
    margin: 0 auto;
    position: relative;
  }
  .login .login-item .login-wrap-loginsignin .mail-text {
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 16px;
  }
  .login .login-item .login-wrap-loginsignin .login-mailarea {
    margin-bottom: 40px;
  }
  .login .login-item .login-wrap-loginsignin .mail-icon-position {
    position: relative;
  }
  .login .login-item .login-wrap-loginsignin .mail-icon-position img {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 16px;
    left: 8px;
  }
  .login .login-item .login-wrap-loginsignin .password-icon-position {
    position: relative;
  }
  .login .login-item .login-wrap-loginsignin .password-icon-position img {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 16px;
    left: 8px;
  }
  .login .login-item .login-wrap-loginsignin .password-icon-position img.password-eye {
    left: auto;
    right: 8px;
  }
  .login .login-item .login-wrap-loginsignin .mail-icon-position.error .login-input,
  .login .login-item .login-wrap-loginsignin .password-icon-position.error .login-input {
    border-color: #ce0000;
    margin-bottom: 4px;
  }
  .login .login-item .login-wrap-loginsignin .mail-icon-position.error + .error-text,
  .login .login-item .login-wrap-loginsignin .password-icon-position.error + .error-text {
    display: block;
    color: #ce0000;
    margin-bottom: 16px;
  }
  .login .login-item .login-wrap-loginsignin .login-input {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 16px;
    padding: 0 12px 0 32px;
    width: 100%;
    height: 48px;
    border: 1px solid #C6C6C6;
    border-radius: 4px;
  }
  .login .login-item .login-wrap-loginsignin .login-input:focus {
    outline: none;
  }
  .login .login-item .login-wrap-loginsignin .login-input::-webkit-input-placeholder {
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-input:-ms-input-placeholder {
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-input::-ms-input-placeholder {
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .login-input::placeholder {
    color: #C6C6C6;
  }
  .login .login-item .login-wrap-loginsignin .btn-block {
    width: 100%;
  }
  .login .login-item .login-wrap-loginsignin .forget-password {
    margin: 16px 0;
    display: block;
    text-align: center;
    text-decoration: underline;
  }
  .login .login-item .login-wrap-loginsignin .snsSP .sns-text {
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 16px;
  }
  .login .login-item .login-wrap-loginsignin .snsSP .sns-icon {
    margin: 0 auto;
    height: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .login .login-item .login-wrap-loginsignin .snsSP .btn-icon {
    width: 50px;
    height: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border: 1px solid #ccc;
    border-radius: 2px;
  }
  .login .login-item .login-wrap-loginsignin .snsSP .btn-block {
    padding: 0;
  }
  .login .login-item .wrap-account-create {
    padding-bottom: 20px;
    padding-top: 40px;
    text-align: right;
  }
  .login .login-item .wrap-account-create .account-create {
    height: 32px;
  }
  .login .login-item .wrap-account-create .smapreBoost-banner {
    padding: 24px 8px 0 8px;
    max-width: 640px;
  }
  .login .login-item .wrap-account-create .smapreBoost-banner img {
    width: 100%;
    height: auto;
  }
  .login .attention {
    text-align: left;
  }
  .login .attention br {
    display: none;
  }
  .login-wrap .banner-smartpass {
    width: 100%;
    margin-top: 24px;
  }
  .auth-code-lead {
    font-size: 1.6rem;
  }
}

/* 移行UX画面 */
.login-02 main,
.login-08 main {
  height: 100vh;
  background: url(/stcontents/img/login/login-bg.jpg) center center no-repeat;
  background-size: cover;
  color: #FFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}

.login-02 main .wrap,
.login-08 main .wrap {
  width: 100%;
}

.login-02 .login-head p:first-child br,
.login-08 .login-head p:first-child br {
  display: none;
}

.login-02 .login-btns,
.login-08 .login-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.login-02 .login-btns .btn-relux,
.login-02 .login-btns .btn-default,
.login-08 .login-btns .btn-relux,
.login-08 .login-btns .btn-default {
  width: 100%;
}

.login-02 .login-btns .btn-default,
.login-08 .login-btns .btn-default {
  margin-right: 16px;
}

.login-02 .login-btns-inner,
.login-08 .login-btns-inner {
  width: 100%;
  max-width: 416px;
}

/* SP */
@media screen and (max-width: 767px) {
  .btn-small {
    height: 48px;
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 599px) {
  .login-02,
  .login-08 {
    text-align: left;
  }
  .login-02 main .wrap,
  .login-08 main .wrap {
    width: 100%;
    height: 100vh;
    position: relative;
    padding: 24px;
  }
  .login-02 .login-head,
  .login-08 .login-head {
    margin-bottom: 0 !important;
  }
  .login-02 .login-head p:first-child,
  .login-08 .login-head p:first-child {
    font-size: 2.6rem;
  }
  .login-02 .login-head p:first-child br,
  .login-08 .login-head p:first-child br {
    display: block;
  }
  .login-02 .login-btns,
  .login-08 .login-btns {
    position: absolute;
    left: 0;
    bottom: 48px;
    width: 100%;
    padding: 0 24px;
  }
  .login-02 .login-btns .btn-default,
  .login-08 .login-btns .btn-default {
    margin-right: 0;
    margin-top: 16px;
  }
  .login-02 .login-btns-inner,
  .login-08 .login-btns-inner {
    max-width: 100%;
    text-align: center;
  }
  .login-02 .login-head {
    padding: 16px 8px;
    white-space: nowrap;
    text-align: left;
  }
}

.login-03,
.login-04 {
  text-align: center;
}

.login-03 main,
.login-04 main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 100vh;
}

.login-03 main .wrap,
.login-04 main .wrap {
  width: 100%;
  max-width: 768px;
}

.login-03 .input-box-wrap,
.login-04 .input-box-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.login-03 .input-box,
.login-04 .input-box {
  width: 100%;
  max-width: 400px;
}

.login-03 .input-box .btn-relux,
.login-04 .input-box .btn-relux {
  width: 100%;
}

/* SP */
@media screen and (max-width: 599px) {
  .login-03,
  .login-04 {
    text-align: left;
  }
  .login-03 main,
  .login-04 main {
    display: block;
    height: auto;
  }
  .login-03 .bg-gray,
  .login-04 .bg-gray {
    background: #FFF;
    padding: 0 !important;
  }
  .login-03 .login-message,
  .login-04 .login-message {
    margin-bottom: 24px !important;
  }
  .login-03 .login-message br,
  .login-04 .login-message br {
    display: none;
  }
  .login-03 .input-box-wrap,
  .login-04 .input-box-wrap {
    display: block;
  }
  .login-03 .input-box,
  .login-04 .input-box {
    max-width: 100%;
  }
}

.login-05 .login-05-message {
  color: #757575;
}

.login-05 .login-05-message .data-none {
  color: #CE0000;
}

@media screen and (min-width: 768px) {
  .login-05 .login-05-message {
    padding: 0 16px;
  }
}

/* SP */
@media screen and (max-width: 599px) {
  .login-05 .content-edit {
    padding-bottom: 134px;
  }
}

@media (min-height: 900px) {
  .login-05 .float-bar {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.login-07 .content {
  padding: 0 16px;
}

.login-07 .input-error-word {
  text-align: left;
}

.login-07 .save-btn a {
  width: 176px;
}

.address-registered {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  background: #F5F5F5;
  padding: 8px 16px;
}

/* SP */
@media screen and (max-width: 599px) {
  .login-07 .content {
    padding-bottom: 40px !important;
  }
}

@media screen and (max-width: 414px) {
  .address-registered {
    display: block;
  }
}

@media (min-height: 735px) {
  .login-07 .float-bar {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.login-08 main {
  height: calc(100vh - 84px);
  background: url(/stcontents/img/login/login-bg-02.jpg) center center no-repeat;
}

.login-08 main .wrap {
  width: 100%;
}

/* SP */
@media screen and (max-width: 599px) {
  .login-08 main {
    height: calc(100vh - 84px);
  }
  .login-08 main .wrap {
    height: calc(100vh - 84px);
    padding: 16px;
  }
  .login-08 .login-head {
    text-align: center;
    margin-top: 45%;
  }
  .login-08 .login-btns {
    padding: 0 16px;
    bottom: 16px;
  }
}

@media screen and (min-width: 767px) {
  .d-pc-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 599px) {
  .d-tb-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 599px) {
  .d-sp-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
/* PC */
@media screen and (min-width: 768px) {
  .logout .logout-item .wrap-logout p {
    text-align: center;
    color: #333;
  }
  .logout .logout-item .wrap-logout .logout-title {
    margin: 0 auto;
    padding-bottom: 24px;
  }
  .logout .logout-item .wrap-logout .logout-text {
    margin: 0 auto;
  }
  .logout .logout-item .wrap-logout .logout-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .logout .logout-item .wrap-logout .logout-btn .btn-relux {
    min-width: 300px;
  }
  .logout .logout-item .wrap-logout .btn-block {
    min-width: 169px;
    height: 56px;
    display: block;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .logout .logout-item {
    text-align: center;
  }
  .logout .logout-item .wrap-logout p {
    text-align: center;
    color: #333;
  }
  .logout .logout-item .wrap-logout .logout-title {
    margin: 0 auto;
  }
  .logout .logout-item .wrap-logout .logout-text {
    margin-bottom: 36px;
  }
  .logout .logout-item .wrap-logout .btn {
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
  .logout .logout-item .wrap-logout .btn-block {
    width: 100%;
    min-height: 40px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
/* PC */
.browsing-history .top-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.browsing-history .browsing-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.browsing-history .browsing-area .hotel-card-item {
  margin-top: 16px;
  margin-right: 30px;
  width: calc((100% - 60px) / 3);
  height: 200px;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  position: relative;
}

.browsing-history .browsing-area .hotel-card-item:nth-child(3n) {
  margin-right: 0;
}

.browsing-history .browsing-area .hotel-card-item .card-item {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 8px;
  cursor: pointer;
}

.browsing-history .browsing-area .hotel-card-item .card-item::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.browsing-history .browsing-area .hotel-card-item .card-item:hover {
  opacity: 0.7;
}

.browsing-history .browsing-area .hotel-card-item .card-item-content {
  position: absolute;
  bottom: 18px;
  left: 16px;
  z-index: 1;
}

.browsing-history .browsing-area .hotel-card-item .card-item-content .icon-grade {
  margin-left: 0;
  width: 20px;
  height: 20px;
  letter-spacing: 0;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
}

.browsing-history .browsing-area .hotel-card-item .card-item-content p {
  margin: 0;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
}

.browsing-history .browsing-area .hotel-card-item .icon-favorite, .browsing-history .browsing-area .hotel-card-item .icon-favorite-on {
  position: absolute;
  top: 21px;
  right: 21px;
  z-index: 1;
}

.browsing-history .browsing-area .hotel-card-item .browsing-delete-btn {
  width: 52px;
  height: 52px;
  background-image: url(/stcontents/img/my-page/icon-delete-btn.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: absolute;
  top: 13px;
  right: 10px;
  animation: btn-display 0.3s;
  -webkit-animation: btn-display 0.3s;
  cursor: pointer;
  z-index: 1;
}

.browsing-history .browsing-area .hotel-card-item .browsing-delete-btn:hover {
  background-image: url(/stcontents/img/my-page/icon-delete-btn-hover.svg);
}

@keyframes btn-display {
  0% {
    -webkit-transform: scale(0.25);
            transform: scale(0.25);
  }
  30% {
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  60% {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes btn-display {
  0% {
    -webkit-transform: scale(0.25);
  }
  30% {
    -webkit-transform: scale(0.5);
  }
  60% {
    -webkit-transform: scale(0.75);
  }
  100% {
    -webkit-transform: scale(1);
  }
}

.browsing-history .btn-group {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin-top: 0;
  padding: 16px;
  background-color: #fff;
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  text-align: center;
  z-index: 100;
}

.browsing-history .btn-group a {
  min-width: 176px;
  padding: 10px;
}

.browsing-history .btn-group a:first-child {
  margin-right: 10px;
}

.browsing-history .btn-group a.btn-wide {
  min-width: 300px;
}

/* SP */
@media screen and (max-width: 767px) {
  .browsing-history {
    padding-top: 16px;
    padding-bottom: 0;
  }
  .browsing-history .browsing-area .hotel-card-item {
    margin-right: 0;
    width: 100%;
    height: 140px;
  }
  .browsing-history .browsing-area .hotel-card-item .browsing-delete-btn {
    width: 31px;
    height: 31px;
    top: 9px;
    right: 8px;
  }
  .browsing-history .browsing-area .hotel-card-item .card-item-content .icon-grade {
    width: 12px;
    height: 12px;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
  }
  .browsing-history .btn-group {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 0;
    padding: 8px 16px 16px;
    background-color: #fff;
    -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .browsing-history .btn-group a {
    min-width: 153px;
    width: 50%;
  }
  .browsing-history .btn-group a.btn-sp-x-small {
    height: 40px;
    font-size: 1.4rem;
  }
  .browsing-history .btn-group a:first-child {
    margin-right: 8px;
  }
  .browsing-history .btn-group .btn-wide {
    width: 100%;
  }
  .browsing-history-none p {
    margin: 24px 0;
  }
  .browsing-history-none .btn-group {
    margin-top: 0;
  }
  .browsing-history-none .btn-group .btn-wide {
    margin-right: 0 !important;
  }
}

.edit-mode .browsing-area .hotel-card-item a {
  pointer-events: none;
}

/* Color */
/* Font Size */
/* Font Weight */
.cancel-input .page-white {
  padding: 0 0 40px;
  background-color: #FFFFFF;
}

.cancel-input .title-area {
  margin-top: -16px;
  padding: 16px 0;
  background-color: #FFFFFF;
}

.cancel-input .title-area .comment {
  margin-bottom: 0;
}

.cancel-input .cancel-input-content {
  margin-left: 32px;
}

.cancel-input .cancel-input-content .hotel-item {
  margin-left: -32px;
}

.cancel-input .cancel-input-content .cancel-content {
  width: 73%;
}

.cancel-input .cancel-input-content .cancel-content .cancel-info-title {
  margin: 40px 0 8px 0;
}

.cancel-input .cancel-input-content .cancel-content .cancel-info-title.mt-16 {
  margin-top: 16px;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-fee {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-fee img {
  margin-right: 5px;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-policy {
  padding: 16px;
  border-bottom: 1px solid #C6C6C6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-policy p {
  margin: 0;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-policy .amount {
  margin-right: 10px;
}

.cancel-input .cancel-input-content .cancel-content .cancellation-policy.mark {
  border-top: 1px solid #C6C6C6;
}

.cancel-input .cancel-input-content .cancel-content .supplement {
  margin-top: 8px;
}

.cancel-input .cancel-input-content .cancel-content .supplement-info {
  line-height: 1.7;
}

.cancel-input .cancel-input-content .cancel-content .text-area-common-style {
  margin-top: 16px;
}

.cancel-input .cancel-input-content .table-basic th {
  min-width: 288px;
}

.cancel-input .btn-group {
  margin-top: 44px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.cancel-input .btn-group a, .cancel-input .btn-group button {
  width: 176px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.cancel-input .btn-group a:not(:last-child), .cancel-input .btn-group button:not(:last-child) {
  margin-right: 16px;
}

.cancel-input .options span.select-frame {
  padding: 9px 48px 9px 16px;
  display: block;
}

.policy-model {
  max-width: 512px;
}

.policy-model .modal-container {
  padding: 48px 24px 16px;
}

.policy-model .modal-container p img {
  margin-right: 12px;
  margin-bottom: -3px;
}

.policy-model .modal-container .time span::after {
  content: "：";
}

/* SP */
@media screen and (max-width: 767px) {
  .cancel-input {
    padding: 0;
  }
  .cancel-input .btn-small {
    height: 48px;
  }
  .cancel-input .page-white {
    padding: 16px 16px 40px;
  }
  .cancel-input .title-area {
    padding-bottom: 0;
  }
  .cancel-input .title-area .title {
    font-size: 1.6rem;
  }
  .cancel-input .title-area .comment {
    font-size: 1.2rem;
  }
  .cancel-input .cancel-input-content {
    margin-left: 0;
  }
  .cancel-input .cancel-input-content .hotel-item {
    margin-left: -1px;
  }
  .cancel-input .cancel-input-content .cancel-content {
    width: 100%;
  }
  .cancel-input .cancel-input-content .cancel-content .cancel-info-title {
    margin: 32px 0 8px;
    font-size: 2rem;
  }
  .cancel-input .cancel-input-content .cancel-content .table-basic p {
    margin-bottom: 0;
  }
  .cancel-input .cancel-input-content .cancel-content .cancellation-policy-word {
    font-size: 1.6rem;
  }
  .cancel-input .cancel-input-content .cancel-content .cancellation-policy {
    padding: 8px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .cancel-input .cancel-input-content .cancel-content .cancellation-policy p:last-child {
    text-align: right;
  }
  .cancel-input .cancel-input-content .cancel-content .cancellation-policy .amount {
    display: block;
    font-size: 1.6rem;
  }
  .cancel-input .cancel-input-content .cancel-content .cancellation-policy .amount-rule {
    display: block;
    color: #757575;
    font-size: 1rem;
  }
  .cancel-input .cancel-input-content .cancel-content .supplement-info {
    margin-top: 12px;
  }
  .cancel-input .btn-group a:not(:last-child) {
    margin-right: 8px;
  }
  .policy-model {
    max-width: 343px;
    max-height: 230px;
  }
  .policy-model .modal-container {
    padding: 24px 14px 16px;
    max-width: 343px;
    max-height: 230px;
    border-radius: 8px;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  }
  .policy-model .modal-container .modal-container-inner {
    text-align: center;
  }
  .policy-model .modal-container p {
    text-align: left;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .policy-model .modal-container .note {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 400;
  }
  .policy-model .modal-container .time {
    margin-top: 14px;
    margin-bottom: 15px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  .policy-model .modal-container .time span {
    margin-right: 15px;
    font-size: 1.2rem;
    font-weight: 700;
  }
  .policy-model .modal-container a {
    margin: 0 2px;
    width: calc(100% - 4px);
  }
  .policy-model.policy-impossible-model {
    max-height: 152px;
  }
  .policy-model.policy-impossible-model .modal-container {
    padding: 16px;
    max-height: 152px;
    width: 100%;
  }
  .policy-model.policy-impossible-model .modal-container .modal-container-inner {
    width: 100%;
  }
  .policy-model.policy-impossible-model .modal-container .modal-container-inner p {
    text-align: center;
  }
  .policy-model.policy-impossible-model .modal-container .modal-container-inner a {
    margin: 0;
    width: 100%;
  }
}

.mp-change-mail {
  /*pc*/
  /*sp*/
}

.mp-change-mail .resist-mail {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
  height: auto;
  padding: 8px 16px;
  margin: 0 auto 16px;
}

.mp-change-mail .resist-mail > p {
  margin-bottom: 0;
}

.mp-change-mail .resist-mail > p:first-child {
  margin-right: 16px;
  display: block;
}

.mp-change-mail .content {
  padding-bottom: 160px;
}

.mp-change-mail .content .btn-smaller {
  height: 48px;
}

.mp-change-mail .content .input-box {
  margin-right: auto;
  margin-left: auto;
  max-width: 400px;
}

.mp-change-mail .content .input-box .input-content {
  position: relative;
}

.mp-change-mail .content .input-box .icon-eye {
  left: auto;
}

.mp-change-mail .content .input-box .btn-relux {
  width: 100%;
}

.mp-change-mail .content .input-error-word {
  display: none;
}

.mp-change-mail .content .input-error-word.active {
  display: block;
}

.mp-change-mail .note {
  padding: 24px 150px;
  text-align: center;
  font-size: 16px;
  margin-top: 40px;
}

.mp-change-mail .note li {
  padding-left: 1em;
  text-indent: -1em;
}

.mp-change-mail .note-text {
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.mp-change-mail .note-text li {
  font-size: 14px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
}

.mp-change-mail .btn-group {
  margin: 40px auto 160px;
}

.mp-change-mail .btn-group a {
  width: 176px;
}

@media screen and (min-width: 768px) {
  .mp-change-mail .code-submit-btn a, .mp-change-mail .code-submit-btn button {
    width: 192px !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .mp-change-mail .note {
    padding: 24px;
  }
}

@media screen and (max-width: 767px) {
  .mp-change-mail .content {
    padding-bottom: 80px;
    /*h2 {
        font-size: 2.4rem;
      }*/
  }
  .mp-change-mail .note {
    padding: 16px;
    text-align: left;
    margin-top: 24px;
  }
  .mp-change-mail .btn-group {
    margin-top: 24px;
  }
  .mp-change-mail .btn-group a {
    width: calc(50% - 6px);
  }
  .mp-change-mail .code-submit-btn a, .mp-change-mail .code-submit-btn button {
    width: 50% !important;
  }
}

@media screen and (max-width: 432px) {
  .mp-change-mail .content {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
  .mp-change-mail .content .code-message {
    text-align: left;
  }
  .mp-change-mail .content .color-gray-2 {
    text-align: left;
  }
}

/* メールアドレスの確認画面 */
@media screen and (max-width: 767px) {
  .confirm-mail .policy-impossible-model .modal-container {
    padding: 16px;
    max-height: 200px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .confirm-mail .policy-impossible-model .modal-container .btn-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0;
  }
  .confirm-mail .policy-impossible-model .modal-container .btn-group a {
    width: 142px;
    height: 40px;
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 768px) {
  .confirm-mail .modal-container {
    padding: 40px;
  }
  .confirm-mail .modal-container .btn-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0;
  }
  .confirm-mail .modal-container .btn-group a {
    width: 176px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.my-page-coupon body {
  background: #F5F5F5;
}

.my-page-coupon .bg-white img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: auto;
}

.my-page-coupon h1 {
  padding-bottom: 0 !important;
}

.my-page-coupon .coupon-head,
.my-page-coupon .coupon-head-sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-coupon .coupon-head {
  display: none;
}

.my-page-coupon .coupon-data-wrap {
  cursor: auto;
}

.my-page-coupon .coupon-back a {
  width: 300px;
}

.my-page-coupon .half-modal-content li {
  font-size: 1rem;
}

.my-page-coupon .coupon-target-hotel li {
  font-size: 1.2rem;
}

.my-page-coupon .tab-content-coupon .btn-to-top {
  margin-top: 77px;
}

.my-page-coupon .tab-content-sum,
.my-page-coupon .tab-content-coupon,
.my-page-coupon .tab-content-ponta,
.my-page-coupon .tab-content-relux {
  max-width: 928px;
  margin-left: auto;
  margin-right: auto;
}

.my-page-coupon .tag-coupon,
.my-page-coupon .tag-fcfs,
.my-page-coupon .tag-done {
  height: 16px;
  -webkit-transform: none;
          transform: none;
  margin-right: 4px;
}

.my-page-coupon .point-modal {
  padding-bottom: 40px;
}

.my-page-coupon .point-modal .content-item-sum {
  border: 2px solid #c6c6c6;
  margin-bottom: 8px;
  padding: 16px;
  background: #FFF;
}

.my-page-coupon .point-modal .content-item-sum .point-available dd {
  font-size: 1.6rem;
}

.my-page-coupon .point-modal .content-item-sum .point-available dt {
  font-size: 2.4rem;
}

.my-page-coupon .point-modal .content-item-ponta {
  margin-bottom: 8px;
  padding: 16px;
  background: #FFF;
}

.my-page-coupon .point-modal .content-item-ponta .title-ponta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-coupon .point-modal .content-item-ponta .title-ponta .text-right {
  margin-left: 8px;
}

.my-page-coupon .point-modal .content-item-ponta .point-box {
  display: block;
  margin-bottom: 4px;
}

.my-page-coupon .point-modal .content-item-ponta .btn-xx-small {
  width: 100%;
}

.my-page-coupon .point-modal .point-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-coupon .point-modal .point-title .title {
  margin: 0;
}

.my-page-coupon .point-modal .point-title img {
  margin-left: 8px;
}

.my-page-coupon .content-item-list .content-item:first-child {
  border-top: 1px solid #C6C6C6;
}

.my-page-coupon .point-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.my-page-coupon .point-available {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-coupon .point-available dd {
  margin-right: 8px;
  font-size: 1.2rem;
  letter-spacing: 0;
}

.my-page-coupon .point-available dt, .my-page-coupon .point-available p {
  font-size: 2rem;
  font-weight: bold;
}

.my-page-coupon .point-expiration {
  color: #757575;
  letter-spacing: 0;
}

.my-page-coupon .content-item-relux {
  margin-bottom: 24px;
  padding: 16px;
  background: #FFF;
}

.my-page-coupon .content-item-relux .title-relux {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-coupon .content-item-relux .title-relux .text-right {
  margin-left: 8px;
}

.my-page-coupon .content-item-relux .point-box {
  display: block;
  margin-bottom: 4px;
}

.my-page-coupon .content-item-coupon.empty {
  margin-bottom: 16px;
  padding: 16px;
  background: #FFF;
  border: 1px solid #fff;
}

.my-page-coupon .tab-box {
  padding: 0;
}

.my-page-coupon .point-modal .content-item-sum {
  position: relative;
}

.my-page-coupon .point-modal .hotel-grade {
  width: 560px;
  background: #fff;
  padding: 24px 40px 32px;
  position: absolute;
  height: auto;
  left: 35%;
  top: inherit;
  bottom: -94px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border: 1px solid #F5F5F5;
  -webkit-box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .my-page-coupon .point-modal .hotel-grade {
    width: 100%;
    padding: 40px 24px 24px;
    left: 50%;
  }
  .my-page-coupon .point-modal .hotel-grade div p:first-of-type {
    font-size: 1.4rem;
  }
  .my-page-coupon .point-modal .hotel-grade div p:last-of-type {
    font-size: 1rem;
  }
  .my-page-coupon .point-modal .hotel-grade:after {
    content: "×";
    position: absolute;
    top: 6px;
    right: 14px;
    font-size: 18px;
  }
}

@media screen and (min-width: 768px) {
  .my-page-coupon .coupon-head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .my-page-coupon .coupon-head-sp {
    display: none;
  }
  .my-page-coupon .common-modal-min {
    max-width: 600px;
    max-width: 540px;
    height: 336px;
  }
  .my-page-coupon .common-modal-min .modal-container {
    border-radius: 8px;
  }
  .my-page-coupon .tab-content-coupon .btn-to-top {
    margin-top: 0;
  }
  .my-page-coupon .tag-coupon,
  .my-page-coupon .tag-fcfs,
  .my-page-coupon .tag-done {
    height: 20px;
    -webkit-transform: none;
            transform: none;
  }
  .my-page-coupon .reserve-input-point input {
    width: 65%;
    width: calc(100% - 120px);
  }
  .my-page-coupon .point-modal .content-item-sum {
    padding: 24px 64px;
    margin-bottom: 16px;
  }
  .my-page-coupon .point-modal .content-item-sum .point-info {
    position: relative;
  }
  .my-page-coupon .point-modal .point-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .my-page-coupon .point-modal .content-item-ponta {
    margin-bottom: 16px;
    padding: 24px 64px;
  }
  .my-page-coupon .point-modal .content-item-ponta .btn-xx-small {
    width: auto;
  }
  .my-page-coupon .point-modal .content-item-ponta .point-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .my-page-coupon .point-modal .content-item-ponta .title-ponta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .my-page-coupon .point-modal .content-item-ponta .title-ponta .text-right {
    margin-left: 16px;
  }
  .my-page-coupon .point-info {
    display: block;
  }
  .my-page-coupon .point-available {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .my-page-coupon .point-available dd {
    margin-right: 16px;
    font-size: 1.6rem;
    letter-spacing: 1px;
  }
  .my-page-coupon .point-available dt {
    font-size: 2rem;
  }
  .my-page-coupon .point-expiration {
    letter-spacing: 1px;
  }
  .my-page-coupon .content-item-relux {
    margin-bottom: 40px;
    padding: 24px 64px;
  }
  .my-page-coupon .content-item-relux.empty {
    margin-bottom: 16px;
  }
  .my-page-coupon .content-item-relux .title-relux .text-right {
    margin-left: 16px;
  }
  .my-page-coupon .content-item-coupon.empty {
    padding: 24px 64px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.registration-information .information > div:nth-child(1) > div {
  width: 100%;
  display: table-row;
}

.registration-information .information > div:nth-child(1) > div span:nth-child(1) {
  display: table-cell;
}

.registration-information .information > div:nth-child(1) > div span:nth-child(2) {
  display: table-cell;
}

.registration-information .update-information > div:nth-child(1) > div .update-information-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.change-password .new-password input.warn {
  border-color: #CE0000;
}

.change-password .new-password .password > div:nth-child(2) {
  position: relative;
}

.change-password .new-password .password > div:nth-child(2) .icon-eye {
  position: absolute;
}

.change-password .new-password .password > div:nth-child(2) .warn-word {
  margin-top: 16px;
  display: none;
}

.change-password .new-password .password > div:nth-child(2) .warn-word.active {
  display: block;
}

.social-account-integration .integration {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.social-account-integration .integration > dl {
  width: 100%;
}

.social-account-integration .integration > dl dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: left;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.social-account-integration .integration > dl dd a:hover {
  color: #554B98;
}

.email-reception-settings .settings .setting-item .setting-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.withdrawal-procedure .withdrawal-content .description > ul {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1.75;
}

.withdrawal-procedure .withdrawal-content .content .withdrawal-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.withdrawal-procedure .withdrawal-content .btn-warn {
  margin-top: 8px;
  margin-bottom: 30px;
  text-align: center;
}

.update-btn {
  margin-top: 40px;
  margin-bottom: 40px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.member-options {
  display: inline-block;
  position: relative;
}

.member-options .dropdown {
  display: none;
}

.member-options ul, .member-options li, .member-options span {
  -webkit-user-select: none;
  -moz-user-select: none;
  /*firefox*/
  -ms-user-select: none;
      user-select: none;
}

.member-options ul {
  margin: 0px;
  padding: 0px;
  top: 37px;
  left: 0;
  width: 100%;
  max-height: 350px;
  border-radius: 4px;
  display: none;
  position: absolute;
  list-style: none;
  z-index: 1;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  overflow: auto;
}

.member-options ul li {
  height: 40px;
  border: 1px solid #F5F5F5;
  border-top: none;
  background-color: #FFFFFF;
  line-height: 40px;
  text-align: center;
  cursor: pointer;
}

.member-options ul li span {
  color: #757575;
  font-size: 0.875rem;
}

.member-options ul li.active {
  background-color: #F5F5F5;
}

.member-options ul.active {
  display: block;
}

.member-options span.select-frame {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 0 8px 11px;
  width: 100%;
  border-bottom: 2px solid #C6C6C6;
  display: block;
  color: #757575;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.member-options div {
  width: 17px;
  height: 9px;
  position: absolute;
  top: 9px;
  right: 0;
  cursor: pointer;
}

.member-options div::before, .member-options div::after {
  content: '';
  background-color: #333333;
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 21px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.member-options div::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.member-options div::after {
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.member-options div.active::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.member-options div.active::after {
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

/* pc */
@media screen and (min-width: 768px) {
  .main-content {
    padding: 24px;
    background-color: #FFFFFF;
  }
  .main-content .registration-information .information > div:nth-child(1) span:nth-child(1) {
    padding-left: 16px;
    padding-top: 24px;
    width: 279px;
  }
  .main-content .registration-information .information > div:nth-child(1) span:nth-child(2) {
    padding-top: 24px;
  }
  .main-content .registration-information .update-information {
    margin-left: 16px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) {
    margin-top: 24px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div {
    margin-bottom: 40px;
    width: 100%;
    max-width: 720px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div .update-information-title {
    margin-bottom: 8px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(1) > p:nth-child(2) input {
    width: 47.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(1) > p:nth-child(2) input:nth-child(1) {
    margin-right: 3.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(2) > p:nth-child(2) input {
    width: 47.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(2) > p:nth-child(2) input:nth-child(1) {
    margin-right: 3.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(3) > p:nth-child(2) input {
    width: 100%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(4) > div:nth-child(2) div {
    margin-right: 24px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(4) > div:nth-child(2) div label {
    margin-right: 7px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options {
    width: 99px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(6) p input {
    width: 69px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(7) p input {
    width: 217px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(8) p input {
    width: 108px;
  }
  .main-content .change-password .new-password > div:nth-child(1) {
    margin-top: 24px;
  }
  .main-content .change-password .new-password > div:nth-child(2) {
    margin-top: 40px;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) {
    margin-top: 12px;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) .icon-eye {
    left: 321px;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) input {
    padding-bottom: 8px;
    width: 344px;
  }
  .main-content .social-account-integration .integration dl:nth-child(1) {
    margin-top: 24px;
  }
  .main-content .social-account-integration .integration dl:nth-last-child(1) {
    margin-bottom: 13px;
  }
  .main-content .social-account-integration .integration > dl {
    margin-left: 16px;
    margin-bottom: 28px;
  }
  .main-content .social-account-integration .integration > dl dt {
    width: 168px;
  }
  .main-content .social-account-integration .integration > dl dt img {
    width: 24px;
    height: 24px;
  }
  .main-content .social-account-integration .integration > dl dt span {
    margin-left: 8px;
  }
  .main-content .social-account-integration .integration > dl dd a {
    text-decoration: underline;
  }
  .main-content .social-account-integration .integration > dl dd a.active {
    text-decoration: none;
  }
  .main-content .social-account-integration .integration > dl dd a.color-link:hover {
    color: #757575;
  }
  .main-content .email-reception-settings .settings .setting-item {
    margin-left: 16px;
  }
  .main-content .email-reception-settings .settings .setting-item:nth-child(1) {
    margin-top: 24px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-title {
    margin-bottom: 16px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-title span:nth-child(2) {
    margin-left: 8px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-radio {
    margin-bottom: 36px;
  }
  .main-content .email-reception-settings .settings .setting-item .update-btn {
    margin-bottom: 40px;
  }
  .main-content .withdrawal-procedure .withdrawal-content {
    padding-bottom: 40px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .description {
    margin: 24px 0 40px 16px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .description > div:nth-child(1) {
    margin-bottom: 8px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .content .withdrawal-title {
    margin-bottom: 16px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .content .withdrawal-title span:nth-child(1) {
    margin-right: 8px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .update-btn {
    margin-bottom: 0 !important;
  }
}

/* sp */
@media screen and (max-width: 767px) {
  .main-content {
    background-color: #FFFFFF;
  }
  .main-content .btn {
    width: 100%;
  }
  .main-content .member-options div::before, .main-content .member-options div::after {
    right: 13px;
  }
  .main-content .registration-information .information {
    margin-bottom: 36px;
  }
  .main-content .registration-information .information > div:nth-child(1) {
    margin-top: 13px;
  }
  .main-content .registration-information .information > div:nth-child(1) div span:nth-child(1) {
    margin-left: 8px;
    padding-right: 16px;
    padding-bottom: 24px;
    width: 153px;
  }
  .main-content .registration-information .information > div:nth-child(1) div span:nth-child(2) {
    padding-bottom: 24px;
  }
  .main-content .registration-information .update-information {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 8px;
    margin-bottom: 36px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) {
    margin-top: 13px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div {
    margin-bottom: 40px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div .update-information-title {
    margin-bottom: 2px;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(1) > p:nth-child(2) input {
    width: 48%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(1) > p:nth-child(2) input:nth-child(1) {
    margin-right: 2%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(2) > p:nth-child(2) input {
    width: 48%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(2) > p:nth-child(2) input:nth-child(1) {
    margin-right: 2%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(3) > p:nth-child(2) input {
    width: 100%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(4) > div:nth-child(2) label {
    margin-right: 5%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(4) > div:nth-child(2) label:nth-last-child(1) {
    margin-right: 0;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options:nth-child(1) {
    width: 35.5%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options:nth-child(2), .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options:nth-child(3) {
    width: 25.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options {
    margin-right: 4.7%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(5) div .member-options:nth-last-child(1) {
    margin-right: 0;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(6) p input {
    width: 100%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(7) p input {
    width: 100%;
  }
  .main-content .registration-information .update-information > div:nth-child(1) > div:nth-child(8) p input {
    width: 100%;
  }
  .main-content .change-password .new-password {
    margin-bottom: 36px;
  }
  .main-content .change-password .new-password > div:nth-child(1) {
    margin-top: 13px;
  }
  .main-content .change-password .new-password > div:nth-child(2) {
    margin-top: 24px;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) {
    margin-top: 4px;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) .icon-eye {
    right: 0;
  }
  .main-content .change-password .new-password .password > div:nth-child(2) input {
    padding-bottom: 8px;
    width: 98.8%;
  }
  .main-content .social-account-integration .integration > dl {
    margin-top: 24px;
    margin-left: 16px;
  }
  .main-content .social-account-integration .integration > dl dt {
    width: 152px;
  }
  .main-content .social-account-integration .integration > dl dt img {
    width: 24px;
    height: 24px;
  }
  .main-content .social-account-integration .integration > dl dt span {
    margin-left: 8px;
  }
  .main-content .social-account-integration .integration > dl dd a {
    text-decoration: underline;
  }
  .main-content .social-account-integration .integration > dl dd a.active {
    text-decoration: none;
  }
  .main-content .social-account-integration .integration .member-img {
    margin: 24px 0 40px 0;
  }
  .main-content .social-account-integration .integration .member-img img {
    width: 100%;
    height: auto;
  }
  .main-content .email-reception-settings .settings {
    margin-bottom: 40px;
  }
  .main-content .email-reception-settings .settings .setting-item {
    margin-left: 16px;
  }
  .main-content .email-reception-settings .settings .setting-item:nth-child(1) {
    margin-top: 14px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-title {
    margin-bottom: 22px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-title span:nth-child(1) {
    margin-left: 8px;
  }
  .main-content .email-reception-settings .settings .setting-item .setting-radio {
    margin-bottom: 36px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .description {
    margin: 24px 0 40px 16px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .description > div:nth-child(1) {
    margin-bottom: 8px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .description ul li {
    padding: 0 5px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .content .withdrawal-title {
    margin-bottom: 16px;
  }
  .main-content .withdrawal-procedure .withdrawal-content .update-btn {
    margin-bottom: 0;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.lp-member-status {
  /*margin-top: 20px;*/
}

.lp-member-status p {
  margin: 0;
}

.lp-member-status .user-name {
  margin-bottom: 12px;
}

.lp-member-status .au-pass {
  margin-top: 4px;
  color: #EB5505;
  position: relative;
}

.lp-member-status .au-pass::before {
  width: 2px;
  height: 8px;
  background-color: #EB5505;
  position: absolute;
  top: 2px;
  left: 170px;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.lp-member-status .au-pass::after {
  width: 2px;
  height: 8px;
  background-color: #EB5505;
  position: absolute;
  top: 7px;
  left: 170px;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.lp-member-status .point-area .point-item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 24px;
  width: 49%;
  display: inline-block;
}

.lp-member-status .point-area .point-item:first-child {
  border-right: 2px solid #F5F5F5;
}

.lp-member-status .point-area .point-item .amount {
  margin-top: 4px;
}

.lp-member-status .point-area .point-item .date {
  margin-bottom: 12px;
}

.lp-member-status .point-area .point-item .use-history {
  margin-right: 26px;
  text-decoration: underline;
}

.lp-member-status .point-status {
  margin-top: 32px;
  margin-bottom: 55px;
  padding-top: 16px;
  border-top: 2px solid #F5F5F5;
}

.lp-member-status .point-status .green-member {
  float: right;
  position: relative;
}

.lp-member-status .point-status .green-member img {
  width: 70px;
  height: 24px;
}

.lp-member-status .point-status .green-member span {
  position: absolute;
  top: 2px;
  left: 12px;
  color: #FFFFFF;
}

.lp-member-status .point-status .point-accumulation {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 14px 0;
  padding: 8px 16px;
  background-color: #F5F5F5;
}

.lp-member-status .point-status .point-accumulation .amount {
  width: 44%;
  display: inline-block;
  vertical-align: top;
}

.lp-member-status .point-status .point-accumulation .amount .date {
  margin-top: 4px;
}

.lp-member-status .point-status .point-accumulation .amount .money {
  margin: 8px 0;
  text-align: right;
}

.lp-member-status .point-status .point-accumulation .amount.usage-amount {
  padding-top: 8px;
  width: 100%;
  border-top: 2px solid #C6C6C6;
  position: relative;
}

.lp-member-status .point-status .point-accumulation .amount.usage-amount .money {
  margin: 0;
  position: absolute;
  right: 0;
  bottom: 0;
}

.lp-member-status .point-status .point-accumulation img {
  margin-top: 50px;
  width: 24px;
  height: 24px;
  display: inline-block;
}

.lp-member-status .point-status .status-up {
  margin: 19px 0 59px;
  text-align: right;
}

.lp-member-status .point-status .status-up .gold-member {
  display: inline-block;
  position: relative;
}

.lp-member-status .point-status .status-up .gold-member img {
  width: 70px;
  height: 24px;
}

.lp-member-status .point-status .status-up .gold-member span {
  position: absolute;
  top: 3px;
  left: 17px;
  color: #FFFFFF;
}

.lp-member-status .smartpass img {
  width: 100%;
  height: auto;
}

.menu-model {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 24px 16px;
  width: 100%;
  background-color: #FFFFFF;
  border-radius: 0 0 8px 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
}

.menu-model ul {
  margin: 47px 0 0 0;
  padding: 0;
  list-style: none;
}

.menu-model ul li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: 1px solid #C6C6C6;
}

.menu-model ul li:first-child {
  border-top: 1px solid #C6C6C6;
}

.menu-model ul li a {
  padding: 16px;
  display: block;
  position: relative;
}

.menu-model ul li a::before {
  width: 2px;
  height: 11px;
  background-color: #000000;
  position: absolute;
  top: 22px;
  right: 15px;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.menu-model ul li a::after {
  width: 2px;
  height: 11px;
  background-color: #000000;
  position: absolute;
  top: 29px;
  right: 15px;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

/* Color */
/* Font Size */
/* Font Weight */
/* PC */
@media screen and (min-width: 768px) {
  .my-favorite-body .main-page-white {
    padding-top: 0;
    padding-bottom: 160px;
  }
  .my-favorite::after {
    content: '';
    display: block;
    clear: both;
  }
  .my-favorite .favorite-item {
    margin-bottom: 16px;
    width: calc(50% - 16px);
    height: 200px;
    border-radius: 8px;
    -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    position: relative;
    text-align: left;
    cursor: pointer;
    float: left;
  }
  .my-favorite .favorite-item:nth-child(odd) {
    margin-right: 16px;
  }
  .my-favorite .favorite-item:nth-child(even) {
    margin-left: 16px;
  }
  .my-favorite .favorite-item .bg-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .my-favorite .favorite-item .favorite-content {
    position: absolute;
    bottom: 24px;
    left: 24px;
    pointer-events: none;
  }
  .my-favorite .favorite-item .favorite-content .quality-mark {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .my-favorite .favorite-item .favorite-content .quality-mark .icon-grade {
    display: block;
    width: 20px;
    height: 20px;
    -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
  }
  .my-favorite .favorite-item .favorite-content .icon-museum,
  .my-favorite .favorite-item .favorite-content .icon-casual {
    vertical-align: bottom;
  }
  .my-favorite .favorite-item .favorite-content .inn-mark {
    margin-left: 12px;
    display: inline-block;
    vertical-align: top;
  }
  .my-favorite .favorite-item .favorite-content .name {
    margin: 0;
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000;
  }
  .my-favorite .favorite-item .favorite-content .address {
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000;
  }
  .my-favorite .favorite-item .icon-favorite,
  .my-favorite .favorite-item .icon-favorite-on {
    position: absolute;
    top: 29px;
    right: 28px;
  }
  .my-favorite .favorite-item:hover {
    opacity: 0.7;
  }
  .my-favorite .btn {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 0;
    padding: 16px;
    background-color: #fff;
    -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    text-align: center;
    z-index: 100;
  }
  .my-favorite .favorite-none {
    text-align: center;
    margin-top: 80px;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .my-favorite-head {
    margin-top: 16px;
  }
  .my-favorite-head .title {
    padding-bottom: 16px;
    font-size: 2.6rem;
  }
  .my-favorite-body .main-page-white {
    padding-bottom: 88px;
  }
  .my-favorite .favorite-item {
    margin-bottom: 8px;
    width: 100%;
    height: 140px;
    border-radius: 8px;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    position: relative;
    cursor: pointer;
  }
  .my-favorite .favorite-item .bg-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .my-favorite .favorite-item .favorite-content {
    position: absolute;
    bottom: 12px;
    left: 16px;
    pointer-events: none;
  }
  .my-favorite .favorite-item .favorite-content .quality-mark {
    display: inline-block;
  }
  .my-favorite .favorite-item .favorite-content .quality-mark .icon-grade {
    height: 12px;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
  }
  .my-favorite .favorite-item .favorite-content .inn-mark {
    margin-left: 3px;
    display: inline-block;
    vertical-align: top;
  }
  .my-favorite .favorite-item .favorite-content .name {
    margin: 0;
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000;
  }
  .my-favorite .favorite-item .favorite-content .address {
    margin-top: -5px;
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000;
  }
  .my-favorite .favorite-item .icon-favorite,
  .my-favorite .favorite-item .icon-favorite-on {
    position: absolute;
    top: 18px;
    right: 17px;
  }
  .my-favorite .btn {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 0;
    padding: 8px 16px 16px;
    background-color: #fff;
    -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
    text-align: center;
    z-index: 100;
  }
  .my-favorite .btn a {
    width: 100%;
  }
  .my-favorite .favorite-none {
    text-align: center;
    margin-top: 56px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.slider-title {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: 2px solid #F5F5F5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  color: #0F0A64;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}

.slider-title.last-mark {
  border-bottom: 2px solid #F5F5F5;
}

.slider-title::before, .slider-title::after {
  content: '';
  background-color: #0F0A64;
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 19px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.slider-title::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.slider-title::after {
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.slider-title.active {
  background-color: #0F0A64;
  border-color: #0F0A64;
  color: #FFFFFF;
}

.slider-title.active::before, .slider-title.active::after {
  background-color: #FFFFFF;
}

.slider-title.active::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.slider-title.active::after {
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

/* PC */
@media screen and (min-width: 768px) {
  .sub-header .tab-box {
    margin-top: 8px;
  }
  .slider-title {
    padding: 16px;
  }
  .slider-title::before, .slider-title::after {
    right: 19px;
  }
  .slider-title:hover {
    background-color: #554B98;
    border-color: #554B98;
    color: #FFFFFF;
  }
  .slider-title:hover::before, .slider-title:hover::after {
    background-color: #FFFFFF;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .sub-header {
    margin-top: 16px;
  }
  .sub-header .tab-box {
    margin-top: 8px;
    margin-left: -16px;
    margin-right: -16px;
  }
  .sub-header .tab-box.column-3 > div {
    height: 40px;
  }
  .sub-header .tab-box.column-3 > div:first-child {
    width: calc(100% / 3 - 9px);
  }
  .sub-header .tab-box.column-3 > div:last-child {
    width: calc(100% / 3 + 9px);
  }
  .slider-title {
    padding: 16px 12px 16px 8px;
  }
  .slider-title::before, .slider-title::after {
    right: 12px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.reservation.nonmember-reservation {
  padding-top: 40px;
}

.reservation.nonmember-reservation .reservation-title {
  font-size: 2.6rem;
}

.reservation.nonmember-reservation .reservation-item-body {
  background-color: #fff;
  padding: 16px 144px 0px;
}

.reservation.nonmember-reservation .reservation-item-body p {
  margin-bottom: 8px;
}

.reservation.nonmember-reservation .reservation-item-body .btn-group-area {
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 40px 0;
  height: auto;
  position: static;
}

.reservation p {
  margin: 0;
}
.reservation .modal-title {
  margin-bottom: 24px;
}
.reservation header .js-modal-trigger {
  display: none !important;
}
.reservation .mp-member-info .js-modal-trigger {
  width: 100%;
  height: 40px;
}
.reservation .modal-forgetPassword {
  margin-top: 16px;
}
@media (min-width: 768px){
  .reservation .loginsignin-modal {
      height: 640px;
  }
}


.reservation .reservation-date {
  margin-bottom: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.reservation .reservation-date p:first-child {
  padding-right: 20px;
}

.reservation .reservation-item {
  margin-bottom: 16px;
  position: relative;
}

.reservation .reservation-item .bg-img {
  width: 100%;
  height: 300px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.reservation .reservation-item .bg-img::before {
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fff0), to(#000000));
  background-image: -webkit-linear-gradient(#fff0, #000000);
  background-image: linear-gradient(#fff0, #000000);
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.reservation .reservation-item .reservation-item-content {
  position: relative;
  padding: 24px 32px 0;
  width: 100%;
  height: 100%;
  min-height: 300px;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
}

.reservation .reservation-item .reservation-item-content .gtt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(255, 255, 255, 0.7);
  color: #4F68C2;
  text-shadow: none;
  height: 24px;
  border-radius: 2px 0 0 2px;
}

.reservation .reservation-item .reservation-item-content .gtt .tag-gtt {
  margin-right: 8px;
}

.reservation .reservation-item .reservation-item-content .tag-gtt.coupon {
  text-shadow: none;
}

.reservation .reservation-item .reservation-item-content .gtt-coupon {
  width: 126px;
}

.reservation .reservation-item .reservation-item-content .top-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.reservation .reservation-item .reservation-item-content .top-area .icon-label {
  margin-right: 10px;
  text-shadow: none;
}

.reservation .reservation-item .reservation-item-content .top-area .name {
  margin-left: 10px;
}

.reservation .reservation-item .reservation-item-content .top-area .name a {
  color: #fff;
  padding-bottom: 1px;
  text-decoration: underline;
  display: inline-block;
}

.reservation .reservation-item .reservation-item-content .top-area .name a:hover {
  text-decoration: none;
}

.reservation .reservation-item .reservation-item-content .address {
  width: 100%;
}

.reservation .reservation-item .reservation-item-content .address span {
  position: relative;
}

.reservation .reservation-item .reservation-item-content .address span:first-child {
  margin-right: 15px;
}

.reservation .reservation-item .reservation-item-content .address span:not(:first-child) {
  padding-left: 15px;
}

.reservation .reservation-item .reservation-item-content .address span:not(:first-child)::before {
  width: 1px;
  height: 80%;
  background-color: #FFFFFF;
  -webkit-box-shadow: 1px 1px 1px #000000;
          box-shadow: 1px 1px 1px #000000;
  position: absolute;
  top: 15%;
  left: 0;
  content: "";
}

.reservation .reservation-item .reservation-item-content .detail-area {
  margin-top: 54px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  position: absolute;
  left: 32px;
  right: 32px;
  bottom: 32px;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item:not(:last-child) {
  margin-bottom: 2px;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .detail-title {
  width: 126px;
  position: relative;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .detail-title::after {
  width: 2px;
  height: 80%;
  background-color: #FFFFFF;
  -webkit-box-shadow: 1px 1px 1px #000000;
          box-shadow: 1px 1px 1px #000000;
  position: absolute;
  top: 15%;
  right: 0;
  content: "";
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .date {
  margin-left: 24px;
  margin-right: 14px;
}

.reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .time span:first-child {
  margin-right: 10px;
}

.reservation .reservation-item .reservation-item-content .detail-area .right-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.reservation .reservation-item .reservation-item-content .detail-area .right-area .amount-area {
  margin-bottom: -10px;
}

.reservation .reservation-item .reservation-item-content .detail-area .right-area a {
  margin-left: 16px;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
  color: #333333;
  text-shadow: none;
}

.reservation .reservation-item .reservation-item-content .detail-area .right-area a:hover {
  color: #554B98;
}

.reservation .reservation-item .icon-favorite, .reservation .reservation-item .icon-favorite-on {
  position: absolute;
  top: 26px;
  right: 28px;
}

.reservation .reservation-item .write-review-area {
  padding: 12px 20px;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation .reservation-item .write-review-area p {
  margin-left: 23px;
}

.reservation .reservation-none {
  padding: 40px 0;
  background-color: #FFFFFF;
  text-align: center;
}

.reservation .reservation-none a {
  margin-top: 16px;
  min-width: 300px;
}

.reservation .see-more-link {
  margin-top: 44px;
  text-align: center;
}

.accommodation-history .right-area .review {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end;
}

/* Scroll時のTab固定用Style */
.tab-box-wrap.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;
  background: #FFF;
}

.tab-box-wrap.fixed .tab-box {
  margin: 0 auto;
  max-width: 1120px;
}

.heightFixed {
  margin-top: 48px;
}

.reservation-info-modal .scroll-on, .mail-share-modal .scroll-on {
  padding-right: 16px !important;
  overflow-y: auto !important;
}

.reservation-info-modal .scroll-on::-webkit-scrollbar, .mail-share-modal .scroll-on::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.reservation-info-modal .scroll-on::-webkit-scrollbar-thumb, .mail-share-modal .scroll-on::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.reservation-info-modal .scroll-on::-webkit-scrollbar-track, .mail-share-modal .scroll-on::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.reservation-info-modal {
  max-width: 800px;
}

.reservation-info-modal .modal-container {
  padding-bottom: 0;
  padding-right: 16px;
  position: relative;
}

.reservation-info-modal .gtt-coupon-info {
  padding: 16px 24px;
}

.reservation-info-modal .gtt-coupon-info .d-flex {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation-info-modal .gtt-coupon-info img {
  width: 196px;
  height: 196px;
  margin-right: 16px;
}

.reservation-info-modal .reservation-only .icon-label {
  border: 1px solid #FFF;
}

.reservation-info-modal .canceled-only .icon-label {
  border: 1px solid #FFF;
}

.reservation-info-modal .accommodation-history-only .icon-label {
  border: 1px solid #333;
}

.reservation-info-modal .smartpass {
  margin-bottom: 40px;
}

.reservation-info-modal .smartpass ul li {
  padding-left: 1em;
  text-indent: -1em;
}

.reservation-info-modal .smartpass ul li::before {
  content: "・";
}

.reservation-info-modal .smartpass .accordion-content {
  font-size: 1.4rem;
}

.reservation-info-modal .smartpass .text-link {
  width: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .reservation-info-modal .cancel-area .cancel-item span:last-child {
    min-width: 148px;
    display: inline-block;
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .reservation-info-modal .smartpass .accordion-content {
    font-size: 1.2rem;
  }
}

.reservation-item-body .reservation-title {
  margin-bottom: 16px;
}

.reservation-item-body .info-area-title {
  margin-top: 40px;
}

.reservation-item-body .hotel-name {
  margin-bottom: 38px;
}

.reservation-item-body .hotel-name > a {
  color: #333;
  text-decoration: underline;
  font-size: 2rem;
}

.reservation-item-body .hotel-name > a:hover {
  text-decoration: none;
}

.reservation-info-modal .title,
.reservation-item-body .title {
  margin: 0 auto 16px;
  max-width: 720px;
}

.reservation-info-modal .content-body,
.reservation-item-body .content-body {
  margin: 0 auto;
  /*max-width: 720px;*/
  height: calc(100% - 100px) !important;
}
.reservation-info-modal .content-body.canceled-modal ,
.reservation-item-body .content-body.canceled-modal {
  height: calc(100% - 53px) !important;
}

.reservation-info-modal .content-body.no-btn-group-area,
.reservation-item-body .content-body.no-btn-group-area {
  height: calc(100% - 50px) !important;
}

.reservation-info-modal .content-body .sub-title,
.reservation-item-body .content-body .sub-title {
  text-decoration: underline;
  cursor: pointer;
}

.reservation-info-modal .content-body .sub-title:hover,
.reservation-item-body .content-body .sub-title:hover {
  text-decoration: none;
}

.reservation-info-modal .content-body .info-area-title,
.reservation-item-body .content-body .info-area-title {
  margin-top: 40px;
}

.reservation-info-modal .info-area,
.reservation-item-body .info-area {
  padding-bottom: 8px;
  border-bottom: 4px solid #F5F5F5;
}

.reservation-info-modal .info-sub-area {
  padding-bottom: 8px;
  border-bottom: 2px solid #F5F5F5;
}
.reservation-item-body .info-sub-area + .info-sub-area,
.reservation-item-body .info-sub-area + .info-item  {
  border-top: 2px solid #F5F5F5;
}
.reservation-item-body .info-sub-area + .info-item  {
  padding-top: 16px;
}

.reservation-info-modal .info-item,
.reservation-item-body .info-item {
  margin: 16px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation-info-modal .info-item.slider-item,
.reservation-item-body .info-item.slider-item {
  margin: 0;
}

.reservation-info-modal .info-item .info-item-left,
.reservation-item-body .info-item .info-item-left {
  min-width: 180px;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.reservation-info-modal .info-item .info-item-right,
.reservation-item-body .info-item .info-item-right {
  width: calc(100% - 180px);
  overflow: hidden;
}

.reservation-info-modal .info-item .info-item-right .important-note::before,
.reservation-item-body .info-item .info-item-right .important-note::before {
  content: "※";
}

.reservation-info-modal .info-item .info-item-right .charge-details,
.reservation-item-body .info-item .info-item-right .charge-details {
  padding: 24px 24px;
  background-color: #F5F5F5;
  display: block;
}

.reservation-info-modal .info-item .info-item-right .charge-details p,
.reservation-item-body .info-item .info-item-right .charge-details p {
  margin: 0 0 8px;
}

.reservation-info-modal .info-item .info-item-right .charge-details p:last-child,
.reservation-item-body .info-item .info-item-right .charge-details p:last-child {
  width: 40%;
}

@media screen and (max-width: 900px) {
  .reservation-info-modal .info-item .info-item-right .charge-details p:last-child,
  .reservation-item-body .info-item .info-item-right .charge-details p:last-child {
    width: auto;
  }
}

.reservation-info-modal .info-item .info-item-right .charge-details #paymentAmount,
.reservation-item-body .info-item .info-item-right .charge-details #paymentAmount {
  line-height: 1.2;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item,
.reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item:not(:last-child),
.reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item:not(:last-child) {
  margin-bottom: 8px;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item:only-child,
.reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item:only-child {
  height: 100%;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item .name,
.reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item .name {
  width: 100px;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item .name {
  width: auto;
  flex: 1;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item .content,
.reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item .content {
  width: 40%;
  text-align: right;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-left .charge-left-item .content {
  width: 100px;
  margin-left: 24px;
  white-space: nowrap;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-right,
.reservation-item-body .info-item .info-item-right .charge-details .charge-right {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end;
  margin-top: 8px;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-right .charge-right-item,
.reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-right .charge-right-item .name,
.reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item .name {
  margin-right: 0;
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-right .charge-right-item .content,
.reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item .content {
  width: 40%;
  text-align: right;
}

@media screen and (max-width: 900px) {
  .reservation-info-modal .info-item .info-item-right .charge-details .charge-right .charge-right-item .content,
  .reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item .content {
    width: auto;
  }
}

.reservation-info-modal .info-item .info-item-right .charge-details .charge-right .charge-right-item .list-asterisk,
.reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item .list-asterisk {
  width: 291px;
}

.reservation-info-modal .info-item .info-item-right .default-link:hover,
.reservation-item-body .info-item .info-item-right .default-link:hover {
  color: #0066cc;
}

.reservation-item-body .info-item .charge-details.d-flex {
  display: flex !important;
}
.reservation-item-body .info-item .charge-details.d-flex > div {
  width: 50% !important;
}
.reservation-item-body .info-item .charge-details.d-flex .charge-left-item {
  justify-content: flex-start !important;
}
.reservation-item-body .info-item .charge-details.d-flex p:last-child {
  width: auto;
  text-align: right;
}

@media screen and (max-width: 1200px) {
  .reservation-item-body .info-item .charge-details.d-flex {
    display: block !important;
  }
  .reservation-item-body .info-item .charge-details.d-flex > div {
    width: 100% !important;
  }
  .reservation-item-body .info-item .charge-details.d-flex .charge-left-item .content {
    width: calc(100% - 100px) !important;
  }
}

@media screen and (max-width: 900px) {
  .reservation-info-modal .info-item .info-item-right.charge-details,
  .reservation-item-body .info-item .info-item-right.charge-details {
    padding: 8px 16px !important;
  }
  .reservation-item-body .info-item .charge-details.d-flex {
    padding: 16px;
  }
}

.reservation-info-modal .info-item .point-column > span,
.reservation-item-body .info-item .point-column > span {
  display: inline-block;
  margin-bottom: 8px;
}

.reservation-info-modal .info-item .point-column > span:last-child,
.reservation-item-body .info-item .point-column > span:last-child {
  width: 40%;
}

@media screen and (max-width: 900px) {
  .reservation-info-modal .info-item .point-column,
  .reservation-item-body .info-item .point-column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation-info-modal .info-item .point-column > span:last-child,
  .reservation-item-body .info-item .point-column > span:last-child {
    width: auto;
  }
}

.reservation-info-modal .accordion-open-link::after,
.reservation-item-body .accordion-open-link::after,
.reservation-info-modal .js-accordion-open-rd::after {
  margin-top: -4px;
  margin-bottom: 0;
  width: 19px;
  height: 10px;
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 center;
  background-size: contain;
}

.reservation-info-modal .js-accordion-open-rd.active::after {
  margin-top: -4px;
  margin-bottom: 0;
  width: 19px;
  height: 10px;
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 center;
  background-size: contain;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.reservation-info-modal .accordion-open-link:hover::after,
.reservation-item-body .accordion-open-link:hover::after {
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 center;
  background-size: contain;
}

.reservation-info-modal .accordion-close-link::after,
.reservation-item-body .accordion-close-link::after {
  margin-top: -4px;
  margin-bottom: 0;
  width: 19px;
  height: 10px;
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 center;
  background-size: contain;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.reservation-info-modal .accordion-close-link:hover::after,
.reservation-item-body .accordion-close-link:hover::after {
  background: url(/stcontents/img/common/icon-accordion.svg) no-repeat 0 center;
  background-size: contain;
}

.reservation-info-modal .cancel-area p,
.reservation-item-body .cancel-area p {
  margin: 0;
}

.reservation-info-modal .cancel-area .cancel-item,
.reservation-item-body .cancel-area .cancel-item {
  padding: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #C6C6C6;
}

.reservation-info-modal .cancel-area .cancel-item:last-child,
.reservation-item-body .cancel-area .cancel-item:last-child {
  border-bottom: 1px solid #C6C6C6;
}

.reservation-info-modal .cancel-area .cancel-item span,
.reservation-item-body .cancel-area .cancel-item span {
  margin-right: 20px;
}

.reservation-info-modal .delete-btn,
.reservation-item-body .delete-btn {
  display: none;
  text-align: center;
}

.reservation-info-modal .delete-btn a,
.reservation-item-body .delete-btn a {
  margin-bottom: 16px;
  min-width: 300px;
}

.reservation-info-modal .btn-group-area,
.reservation-item-body .btn-group-area {
  width: 100%;
  height: 80px;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
}

.reservation-info-modal .btn-group-area a,
.reservation-item-body .btn-group-area a {
  width: 187px;
}

.reservation-info-modal .btn-group-area a:not(:last-child),
.reservation-item-body .btn-group-area a:not(:last-child) {
  margin-right: 16px;
}

.reservation-info-modal .btn-group-area.local-settlement a,
.reservation-item-body .btn-group-area.local-settlement a {
  min-width: 300px;
}

.reservation-info-modal .btn-group-area.prepaid a,
.reservation-item-body .btn-group-area.prepaid a {
  min-width: 300px;
}

.reservation-info-modal .cxl-insurance,
.reservation-item-body .cxl-insurance {
  border: 1px solid #0F0a64;
  padding: 16px;
  margin-top: 16px;
  text-align: center;
}

.reservation-info-modal .cxl-insurance p,
.reservation-item-body .cxl-insurance p {
  text-align: center;
}

.reservation-info-modal .cxl-insurance .title,
.reservation-item-body .cxl-insurance .title {
  color: #0F0A64;
  font-size: 2rem;
  font-weight: 900;
  text-align: center;
  margin-bottom: 8px;
}

.reservation-info-modal .cxl-insurance .description,
.reservation-item-body .cxl-insurance .description {
  font-size: 1.6rem;
}

.reservation-info-modal .cxl-insurance .note,
.reservation-item-body .cxl-insurance .note {
  font-size: 12px;
  text-align: left;
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reservation-info-modal .cxl-insurance .btn-relux,
.reservation-item-body .cxl-insurance .btn-relux {
  margin-top: 8px;
  width: 300px;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .reservation-info-modal .modal-container .btn-group-area.prepaid a,
  .reservation-item-body .modal-container .btn-group-area.prepaid a {
    width: 100%;
  }
  .reservation-info-modal .cxl-insurance,
  .reservation-item-body .cxl-insurance {
    padding: 16px;
  }
  .reservation-info-modal .cxl-insurance p,
  .reservation-item-body .cxl-insurance p {
    text-align: left;
  }
  .reservation-info-modal .cxl-insurance .title,
  .reservation-item-body .cxl-insurance .title {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .reservation-info-modal .cxl-insurance .description,
  .reservation-item-body .cxl-insurance .description {
    font-size: 1.4rem;
  }
  .reservation-info-modal .cxl-insurance .note,
  .reservation-item-body .cxl-insurance .note {
    font-size: 10px;
    margin: 0;
  }
  .reservation-info-modal .cxl-insurance .btn-relux,
  .reservation-item-body .cxl-insurance .btn-relux {
    width: 100%;
    font-size: 1.4rem;
    height: 40px;
  }
}

.mail-share-modal {
  width: 100%;
  max-width: none;
  height: 100%;
  background-color: rgba(198, 198, 198, 0.7);
}

.mail-share-modal .mail-share-modal-close {
  background: url(/stcontents/img/common/icon-close-2.svg) no-repeat 0 0;
  background-size: contain;
  width: 56px;
  height: 56px;
  position: fixed;
  top: 32px;
  right: 32px;
  display: block;
  cursor: pointer;
}

.mail-share-modal .modal-container {
  margin-top: 96px;
  margin-bottom: 141px;
  padding: 0;
  max-width: 762px;
  height: 80%;
  max-height: 563px;
}

.mail-share-modal .content-body {
  margin-top: 0 !important;
  width: 100%;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .mail-share-modal .content-body {
    height: 100% !important;
  }
}

.mail-share-modal .content-body .title {
  margin-top: 43px;
}

.mail-share-modal .content-body .input-box-area {
  margin: 0 auto;
  max-width: 400px;
  max-height: 300px;
  height: calc(100% - 184px);
  overflow: auto;
}

.mail-share-modal .content-body .input-box {
  margin-bottom: 16px;
}

.mail-share-modal .content-body .input-box input {
  width: 100%;
}

.mail-share-modal .content-body .input-box input:not(:first-child) {
  margin-top: 16px;
}

.mail-share-modal .content-body .input-box div {
  margin-top: 8px;
  text-align: left;
}

.mail-share-modal .add-mail {
  margin-bottom: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #333333;
}

.mail-share-modal .add-mail .plus-mark {
  margin-right: 10px;
  width: 20px;
  height: 20px;
  background-color: #757575;
  border-radius: 50%;
  display: inline-block;
  position: relative;
}

.mail-share-modal .add-mail .plus-mark::before {
  width: 2px;
  height: 14px;
  background-color: #FFFFFF;
  position: absolute;
  top: 3px;
  left: calc(50% - 1px);
  content: "";
}

.mail-share-modal .add-mail .plus-mark::after {
  width: 14px;
  height: 2px;
  background-color: #FFFFFF;
  position: absolute;
  top: calc(50% - 1px);
  left: 3px;
  content: "";
}

.mail-share-modal .btn-group-area {
  padding: 16px 0 40px;
  width: 100%;
  background-color: #FFFFFF;
}

@media screen and (min-width: 768px) {
  .mail-share-modal .btn-group-area {
    bottom: 0;
  }
}

.mail-share-modal .btn-group-area.shadow-on {
  -webkit-box-shadow: 0 -2px 8px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px 0 rgba(0, 0, 0, 0.08);
}

.deletion-confirmation-modal {
  width: 100%;
  max-width: none;
  background-color: rgba(198, 198, 198, 0.7);
}

.deletion-confirmation-modal .modal-container {
  margin: 0;
  padding: 20px;
  width: 332px;
  height: 180px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.deletion-confirmation-modal .modal-container .content-body > p {
  margin-bottom: 24px;
  text-align: center;
}

.deletion-confirmation-modal .modal-container .content-body .btn-group-area {
  text-align: center;
}

.deletion-confirmation-modal .modal-container .content-body .btn-group-area .browsing-btn-yes, .deletion-confirmation-modal .modal-container .content-body .btn-group-area .btn-yes {
  width: 85px;
}

.deletion-confirmation-modal .modal-container .content-body .btn-group-area .browsing-btn-no, .deletion-confirmation-modal .modal-container .content-body .btn-group-area .btn-no {
  width: 85px;
}

.reservation-canceled {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 60px;
  background-color: #0F0A64;
  z-index: 60;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation-canceled .reservation-canceled-text {
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
}

/* PCより小さい SPより大きい */
@media screen and (max-width: 1280px) and (min-width: 901px) {
  .reservation .reservation-item-content .detail-area {
    margin-top: 70px !important;
  }
  .reservation .reservation-item-content .detail-area .detail-info .info-item:not(:last-child) {
    margin-bottom: 22px !important;
  }
  .reservation .reservation-item-content .detail-area .detail-info .info-item .detail-title {
    width: 100px !important;
    font-size: 1.2rem;
  }
  .reservation .reservation-item-content .detail-area .detail-info .info-item .date, .reservation .reservation-item-content .detail-area .detail-info .info-item .time {
    font-size: 1.2rem;
  }
  .reservation .reservation-item-content .detail-area .right-area {
    min-width: 200px;
  }
  .reservation .reservation-item-content .detail-area .right-area .amount-area .amount {
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 900px) {
  .reservation.nonmember-reservation {
    padding-top: 0;
    padding-bottom: 0;
  }
  .reservation.nonmember-reservation .reservation-title {
    font-size: 2.0rem;
    border-top: 4px solid #f5f5f5;
    padding-top: 16px;
  }
  .reservation.nonmember-reservation .wrap {
    padding: 0;
  }
  .reservation.nonmember-reservation .reservation-item .bg-img {
    border-radius: 0;
  }
  .reservation.nonmember-reservation .reservation-item .reservation-item-content .detail-area .right-area {
    display: block;
  }
  .reservation.nonmember-reservation .reservation-item .reservation-item-content .detail-area .right-area .amount-area {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .reservation.nonmember-reservation .reservation-item .cancellation-policy-word {
    font-size: 16px;
  }
  .reservation.nonmember-reservation .reservation-item .supplement-info {
    font-size: 14px;
  }
  .reservation.nonmember-reservation .reservation-item-body {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 40px;
  }
  .reservation.nonmember-reservation .reservation-item-body .hotel-name {
    margin-bottom: 16px;
    margin-top: -16px;
    padding-top: 16px;
  }
  .reservation.nonmember-reservation .reservation-item-body .hotel-name > a {
    font-size: 1.6rem;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-left {
    margin-bottom: 8px;
    width: 100%;
    font-size: 1.2rem;
    font-weight: 900;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right {
    width: 100%;
    font-size: 1.6rem;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right .important-note {
    margin: 0;
    display: block;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right .charge-details .charge-left {
    width: 100%;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right .charge-details .charge-left .charge-left-item {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right .charge-details .charge-right {
    margin-top: 16px;
    width: 100%;
  }
  .reservation.nonmember-reservation .reservation-item-body .info-item .info-item-right .charge-details .charge-right .charge-right-item {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation.nonmember-reservation .reservation-item-body .btn-group-area {
    padding: 16px 16px 40px;
    position: static;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    /*&.sp-absolute {
            position: absolute;
          }*/
  }
  .reservation .reservation-item {
    margin-bottom: 0;
    background-image: none !important;
    background-color: #FFFFFF;
    border-radius: 8px;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    /*
      .right-arrow {
        position: absolute;
        top: 100px;
        right: 17px;
        &::before {
          width: 2px;
          height: 10px;
          background-color: $footerFontSPColor;
          box-shadow: 0 3px 6px $colorBlack;
          position: absolute;
          top: 0;
          right: 0;
          transform: rotate(-45deg);
          content: "";
        }
        &::after {
          width: 2px;
          height: 10px;
          background-color: $footerFontSPColor;
          box-shadow: 0 1px 3px $colorBlack;
          position: absolute;
          top: 6px;
          right: 0;
          transform: rotate(45deg);
          content: "";
        }
      }
      */
  }
  .reservation .reservation-item::before {
    display: none;
  }
  .reservation .reservation-item .bg-img {
    width: 100%;
    height: 168px;
    border-radius: 8px 8px 0 0;
  }
  .reservation .reservation-item .bg-img::before {
    height: 168px;
  }
  .reservation .reservation-item .js-modal-trigger.pc-only {
    display: none !important;
  }
  .reservation .reservation-item .js-modal-trigger.sp-only {
    display: block !important;
  }
  .reservation .reservation-item .reservation-item-content {
    padding: 12px 16px;
    min-height: 318px;
    margin-bottom: 16px;
    position: relative;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    top: 12px;
    left: 16px;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp .icon-label {
    text-shadow: none;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp .detail-title {
    color: #FFFFFF;
    font-size: 1.2rem;
    font-weight: 700;
    text-shadow: 1px 1px 1px #000000;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp .date {
    color: #FFFFFF;
    font-size: 1.2rem;
    font-weight: 700;
    text-shadow: 1px 1px 1px #000000;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp p:nth-child(2) {
    margin-left: 6px;
  }
  .reservation .reservation-item .reservation-item-content .info-number-sp p:nth-child(3) {
    margin-left: 6px;
  }
  .reservation .reservation-item .reservation-item-content .gtt {
    display: block;
    width: 100%;
    height: 60px;
    color: #757575;
    margin-bottom: 16px;
  }
  .reservation .reservation-item .reservation-item-content .gtt .tag-gtt {
    margin-bottom: 4px;
  }
  .reservation .reservation-item .reservation-item-content .gtt.coupon {
    color: #4F68C2;
    height: 40px;
    margin-top: 8px;
  }
  .reservation .reservation-item .reservation-item-content .top-area {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 0 16px 8px;
    height: 168px;
    -webkit-align-content: flex-end;
        -ms-flex-line-pack: end;
            align-content: flex-end;
  }
  .reservation .reservation-item .reservation-item-content .top-area .name {
    margin: 0;
    width: 100%;
    font-size: 2rem;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .reservation .reservation-item .reservation-item-content .top-area .name a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .reservation .reservation-item .reservation-item-content .address {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    position: relative;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .reservation .reservation-item .reservation-item-content .address span {
    padding-left: 0 !important;
    width: 100%;
    display: block;
  }
  .reservation .reservation-item .reservation-item-content .address span::before {
    display: none;
  }
  .reservation .reservation-item .reservation-item-content .detail-area {
    margin-top: 168px;
    padding: 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info {
    width: 100%;
    color: #333333;
    font-size: 1.2rem;
    text-shadow: none;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item:not(:last-child) {
    margin-bottom: 8px;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .detail-title {
    width: 100%;
    color: #757575;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .detail-title::after {
    display: none;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .date {
    margin: 0;
    width: 146px;
    color: #333333;
    font-size: 1.2rem;
    font-weight: 700;
    text-shadow: none;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .time {
    font-size: 1.2rem;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .detail-info .info-item .time span:not(:last-child) {
    margin-right: 8px;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .right-area {
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .right-area .amount-area {
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-shadow: none;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .right-area .amount-area .amount-title {
    margin-right: 8px;
    color: #757575;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .right-area .amount-area .amount {
    font-size: 2rem;
    color: #333333;
  }
  .reservation .reservation-item .reservation-item-content .detail-area .right-area a {
    margin: 0 0 8px;
    color: #0066CC;
    font-size: 1.4rem;
  }
  .reservation .reservation-item .icon-favorite, .reservation .reservation-item .icon-favorite-on {
    top: 16px;
    right: 16px;
  }
  .reservation .reservation-item .write-review-area {
    width: 100%;
    padding: 0 16px 16px;
    border-radius: 0 0 8px 8px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    position: relative;
  }
  .reservation .reservation-item .write-review-area a {
    width: 100%;
  }
  .reservation .reservation-item .write-review-area p {
    margin-left: 0;
    font-size: 1.2rem;
    font-weight: 400;
  }
  .reservation .cancel-area .cancel-item {
    padding: 8px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation .cancel-area .cancel-item p:last-child {
    color: #757575;
    font-size: 1rem;
    text-align: right;
  }
  .reservation .cancel-area .cancel-item p:last-child span {
    margin: 0;
    display: block;
    color: #333333;
    font-size: 1.6rem;
  }
  .reservation .reservation-none {
    padding: 16px 0 12px 0;
    background-color: transparent;
    text-align: center;
  }
  .reservation .reservation-none a {
    margin-top: 24px;
    width: 100%;
  }
  .reservation .see-more-link {
    margin-top: 24px;
  }
  .reservation .alert-modal-point .modal-container,
  .reservation .alert-modal-ponta .modal-container {
    height: 60%;
    width: 92%;
    top: 20%;
    left: 4%;
    border-radius: 8px;
  }
  .reservation .alert-modal-point .modal-container .modal-container-inner,
  .reservation .alert-modal-ponta .modal-container .modal-container-inner {
    width: 100%;
  }
  .reservation .alert-modal-point .modal-container .reserve-submit-double a,
  .reservation .alert-modal-point .modal-container .reserve-submit-double button,
  .reservation .alert-modal-ponta .modal-container .reserve-submit-double a,
  .reservation .alert-modal-ponta .modal-container .reserve-submit-double button {
    width: 50%;
  }
  .reservation .app-banner {
    margin-top: 80px;
  }
  .accommodation-history .reservation-item {
    margin-bottom: 16px;
  }
  .accommodation-history .reservation-item.review-long-item .write-review-area {
    border-top: 4px solid #F5F5F5;
    padding-top: 8px;
  }
  .accommodation-history .reservation-item.review-long-item .write-review-area a {
    margin-top: 8px;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .accommodation-history .reservation-item.review-long-item .write-review-area p {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .accommodation-history .review {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .accommodation-history .right-area .btn-review {
    width: 100%;
    border: none;
  }
  .reservation-info-modal {
    overflow: hidden;
  }
  .reservation-info-modal .modal-container {
    padding-bottom: 0;
  }
  .reservation-info-modal .modal-container .content-body {
    margin-top: 0;
    height: calc(100% - 60px) !important;
  }
  .reservation-info-modal .modal-container .content-body.canceled-modal {
    height: 100% !important;
  }
  .reservation-info-modal .modal-container .content-body.no-btn-group-area {
    height: calc(100% - 16px) !important;
  }
  .reservation-info-modal .modal-container .content-body.scroll-on {
    margin-right: -16px;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-left {
    width: 100%;
    font-size: 1.2rem;
    font-weight: 900;
    margin-bottom: 8px;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right {
    width: 100%;
    font-size: 1.6rem;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .important-note {
    margin: 0;
    display: block;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details {
    padding: 8px 16px;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-left {
    width: 100%;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-left .charge-left-item {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-left .charge-left-item .name {
    text-align: left;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-left .charge-left-item .content {
    margin-left: 16px;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-right {
    margin-top: 16px;
    width: 100%;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-right .charge-right-item {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation-info-modal .modal-container .content-body .info-item .info-item-right .charge-details .charge-right .charge-right-item .list-asterisk {
    width: 100%;
  }
  .reservation-info-modal .modal-container .content-body .phone-num {
    color: #757575;
    text-decoration: underline;
  }
  .reservation-info-modal .modal-container .content-body .cancel-area .cancel-item {
    padding: 8px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation-info-modal .modal-container .content-body .cancel-area .cancel-item p:last-child {
    color: #757575;
    font-size: 1rem;
    text-align: right;
  }
  .reservation-info-modal .modal-container .content-body .cancel-area .cancel-item p:last-child span {
    margin: 0;
    display: block;
    color: #333333;
    font-size: 1.6rem;
    white-space: nowrap;
  }
  .reservation-info-modal .modal-container .delete-btn {
    padding: 0;
  }
  .reservation-info-modal .modal-container .delete-btn a {
    width: 100%;
  }
  .reservation-info-modal .modal-container .btn-group-area {
    height: 60px;
    padding: 0 16px;
    -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  }
  .reservation-info-modal .modal-container .btn-group-area a {
    width: 50%;
  }
  .reservation-info-modal .modal-container .btn-group-area a:not(:last-child) {
    margin-right: 8px;
  }
  .reservation-info-modal .modal-container .btn-group-area.local-settlement a {
    width: 100%;
  }
  .reservation-info-modal .gtt-coupon-info {
    padding: 16px 8px;
  }
  .reservation-info-modal .gtt-coupon-info img {
    width: 108px;
    height: 108px;
  }
  .mail-share-modal .modal-container {
    margin: 0;
    height: 100%;
    max-height: none;
  }
  .mail-share-modal .modal-container .content-body {
    margin: 0 auto !important;
    height: 100%;
  }
  .mail-share-modal .modal-container .content-body > p {
    margin: 11px 0 36px;
    font-size: 1.4rem;
  }
  .mail-share-modal .modal-container .content-body .input-box-area {
    margin: 0 16px;
    max-height: none;
    height: calc(100% - 263px);
  }
  .mail-share-modal .modal-container .content-body .input-box-area .input-box {
    overflow: auto;
  }
  .mail-share-modal .scroll-on {
    margin-right: 0 !important;
  }
  .mail-share-modal .btn-group-area {
    padding: 16px;
    width: 100%;
  }
  .mail-share-modal .add-mail {
    margin-bottom: 24px;
    font-size: 1.6rem;
  }
  .mail-share-modal .mail-share-modal-close {
    width: 30px;
    height: 30px;
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    top: 9px;
    right: 16px;
    z-index: 53;
  }
  .deletion-confirmation-modal .modal-container {
    padding: 16px;
    width: 300px;
    height: auto;
    border-radius: 8px;
  }
  .deletion-confirmation-modal .modal-container .content-body > p {
    margin-bottom: 16px;
  }
  .reservation-canceled {
    height: 50px;
  }
  .reservation-canceled .reservation-canceled-text {
    font-size: 1.6rem;
  }
  .btn-group-area.local-settlement a {
    width: 100%;
    min-width: auto !important;
  }
}

@media (max-width: 360px) {
  .reservation-info-modal .gtt-coupon-info .d-flex.title {
    display: block;
    text-align: center;
  }
  .reservation-info-modal .gtt-coupon-info .d-flex.title .mr-16 {
    margin: 0;
  }
}

.mp-reservation .accommodation-history .right-area {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
}

.mp-reservation .accommodation-history .btn-review {
  width: 300px;
}

.mp-reservation .js-modal-trigger.sp-only {
  text-decoration: none;
}

@media screen and (max-width: 900px) {
  .mp-reservation .right-area .btn-review {
    width: 100%;
    height: 40px;
    font-size: 1.4rem !important;
  }
}

/*
@media (min-width: 1050px) {
  .mp-reservation {
    .reservation {
      &.accommodation-history {
        .reservation-item {
          .detail-info {
            height: 130px;
            position: relative;
            bottom: 3px;
          }
          .detail-area {
            margin-top: 43px;
          }
        }
      }
    }
  }
}
//Tab切り替え時のガタ付き防止用（Card自体のガタつき）
@media screen and (min-width: 768px) {
  .mp-reservation {
    .reservation {
      .reservation-item {
        height: 300px;
      }
    }
  }
}
*/
.old-my-page .reservation-info-modal .content-body {
  margin: 0 auto;
  height: calc(100% - 50px) !important;
}

.alert-modal-guest .modal-container {
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.alert-modal-guest .modal-container-inner {
  background: #fff;
  padding: 24px;
  border-radius: 8px;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.2);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 767px) {
  .alert-modal-guest .modal-container {
    background: rgba(198, 198, 198, 0.7);
    padding: 0;
  }
  .alert-modal-guest .mypage-btn-double button {
    height: 40px;
  }
}

/*
  全国旅行支援
*/
.mp-reservation-body .reservation-info-modal .info-area {
  border-bottom: none;
}

.mp-reservation-body .reservation-info-modal .gtt-coupon-info .text-link {
  color: inherit;
}

.mp-reservation-body .reservation-info-modal .gtt-coupon-info a:after {
  background: url(/stcontents/img/common/icon-text-link-gray.svg) no-repeat 0 center;
}

.mp-reservation-body .bg-paleblue {
  background: #EDF7FF;
  padding: 8px 0;
}

.mp-reservation-body .bg-paleblue .text {
  padding: 0 8px;
  line-height: 1.5;
  color: #333;
}

.mp-reservation-body .detail-info .bg-paleblue {
  position: relative;
}

@media screen and (min-width: 768px) {
  .mp-reservation-body .zenkoku-date {
    min-height: 30px;
    background: #EDF7FF;
    padding-right: 10px;
    margin-bottom: 0 !important;
    line-height: 1.5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: unset !important;
    -webkit-align-items: unset !important;
        -ms-flex-align: unset !important;
            align-items: unset !important;
    border: 1px solid #999;
    border-bottom: none;
  }
  .mp-reservation-body .zenkoku-date > div,
  .mp-reservation-body .zenkoku-date > p {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mp-reservation-body .zenkoku-date + .reservation-item {
    border: 1px solid #999;
    border-top: none;
  }
  .mp-reservation-body .zenkoku-label {
    min-height: 30px;
    background: #1973B7;
    padding: 0 10px;
    line-height: 1.8;
    font-size: 12px;
    color: #fff;
    white-space: nowrap;
  }
  .mp-reservation-body .zenkoku-text {
    margin-right: auto;
    padding: 0 10px;
  }
  .mp-reservation-body .zenkoku-date > p {
    white-space: nowrap;
  }
  .mp-reservation-body .icon_baloon {
    background: #1973B7;
    width: 133px;
    height: 44px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    text-shadow: none;
    text-align: center;
    line-height: 1.4;
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 16px;
    border-radius: 2px;
    letter-spacing: 0;
  }
  .mp-reservation-body .icon_baloon:after {
    content: "";
    display: inline-block;
    border: 4px solid transparent;
    border-top: 9px solid #1973B7;
    position: absolute;
    bottom: -12px;
    left: calc(50% - 2px);
  }
}

@media screen and (max-width: 900px) and (min-width: 768px) {
  .mp-reservation-body .zenkoku-date + .reservation-item {
    margin-bottom: 16px !important;
  }
  .mp-reservation-body .zenkoku-date + .reservation-item,
  .mp-reservation-body .reservation .reservation-item .bg-img {
    border-radius: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .mp-reservation-body .zenkoku-label,
  .mp-reservation-body .zenkoku-text {
    display: none !important;
  }
  .mp-reservation-body .reservation-item-content .tag-gtt {
    background: #1973B7;
    position: absolute;
    top: -2px;
    left: 0;
  }
  .mp-reservation-body .reservation-item-content .tag-gtt + .text {
    padding-top: 12px;
  }
  .mp-reservation-body .reservation-item-content .gtt {
    height: auto !important;
  }
}

.mp-reservation-body .modal-zenkoku {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
}

.mp-reservation-body .modal-zenkoku > div {
  display: block;
  max-width: 800px;
}

.mp-reservation-body .modal-zenkoku .modal-container {
  padding: 0 !important;
  overflow-y: auto;
}

.mp-reservation-body .modal-zenkoku .modal-container .wrap {
  max-width: 100%;
}

.mp-reservation-body .modal-zenkoku .btn-zenkoku-close {
  display: none;
}

.mp-reservation-body .modal-zenkoku h2 {
  margin: 30px 0 24px;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0;
}

.mp-reservation-body .zenkoku-after-apply h3 {
  margin-bottom: 10px;
  font-size: 24px;
  color: #1973B7;
}

.mp-reservation-body .reservation-info-modal .gtt-coupon-info {
  padding: 16px 16px;
}

.mp-reservation-body .zenkoku-after-apply .charge-details {
  margin: 16px 0;
  padding: 24px 40px;
}

.mp-reservation-body .zenkoku-after-apply .charge-left-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mp-reservation-body .zenkoku-after-apply .charge-left-item p {
  width: 30%;
  white-space: nowrap;
}

.mp-reservation-body .zenkoku-after-apply .charge-left-item p:first-child {
  width: 40%;
  text-align: left;
}

.mp-reservation-body .zenkoku-after-apply ul {
  padding-left: 1.5em;
}

.mp-reservation-body .zenkoku-after-apply ul li {
  list-style: disc;
  margin-bottom: 10px;
  font-size: 12px;
}

.mp-reservation-body .zenkoku-after-apply .gotoAgreeBtn {
  padding: 0 0 10px;
  font-weight: bold;
  letter-spacing: 0;
}

.mp-reservation-body .zenkoku-after-apply .gotoAgreeBtn > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mp-reservation-body .zenkoku-after-apply .gotoAgreeBtn.disabled {
  pointer-events: none;
  opacity: 0.2;
}

.mp-reservation-body .zenkoku-after-apply .gotoAgreeBtn label {
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: none;
  font-size: 14px;
}

.mp-reservation-body .zenkoku-after-apply .gotoAgreeBtn input[type="checkbox"] {
  margin: -8px 5px 0 0;
  vertical-align: text-top;
  float: left;
  width: 20px;
  height: 20px;
}

.mp-reservation-body .zenkoku-after-apply .js-btn-modal-zenkoku,
.mp-reservation-body .zenkoku-after-apply .submitBtn {
  width: 300px;
  margin: 0 auto;
  color: #fff;
}

.mp-reservation-body .zenkoku-after-apply .submitBtn[disabled] {
  opacity: 0.2;
}

.mp-reservation-body .disclaimer .wrap {
  max-width: 700px;
  line-height: 1.8;
  padding: 0 30px 500px;
}

.mp-reservation-body .disclaimer h1 {
  margin-bottom: 32px;
  text-align: center;
  font-size: 20px;
}

.mp-reservation-body .disclaimer .notice-box {
  padding-top: 10px;
  margin-bottom: 60px;
}

.mp-reservation-body .disclaimer .notice-box h2 {
  background: #1973B7;
  padding: 8px;
  line-height: inherit;
  font-size: 14px;
  text-align: center;
  color: #fff;
}

.mp-reservation-body .disclaimer .notice-box ul {
  padding-left: 1.5em;
}

.mp-reservation-body .disclaimer .notice-box ul li {
  list-style: disc;
  margin-bottom: 8px;
}

.mp-reservation-body .disclaimer .notice-box a {
  color: #757575;
}

.mp-reservation-body .disclaimer .notice-box .no-text {
  text-align: center;
  font-size: 13px;
  color: #333;
}

.mp-reservation-body .disclaimer .notice-box ul.note {
  color: #757575;
  padding-left: 1em;
  text-indent: -1em;
}

.mp-reservation-body .disclaimer .notice-box ul.note li {
  list-style: none;
}

@media screen and (max-width: 767px) {
  .mp-reservation-body .disclaimer .wrap {
    padding: 0 16px 500px;
  }
  .mp-reservation-body .disclaimer h1 {
    letter-spacing: 0;
    font-size: 16px;
  }
  .mp-reservation-body .zenkoku-after-apply {
    padding: 16px 16px !important;
  }
  .mp-reservation-body .zenkoku-after-apply .charge-details {
    padding: 0;
  }
  .mp-reservation-body .zenkoku-after-apply h3 {
    font-size: 16px;
    line-height: 1.5;
  }
  .mp-reservation-body .zenkoku-after-apply .charge-left-item p,
  .mp-reservation-body .zenkoku-after-apply .charge-left-item p:first-child {
    width: 50%;
  }
  .mp-reservation-body .zenkoku-after-apply .js-btn-modal-zenkoku,
  .mp-reservation-body .zenkoku-after-apply .submitBtn {
    width: 100%;
    font-size: 14px;
  }
  .mp-reservation-body .zenkoku-after-apply .js-btn-modal-zenkoku {
    height: 40px;
  }
  .mp-reservation-body .modal-zenkoku {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
  }
  .mp-reservation-body .modal-zenkoku .btn-zenkoku-close {
    display: block;
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    position: fixed;
    top: 10px;
    width: 30px;
    height: 30px;
    left: auto;
    right: 14px;
    text-shadow: none;
    font-weight: bold;
    font-size: 22px;
    color: #333;
    z-index: 100;
    line-height: 0;
    text-indent: -200px;
    overflow: hidden;
  }
  .mp-reservation-body .modal-zenkoku > div > h2:first-child {
    font-size: 16px;
    margin-bottom: 0;
  }
}

.reservation-notLoggedIn.wrap {
  padding-top: 24px;
  padding-bottom: 64px;
}

.reservation-notLoggedIn .title {
  margin-bottom: 24px;
}

.reservation-notLoggedIn .signup {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reservation-notLoggedIn .signup .box {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #f5f5f5;
  margin-right: 24px;
  padding: 32px;
}

.reservation-notLoggedIn .signup .box:last-child {
  margin-right: 0;
}

.reservation-notLoggedIn .signup .input-icon-position {
  position: relative;
}

.reservation-notLoggedIn .signup .input-icon-position.error .login-input {
  border-color: #ce0000;
  margin-bottom: 4px;
}

.reservation-notLoggedIn .signup .input-icon-position.error + .error-text {
  display: block;
  color: #ce0000;
  margin-bottom: 16px;
}

.reservation-notLoggedIn .signup .input-icon-position img {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 12px;
  left: 9px;
}

.reservation-notLoggedIn .signup .input-icon-position img.password-eye {
  left: auto;
  right: 9px;
}

.reservation-notLoggedIn .signup .login-input {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 16px;
  padding: 0 12px 0 41px;
  width: 100%;
  height: 48px;
  border: 1px solid #C6C6C6;
  border-radius: 4px;
}

.reservation-notLoggedIn .signup .login-input::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #C6C6C6;
}

.reservation-notLoggedIn .signup .login-input::-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #C6C6C6;
}

.reservation-notLoggedIn .signup .login-input::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #C6C6C6;
}

.reservation-notLoggedIn .signup .login-input:focus {
  outline: none;
}

.reservation-notLoggedIn .signup-title {
  color: #000000;
  font-size: 2rem;
  text-align: center;
  margin-bottom: 16px;
}

.reservation-notLoggedIn .login {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 400px;
  margin: 0 auto;
}

.reservation-notLoggedIn .signup-mail {
  width: 100%;
  margin-bottom: 24px;
}

.reservation-notLoggedIn .sns-title {
  color: #000000;
  text-align: center;
  margin-bottom: 16px;
}

.reservation-notLoggedIn .login-btn > a {
  width: 100%;
  height: 48px;
}

.reservation-notLoggedIn .forget-password {
  margin-top: 20px;
  display: block;
  text-align: center;
  text-decoration: underline;
}

.reservation-notLoggedIn .forget-password:hover {
  color: #000000;
}

.reservation-notLoggedIn .sns-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reservation-notLoggedIn .sns-btns .sns-btn {
  width: 50px;
  height: 50px;
  margin-right: 24px;
}

.reservation-notLoggedIn .sns-btns .sns-btn:last-child {
  margin-right: 0;
}

.reservation-notLoggedIn .sns-btns .sns-btn > a {
  width: 100%;
  height: 100%;
  border: 1px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation-notLoggedIn .sns-btns .sns-btn > a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .reservation-notLoggedIn.wrap {
    padding-top: 16px;
    padding-bottom: 110px;
  }
  .reservation-notLoggedIn .title {
    font-size: 2.6rem;
    margin-bottom: 16px;
  }
  .reservation-notLoggedIn .signup {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .reservation-notLoggedIn .signup .box {
    padding: 24px 16px;
    margin-right: 0;
    margin-bottom: 24px;
  }
  .reservation-notLoggedIn .signup .box:last-child {
    margin-bottom: 0;
  }
  .reservation-notLoggedIn .signup .input-icon-position {
    position: relative;
  }
  .reservation-notLoggedIn .signup .input-icon-position.error + .error-text {
    margin-bottom: 8px;
  }
  .reservation-notLoggedIn .signup .input-icon-position img {
    width: 16px;
    height: 16px;
    top: 16px;
    left: 8px;
  }
  .reservation-notLoggedIn .signup .input-icon-position img.password-eye {
    left: auto;
    right: 9px;
  }
  .reservation-notLoggedIn .signup .login-input {
    width: 100%;
    margin-bottom: 8px;
    padding-left: 32px;
  }
  .reservation-notLoggedIn .signup-title {
    font-size: 1.6rem;
  }
  .reservation-notLoggedIn .login {
    width: auto;
  }
  .reservation-notLoggedIn .sns-title {
    font-size: 1.6rem;
  }
  .reservation-notLoggedIn .forget-password {
    font-size: 1.4rem;
    margin-top: 16px;
  }
}

.reservation-resend.wrap {
  padding-top: 24px;
  padding-bottom: 160px;
}

.reservation-resend .title {
  margin-bottom: 24px;
}

.reservation-resend .lead {
  font-size: 1.6rem;
  margin-bottom: 24px;
}

.reservation-resend .input-box input {
  width: 100%;
  max-width: 480px;
}

.reservation-resend .submit-btn {
  margin-top: 40px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .reservation-resend.wrap {
    padding-top: 16px;
    padding-bottom: 80px;
  }
  .reservation-resend .title {
    font-size: 2.6rem;
    margin-bottom: 8px;
  }
}

.withdrawal-procedure-content .content {
  text-align: center;
}

.mb8 {
  margin-bottom: .8rem;
}

.mtb40 {
  margin: 4rem 0;
}

.mr16 {
  margin-right: 1.6rem;
}

.mt25 {
  margin-top: 2.5rem;
}

.mt40 {
  margin-top: 4rem;
}

.box-button {
  width: 38.5rem;
  margin: 0 auto;
}

.box-button a {
  -webkit-flex-basis: calc(100% / 2 - 1.6rem);
      -ms-flex-preferred-size: calc(100% / 2 - 1.6rem);
          flex-basis: calc(100% / 2 - 1.6rem);
}

.box-app {
  max-width: 112rem;
  margin: 0 auto;
  padding: 2.4rem;
}

.box-app img {
  width: 100%;
  height: 100%;
}

.box-app .app-left {
  position: relative;
  margin-right: 2rem;
}

.box-app .app-left .box-qr {
  position: absolute;
  bottom: 0;
}

.box-app .app-left .app-left-top {
  text-align: left;
}

.box-app .app-right {
  -webkit-flex-basis: 15rem;
      -ms-flex-preferred-size: 15rem;
          flex-basis: 15rem;
}

.box-app .qr01,
.box-app .qr02 {
  width: 25rem;
  -webkit-flex-basis: calc(100% / 2 - 1.6rem);
      -ms-flex-preferred-size: calc(100% / 2 - 1.6rem);
          flex-basis: calc(100% / 2 - 1.6rem);
}

.box-app .qr01 a,
.box-app .qr02 a {
  display: block;
  margin: 0;
  height: 5rem;
  -webkit-flex-basis: 17rem;
      -ms-flex-preferred-size: 17rem;
          flex-basis: 17rem;
  margin-right: .5rem;
}

.box-app .qr01 a img,
.box-app .qr02 a img {
  -o-object-fit: cover;
     object-fit: cover;
}

.box-app .img-qr {
  width: 5rem;
  height: 5rem;
}

.title-box {
  margin-bottom: .8rem;
}

.box-temporary-mail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border-bottom: solid 1px #c6c6c6;
  border-top: solid 1px #c6c6c6;
}

.box-temporary-mail dt, .box-temporary-mail dd {
  padding: 1.6rem;
}

.box-temporary-mail dt {
  -webkit-flex-basis: 30rem;
      -ms-flex-preferred-size: 30rem;
          flex-basis: 30rem;
}

/*pc*/
@media screen and (min-width: 768px) {
  .withdrawal-procedure-content .content {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .withdrawal-procedure-content .input-submit {
    margin-bottom: 156px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .withdrawal-procedure-content .input-submit a:nth-child(1) {
    margin-right: 24px;
  }
  .withdrawal-procedure-content .input-submit a {
    width: 176px;
    text-align: center;
  }
  .app-left {
    -webkit-flex-basis: 50rem;
        -ms-flex-preferred-size: 50rem;
            flex-basis: 50rem;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .withdrawal-procedure-content .content {
    margin-top: 40px;
  }
  .withdrawal-procedure-content .input-submit {
    margin-top: 40px;
    margin-bottom: 32px;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .withdrawal-procedure-content .input-submit > a:nth-child(1) {
    margin-right: 2%;
  }
  .withdrawal-procedure-content .input-submit a {
    width: 48.9%;
    text-align: center;
  }
  .done-page {
    padding: 2.4rem 0 0;
  }
  .done-page .font-xxx-large {
    font-size: 2rem;
  }
  .box-banner img {
    width: 100%;
  }
  .box-button {
    width: auto;
  }
  .box-button a {
    -webkit-flex-basis: calc(100% / 2 - .8rem);
        -ms-flex-preferred-size: calc(100% / 2 - .8rem);
            flex-basis: calc(100% / 2 - .8rem);
    white-space: nowrap;
  }
  .app-left {
    padding-bottom: 11rem;
    margin-right: 0;
  }
  .app-left .box-qr {
    left: 0;
    right: 0;
    margin: auto;
    width: 23rem;
  }
  .app-left .box-qr.frame-flex-base {
    display: block;
  }
  .app-left .box-qr.frame-flex-base li {
    margin-bottom: .8rem;
  }
  .all-left {
    text-align: left;
  }
  .box-temporary-mail {
    display: block;
    border-top: none;
  }
  .box-temporary-mail dt {
    padding: .8rem;
  }
  .box-temporary-mail dd {
    padding: .8rem .8rem 1.2rem;
  }
  .box-temporary-cm.mt40 {
    margin-top: 3.7rem;
  }
}

@media screen and (min-width: 600px) {
  .box-app-sp {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  .box-app {
    display: none;
  }
  .box-app-sp {
    display: block;
    padding: 24px;
  }
  .box-app-sp .app-banner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .box-app-sp .app-banner img {
    height: 34px;
  }
}

.receipt.lb-disable-scrolling {
  overflow: hidden !important;
}

.receipt .receipt-name {
  width: 84% !important;
}

.receipt .receipt-price {
  width: 176px;
}

.receipt .receipt-counter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.receipt .receipt-counter span {
  display: inline-block;
}

.receipt .message {
  height: auto;
}

.receipt .input-checkbox {
  border-bottom: none;
}

.receipt .modal-on {
  -webkit-filter: blur(4px) !important;
          filter: blur(4px) !important;
}

.receipt .lb-caption {
  color: #333;
  font-weight: bold;
  letter-spacing: 0;
  background-color: rgba(255, 255, 255, 0.6);
}

.receipt .lb-image {
  border: none;
}

.receipt .lb-close {
  background-image: url(/stcontents/img/common/icon-close-2.svg);
  top: 24px;
  right: 16px;
}

.receipt .lb-dataContainer {
  display: none !important;
}

.receipt .common-modal img {
  max-width: 100%;
  height: auto;
}

@media (min-width: 768px) {
  .receipt .font-xx-large {
    font-size: 2.6rem;
  }
  .receipt .receipt-box {
    padding: 40px;
  }
  .receipt .receipt-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .receipt .receipt-content-left {
    width: calc(100% - 288px);
  }
  .receipt .receipt-content-left .input-box .color-gray-3 label {
    cursor: auto;
  }
  .receipt .receipt-sample {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .receipt .receipt-sample img {
    max-width: 224px;
    height: auto;
  }
  .receipt .receipt-sample-inner {
    position: relative;
    line-height: 1;
  }
  .receipt .receipt-sample-inner:hover {
    opacity: 0.7;
  }
  .receipt .receipt-sample-icon {
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .receipt .receipt-sample-sp {
    display: none;
  }
}

@media (max-width: 767px) {
  .receipt .receipt-content-left ul.font-large {
    font-size: 1.6rem;
  }
  .receipt .receipt-price {
    width: 160px !important;
  }
  .receipt .receipt-sample {
    display: none;
  }
  .receipt .lightboxOverlay {
    background-color: rgba(160, 160, 160, 0.8);
  }
  .receipt .lb-close {
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
  }
  .receipt .common-modal .modal-container.scroll-on .content-body {
    margin-right: 0;
    height: calc(100% - 37px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .receipt-sample-modal .content-body {
    padding: 0 !important;
    margin: 0 !important;
  }
  .receipt-sample-modal .common-modal-title {
    height: auto !important;
  }
  .receipt-sample-modal img {
    width: 100% !important;
    height: auto !important;
  }
}

@media (max-width: 500px) {
  .receipt .common-modal .modal-container {
    padding-bottom: 0;
  }
  .receipt .common-modal .modal-container.scroll-on {
    padding-left: 0;
  }
  .receipt .common-modal .modal-container.scroll-on .content-body {
    padding-right: 16px;
    background: #F5F5F5;
  }
}

.receipt .submit-double-sp {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.receipt .submit-double-sp a {
  max-width: 172px;
}

.mp-member-info {
  /*pc*/
  /*sp*/
}

.form-validation .input-error-word,
.member-form-validation .input-error-word {
  display: none;
}

.form-validation .input-error-word.active,
.member-form-validation .input-error-word.active {
  display: block;
}

.form-validation .error-border,
.member-form-validation .error-border {
  border-color: #CE0000 !important;
}

.form-validation .postal-code-any, .form-validation .postal-code-require,
.member-form-validation .postal-code-any,
.member-form-validation .postal-code-require {
  display: none;
}

.form-validation .postal-code-any.active, .form-validation .postal-code-require.active,
.member-form-validation .postal-code-any.active,
.member-form-validation .postal-code-require.active {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.mp-member-info .content-edit .input-box .select-dropdown-search ul {
  position: relative;
  top: 8px;
  border: 1px solid #F5F5F5;
}

.mp-member-info input[type=text],
.mp-member-info input[type=number],
.mp-member-info input[type=tel],
.mp-member-info input[type=email] {
  width: 100%;
}

.mp-member-info input[type="radio"],
.mp-member-info input[type="checkbox"] {
  border: none;
}

.mp-member-info u {
  text-decoration: none;
  color: #CACACA;
}

.mp-member-info .options ul {
  width: 100%;
  position: absolute;
  top: 48px;
  left: 0;
  z-index: 1;
}

.mp-member-info .input-name-wrap {
  max-width: 528px;
}

.mp-member-info .input-name-wrap li {
  width: calc(50% - 8px);
}

.mp-member-info #postal-code {
  max-width: 126px !important;
}

@media (max-width: 360px) {
  .mp-member-info #postal-code {
    max-width: 100px !important;
  }
}

.mp-member-info #home-address {
  max-width: 544px;
}

.mp-member-info #mail {
  max-width: 348px;
}

.mp-member-info #phone-number {
  max-width: 150px;
}

.mp-member-info #anniversary {
  max-width: 126px;
}

.mp-member-info #birth {
  max-width: 192px;
}

.mp-member-info .prefectures .options {
  max-width: 126px;
}

@media screen and (min-width: 768px) {
  .mp-member-info .main-title {
    margin-bottom: 16px;
  }
  .mp-member-info .btn-smaller {
    height: 48px;
  }
  .mp-member-info .content-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 160px;
    padding-top: 16px;
  }
  .mp-member-info .content-info dl.info-list {
    padding-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    max-width: 534px;
  }
  .mp-member-info .content-info dl.info-list dt, .mp-member-info .content-info dl.info-list dd {
    margin-bottom: 16px;
  }
  .mp-member-info .content-info dl.info-list dt {
    width: 184px;
  }
  .mp-member-info .content-info dl.info-list dd {
    width: calc(100% - 184px);
  }
  .mp-member-info .content-info .edit-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
  .mp-member-info .content-edit {
    max-width: 560px;
    padding-bottom: 160px;
  }
  .mp-member-info .content-edit .input-box {
    /*padding-bottom: 24px;*/
    max-width: 915px;
  }
  .mp-member-info .content-edit .input-box.prefectures {
    display: none;
  }
  .mp-member-info .content-edit .input-box.prefectures.active {
    display: block;
  }
  .mp-member-info .content-edit .input-box.phone-box.abs {
    padding-bottom: 91px;
  }
  .mp-member-info .content-edit .input-box .des {
    margin-top: -10px;
    margin-bottom: 18px;
  }
  .mp-member-info .content-edit .input-box input[type=text] {
    width: 100%;
  }
  .mp-member-info .content-edit .input-box input[type=text].birth {
    max-width: 159px;
  }
  .mp-member-info .content-edit .input-box input[type=text].postal-code {
    max-width: 96px;
  }
  .mp-member-info .content-edit .input-box input[type=text].home-address {
    max-width: 544px;
  }
  .mp-member-info .content-edit .input-box input[type=text].phone-number {
    max-width: 160px;
  }
  .mp-member-info .content-edit .input-box input[type=text].mail {
    max-width: 351px;
  }
  .mp-member-info .content-edit .input-box input[type=text].anniversary {
    max-width: 109px;
  }
  .mp-member-info .content-edit .input-box .check-box label {
    font-size: 1.6rem;
  }
  .mp-member-info .content-edit .input-box label {
    margin-right: 30px;
  }
  .mp-member-info .content-edit .input-box p:last-of-type.check-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-member-info .content-edit .input-box p:last-of-type.check-box label {
    margin-right: 0;
    margin-bottom: 8px;
    width: 33.3333%;
  }
  .mp-member-info .content-edit .input-box .input-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .mp-member-info .content-edit .input-box .input-area .double-input {
    width: 256px;
  }
  .mp-member-info .content-edit .input-box .input-area .double-input.first {
    margin-right: 32px;
  }
  .mp-member-info .content-edit .input-box .input-area .double-input input.text-double {
    width: 256px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown.prefectures {
    width: 106px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown .dropdown-select-button::before, .mp-member-info .content-edit .input-box .select-dropdown .dropdown-select-button::after {
    right: 5px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown .select-frame {
    color: #333;
  }
  .mp-member-info .content-edit .input-box .phone-number-before {
    position: relative;
  }
  .mp-member-info .content-edit .input-box .phone-number-before.abs {
    padding-bottom: 53px;
  }
  .mp-member-info .content-edit .input-box .phone-number-before .phone {
    display: none;
  }
  .mp-member-info .content-edit .input-box .phone-number-before .phone.active {
    display: block;
    padding-bottom: 20px;
  }
  .mp-member-info .content-edit .input-box .phone-number-before > .input-block.abs {
    position: absolute;
    top: 0;
    left: 136px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search {
    width: 288px;
    display: inline-block;
    position: relative;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .dropdown {
    display: none;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul, .mp-member-info .content-edit .input-box .select-dropdown-search li, .mp-member-info .content-edit .input-box .select-dropdown-search span {
    -webkit-user-select: none;
    -moz-user-select: none;
    /*firefox*/
    -ms-user-select: none;
        user-select: none;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul {
    margin: 0px;
    padding: 0px;
    width: 100%;
    max-height: 400px;
    border: 1px solid #C6C6C6;
    -webkit-box-shadow: none;
            box-shadow: none;
    display: none;
    list-style: none;
    z-index: 2;
    overflow: auto;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul li {
    padding-left: 36px;
    height: 40px;
    border: 1px solid #F5F5F5;
    border-top: none;
    background-color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 40px;
    cursor: pointer;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul li span {
    color: #757575;
    font-size: 0.875rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul li:hover {
    background-color: #f5f5f5;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul li.active {
    background-color: #F3F8FD;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul li.title {
    padding-left: 11px;
    color: #757575;
    background-color: #FFFFFF;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search ul.active {
    display: block;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search span.select-frame {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 9px 16px;
    width: 100%;
    display: block;
    color: #333;
    cursor: pointer;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search span.select-frame.phone-txt {
    width: 126px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area {
    display: none;
    position: relative;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area.active {
    display: block;
    width: 100%;
    height: 40px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area.on {
    border-top-color: #0f0a64;
    border-left-color: #0f0a64;
    border-right-color: #0f0a64;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area img {
    top: 12px;
    left: 11px;
    position: absolute;
    cursor: pointer;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area input {
    padding: 12px 11px 11px 36px;
    font-size: 1.2rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area input ::-webkit-input-placeholder {
    font-size: 1.6rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area input :-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area input ::-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .search-area input ::placeholder {
    font-size: 1.6rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button::before, .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button::after {
    content: '';
    background-color: #333333;
    display: block;
    position: absolute;
    width: 14px;
    height: 2px;
    top: 50%;
    right: 5px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.home::before, .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.home::after {
    right: 12px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.phone-btn::before, .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.phone-btn::after {
    right: 14px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button::after {
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.active::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search div.dropdown-select-button.active::after {
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .phone-btn {
    right: 162px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .dropdown-hidden {
    padding: 16px;
    -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
            box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
    display: none;
    width: 288px;
    height: 482px;
    left: 0;
    top: 56px;
    background: #FFF;
    z-index: 1;
    border-radius: 8px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search .dropdown-hidden.active {
    display: block;
  }
  .mp-member-info .content-edit .save-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 767px) {
  .mp-member-info h2 {
    font-size: 2.6rem;
    font-weight: 100;
    text-align: left;
  }
  .mp-member-info .btn-small {
    /*height: 48px;*/
  }
  .mp-member-info .js-half-modal-container {
    height: 101%;
    border-radius: 0;
  }
  .mp-member-info .js-half-modal-container.hide {
    display: none;
  }
  .mp-member-info .js-half-modal-container .half-modal-head {
    padding: 11px 0;
  }
  .mp-member-info .js-half-modal-container .js-half-modal-close {
    top: -1px;
    right: 16px;
  }
  .mp-member-info .main-title {
    margin-top: 16px;
    margin-bottom: 8px;
  }
  .mp-member-info .content-info {
    /*padding-bottom: 80px;*/
  }
  .mp-member-info .content-info dl.info-list {
    padding-bottom: 24px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    font-size: 1.2rem;
  }
  .mp-member-info .content-info dl.info-list dt, .mp-member-info .content-info dl.info-list dd {
    margin-bottom: 16px;
  }
  .mp-member-info .content-info dl.info-list dt {
    padding-top: 5px;
    margin-right: 16px;
    width: 20%;
  }
  .mp-member-info .content-info dl.info-list dd {
    width: calc(80% - 16px);
    font-size: 1.6rem;
  }
  .mp-member-info .content-info dl.info-list dd span {
    display: block;
  }
  .mp-member-info .content-info dl.info-list dd u {
    color: #C6C6C6;
    text-decoration: none;
  }
  .mp-member-info .content-edit {
    max-width: 400px;
  }
  .mp-member-info .content-edit .input-box input[type=text] {
    width: 100%;
  }
  .mp-member-info .content-edit .input-box input[type=text].birth {
    max-width: 169px;
  }
  .mp-member-info .content-edit .input-box input[type=text].postal-code {
    max-width: 109px;
  }
  .mp-member-info .content-edit .input-box input[type=text].phone-number {
    max-width: 160px;
  }
  .mp-member-info .content-edit .input-box input[type=text].anniversary {
    max-width: 109px;
  }
  .mp-member-info .content-edit .input-box input.text-double.first {
    margin-bottom: 23px;
  }
  .mp-member-info .content-edit .input-box .input-area .double-input.first {
    margin-bottom: 21px;
  }
  .mp-member-info .content-edit .input-box .radios {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-member-info .content-edit .input-box .radios label {
    margin-bottom: 14px;
    width: 100%;
  }
  .mp-member-info .content-edit .input-box .radios label:last-of-type {
    margin-bottom: 0;
  }
  .mp-member-info .content-edit .input-box p:last-of-type.check-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-member-info .content-edit .input-box p:last-of-type.check-box label {
    margin-right: 0;
    margin-bottom: 22px;
    width: 50%;
    font-size: 1.4rem;
  }
  .mp-member-info .content-edit .input-box p:last-of-type input.text-double {
    width: 100%;
  }
  .mp-member-info .content-edit .input-box .select-dropdown {
    min-width: 99px;
    width: auto;
  }
  .mp-member-info .content-edit .input-box .select-dropdown::before, .mp-member-info .content-edit .input-box .select-dropdown::after {
    content: '';
    background-color: #333333;
    display: block;
    position: absolute;
    width: 14px;
    height: 2px;
    top: 30%;
    right: 5px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .mp-member-info .content-edit .input-box .select-dropdown::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown::after {
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown.active::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown.active::after {
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown .dropdown {
    padding-bottom: 8px;
    width: 106px;
    border-top: none;
    border-right: none;
    border-left: none;
    display: block;
    border-bottom: 1px solid #C6C6C6;
    color: #333;
    background-color: #ffffff;
    font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1.4rem;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
  }
  .mp-member-info .content-edit .input-box .phone-number-before.sp-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .mp-member-info .content-edit .input-box .phone-number-before .select-dropdown-search {
    margin-right: 10px;
  }
  .mp-member-info .content-edit .input-box .phone-number-before .phone {
    display: none;
  }
  .mp-member-info .content-edit .input-box .phone-number-before .phone.active {
    display: block;
  }
  .mp-member-info .content-edit .input-box .phone-number-before > .input-block.abs {
    max-width: 160px;
    display: inline-block;
    vertical-align: top;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp {
    display: inline-block;
    position: relative;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp.phone {
    margin-right: 8px;
    width: 126px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown {
    display: none;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul, .mp-member-info .content-edit .input-box .select-dropdown-search-sp li, .mp-member-info .content-edit .input-box .select-dropdown-search-sp span {
    -webkit-user-select: none;
    -moz-user-select: none;
    /*firefox*/
    -ms-user-select: none;
        user-select: none;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul {
    margin: 0px;
    padding: 0px;
    width: 100%;
    border-radius: 0 0 4px 4px;
    border: 1px solid #C6C6C6;
    list-style: none;
    z-index: 2;
    overflow: auto;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul li {
    padding-left: 36px;
    height: 40px;
    border: 1px solid #F5F5F5;
    border-top: none;
    background-color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 40px;
    cursor: pointer;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul li span {
    color: #757575;
    font-size: 0.875rem;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul li.active {
    background-color: #F3F8FD;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp ul li.title {
    padding-left: 11px;
    color: #757575;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .half-modal-content {
    height: calc(100% - 38px);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .search-wrap {
    padding: 0 16px 8px 16px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area {
    margin-top: 8px;
    position: relative;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area.on {
    border-top-color: #0f0a64;
    border-left-color: #0f0a64;
    border-right-color: #0f0a64;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area img {
    top: 15px;
    left: 11px;
    position: absolute;
    cursor: pointer;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area input {
    padding: 13px 12px 13px 36px;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button {
    width: 100%;
    cursor: pointer;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::before, .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::after {
    content: '';
    background-color: #333333;
    display: block;
    position: absolute;
    width: 14px;
    height: 2px;
    top: 50%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::after {
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button.active::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .mp-member-info .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button.active::after {
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .mp-member-info .content-edit .save-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mp-member-info .half-modal-content {
    padding-top: 112px !important;
  }
  .mp-member-info .half-modal-head {
    position: static;
  }
  .mp-member-info .reserve-data-box-sp .half-modal-content {
    height: calc(100% - 220px);
  }
  .mp-member-info .half-modal-head-wrap {
    position: fixed;
    top: 0;
    width: 100%;
    background: #FFF;
  }
  .mp-member-info .js-fixed {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
            box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid red;
  }
  .mp-member-info .home .js-half-modal-trigger {
    width: 242px !important;
  }
  .mp-member-info .input-name-wrap {
    display: block;
  }
  .mp-member-info .input-name-wrap li {
    width: 100%;
    max-width: 342px;
  }
}

.mp-member-info .hidden-form {
  opacity: 0;
  height: 0;
  overflow: hidden;
  padding: 0;
}

.mp-change-password {
  /*pc*/
  /*sp*/
  /*sp*/
}

.mp-change-password .content {
  padding-bottom: 160px;
}

.mp-change-password .content .btn-smaller {
  height: 48px;
}

.mp-change-password .content .input-box {
  margin-right: auto;
  margin-left: auto;
  max-width: 368px;
}

.mp-change-password .content .input-box:nth-of-type(1) {
  margin-top: 16px;
}

.mp-change-password .content .input-box .input-content {
  position: relative;
}

.mp-change-password .content .input-box .icon-eye {
  left: auto;
}

.mp-change-password .content .input-box input {
  width: 100%;
}

.mp-change-password .content .input-box .password {
  max-width: 368px;
}

.mp-change-password .content .save-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}

.mp-change-password .content .address-registered-wrap {
  text-align: center;
}

.mp-change-password .content .address-registered {
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.mp-change-password .content .btn-wide {
  max-width: 368px;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .mp-change-password .content {
    padding-top: 16px;
  }
  .mp-change-password .content h2 {
    /*font-weight: 100;
        font-size: 2.6rem;
        text-align: left;*/
  }
  .mp-change-password .content .input-box {
    margin-top: 25px;
  }
  .mp-change-password .content .input-box:nth-of-type(1) {
    margin-top: 8px;
  }
  .mp-change-password .content .forgot-password {
    text-align: center;
  }
  .mp-change-password .content .save-btn {
    margin-top: 86px;
  }
  .mp-change-password .content .text-left-sp {
    text-align: left;
  }
  .mp-change-password .content .text-left-sp p {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 599px) {
  .mp-change-password .content .input-box {
    margin-top: 25px;
  }
  .mp-change-password .content .address-registered-wrap {
    text-align: left;
  }
}

@media screen and (max-width: 414px) {
  .mp-change-password .address-registered {
    min-width: auto;
  }
}

@media screen and (min-width: 768px) {
  .mp-change-password .address-registered {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-width: 368px;
  }
}

.mp-reset-password .content {
  padding-bottom: 160px;
}

.mp-reset-password .content .btn-smaller {
  height: 48px;
}

.mp-reset-password .content .input-box {
  margin-right: auto;
  margin-left: auto;
  max-width: 400px;
  /*input {
        width: 100%;
      }*/
}

.mp-reset-password .content .input-box .input-content {
  position: relative;
}

.mp-reset-password .content .input-box .icon-eye {
  left: auto;
}

.mp-reset-password .content .input-box .btn-relux {
  width: 100%;
}

.mp-reset-password .content-inner form {
  /*max-width: 400px;*/
  max-width: 528px;
  margin-right: auto;
  margin-left: auto;
}

.mp-reset-password .content-inner form .input-box {
  /*max-width: 400px;*/
  max-width: 368px;
  margin-left: 0;
}

.mp-reset-password .content-inner form .input-box-name {
  max-width: 528px;
}

.mp-reset-password .content-inner form .js-btn-submit {
  width: 100%;
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.mp-reset-password .input-name-wrap li {
  width: 48.5%;
  /* 他の画面も上書きする */
}

.mp-reset-password .note {
  padding: 24px 150px;
  text-align: center;
  font-size: 16px;
  margin-top: 40px;
}

.mp-reset-password .note li {
  padding-left: 1em;
  text-indent: -1em;
}

.mp-reset-password .note-text {
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.mp-reset-password .note-text li {
  font-size: 14px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .mp-reset-password .content-inner .js-input-form .js-btn-submit {
    max-width: 300px !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .mp-reset-password .note {
    padding: 24px;
  }
}

@media screen and (max-width: 767px) {
  .mp-reset-password .input-name-wrap {
    display: block;
  }
  .mp-reset-password .input-name-wrap li {
    width: 100%;
  }
  .mp-reset-password .note {
    padding: 16px;
    text-align: left;
    margin-top: 24px;
  }
  .mp-reset-password .lead {
    max-width: 420px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
  }
}

.mp-setting {
  /*pc*/
  /*sp*/
}

.mp-setting .btn-list .bg-white a {
  color: #333333;
}

.mp-setting .content ul.btn-list li.disabled {
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  pointer-events: none;
}

.mp-setting .content ul.btn-list li.disabled .icon {
  opacity: 0.28;
}

.mp-setting .content ul.btn-list li.disabled p.font-x-large {
  color: #C6C6C6;
}

@media screen and (min-width: 768px) {
  .mp-setting .main-title {
    margin-bottom: 8px;
  }
  .mp-setting .content ul.btn-list {
    padding-top: 25px;
    height: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-setting .content ul.btn-list li {
    margin-right: 25px;
    margin-bottom: 25px;
    padding: 32px 24px 32px 60px;
    width: calc((100% - 50px) / 3);
    border: 1px solid #f5f5f5;
    border-radius: 8px;
    position: relative;
    -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    cursor: pointer;
  }
  .mp-setting .content ul.btn-list li:nth-of-type(3n) {
    margin-right: 0;
  }
  .mp-setting .content ul.btn-list li:hover {
    opacity: 0.7;
  }
  .mp-setting .content ul.btn-list li .icon {
    position: absolute;
    top: 39px;
    left: 24px;
  }
  .mp-setting .content ul.btn-list li.disabled p:first-child {
    margin-left: 36px;
  }
  .mp-setting .top-btn {
    margin-top: 40px;
    padding-bottom: 160px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 767px) {
  .mp-setting .main-title {
    margin-top: 16px;
    margin-bottom: 8px;
  }
  .mp-setting .content ul.btn-list {
    padding-top: 15px;
    padding-bottom: 16px;
  }
  .mp-setting .content ul.btn-list li {
    margin-bottom: 8px;
    width: 100%;
    border: 1px solid #f5f5f5;
    border-radius: 8px;
    background-size: contain;
    position: relative;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    cursor: pointer;
  }
  .mp-setting .content ul.btn-list li:nth-of-type(3n) {
    margin-right: 0;
  }
  .mp-setting .content ul.btn-list li a {
    display: block;
    padding: 16px 12.2% 16px 16.3%;
  }
  .mp-setting .content ul.btn-list li .icon {
    position: absolute;
    top: 24px;
    left: 8%;
  }
  .mp-setting .content ul.btn-list li.disabled p:first-child {
    margin-left: 9%;
  }
  .mp-setting .top-btn {
    margin-top: 40px;
  }
}

.mp-social-account-integration {
  /*pc*/
  /*sp*/
}

@media screen and (min-width: 768px) {
  .mp-social-account-integration .main-title {
    margin-bottom: 16px;
  }
  .mp-social-account-integration main {
    margin-bottom: 160px;
  }
  .mp-social-account-integration main .alignment-info-wrap {
    margin: 0 auto;
    max-width: 330px;
  }
  .mp-social-account-integration main .alignment-info {
    margin-bottom: 32px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .mp-social-account-integration main .alignment-info .img-area {
    width: 160px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mp-social-account-integration main .alignment-info .img-area img {
    margin-right: 8px;
    width: 24px;
    height: 24px;
  }
  .mp-social-account-integration main .alignment-info .alignment {
    text-decoration: underline;
    cursor: pointer;
  }
  .mp-social-account-integration main .alignment-info .alignment.not {
    color: #333333;
    text-decoration: none;
    cursor: text;
  }
  .mp-social-account-integration .alert-modal .modal-container {
    max-width: 512px;
    border-radius: 8px;
  }
  .mp-social-account-integration .alert-modal .alert-modal-btn .btn-small {
    width: 176px;
  }
}

.mp-social-account-integration main .text-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mp-social-account-integration main .text-area .label {
  width: 60px;
  padding-right: 10px;
  font-size: 1.4rem;
}

.mp-social-account-integration main .text-area .btn-connect {
  width: 124px;
  height: 40px;
  font-size: 1.4rem;
}

.mp-social-account-integration main .text-area .btn-disabled {
  background: #C6C6C6;
  border-color: #C6C6C6;
  color: #fff;
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .mp-social-account-integration .main-title {
    margin-top: 16px;
    margin-bottom: 25px;
    font-weight: 100;
    font-size: 2.6rem;
    text-align: left;
  }
  .mp-social-account-integration main .alignment-info-wrap {
    max-width: 500px;
    margin: 0 auto;
  }
  .mp-social-account-integration main .alignment-info {
    margin-bottom: 32px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.6rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mp-social-account-integration main .alignment-info .img-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 116px;
    margin-right: 16px;
  }
  .mp-social-account-integration main .alignment-info .img-area img {
    margin-right: 8px;
    width: 24px;
    height: 24px;
  }
  .mp-social-account-integration main .alignment-info .img-area span {
    white-space: nowrap;
  }
  .mp-social-account-integration main .alignment-info .alignment {
    text-decoration: underline;
    cursor: pointer;
  }
  .mp-social-account-integration main .alignment-info .alignment.not {
    color: #333333;
    text-decoration: none;
  }
  .mp-social-account-integration main .text-area .btn-connect {
    width: 110px;
  }
  .mp-social-account-integration .alert-modal .modal-container {
    padding: 24px 16px;
    padding: 24px;
  }
  .mp-social-account-integration .alert-modal .modal-container .btn-small {
    height: 40px;
    font-size: 1.4rem;
    width: 130px;
  }
}

@media (max-width: 359px) {
  .mp-social-account-integration main .text-area .label {
    font-size: 1.3rem;
  }
  .mp-social-account-integration main .text-area .btn-connect {
    width: 96px;
    font-size: 1.3rem;
  }
}

.mp-withdrawal-procedure {
  /*pc*/
  /*sp*/
}

.mp-withdrawal-procedure .mp-content-wrap li {
  padding-left: 1em;
  text-indent: -1em;
}

.mp-withdrawal-procedure .mp-content-wrap li::before {
  content: "・";
}

.mp-withdrawal-procedure .input-error-word {
  display: none;
}

.mp-withdrawal-procedure .input-error-word.active {
  display: block;
}

@media screen and (min-width: 768px) {
  .mp-withdrawal-procedure main {
    margin-bottom: 160px;
  }
  .mp-withdrawal-procedure main .mp-content-wrap {
    max-width: 720px;
    margin-right: auto;
    margin-left: auto;
  }
  .mp-withdrawal-procedure main .stop-mail {
    text-decoration: underline;
  }
  .mp-withdrawal-procedure main .input-place .title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mp-withdrawal-procedure main .input-place .title span {
    margin-right: 10px;
    position: relative;
    top: 6px;
  }
  .mp-withdrawal-procedure main .input-place .radio-area {
    width: 100%;
    margin-bottom: 16px;
  }
  .mp-withdrawal-procedure main .input-place .update-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-withdrawal-procedure main .input-place .update-btn p {
    margin-top: 8px;
    width: 100%;
    display: block;
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .mp-withdrawal-procedure main .main-title {
    font-size: 2.4rem;
  }
  .mp-withdrawal-procedure main ul {
    margin-bottom: 24px;
  }
  .mp-withdrawal-procedure main .input-place .title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    font-size: 1.6rem;
  }
  .mp-withdrawal-procedure main .input-place .title span {
    position: relative;
    top: 8px;
  }
  .mp-withdrawal-procedure main .input-place .radio-area {
    width: 100%;
    margin-bottom: 20px;
  }
  .mp-withdrawal-procedure main .input-place .update-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mp-withdrawal-procedure main .input-place .update-btn p {
    margin-top: 8px;
    width: 100%;
    display: block;
    text-align: center;
  }
}

.mp-mail-setting {
  /*pc*/
  /*sp*/
}

@media screen and (min-width: 768px) {
  .mp-mail-setting .main-title {
    margin-bottom: 16px;
  }
  .mp-mail-setting .content {
    margin-bottom: 160px;
  }
  .mp-mail-setting .content .items-wrap {
    margin: 0 auto;
    max-width: 520px;
  }
  .mp-mail-setting .content .item {
    margin-bottom: 24px;
  }
  .mp-mail-setting .content .item .title {
    margin-bottom: 8px;
  }
  .mp-mail-setting .content .item .option p {
    margin-top: 8px;
  }
  .mp-mail-setting .content .update-btn {
    margin-top: 72px;
  }
  .mp-mail-setting .content .warn-word {
    margin-top: 24px;
    margin-bottom: 54px;
  }
}

@media screen and (max-width: 767px) {
  .mp-mail-setting .main-title {
    margin-top: 16px;
    margin-bottom: 8px;
    font-weight: 100;
    font-size: 2.6rem;
    text-align: left;
  }
  .mp-mail-setting .content .item {
    margin-bottom: 24px;
  }
  .mp-mail-setting .content .item .title {
    margin-bottom: 8px;
  }
  .mp-mail-setting .content .item .option p {
    margin-top: 8px;
  }
  .mp-mail-setting .content .warn-word {
    margin-top: 24px;
    margin-bottom: 40px;
  }
}

.mp-future-reservation {
  /*pc*/
}

@media screen and (min-width: 768px) {
  .mp-future-reservation main .mp-content-wrap {
    max-width: 600px;
    text-align: center;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.my-page-top {
  padding-top: 0;
}

.my-page-top .member-info .member-info-item:not(:last-child) {
  border-right: 2px solid #F5F5F5;
}

.my-page-top .member-info .member-info-item.left-item {
  padding-right: 32px;
  width: 31%;
}

.my-page-top .member-info .member-info-item.center-item {
  padding: 0 32px;
  width: 28%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
          align-content: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.my-page-top .member-info .member-info-item.right-item {
  padding-left: 32px;
  width: 41%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
          align-content: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.my-page-top .member-info .member-info-item div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-top .member-info .member-info-item .help-area {
  position: relative;
}

.my-page-top .member-info .member-info-item .help-area .help-icon-btn {
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: relative;
  cursor: pointer;
}

.my-page-top .member-info .member-info-item .help-model {
  display: none;
}

.my-page-top .member-info .member-info-item .help-info-model {
  padding: 16px 16px 24px 16px;
  background-color: #FFFFFF;
  border-radius: 8px;
  -webkit-box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 0;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  z-index: 1;
}

.my-page-top .member-info .member-info-item .help-info-model .member-status-img {
  width: 352px;
  height: auto;
}

.my-page-top .member-info .member-info-item .help-info-model .right-link-btn {
  width: 100%;
  display: block;
  text-align: right;
}

.my-page-top .member-info .member-info-item .help-info-model .member-status-content {
  margin-bottom: 16px;
  width: 100%;
  position: relative;
}

.my-page-top .member-info .member-info-item .help-info-model .member-status-content a {
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 1.4rem;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount {
  padding-top: 16px;
  width: 100%;
  height: 136px;
  border-top: 2px solid #F5F5F5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .info-item {
  width: 154px;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .info-item p {
  width: 100%;
  text-align: left;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .info-item p:nth-child(2) {
  border-bottom: 2px solid #C6C6C6;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .info-item p:not(:first-child) {
  text-align: right;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .status-up {
  width: 265px;
  height: 100%;
  background-color: #F5F5F5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .status-up p {
  width: 100%;
}

.my-page-top .member-info .member-info-item .help-info-model .info-model-amount .status-up p span {
  margin: 0 4px;
}

.my-page-top .member-info .member-info-item .au-pass span {
  color: #EB5505;
}

.my-page-top .member-info .member-info-item .au-pass .help-info-model {
  width: 332px;
}

.my-page-top .member-info .member-info-item .member-status {
  margin-bottom: 16px;
}

.my-page-top .member-info .member-info-item .member-status .help-area .help-info-model {
  padding: 24px;
  width: 974px;
}

.my-page-top .member-info .member-info-item .list-asterisk {
  display: block;
  text-align: left;
  width: 100%;
}

.my-page-top .member-info .member-info-item .list-asterisk p {
  margin-bottom: 0;
}

.my-page-top .member-info .member-info-item .status {
  padding: 4px 0;
  background-color: #F5F5F5;
  border-radius: 4px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-top .member-info .member-info-item .status .amount {
  margin: 0 4px;
}

.my-page-top .member-info .member-info-item .status .member-status {
  margin: 0 4px;
}

.my-page-top .member-info .member-info-item .au-pass-benefits a {
  /*color: $smartPassFontColor;*/
  color: #CD4C11;
}

.my-page-top .member-info .member-info-item .au-pass-benefits a::after {
  margin-left: 10px;
  margin-bottom: -1px;
  width: 8px;
  height: 12px;
  background: url(/stcontents/img/common/icon-text-link-orange.svg) no-repeat 0 center;
  content: "";
  display: inline-block;
}

.my-page-top .member-info .member-info-item .au-pass-benefits a:hover {
  text-decoration: underline;
}

.my-page-top .member-info .member-info-item .coupon {
  width: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-top .member-info .member-info-item .coupon-note {
  margin: 16px 0;
  /*margin: 22px 0; これは情報量が多い場合*/
  width: 100%;
}

.my-page-top .member-info .member-info-item .coupon-link {
  /*margin-top: 60px;  ※「あと00日で期限切れになります」文言がない場合はこの数値を当てはめる*/
  width: 100%;
  text-align: right;
}

.my-page-top .member-info .member-info-item .point {
  width: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-top .member-info .member-info-item .point-area {
  padding-right: 78px;
  width: 100%;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.my-page-top .member-info .member-info-item .point-area .word {
  min-width: 61px;
}

.my-page-top .member-info .member-info-item .relux-point {
  margin: 10px 0;
  width: 100%;
  min-height: 36px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-top .member-info .member-info-item .ponta-point {
  width: 100%;
  min-height: 36px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.my-page-top .member-info .member-info-item .usage-history {
  margin-left: 8px;
}

.my-page-top .member-info .member-info-item .usage-history.modal-link-gray {
  pointer-events: none;
}

.my-page-top .member-info .member-info-item .usage-history-sp {
  width: 100%;
  text-align: right;
}

.my-page-top .member-info .coupon-block {
  position: relative;
}

.my-page-top .member-info .coupon-block .coupon-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 24px 40px;
  border: 2px solid #F5F5F5;
}

.my-page-top .member-info .coupon-block .coupon-inner .border {
  font-weight: normal;
  color: #C6C6C6;
}

.my-page-top .member-info .coupon-block .coupon-inner > div {
  width: 33%;
}

.my-page-top .member-info .coupon-block .coupon-inner .icon-question {
  margin: 0;
  vertical-align: text-bottom;
}

.my-page-top .member-info .coupon-block .hotel-grade {
  background: #fff;
  padding: 24px 40px 32px;
  position: absolute;
  height: auto;
  left: 50%;
  top: inherit;
  bottom: -24px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border: 1px solid #F5F5F5;
  -webkit-box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  z-index: 2;
}

.my-page-top .member-info .coupon-block .hotel-grade > div p:last-of-type {
  margin-bottom: 0;
}

.my-page-top .member-info .coupon-block.no-ponta .hotel-grade {
  bottom: -46px;
}

.my-page-top .member-info .coupon-block .point-count + .point-count {
  margin-top: 8px;
}

@media (max-width: 1023px) {
  .my-page-top .member-info .coupon-block .coupon-inner > div:nth-child(2) .border:before {
    content: "";
    display: block;
  }
}

@media (max-width: 767px) {
  .my-page-top .member-info .coupon-block .coupon-inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    border: none;
    padding: 0;
  }
  .my-page-top .member-info .coupon-block .coupon-inner > div {
    width: 60%;
  }
  .my-page-top .member-info .coupon-block .coupon-inner > div:first-child {
    width: 40%;
    margin-bottom: 8px;
    padding-right: 24px;
  }
  .my-page-top .member-info .coupon-block .coupon-inner > div:first-child .timelimit {
    width: 40%;
    padding-right: 16px;
    position: absolute;
    bottom: 4px;
    left: 0;
    font-size: 1rem;
  }
  .my-page-top .member-info .coupon-block .coupon-inner > div:nth-child(2) {
    padding-left: 24px;
    border-left: 1px solid #F5F5F5;
  }
  .my-page-top .member-info .coupon-block .coupon-inner > div:last-child {
    margin-left: auto;
    padding-left: 24px;
    border-left: 1px solid #F5F5F5;
  }
  .my-page-top .member-info .coupon-block .coupon-inner .border {
    display: none;
  }
  .my-page-top .member-info .coupon-block .coupon-inner .color-gray-2 {
    font-weight: normal;
    color: inherit;
  }
  .my-page-top .member-info .coupon-block .coupon-inner .count {
    float: right;
    text-align: right;
  }
  .my-page-top .member-info .coupon-block .text-link-gray {
    padding-right: 12px;
    font-size: 1.2rem;
  }
  .my-page-top .member-info .coupon-block .text-link-gray:after {
    width: 7px;
    background-size: contain;
    top: 5px;
  }
  .my-page-top .member-info .coupon-block .hotel-grade {
    padding: 40px 24px 24px;
    bottom: -32px;
  }
  .my-page-top .member-info .coupon-block .hotel-grade:after {
    content: "×";
    position: absolute;
    top: 6px;
    right: 14px;
    font-size: 18px;
  }
  .my-page-top .member-info .coupon-block .hotel-grade div p:first-of-type {
    font-size: 1.4rem;
  }
  .my-page-top .member-info .coupon-block .hotel-grade div p:last-of-type {
    font-size: 1rem;
  }
  .my-page-top .member-info {
    margin-top: 16px;
  }
}

@media (max-width: 360px) {
  .my-page-top .member-info .coupon-block .hotel-grade {
    bottom: -78px;
  }
}

.my-page-top .member-info-au .member-info-item .coupon-note {
  margin: 22px 0;
}

.my-page-top .member-info-au .member-info-item .relux-point {
  margin: 16px 0;
}

.my-page-top .sub-title {
  margin-top: 70px;
  margin-bottom: 16px;
}

.my-page-top .sub-title.mt-40 {
  margin-top: 40px;
}

.my-page-top .hotel-card-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.my-page-top .hotel-card-area .hotel-card-item {
  margin-right: 30px;
  width: calc(100% / 3);
  height: 200px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  position: relative;
}

.my-page-top .hotel-card-area .hotel-card-item:nth-child(3n) {
  margin-right: 0;
}

.my-page-top .hotel-card-area .hotel-card-item .card-item {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 8px;
  cursor: pointer;
}

.my-page-top .hotel-card-area .hotel-card-item .card-item::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  position: absolute;
  top: 0;
  left: 0;
}

.my-page-top .hotel-card-area .hotel-card-item .card-item:hover {
  opacity: 0.7;
}

.my-page-top .hotel-card-area .hotel-card-item .card-item-content {
  position: absolute;
  bottom: 18px;
  left: 16px;
}

.my-page-top .hotel-card-area .hotel-card-item .card-item-content .icon-grade {
  margin-left: 0;
  width: 20px;
  height: 20px;
  letter-spacing: 0;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
          filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.6));
}

.my-page-top .hotel-card-area .hotel-card-item .card-item-content p {
  margin: 0;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
}

.my-page-top .hotel-card-area .hotel-card-item .icon-favorite, .my-page-top .hotel-card-area .hotel-card-item .icon-favorite-on {
  position: absolute;
  top: 21px;
  right: 21px;
  z-index: 1;
}

.my-page-top .date-none {
  padding: 23px 0 26px;
  background-color: #F5F5F5;
  text-align: center;
}

.my-page-top .to-top-btn {
  margin-top: 84px;
  margin-bottom: 80px;
  text-align: center;
}

.my-page-top .banner-smartpass {
  margin: auto;
}

.my-page-top .point-use-note li {
  margin-left: 1.5rem;
  text-indent: -1.5rem;
}

.point-modal .content-body.scroll-on,
.relux-point-modal .content-body.scroll-on {
  padding-right: 16px;
  overflow-y: auto;
}

.point-modal .content-body.scroll-on::-webkit-scrollbar,
.relux-point-modal .content-body.scroll-on::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.point-modal .content-body.scroll-on::-webkit-scrollbar-thumb,
.relux-point-modal .content-body.scroll-on::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.point-modal .content-body.scroll-on::-webkit-scrollbar-track,
.relux-point-modal .content-body.scroll-on::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.point-modal .content-item,
.relux-point-modal .content-item {
  padding: 16px 0;
  border-bottom: 1px solid #C6C6C6;
  position: relative;
}

.point-modal .content-item .date,
.relux-point-modal .content-item .date {
  margin-bottom: 4px;
}

.point-modal .content-item .title,
.relux-point-modal .content-item .title {
  margin-bottom: 4px;
}

.point-modal .content-item .info,
.relux-point-modal .content-item .info {
  margin-bottom: 0;
}

.point-modal .content-item .amount,
.relux-point-modal .content-item .amount {
  font-weight: bold;
  position: absolute;
  top: 41px;
  right: 0;
}

.point-modal .content-item .amount-minus,
.relux-point-modal .content-item .amount-minus {
  color: #FF503E;
}

.point-modal .content-item.point-get,
.relux-point-modal .content-item.point-get {
  padding-bottom: 24px;
}

.point-modal .content-item-ponta,
.relux-point-modal .content-item-ponta {
  padding: 24px;
  position: relative;
  margin-bottom: 8px;
  background-color: #f5f5f5;
}

.point-modal .content-item-ponta .amount,
.relux-point-modal .content-item-ponta .amount {
  font-weight: bold;
  position: absolute;
  top: 24px;
  right: 24px;
}

.point-modal .point-expected .amount,
.relux-point-modal .point-expected .amount {
  color: #757575;
}

.point-modal .point-use .amount,
.relux-point-modal .point-use .amount {
  color: #FF503E;
}

.point-modal .point-get .amount,
.relux-point-modal .point-get .amount {
  color: #333;
}

.point-modal .title-area,
.relux-point-modal .title-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}

.point-modal .title-area .common-modal-title,
.relux-point-modal .title-area .common-modal-title {
  margin-bottom: 0;
}

.point-modal .help-area,
.relux-point-modal .help-area {
  position: relative;
}

.point-modal .help-area .help-icon-btn,
.relux-point-modal .help-area .help-icon-btn {
  margin-left: 8px;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: relative;
  cursor: pointer;
}

.point-modal .help-model,
.relux-point-modal .help-model {
  display: none;
}

.point-modal .help-info-model,
.relux-point-modal .help-info-model {
  padding: 16px 16px 24px 16px;
  width: 452px;
  background-color: #FFFFFF;
  border-radius: 8px;
  -webkit-box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 34px;
  left: 0;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  z-index: 1;
}

.point-modal .help-info-model .right-link-btn,
.relux-point-modal .help-info-model .right-link-btn {
  width: 100%;
  display: block;
  text-align: right;
}

.point-modal .content-item-details,
.relux-point-modal .content-item-details {
  padding: 16px 0;
}

.point-modal .content-item-details .point-detail,
.relux-point-modal .content-item-details .point-detail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.point-modal .content-item-details .point-detail .amount,
.relux-point-modal .content-item-details .point-detail .amount {
  font-size: 1.6rem;
  color: #333;
  position: static;
}

.point-modal .content-item-details .point-detail table,
.relux-point-modal .content-item-details .point-detail table {
  color: #757575;
}

.point-modal .content-item-details .point-detail table th, .point-modal .content-item-details .point-detail table td,
.relux-point-modal .content-item-details .point-detail table th,
.relux-point-modal .content-item-details .point-detail table td {
  font-size: 1.4rem;
}

.point-modal .content-item-details .point-detail table td,
.relux-point-modal .content-item-details .point-detail table td {
  padding-left: 8px;
  text-align: right;
}

.point-modal .content-item-details .point-detail table th,
.relux-point-modal .content-item-details .point-detail table th {
  padding: 0 8px;
  font-size: 1.2rem;
}

.point-modal .common-modal .modal-container,
.relux-point-modal .common-modal .modal-container {
  padding-right: 16px;
}

.point-modal .common-modal .modal-container .content-body,
.relux-point-modal .common-modal .modal-container .content-body {
  margin-top: 0;
  height: 95%;
}

.point-modal .modal-container {
  padding: 24px;
}

.point-modal .modal-container .content-body {
  height: 89%;
}

.point-modal .content-body.scroll-on {
  padding: 0 40px;
  overflow-y: auto;
}

.book-today-modal {
  max-width: 800px;
}

.book-today-modal .modal-container {
  margin: 0 auto;
  padding: 0;
  max-height: 640px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.book-today-modal .bg-area {
  width: 100%;
  height: 47%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.book-today-modal .bg-area::before {
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fff0), to(#000000));
  background-image: -webkit-linear-gradient(#fff0, #000000);
  background-image: linear-gradient(#fff0, #000000);
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.book-today-modal .bg-area h1 {
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
  z-index: 1;
}

.book-today-modal .content-body {
  margin: 16px !important;
  height: calc(53% - 32px) !important;
  overflow: auto !important;
}

.book-today-modal .content-body::-webkit-scrollbar {
  width: 4px;
  height: 100%;
}

.book-today-modal .content-body::-webkit-scrollbar-thumb {
  background-color: transparent;
  background-color: #C6C6C6;
}

.book-today-modal .content-body::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}

.book-today-modal .content-body > div {
  padding: 8px 24px 0 24px;
}

.book-today-modal .content-body .hotel-name-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.book-today-modal .content-body .hotel-name-area .grade-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.book-today-modal .content-body .hotel-name-area a {
  margin-left: 10px;
  color: #333333;
  text-decoration: underline;
  cursor: pointer;
}

.book-today-modal .content-body .hotel-name-area a:hover {
  text-decoration: none;
}

.book-today-modal .content-body .info-item {
  margin-top: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.book-today-modal .content-body .info-item .left-area {
  min-width: 126px;
  position: relative;
}

.book-today-modal .content-body .info-item .left-area::after {
  width: 2px;
  height: 70%;
  background-color: #CCCCCC;
  position: absolute;
  top: 15%;
  right: 0;
  content: "";
}

.book-today-modal .content-body .info-item .right-area {
  margin-left: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.book-today-modal .content-body .info-item .right-area a {
  text-decoration: underline;
}

.book-today-modal .content-body .info-item .right-area p {
  margin-bottom: 0;
}

.book-today-modal .content-body .info-item .right-area p:first-child {
  margin-right: 24px;
}

.book-today-modal .content-body .my-page-top-btn-area {
  margin-top: 24px;
  text-align: center;
}

.book-today-modal .content-body .my-page-top-btn-area a {
  height: 40px;
}

@media screen and (min-width: 768px) {
  .my-page-top .member-info .member-info-item .help-info-model {
    top: 34px;
  }
  .relux-point-modal .modal-container,
  .point-modal .modal-container {
    padding-right: 16px;
  }
  .relux-point-modal .modal-container .content-body,
  .point-modal .modal-container .content-body {
    height: 95%;
  }
  .relux-point-modal .content-item-details,
  .point-modal .content-item-details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .relux-point-modal .content-item-details .point-detail,
  .point-modal .content-item-details .point-detail {
    display: block;
    padding-top: 30px;
  }
  .relux-point-modal .content-item-details .point-detail table th,
  .point-modal .content-item-details .point-detail table th {
    font-size: 1.4rem;
  }
  .relux-point-modal .content-item-details .point-detail table td,
  .point-modal .content-item-details .point-detail table td {
    font-size: 1.6rem;
  }
  .relux-point-modal .content-item-details .point-detail .amount,
  .point-modal .content-item-details .point-detail .amount {
    font-size: 2.0rem;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .my-page-top .modal-on {
    -webkit-filter: blur(4px);
            filter: blur(4px);
  }
  .my-page-top .user-name {
    margin-top: 8px;
    margin-bottom: 8px;
  }
  .my-page-top .member-info {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .my-page-top .member-info .member-info-item {
    padding: 0 !important;
    width: 100% !important;
    border-right: none !important;
    border-bottom: 4px solid #F5F5F5;
  }
  .my-page-top .member-info .member-info-item div.point-area {
    padding-right: 0;
    margin-bottom: 8px;
  }
  .my-page-top .member-info .member-info-item div.point-area.click-disable {
    display: block;
  }
  .my-page-top .member-info .au-pass {
    margin-bottom: 16px;
  }
  .my-page-top .member-info .au-pass span {
    /*font-size: $fontSize_12;*/
    font-size: 1.4rem;
  }
  .my-page-top .member-info .user-status {
    font-size: 1.4rem;
  }
  .my-page-top .member-info .list-asterisk {
    font-size: 1rem;
  }
  .my-page-top .member-info .status {
    margin-bottom: 8px;
    padding-left: 8px !important;
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .my-page-top .member-info .status .amount {
    font-size: 1.6rem;
  }
  .my-page-top .member-info .status .help-info-model {
    min-height: 340px;
  }
  .my-page-top .member-info .au-pass-benefits {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 16px;
  }
  .my-page-top .member-info .coupon {
    margin-top: 12px;
    margin-bottom: 8px;
  }
  .my-page-top .member-info .coupon .word {
    font-size: 1.6rem;
  }
  .my-page-top .member-info .coupon .num {
    font-size: 2rem;
  }
  .my-page-top .member-info .coupon-note {
    margin-top: 0 !important;
    margin-bottom: 8px;
    text-align: left;
  }
  .my-page-top .member-info .coupon-link {
    margin-top: 8px !important;
    margin-bottom: 16px;
  }
  .my-page-top .member-info .point {
    margin: 8px 0;
  }
  .my-page-top .member-info .point > span {
    font-size: 1.6rem;
  }
  .my-page-top .member-info .point .point-amount > span:nth-child(1) {
    font-size: 1.2rem;
  }
  .my-page-top .member-info .point .point-amount > span:nth-child(2) {
    font-size: 2rem;
  }
  .my-page-top .member-info .point .available-points {
    font-size: 2rem;
  }
  .my-page-top .member-info .point .point-amount.modal-on, .my-page-top .member-info .point .relux-point-amount.modal-on {
    -webkit-filter: unset;
            filter: unset;
  }
  .my-page-top .member-info .point .point-amount.modal-on::after, .my-page-top .member-info .point .relux-point-amount.modal-on::after {
    -webkit-filter: blur(4px);
            filter: blur(4px);
  }
  .my-page-top .member-info .point.active .point-amount::after, .my-page-top .member-info .point.active .relux-point-amount::after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .my-page-top .member-info .point.click-disable {
    pointer-events: none;
  }
  .my-page-top .member-info .point.click-disable .point-amount::after {
    display: none;
  }
  .my-page-top .member-info .point-area .relux-point {
    margin-top: 12px;
  }
  .my-page-top .member-info .point-area .relux-point, .my-page-top .member-info .point-area .ponta-point {
    min-height: 24px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .my-page-top .member-info .point-area .relux-point > div > span, .my-page-top .member-info .point-area .ponta-point > div > span {
    min-width: 54px;
  }
  .my-page-top .member-info .point-area .point-right {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: right;
  }
  .my-page-top .member-info .point-area .point-right a {
    width: 100%;
    display: block;
  }
  .my-page-top .member-info .point-area .point-num {
    margin-right: 8px;
  }
  .my-page-top .member-info .point-area .point-date {
    font-size: 1.4rem;
  }
  .my-page-top .member-info .point-area.click-disable {
    border-top: none;
  }
  .my-page-top .member-info .help-area .help-icon-btn {
    width: 17px !important;
    height: 17px !important;
    pointer-events: auto;
  }
  .my-page-top .member-info .help-model {
    background-color: rgba(198, 198, 198, 0.7);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 50;
  }
  .my-page-top .member-info .help-info-model {
    margin: 0 auto;
    padding: 46px 16px 16px 16px !important;
    width: 100% !important;
    height: 100%;
    border-radius: 0  !important;
    overflow-y: auto;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
  }
  .my-page-top .member-info .help-info-model .help-info-model-close {
    width: 30px;
    height: 30px;
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .my-page-top .member-info .help-info-model .member-status-img {
    width: 274px !important;
  }
  .my-page-top .member-info .help-info-model .member-status-content {
    font-size: 1.4rem;
  }
  .my-page-top .member-info .help-info-model .member-status-content a {
    margin-top: 8px;
    width: 100%;
    position: relative !important;
    text-align: right;
  }
  .my-page-top .member-info .help-info-model .info-model-amount {
    min-height: 300px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-align-content: flex-start;
        -ms-flex-line-pack: start;
            align-content: flex-start;
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .info-item {
    width: 100% !important;
    height: auto !important;
    -webkit-align-content: flex-start;
        -ms-flex-line-pack: start;
            align-content: flex-start;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .info-item p:nth-child(1) {
    margin-bottom: 0;
    width: 50%;
    color: #000000;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .info-item p:nth-child(2) {
    margin-bottom: 0;
    width: 50%;
    border-bottom: none !important;
    color: #000000;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .info-item p:nth-child(3) {
    margin-bottom: 0;
    font-size: 1.2rem;
    text-align: left !important;
  }
  .my-page-top .member-info .help-info-model .info-model-amount img {
    width: 24px;
    height: 24px;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .mark {
    margin: 15px 0 5px;
    width: 100%;
    height: 2px;
    background-color: #C6C6C6;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .status-up {
    margin-top: 16px;
    padding: 10px 0;
    width: 100% !important;
    height: auto !important;
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
    letter-spacing: 0;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .status-up p {
    margin-bottom: 0;
    width: auto !important;
    color: #000000;
    font-size: 1.2rem;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .status-up p > span {
    font-size: 1.6rem;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .status-up img {
    width: 70px;
    height: 24px;
  }
  .my-page-top .member-info .help-info-model .info-model-amount .status-up > span {
    font-size: 1.2rem;
  }
  .my-page-top .hotel-card-area {
    margin: -16px;
    padding: 16px;
    overflow-x: auto;
  }
  .my-page-top .hotel-card-area .hotel-card-item {
    margin-right: 0;
    width: 290px;
    min-width: 290px;
    height: 140px;
  }
  .my-page-top .hotel-card-area .hotel-card-item:not(:last-child) {
    margin-right: 8px;
  }
  .my-page-top .hotel-card-area .hotel-card-item:last-child {
    width: 140px;
    min-width: 140px;
    background-color: #F5F5F5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .my-page-top .hotel-card-area .hotel-card-item:last-child::before {
    content: none;
  }
  .my-page-top .hotel-card-area .hotel-card-item .card-item-content {
    bottom: 11px;
    left: 8px;
  }
  .my-page-top .hotel-card-area .hotel-card-item .card-item-content p:last-child {
    width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .my-page-top .hotel-card-area .hotel-card-item .card-item-content .icon-grade {
    width: 12px;
    height: 12px;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
            filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
  }
  .my-page-top .hotel-card-area .hotel-card-item .icon-favorite, .my-page-top .hotel-card-area .hotel-card-item .icon-favorite-on {
    top: 11px;
    right: 11px;
  }
  .my-page-top .date-none {
    font-size: 1.6rem;
  }
  .my-page-top .hotel-item {
    margin-left: 0;
    margin-right: 0;
    border-left: none;
    border-top: none;
    border-right: none;
    border-bottom: 2px solid #F5F5F5;
  }
  .my-page-top .banner-smartpass {
    width: 100%;
  }
  .book-today-modal {
    top: unset;
    bottom: unset;
  }
  .book-today-modal .modal-container {
    max-height: 540px;
    border-radius: 15px 15px 0 0;
    position: fixed;
    bottom: -541px;
    left: 0;
    top: auto;
    -webkit-transform: none;
            transform: none;
    overflow: hidden;
    -webkit-animation: BookTodaySlideUp .5s ease-in-out forwards;
            animation: BookTodaySlideUp .5s ease-in-out forwards;
  }
  @-webkit-keyframes BookTodaySlideUp {
    0% {
      opacity: 0;
      -webkit-transform: translateY(-1px);
              transform: translateY(-1px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateY(-540px);
              transform: translateY(-540px);
    }
  }
  @keyframes BookTodaySlideUp {
    0% {
      opacity: 0;
      -webkit-transform: translateY(-1px);
              transform: translateY(-1px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateY(-540px);
              transform: translateY(-540px);
    }
  }
  .book-today-modal .modal-container.book-today-slide-down {
    -webkit-animation: BookTodaySlideDown .5s ease-in-out forwards;
            animation: BookTodaySlideDown .5s ease-in-out forwards;
  }
  @-webkit-keyframes BookTodaySlideDown {
    0% {
      opacity: 1;
      -webkit-transform: translateY(-540px);
              transform: translateY(-540px);
    }
    100% {
      opacity: 0;
      -webkit-transform: translateY(-1px);
              transform: translateY(-1px);
    }
  }
  @keyframes BookTodaySlideDown {
    0% {
      opacity: 1;
      -webkit-transform: translateY(-540px);
              transform: translateY(-540px);
    }
    100% {
      opacity: 0;
      -webkit-transform: translateY(-1px);
              transform: translateY(-1px);
    }
  }
  .book-today-modal .modal-container .bg-area {
    height: 200px;
    background-image: url(/stcontents/img/my-page/bg-img.png) !important;
  }
  .book-today-modal .modal-container .bg-area .js-modal-close {
    width: 30px;
    height: 30px;
    top: 16px;
    right: 16px;
  }
  .book-today-modal .modal-container .bg-area h1 {
    font-size: 2rem;
  }
  .book-today-modal .modal-container .content-body {
    margin: 0 !important;
    padding: 16px !important;
    height: 100% !important;
  }
  .book-today-modal .modal-container .content-body > div {
    padding: 0;
  }
  .book-today-modal .modal-container .content-body .hotel-name-area {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .book-today-modal .modal-container .content-body .hotel-name-area .grade-area {
    width: 100%;
  }
  .book-today-modal .modal-container .content-body .hotel-name-area a {
    margin-left: 0;
  }
  .book-today-modal .modal-container .content-body .info-item .left-area {
    min-width: 86px;
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
  }
  .book-today-modal .modal-container .content-body .info-item .left-area::after {
    display: none;
  }
  .book-today-modal .modal-container .content-body .info-item .right-area {
    margin-left: 8px;
  }
  .book-today-modal .modal-container .content-body .info-item .right-area p:first-child {
    width: 100%;
  }
  .book-today-modal .modal-container .content-body .info-item .right-area.tel-num {
    color: #757575;
    text-decoration: underline;
  }
  .book-today-modal .modal-container .my-page-top-btn-area {
    margin-top: 16px;
    text-align: right;
  }
  .relux-point-modal .help-area .help-icon-btn {
    margin-left: 4px;
    width: 17px !important;
    height: 17px !important;
    pointer-events: auto;
  }
  .relux-point-modal .help-model {
    background-color: rgba(198, 198, 198, 0.7);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 50;
  }
  .relux-point-modal .help-info-model {
    margin: 0 auto;
    padding: 46px 16px 16px 16px !important;
    width: 344px !important;
    position: fixed !important;
    top: 30% !important;
    left: 0 !important;
    right: 0 !important;
  }
  .relux-point-modal .help-info-model .help-info-model-close {
    width: 30px;
    height: 30px;
    background-image: url(/stcontents/img/common/icon-close-4.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .relux-point-modal .modal-container {
    padding: 12px 8px 0 24px;
  }
  .relux-point-modal .title-area {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1.8;
  }
  .point-modal .modal-container {
    padding: 48px 0 16px 0;
  }
  .point-modal .content-body.scroll-on {
    padding: 0 16px;
  }
  .point-modal .content-item-ponta {
    padding: 8px;
  }
  .point-modal .content-item-ponta .title {
    margin-bottom: 4px;
  }
  .point-modal .content-item-ponta .amount {
    top: 8px;
    right: 8px;
  }
}

@media (max-width: 500px) {
  .relux-point-modal .common-modal .modal-container {
    padding: 12px 4px 24px 12px;
  }
}

@media (max-width: 340px) {
  .my-page-top .member-info .member-info-item .status {
    letter-spacing: 0;
    /*SE対策*/
  }
}

.my-page-top .name-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.my-page-top .user-name {
  margin-right: 16px;
  padding-right: 16px;
  border-right: 1px solid #F5F5F5;
  line-height: 1.5;
}

.my-page-top .member-status-top img {
  vertical-align: bottom;
}

.my-page-top .member-status-top .text-link {
  display: inline-block;
  margin: 0px 0 -2px 10px;
}

.my-page-top .member-status-top .smartpass-wrap .smartpass {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.my-page-top .member-status-top .smartpass-wrap .smartpass p {
  color: #CD4C11;
  margin-bottom: 0;
  font-weight: bold;
}

.my-page-top .member-status-top .smartpass-wrap .smartpass .icon-question {
  margin: 0 4px;
}

.my-page-top .member-status-top .smartpass-wrap .detail-smartpass.js-tips-content {
  background-color: #fff;
  position: relative;
  max-width: 700px;
  border-radius: 8px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
  padding: 16px;
  z-index: 3;
  text-align: center;
  width: 420px;
  position: absolute;
  top: inherit;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border: 1px solid #f5f5f5;
}

.my-page-top .member-status-top .smartpass-wrap .detail-smartpass.js-tips-content .text-link {
  margin-bottom: 0;
}

.my-page-top .status-block {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 16px 0;
  padding: 24px 40px;
  border: 1px solid #F5F5F5;
}

.my-page-top .status-block .apply-date {
  background: #f3f8fd;
  text-align: center;
  margin-top: 10px;
  padding: 3px;
}

.my-page-top .status-bar {
  background: #F5F5F5;
  width: 448px;
  height: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  line-height: 1.2;
  font-size: 1.2rem;
  color: #757575;
}

.my-page-top .status-bar > div {
  width: 25%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
}

.my-page-top .status-bar > div + div {
  border-left: 2px dashed #C6C6C6;
}

.my-page-top .status-bar > div p:first-child {
  width: 100%;
  margin-bottom: -4px;
  font-weight: bold;
}

.my-page-top .status-bar .target-num {
  margin-bottom: 0;
}

.my-page-top .status-bar.next-green .green {
  background: -webkit-linear-gradient(275deg, #81A754 50%, #688C3B 51%);
  background: linear-gradient(175deg, #81A754 50%, #688C3B 51%);
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 2px 0px 0px 2px;
  border-left: none;
  color: #fff;
}

.my-page-top .status-bar.next-green .green .target-num {
  display: none;
}

.my-page-top .status-bar.next-green .green p:first-child {
  margin-bottom: 0;
}

.my-page-top .status-bar.next-gold .green {
  display: none;
}

.my-page-top .status-bar.next-gold .gold {
  background: -webkit-linear-gradient(273deg, #D9B255 50%, #BA992E 51%);
  background: linear-gradient(177deg, #D9B255 50%, #BA992E 51%);
  width: 50%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 2px 0px 0px 2px;
  border-left: none;
  color: #fff;
}

.my-page-top .status-bar.next-gold .gold .target-num {
  display: none;
}

.my-page-top .status-bar.next-gold .gold p:first-child {
  margin-bottom: 0;
}

.my-page-top .status-bar.next-platinum .green,
.my-page-top .status-bar.next-platinum .gold {
  display: none;
}

.my-page-top .status-bar.next-platinum .platinum {
  background: -webkit-linear-gradient(272deg, #A6A9AA 50%, #757575 51%);
  background: linear-gradient(178deg, #A6A9AA 50%, #757575 51%);
  width: 75%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 2px 0px 0px 2px;
  border-left: none;
  color: #fff;
}

.my-page-top .status-bar.next-platinum .platinum .target-num {
  display: none;
}

.my-page-top .status-bar.next-platinum .platinum p:first-child {
  margin-bottom: 0;
}

.my-page-top .status-bar.next-diamond .green,
.my-page-top .status-bar.next-diamond .gold,
.my-page-top .status-bar.next-diamond .platinum {
  display: none;
}

.my-page-top .status-bar.next-diamond .diamond {
  background: -webkit-linear-gradient(272deg, #150F74 50%, #05023F 51%);
  background: linear-gradient(178deg, #150F74 50%, #05023F 51%);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 2px 2px;
  border-left: none;
  color: #fff;
}

.my-page-top .status-bar.next-diamond .diamond .target-num {
  display: none;
}

.my-page-top .status-bar.next-diamond .diamond p:first-child {
  margin-bottom: 0;
}

.my-page-top .status-bar.next-diamond .diamond:after {
  display: none;
}

.my-page-top .status-bar .active:after {
  content: "";
  display: block;
  height: 0;
  width: 4px;
  position: absolute;
  top: 0;
  right: -14px;
  border: 10px solid transparent;
  border-top: 20px solid #F5F5F5;
  border-bottom: 20px solid #F5F5F5;
  z-index: 2;
}

.my-page-top .status-up {
  width: 270px;
  float: right;
  margin-top: 12px;
  padding: 4px 8px;
  border: 1px solid #ccc;
  border-radius: 20px;
  text-align: center;
  font-weight: 400;
  color: #757575;
}

.my-page-top .status-up.gold {
  border: 1px solid #D9B255;
  color: #BA992E;
}

.my-page-top .status-up.diamond {
  border: 1px solid #150F74;
  color: #150F74;
}

.my-page-top .status-end {
  margin-top: 12px;
  padding: 4px 8px;
  text-align: right;
}

.my-page-top .count-box {
  width: 360px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.my-page-top .count-box > div {
  position: relative;
  margin-right: 40px;
  letter-spacing: 0;
}

.my-page-top .count-box > div:first-child:after {
  content: "＋";
  position: absolute;
  top: 50%;
  right: -37px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 20px;
  font-weight: 900;
  color: #BFBFBF;
}

.my-page-top .count-box > div:nth-child(2):after {
  content: "＝";
  position: absolute;
  top: 50%;
  right: -37px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 20px;
  font-weight: 900;
  color: #BFBFBF;
}

.my-page-top .count-box > div:last-child {
  margin-right: 0;
}

.my-page-top .count-box > div .count {
  margin-bottom: 0;
}

.my-page-top .count-box > div p:first-of-type {
  margin-bottom: 0;
}

.my-page-top .count-box > div sup {
  line-height: 0;
}

.my-page-top .link-detail {
  margin-top: 8px;
  text-align: right;
}

.my-page-top .link-detail a {
  text-decoration: underline;
  font-size: 1.4rem;
}

.my-page-top .link-detail a:hover {
  text-decoration: none;
}

.my-page-top .link-detail a:after {
  content: none;
}

.my-page-top .notice {
  width: 100% !important;
  margin-top: 10px;
  color: #757575;
  font-size: 1rem;
}

.my-page-top .notice sup {
  line-height: 0;
  font-size: 10px;
}

@media screen and (max-width: 1200px) {
  .my-page-top .status-block {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .my-page-top .status-block > div {
    width: 160px;
  }
  .my-page-top .status-block > div:nth-child(2) {
    width: 448px;
    margin-left: 30px;
  }
  .my-page-top .status-block > div:nth-child(3) {
    width: 100%;
  }
  .my-page-top .status-block .status-bar {
    width: 100%;
  }
  .my-page-top .count-box {
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .my-page-top .name-block {
    display: block;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 4px solid #F5F5F5;
  }
  .my-page-top .name-block .user-name {
    font-weight: bold;
    margin-right: 0;
    padding-right: 0;
    border-right: none;
  }
  .my-page-top .name-block .member-id {
    margin-bottom: 10px;
  }
  .my-page-top .member-status-top .smartpass-wrap .smartpass {
    margin-top: 8px;
    font-size: 14px;
  }
  .my-page-top .member-status-top .smartpass-wrap .detail-smartpass.js-tips-content {
    width: calc(100% - 32px);
    margin: 0 16px;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .my-page-top .member-status-top .smartpass-wrap .detail-smartpass.js-tips-content:after {
    content: "×";
    position: absolute;
    top: 6px;
    right: 14px;
    font-size: 18px;
  }
  .my-page-top .member-status-top .text-link {
    display: block;
    margin: 16px 0;
    text-align: right;
  }
  .my-page-top .status-block {
    border: none;
    margin-bottom: 8px;
    padding: 0;
  }
  .my-page-top .status-block > div {
    width: 100%;
  }
  .my-page-top .status-block > div:first-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .my-page-top .status-block > div:first-child p {
    padding: 2px 4px;
    margin-bottom: 10px;
  }
  .my-page-top .status-block > div:first-child .font-small {
    font-size: 1rem;
  }
  .my-page-top .status-block > div:nth-child(2) {
    width: 100%;
    margin-left: 0;
  }
  .my-page-top .status-block .apply-date {
    margin: 0;
    padding: 2px 4px;
  }
  .my-page-top .status-up {
    width: auto;
    float: left;
  }
  .my-page-top .status-bar > div {
    width: 27%;
    font-size: 1rem;
  }
  .my-page-top .status-bar.next-gold .gold {
    width: 46%;
  }
  .my-page-top .count-box {
    width: 100%;
    margin: 16px 0;
    padding-bottom: 16px;
    border-bottom: 2px solid #F5F5F5;
  }
  .my-page-top .count-box > div {
    margin-right: 35px;
  }
  .my-page-top .count-box > div:first-child:after {
    right: -32px;
  }
  .my-page-top .count-box p:first-of-type {
    margin-bottom: 0;
  }
  .my-page-top .count-box .count {
    margin-bottom: 0;
  }
  .my-page-top .notice {
    margin-top: 0;
    padding-bottom: 24px;
    border-bottom: 4px solid #F5F5F5;
  }
  .my-page-top .notice .font-large {
    margin-bottom: 0;
    font-size: 1.2rem;
    color: #757575;
  }
  .my-page-top .notice .no-type {
    font-size: 1rem;
  }
}

@media screen and (max-width: 360px) {
  .my-page-top .count-box > div {
    margin-right: 25px;
  }
  .my-page-top .count-box > div:first-child:after {
    right: -22px;
  }
  .my-page-top .count-box > div:nth-child(2):after {
    right: -27px;
  }
  .my-page-top .count-box p {
    font-size: 1.1rem;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.review-complete-content .title {
  width: 100%;
}

.review-complete-content .title h1 {
  margin: 0;
  text-align: center;
}

.review-complete-content .content {
  text-align: center;
}

.review-complete-content .input-submit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*pc*/
@media screen and (min-width: 768px) {
  .review-complete-content .title {
    margin-bottom: 16px;
  }
  .review-complete-content .content {
    margin-bottom: 40px;
  }
  .review-complete-content .input-submit {
    margin-bottom: 80px;
  }
  .review-complete-content .input-submit a {
    width: 300px;
  }
  .review-complete-content .hotel-image {
    margin-bottom: 160px;
    width: 100%;
    height: 521px;
    border-radius: 4px;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .review-complete-content .title {
    margin-top: 24px;
  }
  .review-complete-content .content {
    margin-top: 24px;
  }
  .review-complete-content .input-submit {
    margin-top: 24px;
    margin-bottom: 80px;
  }
  .review-complete-content .input-submit a {
    width: 100%;
    text-align: center;
  }
  .review-complete-content .hotel-image {
    width: 100%;
    height: auto;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.review-confirm-content .title-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.review-confirm-content .data-body {
  width: 100%;
  max-width: 904px;
}

.review-confirm-content .title-box {
  margin: 24px 0;
}

.review-confirm-content .title h1 {
  margin: 0;
}

.review-confirm-content ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

.review-confirm-content .inputs-submit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.review-confirm-content .warning a {
  text-decoration: underline;
}

.review-confirm-content .warning a:hover {
  text-decoration: none;
}

.review-confirm-content .review-initial dt {
  position: relative;
}

.review-confirm-content .review-initial dt:after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 16px;
  background-color: #C6C6C6;
  position: absolute;
  top: 7px;
  right: -12px;
}

/*pc*/
@media screen and (min-width: 768px) {
  .review-confirm-content .satisfaction {
    margin-top: 8px;
  }
  .review-confirm-content .satisfaction p.title-satisfaction {
    margin-bottom: 17px;
  }
  .review-comment {
    margin-top: 40px;
  }
  .review-comment .title-comment {
    margin-bottom: 14px;
  }
  .review-comment .content-comment {
    margin-bottom: 14px;
  }
  .satisfaction-content {
    margin-top: 40px;
  }
  .satisfaction-content .title-satisfaction {
    margin-bottom: 16px;
  }
  .satisfaction-content .body-satisfaction {
    margin-bottom: 40px;
  }
  .message-content .title-message {
    margin-bottom: 16px;
  }
  .message-content .body-message {
    margin-bottom: 80px;
  }
  .inputs-submit {
    margin-bottom: 16px;
  }
  .inputs-submit > a:nth-child(2) {
    margin-left: 16px;
  }
  .inputs-submit a {
    width: 176px;
    text-align: center;
  }
  .warning {
    margin-bottom: 160px;
    text-align: center;
    /*a {
      text-decoration:underline;
    }*/
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .review-confirm-content {
    margin-top: 24px;
  }
  .review-confirm-content .title {
    margin-bottom: 16px;
  }
  .review-confirm-content .review-comment {
    margin-top: 40px;
  }
  .review-confirm-content .review-comment .title-comment {
    margin-bottom: 14px;
  }
  .review-confirm-content .review-comment .content-comment {
    margin-bottom: 14px;
  }
  .review-confirm-content .title-satisfaction {
    margin-bottom: 16px;
  }
  .review-confirm-content .satisfaction-content {
    margin-top: 40px;
  }
  .review-confirm-content .satisfaction-content .body-satisfaction {
    margin-bottom: 40px;
  }
  .review-confirm-content .message-content .title-message {
    margin-bottom: 16px;
  }
  .review-confirm-content .message-content .body-message {
    margin-bottom: 40px;
  }
  .review-confirm-content .inputs-submit {
    margin-bottom: 16px;
  }
  .review-confirm-content .inputs-submit > a:nth-child(2) {
    margin-left: 2.2%;
  }
  .review-confirm-content .inputs-submit a {
    width: 48.9%;
    text-align: center;
  }
  .review-confirm-content .warning {
    margin-bottom: 84px;
    text-align: left;
  }
  .review-confirm-content .table-basic {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
  }
  .review-confirm-content .table-basic td,
  .review-confirm-content .table-basic th {
    width: auto;
    display: table-cell;
    padding: 16px;
    border-bottom: 1px solid #C6C6C6;
  }
  .review-confirm-content .table-basic th {
    width: 25.6%;
    min-width: 140px;
    background: #FFF;
  }
  .review-confirm-content .review-initial dt:after {
    top: 4px;
  }
}

/* Color */
/* Font Size */
/* Font Weight */
.review-input-top-content .title-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.review-input-top-content .title-box {
  margin-bottom: 8px;
}

.review-input-top-content .title-box h1 {
  line-height: 1.5;
}

.review-input-body-content {
  max-width: 1028px;
}

.review-input-body-content .title p {
  margin: 0;
  display: inline-block;
  vertical-align: middle;
}

.review-input-body-content .title p:nth-child(1) {
  background-color: #CE0000;
  border-radius: 2px;
}

.review-input-body-content .title p:nth-child(2) {
  text-align: center;
}

.review-input-comment-content {
  max-width: 1028px;
}

.review-input-comment-content .title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.review-input-comment-content .check-mark {
  padding-bottom: 17px;
}

.review-input-comment-content .check-mark span {
  display: inline;
}

.review-input-comment-content .text-box {
  width: 128px !important;
}

.review-input-comment-content .js-dropdown {
  width: 148px !important;
}

.review-input-comment-content .options ul li {
  border-bottom: 1px solid #f5f5f5;
}

.review-input-comment-content .options ul li:last-child {
  border-bottom: none;
}

.review-input-comment-content .options .select-frame {
  color: #C6C6C6;
}

.review-input-comment-content .options .select-frame.on {
  color: #333;
}

@media (max-width: 767px) {
  .review-input-comment-content .text-box,
  .review-input-comment-content .js-dropdown {
    width: 100% !important;
  }
}

.review-input-fullness-content {
  max-width: 1028px;
}

.review-input-fullness-content .title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.review-input-message-content {
  max-width: 1028px;
}

.review-input-message-content .confirm {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.data-items .data-item .item-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.data-items .data-item .item-title p:nth-child(1) {
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.data-items .data-item .item-title p.warning {
  margin: 0;
  display: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  width: 100%;
}

.data-items .data-item .item-title p.warning.active {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.data-items .data-item.errored div.option {
  border: 1px solid #CE0000;
}

.data-items .data-item.errored div.option span {
  color: #CE0000;
}

.data-items .data-item.errored p.warning {
  display: block;
}

.item-options div.interval {
  width: 16.3%;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.item-options div.interval p {
  margin-top: 8px;
  width: 100%;
  font-weight: normal;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  color: #757575;
}

.item-options div.option {
  border: 1px solid #0F0A64;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
}

.item-options div.option span {
  color: #0F0A64;
  font-weight: bold;
  text-align: center;
}

.item-options div.active {
  background-color: #0F0A64;
}

.item-options div.active span {
  color: #FFFFFF;
}

.item-options div.disabled {
  border-color: #C6C6C6;
}

.item-options div.disabled span {
  color: #C6C6C6;
}

.item-checkmark {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-area .icon-label {
  text-shadow: none;
}

/* PC */
@media screen and (min-width: 768px) {
  .review-input-top-content .title {
    padding-bottom: 16px;
  }
  .review-input-top-content .icon-question {
    height: 24px;
  }
  .review-input-top-content .content {
    margin-bottom: 24px;
  }
  .review-input-top-content .title-box {
    margin-bottom: 16px;
  }
  .review-input-body-content {
    margin-top: 40px;
  }
  .review-input-body-content .title p:nth-child(1) {
    padding: 0 4px;
    width: 26px;
    height: 12px;
  }
  .review-input-body-content .data-items {
    width: 100%;
    max-width: 1080px;
    font-size: 0;
  }
  .review-input-body-content .data-items .data-item {
    padding-bottom: 32px;
    width: 43.9%;
    display: inline-block;
  }
  .review-input-body-content .data-items .data-item:nth-child(2n+1) {
    margin-right: 12%;
  }
  .review-input-body-content .data-items .data-item .item-title {
    margin-left: 11px;
    padding-bottom: 8px;
  }
  .review-input-body-content .data-items .data-item .item-title p:nth-child(1) {
    padding-right: 16px;
  }
  .review-input-body-content .data-items .data-item .item-title div:nth-child(2) img {
    padding-right: 9px;
    width: 22px;
    height: 22px;
  }
  .review-input-comment-content {
    margin-top: 54px;
    margin-bottom: 68px;
  }
  .review-input-comment-content .title {
    padding-bottom: 12px;
  }
  .review-input-comment-content .title span:nth-child(2) {
    margin-left: 8px;
  }
  .review-input-comment-content .title span:nth-child(2) u {
    display: inline;
    text-decoration: none;
  }
  .review-input-fullness-content {
    margin-bottom: 86px;
  }
  .review-input-fullness-content .title {
    margin-bottom: 12px;
  }
  .review-input-fullness-content .title span:nth-child(1) {
    margin-right: 8px;
  }
  .review-input-fullness-content .content {
    padding-bottom: 12px;
  }
  .review-input-message-content .title {
    padding-bottom: 16px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .review-input-message-content .title span:nth-child(1) {
    margin-right: 8px;
  }
  .review-input-message-content .warn {
    padding-bottom: 8px;
  }
  .review-input-message-content .check-mark {
    padding-bottom: 17px;
  }
  .review-input-message-content .confirm {
    margin-top: 106px;
    padding-bottom: 160px;
  }
  .review-input-message-content .confirm .btn-relux {
    width: 300px;
  }
  .item-options {
    width: 100%;
  }
  .item-options div.option {
    width: 56px;
    height: 56px;
  }
  .item-options div.option:hover {
    border: 1px solid #554B98;
  }
  .item-options div.option:hover span {
    color: #554B98;
  }
  .item-options div.option.active:hover {
    background-color: #554B98;
    border: 1px solid #554B98;
  }
  .item-options div.option.active:hover span {
    color: #FFFFFF;
  }
  .item-options div.option.disabled:hover {
    background-color: #FFFFFF;
    border-color: #C6C6C6;
  }
  .item-options div.option.disabled:hover span {
    color: #C6C6C6;
  }
  .options-long {
    max-width: 1002px;
    font-size: 0;
  }
  .options-long .interval {
    width: 8.4% !important;
  }
  .options-long .interval br {
    display: none;
  }
  .review-note {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

/* SP */
@media screen and (max-width: 768px) {
  .review-input-top-content {
    margin-top: 24px;
  }
  .review-input-top-content .title {
    padding-bottom: 8px;
    font-size: 2.6rem;
  }
  .review-input-top-content .icon-question {
    height: 20px;
  }
  .review-input-top-content .hotel-item {
    border: 1px solid #f5f5f5;
  }
  .review-input-top-content .content {
    margin-bottom: 16px;
    font-size: 1.6rem;
  }
  .review-input-top-content .title-box h1 {
    font-size: 2.6rem;
  }
  .review-input-body-content {
    margin-top: 32px;
  }
  .review-input-body-content .title p:nth-child(1) {
    padding: 2px 3px;
    width: 26px;
    height: 12px;
  }
  .review-input-comment-content {
    padding-bottom: 40px;
  }
  .review-input-comment-content .title {
    padding-bottom: 9px;
  }
  .review-input-comment-content .check-mark {
    padding-bottom: 18px;
  }
  .review-input-comment-content .check-mark span {
    margin-left: 4px;
  }
  .review-input-fullness-content .title {
    padding-bottom: 8px;
  }
  .review-input-fullness-content .item-options div.interval {
    width: 16.3%;
  }
  .review-input-message-content {
    margin-top: 40px;
  }
  .review-input-message-content .title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 8px;
  }
  .review-input-message-content .title .tag-any {
    margin-top: 11px;
    min-width: 34px;
  }
  .review-input-message-content .warn {
    margin-top: 8px;
    padding-bottom: 8px;
  }
  .review-input-message-content .warn span {
    padding-bottom: 4px;
  }
  .review-input-message-content .confirm {
    margin-top: 16px;
  }
  .review-input-message-content .confirm .btn-relux {
    width: 100%;
  }
  .review-initial input[type="text"] {
    width: 100%;
  }
  .review-initial .tag-require, .review-initial .tag-any {
    margin-right: 0 !important;
  }
  .data-items .data-item {
    width: 100%;
    font-size: 0;
    text-align: center;
  }
  .data-items .data-item .item-title {
    padding-bottom: 14px;
  }
  .data-items .data-item .item-title p:nth-child(1) {
    padding-right: 8px;
  }
  .data-items .data-item .item-title div:nth-child(2) img {
    padding-right: 4px;
    width: 22px;
    height: 22px;
  }
  .data-items .data-item .item-title div:nth-child(2) span {
    margin-left: 4px;
  }
  .item-options div.option {
    width: 48px;
    height: 48px;
  }
  .item-options div.last-option {
    padding: 0;
  }
  .item-options div.interval {
    width: 19.7%;
  }
  .interval .font-small {
    font-size: 1.0rem;
  }
}

.input-box input[type="checkbox"] {
  border-bottom: none;
}

/* Color */
/* Font Size */
/* Font Weight */
.review-list-top-content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-bottom: 24px;
  width: 100%;
  background-color: #FFFFFF;
}

.review-list-top-content .content {
  margin-top: 8px;
  position: relative;
}

.review-list-top-content .content h2 {
  margin: 0;
  padding: 0;
}

.review-list-top-content .title-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.review-list-top-content .title-grade .icon-question {
  height: 24px;
}

.review-list-top-content .title-box h1 {
  width: 100%;
  text-decoration: underline;
  line-height: 1.5;
}

.review-list-top-content .title-box h1 a {
  color: #333;
}

.review-list-top-content .title-box h1:hover {
  text-decoration: none;
}

.review-list-top-content .map {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 8px;
}

.review-list-top-content .map a {
  margin-left: 8px;
}

.review-list-top-content .map a:hover {
  color: #0066cc;
}

.review-list-top-content .description {
  margin-top: 8px;
}

.review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle.under5review span {
  color: #757575;
  font-weight: 400;
}

.data-list-content {
  width: 100%;
  background-color: #F5F5F5;
}

.data-list-content .data-item {
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.data-list-content .data-item .item-left {
  margin-right: 33px;
  width: 212px;
  display: inline-block;
  vertical-align: top;
}

.data-list-content .data-item .item-left div:nth-child(2) {
  margin-top: 16px;
}

.data-list-content .data-item .item-left div:nth-child(2) div:nth-child(2) {
  margin-top: 0;
}

.data-list-content .data-item .item-left div:nth-child(3) {
  margin-top: 16px;
}

.data-list-content .data-item .item-left div:nth-child(3) div:nth-child(2) {
  margin-top: 0;
  display: -webkit-box;
  /*!autoprefixer:off*/
  -webkit-box-orient: vertical;
  /*autoprefixer:on*/
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.data-list-content .data-item .item-right {
  max-width: 825px;
  display: inline-block;
  vertical-align: top;
}

.data-list-content .data-item .item-right .overall-score .score-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 16px;
}

.data-list-content .data-item .item-right .overall-score .score-area .text {
  height: 2.4rem;
  margin-right: 16px;
}

.data-list-content .data-item .item-right .overall-score .score-area .score {
  height: 2.4rem;
}

.data-list-content .data-item .item-right .overall-score .score-area .score div {
  vertical-align: text-top;
}

.data-list-content .data-item .item-right .detail {
  margin-bottom: 16px;
}

.data-list-content .data-item .item-right .detail span.title {
  margin-left: 14px;
}

.data-list-content .data-item .item-right .detail span.first {
  margin-left: 0;
}

.data-list-content .data-item .item-right .detail span.score-word {
  margin-left: 5px;
  margin-top: 0;
}

.data-list-content .data-item .item-right .remarks p {
  color: #333333;
}

.data-list-content .data-item .item-right .remarks p u {
  color: #757575;
  cursor: pointer;
}

.data-list-content .data-item .item-right .remarks p u:hover {
  text-decoration: none;
}

.data-list-content .data-item .modal-link-black {
  padding-right: 0;
  font-size: 1.4rem;
}

.data-list-content .data-item .modal-link-black:after {
  display: none;
}

.data-list-content .data-item .modal-link-black:hover {
  text-decoration: none;
}

/*pc*/
@media screen and (min-width: 768px) {
  .sp-only {
    display: none;
  }
  .review-list-top-content .show-data {
    margin-top: 32px;
    margin-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .review-list-top-content .show-data ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
  }
  .review-list-top-content .show-data li.first-li {
    margin-top: 0px !important;
  }
  .review-list-top-content .show-data .gauge-meters {
    width: 50%;
    display: inline-block;
    vertical-align: top;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul {
    margin-top: 8px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle {
    margin-right: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    zoom: 0.5;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .featureRecommendRank__piechart.under5review {
    width: 108px;
    height: 108px;
    text-align: center;
    margin-right: 40px;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle span {
    width: 100%;
    position: absolute;
    color: #0F0A64;
    font-size: 6.6rem;
    font-weight: 400;
    text-align: center;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle span u {
    font-size: 5.2rem;
    text-decoration: none;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines li {
    margin-top: 6px;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .point-text {
    display: inline-block;
    vertical-align: middle;
    color: #0F0A64;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines.under5review .point-text {
    color: #757575;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .gauge-meter.line {
    width: 240px;
    height: 8px;
    background-color: #F5F5F5;
    display: inline-block;
    vertical-align: middle;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .gauge-meter.line .progress {
    height: 8px;
    background-color: #0F0A64;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .percent-text {
    display: inline-block;
    vertical-align: middle;
    color: #0F0A64;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines.under5review .percent-text {
    color: #757575;
  }
  .review-list-top-content .show-data .evaluate {
    display: inline-block;
    vertical-align: top;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls {
    margin-top: 8px;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul {
    display: inline-block;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul:nth-child(1) {
    margin-right: 16px;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li {
    margin-top: 8px;
    width: 221px;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(1) {
    width: 136px;
    height: 24px;
    display: inline-block;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(2) {
    width: 80px;
    height: 41px;
    display: inline-block;
    text-align: right;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(3) {
    margin-top: 2px;
    width: 200px;
    border: 1px solid #F5F5F5;
  }
  .data-list-content {
    padding-top: 16px;
    padding-bottom: 40px;
  }
  .data-list-content .wrap {
    margin-bottom: 148px;
  }
  .data-list-content .data-item {
    margin-bottom: 16px;
    padding: 24px 24px 16px 24px;
  }
}

@media screen and (max-width: 900px) and (min-width: 768px) {
  .review-list-top-content .show-data .gauge-meters {
    width: 58.8%;
    margin-bottom: 32px;
  }
}

/* SP */
@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
  .review-list-top-content {
    margin-top: 24px;
    padding-bottom: 0;
  }
  .review-list-top-content .title-grade {
    margin-bottom: 8px;
  }
  .review-list-top-content .title-grade .icon-question {
    height: 20px;
  }
  .review-list-top-content .title-box h1 {
    font-size: 2rem;
  }
  .review-list-top-content .show-data {
    margin-top: 16px;
  }
  .review-list-top-content .show-data ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
  }
  .review-list-top-content .show-data li.first-li {
    margin-top: 0px !important;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meters-description {
    padding-bottom: 16px;
  }
  .review-list-top-content .show-data .gauge-meters .left-li:nth-child(1) {
    display: inline-block;
    padding-right: 6.23%;
    width: 40%;
  }
  .review-list-top-content .show-data .gauge-meters .left-li:nth-child(2) {
    display: inline-block;
    margin-top: -3%;
    width: 56.77%;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle {
    margin-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    color: #0F0A64;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .featureRecommendRank__piechart.under5review {
    width: 108px;
    height: 108px;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle.under5review {
    margin-bottom: 0;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle canvas {
    zoom: 0.5;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle span {
    width: 50%;
    position: absolute;
    font-size: 3.3rem;
    font-weight: bold;
    text-align: center;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .gauge-meter.circle span u {
    text-decoration: none;
    font-size: 2rem;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines {
    margin-bottom: 40px;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines.under5review {
    margin-bottom: 0;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines li {
    height: 27px;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .gauge-meter.line {
    padding-right: 2.4%;
    width: 68%;
    height: 10px;
    background-color: #F5F5F5;
    display: inline-block;
    vertical-align: middle;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .gauge-meter.line .progress {
    height: 10px;
    background-color: #0F0A64;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .point-text {
    padding-right: 2.4%;
    width: 10%;
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
  }
  .review-list-top-content .show-data .gauge-meters .gauge-meter-ul .lines .percent-text {
    display: inline-block;
    vertical-align: middle;
  }
  .review-list-top-content .show-data .evaluate .evaluate-title {
    margin-bottom: 12px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .review-list-top-content .show-data .evaluate .evaluate-title u {
    text-decoration: none;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul {
    width: 48.2%;
    display: inline-block;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li {
    margin-top: 12px;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul:nth-child(1) {
    margin-right: 1.6%;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(1) {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 4px;
    width: 61%;
    display: inline-block;
    white-space: nowrap;
  }
  .review-list-top-content.under5review-content .show-data .evaluate .evaluate-uls ul li div:nth-child(1) {
    width: 87%;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(2) {
    height: 36px;
    display: inline-block;
  }
  .review-list-top-content .show-data .evaluate .evaluate-uls ul li div:nth-child(3) {
    margin-top: 2px;
    width: 98%;
    border: 1px solid #F5F5F5;
  }
  .data-list-content .data-item {
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 24px 16px 0 16px;
  }
  .data-list-content .data-item .item-head .item1 {
    margin-bottom: 16px;
    height: 24px;
  }
  .data-list-content .data-item .item-head .item-title {
    padding-right: 4%;
    width: 27%;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: top;
  }
  .data-list-content .data-item .item-head .item-body {
    width: 70%;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle;
  }
  .data-list-content .data-item .item-head .item2 {
    padding-bottom: 5px;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .data-list-content .data-item .item-head .item3 {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .data-list-content .data-item .item-head .item3 .item-title {
    padding-top: 6px;
  }
  .data-list-content .data-item .item-head .detail {
    display: inline-block;
    line-height: 2.4;
  }
  .data-list-content .data-item .item-head .detail div {
    display: inline-block;
    vertical-align: top;
  }
  .data-list-content .data-item .item-head .detail span.title {
    margin-right: 5px;
  }
  .data-list-content .data-item .item-head .detail span.first {
    margin-left: 1px;
  }
  .data-list-content .data-item .item-head .detail span.score-word {
    margin-top: 0;
    margin-right: 11px;
  }
  .data-list-content .data-item .item4 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .data-list-content .data-item .item4 div:nth-child(2) {
    display: inline-block;
    vertical-align: top;
  }
  .data-list-content .data-item .item5 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .data-list-content .data-item .item5 div:nth-child(2) {
    display: inline-block;
    vertical-align: top;
  }
  .data-list-content .remarks {
    border-bottom: 4px solid #F5F5F5;
    padding-bottom: 8px;
  }
  .data-list-content .remarks p {
    font-size: 1.4rem;
  }
  .data-list-content .remarks p u {
    cursor: pointer;
  }
  .evaluate {
    padding-bottom: 40px;
    border-bottom: 4px solid #F5F5F5;
  }
}

.reservation {
  /* アコーディオンパーツ */
  /* キャンセルポリシー */
  /* キャンセル補償 */
  /* -----予約入力画面----- */
  /*textboxの仕様を更新次第、common.scssに移行させる*/
  /* -----予約確認画面----- */
  /* -----予約完了画面----- */
}

.reservation .message p {
  margin: 8.5px 0;
}

.reservation .global-footer {
  background: none;
  padding-bottom: 0 !important;
}

.footer-on .global-footer {
  background: #303233;
}

.reservation .mp-member-info .content-edit {
  padding-bottom: 0 !important;
}

.reservation .reserve-data-left {
  max-width: none;
  width: calc(100% - 384px);
}

.reservation .reserve-data-box .mb-6 {
  margin-bottom: 6px;
}

.reserve-data-box .point-now {
  font-weight: normal;
  font-size: 1.2rem;
}

.reserve-data-box .point-now-box {
  display: flex;
  width: 100%;
}

.reservation .reserve-data-box .accordion-content .d-flex,
.reservation .reserve-data-box .js-special-discount-content .d-flex {
  width: 270px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reservation .reserve-data-box .accordion-content .d-flex .font-heavy,
.reservation .reserve-data-box .js-special-discount-content .d-flex .font-heavy {
  width: 165px;
}

.reservation .reserve-data-box .js-special-discount-content .text-link {
  font-size: 1.4rem;
}

.reservation .reserve-data-box .input-box .check-disabled {
  color: #C6C6C6;
}

.reservation .gtt-alert {
  width: calc(100% - 384px);
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #0F0a64;
  background: #fff;
  padding: 16px 24px;
  border: 1px solid #0F0a64;
  margin-bottom: 24px;
}

.reservation .reserve-data-right {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  width: 352px;
}

.reservation .reserve-data-right .right-info-hotel {
  background: url(https://rlx.jp/journal/wp-content/uploads/2016/08/RP22771_1100.jpg) no-repeat center center;
  background-size: cover;
  height: 194px;
  position: relative;
}

.reservation .reserve-data-right .right-info-hotel p {
  margin-bottom: 0;
  position: absolute;
  bottom: 16px;
  text-shadow: 1px 1px 1px #000;
}

.reservation .reserve-data-right .right-info-detail {
  max-height: 100vh;
  overflow-y: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}

.reservation .reserve-data-right .right-info-detail .text-link {
  color: #333;
}

.reservation .reserve-data-right .right-info-detail .js-accordion-open:after {
  background: url(/stcontents/img/common/icon-arrow-bottom-black-2.svg);
}

.reservation .reserve-data-right .right-info-detail .amount {
  display: inline-block;
  text-align: right;
  width: 207px;
  margin-left: 16px;
}

.reservation .reserve-data-right .right-info-detail .link-cancel-policy {
  width: 100%;
  text-align: center;
  padding: 8px 8px;
}

.reservation .reserve-data-right .right-info-detail .link-cancel-policy img {
  margin-left: 4px;
}

.reservation .reserve-data-right .right-info-detail .js-tips-content {
  background: #fff;
  width: 700px;
  position: absolute;
  bottom: 30px;
  right: 30px;
  padding: 24px 16px;
  border-radius: 8px 8px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}

.reservation .reserve-data-right .right-info-detail .frame-flex-base dt {
  width: 62%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.reservation .reserve-data-right .right-info-detail .modal-link {
  font-size: 1.4rem;
  padding-right: 23px;
}

.reservation .reserve-data-right .right-info-detail .modal-link::after {
  width: 18px;
  height: 18px;
}

.reservation .reserve-data-right .right-info-detail::-webkit-scrollbar {
  display: none;
  /* Chrome, Safari 対応 */
}

.reservation .reserve-data-right .right-info-price {
  border-bottom: 1px solid #f5f5f5;
  position: relative;
  padding: 24px 24px 60px 24px;
}

.reservation .reserve-data-right .right-info-price .mb-8 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-right: 24px;
}

.reservation .reserve-data-right .right-info-price .mb-8:last-child {
  margin-bottom: 0;
}

.reservation .reserve-data-right .right-info-price .js-accordion-open {
  border-bottom: 0;
  margin-bottom: 8px;
}

.reservation .reserve-data-right .right-info-price .js-accordion-open:hover {
  opacity: .7;
  cursor: pointer;
}

.reservation .reserve-data-right .right-info-price .js-accordion-open:after {
  top: 12px;
  right: 0;
}

.reservation .reserve-data-right .right-info-price .bg-gray {
  padding: 8px 24px 16px 8px;
}

.reservation .reserve-data-right .right-info-price .bg-gray .detail {
  font-size: 1.2rem;
  margin-bottom: 16px;
}

.reservation .reserve-data-right .right-info-price .bg-gray .subtotal {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #c6c6c6;
  padding-top: 8px;
}

.reservation .reserve-data-right .right-info-price .amount {
  width: 205px;
  font-size: 1.4rem;
}

.reservation .reserve-data-right .right-info-price .total-price {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 16px;
}

.reservation .reserve-data-right .right-info-price .total-price span {
  font-size: 1.4rem;
  font-weight: 400;
}

.reservation .reserve-data-right .js-accordion-open {
  display: block;
  margin-bottom: 0;
  position: relative;
  border-bottom: 1px solid #F5F5F5;
}

.reservation .reserve-data-right .js-accordion-open:after {
  position: absolute;
  right: 24px;
  top: 30px;
}

.reservation .reserve-data-right .accordion-content {
  border-bottom: 1px solid #F5F5F5;
}

.reservation .cancel-policy .table-basic {
  border-top: 1px solid #C6C6C6;
  border-bottom: none;
}

.reservation .cancel-policy tr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reservation .cancel-policy th {
  background: #FFF;
  border-bottom: 1px solid #C6C6C6;
  font-weight: normal;
  width: 55%;
}

.reservation .cancel-policy td {
  width: 45%;
  border-bottom: 1px solid #C6C6C6;
}

.reservation .input-box .label {
  margin-bottom: 8px;
}

.reservation .validate-dropdown .nice-select {
  float: none;
}

.reservation .cxl-insurance {
  border: 1px solid #0F0a64;
  padding: 16px;
  text-align: center;
}

.reservation .cxl-insurance p {
  text-align: center;
}

.reservation .cxl-insurance .title {
  color: #0F0A64;
  font-size: 1.6rem;
  font-weight: 900;
  text-align: center;
  margin-bottom: 8px;
}

.reservation .cxl-insurance .description {
  font-size: 1.4rem;
}

.reservation .cxl-insurance .description .color-gray-2 {
  margin-top: 8px;
  font-size: 1.2rem;
}

.reservation .cxl-insurance .note {
  text-align: left;
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reservation .cxl-insurance .btn-relux {
  width: 300px;
}

.reservation .cxl-insurance .cxl-insurance-detail {
  text-align: right;
}

.reservation .cxl-insurance.comp .title {
  font-size: 2rem;
}

.reservation .cxl-insurance.comp .description {
  font-size: 1.6rem;
}

.reservation .cxl-insurance.comp .btn-relux {
  font-size: 1.6rem;
}

.reservation .reserve-induction {
  background: #FFF;
  text-align: center;
  border: 1px solid #C6C6C6;
}

.reservation .reserve-induction div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation .reserve-induction div a {
  width: 160px;
}

.reservation .reserve-input-double {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reservation .reserve-input-double li {
  width: 47.5%;
}

.reservation .reserve-input-double input {
  width: 100%;
}

.reservation .reserve-input-wide input {
  width: 100%;
  max-width: 470px;
}

.reservation .reserve-input-gender {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reservation .input-checkbox,
.reservation .input-radio {
  border-bottom: none !important;
}

.reservation .select-dropdown-country {
  width: 170px;
}

.reservation .select-dropdown-prefectures {
  width: 120px;
}

.reservation .js-check-acd-content {
  display: none;
}

.reservation .reserve-submit a {
  width: 343px;
}

.reservation .reserve-submit-double {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation .reserve-submit-double a, .reservation .reserve-submit-double button {
  width: 172px;
}

.reservation .reserve-complete {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
}

.reservation .reserve-complete .btn-relux,
.reservation .reserve-complete .btn-default {
  width: 343px;
  margin: 0 auto 16px;
}

.reservation .btn-complete-box {
  background: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 16px 16px 0;
  z-index: 2;
}

.reservation .btn-complete-box.no-zenkoku {
  display: none;
}

@media screen and (max-width: 767px) {
  .reservation .btn-complete-box {
    padding: 8px 16px;
    box-shadow: 0 0 8px rgba(0,0,0,0.15);
  }
  .reservation .btn-complete-box a {
    margin-bottom: 0 !important;
  }
}

.reservation .reserve-check-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.reservation .reserve-check-list li {
  width: 33.3%;
}

.reservation .reserve-child {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation .reserve-child-number {
  display: inline-block;
  width: 20px;
}

.reservation .submit-box {
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
}

.reservation .content-scroll {
  border-bottom: 1px solid #F5F5F5;
}

.reservation .common-modal {
  max-width: 920px;
}

.reservation .stay-table {
  margin-top: 16px;
  font-size: 1.4rem;
}

.reservation .stay-table th {
  font-weight: bold;
}

.reservation .stay-table th, .reservation .stay-table td {
  padding-bottom: 16px;
}

.reservation .stay-table th:last-of-type, .reservation .stay-table td:last-of-type {
  font-size: 1.6rem;
  text-align: left;
}

.reservation .stay-table th:first-child {
  width: 63px;
}

.reservation .stay-table th:nth-child(2) {
  width: 60px;
}

.reservation .stay-table th:last-child {
  width: calc(100% - 123px);
  text-align: left;
}

.reservation .stay-table td .js-spinner-btn {
  margin-right: 14px;
}

.reservation .stay-table td .js-spinner-btn:last-of-type {
  margin-right: 0;
  margin-left: 14px;
}

.reservation .stay-table .spinner-area input {
  font-size: 1.6rem;
}

.reservation .stay-table .stay-num,
.reservation .stay-table .reserve-child-number {
  margin-left: 49px;
  display: inline-block;
  width: 20px;
  text-align: center;
}

.reservation .stay-table .reserve-child-type {
  display: inline-block;
  padding-left: 49px;
}

.reservation .select-dropdown.options {
  width: 104px;
}

.reservation .select-dropdown.options .dropdown-select-button {
  width: 48px;
  height: 48px;
  background: none;
  border-radius: 0 4px 4px 0;
  position: absolute;
  top: 0;
  right: 4px;
}

.reservation .user-data-edit,
.reservation .reserve-data-edit,
.reservation .coupon-data-edit {
  display: none;
}

.reservation .link-cancel-policy {
  width: 40%;
  letter-spacing: 0;
}

.reservation .link-cancel-policy a {
  font-weight: bold;
  color: #757575 !important;
}

.reservation .link-cancel-policy img {
  vertical-align: middle;
  margin: -1px 0 0;
}

.reservation .total-price-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  border-top: 4px solid #F5F5F5;
}

.reservation .total-price-box > div {
  width: 60%;
}

.reservation .total-price-box.float-bar {
  position: fixed;
  border-radius: 16px 16px 0 0;
  border: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reservation .total-price-box .total-price-wrap {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reservation .total-price-box .total-price-wrap .text-link {
  width: auto !important;
  position: relative;
  top: 0 !important;
  color: #333 !important;
  font-size: 2rem;
}

.reservation .total-price-box .total-price-wrap .text-link.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.reservation .total-price-box .js-half-modal-trigger {
  text-align: left;
  display: block;
}

.reservation .total-price-box .js-half-modal-trigger .color-gray-2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reservation .total-price-box .js-half-modal-trigger .color-gray-2 span {
  font-size: 1rem;
  font-weight: 400;
}

.reservation .total-price-box .right-info-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 16px;
  font-size: 1.4rem;
}

.reservation .total-price-box .right-info-price dt, .reservation .total-price-box .right-info-price dd {
  width: 50%;
  margin-bottom: 8px;
}

.reservation .total-price-box .right-info-price dd {
  text-align: right;
}

.reservation .total-price-box .js-half-modal-container._slideUp {
  display: block;
  opacity: 1;
  bottom: -121px;
  -webkit-animation: none;
          animation: none;
}

.reservation .total-price-box .js-half-modal-container._slideUp .js-half-modal-close {
  width: 60px;
}

.reservation .total-price-box .js-half-modal-container._slideUp .js-half-modal-close:after {
  position: relative;
  border: none;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  top: -2px;
  right: 0;
  left: inherit;
}

.reservation .total-price-box .js-half-modal-container._slideUp .js-half-modal-close:before {
  content: none;
}

.reservation .reserve-float-bar.static {
  position: relative;
  -webkit-transform: none;
          transform: none;
}

.reservation .cancel-policy-modal {
  background: #fff;
  position: fixed;
  top: 50%;
  left: 50%;
  bottom: inherit;
  right: inherit;
  width: calc(100vw - 32px);
  height: 83%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 8px;
  overflow: auto;
  font-size: 1.2rem;
}

.reservation .cancel-policy-modal .modal-container {
  position: relative;
}

.reservation .cancel-policy-modal .js-modal-close.float {
  background-image: url(/stcontents/img/common/icon-close-4.svg);
  top: 10px;
  width: 30px;
  height: 30px;
  right: 14px;
}

.reservation .cancel-policy-modal .modal-container .js-half-modal-close {
  right: 7px;
}

.reservation .link-cancel-policy {
  text-align: left;
}

.reservation .half-modal-content .total-price-box {
  border-top: none;
}

.reservation .half-modal-content .color-gray-2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reservation .half-modal-content .color-gray-2 span {
  font-size: 1rem;
  font-weight: 400;
}

.reservation .half-modal-content .right-info-price dt {
  padding-left: 8px;
  text-align: left;
}

.reservation .total-price-wrap .js-half-modal-overlay {
  height: 100vh;
  -webkit-transform: translateY(-100vh);
          transform: translateY(-100vh);
}

.reservation .alert-modal-point,
.reservation .alert-modal-ponta {
  max-width: 520px !important;
}

.reservation .alert-modal-point .modal-container,
.reservation .alert-modal-ponta .modal-container {
  height: auto;
  width: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: fixed;
  border-radius: 8px;
  margin: 0;
}

.reservation .alert-modal-point .modal-container .modal-container-inner,
.reservation .alert-modal-ponta .modal-container .modal-container-inner {
  width: 100%;
}

.reservation .alert-modal-point .modal-container .reserve-submit-double a,
.reservation .alert-modal-point .modal-container .reserve-submit-double button,
.reservation .alert-modal-ponta .modal-container .reserve-submit-double a,
.reservation .alert-modal-ponta .modal-container .reserve-submit-double button {
  width: 50%;
}

.or-box {
  position: relative;
}
.or-box:before {
  content:"";
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  border-bottom: 1px solid #C6C6C6;
}
.or-box span {
  display: inline-block;
  background: #f5f5f5;
  padding: 0 8px;
  position: relative;
  z-index: 1;
}

.gtt-alert .border-box {
  padding: 8px 16px;
  border: 1px solid #0F0A64;
}
.gtt-alert .border-box .js-modal-trigger {
  height: auto;
}

@media (max-width: 1023px) {
  .reservation .gtt-alert {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .reservation {
    /* auMovesバナー */
  }
  .reservation .message p {
    margin: 11px 0;
  }
  .reservation .mp-member-info h2 {
    font-size: 2rem;
    font-weight: bold;
  }
  .reservation .input-box .label span {
    margin-right: 0;
  }
  .reservation .reserve-data-box:not(.user-data-box) {
    border-top: 4px solid #F5F5F5;
  }
  .reservation .user-data-box-add.bd-top-none {
    border-top: none;
  }
  .reservation .input-name-wrap {
    display: block;
  }
  .reservation .input-name-wrap li {
    max-width: 100%;
    width: 100%;
  }
  .reservation .js-dropdown.js-half-modal-trigger {
    width: 168px;
  }
  .reservation .reserve-submit a {
    max-width: 100%;
  }
  .reservation .content-edit .input-box .select-dropdown .dropdown {
    display: none;
  }
  .reservation .content-edit .input-box .select-dropdown .dropdown, .reservation .content-edit .input-box .select-dropdown:before, .reservation .content-edit .input-box .select-dropdown:after {
    display: none;
  }
  .reservation .content-edit .input-box .select-dropdown .dropdown-select-button:before, .reservation .content-edit .input-box .select-dropdown .dropdown-select-button:after {
    right: 4px;
  }
  .reservation .gtt-alert {
    font-size: 1.6rem;
    font-weight: 700;
    padding: 16px;
    margin-bottom: 0;
  }
  .reservation .reserve-data-box .accordion-content .d-flex,
  .reservation .reserve-data-box .js-special-discount-content .d-flex {
    width: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation .reserve-data-box .accordion-content .d-flex .font-heavy,
  .reservation .reserve-data-box .js-special-discount-content .d-flex .font-heavy {
    width: auto;
  }
  .reservation .common-modal .user-data-edit,
  .reservation .common-modal .reserve-data-edit,
  .reservation .common-modal .coupon-data-edit {
    display: block;
    border-top: none !important;
  }
  .reservation .common-modal .user-data-edit .reserve-submit a,
  .reservation .common-modal .reserve-data-edit .reserve-submit a,
  .reservation .common-modal .coupon-data-edit .reserve-submit a {
    background: #0f0a64;
    height: 48px;
    position: relative;
    top: 0;
    right: 0;
  }
  .reservation .alert-modal-point .modal-container,
  .reservation .alert-modal-ponta .modal-container {
    width: 92%;
  }
  .reservation .total-price-box .total-price-wrap {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  .reservation .aumoves {
    width: 100%;
  }
  .reservation .aumoves .banner {
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .reservation .common-btn-modal .reserve-submit-double .wd-100per {
    max-width: 354px;
  }
}
@media screen and (max-width: 360px) {
  .reservation .link-cancel-policy {
    font-size: 1rem;
  }
  .reservation .total-price-box .total-price-wrap .text-link {
    font-size: 1.5rem;
  }
  .reservation .total-price-box .right-info-price {
    font-size: 1.2rem;
  }
  .reservation .reserve-p-c .reserve-input-point input {
    width: 100% !important;
  }
  .reservation .reserve-submit-double a, .reservation .reserve-submit-double button {
    max-width: calc(50% - 4px);
  }
}

.reservation .reserve-alert {
  border: 1px solid #0F0A64;
}

.reservation .reserve-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reservation .reserve-data dt {
  -webkit-flex-basis: 30%;
      -ms-flex-preferred-size: 30%;
          flex-basis: 30%;
}

.reservation .reserve-data dd {
  -webkit-flex-basis: 68%;
      -ms-flex-preferred-size: 68%;
          flex-basis: 68%;
}

@media (max-width: 767px) {
  .reservation .reserve-data {
    -webkit-box-pack: inherit;
    -webkit-justify-content: inherit;
        -ms-flex-pack: inherit;
            justify-content: inherit;
  }
  .reservation .reserve-data dt {
    font-size: 12px;
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    margin-right: 16px;
  }
  .reservation .reserve-data dd {
    -webkit-flex-basis: calc(80% - 16px);
        -ms-flex-preferred-size: calc(80% - 16px);
            flex-basis: calc(80% - 16px);
  }
}

.reservation .reserve-data-box .js-show-zenkoku-notice:after,
.reservation .reserve-data-box .js-show-prefecture-notice:after,
.reservation .reserve-data-box-sp .js-show-zenkoku-notice:after,
.reservation .reserve-data-box-sp .js-show-prefecture-notice:after {
  content: "";
  background: url(/stcontents/img/common/icon-modal-link-white.svg) no-repeat 0 0;
  background-size: contain;
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 4px;
}
.reservation .reserve-data-box .js-show-zenkoku-notice.clicked,
.reservation .reserve-data-box .js-show-prefecture-notice.clicked,
.reservation .reserve-data-box-sp .js-show-zenkoku-notice.clicked,
.reservation .reserve-data-box-sp .js-show-prefecture-notice.clicked {
  background: #fff;
  color: #0f0a64;
}
.reservation .reserve-data-box .js-show-zenkoku-notice.clicked:hover,
.reservation .reserve-data-box .js-show-prefecture-notice.clicked:hover {
  opacity: 0.7;
}
.reservation .reserve-data-box .js-show-zenkoku-notice.clicked:after,
.reservation .reserve-data-box .js-show-prefecture-notice.clicked:after,
.reservation .reserve-data-box-sp .js-show-zenkoku-notice.clicked:after,
.reservation .reserve-data-box-sp .js-show-prefecture-notice.clicked:after {
  content: "";
  background: url(/stcontents/img/common/icon-modal-link-relux.svg) no-repeat 0 0;
  background-size: contain;
}

.reservation .reserve-data-box .reserve-totalfee {
  border: none;
}
.reservation .fee-wrap {
  display: flex;
}
.reservation .fee-wrap > div {
  width: 100%;
}
.reservation .fee-wrap .subtotal {
  display: flex;
  justify-content: space-between;
  padding-top: 10px !important;
  margin-top: 16px !important;
  border-top: 1px solid #c6c6c6;
}
.reservation .fee-wrap .price-box dl > div {
  display: flex;
  justify-content: space-between;
}
.reservation-confirm-page .js-show-coupon-discount-area dd {
  white-space: nowrap;
  margin-left: 24px;
}
.reservation .fee-wrap h2 {
  width: 100%;
}
.reservation .reserve-data-box .fee-note {
    margin-top: 16px;
    padding: 16px 16px;
    border-top: 2px solid #F5F5F5;
    color: #757575;
}
.reservation .reserve-totalfee {
  width: 100%;
  border-bottom: 1px solid #C6C6C6;
}
.reservation-confirm-page .btn-pagetop {
  display: none !important;
}
.reservation .fee-wrap .total-price-box {
  border: none;
}

@media screen and (max-width: 1023px) {
  .reservation .fee-wrap {
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  .reservation .fee-wrap > div {
    width: 100%;
  }
  .reservation .fee-wrap > .price-box {
    padding: 16px 0;
  }
  .reservation .reserve-data-box .fee-note {
    margin-top: 0;
    border-top: none;
  }
}

@media screen and (max-width: 1023px) {
  .reservation .fee-wrap .price-box dl > .total-price-box {
     display: block;
  }
  .reservation .fee-wrap .price-box dl > .total-price-box .reserve-totalfee {
    width: auto;
    border: none;
    float: right;
  }
}

@media screen and (max-width: 767px) {
  .reservation .reserve-data-box .js-show-zenkoku-notice:after,
  .reservation .reserve-data-box .js-show-prefecture-notice:after {
    width: 16px;
    height: 16px;
    margin-left: 4px;
    margin-top: 2px;
  }
}

.reservation .comp-main {
  height: 420px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0.2))), url(https://rlx.jp/journal/wp-content/uploads/2016/08/RP22771_1100.jpg) no-repeat center center;
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(https://rlx.jp/journal/wp-content/uploads/2016/08/RP22771_1100.jpg) no-repeat center center;
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url(https://rlx.jp/journal/wp-content/uploads/2016/08/RP22771_1100.jpg) no-repeat center center;
  /* ※画像はサンプル（予約した宿泊施設のものが適用される想定） */
  background-size: cover;
}

.reservation .comp-main .wrap {
  padding: 0;
}

.reservation .comp-main p {
  text-shadow: rgba(0, 0, 0, 0.4) 0 0 5px;
}

.reservation .comp-main-inner {
  position: relative;
  height: 100%;
}

.reservation .comp-main-inner-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}

.reservation .comp-map-btn {
  position: absolute;
  bottom: 24px;
  right: 0px;
}

.reservation .comp-table {
  border-bottom: 1px solid #C6C6C6;
}

.reservation .comp-table th {
  width: 25.6%;
  background: #FFF;
}

.reservation .comp-table td, .reservation .comp-table th {
  display: table-cell;
  border-bottom: 1px solid #C6C6C6;
}

.reservation .resist-info-mail {
  background-color: #f5f5f5;
  margin-top: 40px;
  padding: 16px;
  text-align: center;
  color: #000;
}

.reservation .resist-info-pass {
  background-color: #f5f5f5;
  margin: 16px auto;
  padding: 16px;
  text-align: center;
  color: #000;
}

.reservation .resist-info-pass > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation .clip-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
}

.reservation .clip-btn > span {
  text-decoration: underline;
}

.reservation .clip-btn > img {
  display: block;
  width: 24px;
  height: 24px;
}

.reservation .clip-btn:hover span {
  text-decoration: none;
}

.reservation .clip-btn.clicked {
  color: #757575;
}

.reservation .clip-btn.clicked span {
  text-decoration: none;
}

.reservation .comp-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation .mp-member-info .js-half-modal-container {
  border-radius: 16px 16px 0 0;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content {
  padding-top: 20px !important;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .js-accordion-open {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8px;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .js-accordion-open p {
  width: 50%;
  text-align: left;
  font-size: 1.4rem;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .js-accordion-open .amount {
  width: 50%;
  text-align: right;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .detail-wrap {
  margin-bottom: 138px;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .detail-wrap .bg-gray {
  padding: 8px 16px;
  margin-bottom: 16px;
  text-align: left;
  margin-left: 8px;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .detail-wrap .bg-gray:last-child {
  margin-bottom: 0;
}

.reservation .mp-member-info .js-half-modal-container .half-modal-content .detail-wrap .bg-gray .subtotal {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #c6c6c6;
  margin-top: 16px;
  padding-top: 8px;
}

.reservation .mp-member-info .js-half-modal-container .js-half-modal-close {
  top: 7px;
  right: 0;
}

@media screen and (max-width: 767px) {
  .reservation .reserve-stepnavi {
    margin-top: 24px;
    margin-bottom: 16px;
  }
  .reservation .reserve-stepnavi li::after {
    width: calc(100% - 24px);
    height: 2px;
    left: calc(-50% + 12px);
    top: 10px;
  }
  .reservation .reserve-stepnavi li span {
    height: 24px;
    line-height: 24px;
    width: 24px;
    border: 2px solid #C6C6C6;
  }
  .reservation .reserve-stepnavi li span img {
    width: 16px;
    height: 16px;
    position: relative;
    top: 1px;
  }
  .reservation .reserve-stepnavi .completed span,
  .reservation .reserve-stepnavi .currently span {
    border: 2px solid #0F0A64;
  }
  .reservation .cancel-policy-per {
    display: block;
    font-size: 1.0rem;
    color: #757575;
  }
  .reservation .reserve-check-list li {
    width: 50%;
  }
  .reservation .comp-main {
    height: 300px;
  }
  .reservation .comp-message {
    margin-bottom: 16px;
    font-size: 2.0rem;
  }
  .reservation .comp-map-btn {
    bottom: 24px;
    right: 0;
    text-align: center;
    width: 100%;
  }
  .reservation .comp-table {
    margin: 24px 0 24px 0;
    border-top: 1px solid #C6C6C6;
  }
  .reservation .comp-table td, .reservation .comp-table th {
    padding: 12px 8px;
  }
  .reservation .comp-table th {
    width: 25.6%;
    min-width: 140px;
  }
  .reservation .resist-info-mail {
    background-color: #f5f5f5;
    margin-top: 24px;
    padding: 8px;
    font-size: 1.4rem;
  }
  .reservation .resist-info-pass {
    margin: 24px 0;
    padding: 8px;
    text-align: center;
    font-size: 1.4rem;
  }
  .reservation .cxl-insurance {
    border: 1px solid #0F0a64;
    padding: 16px;
    text-align: left;
    margin-bottom: 24px;
  }
  .reservation .cxl-insurance p {
    text-align: left;
  }
  .reservation .cxl-insurance .title {
    display: block;
    text-align: center;
  }
  .reservation .cxl-insurance .title span {
    display: inline-block;
    padding: 4px;
    border: 1.5px solid #0F0A64;
    width: auto;
    border-radius: 50px;
    margin-right: 4px;
    margin-bottom: 8px;
  }
  .reservation .cxl-insurance .note {
    font-size: 1rem;
    margin: 0;
  }
  .reservation .cxl-insurance .btn-relux {
    width: 100%;
  }
  .reservation .cxl-insurance.comp .title {
    font-size: 1.6rem;
  }
  .reservation .cxl-insurance.comp .description {
    font-size: 1.4rem;
  }
  .reservation .cxl-insurance.comp .description .color-gray-2 {
    font-size: 1rem;
  }
  .reservation .cxl-insurance.comp .btn-relux {
    font-size: 1.4rem;
    height: 40px;
  }
}

/*SP版画面onlyのStyle ※レスポンシブにはあらず*/
.reserve-induction-sp {
  border: 1px solid #F5F5F5;
}

.reserve-data-box-sp {
  border-top: 4px solid #F5F5F5;
}

.reserve-data-box-sp.bd-top-none {
  border-top: none;
}

.reserve-data-sp {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
}

.reserve-data-sp div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reserve-data-sp div dt {
  width: 116px;
  line-height: 2.5;
}

.reserve-data-sp div dd {
  width: calc(100% - 116px);
}

.reserve-data-sp_2 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
}

.reserve-data-sp_2 div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.reserve-data-sp_2 dt {
  width: 140px;
  line-height: 2.5;
}

.reserve-data-sp_2 dd {
  width: calc(100% - 140px);
}

.reserve-float-bar {
  padding: 8px 16px;
  position: -webkit-sticky;
  position: sticky;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.reserve-float-bar div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.reserve-float-bar dl {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.reserve-float-bar dl dt {
  position: relative;
  top: 1px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.2rem;
  font-weight: 700;
}

.reserve-float-bar dl dt span {
  font-weight: 400;
}

.reserve-float-bar dl dd {
  width: auto;
  margin-right: 0;
}

.reserve-float-bar a {
  width: 150px;
}

.reserve-birthday-sp .select-dropdown {
  max-width: 92px;
}

.coupon-expiration-sp {
  display: block;
}

.reserve-totalfee-sp .js-half-modal-trigger {
  width: 100%;
}

.reserve-totalfee-inner-sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reserve-message-sp {
  border-bottom: 1px solid #C6C6C6;
}

.submit-double-sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.submit-double-sp a {
  width: 48.9%;
}

.submit-single-sp a {
  width: 100%;
}

.border-none {
  border: none;
}

.reserve-hotel-sp {
  background: url(https://rlx.jp/journal/wp-content/uploads/2016/08/RP22771_1100.jpg) no-repeat center center;
  background-size: cover;
  height: 194px;
  position: relative;
}

.reserve-hotel-sp p {
  margin-bottom: 0;
  position: absolute;
  bottom: 16px;
  text-shadow: 1px 1px 1px #000;
}

/* ハーフモーダル JS干渉しない箇所 */
.reserve-location-sp {
  border-bottom: 4px solid #F5F5F5;
}

.reserve-amount-sp div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.reserve-amount-sp .detail-wrap {
  display: block;
  margin-bottom: 0 !important;
  padding-bottom: 121px;
}

.reserve-amount-sp .detail-wrap div {
  display: block;
}

.reservation-result-sp .js-half-modal-container {
  display: block !important;
  position: relative;
  bottom: inherit;
  left: inherit;
  height: auto !important;
  opacity: 1;
  box-shadow: none !important;
  z-index: 0;
}
.mp-member-info .reservation-result-sp .js-half-modal-container .half-modal-content {
    padding: 8px 0 0 !important;
    overflow: hidden;
}
.reservation-result-sp .js-half-modal-container .half-modal-content > dl {
  padding: 0 !important;
}
.reservation-result-sp .half-modal-head {
  display: none;
}
.reservation-result-sp .reserve-amount-sp .detail-wrap {
  padding-bottom: 16px !important;
}

@media (max-width: 767px) {
  .reservation .reserve-data-left {
    width: 100%;
  }
  .reservation .reserve-data-right {
    display: none;
  }
  .reservation .reserve-p-c .coupon-field .p-c-ticket-minus {
    display: block;
  }
  .reservation .member-form-validation .reserve-float-bar {
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  }
}

/*
  以下、クーポン・ポイント部分専用Style
*/
.reservation {
  /* 保有しているクーポン一覧モーダル */
  /* クーポンリスト */
}

.reservation .reserve-p-c button.js-modal-trigger,
.reservation .reserve-p-c button.js-half-modal-trigger {
  width: 176px;
}

.reservation .reserve-p-c .p-c-remaining {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
}

.reservation .reserve-p-c .p-c-remaining p, .reservation .reserve-p-c .p-c-remaining dd {
  position: relative;
  display: inline-block;
}

.reservation .reserve-p-c .p-c-ticket,
.reservation .reserve-p-c .coupon-ticket {
  border-radius: 8px;
  background: #FFF;
  -webkit-filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.15));
  position: relative;
}

.reservation .reserve-p-c .p-c-ticket {
  border: 1px solid #A6BCE9;
  padding: 16px 56px 16px 16px;
}

.reservation .reserve-p-c .p-c-ticket:hover {
  opacity: 0.7;
}

.reservation .reserve-p-c .p-c-ticket-minus {
  margin-left: 16px;
  color: #FF503E;
}

.reservation .reserve-p-c .input-clear-btn {
  display: inline-block;
  position: absolute;
  cursor: pointer;
  outline: none;
  content: '';
  width: 19px;
  height: 18px;
  background-image: url(/stcontents/img/common/icon-input-delete.svg);
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: contain;
  right: 18px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.reservation .reserve-p-c .reserve-input-point {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.reservation .reserve-p-c .reserve-input-point input {
  width: 241px;
  vertical-align: middle;
  float: left;
}

.reservation .reserve-p-c .reserve-input-point .js-btn-submit {
  height: 48px;
  border-radius: 0 4px 4px 0;
  vertical-align: middle;
}

.reservation .reserve-p-c .reserve-input-point .input-error-word {
  width: 100%;
  margin-top: 10px;
}

.reservation .p-c-box .half-modal-container-280 .half-modal-content {
  padding-top: 0 !important;
}

.reservation .common-btn-modal {
  max-width: 800px;
}

.reservation .common-btn-modal .modal-container {
  padding: 0 0 48px;
  position: relative;
}

.reservation .common-btn-modal .modal-container .content-body {
  height: calc(100% - 30px);
  margin-top: 0;
}

.reservation .common-btn-modal .modal-container .input-box {
  position: relative;
  margin-bottom: 0;
  padding: 40px 40px 8px;
  -webkit-box-shadow: 0 3px 4px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 4px rgba(0, 0, 0, 0.08);
  z-index: 1;
}

.reservation .common-btn-modal .modal-container .input-box:before {
  background: #fff;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 0;
  bottom: -20px;
}

.reservation .common-btn-modal .modal-container .input-box:after {
  background: #fff;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  right: 0;
  bottom: -20px;
}

.reservation .common-btn-modal .content-scroll {
  background: #F5F5F5;
  padding: 0 16px 60px !important;
  height: 68%;
  height: calc(100% - 140px);
  margin: 0 40px;
  border-bottom: none;
}

.reservation .common-btn-modal .reserve-submit-double {
  position: absolute;
  width: 100%;
  border: 0;
  bottom: 0;
  left: 0;
  padding: 24px 0;
  background: #FFF;
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  z-index: 1;
}

.reservation .common-btn-modal .reserve-submit-double:before {
  background: #fff;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 0;
  top: -20px;
}

.reservation .common-btn-modal .reserve-submit-double:after {
  background: #fff;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  right: 0;
  top: -20px;
}

.reservation .coupon-list .coupon-ticket-reserve .coupon-data-wrap {
  border-radius: 8px;
  border: 1px solid #C6C6C6;
}

.reservation .coupon-list .coupon-ticket-reserve .coupon-data-sub small:last-child {
  margin-left: 16px;
  position: relative;
  display: inline-block;
}

.reservation .coupon-list .coupon-ticket-reserve .coupon-data-sub small:last-child::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 16px;
  background-color: #333;
  position: absolute;
  top: 5px;
  left: -10px;
}

.reservation .coupon-list .coupon-ticket {
  border: none;
}

.reservation .content-scroll .no-plan {
  padding: 140px 0;
}

.reservation .coupon-code-modal {
  max-width: 520px !important;
}

.reservation .coupon-code-modal .input-box {
  min-height: 82px;
}

.reservation .coupon-code-modal .input-box .input-content2 > input {
  font-size: 1.6rem;
  padding: 0 12px;
  padding: 15px 16px;
  height: 48px;
  height: 56px;
}

.reservation .point-radios li {
  min-height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation .point-radios .input-content2 {
  margin-bottom: 0;
}

.reservation .point-radios .input-content2.error + .error-text {
  margin-bottom: 0;
}

.reservation .point-radios label {
  min-width: 120px;
  height: 36px;
  white-space: nowrap;
}

.reservation .js-radio-acd-b {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important;
  margin: 4px 0;
}

.reservation .js-radio-acd-b label {
  position: relative;
  top: 6px;
}

.reservation .js-radio-acd-content-b {
  margin-bottom: -10px;
  padding-left: 24px;
}

.reservation .js-radio-acd-content-b .input-content2 > input {
  padding-right: 41px;
}

@media (max-width: 767px) {
  .reservation .js-radio-acd-content-b {
    padding-left: 16px;
  }
  .reservation .js-radio-acd-content-b .font-small {
    font-size: 11px;
  }
}

@media (max-width: 360px) {
  .reservation .js-radio-acd-content-b .font-small {
    font-size: 10px;
  }
}

.reservation .ponta-point-modal .js-btn-submit,
.reservation .relux-point-modal .js-btn-submit {
  display: block;
  min-width: 300px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {
  .reservation .reserve-p-c button.js-modal-trigger,
  .reservation .reserve-p-c button.js-half-modal-trigger {
    width: 100%;
    height: 40px;
    font-size: 1.4rem;
  }
  .reservation .reserve-p-c .reserve-input-point {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .reservation .reserve-p-c .reserve-input-point input {
    width: calc(100% - 90px) !important;
    height: 48px;
  }
  .reservation .reserve-p-c .reserve-input-point .js-btn-submit {
    height: 48px;
  }
  .reservation .reserve-p-c .reserve-input-point > p,
  .reservation .reserve-p-c .reserve-input-point > h3 {
    width: 100%;
  }
  .reservation .p-c-remaining p::before,
  .reservation .p-c-remaining dd::before {
    top: 5px !important;
  }
  .reservation .common-btn-modal .content-scroll {
    height: calc(100% - 178px);
    margin: 0;
    padding: 0 4px 0 16px !important;
  }
  .reservation .common-btn-modal .modal-container {
    padding: 0 0 64px;
  }
  .reservation .common-btn-modal .modal-container .content-body {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .reservation .common-btn-modal .modal-container .input-box {
    padding: 40px 16px 8px;
  }
  .reservation .common-btn-modal .modal-container .input-box:before, .reservation .common-btn-modal .modal-container .input-box:after {
    content: none;
  }
  .reservation .common-btn-modal .reserve-submit-double {
    padding: 8px 8px;
  }
  .reservation .common-btn-modal .reserve-submit-double:before, .reservation .common-btn-modal .reserve-submit-double:after {
    content: none;
  }
  .reservation .coupon-list {
    padding-bottom: 16px;
    padding-right: 12px;
    overflow: hidden;
  }
  .reservation .content-scroll .no-plan {
    padding: 200px 0;
  }
  .reservation .point-radios label {
    height: 24px;
  }
  .reservation .js-radio-acd-b {
    margin: 0;
  }
  .reservation .js-radio-acd-b label {
    min-width: 90px;
    top: 12px;
  }
  .reservation .point-btn-submit {
    padding: 0 16px;
    position: absolute;
    bottom: 120px;
    width: 100%;
  }
  .reservation .point-btn-submit .btn-relux {
    width: 100%;
  }
  .reservation .js-half-modal-container {
    display: none;
  }
  .reservation .js-half-modal-container._slideUp {
    display: block;
  }
  .reservation .js-half-modal-container._slideUp .half-modal-head {
    position: -webkit-sticky;
    position: sticky;
  }
  .reservation .js-half-modal-container._slideUp .half-modal-head-inner .fixed-contents {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .reservation .js-half-modal-container._slideUp .half-modal-content {
    padding-top: 0 !important;
  }
  .reservation .mp-member-info .half-modal-total-reserve .half-modal-content {
    padding-top: 8px !important;
  }
  .reservation .js-half-modal-container .reserve-submit-double {
    padding: 0 16px;
    position: relative;
    bottom: 0;
    width: 100%;
  }
  .reservation .js-half-modal-container .reserve-submit-double button {
    width: 100%;
  }
  .reservation .phone-box .js-half-modal-container,
  .reservation .home .js-half-modal-container {
    border-radius: 0;
  }
  .reservation .phone-box .js-half-modal-container .half-modal-head-wrap,
  .reservation .home .js-half-modal-container .half-modal-head-wrap {
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
            box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
    z-index: 1;
  }
  .reservation .phone-box .js-half-modal-container .half-modal-head,
  .reservation .home .js-half-modal-container .half-modal-head {
    padding: 16px 0 6px;
    border-radius: 0;
  }
  .reservation .phone-box .js-half-modal-container .js-half-modal-close,
  .reservation .home .js-half-modal-container .js-half-modal-close {
    top: -4px;
    right: 10px;
  }
  .reservation .phone-box .js-half-modal-container .half-modal-content,
  .reservation .home .js-half-modal-container .half-modal-content {
    height: calc(100% - 132px) !important;
    position: relative;
    margin: 102px 0 0;
    padding: 0 16px 0 16px !important;
    overflow: auto;
    border: none;
    border-bottom: 1px solid #F5F5F5 !important;
  }
  .reservation .phone-box .js-half-modal-container .half-modal-content ul,
  .reservation .home .js-half-modal-container .half-modal-content ul {
    border: none;
    width: 100%;
    overflow: hidden;
    padding-top: 10px;
  }
  .reservation .phone-box .js-half-modal-container .half-modal-content ul li,
  .reservation .home .js-half-modal-container .half-modal-content ul li {
    border: 1px solid #F5F5F5;
    border-top: none;
  }
  .reservation .phone-box .js-half-modal-container:before,
  .reservation .home .js-half-modal-container:before {
    background: #fff;
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 20px;
    left: 0;
    z-index: 1;
  }
  .reservation .phone-box .js-half-modal-container:after,
  .reservation .home .js-half-modal-container:after {
    background: #fff;
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 20px;
    right: 0;
    z-index: 1;
  }
  .reservation .coupon-code-modal .modal-container,
  .reservation .relux-point-modal .modal-container,
  .reservation .ponta-point-modal .modal-container {
    width: calc(100% - 32px);
    display: block;
    margin: auto;
    height: auto;
    border-radius: 4px;
  }
  .reservation .coupon-code-modal .common-modal-inner,
  .reservation .relux-point-modal .common-modal-inner,
  .reservation .ponta-point-modal .common-modal-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
  }
  .reservation .coupon-list .coupon-data-sub span + span {
    margin-left: -16px;
  }
  .coupon-code-modal .modal-container {
    padding: 32px !important;
    max-width: 520px !important;
  }
  .relux-point-modal .modal-container,
  .ponta-point-modal .modal-container {
    max-width: 420px !important;
  }
}

@media screen and (min-width: 768px) {
  .reservation .p-c-ttl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .reservation .coupon-list .coupon-terms {
    display: block;
  }
  .reservation .coupon-list .coupon-terms dt {
    width: auto !important;
    float: none;
  }
  .reservation .coupon-list .coupon-terms dd {
    float: none;
    width: auto;
  }
  .reservation .reserve-input-point {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .reservation .reserve-input-point input {
    width: 200px;
  }
  .reservation .reserve-input-point .input-error-word {
    padding-left: 150px;
  }
  .reservation .relux-point-modal,
  .reservation .ponta-point-modal {
    max-width: 480px !important;
  }
  .reservation .common-modal .disclaimer .modal-container {
    max-width: 700px;
    height: 80vh;
    overflow-y: auto;
    margin: 10vh auto;
  }
}

/*
  以下、「支払い方法」エリア専用Style
*/
.reservation .hotel-grade.js-tips-content {
  border: 1px solid #F5F5F5;
  border-radius: 8px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  top: 32px;
  left: 94px;
  overflow: hidden;
  top: 32px;
  left: 94px;
}

.reservation .js-tips-content .upper {
  padding: 10px 10px 8px 10px;
}

.reservation .js-tips-content .upper .contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reservation .js-tips-content .upper .lead .inner ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  line-height: 1;
}

.reservation .label-with-cards {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 0;
}

.reservation .card-icons {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reservation .js-radio-acd-content-c .label-with-cards {
  margin-bottom: 10px;
}

.reservation .select-payment .radio-disabled .label-with-cards .card-icons {
  display: none;
}

.reservation .select-payment .radio-disabled small {
  color: #757575;
}

@media (max-width: 767px) {
  .reservation .select-payment .input-box label + .ml-32 {
    margin-left: 27px !important;
  }
}

@media screen and (max-width: 400px){
  .reservation .coupon-list .coupon-data-sub .font-large {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 360px){
  .reservation .coupon-list .coupon-data-sub .font-large {
    font-size: 1rem;
  }
}

.reservation .form-validation .input-box-birth > div,
.reservation .form-validation .input-box-checkin > div,
.reservation .member-form-validation .input-box-birth > div,
.reservation .member-form-validation .input-box-checkin > div {
  margin-right: 4px;
  width: 50px;
}

.reservation .form-validation .input-box-birth > div:last-of-type,
.reservation .form-validation .input-box-checkin > div:last-of-type,
.reservation .member-form-validation .input-box-birth > div:last-of-type,
.reservation .member-form-validation .input-box-checkin > div:last-of-type {
  margin-left: 12px;
}

@media screen and (max-width: 767px) {
  .reservation .hotel-grade.js-tips-content {
    width: auto;
    left: 78px;
    top: -102px;
  }
  .reservation .hotel-grade.js-tips-content .upper .lead .inner {
    margin-top: 0;
  }
  .reservation .hotel-grade.js-tips-content .upper:before {
    content: none;
  }
}

/*
  クレジット決済ページ
*/
.payment-form .right-info-price .mt-32.mb-32 {
  border-top: 1px solid #F5F5F5;
  border-bottom: 1px solid #F5F5F5;
  margin: 16px 0 !important;
  padding: 16px 0;
}

.payment-form .reserve-data-box .notice {
  border-top: 2px solid #F5F5F5;
}

.payment-form .reserve-total-box .note {
  border-top: 2px solid #F5F5F5;
}

@media (max-width: 767px) {
  .payment-form {
    background: none;
  }
  .payment-form .wrap {
    padding: 0;
  }
  .payment-form .wrap > h2 {
    padding: 16px 16px 24px;
  }
  .payment-form .mp-member-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .payment-form .validation-wrap > div {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .payment-form .reserve-total-box > .d-flex {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .payment-form .reserve-data-right {
    width: 100%;
    position: static;
    display: block;
    margin-bottom: 0;
    padding: 0 16px;
  }
  .payment-form .right-info-price .mt-32.mb-32 {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
    margin: 8px 0 !important;
    padding: 8px 0;
  }
  .payment-form .right-info-detail {
    background: #F5F5F5;
    margin-bottom: 10px;
  }
  .payment-form .right-info-detail .font-x-large {
    font-size: 2rem;
  }
  .payment-form .reserve-data-box {
    padding-bottom: 0 !important;
  }
  .payment-form .reserve-data-box h3 {
    font-size: 2rem;
  }
  .payment-form .reserve-data-box .input-name-wrap > li:nth-child(2) .label {
    display: none;
  }
  .payment-form .reserve-data-box .notice {
    width: 100vw;
    margin: 24px 0;
    margin-left: -16px;
    padding: 24px 16px !important;
    border-top: 4px solid #F5F5F5;
    border-bottom: 4px solid #F5F5F5;
  }
  .payment-form .reserve-total-box .note {
    margin-top: 24px !important;
    border-top: 2px solid #F5F5F5;
  }
}

.payment-form .small-wrap {
  max-width: 600px;
}

.payment-form .detail-box {
  margin-bottom: 24px;
}

.payment-form .detail-box > div {
  padding: 20px;
  border-top: 1px solid #C6C6C6;
}

.payment-form .detail-box > div:last-child {
  border-bottom: 1px solid #C6C6C6;
}

.payment-form .detail-box .d-flex > div:first-child {
  width: 150px;
  font-weight: bold;
}

.payment-form .detail-box .d-flex:last-child {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 767px) {
  .payment-form .small-wrap {
    padding: 0 16px;
  }
  .payment-form .small-wrap h2 {
    padding: 24px 0 !important;
  }
  .payment-form .detail-box {
    margin-bottom: 16px;
    padding: 0 16px;
  }
  .payment-form .detail-box > div {
    padding: 8px 0;
  }
  .payment-form .detail-box .d-flex:first-of-type:first-child {
    display: block;
    border: none;
  }
  .payment-form .detail-box .d-flex:first-of-type > div {
    padding: 8px 0;
  }
  .payment-form .detail-box .d-flex:first-of-type > div:first-child {
    width: auto;
    font-size: 2rem;
  }
  .payment-form .detail-box .d-flex:first-of-type > div:last-child {
    text-align: left;
  }
  .payment-form .detail-box .d-flex > div {
    padding: 8px 0;
  }
  .payment-form .detail-box .d-flex > div:first-child {
    width: 80px;
  }
  .payment-form .detail-box .d-flex > div:last-child {
    width: calc(100% - 80px);
    text-align: right;
  }
  .payment-form .detail-box .d-flex .font-large {
    font-size: 2rem !important;
  }
  .payment-form .notice {
    padding: 0 16px;
  }
}

.payment-form .expired-content > div {
  min-height: 400px;
}

.payment-form .expired-content .reserve-data-box {
  min-height: 400px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 767px) {
  .payment-form .expired-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .payment-form .expired-content > div {
    min-height: 0;
  }
  .payment-form .expired-content .right-info-detail {
    background: none;
  }
  .payment-form .expired-content .reserve-data-right {
    padding: 0;
  }
  .payment-form .expired-content .reserve-data-box {
    background: #F5F5F5;
    margin: 0 16px 0 !important;
    padding: 24px 16px !important;
    min-height: 0 !important;
  }
  .payment-form .expired-content .reserve-data-box h2 {
    text-align: center;
    font-size: 1.6rem;
  }
  .payment-form .expired-content .reserve-data-box .p-40 {
    padding: 0 !important;
  }
}

.payment-form .closed-content .reserve-data-box {
  height: 148px;
  margin-bottom: 24px !important;
  border: none;
}

.register-input input[type=text],
.register-input input[type=number],
.register-input input[type=tel],
.register-input input[type=email] {
  width: 100%;
}

.register-input input[type="radio"],
.register-input input[type="checkbox"] {
  border: none;
}

.register-input .color-gray-2 a {
  color: inherit;
  text-decoration: underline;
}

.register-input .color-gray-2 a:hover {
  text-decoration: none;
}

.register-input .content-edit .input-box .select-dropdown-search ul {
  position: relative;
  top: 8px;
  border: 1px solid #F5F5F5;
}

.register-input .sns-lead {
  font-size: 1.6rem;
  font-weight: 900;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 16px;
}

.register-input .sns-login-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.register-input .sns-login-flex > div {
  margin-right: 20px;
}

.register-input .sns-login-flex > div:last-of-type {
  margin-right: 0;
}

.register-input .sns-annotation {
  color: #757575;
  font-size: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.register-input .sns-annotation > li {
  padding-left: 12px;
  position: relative;
}

.register-input .sns-annotation > li::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}

.register-input .btnWithIcon {
  width: 311px;
}

.register-input .lead {
  font-size: 1.6rem;
  margin-bottom: 40px;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.register-input .lead.text-left {
  text-align: left;
}

.register-input .lead > span {
  margin-top: 8px;
}

.register-input .input-name-wrap {
  max-width: 528px;
}

.register-input .input-name-wrap li {
  width: calc(50% - 8px);
}

.register-input #postal-code {
  max-width: 126px !important;
}

.register-input #home-address {
  max-width: 544px;
}

.register-input #mail {
  max-width: 348px;
}

.register-input #phone-number {
  max-width: 150px;
}

.register-input #anniversary {
  max-width: 126px;
}

.register-input #birth {
  max-width: 192px;
}

.register-input .prefectures .options {
  max-width: 126px;
}

.register-input .content-edit.wrap {
  max-width: 528px;
  padding-bottom: 90px;
}

.register-input .content-edit.wrap .input-box {
  max-width: 915px;
}

.register-input .content-edit.wrap .input-box.prefectures {
  display: none;
}

.register-input .content-edit.wrap .input-box.prefectures.active {
  display: block;
}

.register-input .content-edit.wrap .input-box.phone-box.abs {
  padding-bottom: 91px;
}

.register-input .content-edit.wrap .input-box .des {
  margin-top: -10px;
  margin-bottom: 18px;
}

.register-input .content-edit.wrap .input-box input[type=text] {
  width: 100%;
}

.register-input .content-edit.wrap .input-box input[type=text].birth {
  max-width: 159px;
}

.register-input .content-edit.wrap .input-box input[type=text].postal-code {
  max-width: 96px;
}

.register-input .content-edit.wrap .input-box input[type=text].home-address {
  max-width: 544px;
}

.register-input .content-edit.wrap .input-box input[type=text].phone-number {
  max-width: 160px;
}

.register-input .content-edit.wrap .input-box input[type=text].mail {
  max-width: 351px;
}

.register-input .content-edit.wrap .input-box input[type=text].anniversary {
  max-width: 109px;
}

.register-input .content-edit.wrap .input-box .check-box label {
  font-size: 1.6rem;
}

.register-input .content-edit.wrap .input-box label {
  margin-right: 32px;
}

.register-input .content-edit.wrap .input-box p:last-of-type.check-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.register-input .content-edit.wrap .input-box p:last-of-type.check-box label {
  margin-right: 0;
  margin-bottom: 8px;
  width: 33.3333%;
}

.register-input .content-edit.wrap .input-box .input-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.register-input .content-edit.wrap .input-box .input-area .double-input {
  width: 256px;
}

.register-input .content-edit.wrap .input-box .input-area .double-input.first {
  margin-right: 32px;
}

.register-input .content-edit.wrap .input-box .input-area .double-input input.text-double {
  width: 256px;
}

.register-input .content-edit.wrap .input-box .select-dropdown.prefectures {
  width: 106px;
}

.register-input .content-edit.wrap .input-box .select-dropdown .dropdown-select-button::before, .register-input .content-edit.wrap .input-box .select-dropdown .dropdown-select-button::after {
  right: 5px;
}

.register-input .content-edit.wrap .input-box .select-dropdown .select-frame {
  color: #333;
}

.register-input .content-edit.wrap .input-box .phone-number-before {
  position: relative;
}

.register-input .content-edit.wrap .input-box .phone-number-before.abs {
  padding-bottom: 53px;
}

.register-input .content-edit.wrap .input-box .phone-number-before .phone {
  display: none;
}

.register-input .content-edit.wrap .input-box .phone-number-before .phone.active {
  display: block;
  padding-bottom: 20px;
}

.register-input .content-edit.wrap .input-box .phone-number-before > .input-block.abs {
  position: absolute;
  top: 0;
  left: 136px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search {
  width: 288px;
  display: inline-block;
  position: relative;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .dropdown {
  display: none;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul, .register-input .content-edit.wrap .input-box .select-dropdown-search li, .register-input .content-edit.wrap .input-box .select-dropdown-search span {
  -webkit-user-select: none;
  -moz-user-select: none;
  /*firefox*/
  -ms-user-select: none;
      user-select: none;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul {
  margin: 0px;
  padding: 0px;
  width: 100%;
  max-height: 400px;
  border: 1px solid #C6C6C6;
  -webkit-box-shadow: none;
          box-shadow: none;
  display: none;
  list-style: none;
  z-index: 2;
  overflow: auto;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul li {
  padding-left: 36px;
  height: 40px;
  border: 1px solid #F5F5F5;
  border-top: none;
  background-color: #FFFFFF;
  font-size: 1.6rem;
  line-height: 40px;
  cursor: pointer;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul li span {
  color: #757575;
  font-size: 0.875rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul li:hover {
  background-color: #f5f5f5;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul li.active {
  background-color: #F3F8FD;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul li.title {
  padding-left: 11px;
  color: #757575;
  background-color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: left;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search ul.active {
  display: block;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search span.select-frame {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 9px 16px;
  width: 100%;
  display: block;
  color: #333;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search span.select-frame.phone-txt {
  width: 126px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area {
  display: none;
  position: relative;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area.active {
  display: block;
  width: 100%;
  height: 40px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area.on {
  border-top-color: #0f0a64;
  border-left-color: #0f0a64;
  border-right-color: #0f0a64;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area img {
  top: 12px;
  left: 11px;
  position: absolute;
  cursor: pointer;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area input {
  padding: 12px 11px 11px 36px;
  font-size: 1.2rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area input ::-webkit-input-placeholder {
  font-size: 1.6rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area input :-ms-input-placeholder {
  font-size: 1.6rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area input ::-ms-input-placeholder {
  font-size: 1.6rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .search-area input ::placeholder {
  font-size: 1.6rem;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button::before, .register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button::after {
  content: '';
  background-color: #333333;
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 5px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.home::before, .register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.home::after {
  right: 12px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.phone-btn::before, .register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.phone-btn::after {
  right: 14px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button::after {
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.active::before {
  margin-right: 8px;
  -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
  transform: scale(0.96, 0.8) rotate(-50deg);
}

.register-input .content-edit.wrap .input-box .select-dropdown-search div.dropdown-select-button.active::after {
  -webkit-transform: scale(0.96, 0.8) rotate(50deg);
  transform: scale(0.96, 0.8) rotate(50deg);
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .phone-btn {
  right: 162px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .dropdown-hidden {
  padding: 16px;
  -webkit-box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
          box-shadow: 4px 8px 16px rgba(0, 0, 0, 0.1);
  display: none;
  width: 288px;
  height: 482px;
  left: 0;
  top: 56px;
  background: #FFF;
  z-index: 1;
  border-radius: 8px;
}

.register-input .content-edit.wrap .input-box .select-dropdown-search .dropdown-hidden.active {
  display: block;
}

.register-input .content-edit.wrap .save-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767px) {
  .register-input .sns-login-flex {
    display: block;
  }
  .register-input .sns-login-flex > div {
    margin-right: 0;
  }
  .register-input .sns-annotation {
    margin-top: 16px;
  }
  .register-input .btnWithIcon {
    width: 100%;
  }
  .register-input .lead {
    text-align: left;
    margin-bottom: 20px;
  }
  .register-input .content-edit.wrap {
    padding-left: 0;
    padding-right: 0;
  }
  .register-input .js-half-modal-container {
    height: 101%;
    border-radius: 0;
  }
  .register-input .js-half-modal-container.hide {
    display: none;
  }
  .register-input .js-half-modal-container .half-modal-head {
    padding: 11px 0;
  }
  .register-input .js-half-modal-container .js-half-modal-close {
    top: -1px;
    right: 16px;
  }
  .register-input .content-edit .input-box.prefectures {
    display: none;
  }
  .register-input .content-edit .input-box.prefectures.active {
    display: block;
  }
  .register-input .content-edit .input-box input[type=text] {
    width: 100%;
  }
  .register-input .content-edit .input-box input[type=text].birth {
    max-width: 169px;
  }
  .register-input .content-edit .input-box input[type=text].postal-code {
    max-width: 109px;
  }
  .register-input .content-edit .input-box input[type=text].phone-number {
    max-width: 160px;
  }
  .register-input .content-edit .input-box input[type=text].anniversary {
    max-width: 109px;
  }
  .register-input .content-edit .input-box input.text-double.first {
    margin-bottom: 23px;
  }
  .register-input .content-edit .input-box .input-area .double-input.first {
    margin-bottom: 21px;
  }
  .register-input .content-edit .input-box .radios {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .register-input .content-edit .input-box .radios label {
    margin-bottom: 14px;
    width: 100%;
  }
  .register-input .content-edit .input-box .radios label:last-of-type {
    margin-bottom: 0;
  }
  .register-input .content-edit .input-box p:last-of-type.check-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .register-input .content-edit .input-box p:last-of-type.check-box label {
    margin-right: 0;
    margin-bottom: 22px;
    width: 50%;
    font-size: 1.4rem;
  }
  .register-input .content-edit .input-box p:last-of-type input.text-double {
    width: 100%;
  }
  .register-input .content-edit .input-box .select-dropdown {
    min-width: 99px;
    width: auto;
  }
  .register-input .content-edit .input-box .select-dropdown::before, .register-input .content-edit .input-box .select-dropdown::after {
    content: '';
    background-color: #333333;
    display: block;
    position: absolute;
    width: 14px;
    height: 2px;
    top: 30%;
    right: 5px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .register-input .content-edit .input-box .select-dropdown::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .register-input .content-edit .input-box .select-dropdown::after {
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .register-input .content-edit .input-box .select-dropdown.active::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .register-input .content-edit .input-box .select-dropdown.active::after {
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .register-input .content-edit .input-box .select-dropdown .dropdown {
    padding-bottom: 8px;
    width: 106px;
    border-top: none;
    border-right: none;
    border-left: none;
    display: block;
    border-bottom: 1px solid #C6C6C6;
    color: #333;
    background-color: #ffffff;
    font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1.4rem;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
  }
  .register-input .content-edit .input-box .phone-number-before.sp-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .register-input .content-edit .input-box .phone-number-before .select-dropdown-search {
    margin-right: 10px;
  }
  .register-input .content-edit .input-box .phone-number-before .phone {
    display: none;
  }
  .register-input .content-edit .input-box .phone-number-before .phone.active {
    display: block;
  }
  .register-input .content-edit .input-box .phone-number-before > .input-block.abs {
    max-width: 160px;
    display: inline-block;
    vertical-align: top;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp {
    display: inline-block;
    position: relative;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp.phone {
    margin-right: 8px;
    width: 126px;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown {
    display: none;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul, .register-input .content-edit .input-box .select-dropdown-search-sp li, .register-input .content-edit .input-box .select-dropdown-search-sp span {
    -webkit-user-select: none;
    -moz-user-select: none;
    /*firefox*/
    -ms-user-select: none;
        user-select: none;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul {
    margin: 0px;
    padding: 0px;
    width: 100%;
    border-radius: 0 0 4px 4px;
    border: 1px solid #C6C6C6;
    list-style: none;
    z-index: 2;
    overflow: auto;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul li {
    padding-left: 36px;
    height: 40px;
    border: 1px solid #F5F5F5;
    border-top: none;
    background-color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 40px;
    cursor: pointer;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul li span {
    color: #757575;
    font-size: 0.875rem;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul li.active {
    background-color: #F3F8FD;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp ul li.title {
    padding-left: 11px;
    color: #757575;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .half-modal-content {
    height: calc(100% - 38px);
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .search-wrap {
    padding: 0 16px 8px 16px;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area {
    margin-top: 8px;
    position: relative;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area.on {
    border-top-color: #0f0a64;
    border-left-color: #0f0a64;
    border-right-color: #0f0a64;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area img {
    top: 15px;
    left: 11px;
    position: absolute;
    cursor: pointer;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .search-wrap .search-area input {
    padding: 13px 12px 13px 36px;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button {
    width: 100%;
    cursor: pointer;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::before, .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::after {
    content: '';
    background-color: #333333;
    display: block;
    position: absolute;
    width: 14px;
    height: 2px;
    top: 50%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button::after {
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button.active::before {
    margin-right: 8px;
    -webkit-transform: scale(0.96, 0.8) rotate(-50deg);
    transform: scale(0.96, 0.8) rotate(-50deg);
  }
  .register-input .content-edit .input-box .select-dropdown-search-sp .dropdown-select-button.active::after {
    -webkit-transform: scale(0.96, 0.8) rotate(50deg);
    transform: scale(0.96, 0.8) rotate(50deg);
  }
  .register-input .content-edit .save-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .register-input .half-modal-content {
    padding-top: 112px !important;
  }
  .register-input .half-modal-head {
    position: static;
  }
  .register-input .half-modal-head-wrap {
    position: fixed;
    top: 0;
    width: 100%;
    background: #FFF;
  }
  .register-input .js-fixed {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
            box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid red;
  }
  .register-input .home .js-half-modal-trigger {
    width: 242px !important;
  }
  .register-input .input-name-wrap {
    display: block;
  }
  .register-input .input-name-wrap > li {
    width: 100%;
    max-width: 342px;
  }
}

.mailform-modal,
.mailform-authcode-modal {
  max-width: 700px;
}

.mailform-caution-modal {
  background: rgba(198, 198, 198, 0.7);
  max-width: none;
  width: 100%;
}

.mailform-caution-modal .modal-container {
  max-width: 440px;
  margin: 0 auto;
}

.mailform-caution-modal .btn-double {
  margin-top: 24px;
}

.mailform-caution-modal .btn-double > a {
  width: calc(50% - 24px);
}

.content-edit .authenticated-text {
  display: none;
  margin: 40px auto;
  padding: 4px 16px;
}

.content-edit .authenticated-text strong {
  margin-right: 4px;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .mailform-modal .modal-container {
    padding: 94px 40px;
    border-radius: 8px;
  }
  .mailform-authcode-modal .modal-container {
    padding: 31px 40px;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 8px;
  }
}

@media screen and (max-width: 767px) {
  .mailform-caution-modal .js-modal-close {
    display: none;
  }
  .mailform-caution-modal .modal-container {
    max-width: none;
    height: auto;
    width: 94%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    border-radius: 8px;
  }
  .content-edit .authenticated-text {
    margin: 30px auto;
  }
}

.register-confirm.wrap {
  padding-top: 24px;
  padding-bottom: 160px;
}

.register-confirm .title {
  margin-bottom: 16px;
  text-align: center;
}

.register-confirm .lead {
  font-size: 1.6rem;
  margin-bottom: 24px;
  text-align: center;
}

.register-confirm .table-basic {
  margin-bottom: 40px;
}

.register-confirm .table-basic th, .register-confirm .table-basic td {
  font-size: 1.6rem;
}

.register-confirm .register-data-wrap {
  width: 670px;
  margin: 0 auto;
}

.register-confirm .register-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 670px;
}

.register-confirm .register-data dt {
  width: 170px;
}

.register-confirm .register-data dd {
  width: 500px;
}

.register-confirm .register-data p {
  margin-bottom: 0;
}

.register-confirm .form-notice {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.2rem;
}

.register-confirm .form-notice > p {
  margin-bottom: 0;
}

.register-confirm .form-notice a {
  color: inherit;
  text-decoration: underline;
}

.register-confirm .form-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 16px;
}

.register-confirm .form-btns > a {
  min-width: 176px;
  margin-right: 16px;
}

.register-confirm .form-btns > a:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .register-confirm.wrap {
    padding-top: 16px;
    padding-bottom: 80px;
  }
  .register-confirm .title {
    font-size: 2.4rem;
    margin-bottom: 8px;
    text-align: left;
  }
  .register-confirm .lead {
    margin-bottom: 1.6rem;
    text-align: left;
  }
  .register-confirm .table-basic {
    margin-bottom: 16px;
  }
  .register-confirm .register-data-wrap {
    width: 100%;
  }
  .register-confirm .register-data {
    width: 100%;
  }
  .register-confirm .register-data dt {
    -webkit-flex-basis: 30%;
        -ms-flex-preferred-size: 30%;
            flex-basis: 30%;
    line-height: 2.5;
    font-size: 1.2rem;
    font-weight: 900;
  }
  .register-confirm .register-data dd {
    -webkit-flex-basis: 68%;
        -ms-flex-preferred-size: 68%;
            flex-basis: 68%;
    font-size: 1.6rem;
  }
  .register-confirm .register-data .font-default {
    font-size: 1.2rem;
  }
  .register-confirm .form-notice {
    font-size: 1.4rem;
  }
  .register-confirm .form-btns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 16px;
  }
  .register-confirm .form-btns > a {
    width: 100%;
    min-width: 134px;
    margin-right: 8px;
  }
}

@media screen and (min-width: 768px) {
  .register-confirm .table-basic th {
    background-color: unset;
  }
}

.social-confirm .content {
  text-align: center;
}

.social-confirm .gmail-address {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 8px 16px;
}

@media screen and (max-width: 767px) {
  .social-confirm .form-notice {
    font-size: 1.0rem;
    letter-spacing: 0;
  }
  .social-confirm .form-notice br {
    display: none;
  }
}

@media screen and (max-width: 400px) {
  .social-confirm .content {
    text-align: left;
  }
  .social-confirm .gmail-address {
    width: 100%;
  }
}

.au-register .auSmartpass {
  padding-top: 80px;
}

.au-register .auSmartpass .smartpassPremiumLogo {
  width: auto;
  height: 40px;
  margin: 0 auto 40px;
}

.au-register .auSmartpass .general h2 {
  font-size: 3.6rem;
  font-weight: 300;
  color: #0f0a64;
}

.au-register .auSmartpass .general .border-red {
  border: 1px solid #FF503E;
  width: 40px;
  margin: 16px auto;
}

.au-register .auSmartpass .box-1 {
  max-width: 1120px;
  height: 576px;
  margin: 0 auto 80px;
  position: relative;
}

.au-register .auSmartpass .box-1 .photo {
  position: relative;
  width: 100%;
  height: 500px;
  background: url(/stcontents/img/sub-page/au-register/au_hello_01.jpg) no-repeat center center;
  background-size: cover;
}

.au-register .auSmartpass .box-1 .photo .wave-white {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}

.au-register .auSmartpass .box-1 .text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: 0;
}

.au-register .auSmartpass .box-1 .text .mincho {
  margin-right: 32px;
  font-size: 9.2rem;
  line-height: 9.2rem;
  color: #E1E9F8;
  font-family: "ヒラギノ明朝 W3", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.au-register .auSmartpass .box-1 .text .font-large {
  margin-bottom: 0;
}

.au-register .auSmartpass .benefits-info {
  max-width: 1120px;
  margin: 0 auto 80px;
  padding: 32px;
  background: url(/stcontents/img/sub-page/au-register/bg-benefits-top.png) no-repeat left top, url(/stcontents/img/sub-page/au-register/bg-benefits-bottom.png) no-repeat right bottom;
  background-color: #0f0a64;
  color: #fff;
}

.au-register .auSmartpass .benefits-info h3 {
  font-size: 2.6rem;
  margin-bottom: 16px;
}

.au-register .auSmartpass .benefits-info .info-text {
  font-size: 1.6rem;
}

.au-register .auSmartpass .benefits-info .annotaton {
  color: #c6c6c6;
  font-size: 1.2rem;
}

.au-register .auSmartpass .benefits-info .annotaton a {
  color: #c6c6c6;
}

.au-register .auSmartpass .box-2 {
  max-width: 1120px;
  height: 656px;
  margin: 0 auto 160px;
  position: relative;
}

.au-register .auSmartpass .box-2 .photo {
  position: relative;
  width: 100%;
  height: 500px;
  background: url(/stcontents/img/sub-page/au-register/au_hello_02.jpeg) no-repeat center center;
  background-size: cover;
}

.au-register .auSmartpass .box-2 .photo .wave-white {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
}

.au-register .auSmartpass .box-2 .text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: 40px;
}

.au-register .auSmartpass .box-2 .text .mincho {
  margin-right: 32px;
  font-size: 9.2rem;
  line-height: 9.2rem;
  color: #E1E9F8;
  font-family: "YuMincho", "ヒラギノ明朝 W3", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.au-register .auSmartpass .box-2 .text .font-large {
  margin-bottom: 0;
}

@media (max-width: 1120px) {
  .au-register .auSmartpass {
    padding: 80px 16px 0;
  }
  .au-register .auSmartpass .smartpassPremiumLogo {
    height: 24px;
  }
  .au-register .auSmartpass .general h2 {
    font-size: 2.6rem;
  }
  .au-register .auSmartpass .box-1 {
    height: 560px;
  }
  .au-register .auSmartpass .box-1 .photo .wave-white {
    height: 140px;
    width: auto;
  }
  .au-register .auSmartpass .box-1 .text .mincho {
    font-size: 4.8rem;
    line-height: 4.8rem;
    margin-right: 16px;
    width: 64px;
    color: #A6BCE9;
  }
  .au-register .auSmartpass .box-1 .text .mincho .font-large {
    font-size: 2rem;
  }
  .au-register .auSmartpass .box-1 .text div {
    width: calc(100% - 72px);
  }
  .au-register .auSmartpass .benefits-info h3 {
    font-size: 2rem;
  }
  .au-register .auSmartpass .benefits-info .info-text {
    font-size: 1.4rem;
  }
  .au-register .auSmartpass .benefits-info .annotaton {
    font-size: 1rem;
  }
  .au-register .auSmartpass .box-2 {
    height: 650px;
  }
  .au-register .auSmartpass .box-2 .photo .wave-white {
    height: 100px;
    width: auto;
  }
  .au-register .auSmartpass .box-2 .text .mincho {
    font-size: 4.8rem;
    line-height: 4.8rem;
    margin-right: 16px;
    width: 64px;
    color: #A6BCE9;
  }
  .au-register .auSmartpass .box-2 .text .mincho .font-large {
    font-size: 2rem;
  }
  .au-register .auSmartpass .box-2 .text div {
    width: calc(100% - 72px);
  }
}

@media (max-width: 767px) {
  .au-register .auSmartpass {
    padding: 100px 0 0;
  }
  .au-register .auSmartpass .box-1 {
    height: 600px;
  }
  .au-register .auSmartpass .box-2 {
    height: 650px;
  }
  .au-register .auSmartpass .box-2 .text {
    bottom: 0;
  }
  .au-register .auSmartpass .text {
    padding: 0 16px;
  }
}

.anamileagemall {
  /* pc */
  /* sp */
}

.anamileagemall .key-visual {
  height: 600px;
}

.anamileagemall .key-visual .main-title h1,
.anamileagemall .key-visual .main-title .sub {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.anamileagemall .social-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.anamileagemall .social-btn > div:nth-child(1) {
  margin-right: 10px;
}

.anamileagemall .sns {
  text-align: right;
  padding: 16px 0;
}

.anamileagemall .introduction .overview-box {
  background: url(/stcontents/img/sub-page/anamileagemall/bg-overview.gif) repeat;
}

.anamileagemall .introduction .overview-box .box-inner {
  background-color: #FFFFFF;
}

.anamileagemall .atteniton {
  margin-bottom: 30px;
}

.anamileagemall .atteniton .title-header {
  margin-bottom: 60px;
  text-align: center;
}

.anamileagemall .atteniton .title {
  margin-bottom: 60px;
}

.anamileagemall .atteniton .title p {
  margin-bottom: 60px;
  padding: 0px 0px .5em .5em;
  border-bottom: 1px solid #F38B25;
  line-height: 1.5;
  letter-spacing: 3px;
}

.anamileagemall .atteniton .attention-list {
  margin-top: 20px;
}

.anamileagemall .atteniton .attention-list li {
  margin-left: 20px;
  margin-bottom: 4px;
  list-style-type: disc;
}

.anamileagemall .atteniton .attention-list:nth-child(1) {
  margin-bottom: 90px;
}

.anamileagemall .footer-regist {
  padding: 10px 0;
  margin-bottom: 0;
  background-color: #EFEFEF;
}

.anamileagemall .footer-regist div.regist-area {
  position: relative;
  bottom: 0;
}

.anamileagemall .footer-regist div.regist-area p.txt a {
  color: #333;
}

@media screen and (min-width: 768px) {
  .anamileagemall div.regist-area {
    margin: 0 auto;
    padding-bottom: 20px;
    width: 100%;
    max-width: 900px;
    background: none;
    border: none;
    text-align: center;
  }
  .anamileagemall div.regist-area .headline {
    margin-bottom: 24px;
  }
  .anamileagemall div.regist-area div.registBoxWrap {
    display: table;
    width: 100%;
  }
  .anamileagemall div.regist-area div.registBoxWrap > div {
    display: table-cell;
    vertical-align: bottom;
    width: 33.333333%;
    padding: 0 10px;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput {
    width: 100%;
    height: 44px;
    display: table;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput > input {
    margin-right: 0;
    width: 100%;
    height: 44px;
    display: table-cell;
    padding: 0 3%;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput > a {
    padding: 7px 24px;
    height: 44px;
    display: table-cell;
  }
  .anamileagemall div.regist-area p.txt {
    margin: 15px 0;
  }
  .anamileagemall div.regist-area p.txt a {
    color: #fff;
    border-bottom: 1px solid;
    padding-bottom: 1px;
  }
  .anamileagemall div.regist-area p.txt a:hover {
    border: none;
  }
  .anamileagemall .key-visual {
    background-image: url(/stcontents/img/sub-page/anamileagemall/bg-dot.png), url(/stcontents/img/sub-page/anamileagemall/bg-regist.png), url(/stcontents/img/sub-page/anamileagemall/bg-main-visual.jpg);
    background-repeat: repeat,repeat-x,no-repeat;
    background-position: 0 0, center bottom, center bottom;
    background-size: auto, auto, cover;
  }
  .anamileagemall .key-visual .my-inner {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    max-width: 1120px;
    width: 100%;
    padding: 0 16px;
  }
  .anamileagemall .key-visual .my-inner .main-title .logo-relux img {
    width: 350px;
    height: auto;
  }
  .anamileagemall .social-btn {
    margin-top: 30px;
  }
  .anamileagemall .introduction {
    margin-bottom: 30px;
    padding: 30px 0;
  }
  .anamileagemall .introduction .overview-box {
    padding: 10px;
  }
  .anamileagemall .introduction .overview-box .box-inner {
    padding: 50px 60px;
  }
  .anamileagemall .flow {
    margin-bottom: 30px;
  }
  .anamileagemall .flow .inner-wide {
    padding: 30px 5%;
  }
  .anamileagemall .flow .inner-wide .title-header {
    margin-bottom: 80px;
    text-align: center;
  }
  .anamileagemall .flow .flow-list {
    width: 100%;
    display: table;
    margin-bottom: 30px;
  }
  .anamileagemall .flow .flow-list li {
    margin-top: 0px;
    padding: 0 5%;
    width: 33%;
    display: table-cell;
  }
  .anamileagemall .flow .flow-list li .title span {
    color: #FBA21E;
  }
  .anamileagemall .hotel {
    margin-bottom: 30px;
  }
  .anamileagemall .hotel .entry-list .title-header {
    margin-bottom: 60px;
    text-align: center;
  }
  .anamileagemall .hotel .entry-list .entry {
    margin-bottom: 30px;
    float: left;
    width: 50%;
    height: 157px;
    overflow: hidden;
  }
  .anamileagemall .hotel .entry-list .entry .thum {
    width: 36%;
    float: left;
    margin-bottom: 0;
  }
  .anamileagemall .hotel .entry-list .entry .thum img {
    width: 100%;
    vertical-align: bottom;
  }
  .anamileagemall .hotel .entry-list .entry .info {
    width: 60%;
    float: right;
  }
  .anamileagemall .hotel .entry-list .entry .info .name {
    margin-bottom: 5px;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .anamileagemall .hotel .entry-list .entry .info .area {
    margin-bottom: 5px;
    padding-left: 15px;
    background: url(/stcontents/img/ranks/common/icon_map.png) no-repeat 0 50%;
    background-size: 10px auto;
  }
  .anamileagemall .hotel .entry-list .entry .info .copy {
    padding-right: 10px;
  }
}

@media screen and (max-width: 767px) {
  .anamileagemall div.regist-area {
    margin: 10px;
    padding: 16px 16px 0;
    border: 5px solid #DFDFDF;
    text-align: center;
  }
  .anamileagemall div.regist-area .headline {
    color: #333333;
  }
  .anamileagemall div.regist-area div.registBoxWrap {
    width: 100%;
  }
  .anamileagemall div.regist-area div.registBoxWrap > div {
    margin-bottom: 8px;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput {
    width: 100%;
    height: 44px;
    display: table;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput > input {
    margin-right: 0;
    padding: 0 3%;
    width: 100%;
    height: 44px;
    display: table-cell;
    border: 1px solid #CCCCCC;
  }
  .anamileagemall div.regist-area div.registBoxWrap .mailBox .mailInput > a {
    padding: 7px 24px;
    height: 44px;
    display: table-cell;
  }
  .anamileagemall div.regist-area p.txt {
    color: #333;
  }
  .anamileagemall div.regist-area p.txt a {
    border-bottom: 1px solid #555;
    padding-bottom: 1px;
    color: #555;
  }
  .anamileagemall div.regist-area p.loginBtn a {
    width: 100%;
  }
  .anamileagemall .key-visual {
    background: none;
  }
  .anamileagemall .key-visual .my-inner {
    padding: 0;
    width: 100%;
    height: 100%;
    position: relative;
    background-image: url(/stcontents/img/sub-page/anamileagemall/bg-dot.png), url(/stcontents/img/sub-page/anamileagemall/bg-main-visual.jpg);
    background-repeat: repeat,no-repeat;
    background-position: 0 0,  center bottom;
    background-size: auto,  cover;
    text-align: center;
  }
  .anamileagemall .key-visual .my-inner .main-title {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    max-width: 1120px;
    width: 100%;
    padding: 0 16px;
  }
  .anamileagemall .key-visual .my-inner .main-title .logo-relux {
    margin-bottom: 35px;
  }
  .anamileagemall .key-visual .my-inner .main-title .logo-relux img {
    width: 200px;
    height: auto;
  }
  .anamileagemall .key-visual .my-inner .main-title .logo {
    margin-bottom: 15px;
  }
  .anamileagemall .social-btn {
    margin-top: 15px;
  }
  .anamileagemall .introduction {
    margin-bottom: 15px;
    padding: 20px 0;
  }
  .anamileagemall .introduction .overview-box {
    padding: 10px;
  }
  .anamileagemall .introduction .overview-box .box-inner {
    padding: 20px;
  }
  .anamileagemall .flow {
    margin-bottom: 15px;
  }
  .anamileagemall .flow .inner-wide {
    padding: 20px 5%;
  }
  .anamileagemall .flow .inner-wide .title-header {
    margin-bottom: 30px;
    padding: 6px 0;
    text-align: center;
  }
  .anamileagemall .flow .flow-list li {
    margin-top: 30px;
  }
  .anamileagemall .flow .flow-list li .title span {
    color: #FBA21E;
  }
  .anamileagemall .flow .flow-list li p.txt {
    margin-bottom: 10px;
  }
  .anamileagemall .hotel {
    margin-bottom: 15px;
  }
  .anamileagemall .hotel .entry-list .title-header {
    margin-bottom: 30px;
    text-align: center;
  }
  .anamileagemall .hotel .entry-list .entry {
    margin-bottom: 30px;
  }
  .anamileagemall .hotel .entry-list .entry .thum {
    margin-bottom: 0;
    width: 36%;
    float: left;
  }
  .anamileagemall .hotel .entry-list .entry .thum img {
    width: 100%;
    vertical-align: bottom;
  }
  .anamileagemall .hotel .entry-list .entry .info {
    width: 60%;
    float: right;
  }
  .anamileagemall .hotel .entry-list .entry .info .name {
    margin-bottom: 5px;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .anamileagemall .hotel .entry-list .entry .info .area {
    margin-bottom: 5px;
    padding-left: 15px;
    background: url(/stcontents/img/ranks/common/icon_map.png) no-repeat 0 50%;
    background-size: 10px auto;
  }
  .anamileagemall .hotel .entry-list .entry .info .copy {
    padding-right: 10px;
  }
}

.applepay {
  /*pc*/
  /*sp*/
}

.applepay a {
  color: #555555;
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .applepay .top .description {
    margin-bottom: 32px;
  }
  .applepay .top .description .text-title {
    margin-bottom: 16px;
    line-height: 1.8;
    letter-spacing: 0px;
  }
  .applepay .top .description .text {
    line-height: 1.8;
    letter-spacing: 0px;
  }
}

@media screen and (max-width: 767px) {
  .applepay .top {
    padding: 20px;
  }
  .applepay .top .description {
    margin-bottom: 32px;
  }
  .applepay .top .description .text-title {
    margin-bottom: 16px;
    line-height: 1.8;
    letter-spacing: 0px;
  }
  .applepay .top .description .text {
    line-height: 1.8;
    letter-spacing: 0px;
  }
}

.gototravel {
  /* PC */
  /* SP */
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.gototravel .header-inner {
  -webkit-animation: fadeIn 1s 1s forwards;
          animation: fadeIn 1s 1s forwards;
  opacity: 0;
}

.gototravel a:hover {
  opacity: 0.8;
  text-decoration: none !important;
}

.gototravel .table-basic-border-none {
  border: none;
}

.gototravel .table-basic-border-none th, .gototravel .table-basic-border-none td {
  background: none;
  border: none;
}

.gototravel .mt-38 {
  margin-top: 38px;
}

.gototravel .icon-q, .gototravel .icon-a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 36px;
  height: 36px;
  border: solid 3px #1973b7;
  border-radius: 50%;
  letter-spacing: 0;
}

.gototravel .icon-q {
  background: #1973b7;
  color: #fff;
}

.gototravel .icon-a {
  background: none;
  color: #1973b7;
}

.gototravel .update {
  background: url(/stcontents/img/sub-page/gototravel/bg-update-sp.png) no-repeat 0 0;
  background-size: cover;
  width: 100%;
  border-radius: 4px;
  padding: 8px 8px;
}

.gototravel .update .heading {
  color: #fff;
  letter-spacing: 1px;
  text-align: left;
}

.gototravel .update .bg-white > ul {
  padding-left: 3rem;
}

.gototravel .update .bg-white > ul > li {
  line-height: 1.8;
}

.gototravel .update .bg-white > ul > li:before {
  content: "■";
  margin-right: 0.2em;
  margin-bottom: 0.2rem;
}

.gototravel .lead-box {
  background: #f0f9ff;
  color: #1873b7;
}

.gototravel .lead-box .area ul.disc > li {
  list-style-type: disc;
}

.gototravel .index-box {
  background: #efefef;
  border-radius: 4px;
}

.gototravel .index-box .inner-box {
  max-width: 910px;
  margin: 0 auto;
}

.gototravel .index-box .inner-box h1 {
  text-align: center;
}

.gototravel .index-box .inner-box dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.gototravel .index-box .inner-box dl dt {
  text-align: right;
  letter-spacing: 0;
}

.gototravel .index-box .inner-box a {
  color: #1675b9;
  text-decoration: underline;
}

.gototravel .detail-box h2 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .detail-box h3 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .detail-box p a {
  color: #1973b7;
  text-decoration: underline;
}

.gototravel .detail-box .box {
  background: #f0f9ff;
  border-radius: 10px;
  border: solid 4px #aac7da;
  color: #1873b7;
}

.gototravel .detail-box .box:before {
  content: "Go To トラベルキャンペーンは一時停止しております。";
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  font-weight: bold;
  color: #fff;
}

.gototravel .detail-box .box table th {
  vertical-align: top;
}

.gototravel .detail-box .box table th span {
  width: 133px;
  height: 36px;
  background-color: #1973b7;
  border-radius: 20px;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.gototravel .detail-box .discount-box a {
  color: #1973b7;
  text-decoration: underline;
}

.gototravel .detail-box .discount-box ul.normal {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.gototravel .detail-box .discount-box ul.note {
  margin-top: 14px;
  padding-left: 1.3em;
  text-indent: -1.3em;
  font-size: 1.4rem;
}

.gototravel .detail-box .discount-box .img-box {
  background: #f0f9ff;
  color: #1873b7;
  border-radius: 10px;
}

.gototravel .detail-box .discount-box .img-box img {
  max-width: 100%;
  height: auto;
}

.gototravel .goto-coupon a {
  color: #1973b7;
  text-decoration: underline;
}

.gototravel .goto-coupon h2 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .goto-coupon .square {
  padding-left: 1.5em;
}

.gototravel .goto-coupon .square > li {
  text-indent: -1.2em;
}

.gototravel .goto-coupon .square > li::before {
  content: "■";
  margin-right: 0.2em;
}

.gototravel .goto-coupon dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.gototravel .goto-coupon dl > dt {
  width: 133px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #1973b7;
  margin-top: 3px;
  color: #fff;
}

.gototravel .goto-coupon dl > dd {
  color: #1973b7;
}

.gototravel .goto-coupon dl > dd > h3 {
  margin-bottom: 24px;
}

.gototravel .goto-coupon dl > dd .box {
  border: none;
  overflow: hidden;
  background: #f0f9ff;
  border-radius: 10px;
}

.gototravel .goto-coupon dl > dd .box img {
  max-width: 100%;
  height: auto;
}

.gototravel .goto-coupon .warn-word {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .goto-coupon .note {
  margin-top: 14px;
  padding-left: 1.5em;
  line-height: 1.6;
}

.gototravel .goto-coupon .note > li {
  clear: both;
  list-style-type: disc;
  line-height: 1.6;
}

.gototravel .goto-coupon .note > li > .square-s {
  margin: 14px 0;
  padding-left: 1.4em;
  text-indent: 0;
}

.gototravel .goto-coupon .note > li > .square-s > li {
  list-style: square;
}

.gototravel .goto-coupon .nt-word {
  color: #1973b7;
}

.gototravel .steps {
  margin-bottom: 0 !important;
}

.gototravel .steps h2 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .steps > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 56px;
}

.gototravel .steps > dl dt, .gototravel .steps > dl dd {
  margin-bottom: 70px;
}

.gototravel .steps > dl dt {
  width: 133px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #1973b7;
  margin-top: 3px;
  color: #fff;
}

.gototravel .steps > dl dd .title {
  margin-bottom: 24px;
  color: #1973b7;
}

.gototravel .steps > dl dd .box {
  padding: 26px 40px 40px;
  border: none;
  overflow: hidden;
  background: #f0f9ff;
  color: #1873b7;
  border-radius: 10px;
}

.gototravel .steps > dl dd .box img {
  max-width: 100%;
  height: auto;
}

.gototravel .steps > dl dd .box .apli-figure img {
  max-width: 60%;
  width: calc(59% - 24px);
  float: left;
  margin-right: 24px;
}

.gototravel .steps > dl dd .etiquetteLink a {
  color: #1973b7;
  display: inline-block;
  vertical-align: middle;
}

.gototravel .steps > dl dd .etiquetteLink a::before {
  margin: -3px 8px 0 0;
  width: 18px;
  height: 18px;
  background: url(/stcontents/img/sub-page/gototravel/icon-arrow-blue.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  vertical-align: middle;
}

.gototravel .topBtn {
  margin-bottom: 160px;
}

.gototravel .topBtn a {
  width: 100%;
  height: 80px;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 2.4rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.gototravel .recommend {
  padding-top: 30px;
}

.gototravel .recommend .title_bunsan {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.gototravel .recommend .title_bunsan .text_bunsan {
  color: #1973b7;
}

.gototravel .recommend .title_bunsan .bunsan {
  width: 120px;
  margin: 0;
}

.gototravel .recommend .title_bunsan .bunsan img {
  max-width: 100%;
  height: auto;
}

.gototravel .recommend ul {
  padding: 20px 0;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.gototravel .recommend ul .east {
  background: url(/stcontents/img/sub-page/gototravel/bnr-weekday-01.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend ul .west {
  background: url(/stcontents/img/sub-page/gototravel/bnr-weekday-02.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend ul li {
  width: 48.5%;
  height: 196px;
}

.gototravel .recommend ul li > a {
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
  text-decoration: none;
  color: #fff;
}

.gototravel .merit h2 {
  color: #1973b7;
  margin-bottom: 54px;
}

.gototravel .merit table {
  border-collapse: collapse;
  border-spacing: 0;
}

.gototravel .merit table tr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 24px;
}

.gototravel .merit table tr th, .gototravel .merit table tr td {
  padding-bottom: 0;
  display: table-cell;
  float: none;
  vertical-align: top;
}

.gototravel .merit table tr th {
  padding-right: 0;
  width: auto;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
}

.gototravel .merit table tr th .heading {
  width: 82px;
  height: 38px;
  background: #1973b7;
  border: solid 3px #1973b7;
  border-radius: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 1px;
  color: #fff;
}

.gototravel .merit table tr td {
  padding-left: 22px;
  line-height: 1.5;
}

.gototravel .regist-area-down {
  background: #ededed;
  padding: 56px 0 60px;
  clear: both;
}

.gototravel .regist-area-down div.regist-area {
  text-align: center;
}

.gototravel .regist-area-down div.regist-area p.txt a {
  border-color: #555;
  color: #555;
}

.gototravel .faq a {
  color: #1675b9;
  text-decoration: underline;
}

.gototravel .faq ul.disc {
  margin-bottom: 25px;
  padding-left: 1.5em;
}

.gototravel .faq ul.disc li {
  margin-bottom: 10px;
  padding-right: 45px;
  list-style: disc;
  line-height: 1.8;
}

.gototravel .faq .notice {
  margin-bottom: 70px;
  padding: 45px 0 25px;
  border-top: 4px solid #1973b7;
  border-bottom: 4px solid #1973b7;
}

.gototravel .faq .notice h3 {
  margin-bottom: 20px;
}

.gototravel .faq h2 {
  margin-bottom: 24px;
  color: #1675b9;
  letter-spacing: 0;
}

.gototravel .faq table.table-basic {
  margin-bottom: 16px;
}

.gototravel .faq table.table-basic th {
  width: 133px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #1973b7;
  margin-top: 19px;
  font-weight: bold;
  font-size: 17px;
  color: #fff;
}

.gototravel .faq table.table-basic h3 {
  line-height: 1.4;
}

.gototravel .faq table.table-basic td img {
  max-width: 100%;
  height: auto;
}

.gototravel .faq dl {
  margin-bottom: 16px;
  padding-top: 28px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  line-height: 1.8;
}

.gototravel .faq dl dt, .gototravel .faq dl dd {
  margin-bottom: 25px;
}

.gototravel .faq dl dt {
  width: 56px;
}

.gototravel .faq dl dd {
  width: calc(100% - 56px);
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
}

.gototravel .faq .jsc-accordion {
  padding-right: 30px;
  position: relative;
  color: #1973b7;
  line-height: 1.6;
  cursor: pointer;
}

.gototravel .faq .jsc-accordion::before, .gototravel .faq .jsc-accordion::after {
  position: absolute;
  content: '';
  display: inline-block;
  border-top: 3px solid #1973b7;
}

.gototravel .faq .jsc-accordion::before {
  top: 13px;
  right: -7px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.gototravel .faq .jsc-accordion::after {
  top: 5px;
  right: 11px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.gototravel .faq .jsc-accordion.active::after {
  display: none;
}

.gototravel .faq .jsc-accordion:hover {
  opacity: 0.7;
}

.gototravel .faq .steps h3 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .faq .steps h3.black {
  color: #333333;
}

.gototravel .faq .steps .box {
  padding: 26px 40px 40px;
  background: #f0f9ff;
  border-radius: 10px;
  color: #1873b7;
}

.gototravel .recommend-er h1 {
  color: #1973b7;
  margin-bottom: 24px;
}

.gototravel .recommend-er .bath {
  background: url(/img/hotelpictures/RP24669_1029.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er .resort {
  background: url(/img/hotelpictures/RP23983_1040.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er .cuisine {
  background: url(/img/hotelpictures/RP21933_1019.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er .newOpen {
  background: url(/img/hotelpictures/RP23229_1126.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er .photo {
  background: url(/img/hotelpictures/RP24493_1012.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er .abroad {
  background: url(/img/hotelpictures/RP28559_1076.jpg) no-repeat center center;
  background-size: cover;
}

.gototravel .recommend-er ul {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.gototravel .recommend-er ul li a {
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
  text-decoration: none;
  color: #fff;
}

.gototravel .share-btn li {
  margin: 0 5px 0;
  display: inline-block;
  vertical-align: middle;
}

.gototravel .share-btn li:last-child {
  margin-right: 0;
}

.gototravel .share-btn .facebook i {
  width: 36px;
  height: 36px;
  display: inline-block;
  background-color: #1877f2;
  border-radius: 75%;
  background-repeat: no-repeat;
  background-size: 8px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-fb.png);
}

.gototravel .share-btn .twitter i {
  width: 36px;
  height: 36px;
  background-color: #00acec;
  border-radius: 75%;
  background-size: 14px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-tw.png);
  display: inline-block;
  background-repeat: no-repeat;
}

.gototravel .share-btn .line i {
  width: 36px;
  height: 36px;
  background-color: #01c301;
  border-radius: 100%;
  background-size: 18px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-line.png);
  display: inline-block;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .gototravel {
    /* 画面外にいる状態 */
    /* 画面内に入った状態 */
  }
  .gototravel .fadein {
    opacity: 0.1;
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);
    -webkit-transition: all 500ms;
    transition: all 500ms;
  }
  .gototravel .fadein.scrollin {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .gototravel .icon-a, .gototravel .icon-q {
    width: 56px;
    height: 56px;
    border: solid 4px #1973b7;
    font-size: 2.4rem;
  }
  .gototravel div.section {
    margin-bottom: 90px;
  }
  .gototravel p .marker {
    background-image: -webkit-linear-gradient(bottom, #ffce3a 16px, transparent 0);
    background-image: linear-gradient(0deg, #ffce3a 16px, transparent 0);
    padding-bottom: 9px;
  }
  .gototravel div.regist-area {
    width: 100%;
    bottom: 16px;
    left: 0;
    padding: 0px;
    background: none;
    margin: inherit;
    border: none;
    text-align: center;
  }
  .gototravel div.regist-area .headline {
    margin-bottom: 24px;
  }
  .gototravel div.regist-area div.registBoxWrap {
    display: table;
    width: 100%;
  }
  .gototravel div.regist-area div.registBoxWrap > div {
    display: table-cell;
    vertical-align: bottom;
    width: 33.333333%;
    padding: 0 10px;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput {
    width: 100%;
    height: 44px;
    display: table;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput > input {
    margin-right: 0;
    width: 100%;
    height: 44px;
    display: table-cell;
    padding: 0 3%;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput > a {
    padding: 7px 24px;
    height: 43px;
    display: table-cell;
  }
  .gototravel div.regist-area p.txt {
    margin: 15px 0;
  }
  .gototravel div.regist-area p.txt a {
    border-bottom: 1px solid;
    padding-bottom: 1px;
  }
  .gototravel div.regist-area p.txt a:hover {
    border: none;
  }
  .gototravel .key-visual {
    height: 800px;
  }
  .gototravel .key-visual div.regist-area {
    position: absolute;
    opacity: 0;
    -webkit-animation: fadeIn 0.5s 1.5s forwards;
            animation: fadeIn 0.5s 1.5s forwards;
  }
  .gototravel .key-visual div.regist-area p.txt a {
    border-color: #fff;
    color: #fff;
  }
  .gototravel .key-visual .bg {
    background-image: url(/stcontents/img/sub-page/gototravel/bg-dot.png), url(/stcontents/img/sub-page/gototravel/bg-shadow.png), url(/stcontents/img/sub-page/gototravel/keyvisual.jpg);
    background-repeat: repeat, repeat-x, no-repeat;
    background-position: 0 0, center bottom, center bottom;
    background-size: auto, auto, cover;
    width: 100%;
    height: 100%;
  }
  .gototravel .key-visual > .inner {
    height: 100%;
  }
  .gototravel .key-visual .kv-text {
    padding-top: 0;
    top: 40%;
    left: 50%;
    width: 520px;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fadeIn 1s 0.5s forwards;
            animation: fadeIn 1s 0.5s forwards;
    opacity: 0;
  }
  .gototravel .key-visual .kv-text img {
    width: 100%;
    max-width: 100%;
  }
  .gototravel .update {
    margin: 115px 0 115px;
  }
  .gototravel .update .heading {
    padding: 18px 30px 24px;
  }
  .gototravel .update .bg-white {
    padding: 30px 48px 36px;
  }
  .gototravel .update .bg-white > ul > li {
    text-indent: -2.1rem;
  }
  .gototravel .update .bg-white > ul > li::before {
    font-size: 1.5rem;
  }
  .gototravel .lead-box {
    padding: 65px 0;
  }
  .gototravel .lead-box .area h2 {
    margin-bottom: 40px;
  }
  .gototravel .lead-box .area > h3 {
    margin-top: 10px;
    margin-bottom: 16px;
    border-left: 8px solid;
    padding-left: 16px;
  }
  .gototravel .lead-box .area ul.disc {
    padding-left: 1.5em;
  }
  .gototravel .index-box {
    padding: 50px;
  }
  .gototravel .index-box .inner-box h1 {
    margin-bottom: 50px;
  }
  .gototravel .index-box .inner-box dl {
    padding-bottom: 20px;
  }
  .gototravel .index-box .inner-box dl dt, .gototravel .index-box .inner-box dl dd {
    padding-bottom: 7px;
  }
  .gototravel .index-box .inner-box dl dt {
    width: 50px;
    padding-right: 20px;
  }
  .gototravel .index-box .inner-box dl dd {
    width: calc(100% - 50px);
  }
  .gototravel .detail-box .box {
    padding: 40px 64px 28px;
  }
  .gototravel .detail-box .box:before {
    padding: 0 40px;
    font-size: 4rem;
  }
  .gototravel .detail-box .discount-box .img-box {
    padding: 40px 64px 28px;
  }
  .gototravel .detail-box .discount-box .img-box .figure {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .gototravel .goto-coupon dl {
    margin-top: 56px;
  }
  .gototravel .goto-coupon dl dt, .gototravel .goto-coupon dl dd {
    margin-bottom: 70px;
  }
  .gototravel .goto-coupon dl > dd {
    margin-left: 30px;
    width: calc(100% - 163px);
  }
  .gototravel .goto-coupon dl > dd .box {
    padding: 26px 40px 40px;
  }
  .gototravel .steps {
    margin-bottom: 0 !important;
  }
  .gototravel .steps > dl {
    margin-top: 56px;
  }
  .gototravel .steps > dl dt, .gototravel .steps > dl dd {
    margin-bottom: 70px;
  }
  .gototravel .steps > dl dd {
    width: calc(100% - 163px);
    margin-left: 30px;
    line-height: 1.5;
  }
  .gototravel .steps > dl dd .title {
    margin-bottom: 24px;
    color: #1973b7;
  }
  .gototravel .steps > dl dd .box {
    padding: 26px 40px 40px;
    border: none;
    overflow: hidden;
    background: #f0f9ff;
    color: #1873b7;
    border-radius: 10px;
  }
  .gototravel .steps > dl dd .box img {
    max-width: 100%;
    height: auto;
  }
  .gototravel .steps > dl dd .box .apli-figure img {
    max-width: 60%;
    width: calc(59% - 24px);
    float: left;
    margin-right: 24px;
  }
  .gototravel .steps > dl dd .etiquetteLink a {
    color: #1973b7;
    display: inline-block;
    vertical-align: middle;
  }
  .gototravel .steps > dl dd .etiquetteLink a::before {
    margin: -3px 8px 0 0;
    width: 18px;
    height: 18px;
    background: url(/stcontents/img/sub-page/gototravel/icon-arrow-blue.png) no-repeat 0 0;
    background-size: contain;
    content: "";
    display: inline-block;
    vertical-align: middle;
  }
  .gototravel .faq .col-tab th {
    vertical-align: top;
  }
  .gototravel .faq .col-tab td {
    padding: 0 0 40px 10px;
  }
  .gototravel .faq .notice {
    margin-bottom: 70px;
  }
  .gototravel .faq table.table-basic td .howto-coupon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .gototravel .faq table.table-basic td .howto-coupon li {
    width: 33%;
    padding: 0 20px;
  }
  .gototravel .faq table.table-basic td .howto-coupon img {
    width: 150%;
    max-width: 500px;
    margin-left: -25%;
  }
  .gototravel .faq table.table-basic td .howto-coupon.col-2 li {
    width: 50%;
    padding-top: 10px;
  }
  .gototravel .faq table.table-basic td .howto-coupon.col-2 img {
    max-width: 100%;
    margin-left: 0;
  }
  .gototravel .faq dl dt {
    width: 90px;
  }
  .gototravel .faq dl dd {
    width: calc(100% - 90px);
  }
  .gototravel .faq .jsc-accordion::before, .gototravel .faq .jsc-accordion::after {
    width: 28px;
    height: 28px;
    border-top: 4px solid #1973b7;
  }
  .gototravel .faq .jsc-accordion::before {
    top: 14px;
    right: -10px;
  }
  .gototravel .faq .jsc-accordion::after {
    top: 1px;
    right: 18px;
  }
  .gototravel .recommend-er ul li {
    width: 31%;
    height: 168px;
    margin-bottom: 50px;
  }
  .gototravel .recommend-er dl dt {
    margin-bottom: 30px;
    margin-right: 30px;
    padding: 0;
    width: 27%;
    max-height: 300px;
    height: auto;
    border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    float: left;
    overflow: hidden;
  }
  .gototravel .recommend-er dl dt img {
    width: 100%;
    height: auto;
  }
  .gototravel .recommend-er dl dd {
    height: 180px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .gototravel .recommend-er dl dd h3 {
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 767px) {
  .gototravel {
    /* 画面外にいる状態 */
    /* 画面内に入った状態 */
  }
  .gototravel .fadein {
    opacity: 0.1;
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);
    -webkit-transition: all 500ms;
    transition: all 500ms;
  }
  .gototravel .fadein.scrollin {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .gototravel div.section {
    margin-bottom: 42px;
  }
  .gototravel p .marker {
    background-image: -webkit-linear-gradient(bottom, #ffce3a 12px, transparent 0);
    background-image: linear-gradient(0deg, #ffce3a 12px, transparent 0);
    padding-bottom: 6px;
  }
  .gototravel .icon-a, .gototravel .icon-q {
    line-height: 1.9;
  }
  .gototravel div.regist-area {
    padding: 16px 16px 0;
    width: 100%;
    background: none;
    border: none;
  }
  .gototravel div.regist-area div.registBoxWrap {
    width: 100%;
  }
  .gototravel div.regist-area div.registBoxWrap.wrap {
    padding: 0;
  }
  .gototravel div.regist-area div.registBoxWrap > div {
    margin-bottom: 8px;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput {
    width: 100%;
    height: 44px;
    display: table;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput > input {
    margin-right: 0;
    padding: 0 3%;
    width: 100%;
    height: 44px;
    display: table-cell;
    border: 1px solid #CCCCCC;
  }
  .gototravel div.regist-area div.registBoxWrap .mailBox .mailInput > a {
    padding: 7px 24px;
    height: 44px;
    display: table-cell;
  }
  .gototravel div.regist-area p.txt a {
    border-bottom: 1px solid #555;
    padding-bottom: 1px;
    color: #555;
  }
  .gototravel div.regist-area p.loginBtn a {
    width: 100%;
  }
  .gototravel .key-visual {
    background-color: #fff;
    color: #333333;
    height: 865px;
  }
  .gototravel .key-visual div.regist-area {
    margin-top: 507px;
  }
  .gototravel .key-visual .bg {
    background-image: url(/stcontents/img/sub-page/gototravel/bg-dot.png), url(/stcontents/img/sub-page/gototravel/keyvisual.jpg);
    background-repeat: repeat, no-repeat;
    background-position: 0 0, center bottom;
    background-size: auto, cover;
    height: 507px;
  }
  .gototravel .key-visual > .inner {
    height: 100%;
  }
  .gototravel .key-visual .kv-text {
    width: 90%;
    position: absolute;
    top: 250px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding-top: 0;
    -webkit-animation: fadeIn 1s 0.5s forwards;
            animation: fadeIn 1s 0.5s forwards;
    opacity: 0;
  }
  .gototravel .key-visual .kv-text img {
    width: 100%;
    max-width: 100%;
  }
  .gototravel .update {
    margin: 64px 0;
  }
  .gototravel .update .heading {
    padding: 14px 3px;
    text-align: center;
  }
  .gototravel .update .bg-white {
    padding: 14px 16px 20px;
  }
  .gototravel .update .bg-white > ul {
    padding-left: 1.5rem;
  }
  .gototravel .update .bg-white > ul > li {
    text-indent: -1.5rem;
  }
  .gototravel .update .bg-white > ul > li::before {
    font-size: 1rem;
  }
  .gototravel .lead-box {
    padding: 45px 0;
  }
  .gototravel .lead-box .area h2 {
    margin-bottom: 40px;
  }
  .gototravel .lead-box .area > h3 {
    margin-top: 10px;
    margin-bottom: 16px;
    border-left: 5px solid;
    padding-left: 18px;
  }
  .gototravel .lead-box .area ul.disc {
    padding-left: 1.5em;
  }
  .gototravel .index-box {
    padding: 30px 20px;
  }
  .gototravel .index-box .inner-box h1 {
    margin-bottom: 30px;
  }
  .gototravel .index-box .inner-box dl {
    padding-bottom: 20px;
  }
  .gototravel .index-box .inner-box dl dt, .gototravel .index-box .inner-box dl dd {
    padding-bottom: 12px;
  }
  .gototravel .index-box .inner-box dl dt {
    width: 2.5em;
    padding-right: 20px;
  }
  .gototravel .index-box .inner-box dl dd {
    width: calc(100% - 2.5em);
  }
  .gototravel .detail-box .box {
    padding: 30px 20px 10px;
  }
  .gototravel .detail-box .box:before {
    padding: 0 16px;
    font-size: 2.2rem;
  }
  .gototravel .detail-box .discount-box .img-box {
    padding: 30px 20px 10px;
  }
  .gototravel .goto-coupon dl {
    margin-top: 40px;
  }
  .gototravel .goto-coupon dl dt, .gototravel .goto-coupon dl dd {
    margin-bottom: 30px;
  }
  .gototravel .goto-coupon dl > dd {
    width: 100%;
  }
  .gototravel .goto-coupon dl > dd .box {
    padding: 20px 16px 25px;
  }
  .gototravel .steps {
    margin-bottom: 0 !important;
  }
  .gototravel .steps h1 {
    color: #1973b7;
    margin-bottom: 24px;
  }
  .gototravel .steps > dl {
    margin-top: 40px;
  }
  .gototravel .steps > dl dt, .gototravel .steps > dl dd {
    margin-bottom: 30px;
  }
  .gototravel .steps > dl dd {
    width: 100%;
  }
  .gototravel .steps > dl dd .box {
    padding: 20px 16px 25px;
  }
  .gototravel .steps > dl dd .box .apli-figure img {
    max-width: 60%;
    width: 389px;
    float: left;
    margin-right: 24px;
  }
  .gototravel .topBtn {
    margin-bottom: 72px;
  }
  .gototravel .topBtn a {
    padding: 0;
    height: 60px;
    font-size: 1.8rem;
  }
  .gototravel .recommend {
    padding-top: 30px;
  }
  .gototravel .recommend .bunsan {
    width: 120px;
    margin: 0 auto;
  }
  .gototravel .recommend .bunsan img {
    max-width: 100%;
    height: auto;
  }
  .gototravel .recommend ul {
    padding: 20px 0;
    width: 100%;
    display: block;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .gototravel .recommend ul li {
    margin-bottom: 16px;
    padding: 0;
    width: 100%;
    height: 28vw;
    max-height: 196px;
    border-radius: 4px;
  }
  .gototravel .merit h1 {
    margin-bottom: 36px;
  }
  .gototravel .merit table tr {
    margin-bottom: 14px;
  }
  .gototravel .merit table tr th, .gototravel .merit table tr td {
    line-height: 1.5;
  }
  .gototravel .merit table tr th {
    padding-right: 0;
    width: auto;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    clear: both;
  }
  .gototravel .merit table tr th .heading {
    width: 72px;
    height: 40px;
  }
  .gototravel .merit table tr td {
    padding-left: 15px;
  }
  .gototravel .faq .col-tab th, .gototravel .faq .col-tab td {
    vertical-align: top;
    display: block;
    padding-bottom: 20px;
  }
  .gototravel .faq .notice {
    margin-bottom: 30px;
  }
  .gototravel .faq .notice h3::before {
    top: 21px;
  }
  .gototravel .faq .notice h3::after {
    top: 12px;
  }
  .gototravel .faq table.table-basic {
    margin-bottom: 16px;
  }
  .gototravel .faq table.table-basic td .howto-coupon li {
    width: 100%;
    padding: 0 0 10px;
  }
  .gototravel .faq table.table-basic td .howto-coupon img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .gototravel .faq .jsc-accordion::before, .gototravel .faq .jsc-accordion::after {
    width: 18px;
    height: 18px;
  }
  .gototravel .recommend-er ul {
    padding: 10px 0 20px;
  }
  .gototravel .recommend-er ul li {
    width: 48%;
    max-height: 168px;
    height: 28vw;
    display: block;
    position: relative;
    overflow: hidden;
    margin-bottom: 16px;
    padding: 0;
    border-radius: 4px;
  }
  .gototravel .recommend-er dl dt {
    width: 100%;
    height: 50vw;
    max-height: 300px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    float: none;
    margin-bottom: 30px;
    padding: 0;
    overflow: hidden;
    border-radius: 4px;
  }
  .gototravel .recommend-er dl dt img {
    width: 100%;
    height: auto;
  }
}

.contact {
  /*pc*/
  /*sp*/
}

.contact .wrap {
  max-width: 930px;
}

.contact main {
  /*padding-bottom: 40px;*/
  padding-bottom: 0;
  background-color: #f2f2f0;
}

.contact main .description {
  color: #ff0000;
}

.contact .notice {
  background-color: #fff;
  padding: 24px 40px;
  margin-bottom: 24px;
}

.contact .member-info {
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid #757575;
}

.contact .member-info > dt {
  font-size: 2.4rem;
  font-weight: bold;
}

.contact .member-info > dd {
  font-size: 1.6rem;
}

.contact .member-info > dd span {
  margin-left: 16px;
}

.contact .input-error-word {
  display: none;
}

.contact .input-error-word.active {
  display: block;
}

.contact .input-box input[type="radio"] {
  border-bottom: none;
}

.contact .input-wide input {
  width: 100%;
  max-width: 470px;
}

.contact .input-double input {
  width: 100%;
}

.contact .input-name-wrap {
  max-width: 528px;
}

@media screen and (min-width: 768px) {
  .contact .col-780 {
    margin: 0 auto;
  }
  .contact .col-780 .main-title {
    padding-top: 30px;
    margin-bottom: 20px;
  }
  .contact .tag-require, .contact .tag-any, .contact .tag-any {
    margin-right: 5px;
  }
  .contact table th {
    padding: 15px 0;
    width: 33%;
    vertical-align: top;
  }
  .contact table td {
    width: 67%;
    padding: 10px 0 10px 20px;
  }
  .contact table td ul li {
    margin-bottom: 10px;
    width: 100%;
  }
  .contact table td ul li span {
    display: block;
  }
  .contact table td .text-box {
    width: 100%;
  }
  .contact table td a {
    color: #555555;
    text-decoration: underline;
  }
  .contact table td a:hover {
    text-decoration: none;
  }
  .contact table td .btn-relux {
    width: 300px;
  }
  .contact .description {
    margin-top: 20px;
    margin-bottom: 100px;
  }
  .contact .input-double {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 544px;
  }
  .contact .input-double li {
    width: 47.5%;
  }
}

.contact .submit-btn-area button.disabled {
  opacity: .2;
  pointer-events: none;
}

.contact .contact-form-validation .btn-target.disabled {
  opacity: .2;
  pointer-events: none;
}

.contact .contact-form-validation .on .input-error-word {
  display: block;
  white-space: nowrap;
}

.contact .contact-form-validation .on input,
.contact .contact-form-validation .on textarea {
  border: 1px solid #CE0000;
}

.contact .contact-form-validation .on .input-radio {
  background: url(/stcontents/img/common/icon-radio-error.svg) no-repeat 0 center;
  background-size: contain;
  width: 20px;
  height: 20px;
  margin-left: 1px;
}

.contact .contact-form-validation .on .input-radio:checked {
  background: url(/stcontents/img/common/icon-radio-on-checked.svg) no-repeat 0 center;
  background-size: contain;
}

.contact .contact-form-validation .no-validate input {
  border-color: #C6C6C6 !important;
}

.contact .contact-form-validation input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 300px #fff inset;
}

.contact .contact-form-validation a.btn-target.no-disabled {
  background: #0f0a64;
  border: 1px solid #0f0a64;
  pointer-events: auto;
}

@media screen and (max-width: 767px) {
  .contact main {
    /*padding: 10px;*/
    padding: 0;
    background-color: #fff;
  }
  .contact .wrap {
    background-color: #ffffff;
  }
  .contact .main-title {
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    margin-top: 24px;
  }
  .contact .notice {
    background-color: #fff;
    padding: 0 16px;
    margin-bottom: 8px;
  }
  .contact .notice p {
    padding: 24px 16px;
    border: 1px solid #CE0000;
  }
  .contact .member-info > dt {
    font-size: 2rem;
  }
  .contact .col-780 {
    margin: 0 auto;
  }
  .contact .col-780 .main-title {
    margin-bottom: 30px;
    padding-top: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #000;
    line-height: 1;
  }
  .contact .input-name-wrap {
    display: block;
  }
  .contact .input-name-wrap > li {
    width: 100%;
    max-width: 342px;
  }
  .contact .input-box-reservation .input {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .contact .input-box-reservation .input input {
    width: 170px !important;
    margin-left: 8px;
  }
  .contact .input-box-reservation .input .input-error-word {
    width: 100%;
  }
  .contact .tag-require, .contact .tag-any, .contact .tag-any {
    margin-right: 5px;
  }
  .contact table th {
    margin: 15px 0;
    width: 100%;
    display: block;
  }
  .contact table td {
    margin-bottom: 30px;
    width: 100%;
    display: block;
  }
  .contact table td ul li {
    margin-bottom: 10px;
    width: 100%;
  }
  .contact table td ul li span {
    display: block;
  }
  .contact table td .text-box {
    width: 100%;
  }
  .contact table td a {
    color: #555555;
    text-decoration: underline;
  }
  .contact table td a:hover {
    text-decoration: none;
  }
  .contact table td .btn-relux {
    width: 100%;
  }
  .contact table td .aggree-txt {
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
  }
  .contact .description {
    margin-top: 20px;
    padding-bottom: 40px;
  }
}

.brandstory .key-visual {
  background: url(/stcontents/img/sub-page/brandstory/main-bg.jpg) no-repeat center bottom;
  background-size: cover;
  position: relative;
  text-align: center;
}

.brandstory .key-visual::before {
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  height: 527px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.brandstory .wave {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
}

.brandstory .lead {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.brandstory .lead .border-red {
  border: 1px solid #ff503e;
  width: 56px;
  margin: 16px auto 80px;
}

.brandstory .lead .txt {
  text-shadow: 1px 1px 1px #000;
  font-weight: 300;
  line-height: 2.8rem;
}

.brandstory .link-line {
  text-decoration: underline;
}

.brandstory .link-line:hover {
  text-decoration: none;
}

.brandstory .border-red {
  border: 1px solid #ff503e;
  width: 56px;
  margin: 8px auto 32px;
}

.brandstory .feature {
  font-weight: 300;
  position: relative;
  overflow: hidden;
}

.brandstory .feature h1 {
  color: #0f0a64;
  font-weight: 300;
}

.brandstory .feature .content {
  width: 100%;
  max-width: 1120px;
  padding: 16px;
  margin: 0 auto;
  margin-bottom: 140px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.brandstory .feature .feature-wave {
  height: 380px;
  width: auto;
  position: absolute;
  left: 0px;
  top: 580px;
}

.brandstory .feature .text {
  width: 52%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.brandstory .feature .text h3 {
  font-weight: 400;
}

.brandstory .feature .text p {
  line-height: 3.2rem;
}

.brandstory .feature .text img {
  width: 55px;
  height: 48px;
  margin-right: 24px;
}

.brandstory .feature .feature-img01 {
  margin-top: 30px;
  width: 383px;
  height: auto;
}

.brandstory .feature img {
  width: 37%;
  height: 37%;
}

.brandstory .feature-4 .content {
  align-items: flex-start;
}
.brandstory .feature-4 .title-num {
  width: auto;
}
.brandstory .feature-4 .icon-ponta  {
  width: 190px;
  height: auto;
  margin: -8px 0 0 24px;
}
.brandstory .feature-4 .title-num {
  width: auto !important;
}

@media screen and (max-width: 767px) {
  .brandstory .feature-4 .icon-ponta {
    width: 108px;
    margin: 0px 0 0 0;
    float: right;
  }
  .brandstory .feature-4 .title-num {
    float: left;
  }
}

.brandstory .about {
  font-weight: 300;
  position: relative;
  margin-bottom: 180px;
  overflow: hidden;
}

.brandstory .about .sub {
  background: url(/stcontents/img/sub-page/brandstory/about_sub_fixed.jpeg) no-repeat center center;
  background-size: cover;
  height: 760px;
  overflow: hidden;
  position: relative;
}

.brandstory .about .sub img {
  width: 100%;
  height: auto;
}

.brandstory .about .wave-white {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}

.brandstory .about .line {
  position: absolute;
  right: 0;
  bottom: 0;
}

.brandstory .about .text-center {
  padding-top: 134px;
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
}

.brandstory .about .text-center .circle {
  position: absolute;
  left: -57px;
  top: 60px;
}

.brandstory .about .text-center .font-x-large {
  margin-bottom: 61px;
  line-height: 4.5rem;
  padding: 0 16px;
}

.brandstory .about .wave-right {
  position: absolute;
  right: 0;
  bottom: 56px;
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .brandstory .key-visual {
    overflow: hidden;
  }
  .brandstory .wave {
    height: 160px;
    width: auto;
    bottom: -8px;
    right: -43px;
  }
}

@media screen and (max-width: 767px) {
  .brandstory img {
    max-width: 100%;
    vertical-align: bottom;
  }
  .brandstory .key-visual {
    margin-bottom: 40px;
    height: 800px;
  }
  .brandstory .key-visual::before {
    height: 600px;
  }
  .brandstory .lead {
    width: 100%;
    margin-bottom: 40px;
    padding: 0 16px;
  }
  .brandstory .lead .border-red {
    width: 40px;
    margin-bottom: 16px;
  }
  .brandstory .feature .content {
    display: block;
    padding-bottom: 20px;
    margin-bottom: 80px;
    position: relative;
  }
  .brandstory .feature .content .feature-img01 {
    position: relative;
    width: 330px;
    height: 340px;
    margin-bottom: 16px;
  }
  .brandstory .feature .content .feature-img01 img {
    position: absolute;
    right: -88px;
    width: 100%;
    height: auto;
  }
  .brandstory .feature .content .feature-img02 {
    width: 100%;
    margin-bottom: 40px;
  }
  .brandstory .feature .content .feature-img03 {
    width: 100%;
    margin-bottom: 24px;
  }
  .brandstory .feature .content .text {
    width: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 24px;
  }
  .brandstory .feature .content .text h3 {
    font-size: 2rem;
  }
  .brandstory .feature .content .font-large {
    line-height: 3.2rem;
  }
  .brandstory .feature .feature-wave {
    height: 155px;
  }
  .brandstory .feature .feature-wave02 {
    position: absolute;
    right: -50px;
    bottom: 280px;
    height: 212px;
    width: auto;
    max-width: none;
  }
  .brandstory .wave {
    width: auto;
    max-width: none;
    height: 110px;
  }
  .brandstory .about {
    margin-bottom: 0;
  }
  .brandstory .about .sub {
    height: 620px;
  }
  .brandstory .about .sub img {
    height: 133px;
    width: auto;
    max-width: none;
  }
  .brandstory .about .text-center {
    padding: 70px 16px;
  }
  .brandstory .about .text-center .font-xxxxx-large {
    font-size: 2.6rem;
  }
  .brandstory .about .text-center .border-red {
    width: 40px;
    margin-bottom: 32px;
  }
  .brandstory .about .text-center .font-x-large {
    text-align: left;
  }
  .brandstory .about .text-center .circle {
    left: -94px;
    top: 133px;
  }
  .brandstory .about .wave-right {
    right: -113px;
    bottom: 150px;
    max-width: none;
    height: 193px;
  }
}

.feature-premium {
  /*
    pankuzu
  */
  /*
    KeyVisual
  */
  /*
    scrollBtn
  */
  /*
    shareButton
  */
  /*
    section
  */
  /*
    about
  */
  /*
    TabBox
  */
  /*
    Hotelcredit
  */
  /*
    ranking
  */
  /*
    area
  */
  /*
    diamond
  */
  /*
    sales
  */
  /*
    shareButton
  */
  /*
    絞り込みUI > Scorll → 固定追従後のStyle
  */
}

.feature-premium .global-footer {
  position: relative;
}

.feature-premium .container {
  width: 100%;
  -webkit-text-size-adjust: 100%;
}

/* .feature-premium .container a {
  color: #FFF;
}

.feature-premium .container a:hover {
  opacity: 0.8;
} */

.feature-premium div#footer {
  position: relative;
  z-index: 30;
}

.feature-premium .sp-v {
  display: none !important;
}

@media (max-width: 767px) {
  .feature-premium .pc-v {
    display: none !important;
  }
  .feature-premium .sp-v {
    display: inline-block !important;
  }
}

.feature-premium .fadeout.scrollin {
  opacity: 0;
  -webkit-transform: translate(0, -50px);
          transform: translate(0, -50px);
}

@media (min-width: 960px) {
  .feature-premium .fadeout {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition: all 500ms;
    transition: all 500ms;
  }
}

/* .feature-premium .bread-crumbs {
  padding-top: 0;
}

.feature-premium .bread-crumbs a:after {
  content: url(/stcontents/img/common/icon-arrow-right-white-2.svg);
} */

.feature-premium .key-visual {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  display: none;
}

.feature-premium .key-visual .logo {
  position: absolute;
  top: 40%;
  left: 0;
  width: 100%;
  z-index: 1;
  text-align: center;
}

.feature-premium .key-visual .logo img {
  max-width: 80%;
}

.feature-premium .key-visual .lead {
  display: block;
  padding-top: 35px;
  letter-spacing: 5px;
  font-size: 1.6rem;
  font-weight: bold;
}

.feature-premium html[lang='en'] .key-visual .lead {
  letter-spacing: 2px;
}

.feature-premium .kv-slider .slick-slide {
  z-index: 0 !important;
}

.feature-premium .kv-slider .slick-slide::after {
  background: transparent url(/stcontents/img/common/bg-dot.png) repeat top left;
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.feature-premium .kv-slider .slick-slide .bg {
  background-size: cover;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  position: relative;
}

.feature-premium .kv-slider .slick-continue .bg,
.feature-premium .kv-slider .slick-current .bg {
  -webkit-animation: 15s linear zoomin;
          animation: 15s linear zoomin;
}

.feature-premium .kv-slider .kv01 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual01.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv02 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual02.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv03 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual03.jpg) no-repeat center center;
}

.feature-premium .kv-slider .kv04 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual04.jpg) no-repeat center center;
}

.feature-premium .kv-slider .kv05 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual05.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv06 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual06.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv07 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual07.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv08 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual08.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv09 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual09.jpg) no-repeat center bottom;
}

.feature-premium .kv-slider .kv10 .bg {
  background: url(/stcontents/img/sub-page/premium/keyvisual10.jpg) no-repeat center bottom;
}

@-webkit-keyframes zoomin {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}

@keyframes zoomin {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}

.feature-premium .key-visual .logo img {
  width: 378px;
}

@media (min-width: 768px) {
  .feature-premium .key-visual .logo img {
    max-width: 757px;
    width: auto;
  }
  .feature-premium .key-visual .lead {
    letter-spacing: 9px;
    font-size: 2.4rem;
  }
}

@media (max-width: 767px) {
  .feature-premium .container {
    padding-top: 90vh;
  }
  .feature-premium .key-visual {
    height: 90vh;
  }
  .feature-premium .key-visual .logo {
    top: 45%;
  }
  .feature-premium .key-visual .lead {
    padding-top: 28px;
    font-size: 1.6rem;
  }
  .feature-premium .kv-slider .slick-slide .bg {
    height: 90vh;
  }
}

@media (max-width: 360px) {
  .feature-premium {
    /* Android対応 */
  }
  .feature-premium .key-visual .logo {
    top: 30%;
  }
  .feature-premium .key-visual .scroll-btn {
    bottom: 160px;
  }
}

@-webkit-keyframes ani-mouse {
  0% {
    opacity: 1;
    top: 29%;
  }
  20% {
    opacity: 1;
    top: 50%;
  }
  50% {
    opacity: 0;
    top: 50%;
  }
  100% {
    opacity: 0;
    top: 29%;
  }
}

@keyframes ani-mouse {
  0% {
    opacity: 1;
    top: 29%;
  }
  20% {
    opacity: 1;
    top: 50%;
  }
  50% {
    opacity: 0;
    top: 50%;
  }
  100% {
    opacity: 0;
    top: 29%;
  }
}

.feature-premium .scroll-btn {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 120px;
  text-align: center;
}

.feature-premium .scroll-btn > * {
  display: inline-block;
  line-height: 18px;
  margin: 0 auto;
  font-size: 1.3rem;
  font-weight: normal;
  color: #7F8C8D;
  color: #FFF;
  font-family: "proxima-nova", "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: 2px;
}

.feature-premium .scroll-btn > *:hover,
.feature-premium .scroll-btn > *:focus,
.feature-premium .scroll-btn > *.active {
  color: #ffffff;
}

.feature-premium .scroll-btn > *:hover,
.feature-premium .scroll-btn > *:focus,
.feature-premium .scroll-btn > *:active,
.feature-premium .scroll-btn > *.active {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.feature-premium .scroll-btn .mouse {
  position: relative;
  display: block;
  width: 24px;
  height: 42px;
  margin: 0 auto 8px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid white;
  border-radius: 23px;
}

.feature-premium .scroll-btn .mouse > * {
  position: absolute;
  display: block;
  top: 29%;
  left: 50%;
  width: 6px;
  height: 6px;
  margin: -4px 0 0 -3px;
  background: white;
  border-radius: 45%;
  -webkit-animation: ani-mouse 2s linear infinite;
  animation: ani-mouse 2s linear infinite;
}

@media (min-width: 768px) {
  .feature-premium .scroll-btn {
    bottom: 100px;
  }
}

@media (min-width: 1200px) {
  .feature-premium .scroll-btn {
    bottom: 28px;
  }
}

@media (max-width: 767px) {
  .feature-premium .container {
    padding-top: 90vh;
  }
}

.feature-premium .shareArea {
  max-width: 1152px;
  width: 100%;
  position: absolute;
  left: 50%;
  bottom: 110px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding: 0 16px;
  text-align: right;
}

.feature-premium ul.shareBtn {
  width: 100%;
  margin: 0 auto;
}

.feature-premium ul.shareBtn li {
  width: 32px;
  height: 32px;
  margin: 0 5px;
  display: inline-block;
  text-align: center;
  border-radius: 100px;
}

.feature-premium ul.shareBtn li.facebook {
  margin-left: 0;
}

.feature-premium ul.shareBtn i {
  display: inline-block;
  vertical-align: middle;
  width: 32px;
  height: 32px;
}

@media (max-width: 767px) {
  .feature-premium .shareArea {
    position: absolute;
    left: inherit;
    bottom: inherit;
    bottom: 24px;
    -webkit-transform: none;
            transform: none;
    padding: 0;
  }
  .feature-premium .shareArea ul.shareBtn li {
    margin: 0 9px;
  }
  .feature-premium .shareArea ul.shareBtn li:last-of-type {
    margin-right: 0;
  }
}

.feature-premium .container {
  padding-top: 0;
}

.feature-premium .container section {
  position: relative;
}

.feature-premium .container section .inner {
  max-width: 1120px;
  min-height: 560px;
  padding-left: 16px;
  padding-right: 16px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #FFF;
}

.feature-premium .container section h2 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: normal;
}

.feature-premium .container section h2 img {
  max-width: 78%;
}

@media (min-width: 768px) {
  .feature-premium .container section h2 {
    font-size: 3.2rem;
    color: #FFF;
  }
}

.feature-premium .container .about {
  /* bg-装飾topを表示させる場合（必要に応じてコメントアウト） */
  background-image: url(/stcontents/img/sub-page/premium/bg-top-sp.png);
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 532px 159px;
  background-color: #0F0A64;
  position: relative;
}

.feature-premium .container .about .inner {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 80px;
  min-height: 500px;
}

.feature-premium .container .about h1 {
  display: inline-block;
  margin-bottom: 0;
  position: relative;
  /* font-size: 2.4rem; */
}

.feature-premium .container .about h1 img {
  width: 100%;
  height: auto;
  max-width: 343px;
  vertical-align: bottom;
}

/* .feature-premium .container .about .sub-ttl {
  font-size: 1.8rem;
  letter-spacing: 7px;
}

.feature-premium .container .about .lead {
  margin-bottom: 16px;
  text-align: center;
  font-size: 1.4rem;
}

.feature-premium .container .about .lead + p {
  max-width: 600px;
  margin: 0 auto;
  line-height: 2.5;
  font-size: 1.2rem;
}

.feature-premium .container .about .lead + p br {
  display: none;
}

.feature-premium .container .about .lead img {
  display: inline-block;
  margin: 0 2px;
  height: 11px;
} */

.feature-premium .container .about .anchor-link.position-measure {
  position: absolute;
  top: 600px;
  left: 0;
  right: 0;
  z-index: 20;
}

.feature-premium .container .about .anchor-link.position-measure.fixed {
  position: fixed;
  top: 8px;
}

.feature-premium .container .about .anchor-link.position-measure.fixed.search-mode {
  top: 58px;
  padding: 8px;
  background: #0F0A64;
}

.feature-premium .container .about .anchor-link.position-measure ul {
  justify-content: center;
  min-width: auto;
}

.feature-premium .container .about .btn-anker {
  background-color: rgba(255, 255, 255, .7);
  border: none;
  color: #0F0A64;
}

.feature-premium .container .about .btn-anker.active {
  background-color: #0F0A64;
  border: 1px solid #C6C6C6;
  color: #fff;
}

.feature-premium .searchBoxFix {
  width: 100%;
  position: absolute;
  top: 40px;
  bottom: auto;
  left: 0;
  margin-top: 0;
  padding: 0;
}

.feature-premium .searchBoxFix .popup-position {
  top: 60px;
}

.feature-premium .searchBoxArea {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  -webkit-transform: none;
          transform: none;
  width: auto;
}

.feature-premium .searchBoxArea .searchBox {
  border: 1px solid #A6BCE9;
}

.feature-premium .searchBoxArea .searchBox .box {
  border: none;
}

.feature-premium .searchBoxArea .searchBox .box:first-child {
  border-left: none;
}

.feature-premium .searchBoxArea.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  padding: 8px;
}

.feature-premium .searchBoxArea.fixed .searchBox {
  border: 1px solid #0F0A64;
}

.feature-premium .bunner-list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
  margin-left: -16px;
  margin-right: -16px;
  overflow-X: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.feature-premium .bunner-list::-webkit-scrollbar {
  display: none;
}

.feature-premium .bunner-list > li {
  margin-right: 8px;
  scroll-snap-align: center;
}


.feature-premium .bunner-list .item {
  display: block;
}

.feature-premium .bunner-list img {
  width: 300px;
}

.feature-premium .float-bar.default {
  padding: 8px 16px 24px;
}

/* X'mas装飾 start */
.feature-premium .container .about .img-xmas-left,
.feature-premium .container .about .img-xmas-right {
  position: absolute;
}

.feature-premium .container .about .img-xmas-left {
  bottom: 16px;
  left: 16px;
}

.feature-premium .container .about .img-xmas-right {
  top: 60px;
  right: 16px;
}
/* X'mas装飾 end */

/* 新年装飾 start */
.feature-premium .container .bg-newyear-bottom {
  background-image: url(/stcontents/img/sub-page/premium/img-kv-newyear-bottom-pc.png);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain;
  background-color: #0F0A64;
  position: relative;
  overflow: hidden;
}

.feature-premium .container .about .img-newyear-left,
.feature-premium .container .about .img-newyear-right
 {
  position: absolute;
}

.feature-premium .container .about .img-newyear-left {
  bottom: 136px;
  left: 0;
}

.feature-premium .container .about .img-newyear-right {
  top: 64px;
  right: 0;
}

/* 新年装飾 end */

@media (min-width: 768px) {
  /* bg-装飾topを表示させる場合（必要に応じてコメントアウト） */
  .feature-premium .container .about {
    background: url(/stcontents/img/sub-page/premium/bg-top.png) no-repeat left top;
    background-color: #0F0A64;
  }
  .feature-premium .container .about .inner {
    display: block;
    padding: 222px 16px 0 16px;
    min-height: 600px;
  }
  .feature-premium .container .about h1 {
    margin-bottom: 32px;
    font-size: 3.6rem;
  }
  .feature-premium .container .about h1:before {
    bottom: -16px;
  }
  .feature-premium .container .about h1 img {
    max-width: 529px;
  }
  .feature-premium .container .about .anchor-link.position-measure.fixed.search-mode {
    width: auto;
    top: 78px;
  }
  .feature-premium .container .about .sub-ttl {
    font-size: 3.2rem;
    letter-spacing: 8px;
  }
  .feature-premium .container .about .lead {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 8px;
    margin-bottom: 16px;
    font-size: 2rem;
    letter-spacing: 2px;
  }
  .feature-premium .container .about .lead img {
    display: inline-block;
    margin: 0 8px;
    max-width: 212px;
  }
  .feature-premium .container .about .lead + p {
    font-size: 1.6rem;
  }
  .feature-premium .container .about .lead + p br {
    display: block;
  }
  .feature-premium .searchBoxFix {
    margin-top: 0;
    padding: 90px 0 30px;
    position: absolute;
    /* bottom: 244px; */
    top: 40px;
    margin: 0;
    padding: 0;
  }
  .feature-premium .searchBoxArea {
    /* position: absolute; */
    position: static;
    top: 0;
  }

  .feature-premium .bunner-list {
    display: flex;
    margin-bottom: 40px;
    justify-content: center;
  }

  .feature-premium .bunner-list img {
    width: auto;
    max-width: 100%;
  }

  .feature-premium .bunner-list a:hover {
    opacity: .8;
  }

  .feature-premium .float-bar.default {
    padding: 16px;
  }

  /* X'mas装飾 start */
  .feature-premium .container .about .img-xmas-left {
    top: 150px;
    left: 50%;
    bottom: auto;
    transform: translateX(-200%);
  }

  .feature-premium .container .about .img-xmas-right {
    top: 150px;
    right: 50%;
    transform: translateX(175%);
  }
  /* X'mas装飾 end */
}

@media (max-width: 1280px) {
  .feature-premium .container .about .img-newyear-left {
    transform: translateX(-60%);
  }
  .feature-premium .container .about .img-newyear-right {
    transform: translateX(60%);
  }
}

@media (max-width: 767px) {
  .feature-premium .searchBoxArea.modal-on {
    position: fixed;
  }
  .feature-premium .searchBoxArea .searchBox {
    width: calc(100vw - 47px);
    border: none;
    border-bottom: 1px solid #C6C6C6;
  }
  .feature-premium .popup-peopleroom {
    width: 100%;
    padding: 26px 24px 120px;
    font-size: 1.4rem;
  }
  .feature-premium .btn-popup-close {
    background: url(/stcontents/img/common/icon-close-4.svg);
    left: auto;
    right: 14px;
  }

  /* 新年装飾 start */
  .feature-premium .container .about .anchor-link.position-measure {
    position: absolute;
    top: 500px;
  }
  .feature-premium .container .bg-newyear-bottom {
    background-image: url(/stcontents/img/sub-page/premium/img-kv-newyear-bottom-sp.png);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: contain;
    background-color: #0F0A64;
    position: relative;
  }
  .feature-premium .container .about .img-newyear-left {
    bottom: 32px;
    left: 0;
    transform: translateX(0);
  }

  .feature-premium .container .about .img-newyear-right {
    top: 70px;
    right: 0;
    transform: translateX(0);
  }
  /* 新年装飾 end */
}

  /* 新年装飾 start */
@media (max-width: 767px) {
  .feature-premium .container .about .img-newyear-right {
    top: 100px;
    right: 0;
    transform: translateX(0);
  }
  /* 新年装飾 end */
}

.feature-premium section .tab {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0 24px;
  font-size: 1.8rem;
}

.feature-premium section .tab li {
  width: 50%;
  padding-bottom: 16px;
  border-bottom: 4px solid #7C7C7C;
  text-align: center;
  font-weight: bold;
  color: #7C7C7C;
  cursor: pointer;
}

.feature-premium section .tab li.active {
  border-bottom: 4px solid #FFF;
  color: #FFF;
}

.feature-premium section .tab-list {
  display: none;
}

.feature-premium section .tab-list:first-of-type {
  display: block;
}

@media (min-width: 768px) {
  .feature-premium section .tab {
    padding: 40px 0 48px;
    font-size: 2.6rem;
  }
  .feature-premium section .tab li {
    padding-bottom: 24px;
  }
  .feature-premium section .tab li:hover {
    opacity: 0.7;
  }
}

.feature-premium .hotelcredit .lead h3 {
  margin: 20px 0 20px;
  font-size: 1.4rem;
}

.feature-premium .hotelcredit .lead .note {
  font-size: 1.0rem;
  color: #8A8989;
}

.feature-premium .hotelcredit .anker {
  font-size: 1.4rem;
}

.feature-premium .hotelcredit .anker ul {
  padding: 30px 0 20px;
}

.feature-premium .hotelcredit .anker ul li {
  position: relative;
  padding: 0 0 10px 32px;
}

.feature-premium .hotelcredit .anker ul li:before {
  content: '';
  border: 6px solid transparent;
  border-top: 6px solid #FFF;
  position: absolute;
  top: 7px;
  left: 8px;
}

.feature-premium .hotelcredit .search .hotel_main_img_wrapper a {
  width: 380px;
  height: 286px;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_link {
  position: relative;
  bottom: inherit;
  width: auto;
}

.feature-premium .hotelcredit .search .hotel_left,
.feature-premium .hotelcredit .search .hotel_right {
  width: auto;
  margin-bottom: 24px;
}

.feature-premium .hotelcredit .search .hotel_link div.wrap {
  display: block;
}

.feature-premium .hotelcredit .search .hotel_link div.left {
  width: 100%;
  display: block;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_location {
  background-position: -3px 3px;
  margin: 0 0 14px;
  font-size: 1.2rem;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_name {
  margin: 0 0 16px;
  font-size: 1.7rem;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_staycount {
  margin-bottom: 5px;
  display: block;
  font-size: 1.1rem;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_price {
  font-size: 2.0rem;
}

.feature-premium .hotelcredit .search .hotel_right .hotel_price span {
  font-size: 1.4rem;
}

.feature-premium .hotelcredit .search .hotel_right a.btn {
  margin-top: 28px;
  margin-top: 16px;
  padding: 9px 12px;
}

.feature-premium .hotelcredit .search .hotel_link .plan_name {
  margin: 5px 0 18px;
  font-size: 1.2rem;
  line-height: 1.8;
}

.feature-premium .hotelcredit .search .howto-under {
  clear: both;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #707070;
  padding-top: 30px;
}

.feature-premium .hotelcredit .search .howto-under .howto-name {
  margin: 6px 0 10px;
  font-size: 1.6rem;
}

.feature-premium .hotelcredit .search .howto-under .text {
  line-height: 1.8;
  font-size: 1.1rem;
}

.feature-premium .hotelcredit .search .howto-under > div {
  width: calc(50% - 12px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.feature-premium .hotelcredit .search .howto-under > div .left-col {
  width: 170px;
  height: 128px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.feature-premium .hotelcredit .search .howto-under > div .left-col img {
  width: auto;
  height: 100%;
}

.feature-premium .hotelcredit .search .howto-under > div .right-col {
  padding-left: 24px;
}

@media (min-width: 768px) {
  .feature-premium .hotelcredit .lead {
    text-align: center;
  }
  .feature-premium .hotelcredit .lead h3 {
    margin: 40px 0 20px;
    font-size: 1.8rem;
  }
  .feature-premium .hotelcredit .anker {
    font-size: 1.6rem;
  }
  .feature-premium .hotelcredit .anker ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 60px 0 40px;
  }
  .feature-premium .hotelcredit .anker ul li {
    padding: 0 32px 20px;
  }
  .feature-premium .hotelcredit .anker ul li:before {
    top: 10px;
  }
  .feature-premium .hotelcredit .search .hotel_right {
    width: calc(100% - 380px);
    padding: 0 0 0 24px;
    height: 286px !important;
    float: right;
    position: relative;
  }
  .feature-premium .hotelcredit .search .hotel_right .plan_price {
    width: calc(100% - 20px);
    position: absolute;
    bottom: 0;
    left: 20px;
  }
  .feature-premium .hotelcredit .search .hotel_right a.btn {
    width: 100%;
  }
  .feature-premium .hotelcredit .search .hotel_link .plan_name {
    max-height: 58px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 1.6rem;
  }
  .feature-premium .container .hotelcredit .inner {
    padding-bottom: 30px;
  }
}

@media (max-width: 959px) {
  .feature-premium .hotelcredit .search .howto-under .howto-name {
    font-weight: normal;
    font-size: 1.3rem;
  }
  .feature-premium .hotelcredit .search .howto-under .text {
    margin-top: 12px;
    font-size: 1.0rem;
  }
  .feature-premium .hotelcredit .search .howto-under > div {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .feature-premium .hotelcredit .search .howto-under > div .left-col {
    width: 126px;
    height: 126px;
  }
  .feature-premium .hotelcredit .search .howto-under > div .right-col {
    width: calc(100% - 126px);
    padding: 10px 0 0 16px;
  }
  .feature-premium .hotelcredit .search .hotel_main_img_wrapper a {
    width: 286px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .feature-premium .hotelcredit .search .hotel_main_img_wrapper .default_img {
    position: relative;
    top: inherit;
    bottom: inherit;
    left: inherit;
    right: inherit;
  }
  .feature-premium .hotelcredit .search .hotel_right {
    width: calc(100% - 286px);
  }
}

@media (max-width: 767px) {
  .feature-premium .hotelcredit .search .hotel {
    margin-bottom: 32px;
    padding: 16px 16px;
  }
  .feature-premium .hotelcredit .search .hotel_main_img_wrapper a {
    width: auto;
    height: 144px;
  }
  .feature-premium .hotelcredit .search .hotel_main_img_wrapper .default_img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .feature-premium .hotelcredit .search .hotel_left {
    margin-bottom: 16px;
  }
  .feature-premium .hotelcredit .search .hotel_right {
    width: auto;
    padding: 0;
  }
  .feature-premium .hotelcredit .search .hotel_right .hotel_name {
    margin-bottom: 12px;
    font-size: 1.6rem;
  }
  .feature-premium .hotelcredit .search .hotel_right .hotel_location {
    margin-bottom: 12px;
  }
  .feature-premium .hotelcredit .search .hotel_right a.btn {
    margin-top: 16px;
  }
  .feature-premium .hotelcredit .search .howto-under {
    display: block;
  }
  .feature-premium .hotelcredit .search .howto-under > div {
    width: auto;
    margin-bottom: 24px;
  }
  .feature-premium .hotelcredit .search .howto-under > div:last-child {
    margin-bottom: 10px;
  }
  .feature-premium .hotelcredit .search .hotel_link .plan_name {
    margin: 0 0 16px;
    font-size: 1.2rem;
  }
}

@media (max-width: 360px) {
  .feature-premium .hotelcredit .search .howto-under > div .left-col {
    width: 90px;
    height: 90px;
  }
  .feature-premium .hotelcredit .search .howto-under > div .right-col {
    width: calc(100% - 90px);
  }
}

.feature-premium .container .ranking {
  padding-top: 80px;
  padding-bottom: 0;
  background: #F5F5F5;
}

.feature-premium .container .ranking h2.title {
  color: #333;
}

.feature-premium .container .ranking a {
  color: #333;
}

.feature-premium .container .ranking .tab-box > * {
  background: #F5F5F5;
}

.feature-premium .container .ranking .tab-box > *.active {
  background: #0F0A64;
}

.feature-premium .container .ranking .tab-box > *.active:hover {
  background: #0F0A64;
}

.feature-premium .container .ranking .tab-box > *:hover {
  background: #554B98;
}

.feature-premium .container .h2-small {
  text-align: left;
  font-size: 1.6rem;
  color: #333;
}

@media (min-width: 768px) {
  .feature-premium .container .ranking {
    padding-top: 100px;
    padding-bottom: 48px;
  }
  .feature-premium .container .h2-small {
    font-size: 2rem;
  }
}

@media (max-width: 767px) {
  .feature-premium .container .ranking .wrap {
    padding: 0;
  }
  .feature-premium .container .ranking .hotel-info-list .result-hotel {
    border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

@media (max-width: 1023px) {
  .feature-premium .container .hotel-info a {
    color: #FFF;
  }
  .feature-premium .container .h2-small {
    color: #FFF;
  }
}

.feature-premium .plan-deal {
  padding: 40px 0;
}

.feature-premium .plan-deal section + section {
  margin-top: 24px;
}

.feature-premium .container .plan-deal h2 {
  color: #333 !important;
  font-size: 2.4rem;
  padding-bottom: 8px;
  margin-bottom: 24px;
  position: relative;
}

.feature-premium .container .plan-deal h2::after {
  content: '';
  width: 40px;
  height: 1px;
  background-color: #FF503E;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.feature-premium .container .plan-deal h2 span {
  display: block;
  font-size: 1.6rem;
}

.feature-premium .plan-deal .secret-bnr img {
  max-width: 100%;
}

.feature-premium .plan-list {
  display: flex;
  margin: 0 -16px;
  overflow-x: auto;
  padding-bottom: 24px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

/* プレミアムLP：カードが1枚のみの場合はコメントアウト（必要に応じて適用） */
/* .feature-premium .plan-list:has(li:only-child) {
  justify-content: center;
} */

.feature-premium .plan-list::-webkit-scrollbar {
  display: none;
}


.feature-premium .plan-list > li {
  margin-right: 8px;
  scroll-snap-align: center;

}

.feature-premium .plan-list > li:first-child {
  margin-left: 16px;
}

.feature-premium .plan-list > li:last-child {
  margin-right: 16px;
}

.feature-premium .plan-deal .plan-deal-card {
  display: block;
  border-radius: 8px;
  overflow: hidden;
  background-color: #fff;
  width: 327px;
  height: 100%;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.10);
}

.feature-premium .plan-deal .plan-deal-card-head {
  position: relative;
  height: 300px;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-img {
  width: 100%;
  height: 100%;
  position: relative;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-img::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.8;
  background: linear-gradient(to top,#000 0%, rgba(0, 0, 0, 0.00) 60%);
}

.feature-premium .plan-deal .plan-deal-card-head .plan-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-labels {
  position: absolute;
  top: 16px;
  left: 16px;
  right: 16px;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail {
  position: absolute;
  bottom: 16px;
  left: 16px;
  right: 16px;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail {
  color: #fff;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .info {
  display: flex;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .grade {
  margin-right: 4px;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .grade img {
  height: 12px;
  vertical-align: middle;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .grade img.grade_museum {
  height: 16px;
  vertical-align: middle;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .label {
  font-size: 1rem;
  padding: 0 4px;
  border-radius: 2px;
  color: #fff;
  border: 1px solid #fff;
}

.feature-premium .plan-deal .plan-deal-card-head .plan-detail .name {
  font-size: 1.6rem;
  font-weight: bold;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.feature-premium .plan-deal .plan-deal-card-body {
  color: #333;
  padding: 8px 16px 16px;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  height: calc(100% - 300px);
}

.feature-premium .plan-deal .plan-secret-list .plan-deal-card-body {
  justify-content: flex-start;
}

.feature-premium .plan-deal  .plan-list.space-between .plan-deal-card-body {
  display: flex;
  flex-flow: column;
  height: calc(100% - 300px);
  justify-content: space-between;
}

.feature-premium .plan-deal .limited-label {
  text-align: center;
  color: #0F0A64;
  background-color: #E1E9F8;
  padding: 4px 8px;
  margin-bottom: 8px;
}

.feature-premium .plan-deal .limited-label2 {
  text-align: center;
  color: #0F0A64;
  background-color: #E1E9F8;
  /* padding: 4px 8px; */
  margin-top: 10px;
  font-size: 1.6rem;
  font-weight: bold;
}

.feature-premium .plan-deal .explain > dt {
  padding-left: 8px;
  border-left: 2px solid #FF503E;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 8px;
  display: flex;
  white-space: nowrap;
}

.feature-premium .plan-deal .explain > dd {
  font-size: 1.4rem;
}

.feature-premium .plan-deal .explain > dd + dt {
  margin-top: 8px;
}

.feature-premium .plan-deal .deal-icons,
.feature-premium .plan-deal .deal-icons-long {
  display: flex;
  align-items: center;
  margin-left: 16px;
}

.feature-premium .plan-deal .icon-square-meter,
.feature-premium .plan-deal .icon-bed-type,
.feature-premium .plan-deal .icon-no-smoking,
.feature-premium .plan-deal .icon-smoke-on
 {
  font-size: 1.2rem;
  color: #757575;
  display: flex;
  align-items: center;
  margin-right: 8px;
}

.feature-premium .plan-deal .icon-square-meter::before,
.feature-premium .plan-deal .icon-bed-type::before,
.feature-premium .plan-deal .icon-no-smoking::before,
.feature-premium .plan-deal .icon-smoke-on::before
 {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 4px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.feature-premium .plan-deal .icon-square-meter::before {
  background-image: url(../img/common/icon-square-meter.svg);
}

.feature-premium .plan-deal .icon-bed-type::before {
  background-image: url(../img/common/icon-bed-type.svg);
}

.feature-premium .plan-deal .icon-no-smoking::before {
  background-image: url(../img/common/icon-no-smoking.svg);
}
.feature-premium .plan-deal .icon-smoke-on::before {
  background-image: url(../img/common/icon-smoke-on.svg);
}

.feature-premium .plan-deal .price-box {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  margin-top: auto;
}

.feature-premium .plan-deal .price-box .people-room {
  margin-right: 8px;
  /* margin-bottom: 4px; */
}

.feature-premium .plan-deal .price-box .price {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}

.feature-premium .plan-deal .price-box .price-discount {
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  line-height: 1.4;
}

.feature-premium .plan-deal .price-box .price.discount-before {
  color: #C6C6C6;
  font-size: 1.4rem;
  font-weight: normal;
  text-decoration: line-through;
}

.feature-premium .plan-deal .price-box .price.discount-after {
  font-size: 2rem;
  font-weight: bold;
  /* margin-left: 8px; */
}

@media (min-width: 768px) {

  .feature-premium .plan-deal {
    padding-bottom: 80px;
  }

  .feature-premium .plan-deal section + section {
    margin-top: 48px;
  }

  .feature-premium .container .plan-deal h2 {
    font-size: 3.2rem;
  }

  .feature-premium .container .plan-deal h2 span {
    font-size: 2.2rem;
  }

  .feature-premium .plan-list {
    display: flex;
    padding-bottom: 0;
  }

  .feature-premium .plan-deal .plan-list {
    margin-left: 0;
    margin-right: 0;
    overflow-x: unset;
    flex-wrap: wrap;
  }

  .feature-premium .plan-deal .plan-list + .plan-list {
    margin-top: 32px;
  }

  /* liが1行に2個の場合 */
  .feature-premium .plan-deal .plan-list > li {
    width: calc(50% - 16px);
    margin-right: 0;
    margin-bottom: 32px;
  }
  .feature-premium .plan-deal .plan-list > li:nth-child(odd) {
    margin-right: 32px;
  }

  /* liが1行に3個の場合 */
  .feature-premium .plan-deal .plan-list.item3 > li {
    width: calc(33.3% - 32px);
    margin-right: 32px;
    margin-bottom: 32px;
  }
  .feature-premium .plan-deal .plan-list.item3 > li:nth-child(3) {
    margin-right: 0;
  }

  .feature-premium .plan-deal .plan-list > li:first-child {
    margin-left: 0;
  }

  .feature-premium .plan-deal .plan-list > li:last-child {
    margin-right: 0;
  }

  /* .feature-premium .plan-deal .plan-list > li:nth-last-child(-n+2) {
    margin-bottom: 0;
  } */

  .feature-premium .plan-deal .plan-list .plan-deal-card {
    width: auto;
  }

  .feature-premium .plan-deal .plan-list .plan-deal-card:hover {
    opacity: .8;
  }

  .feature-premium .plan-deal .plan-secret-list {
    justify-content: space-between;
  }

  .feature-premium .plan-deal .plan-secret-list > li {
    width: auto;
  }

  .feature-premium .plan-deal .plan-secret-list .plan-deal-card {
    max-width: 352px;
  }

  .feature-premium .plan-deal .plan-secret-list .plan-deal-card-head {
    height: 260px;
  }

  .feature-premium .plan-deal .plan-deal-card-head .plan-detail .grade img {
    height: 20px;
  }

  .feature-premium .plan-deal .plan-deal-card-head .plan-detail .label {
    font-size: 1.2rem;
    padding: 2px 8px;
  }

  .feature-premium .plan-deal .plan-deal-card-head .plan-detail .name {
    font-size: 2rem;
  }

  .feature-premium .plan-deal .limited-label {
    font-size: 1.2rem;
  }

  .feature-premium .plan-deal .limited-label2 {
    font-size: 2rem;
  }

  .feature-premium .plan-deal .explain > dt {
    font-size: 2rem;
    font-weight: bold;
  }

  .feature-premium .plan-deal .explain > dd {
    font-size: 1.6rem;
  }

  .feature-premium .plan-deal .price-box .price {
    font-size: 2.4rem;
  }

  .feature-premium .plan-deal .price-box .price.discount-before {
    font-size: 2rem;
  }

  .feature-premium .plan-deal .price-box .price.discount-after {
    font-size: 2.4rem;
  }
}

@media (max-width: 767px) {
  .feature-premium .plan-deal .plan-deal-card-head {
    height: 220px;
  }
  .feature-premium .plan-deal .plan-deal-card-body,
  .feature-premium .plan-deal .plan-list.space-between .plan-deal-card-body {
    height: calc( 100% - 220px);
  }

  /* icon箇所のテキスト量が多い場合に使用-sp */
  .feature-premium .plan-deal .deal-icons-long {
    display: inline-block;
    margin-left: 55px;
  }
}

.feature-premium .container .area-section {
  background: #0F0A64;
  font-weight: bold;
}

.feature-premium .container .area-section-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: none;
}

.feature-premium .container .area-section .inner {
  padding-top: 113px;
  padding-bottom: 16px;
}

.feature-premium .container .area-section .lead {
  max-width: 920px;
  margin: 0px auto;
  line-height: 2;
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
  position: relative;
  padding-bottom: 16px;
}

.feature-premium .container .area-section .lead::after {
  content: '';
  width: 40px;
  height: 1px;
  background-color: #FF503E;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.feature-premium .area-map {
  background: url(/stcontents/img/sub-page/premium/map-sp.png) no-repeat center bottom;
  background-size: 80%;
  margin: 0 auto;
  padding-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.feature-premium .area-map > span {
  background: #FFF;
  display: inline-block;
  width: 100%;
  margin-bottom: 8px;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1.4rem;
  letter-spacing: 0;
  color: #0F0A64;
}

.feature-premium .area-map > span:hover {
}

.feature-premium .area-map > span > a {
  display: block;
  width: 100%;
  /* height: 100%; */
  padding: 8px 34px 8px 16px;
  position: relative;
  color: #0F0A64;
  white-space: nowrap;
}

.feature-premium .area-map > span > a:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-relux.svg);
  position: absolute;
  top: 54%;
  right: 12px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.feature-premium .area-map > span.open .hotel-carousel {
  display: flex;
}

.feature-premium .area-map > span.open > a {
  background-color: #4F68C2;
  color: #fff;
  margin-bottom: 8px;
}

.feature-premium .area-map > span.open > a:after {
          transform: translateY(-50%) rotate(180deg);
          content: url(/stcontents/img/common/icon-arrow-bottom-white.svg);
}

.feature-premium .area-map .slide-counter {

}
.feature-premium .area-map .slide-counter .now-count,
.feature-premium .area-map .slide-counter .slash {
  display: none;
}

.feature-premium .area-map > span.open .slide-counter .now-count,
.feature-premium .area-map > span.open .slide-counter .slash {
  display: inline;
}


@media (min-width: 768px) {
  .feature-premium .container .area-section-overlay.show {
    display: block;
  }
  .feature-premium .container .area-section .inner {
    padding-top: 140px;
    padding-bottom: 80px;
  }
  .feature-premium .container .area-section .lead {
    font-size: 1.6rem;
  }
  .feature-premium .area-map {
    background: url(/stcontents/img/sub-page/premium/map-pc-2.png) no-repeat center center;
    background-size: 587px;
    width: 587px;
    height: 581px;
    margin: 55px auto 0;
    padding: 0;
    position: relative;
    display: block;
  }
  .feature-premium .area-map > span {
    width: auto;
    position: absolute;
    margin: 0;
    font-weight: bold;
    z-index: 1;
  }
  .feature-premium .area-map > span > a {
    padding-top: 4px;
    padding-bottom: 4px;
  }
  .feature-premium .area-map > span > a::after {
    content: '';
    display: inline-block;
    background-image: url(/stcontents/img/common/icon-arrow-right-5.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 10px;
    height: 14px;
  }
  .feature-premium .area-map > span > a:hover {
    background: #554B98;
    color: #fff;
  }
  .feature-premium .area-map > span > a:hover::after {
    content: '';
    display: inline-block;
    background-image: url(/stcontents/img/common/icon-arrow-right-white-2.svg);
  }
  .feature-premium .area-map > span.open {
    width: 420px;
    overflow: hidden;
    border-radius: 0;
    z-index: 2;
    box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.45);
  }
  .feature-premium .area-map > span.open > a {
    cursor: auto;
    color: #333;
    background-color: #fff;
  }
  .feature-premium .area-map > span.open > a:hover {
    background-color: #fff;
  }

  .feature-premium .area-map > span.open > a::after {
    display: none;
  }
  .feature-premium .area-map .area-1 {
    bottom: 519px;
    /* top: 28px; */
    right: 193px;
    /* left: 266px; */
  }
  .feature-premium .area-map .area-2 {
    top: 170px;
    left: 543px;
    /* right: -70px; */
  }
  .feature-premium .area-map .area-3 {
    top: 272px;
    left: 545px;
    /* right: -86px; */
  }
  .feature-premium .area-map .area-4 {
    top: 374px;
    left: 509px;
    /* right: -50px; */
  }
  .feature-premium .area-map .area-5 {
    bottom: 342px;
    /* top: 205px; */
    right: 219px;
    /* left: 240px; */
  }
  .feature-premium .area-map .area-6 {
    bottom: 277px;
    /* top: 270px; */
    right: 302px;
    /* left: 171px; */
  }
  .feature-premium .area-map .area-7 {
    top: 434px;
    left: 408px;
    /* right: 65px; */
  }
  .feature-premium .area-map .area-8 {
    top: 485px;
    left: 290px;
    /* right: 183px; */
  }
  .feature-premium .area-map .area-9 {
    bottom: 246px;
    /* top: 301px; */
    right: 460px;
    /* left: -29px; */
  }
  .feature-premium .area-map .area-10 {
    top: 534px;
    left: 146px;
    /* right: 327px; */
  }
  .feature-premium .area-map .area-11 {
    top: 503px;
    left: -76px;
  }
  .feature-premium .area-map .area-12 {
    bottom: 469px;
    /* top: 78px; */
    right: 353px;
    /* left: 120px; */
  }
}

@media (min-width: 1024px) {
  .feature-premium .area-map .area-2 {
    left: 555px;
    /* right: -82px; */
  }
  .feature-premium .area-map .area-3 {
    left: 559px;
    /* right: -100px; */
  }
}

@media (max-width: 360px) {
  .feature-premium .area-map > span {
    font-size: 1.2rem;
  }
  .feature-premium .area-map > span a {
    padding-right: 22px;
  }
  .feature-premium .area-map > span a:after {
    right: 8px;
  }
}

.feature-premium .hotel-carousel {
  display: none;
  width: 100%;
  /* overflow: auto; */
  margin-bottom: 8px;
  /* scroll-snap-type: x mandatory; */
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/*Google Chrome、Safariへの対応*/
.feature-premium .hotel-carousel::-webkit-scrollbar{
  display: none;
}

.feature-premium .hotel-carousel .slick-prev,
.feature-premium .hotel-carousel .slick-next {
  background-color: #fff;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  z-index: 1;
}

.feature-premium .hotel-carousel .slick-prev {
  left: 16px;
}

.feature-premium .hotel-carousel .slick-next {
  right: 16px;
}

.feature-premium .hotel-carousel .slick-prev::before {
  content: '';
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  border-top: 2px solid #0F0A64;
  border-left: 2px solid #0F0A64;
  transform: rotate(-45deg);
  top: 0;
  left: 12px;
  bottom: 0;
  margin: auto;
}

.feature-premium .hotel-carousel .slick-next::before {
  content: '';
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  border-top: 2px solid #0F0A64;
  border-right: 2px solid #0F0A64;
  transform: rotate(45deg);
  top: 0;
  right: 12px;
  bottom: 0;
  margin: auto;
}

.feature-premium .hotel-carousel li {
  padding-left: 8px;
}

.feature-premium .hotel-carousel li:last-child {
  padding-right: 8px;
}

.feature-premium .hotel-carousel .item {
  display: block;
  width: 300px;
  height: 280px;
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.feature-premium .hotel-carousel .item:hover {
  opacity: .7;
}

.feature-premium .hotel-carousel .item .bg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.feature-premium .hotel-carousel .hotel-grade {
  padding: 0;
  display: flex;
}

.feature-premium .hotel-carousel .hotel-grade > img {
  height: 16px;
  margin-right: 2px;
}

.feature-premium .hotel-carousel .hotel-info {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 16px;
  color: #fff;
  display: flex;
  flex-flow: column;
  background: linear-gradient(to top, rgba( 0, 0, 0, .8) 0%, transparent 100%);
}

.feature-premium .hotel-carousel .hotel-name {
  font-size: 1.4rem;
}

.feature-premium .hotel-carousel .hotel-address {
  font-size: 1.2rem;
}

.feature-premium .hotel-carousel .hotel-link {
  margin-top: 8px;
  align-self: flex-end;
}

.feature-premium .hotel-carousel .hotel-link-btn {
  font-size: 1.2rem;
  padding: 0 8px;
  background-color: rgba( 255, 255, 255, .2);
  border: 1px solid #fff;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  width: auto;
  margin-left: auto;
}

.feature-premium .hotel-carousel .hotel-link-btn::after {
  display: none;
}

@media (min-width: 768px) {
  .feature-premium .hotel-carousel li {
    padding: 0;
    margin: 0 4px;
  }

  .feature-premium .hotel-carousel li:first-child {
    margin-left: 40px;
  }

  .feature-premium .hotel-carousel li:last-child {
    padding-right: 0;
  }

  .feature-premium .hotel-carousel .item {
    width: 340px;
    height: 200px;
  }

  .feature-premium .hotel-carousel .slick-arrow {
    display: block;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.20);
  }

  .feature-premium .hotel-carousel .slick-arrow:hover {
    background: #554B98;
  }

  .feature-premium .hotel-carousel .slick-prev.slick-disabled {
    pointer-events: none;
  }

  .feature-premium .hotel-carousel .slick-prev.slick-disabled::before {
    border-top-color: #C6C6C6;
    border-left-color: #C6C6C6;
  }

  .feature-premium .hotel-carousel .slick-next.slick-disabled {
    pointer-events: none;
  }

  .feature-premium .hotel-carousel .slick-next.slick-disabled::before {
    border-top-color: #C6C6C6;
    border-right-color: #C6C6C6;
  }
}

.feature-premium .diamond {
  padding: 80px 0 32px 0;
  background: #F5F5F5;
}

.feature-premium .diamond h2 {
  color: #333 !important;
}

.feature-premium .diamond .frame-sub-list {
  padding: 0;
}

.feature-premium .root-sub-list, .feature-premium .root-main-foot {
  background: none;
}

.feature-premium .sub-box-detail {
  color: #333;
}

.feature-premium .container .btn-default {
  color: #0F0A64;
}

.feature-premium .container .btn-default:hover {
  color: #554B98;
}

.feature-premium .container .btn-default:active {
  color: #FFF;
}

@media (min-width: 768px) {
  .feature-premium .diamond {
    padding: 160px 0 64px 0;
  }
}

.feature-premium .container .sales {
  background: #0F0A64;
}

.feature-premium .container .sales .inner {
  min-height: 0;
  padding-top: 80px;
  padding-bottom: 40px;
}

.feature-premium .container .sales h2 {
  font-size: 3.0rem;
}

.feature-premium .container .sales .banner-wrap {
  width: 100%;
  display: block;
  overflow-x: auto;
}

.feature-premium .container .sales .banner-wrap::-webkit-scrollbar {
  display: none;
}

.feature-premium .container .sales .banner {
  display: block;
  overflow-x: auto;
}

.feature-premium .container .sales .banner li {
  width: 82vw;
  margin-bottom: 0;
  float: left;
  margin-right: 5vw;
}

.feature-premium .container .sales .banner li:last-child {
  margin-right: 0;
}

.feature-premium .container .sales .banner li a {
  display: block;
}

.feature-premium .container .sales .banner li img {
  display: block;
  max-width: 100%;
  border: solid 1px #787878;
  border-radius: 8px;
}

@media (min-width: 980px) {
  .feature-premium .container .sales .banner {
    width: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .feature-premium .container .sales .banner li {
    width: auto;
  }
}

@media (min-width: 768px) {
  .feature-premium .container .sales .banner-wrap {
    overflow-x: none;
  }
  .feature-premium .container .sales .banner {
    width: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .feature-premium .container .sales .banner li {
    width: 32%;
    margin: 0;
    float: none;
  }
  .feature-premium .container .sales h2 {
    font-size: 4.0rem;
  }
}

@media (max-width: 767px) {
  .feature-premium .container .sales .banner-wrap {
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
  .feature-premium .container .sales .banner {
    width: 261vw;
    margin-left: 16px;
  }
}

.feature-premium .shareBtn li {
  display: inline-block;
  font-weight: bold;
  margin-right: 10px;
  vertical-align: middle;
}

.feature-premium .shareBtn li:last-child {
  margin-right: 0;
}

.feature-premium .shareBtn li a:link {
  color: #FFF;
  text-decoration: none;
}

.feature-premium .shareBtn li a:visited {
  color: #FFF;
  text-decoration: none;
}

.feature-premium .shareBtn .twitter i {
  border-radius: 75%;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}

.feature-premium .shareBtn .twitter i img {
  width: 14px;
}

.feature-premium .shareBtn .line i {
  border-radius: 75%;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}

.feature-premium .shareBtn .line i img {
  width: 14px;
}

.feature-premium .btn-fb {
  background-color: #1877F2;
  border-radius: 4px;
  border: none;
}

.feature-premium .btn-fb:hover {
  background-color: #1877F2;
  opacity: 0.8;
}

.feature-premium .btn-fb img {
  height: 20px;
}

@media (min-width: 768px) {
  .feature-premium .shareBtn {
    margin: 0 auto;
  }
  .feature-premium .shareBtn li {
    display: inline-block;
    font-weight: bold;
  }
  .feature-premium .shareBtn li:nth-child(1) span.text {
    margin: 0 20px 0 5px;
  }
  .feature-premium .shareBtn li:nth-child(2) span.text {
    margin: 0 0 0 5px;
  }
  .feature-premium .shareBtn li a:link {
    color: #FFF;
    text-decoration: none;
  }
  .feature-premium .shareBtn li a:visited {
    color: #FFF;
    text-decoration: none;
  }
}

.feature-premium .shareBtn .facebook i {
  width: 32px;
  height: 32px;
  display: inline-block;
  border-radius: 75%;
  background-repeat: no-repeat;
  background-size: 32px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-facebook.svg);
}

.feature-premium .shareBtn .twitter i {
  width: 32px;
  height: 32px;
  border-radius: 75%;
  background-size: 32px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-twitter.svg);
}

.feature-premium .shareBtn .line i {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  background-size: 32px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-line.svg);
}

@media (max-width: 767px) {
  .feature-premium .shareBtn li {
    margin: 0 5px 0;
  }
}

@media (max-width: 767px) {
  .feature-premium .searchBoxArea.fixed {
    padding: 4px 0;
  }
  .feature-premium .searchBoxArea.fixed .searchBox.selected .box:first-child {
    border: none;
  }
  .feature-premium .searchBoxArea.fixed .searchBox.selected .box.checkin-out {
    border: none;
    border-radius: 4px;
  }
  .feature-premium .searchBoxArea.fixed .searchBox.selected .box.peopleroom {
    border: none;
    border-radius: 4px;
  }
}

.feature-premium .monthlyRecommend {
  background-color: #fff;
  position: relative;
  color: #333;
  padding-bottom: 40px;
}

.feature-premium .monthlyRecommend-head {
  height: 600px;
  width: 100%;
  position: relative;
  z-index: 0;
  background: #1B1C1C;
}

.feature-premium .monthlyRecommend-head::before {
  content: '';
  display: block;
  background:
    url(../img/sub-page/premium/bg-recommend-wave-sp.svg) no-repeat bottom -1px center,
    linear-gradient(to bottom, #0F0A64 0, #0F0A6400 200px),
    linear-gradient(to top, rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0.00) 200px);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}

.feature-premium .monthlyRecommend-head .kv-slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.feature-premium .monthlyRecommend-head .kv-slider .slick-list,
.feature-premium .monthlyRecommend-head .kv-slider .slick-track {
  height: 100%;
}

.feature-premium .monthlyRecommend-head .kv-slider li {
  width: 100%;
  height: 100%;
}

.feature-premium .monthlyRecommend-head .kv-slider li .bg {
  width: 100%;
  height: 100%;
  background-size: cover;
}

.feature-premium .monthlyRecommend-head h2 {
  color: #fff;
  font-size: 2.4rem;
  font-weight: normal;
  position: absolute;
  bottom: 80px;
  width: 100%;
  text-align: center;
  z-index: 3;
}

.feature-premium .monthlyRecommend-head h2 span {
  display: block;
  font-size: 16px;
  line-height: 28px;
  padding-bottom: 16px;
}

/* .feature-premium .monthlyRecommend-head h2::after {
  content: '';
  width: 40px;
  height: 1px;
  background-color: #FF503E;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
} */

.feature-premium .monthlyRecommend-list {
  margin-top: -40px;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility {
  padding: 0 16px;
  margin-bottom: 40px;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:last-child {
  margin-bottom: 0;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility .facility-image {
  position: relative;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility .facility-image::before {
  content: '';
  display: block;
  pointer-events: none;
  height: 43px;
  background: linear-gradient(transparent 0%, #000 100%);
  opacity: 0.5;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-image {
  margin-left: -8px;
  margin-right: -16px;
  border-radius: 145px 0 0 145px;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-image {
  margin-left: -16px;
  margin-right: -8px;
  border-radius: 0 145px 145px 0;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-image::after,
.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-image::after {
  content: '';
  display: block;
  pointer-events: none;
  width: 50px;
  opacity: 0.5;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-image::after {
  background: linear-gradient(to right, transparent 0%, #000 100%);
  right: 0;
}

.feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-image::after {
  background: linear-gradient(to left, transparent 0%, #000 100%);
  left: 0;
}

.feature-premium .facility-image {
  overflow: hidden;
  margin-bottom: 16px !important;
}

.feature-premium .facility-image .slick-arrow {
  width: 12px;
  height: 12px;
  cursor: pointer;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 2;
}

.feature-premium .facility-image .slick-arrow:hover {
  opacity: .7;
}

.feature-premium .facility-image .slick-arrow.slick-disabled {
  display: none !important;
}

.feature-premium .facility-image .slick-prev::before,
.feature-premium .facility-image .slick-next::before {
  content: none;
}

.feature-premium .facility-image .slick-prev {
  left: 12px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(-45deg);
}

.feature-premium .facility-image .slick-next {
  right: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.feature-premium .facility-image .slick-dots {
  bottom: 16px;
  z-index: 2;
}

.feature-premium .facility-image .slick-dots > li {
  width: auto;
  height: auto;
  margin: 0 2px;
}

.feature-premium .facility-image .slick-dots > li button {
  appearance: none;
  padding: 0;
  width: 4px;
  height: 4px;
  border-radius: 100%;
  background-color: #fff;
}

.feature-premium .facility-image .slick-dots > li button::before {
  content: none;
}

.feature-premium .facility-image .slick-dots > li.slick-active button {
  width: 6px;
  height: 6px;
}

.feature-premium .facility-image-item {
  width: 100%;
  height: 285px;
}

.feature-premium .facility-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.feature-premium .facility-detail .labels {
  margin-bottom: 8px;
  display: flex;
}

.feature-premium .facility-detail .labels > li {
  margin-right: 4px;
  line-height: 1;
}

.feature-premium .facility-detail .labels > li:last-child {
  margin-right: 0;
}

.feature-premium .facility-detail .labels .icon-orange {
  height: 16px;
}

.feature-premium .facility-detail .labels > li img {
  vertical-align: bottom;
}

.feature-premium .facility-detail .info {
  display: flex;
  align-items: center;
}

.feature-premium .facility-detail .grade {
  margin-right: 4px;
  line-height: 0;
}

.feature-premium .facility-detail .grade img {
  height: 16px;
  vertical-align: middle;
}

.feature-premium .facility-detail .label {
  line-height: 1;
  font-size: 1rem;
  border: 1px solid #333;
  border-radius: 2px;
  padding: 2px 4px;
  display: block;
}

.feature-premium .facility-detail .name {
  font-size: 1.6rem;
  font-weight: bold;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.feature-premium .facility-detail .address {
  font-size: 1.2rem;
  color: #757575;
}

.feature-premium .facility-detail .explain {
  margin-top: 8px;
}

.feature-premium .facility-detail .explain > dt {
  padding-left: 8px;
  border-left: 2px solid #FF503E;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 8px;
}

.feature-premium .facility-detail .explain > dd {
  margin-bottom: 8px;
}

.feature-premium .facility-detail .explain .labels {
  display: flex;
  flex-wrap: wrap;
}

.feature-premium .facility-detail .explain .labels > li {
  font-size: 1.2rem;
  color: #fff;
  background-color: #D9B255;
  border-radius: 2px;
  padding: 4px 8px;
  margin-right: 8px;
  margin-bottom: 8px;
  height: 20px;
}

.feature-premium .facility-detail .explain .labels > li:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

/* .feature-premium .facility-detail .explain .labels.labels-color-blue > li {
  background-color: #1686BC;
}

.feature-premium .facility-detail .explain .labels.labels-color-green > li {
  background-color: #4BB38A;
}

.feature-premium .facility-detail .explain .labels.labels-color-purple > li {
  background-color: #8494FA;
} */

.feature-premium .facility-detail .explain .text {
  font-size: 1.4rem;
}

.feature-premium .facility-detail .price-box {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  margin-bottom: 8px;
}

.feature-premium .facility-detail .price-box .people-room {
  margin-right: 4px;
  /* margin-bottom: 4px; */
}

.feature-premium .facility-detail .price-box .price {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
  white-space: nowrap;
}

.feature-premium .facility-detail .price-box .price-discount {
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  line-height: 1.4;
}

.feature-premium .facility-detail .price-box .price.discount-before {
  color: #C6C6C6;
  font-size: 1.4rem;
  font-weight: normal;
  text-decoration: line-through;
}

.feature-premium .facility-detail .price-box .price.discount-after {
  font-size: 2rem;
  font-weight: bold;
  /* margin-left: 8px; */
}

.feature-premium .facility-detail .price-box .price.limited-text {
  font-size: 2rem;
}

.feature-premium .facility-detail .btn-relux {
  width: 100%;
  height: 40px;
}

@media (min-width: 768px) {
  .feature-premium .monthlyRecommend {
    overflow: hidden;
  }

  .feature-premium .monthlyRecommend-head {
  }
  .feature-premium .monthlyRecommend-head::before {
    background: url(../img/sub-page/premium/bg-recommend-wave-pc.svg) no-repeat bottom -1px center/100%,
    linear-gradient(to bottom, #0F0A64 0, #0F0A6400 200px),
    linear-gradient(to top, rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0.00) 200px);
  }

  .feature-premium .monthlyRecommend-head h2 {
    font-size: 3.2rem;
    line-height: 56px;
    bottom: 80px;
  }

  .feature-premium .monthlyRecommend-head h2 span {
    font-size: 2.2rem;
    line-height: 38px;
  }

  .feature-premium .monthlyRecommend-list {
    margin-top: 0;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility {
    display: flex;
    align-items: center;
    /* max-width: 1120px; */
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
    padding: 0;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility .facility-image {
    width: 50%;
  }

  .feature-premium .facility-image {
    margin-bottom: 0 !important;
  }

  .feature-premium .facility-image .slick-arrow {
    width: 24px;
    height: 24px;
  }

  .feature-premium .facility-image .slick-prev {
    left: 40px;
  }

  .feature-premium .facility-image .slick-next {
    right: 40px;
  }

  .feature-premium .facility-image-item {
    height: 420px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) {
    padding-left: 160px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) {
    padding-right: 160px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-image {
    order: 2;
    /* margin-left: 24px; */
    margin: 0;
    border-radius: 210px 0 0 210px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-image {
    /* margin-right: 24px; */
    margin: 0;
    border-radius: 0 210px 210px 0;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-image::after,
  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-image::after {
    width: 98px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(odd) .facility-detail {
    order: 1;
    padding-right: 24px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility:nth-child(even) .facility-detail {
    padding-left: 24px;
  }

  .feature-premium .monthlyRecommend-list > .monthlyRecommend-facility .facility-detail {
    width: 50%;
  }

  .feature-premium .facility-detail .labels .icon-orange {
    height: 24px;
  }

  .feature-premium .facility-detail .labels > li {
    margin-right: 8px;
  }

  .feature-premium .facility-detail .grade {
    margin-right: 8px;
  }

  .feature-premium .facility-detail .grade img {
    height: 24px;
  }

  .feature-premium .facility-detail .label {
    font-size: 1.2rem;
    padding: 5px 8px;
  }

  .feature-premium .facility-detail .name {
    font-size: 2rem;
  }

  .feature-premium .facility-detail .address {
    font-size: 14px;
  }

  .feature-premium .facility-detail .explain > dt {
    font-size: 2rem;
  }

  .feature-premium .facility-detail .explain > dd {
    font-size: 1.6rem;
  }

  .feature-premium .facility-detail .explain .labels > li {
    font-size: 1.4rem;
    padding: 5px 8px;
    height: 24px;
  }

  .feature-premium .facility-detail .explain .text {
    /* overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3; */
    font-size: 1.6rem;
  }

  .feature-premium .facility-detail .foot {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
  }

  .feature-premium .facility-detail .price-box {
    margin: 0 16px 0 0;
  }

  .feature-premium .facility-detail .price-box .price {
    font-size: 2.4rem;
  }

  .feature-premium .facility-detail .price-box .people-room {
    margin-right: 8px;
  }

  .feature-premium .facility-detail .btn-relux {
    width: 176px;
    height: 48px;
  }

  .feature-premium .facility-detail .price-box .price.discount-before {
    font-size: 2rem;
  }

  .feature-premium .facility-detail .price-box .price.discount-after {
    font-size: 2.4rem;
  }
}

.gowithrelux {
  /**
 * Animation
 */
  /* Slider */
  /**
 * Clearfix
 */
  /**
 * Margin
 */
  /**
 * Padding
 */
}

.gowithrelux main {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  color: #333;
  font-size: 16px;
  line-height: 1.6;
}

.gowithrelux main a {
  color: #333;
  line-height: 1.6;
  text-decoration: none;
}

.gowithrelux main a:hover {
  text-decoration: underline;
}

.gowithrelux .footerFixed a:hover {
  text-decoration: none;
}

.gowithrelux footer {
  padding-bottom: 90px;
}

.gowithrelux h1, .gowithrelux h2, .gowithrelux h3, .gowithrelux h4, .gowithrelux h5, .gowithrelux h6 {
  font-weight: normal;
}

.gowithrelux em, .gowithrelux mark, .gowithrelux b {
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
}

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

.gowithrelux main input {
  -webkit-border-radius: 0;
  -webkit-appearance: none;
}

.gowithrelux main button {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  margin: 0;
  padding: 0;
  outline: none;
}

.gowithrelux main select {
  background: none transparent;
  border: 0;
  border-radius: 0;
  outline: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
}

.gowithrelux main textarea {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@-webkit-keyframes btn-animation {
  0% {
    background-color: #e61a3b;
  }
  20% {
    background-color: #42c700;
  }
  40% {
    background-color: #2873e3;
  }
  60% {
    background-color: #c0be00;
  }
  80% {
    background-color: #e41a8d;
  }
  100% {
    background-color: #e61a3b;
  }
}

@keyframes btn-animation {
  0% {
    background-color: #e61a3b;
  }
  20% {
    background-color: #42c700;
  }
  40% {
    background-color: #2873e3;
  }
  60% {
    background-color: #c0be00;
  }
  80% {
    background-color: #e41a8d;
  }
  100% {
    background-color: #e61a3b;
  }
}

.gowithrelux .slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.gowithrelux .slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.gowithrelux .slick-list:focus {
  outline: none;
}

.gowithrelux .slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.gowithrelux .slick-slider .slick-track,
.gowithrelux .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.gowithrelux .slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.gowithrelux .slick-track:before, .gowithrelux .slick-track:after {
  content: "";
  display: table;
}

.gowithrelux .slick-track:after {
  clear: both;
}

.gowithrelux .slick-loading .slick-track {
  visibility: hidden;
}

.gowithrelux .slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

.gowithrelux [dir="rtl"] .slick-slide {
  float: right;
}

.gowithrelux .slick-slide img {
  display: block;
}

.gowithrelux .slick-slide.slick-loading img {
  display: none;
}

.gowithrelux .slick-slide.dragging img {
  pointer-events: none;
}

.gowithrelux .slick-initialized .slick-slide {
  display: block;
}

.gowithrelux .slick-loading .slick-slide {
  visibility: hidden;
}

.gowithrelux .slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.gowithrelux .slick-arrow.slick-hidden {
  display: none;
}

.gowithrelux .c-button {
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid #444;
  text-align: center;
  display: inline-block;
  position: relative;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

.gowithrelux .c-button:before {
  content: '';
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  margin: auto 0;
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  right: 18px;
  top: 0;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.gowithrelux .c-button:hover {
  text-decoration: none;
  opacity: 0.7;
}

.gowithrelux .c-button_text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1.4em 1.0em;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 0.06em;
  width: 100%;
  height: 100%;
  display: block;
}

.gowithrelux .c-toplink {
  text-align: center;
  line-height: 1;
}

.gowithrelux .c-toplinkAnchor {
  position: relative;
  display: block;
  width: 100%;
  border-radius: 50px;
  font-size: 15px;
  line-height: 1;
  color: #fff;
  text-decoration: none;
}

.gowithrelux .c-toplinkAnchor:link, .gowithrelux .c-toplinkAnchor:hover, .gowithrelux .c-toplinkAnchor:visited, .gowithrelux .c-toplinkAnchor:active {
  color: #fff;
  text-decoration: none;
}

.gowithrelux .c-toplinkAnchor:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
  -webkit-transform: translate(0px, -50%);
  transform: translate(0px, -50%);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.gowithrelux .c-toplinkText {
  display: inline-block;
}

.gowithrelux .u-clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.gowithrelux .u-mt-5 {
  margin-top: 5px !important;
}

.gowithrelux .u-mt-10 {
  margin-top: 10px !important;
}

.gowithrelux .u-mt-15 {
  margin-top: 15px !important;
}

.gowithrelux .u-mt-20 {
  margin-top: 20px !important;
}

.gowithrelux .u-mt-25 {
  margin-top: 25px !important;
}

.gowithrelux .u-mt-30 {
  margin-top: 30px !important;
}

.gowithrelux .u-mt-35 {
  margin-top: 35px !important;
}

.gowithrelux .u-mt-40 {
  margin-top: 40px !important;
}

.gowithrelux .u-mt-45 {
  margin-top: 45px !important;
}

.gowithrelux .u-mt-50 {
  margin-top: 50px !important;
}

.gowithrelux .u-mb-5 {
  margin-bottom: 5px !important;
}

.gowithrelux .u-mb-10 {
  margin-bottom: 10px !important;
}

.gowithrelux .u-mb-15 {
  margin-bottom: 15px !important;
}

.gowithrelux .u-mb-20 {
  margin-bottom: 20px !important;
}

.gowithrelux .u-mb-25 {
  margin-bottom: 25px !important;
}

.gowithrelux .u-mb-30 {
  margin-bottom: 30px !important;
}

.gowithrelux .u-mb-35 {
  margin-bottom: 35px !important;
}

.gowithrelux .u-mb-40 {
  margin-bottom: 40px !important;
}

.gowithrelux .u-mb-45 {
  margin-bottom: 45px !important;
}

.gowithrelux .u-mb-50 {
  margin-bottom: 50px !important;
}

.gowithrelux .u-ml-5 {
  margin-left: 5px !important;
}

.gowithrelux .u-ml-10 {
  margin-left: 10px !important;
}

.gowithrelux .u-ml-15 {
  margin-left: 15px !important;
}

.gowithrelux .u-ml-20 {
  margin-left: 20px !important;
}

.gowithrelux .u-ml-25 {
  margin-left: 25px !important;
}

.gowithrelux .u-ml-30 {
  margin-left: 30px !important;
}

.gowithrelux .u-ml-35 {
  margin-left: 35px !important;
}

.gowithrelux .u-ml-40 {
  margin-left: 40px !important;
}

.gowithrelux .u-ml-45 {
  margin-left: 45px !important;
}

.gowithrelux .u-ml-50 {
  margin-left: 50px !important;
}

.gowithrelux .u-mr-5 {
  margin-right: 5px !important;
}

.gowithrelux .u-mr-10 {
  margin-right: 10px !important;
}

.gowithrelux .u-mr-15 {
  margin-right: 15px !important;
}

.gowithrelux .u-mr-20 {
  margin-right: 20px !important;
}

.gowithrelux .u-mr-25 {
  margin-right: 25px !important;
}

.gowithrelux .u-mr-30 {
  margin-right: 30px !important;
}

.gowithrelux .u-mr-35 {
  margin-right: 35px !important;
}

.gowithrelux .u-mr-40 {
  margin-right: 40px !important;
}

.gowithrelux .u-mr-45 {
  margin-right: 45px !important;
}

.gowithrelux .u-mr-50 {
  margin-right: 50px !important;
}

.gowithrelux .u-pt-5 {
  padding-top: 5px !important;
}

.gowithrelux .u-pt-10 {
  padding-top: 10px !important;
}

.gowithrelux .u-pt-15 {
  padding-top: 15px !important;
}

.gowithrelux .u-pt-20 {
  padding-top: 20px !important;
}

.gowithrelux .u-pt-25 {
  padding-top: 25px !important;
}

.gowithrelux .u-pt-30 {
  padding-top: 30px !important;
}

.gowithrelux .u-pt-35 {
  padding-top: 35px !important;
}

.gowithrelux .u-pt-40 {
  padding-top: 40px !important;
}

.gowithrelux .u-pt-45 {
  padding-top: 45px !important;
}

.gowithrelux .u-pt-50 {
  padding-top: 50px !important;
}

.gowithrelux .u-pb-5 {
  padding-bottom: 5px !important;
}

.gowithrelux .u-pb-10 {
  padding-bottom: 10px !important;
}

.gowithrelux .u-pb-15 {
  padding-bottom: 15px !important;
}

.gowithrelux .u-pb-20 {
  padding-bottom: 20px !important;
}

.gowithrelux .u-pb-25 {
  padding-bottom: 25px !important;
}

.gowithrelux .u-pb-30 {
  padding-bottom: 30px !important;
}

.gowithrelux .u-pb-35 {
  padding-bottom: 35px !important;
}

.gowithrelux .u-pb-40 {
  padding-bottom: 40px !important;
}

.gowithrelux .u-pb-45 {
  padding-bottom: 45px !important;
}

.gowithrelux .u-pb-50 {
  padding-bottom: 50px !important;
}

.gowithrelux .u-pl-5 {
  padding-left: 5px !important;
}

.gowithrelux .u-pl-10 {
  padding-left: 10px !important;
}

.gowithrelux .u-pl-15 {
  padding-left: 15px !important;
}

.gowithrelux .u-pl-20 {
  padding-left: 20px !important;
}

.gowithrelux .u-pl-25 {
  padding-left: 25px !important;
}

.gowithrelux .u-pl-30 {
  padding-left: 30px !important;
}

.gowithrelux .u-pl-35 {
  padding-left: 35px !important;
}

.gowithrelux .u-pl-40 {
  padding-left: 40px !important;
}

.gowithrelux .u-pl-45 {
  padding-left: 45px !important;
}

.gowithrelux .u-pl-50 {
  padding-left: 50px !important;
}

.gowithrelux .u-pr-5 {
  padding-right: 5px !important;
}

.gowithrelux .u-pr-10 {
  padding-right: 10px !important;
}

.gowithrelux .u-pr-15 {
  padding-right: 15px !important;
}

.gowithrelux .u-pr-20 {
  padding-right: 20px !important;
}

.gowithrelux .u-pr-25 {
  padding-right: 25px !important;
}

.gowithrelux .u-pr-30 {
  padding-right: 30px !important;
}

.gowithrelux .u-pr-35 {
  padding-right: 35px !important;
}

.gowithrelux .u-pr-40 {
  padding-right: 40px !important;
}

.gowithrelux .u-pr-45 {
  padding-right: 45px !important;
}

.gowithrelux .u-pr-50 {
  padding-right: 50px !important;
}

.gowithrelux .kv_main {
  position: relative;
  width: 100%;
}

.gowithrelux .kv_mainTitle {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}

.gowithrelux .kv_mainTitleText {
  display: none;
}

.gowithrelux .whats_movie {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}

.gowithrelux .whats_movieItem {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}

.gowithrelux .whats_definition {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 925px;
  margin: 54px auto 0;
}

.gowithrelux .whats_definitionTitle {
  position: relative;
  /*font-family: 'Noto Serif JP', serif;*/
  color: #0F0A64;
}

.gowithrelux .whats_definitionTitle:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.3);
}

.gowithrelux .whats_definitionText {
  font-size: 13px;
  line-height: 28px;
  letter-spacing: -0.008em;
}

.gowithrelux .theme_main {
  position: relative;
  z-index: 0;
  background-color: #0F0A64;
  color: #fff;
  padding: 120px 0;
}

.gowithrelux .theme_mainTitle {
  text-align: center;
  margin: 0 auto;
}

.gowithrelux .theme_mainTitleText {
  display: block;
  /*font-family: 'Noto Serif JP', serif;
  letter-spacing: -0.02em;*/
}

.gowithrelux .theme_mainTitleSub {
  display: inline-block;
  background-color: #fff;
  color: #0F0A64;
  line-height: 1;
  letter-spacing: -0.008em;
  border-radius: 100px;
}

.gowithrelux .theme_mainDescription {
  margin-top: 50px;
}

.gowithrelux .notice {
  max-width: 500px;
  width: 85%;
  margin: 60px auto;
  border: 2px solid #ccc;
  padding: 20px 20px !important;
  font-weight: bold;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  line-height: 2;
}

.gowithrelux .theme_slick {
  position: relative;
  margin-top: 60px;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.gowithrelux .theme_slick.slick-initialized {
  opacity: 1;
  pointer-events: painted;
  height: auto;
}

.gowithrelux .theme_slickItems {
  position: relative;
  margin: 4vw;
  text-align: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: center;
  z-index: 0;
}

.gowithrelux .theme_slickThumb {
  max-width: 100%;
  display: inline;
  line-height: 1;
  vertical-align: bottom;
}

.gowithrelux .slick_next,
.gowithrelux .slick_prev {
  position: absolute;
  border-radius: 70px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 1;
}

.gowithrelux .slick_next:before,
.gowithrelux .slick_prev:before,
.gowithrelux .slick_next:after,
.gowithrelux .slick_prev:after {
  content: "";
  position: absolute;
}

.gowithrelux .slick_next:before,
.gowithrelux .slick_prev:before {
  top: 50%;
  right: 50%;
  background: url(/stcontents/img/sub-page/gowithrelux/common/ic_arrow.png) no-repeat 0 0/100% auto;
}

.gowithrelux .slick_next:before {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}

.gowithrelux .slick_prev:before {
  -webkit-transform: translate(50%, -50%) rotate(180deg);
  transform: translate(50%, -50%) rotate(180deg);
}

.gowithrelux .slick_next:after {
  left: -1px;
}

.gowithrelux .slick_prev:after {
  right: -1px;
}

.gowithrelux .slick-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 24px;
}

.gowithrelux .slick-dots li {
  position: relative;
  height: 10px;
  line-height: 10px;
}

.gowithrelux .slick-dots button {
  text-indent: -9999px;
  position: relative;
  height: 10px;
}

.gowithrelux .slick-dots button:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #1F1984;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.gowithrelux .slick-dots .slick-active button:before {
  background-color: rgba(255, 255, 255, 0.22);
}

.gowithrelux .theme_wrap {
  padding: 0 calc(100vw * (40 / 750));
  margin: 50px auto 0;
  max-width: 1040px;
}

.gowithrelux .theme_detail {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  margin-bottom: 40px;
  padding-bottom: 40px;
}

.gowithrelux .theme_detailWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.gowithrelux .theme_detailWrap + .theme_detailWrap {
  margin-top: 20px;
}

.gowithrelux .theme_detailTitle {
  display: inline-block;
  background-color: #fff;
  color: #0F0A64;
  border-radius: 100px;
  font-size: 13px;
  line-height: 30px;
  height: 30px;
  width: 130px;
  border: 1px solid rgba(255, 255, 255, 0.56);
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.gowithrelux .theme_detailText {
  font-size: 15px;
  line-height: 28px;
  margin-left: 25px;
}

.gowithrelux .theme_detailText dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.gowithrelux .theme_detailText dt,
.gowithrelux .theme_detailText dd {
  margin-bottom: 16px;
}

.gowithrelux .theme_detailText .subTitle {
  width: 76px;
  border: 1px solid rgba(255, 255, 255, 0.56);
  margin-bottom: 16px;
  padding: 0 5px;
  text-align: center;
}

.gowithrelux .theme_detailText dd {
  width: calc(100% - 104px);
  padding-left: 10px;
}

.gowithrelux .theme_detailText strong {
  display: block;
  margin-top: 10px;
  font-weight: bold;
}

.gowithrelux .theme_detailText a {
  color: #fff;
}

.gowithrelux .theme_detailNote {
  font-size: 10px;
  line-height: 1;
  margin-top: 30px;
}

.gowithrelux .theme_commentary {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.gowithrelux .theme_commentaryText {
  line-height: 2;
}

.gowithrelux .theme_commentaryText + .theme_commentaryText {
  margin-top: 28px;
}

.gowithrelux .theme_next {
  max-width: 1040px;
  margin: 0 auto;
}

.gowithrelux .theme_nextDefinition {
  margin: 0 auto;
  text-align: center;
}

.gowithrelux .theme_nextDecoration {
  display: inline-block;
  color: #fff;
  background-color: #0F0A64;
  border-radius: 50px;
}

.gowithrelux .theme_nexTitle {
  margin: 30px auto 0;
  color: #0F0A64;
  /*font-family: 'Noto Serif JP', serif;*/
  line-height: 1.5;
}

.gowithrelux .theme_past {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 1040px;
  margin: 0 auto;
}

.gowithrelux .theme_pastTitle {
  /*font-family: 'Noto Serif JP', serif;*/
}

.gowithrelux .theme_pastList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.gowithrelux .theme_pastMonth {
  border: solid rgba(0, 0, 0, 0.16);
  position: relative;
}

.gowithrelux .theme_pastMonth:before,
.gowithrelux .theme_pastMonth:after {
  content: "";
  position: absolute;
  background-color: #6E6E6E;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(0deg);
  transform: translateY(-50%) rotate(0deg);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.gowithrelux .theme_pastMonth:before {
  width: 17px;
  height: 1px;
  right: 50px;
}

.gowithrelux .theme_pastMonth:after {
  width: 1px;
  height: 17px;
  right: 58px;
}

.gowithrelux .theme_pastMonth.js-theme_pastMonth-active:before, .gowithrelux .theme_pastMonth.js-theme_pastMonth-active:after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
  transform: translateY(-50%) rotate(-135deg);
}

.gowithrelux .theme_pastMonthNo {
  display: inline-block;
  vertical-align: bottom;
  /*font-family: 'Noto Serif JP', serif;*/
  color: rgba(0, 0, 0, 0.55);
}

.gowithrelux .theme_pastWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.gowithrelux .theme_pastDefinitionTitle {
  /*font-family: 'Noto Serif JP', serif;*/
}

.gowithrelux .theme_past .c-toplink {
  margin-top: 40px;
  width: 180px;
}

.gowithrelux .theme_past .c-toplinkAnchor {
  padding: 12px 0;
  border-color: #0F0A64;
  font-weight: bold;
  color: #0F0A64;
}

.gowithrelux .theme_past .c-toplinkAnchor:before {
  border-color: transparent transparent transparent #0F0A64;
}

.gowithrelux .features {
  background-color: #0F0A64;
  padding: 120px 0;
  color: #fff;
}

.gowithrelux .features_main {
  max-width: 1040px;
  margin: 0 auto;
}

.gowithrelux .features_wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.gowithrelux .features_mainTitle {
  /*font-family: 'Noto Serif JP', serif;*/
}

.gowithrelux .features_pointsList + .features_pointsList {
  margin-top: 40px;
}

.gowithrelux .features_pointsDefinition {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.gowithrelux .features_pointsTitle {
  position: relative;
}

.gowithrelux .features_pointsTitle:before {
  content: "";
  position: absolute;
  top: 60%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: rgba(255, 255, 255, 0.3);
}

.gowithrelux .notes {
  background-color: rgba(0, 0, 0, 0.05);
}

.gowithrelux .notes_list {
  max-width: 1040px;
  margin: 0 auto;
}

.gowithrelux .notes_listItemText::first-letter {
  margin-left: -1em;
}

.gowithrelux .sns_list {
  margin: 40px auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.gowithrelux .sns_listItem {
  width: 44px;
  margin-right: 33px;
}

.gowithrelux .sns_listItem:last-of-type {
  margin-right: 0;
}

.gowithrelux .readcrumb_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.gowithrelux .readcrumb_listItem {
  position: relative;
}

.gowithrelux .readcrumb_listItem + .readcrumb_listItem {
  padding-left: 22px;
}

.gowithrelux .readcrumb_listItem + .readcrumb_listItem:before {
  content: "";
  position: absolute;
  width: 3px;
  height: 3px;
  top: 50%;
  left: 6px;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  border: solid #000;
  border-width: 1px 1px 0 0;
}

.gowithrelux .footerFixed {
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 20;
  background-color: #fff;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}

.gowithrelux .footerFixed__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.gowithrelux .footerFixed__left,
.gowithrelux .footerFixed__right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.gowithrelux .footerFixed__left {
  position: relative;
}

.gowithrelux .footerFixed__left:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.2);
}

.gowithrelux .footerFixed__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.gowithrelux .footerFixed__link {
  text-align: center;
}

.gowithrelux .footerFixed__linkAnchor {
  display: block;
  text-decoration: none;
  color: #fff;
  margin: 0 auto;
  line-height: 1;
  background-color: #0F0A64;
}

.gowithrelux .footerFixed__linkAnchor.disabled {
  background-color: #C6C6C6;
  pointer-events: none;
}

.gowithrelux .footerFixed__text {
  width: 100%;
  text-align: center;
  line-height: 1;
}

.gowithrelux .kv_main {
  background: url(/stcontents/img/sub-page/gowithrelux/kv_bg.jpg) no-repeat center center;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .gowithrelux .c-toplink {
    width: 210px;
  }
  .gowithrelux .c-toplinkAnchor {
    padding: 15px 0;
    border: 2px solid #fff;
  }
  .gowithrelux .c-toplinkAnchor:hover:before {
    -webkit-transform: translate(5px, -50%);
    transform: translate(5px, -50%);
  }
  .gowithrelux .c-toplinkText {
    width: 92px;
  }
  .gowithrelux main,
  .gowithrelux footer,
  .gowithrelux header {
    min-width: 1100px;
    margin: 0 auto;
  }
  .gowithrelux .kv_main {
    height: 590px;
  }
  .gowithrelux .kv_mainTitle {
    max-width: 568px;
  }
  .gowithrelux .whats_main {
    padding: 60px 0 120px;
  }
  .gowithrelux .whats_movie {
    width: 780px;
    height: 439.14px;
  }
  .gowithrelux .whats_definition {
    margin: 54px auto 0;
  }
  .gowithrelux .whats_definitionTitle {
    font-size: 18px;
    letter-spacing: -0.02em;
  }
  .gowithrelux .whats_definitionTitle:before {
    top: 50%;
    right: -110px;
    height: 1px;
    width: 56px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .gowithrelux .whats_definitionTitleEmphasis {
    font-size: 20px;
  }
  .gowithrelux .whats_definitionTitleDeco {
    font-size: 18px;
  }
  .gowithrelux .theme_main {
    padding: 120px 0;
  }
  .gowithrelux .theme_mainTitleText {
    margin-top: 40px;
    font-size: 34px;
  }
  .gowithrelux .theme_mainTitleSub {
    font-size: 17px;
    padding: 8px 40px;
  }
  .gowithrelux .theme_mainDescription {
    text-align: center;
    font-size: 15px;
    line-height: 30px;
  }
  .gowithrelux .theme_slick {
    height: 628px;
  }
  .gowithrelux .theme_slickItems {
    opacity: 0.4;
  }
  .gowithrelux .theme_slickItems.slick-center,
  .gowithrelux .theme_slickItems.is-active-next {
    opacity: 1;
    z-index: 1;
    -webkit-transform: scale(1.16);
    transform: scale(1.16);
  }
  .gowithrelux .slick_next,
  .gowithrelux .slick_prev {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border: 1px solid #fff;
    width: 64px;
    height: 64px;
  }
  .gowithrelux .slick_next {
    right: calc(50% - 510px);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .gowithrelux .slick_next:hover {
    right: calc(50% - 520px);
  }
  .gowithrelux .slick_prev {
    left: calc(50% - 510px);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .gowithrelux .slick_prev:hover {
    left: calc(50% - 520px);
  }
  .gowithrelux .slick_next:before,
  .gowithrelux .slick_prev:before {
    width: 10px;
    height: 15px;
  }
  .gowithrelux .slick_next:after,
  .gowithrelux .slick_prev:after {
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    top: -1px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .gowithrelux .slick_next:hover:after {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  .gowithrelux .slick_prev:hover:after {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  .gowithrelux .slick-dots li + li {
    margin-left: 22px;
  }
  .gowithrelux .theme_next {
    padding: 120px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .gowithrelux .theme_nextThumb {
    max-width: 504px;
  }
  .gowithrelux .theme_nextDefinition {
    margin-left: 36px;
  }
  .gowithrelux .theme_nextDecoration {
    width: 130px;
    font-size: 13px;
    line-height: 26px;
  }
  .gowithrelux .theme_nexTitle {
    margin: 40px auto 0;
    font-size: 24px;
  }
  .gowithrelux .theme_nextText {
    margin-top: 50px;
    font-size: 15px;
    line-height: 30px;
  }
  .gowithrelux .theme_past {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1040px;
    margin: 60px auto 0;
    padding-bottom: 120px;
  }
  .gowithrelux .theme_pastTitle {
    font-size: 34px;
    line-height: 34px;
  }
  .gowithrelux .theme_pastList {
    width: 726px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.16);
  }
  .gowithrelux .theme_pastMonth {
    cursor: pointer;
    font-size: 17px;
    line-height: 17px;
    padding: 30px 50px;
    border-width: 1px 0 0px 0;
    opacity: 1;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .gowithrelux .theme_pastMonth.js-theme_pastMonth-active {
    border-width: 1px 0 1px 0;
  }
  .gowithrelux .theme_pastMonth:hover {
    opacity: 0.65;
  }
  .gowithrelux .theme_pastMonthNo {
    line-height: 13px;
    font-size: 11px;
    margin-right: 50px;
    font-weight: bold;
  }
  .gowithrelux .theme_pastMonthNoImage {
    width: auto;
    height: 100%;
  }
  .gowithrelux .theme_pastWrap {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 40px 0;
  }
  .gowithrelux .theme_pastWrapText {
    width: 340px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .gowithrelux .theme_pastDefinitionTitle {
    font-size: 24px;
    line-height: 24px;
  }
  .gowithrelux .theme_pastDefinitionItem {
    margin-top: 40px;
  }
  .gowithrelux .theme_pastDefinitionText {
    font-size: 13px;
    line-height: 25px;
  }
  .gowithrelux .theme_pastDefinitionThumb {
    width: 358px;
  }
  .gowithrelux .theme_pastNote {
    margin-top: auto;
    font-size: 10px;
    line-height: 10px;
    padding-top: 25px;
  }
  .gowithrelux .features_mainTitle {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 90px 0 40px;
    font-size: 34px;
  }
  .gowithrelux .features_points {
    width: 700px;
  }
  .gowithrelux .features_pointsTitle {
    width: 85px;
    padding-right: 128px;
  }
  .gowithrelux .features_pointsTitle:before {
    width: 60px;
    height: 1px;
    right: 34px;
  }
  .gowithrelux .features_pointsText {
    font-size: 15px;
    line-height: 1;
  }
  .gowithrelux .features_link {
    margin: 80px auto 0;
  }
  .gowithrelux .notes {
    padding: 75px 0;
  }
  .gowithrelux .notes_listItemText {
    font-size: 11px;
    line-height: 24px;
  }
  .gowithrelux .notes_listItemText:nth-of-type(n+2) {
    padding-left: 1em;
  }
  .gowithrelux .sns_listItemAnchor {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    opacity: 1;
  }
  .gowithrelux .sns_listItemAnchor:hover {
    opacity: .8;
  }
  .gowithrelux .readcrumb {
    margin: 40px auto 0;
    padding-bottom: 30px;
    max-width: 960px;
  }
  .gowithrelux .footerFixed__inner {
    padding: 20px 0;
    width: 1040px;
    margin: 0 auto;
  }
  .gowithrelux .footerFixed__left {
    width: 646px;
    padding-right: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .gowithrelux .footerFixed__left:before {
    height: 100%;
    width: 1px;
    right: 0;
    top: 0;
  }
  .gowithrelux .footerFixed__right {
    width: 394px;
    padding-left: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .gowithrelux .footerFixed_step {
    width: 68px;
  }
  .gowithrelux .footerFixed_entered {
    margin: 0 auto;
    font-weight: bold;
    color: #0F0A64;
  }
  .gowithrelux .footerFixed__left .footerFixed__wrap {
    margin-left: 20px;
  }
  .gowithrelux .footerFixed__link {
    width: 230px;
    font-size: 14px;
    line-height: 1;
  }
  .gowithrelux .footerFixed__link + .footerFixed__link {
    margin-left: 24px;
  }
  .gowithrelux .footerFixed__linkAnchor {
    padding: 12px 0;
    border-radius: 3px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .gowithrelux .footerFixed__linkAnchor:hover {
    opacity: 0.85;
  }
  .gowithrelux .footerFixed__entry {
    margin-left: 20px;
  }
  .gowithrelux .footerFixed__text {
    font-size: 14px;
  }
}

@media screen and (max-width: 767px) {
  .gowithrelux footer {
    padding-bottom: calc(100vw * (278 / 750));
  }
  .gowithrelux .c-toplink {
    width: calc(100vw * (450 / 750));
  }
  .gowithrelux .c-toplinkAnchor {
    padding: calc(100vw * (30 / 750)) 0;
    border: calc(100vw * (4 / 750)) solid #fff;
  }
  .gowithrelux .c-toplinkAnchor:before {
    border-width: calc(100vw * (6 / 750)) 0 calc(100vw * (6 / 750)) calc(100vw * (11 / 750));
  }
  .gowithrelux .c-toplinkText {
    width: calc(100vw * (206 / 750));
  }
  .gowithrelux .u-mt-s {
    margin-top: 8px !important;
  }
  .gowithrelux .u-mt-m {
    margin-top: 16px !important;
  }
  .gowithrelux .u-mt-l {
    margin-top: 24px !important;
  }
  .gowithrelux .u-mb-s {
    margin-bottom: 8px !important;
  }
  .gowithrelux .u-mb-m {
    margin-bottom: 16px !important;
  }
  .gowithrelux .u-mb-l {
    margin-bottom: 24px !important;
  }
  .gowithrelux .u-ml-s {
    margin-left: 8px !important;
  }
  .gowithrelux .u-ml-m {
    margin-left: 16px !important;
  }
  .gowithrelux .u-ml-l {
    margin-left: 24px !important;
  }
  .gowithrelux .u-mr-s {
    margin-right: 8px !important;
  }
  .gowithrelux .u-mr-m {
    margin-right: 16px !important;
  }
  .gowithrelux .u-mr-l {
    margin-right: 24px !important;
  }
  .gowithrelux .u-pt-s {
    padding-top: 8px !important;
  }
  .gowithrelux .u-pt-m {
    padding-top: 16px !important;
  }
  .gowithrelux .u-pt-l {
    padding-top: 24px !important;
  }
  .gowithrelux .u-pb-s {
    padding-bottom: 8px !important;
  }
  .gowithrelux .u-pb-m {
    padding-bottom: 16px !important;
  }
  .gowithrelux .u-pb-l {
    padding-bottom: 24px !important;
  }
  .gowithrelux .u-pl-s {
    padding-left: 8px !important;
  }
  .gowithrelux .u-pl-m {
    padding-left: 16px !important;
  }
  .gowithrelux .u-pl-l {
    padding-left: 24px !important;
  }
  .gowithrelux .u-pr-s {
    padding-right: 8px !important;
  }
  .gowithrelux .u-pr-m {
    padding-right: 16px !important;
  }
  .gowithrelux .u-pr-l {
    padding-right: 24px !important;
  }
  .gowithrelux .u-tab {
    display: none !important;
  }
  .gowithrelux .u-tab-gt {
    display: none !important;
  }
  .gowithrelux .u-pc {
    display: none !important;
  }
  .gowithrelux .kv_main {
    height: calc(100vw * (1038 / 750));
  }
  .gowithrelux .kv_mainTitle {
    width: calc(100vw * (606 / 750));
  }
  .gowithrelux .whats_main {
    padding: calc(100vw * (120 / 750)) calc(100vw * (40 / 750)) calc(100vw * (140 / 750));
  }
  .gowithrelux .whats_movie {
    width: 100%;
    padding-top: 56.3%;
  }
  .gowithrelux .whats_definition {
    margin: calc(100vw * (100 / 750)) auto 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .gowithrelux .whats_definitionTitle {
    font-size: calc(100vw * (36 / 750));
  }
  .gowithrelux .whats_definitionTitle:before {
    height: calc(100vw * (62 / 750));
    width: calc(100vw * (1 / 750));
    right: 50%;
    top: calc(100% + 100vw * (50 / 750));
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
  }
  .gowithrelux .whats_definitionTitleEmphasis {
    font-size: calc(100vw * (48 / 750));
  }
  .gowithrelux .whats_definitionTitleDeco {
    font-size: calc(100vw * (42 / 750));
  }
  .gowithrelux .whats_definitionText {
    margin-top: calc(100vw * (148 / 750));
    font-size: calc(100vw * (28 / 750));
    line-height: calc(100vw * (62 / 750));
  }
  .gowithrelux .theme_main {
    padding: calc(100vw * (140 / 750)) 0;
  }
  .gowithrelux .theme_mainTitleText {
    margin-top: calc(100vw * (56 / 750));
    font-size: calc(100vw * (56 / 750));
    line-height: 1;
  }
  .gowithrelux .theme_mainTitleSub {
    font-size: calc(100vw * (32 / 750));
    padding: calc(100vw * (12 / 750)) calc(100vw * (43 / 750));
  }
  .gowithrelux .theme_mainDescription {
    margin-top: calc(100vw * (82 / 750));
    font-size: calc(100vw * (32 / 750));
    line-height: calc(100vw * (62 / 750));
    padding: 0 calc(100vw * (40 / 750));
  }
  .gowithrelux .theme_slick {
    height: calc(100vw * (621 / 750));
  }
  .gowithrelux .theme_slickItems {
    margin: 0;
  }
  .gowithrelux .slick_next,
  .gowithrelux .slick_prev {
    bottom: calc(100vw * (300 / 750));
    border: calc(100vw * (4 / 750)) solid #fff;
    width: calc(100vw * (82 / 750));
    height: calc(100vw * (82 / 750));
  }
  .gowithrelux .slick_next {
    right: calc(100vw * (40 / 750));
  }
  .gowithrelux .slick_prev {
    left: calc(100vw * (40 / 750));
  }
  .gowithrelux .slick_next:before,
  .gowithrelux .slick_prev:before {
    width: calc(100vw * (10 / 750));
    height: calc(100vw * (15 / 750));
  }
  .gowithrelux .slick_next:before {
    right: 48%;
  }
  .gowithrelux .slick_prev:before {
    right: 52%;
  }
  .gowithrelux .slick-dots {
    margin-top: calc(100vw * (60 / 750));
  }
  .gowithrelux .slick-dots li {
    height: calc(100vw * (24 / 750));
    line-height: calc(100vw * (24 / 750));
  }
  .gowithrelux .slick-dots li + li {
    margin-left: calc(100vw * (44 / 750));
  }
  .gowithrelux .slick-dots button {
    height: calc(100vw * (24 / 750));
    line-height: calc(100vw * (24 / 750));
  }
  .gowithrelux .slick-dots button:before {
    height: calc(100vw * (24 / 750));
    width: calc(100vw * (24 / 750));
  }
  .gowithrelux .theme_detail {
    padding-bottom: calc(100vw * (60 / 750));
  }
  .gowithrelux .theme_detailWrap {
    display: block;
  }
  .gowithrelux .theme_detailTitle {
    display: block;
    width: calc(100vw * (250 / 750));
    font-size: calc(100vw * (26 / 750));
    line-height: calc(100vw * (60 / 750));
    height: calc(100vw * (60 / 750));
    margin: 0 auto 12px;
  }
  .gowithrelux .theme_detailText {
    max-width: none;
    width: auto;
    margin-left: 0;
    font-size: calc(100vw * (26 / 750));
    line-height: calc(100vw * (50 / 750));
  }
  .gowithrelux .theme_detailNote {
    font-size: calc(100vw * (20 / 750));
  }
  .gowithrelux .theme_detailText strong {
    margin-top: 30px;
  }
  .gowithrelux .theme_commentary {
    margin-top: calc(100vw * (60 / 750));
  }
  .gowithrelux .theme_commentaryText {
    font-size: calc(100vw * (28 / 750));
    line-height: calc(100vw * (60 / 750));
  }
  .gowithrelux .theme_commentaryText + .theme_commentaryText {
    margin-top: calc(100vw * (60 / 750));
  }
  .gowithrelux .theme_next {
    padding: calc(100vw * (140 / 750)) calc(100vw * (40 / 750));
  }
  .gowithrelux .theme_nextThumb {
    max-width: 100%;
    margin-top: calc(100vw * (68 / 750));
  }
  .gowithrelux .theme_nextDecoration {
    width: calc(100vw * (264 / 750));
    font-size: calc(100vw * (32 / 750));
    line-height: calc(100vw * (47 / 750));
    padding: calc(100vw * (4 / 750)) 0;
  }
  .gowithrelux .theme_nexTitle {
    margin: calc(100vw * (60 / 750)) auto 0;
    /*width: calc(100vw * (310 / 750));*/
    font-size: calc(100vw * (56 / 750));
  }
  .gowithrelux .theme_nextText {
    margin-top: calc(100vw * (40 / 750));
    font-size: calc(100vw * (28 / 750));
    line-height: calc(100vw * (52 / 750));
  }
  .gowithrelux .theme_past {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: calc(100vw * (140 / 750)) auto 0;
    padding: 0 calc(100vw * (40 / 750)) calc(100vw * (140 / 750));
  }
  .gowithrelux .theme_pastTitle {
    font-size: calc(100vw * (56 / 750));
    line-height: calc(100vw * (56 / 750));
    text-align: center;
  }
  .gowithrelux .theme_pastList {
    margin-top: calc(100vw * (80 / 750));
    border-bottom: calc(100vw * (2 / 750)) solid rgba(0, 0, 0, 0.16);
  }
  .gowithrelux .theme_pastMonth {
    border-width: calc(100vw * (2 / 750)) 0 0px 0;
    font-size: calc(100vw * (36 / 750));
    line-height: calc(100vw * (36 / 750));
    padding: calc(100vw * (58 / 750)) calc(100vw * (23 / 750));
  }
  .gowithrelux .theme_pastMonth.js-theme_pastMonth-active {
    border-width: calc(100vw * (2 / 750)) 0 calc(100vw * (2 / 750)) 0;
  }
  .gowithrelux .theme_pastMonthNo {
    font-size: calc(100vw * (24 / 750));
    line-height: calc(100vw * (30 / 750));
    margin-right: calc(100vw * (40 / 750));
  }
  .gowithrelux .theme_pastWrap {
    padding: calc(100vw * (60 / 750)) 0 calc(100vw * (20 / 750));
  }
  .gowithrelux .theme_pastDefinitionTitle {
    font-size: calc(100vw * (42 / 750));
    line-height: calc(100vw * (42 / 750));
    text-align: center;
  }
  .gowithrelux .theme_pastDefinitionItem {
    margin-top: calc(100vw * (40 / 750));
  }
  .gowithrelux .theme_pastDefinitionThumb {
    margin-top: calc(100vw * (40 / 750));
  }
  .gowithrelux .theme_pastNote {
    margin-top: calc(100vw * (15 / 750));
  }
  .gowithrelux .theme_past .c-toplink {
    margin: 40px auto 40px;
  }
  .gowithrelux .features {
    padding: calc(100vw * (140 / 750)) 0;
  }
  .gowithrelux .features_main {
    padding: 0 calc(100vw * (40 / 750));
  }
  .gowithrelux .features_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .gowithrelux .features_mainTitle {
    font-size: calc(100vw * (56 / 750));
  }
  .gowithrelux .features_points {
    margin-top: calc(100vw * (100 / 750));
  }
  .gowithrelux .features_pointsDefinition {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .gowithrelux .features_pointsTitle {
    width: calc(100vw * (157 / 750));
    padding-right: calc(100vw * (32 / 750));
  }
  .gowithrelux .features_pointsTitle:before {
    width: calc(100vw * (210 / 750));
    height: calc(100vw * (2 / 750));
    left: 100%;
    width: calc(100vw * (460 / 750));
  }
  .gowithrelux .features_pointsText {
    font-size: calc(100vw * (28 / 750));
    margin-top: calc(100vw * (40 / 750));
  }
  .gowithrelux .features_link {
    margin: calc(100vw * (100 / 750)) auto 0;
  }
  .gowithrelux .notes {
    padding: calc(100vw * (100 / 750)) calc(100vw * (40 / 750));
  }
  .gowithrelux .notes_listItemText {
    font-size: calc(100vw * (22 / 750));
    line-height: calc(100vw * (36 / 750));
    padding-left: 1em;
  }
  .gowithrelux .notes_listItemText:nth-of-type(n+2) {
    padding-left: 2em;
  }
  .gowithrelux .sns {
    margin: calc(100vw * (60 / 750)) auto 0;
  }
  .gowithrelux .sns_listItem {
    margin-right: calc(100vw * (50 / 750));
  }
  .gowithrelux .readcrumb {
    margin: calc(100vw * (60 / 750)) auto 0;
    padding: 0 calc(100vw * (30 / 750)) calc(100vw * (50 / 750));
    font-size: 11px;
  }
  .gowithrelux .footerFixed {
    padding: calc(100vw * (10 / 750)) 0;
  }
  .gowithrelux .footerFixed__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .gowithrelux .footerFixed__left,
  .gowithrelux .footerFixed__right {
    padding: calc(100vw * (30.5 / 750)) 0;
    margin: 0 auto;
    width: calc(100vw - (100vw * (66 / 750)));
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .gowithrelux .footerFixed__left:before {
    height: calc(100vw * (2 / 750));
    width: 100%;
    left: 0;
    bottom: 0;
  }
  .gowithrelux .footerFixed_step {
    width: calc(100vw * (90 / 750));
  }
  .gowithrelux .footerFixed_entered {
    margin: 0 auto;
    font-weight: bold;
    color: #0F0A64;
    font-size: calc(100vw * (24 / 750));
  }
  .gowithrelux .footerFixed__wrap {
    width: calc(100vw * (564 / 750));
  }
  .gowithrelux .footerFixed__link + .footerFixed__link {
    margin-left: calc(100vw * (24 / 750));
  }
  .gowithrelux .footerFixed__linkAnchor {
    font-size: calc(100vw * (24 / 750));
    padding: calc(100vw * (22 / 750)) 0;
    border-radius: calc(100vw * (4 / 750));
  }
  .gowithrelux .footerFixed__regist .footerFixed__linkAnchor {
    width: calc(100vw * (300 / 750));
  }
  .gowithrelux .footerFixed__login .footerFixed__linkAnchor {
    width: calc(100vw * (240 / 750));
  }
  .gowithrelux .footerFixed__entry,
  .gowithrelux .footerFixed__entry .footerFixed__linkAnchor {
    width: calc(100vw - 100vw * (186 / 750));
  }
  .gowithrelux .footerFixed__text {
    font-size: calc(100vw * (24 / 750));
  }
}

@media screen and (min-width: 1024px) {
  .gowithrelux .u-mt-s {
    margin-top: 16px !important;
  }
  .gowithrelux .u-mt-m {
    margin-top: 32px !important;
  }
  .gowithrelux .u-mt-l {
    margin-top: 48px !important;
  }
  .gowithrelux .u-mb-s {
    margin-bottom: 16px !important;
  }
  .gowithrelux .u-mb-m {
    margin-bottom: 32px !important;
  }
  .gowithrelux .u-mb-l {
    margin-bottom: 48px !important;
  }
  .gowithrelux .u-ml-s {
    margin-left: 16px !important;
  }
  .gowithrelux .u-ml-m {
    margin-left: 32px !important;
  }
  .gowithrelux .u-ml-l {
    margin-left: 48px !important;
  }
  .gowithrelux .u-mr-s {
    margin-right: 16px !important;
  }
  .gowithrelux .u-mr-m {
    margin-right: 32px !important;
  }
  .gowithrelux .u-mr-l {
    margin-right: 48px !important;
  }
  .gowithrelux .u-pt-s {
    padding-top: 16px !important;
  }
  .gowithrelux .u-pt-m {
    padding-top: 32px !important;
  }
  .gowithrelux .u-pt-l {
    padding-top: 48px !important;
  }
  .gowithrelux .u-pb-s {
    padding-bottom: 16px !important;
  }
  .gowithrelux .u-pb-m {
    padding-bottom: 32px !important;
  }
  .gowithrelux .u-pb-l {
    padding-bottom: 48px !important;
  }
  .gowithrelux .u-pl-s {
    padding-left: 16px !important;
  }
  .gowithrelux .u-pl-m {
    padding-left: 32px !important;
  }
  .gowithrelux .u-pl-l {
    padding-left: 48px !important;
  }
  .gowithrelux .u-pr-s {
    padding-right: 16px !important;
  }
  .gowithrelux .u-pr-m {
    padding-right: 32px !important;
  }
  .gowithrelux .u-pr-l {
    padding-right: 48px !important;
  }
  .gowithrelux .u-sp {
    display: none !important;
  }
  .gowithrelux .u-tab {
    display: none !important;
  }
  .gowithrelux .u-tab-lt {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .gowithrelux .u-mt-s {
    margin-top: 12px !important;
  }
  .gowithrelux .u-mt-m {
    margin-top: 24px !important;
  }
  .gowithrelux .u-mt-l {
    margin-top: 36px !important;
  }
  .gowithrelux .u-mb-s {
    margin-bottom: 12px !important;
  }
  .gowithrelux .u-mb-m {
    margin-bottom: 24px !important;
  }
  .gowithrelux .u-mb-l {
    margin-bottom: 36px !important;
  }
  .gowithrelux .u-ml-s {
    margin-left: 12px !important;
  }
  .gowithrelux .u-ml-m {
    margin-left: 24px !important;
  }
  .gowithrelux .u-ml-l {
    margin-left: 36px !important;
  }
  .gowithrelux .u-mr-s {
    margin-right: 12px !important;
  }
  .gowithrelux .u-mr-m {
    margin-right: 24px !important;
  }
  .gowithrelux .u-mr-l {
    margin-right: 36px !important;
  }
  .gowithrelux .u-pt-s {
    padding-top: 12px !important;
  }
  .gowithrelux .u-pt-m {
    padding-top: 24px !important;
  }
  .gowithrelux .u-pt-l {
    padding-top: 36px !important;
  }
  .gowithrelux .u-pb-s {
    padding-bottom: 12px !important;
  }
  .gowithrelux .u-pb-m {
    padding-bottom: 24px !important;
  }
  .gowithrelux .u-pb-l {
    padding-bottom: 36px !important;
  }
  .gowithrelux .u-pl-s {
    padding-left: 12px !important;
  }
  .gowithrelux .u-pl-m {
    padding-left: 24px !important;
  }
  .gowithrelux .u-pl-l {
    padding-left: 36px !important;
  }
  .gowithrelux .u-pr-s {
    padding-right: 12px !important;
  }
  .gowithrelux .u-pr-m {
    padding-right: 24px !important;
  }
  .gowithrelux .u-pr-l {
    padding-right: 36px !important;
  }
  .gowithrelux .u-sp {
    display: none !important;
  }
  .gowithrelux .u-pc {
    display: none !important;
  }
}

.gowithrelux .sns_listItem .sns_listItemImage {
  width: 44px;
}

.gowithrelux #modal-container {
  color: #333333;
  letter-spacing: 1px;
  word-break: break-word;
  font-size: 13px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.gowithrelux .sp-center {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .gowithrelux .sp-v {
    display: none;
  }
  .gowithrelux .sp-center {
    text-align: left;
  }
}

@media screen and (max-width: 767px) and (min-width: 500px) {
  .gowithrelux .theme_detailText .subTitle {
    width: auto;
    margin-right: 8px;
    margin: 12px 12px 6px 0;
    padding: 5px 10px;
  }
  .gowithrelux .theme_detailText dl dd {
    width: 100%;
  }
}

.gowithrelux .btn-pagetop {
  bottom: 120px;
}

.gowithrelux .btn-pagetop.static {
  bottom: inherit;
}

@media (max-width: 767px) {
  .gowithrelux .btn-pagetop {
    bottom: 44vw;
  }
}

.inspire202005 {
  /* ======================================fadein============================================= */
  /* ======================================keyvisual============================================= */
  /* ======================================plan=================================== */
  /* ======================================people profile=================================== */
  /* ======================================para=================================== */
  /* ======================================inspire_rekux=================================== */
  /* ======================================picture_end=================================== */
  /* ======================================the other=================================== */
  /* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝　shaaare　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
}

.inspire202005 main {
  color: #333333;
  letter-spacing: 1px;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  word-break: break-word;
  font-family: "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
  -moz-osx-font-smoothing: grayscale;
  font-size: 13px;
  line-height: 1.5;
}

.inspire202005 main a, .inspire202005 main aside, .inspire202005 main blockquote, .inspire202005 main code, .inspire202005 main dd, .inspire202005 main div, .inspire202005 main dl, .inspire202005 main dt, .inspire202005 main fieldset, .inspire202005 main figcaption, .inspire202005 main figure, .inspire202005 main form, .inspire202005 main h1, .inspire202005 main h2, .inspire202005 main h3, .inspire202005 main h4, .inspire202005 main h5, .inspire202005 main h6, .inspire202005 main header, .inspire202005 main img, .inspire202005 main input, .inspire202005 main legend, .inspire202005 main li, .inspire202005 main main, .inspire202005 main ol, .inspire202005 main option, .inspire202005 main p, .inspire202005 main pre, .inspire202005 main section, .inspire202005 main select, .inspire202005 main span, .inspire202005 main table, .inspire202005 main td, .inspire202005 main textarea, .inspire202005 main th, .inspire202005 main tr, .inspire202005 main ul {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.inspire202005 main a:link, .inspire202005 main a:visited {
  color: #555555;
  text-decoration: underline;
}

.inspire202005 .wrapper {
  padding-bottom: 64px;
}

.inspire202005 .wrapper.top {
  padding-bottom: 128px;
}

.inspire202005 .wrapper img {
  vertical-align: top;
}

.inspire202005 .wrapper .pc {
  display: none;
}

.inspire202005 .YuMin {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}

@media screen and (min-width: 768px) {
  .inspire202005 .fadein {
    opacity: 0;
    -webkit-transform: translate(0, 100px);
            transform: translate(0, 100px);
    -webkit-transition: all 800ms;
    transition: all 800ms;
  }
  .inspire202005 .fadein.scrollin {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.inspire202005 .key-visual-screen {
  height: 540px;
  position: relative;
  background-position: center;
  background-image: url("/stcontents/img/sub-page/inspire/inspire202005/kv_image_sp.jpg");
  background-size: cover;
}

.inspire202005 .sp {
  display: block;
}

.inspire202005 .lead__people .sp {
  display: block;
}

.inspire202005 .lead__description .sp {
  display: block;
}

.inspire202005 .lead__info_title .sp {
  display: block;
}

.inspire202005 .pc {
  display: none;
}

.inspire202005 .key-visual .pc {
  display: none;
}

.inspire202005 .lead__people .pc {
  display: none;
}

.inspire202005 .key-visual__title img {
  width: 260px;
}

.inspire202005 p.sold-out {
  border: 4px solid #ce2c2c;
  background: white;
  color: #ce2c2c;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  margin: auto;
  margin-bottom: 30px;
  padding: 8px 0px 6px;
  font-weight: bold;
  border-radius: 100px;
}

.inspire202005 p.link {
  text-align: right;
  margin-top: 16px;
}

.inspire202005 p.link img {
  width: 26px;
  float: right;
  vertical-align: middle;
}

.inspire202005 a.noLink {
  font-size: 14px;
  line-height: 26px;
  clear: both;
  text-decoration: none !important;
}

@media screen and (min-width: 768px) {
  .inspire202005 p.sold-out {
    border: 4px solid #ce2c2c;
    background: white;
    color: #ce2c2c;
    font-size: 15px;
    width: 250px;
    display: inline-block;
    margin: 0;
    padding: 8px 0px 6px;
    letter-spacing: 0;
    font-weight: bold;
    border-radius: 100px;
  }
  .inspire202005 .lead__info_title .sp {
    display: none;
  }
  .inspire202005 .lead__description .sp {
    display: none;
  }
  .inspire202005 .key-visual-screen {
    background-position: center;
    background-image: url("/stcontents/img/sub-page/inspire/kv_image_sp.jpg");
    background-size: cover;
    margin-bottom: 32px;
    width: 100%;
  }
  .inspire202005 .key-visual__title img {
    width: 770px;
  }
  .inspire202005 .people_introduce .sp {
    display: none;
  }
  .inspire202005 .sp {
    display: none;
  }
  .inspire202005 .lead__people .sp {
    display: none;
  }
  .inspire202005 .pc {
    display: block;
  }
  .inspire202005 .key-visual .pc {
    display: block;
  }
  .inspire202005 .lead__people .pc {
    display: block;
  }
}

.inspire202005 div.key-visual_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.inspire202005 div.visual_logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 75px;
}

.inspire202005 div.visual_logo p.logo2 img {
  width: 170px;
  height: auto;
  margin-top: 60px;
}

.inspire202005 div.visual_logo p.logo1 img {
  width: 198px;
  height: auto;
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .inspire202005 div.visual_logo {
    margin-top: 0px;
  }
  .inspire202005 .key-visual__title {
    width: calc(100% - 40px);
    max-width: 480px;
  }
  .inspire202005 .key-visual__title {
    width: calc(100% - 40px);
    max-width: 770px;
  }
  .inspire202005 div.visual_logo p.logo1 img {
    width: 342px;
    height: 130px;
    margin-bottom: 45px;
  }
  .inspire202005 div.visual_logo p.logo2 img {
    width: 275px;
    height: auto;
    margin-top: 95px;
  }
}

.inspire202005 .lead__description {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 50px;
  min-width: 280px;
}

.inspire202005 div.lead__info {
  padding: 24px 6% 30px;
}

.inspire202005 div.lead_title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 p.btn-detail {
  width: 90%;
}

.inspire202005 p.btn-detail .btn-sm {
  padding: 10px 40%;
  font-size: 14px;
}

.inspire202005 div.live_date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.inspire202005 p.term_title {
  margin-top: 0px;
  border: 1px solid #cccccc;
  padding: 6px 30px;
  height: 18px;
}

.inspire202005 dt.title_sub {
  width: 110px;
  height: 20px;
  border: solid 1px #9b9b9b;
  font-size: 11px;
  text-align: center;
  padding-top: 6px;
  margin-top: 24px;
}

.inspire202005 div.lead__info dt.title {
  font-size: 16px;
  font-weight: bold;
  padding: 32px 0 10px;
  text-align: center;
}

.inspire202005 div.lead__info p.plan_line {
  width: 680px;
  border: solid 1px #c4c4c4;
  margin-left: calc(((65vw - 100%) / 2) * -1);
}

.inspire202005 div.btn_text {
  margin: 60px 0;
}

.inspire202005 div.btn_text a {
  text-decoration: none;
}

.inspire202005 div.btn_text a {
  color: #fff;
}

.inspire202005 div.btn_text p.entry a {
  display: block;
  padding: 10px;
}

.inspire202005 div.btn_text p.entry {
  height: 44px;
  background-color: #0a0f64;
  font-size: 16px;
  text-align: center;
  border-radius: 4px;
}

.inspire202005 p.plan_title {
  font-size: 16px;
  padding-top: 30px;
  letter-spacing: -0.5px;
}

.inspire202005 p.plan_titleB {
  padding-top: 30px;
  font-size: 16px;
}

.inspire202005 dd.plan_text {
  font-size: 11px;
  letter-spacing: 1px;
  padding-top: 12px;
}

.inspire202005 dd.plan_text span {
  font-size: 20px;
}

.inspire202005 div.text_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.inspire202005 div.lead_plan {
  margin-bottom: 18px;
}

.inspire202005 div.lead_term {
  margin-top: 8px;
}

.inspire202005 div.plan_explain {
  padding-top: 4px;
  font-size: 10px;
}

.inspire202005 div.lead__info_title {
  padding: 28px 6% 28px;
  background-color: #efefef;
  border-bottom: solid 1px #ccc;
}

.inspire202005 p.lead__explain {
  padding-bottom: 28px;
  font-size: 14px;
  letter-spacing: 0.8px;
  line-height: 1.71;
}

.inspire202005 div.lead__description .sub_title {
  font-size: 16px;
  font-weight: 600;
}

.inspire202005 div.lead__description p {
  text-align: center;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: 0px;
  max-width: 100%;
}

.inspire202005 p.btn-detail .btn-sm {
  width: 30%;
  margin-top: 20px;
}

@media screen and (min-width: 768px) {
  .inspire202005 div.lead__info dt.title {
    text-align: left;
  }
  .inspire202005 div.btn_text {
    margin: 60px 0 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .inspire202005 div.btn_text p.entry {
    width: 252px;
  }
  .inspire202005 dd.plan_text {
    padding-top: 12px;
  }
  .inspire202005 dt.title_sub {
    padding-top: 6px;
    margin: 14px 40px 0 0;
    letter-spacing: 0.5px;
    float: left;
  }
  .inspire202005 div.text_flex {
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
  }
  .inspire202005 div.plan_block1 p.plan_title {
    font-size: 16px;
    padding-top: 73px;
    letter-spacing: -0.5px;
  }
  .inspire202005 div.plan_block1 p.plan_titleB {
    padding-top: 27px;
  }
  .inspire202005 div.plan_explain {
    padding-top: 0px;
    font-size: 10px;
  }
  .inspire202005 dl.plan_flex_pc {
    margin-top: 8px;
  }
  .inspire202005 dl.plan_flex_pc dt.text,
  .inspire202005 dl.plan_flex_pc dd.text {
    font-size: 11px;
  }
  .inspire202005 div.plan_block1 p.plan_text {
    font-size: 17px;
    letter-spacing: 1px;
  }
  .inspire202005 p.lead__explain {
    padding-bottom: 30px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }
  .inspire202005 p.lead__explain span {
    font-weight: bold;
  }
  .inspire202005 p.term_title {
    margin-top: 6px;
    border: 1px solid #cccccc;
    padding: 3px 30px;
    height: 18px;
  }
  .inspire202005 div.lead_plan {
    margin-bottom: 30px;
  }
  .inspire202005 div.lead__info {
    padding: 0px 70px 24px;
    max-width: 800px;
    margin: auto;
  }
  .inspire202005 div.lead__description .sub_title {
    font-size: 20px;
    line-height: 2.4;
    letter-spacing: 0.5px;
    padding-top: 20px;
  }
  .inspire202005 div.lead__info_title {
    max-width: 100%;
    margin: auto;
    padding: 24px 0 30px;
  }
  .inspire202005 div.plan_explain {
    font-size: 11px;
    line-height: 1.64;
    letter-spacing: 0.8px;
  }
  .inspire202005 div.lead_term {
    margin: 0px;
  }
  .inspire202005 div.live_date {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
  }
  .inspire202005 div.plan_block1 p.title {
    font-size: 12px;
    font-weight: bold;
    padding: 30px 0 12px;
  }
  .inspire202005 div.plan_block1 p.money_text {
    margin-bottom: 18px;
  }
  .inspire202005 p.plan {
    margin-top: 20px;
  }
  .inspire202005 p.btn-detail .btn-sm {
    padding: 9px 120px 9px;
    margin-top: 20px;
  }
  .inspire202005 .br_sp {
    display: none;
  }
  .inspire202005 .br_pc {
    display: none;
  }
}

.inspire202005 div.profile_frame_top {
  margin: 0px 15px 50px;
  padding: 40px 25px;
  width: initial;
  border: 1px solid #ccc;
}

.inspire202005 div.profile_frame_top p.notifi {
  font-size: 20px;
  letter-spacing: 1px;
  text-align: center;
  line-height: 1.67;
}

.inspire202005 div.lead_people_block2 div.picture img {
  height: 200px;
  width: 160px;
  padding-bottom: 20px;
}

.inspire202005 div.lead_people_block1 .people_title {
  font-size: 20px;
  padding-bottom: 20px;
}

.inspire202005 div.text span.name {
  float: right;
  font-size: 12px;
}

.inspire202005 div.lead__people_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0px 20px 50px;
  padding: 20px 15px 30px;
  border: solid 1px #ccc;
}

.inspire202005 div.lead__people div.text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 div.picture_text {
  max-width: 100%;
}

.inspire202005 div.lead_people_block2 {
  display: inline-block;
}

.inspire202005 div.lead_people_block1 p.text {
  font-size: 14px;
  line-height: 1.71;
  letter-spacing: 1.1px;
  padding: 0px 0px 26px;
}

.inspire202005 div.people_introduce {
  padding-top: 30px;
}

.inspire202005 div.hotel_introduce {
  width: 100%;
}

.inspire202005 div.inspire_video iframe {
  width: 100%;
  height: 52vw;
  margin-top: 24px;
}

.inspire202005 div.hotel_introduce p.picture {
  padding-top: 0px;
}

.inspire202005 div.hotel_introduce p.picture img {
  width: 78px;
  height: auto;
  padding: 6px 0px;
}

.inspire202005 div.people_introduce div.block1 {
  font-size: 10px;
}

.inspire202005 div.people_introduce div.block2 .text {
  font-size: 11px;
  line-height: 1.65;
  letter-spacing: 0.3px;
  max-width: 100%;
}

.inspire202005 div.people_introduce div.block1 .picture {
  background-color: red;
  width: 23px;
  height: 37px;
}

.inspire202005 div.people_introduce div.block2 {
  font-size: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 div.people_introduce div.block2 .picture img {
  width: 120px;
  height: auto;
  padding: 0px;
}

.inspire202005 div.people_introduce div.block2 .title {
  width: 100%;
  padding: 0px;
  text-align: right;
}

.inspire202005 div.text span.profile {
  font-size: 11px;
  line-height: 1.7;
  letter-spacing: 0.3px;
  padding-bottom: 20px;
}

.inspire202005 p.profile_explain {
  margin-top: 16px;
}

.inspire202005 p.profile_explain_text {
  line-height: 1.67;
}

@media screen and (min-width: 768px) {
  .inspire202005 div.profile_frame_top {
    padding: 56px 40px;
  }
  .inspire202005 div.profile_frame_top p.notifi {
    font-size: 28px;
  }
  .inspire202005 div.profile_frame_top div.profile_text p.text {
    font-size: 14px;
  }
  .inspire202005 p.profile_explain_text {
    font-size: 12px;
    text-align: center;
    letter-spacing: -0.5px;
  }
  .inspire202005 p.profile_explain {
    text-align: center;
    font-size: 12px;
  }
  .inspire202005 div.inspire_video iframe {
    width: 100%;
    height: 428px;
    margin-top: 24px;
  }
  .inspire202005 div.lead_people_block2 {
    display: inline-block;
    padding-right: 18px;
  }
  .inspire202005 div.people_introduce div.block2 .title {
    width: 100%;
    padding: 0px;
    text-align: left;
    font-size: 14px;
    line-height: 1.5;
  }
  .inspire202005 div.lead__people_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0px 20px;
    padding: 20px 15px 20px;
    border: solid 1px #ccc;
  }
  .inspire202005 div.hotel_introduce p.picture {
    width: 80px;
    height: auto;
    padding: 0px;
  }
  .inspire202005 div.people_introduce div.block1 .text {
    font-size: 10px;
    padding-right: 26px;
    padding-top: 0px;
  }
  .inspire202005 div.people_introduce div.block2 .picture {
    padding-bottom: 15px;
    padding-top: 6px;
  }
  .inspire202005 div.people_introduce {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -webkit-flex-direction: initial;
        -ms-flex-direction: initial;
            flex-direction: initial;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-top: 30px;
  }
  .inspire202005 div.people_introduce div.block1 .picture {
    display: none;
  }
  .inspire202005 div.lead_people_block1 p.text {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 1.1px;
    padding-bottom: 90px;
  }
  .inspire202005 div.lead_people_block1 p.name {
    font-size: 11px;
    line-height: 1.5;
  }
  .inspire202005 div.lead__people_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
    margin: 0;
  }
  .inspire202005 div.lead__people {
    margin: auto;
    padding: 20px 0px 20px;
    max-width: 800px;
  }
  .inspire202005 div.lead_people_block1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 340%;
  }
  .inspire202005 div.lead__people div.text {
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
  }
  .inspire202005 div.lead_people_block1 .people_title {
    font-size: 24px;
    padding-bottom: 20px;
  }
  .inspire202005 div.lead_people_block2 {
    padding-right: 20px;
  }
  .inspire202005 div.lead_people_block2 div.picture img {
    display: inline-block;
    width: 170px;
    height: auto;
    margin-top: 7px;
  }
  .inspire202005 div.lead_people_block2 div.text {
    display: inline-block;
    height: 150px;
    width: 200px;
  }
  .inspire202005 div.text span.profile {
    font-size: 11px;
    line-height: 1.55;
    padding-bottom: 0px;
    letter-spacing: -0.5px;
  }
  .inspire202005 div.text span.name {
    padding-top: 20px;
    float: right;
  }
}

.inspire202005 .lead__article span {
  font-family: YuMin;
}

.inspire202005 div.picture__article {
  display: none;
}

.inspire202005 .lead__article div.article {
  background-color: #fff;
  width: 305px;
  height: auto;
  padding: 45px 20px 0;
  margin: auto;
}

.inspire202005 div.flow {
  background-image: url("/stcontents/img/sub-page/inspire/inspire202005/pages-visual-sp.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  height: 320px;
  margin-bottom: 900px;
}

.inspire202005 div.flow_background {
  background-image: url("/stcontents/img/sub-page/inspire/inspire202005/sen-visual-sp.jpg");
  margin-bottom: 670px;
}

.inspire202005 div.lead__article p.logo1 {
  text-align: center;
}

.inspire202005 div.lead__article p.logo1 img {
  width: 170px;
  height: auto;
}

.inspire202005 div.lead__article p.logo2 {
  text-align: center;
}

.inspire202005 div.lead__article p.logo2 img {
  height: 100px;
  width: auto;
  margin: auto;
}

.inspire202005 .article_left div.article {
  background-color: #fff;
}

.inspire202005 .lead__article p {
  padding-top: 20px;
  font-size: 14px;
  line-height: 1.7;
  letter-spacing: 1.1px;
  color: #333333;
  max-width: 100%;
}

.inspire202005 .lead__article .hotel_introduce p.text {
  padding-top: 0px;
  font-size: 12px;
  line-height: 2;
  letter-spacing: 1.1px;
}

.inspire202005 .lead__article .hotel_introduce p.title {
  padding-top: 10px;
  padding-bottom: 8px;
  font-size: 28px;
  line-height: 2;
  letter-spacing: 1.1px;
  font-weight: 600;
}

.inspire202005 .lead__article {
  position: absolute;
  right: 0px;
  left: 0px;
  top: 270px;
  z-index: 1;
}

@media screen and (min-width: 930px) {
  .inspire202005 .lead__article {
    position: absolute;
    right: 15px;
    top: 270px;
    z-index: 1;
  }
  .inspire202005 .lead__article .hotel_introduce p.title {
    padding-top: 40px;
    padding-bottom: 8px;
    font-size: 28px;
    line-height: 2;
    letter-spacing: 1.1px;
  }
  .inspire202005 div.lead__article p.logo1 {
    height: 120px;
    width: auto;
    margin: auto;
  }
  .inspire202005 div.lead__article p.logo2 {
    height: 100px;
    width: 124px;
    margin: auto;
  }
  .inspire202005 div.flow {
    background-image: url("/stcontents/img/sub-page/inspire/inspire202005/pages-visual.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    height: 500px;
    margin-bottom: 0px;
  }
  .inspire202005 div.flow_background {
    background-image: url("/stcontents/img/sub-page/inspire/inspire202005/sen-visual.jpg");
  }
  .inspire202005 .lead__article {
    position: absolute;
    left: 420px;
    top: 430px;
    z-index: 1;
  }
  .inspire202005 .article_left {
    left: -375px;
  }
  .inspire202005 div.picture__left {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .inspire202005 .lead__article div.article {
    background-color: #fff;
    width: 375px;
    height: 700px;
    padding: 45px 40px 0px;
  }
  .inspire202005 .lead__article span {
    font-family: YuMin;
    font-size: 72.5px;
    line-height: 1.61;
    letter-spacing: 7.3px;
  }
  .inspire202005 .lead__article p.den {
    font-size: 30px;
    line-height: 1.61;
    letter-spacing: 7.3px;
    padding-top: 14px;
    padding-left: 10px;
  }
  .inspire202005 .lead__article p.line {
    border-bottom: solid 1px #666;
    width: 100px;
    padding-top: 10px;
    padding-right: 10px;
  }
  .inspire202005 .lead__article p {
    padding-top: 20px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: 1.1px;
  }
  .inspire202005 .lead__article .hotel_introduce p.text {
    padding-top: 10px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: 1.1px;
  }
  .inspire202005 .lead__article div.title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .inspire202005 div.picture__article {
    display: block;
    max-width: 930px;
    margin: auto;
  }
  .inspire202005 div.picture__article img {
    width: 465px;
    height: 530px;
    padding-top: 110px;
    padding-bottom: 120px;
    padding-right: 42px;
  }
}

.inspire202005 div.profile_text .pc {
  display: none;
}

.inspire202005 div.profile_frame {
  margin: auto;
  padding: 40px 25px;
  border: 1px solid #ccc;
}

.inspire202005 .section__title {
  margin-top: 60px;
  font-size: 24px;
}

.inspire202005 .relux__inner {
  margin-bottom: 80px;
}

.inspire202005 .relux__list {
  text-align: left;
}

.inspire202005 div.profile_text p.text {
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.9px;
}

.inspire202005 section.profile {
  max-width: 800px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: auto;
  padding-top: 50px;
}

.inspire202005 div.profile_frame {
  margin: 0px 15px;
  padding: 40px 25px;
  border: 1px solid #ccc;
}

.inspire202005 div.sponsor {
  background-color: #efefef;
  padding: 20px;
  margin: 50px 0 0;
}

.inspire202005 div.sponsor_card {
  background-color: #fff;
  padding: 50px;
}

.inspire202005 div.sponsor_card_main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 div.sponsor_card_sub {
  margin: 50px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 div.sponsor p {
  font-size: 25px;
  letter-spacing: 4.5px;
  color: #000000;
}

.inspire202005 div.sponsor p.text {
  font-size: 16px;
  font-weight: bold;
  color: #000000;
  letter-spacing: 1px;
  padding-top: 12px;
}

.inspire202005 div.sponsor_card_main img {
  width: 90px;
  margin: 32px 0 10px;
}

.inspire202005 div.sponsor_card_sub img {
  width: 104px;
  margin: 32px 0 0;
}

.inspire202005 .inspire_relux {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.inspire202005 .inspire_relux p.logo {
  width: 210px;
  height: 60px;
  background-image: url("/stcontents/img/sub-page/inspire/what-Inspire.png");
  background-size: 100%;
  background-repeat: no-repeat;
  margin: auto;
}

.inspire202005 .inspire_relux p.title {
  font-size: 24px;
  font-family: YuMin;
  padding-right: 30px;
}

.inspire202005 div.profile_text {
  padding-top: 30px;
  line-height: 2;
}

.inspire202005 div.profile_text p.text {
  font-size: 12px;
  line-height: 2;
  letter-spacing: 0.9px;
}

@media screen and (min-width: 768px) {
  .inspire202005 div.inspire_relux_text {
    padding: 40px;
  }
  .inspire202005 div.sponsor p {
    font-size: 26px;
    letter-spacing: 4.5px;
  }
  .inspire202005 div.sponsor_card_sub img {
    width: 112px;
    margin: 16px 0 16px;
  }
  .inspire202005 div.sponsor_card_sub {
    margin: 40px 0 20px;
  }
  .inspire202005 div.sponsor_card_main {
    padding: 32px 0 40px;
  }
  .inspire202005 div.sponsor_card_main img {
    width: 90px;
    margin: 16px 0 10px;
  }
  .inspire202005 div.sponsor {
    background-color: #efefef;
    width: 800px;
    padding: 1px;
    margin: auto;
    margin-top: 80px;
  }
  .inspire202005 div.sponsor_card {
    background-color: #fff;
    padding: 12px;
    margin: 56px;
  }
  .inspire202005 div.profile_frame {
    margin: auto;
    padding: 0px;
    width: 800px;
    border: 1px solid #ccc;
  }
  .inspire202005 div.profile_text .pc {
    display: block;
  }
  .inspire202005 div.inspire_relux p.logo {
    width: 280px;
    height: 60px;
    margin: auto;
    background-image: url("/stcontents/img/sub-page/inspire/what-Inspire.png");
    background-size: 100%;
    background-repeat: no-repeat;
  }
}

.inspire202005 div.picture_end {
  background-image: url("/stcontents/img/sub-page/inspire/inspire202005/overview.jpg");
  background-attachment: inherit;
  height: 200px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 200%;
}

@media screen and (min-width: 768px) {
  .inspire202005 div.picture_end {
    background-size: cover;
  }
  .inspire202005 div.picture_end {
    height: 320px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .wrapper .pc {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .wrapper .sp {
    display: none;
  }
}

.inspire202005 section.form .container, .inspire202005 section.form--confirm .container {
  max-width: 660px;
}

.inspire202005 section .container {
  margin: 40px auto;
  padding: 0 20px;
}

@media screen and (min-width: 768px) {
  .inspire202005 section .container {
    max-width: 800px;
    padding: 0px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.inspire202005 .section__title {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 15px;
  text-align: center;
  letter-spacing: 4px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .section__title {
    font-size: 32px;
    margin-bottom: 40px;
  }
  .inspire202005 .section__title br {
    display: none;
  }
}

.inspire202005 .section__text {
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .section__text {
    line-height: 28px;
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .key-visual-screen {
    background-position: 50% 75%;
    background-image: url("/stcontents/img/sub-page/inspire/inspire202005/main-image.jpg");
    height: 100vh;
  }
  .inspire202005 .key-visual {
    margin-bottom: 64px;
  }
}

.inspire202005 .key-visual::after {
  display: block;
  content: "";
  padding-top: 100%;
}

@media screen and (min-width: 768px) {
  .inspire202005 .key-visual::after {
    padding-top: 574px;
  }
}

@media screen and (min-width: 480px) {
  .inspire202005 .key-visual__title {
    top: 20%;
  }
}

.inspire202005 .key-visual__footer {
  position: absolute;
  bottom: 80px;
  left: 50%;
  margin-left: -7px;
}

.inspire202005 .key-visual a.scroll span {
  position: absolute;
  top: 60px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-animation: sdb 1.5s infinite;
  animation: sdb 1.5s infinite;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 10px;
}

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(135deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(135deg) translate(-20px, 20px);
    opacity: 0;
  }
}

@keyframes sdb {
  0% {
    -webkit-transform: rotate(135deg) translate(0, 0);
            transform: rotate(135deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(135deg) translate(-20px, 20px);
            transform: rotate(135deg) translate(-20px, 20px);
    opacity: 0;
  }
}

.inspire202005 div.lead__description p.text {
  text-align: left;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__description {
    max-width: 740px;
    margin-bottom: 20px;
  }
  .inspire202005 div.lead__description p {
    text-align: center;
    font-size: 14px;
    line-height: 2;
    color: #333333;
  }
  .inspire202005 div.lead__description p.text {
    text-align: center;
    max-width: 100%;
  }
  .inspire202005 div.lead_title {
    text-align: center;
  }
}

.inspire202005 .lead__logo img {
  width: 100%;
  height: auto;
}

.inspire202005 .lead__info {
  margin: 0 auto 40px;
  background-color: #efefef;
  padding: 24px 0 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 720px;
  text-align: left;
}

@media screen and (min-width: 375px) {
  .inspire202005 .lead__info {
    padding: 24px 5% 24px;
    margin: 0 auto 30px;
  }
}

.inspire202005 .lead__heading {
  margin-bottom: 16px;
  color: #000000;
  font-size: 15px;
  font-weight: 600;
}

@media screen and (min-width: 375px) {
  .inspire202005 .lead__heading {
    font-size: 18px;
  }
}

.inspire202005 .lead__heading2 {
  font-size: 18px;
  letter-spacing: 1.8px;
  text-align: center;
  font-weight: 600;
}

.inspire202005 .lead__heading {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 600;
  line-height: 2.89;
  letter-spacing: 0px;
}

.inspire202005 .lead__heading span.number {
  font-size: 36px;
  line-height: 1.33;
  letter-spacing: 3.9px;
}

.inspire202005 .lead__heading p.text {
  float: right;
  font-size: 18px;
  padding-top: 5px;
  font-weight: bold;
}

.inspire202005 .lead__heading1 {
  font-size: 26px;
  text-align: center;
}

.inspire202005 .lead__heading2 {
  font-size: 16px;
  text-align: center;
  margin-top: 10px;
}

.inspire202005 h2.title_fix {
  margin: 50px 0 24px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__heading p.text {
    float: right;
    font-size: 36px;
    padding-top: 1px;
  }
  .inspire202005 .lead__heading {
    margin-bottom: 20px;
    font-size: 36px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0px;
    margin-top: -10px;
  }
  .inspire202005 .lead__heading1 {
    padding-top: 10px;
    font-size: 18px;
    font-weight: 600;
    line-height: 2.89;
    letter-spacing: 1.8px;
    text-align: center;
  }
  .inspire202005 .lead__heading2 {
    padding-top: 30px;
    font-size: 18px;
    font-weight: 600;
    line-height: 2.89;
    letter-spacing: 1.8px;
    text-align: center;
  }
  .inspire202005 .lead__heading span.number {
    font-size: 52px;
    line-height: 1.33;
    letter-spacing: 3.9px;
  }
  .inspire202005 .lead__heading span.text {
    padding-top: 10px;
  }
  .inspire202005 div.plan_block1 {
    /* display: inline-block; */
    float: left;
    width: 48%;
    text-align: left;
  }
}

.inspire202005 .lead__list {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__heading1 {
    font-size: 32px;
    letter-spacing: 1.8px;
    text-align: center;
  }
  .inspire202005 .lead__heading2 {
    padding: 0px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 1.8px;
    text-align: center;
  }
  .inspire202005 .lead__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.inspire202005 .lead__list + .lead__list {
  margin-top: 16px;
}

@media screen and (max-width: 768px) {
  .inspire202005 .lead__title {
    margin-bottom: 5px;
  }
}

.inspire202005 .lead__title p {
  margin: 0 auto;
  text-align: center;
  font-size: 10px;
  border: 1px solid #ccc;
  width: 90px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 24px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__title p {
    width: 100px;
    font-size: 14px;
    line-height: 28px;
    margin-right: 20px;
  }
  .inspire202005 dt.lead__title {
    float: left;
    margin-bottom: 60px;
  }
}

.inspire202005 .lead__desc {
  margin-left: 8px;
  font-size: 13px;
  margin-bottom: 17px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__desc {
    font-size: 17px;
    letter-spacing: 2px;
  }
}

.inspire202005 .lead__desc span {
  font-size: 20px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__desc span {
    font-size: 24px;
  }
}

@media screen and (min-width: 460px) {
  .inspire202005 .lead__desc br {
    display: none;
  }
}

.inspire202005 .lead__about {
  background-image: url("/stcontents/img/sub-page//nespresso/lead_image.jpg");
  background-position: center 30%;
  background-repeat: no-repeat;
  background-size: 75% auto;
  max-width: 720px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (min-width: 420px) {
  .inspire202005 .lead__about {
    background-size: 264px auto;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__about {
    padding: 80px 140px 80px 0;
    background-position: 105% center;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__about .section__title {
    text-align: left;
  }
}

.inspire202005 .lead__text-area {
  margin-top: 320px;
}

@media screen and (min-width: 375px) {
  .inspire202005 .lead__text-area {
    margin-top: 350px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__text-area {
    margin-top: 0;
  }
}

.inspire202005 .lead__text {
  font-size: 14px;
  font-weight: 600;
  line-height: 2;
}

.inspire202005 .lead__text + .lead__text {
  margin-top: 16px;
}

.inspire202005 .lead__text br {
  display: none;
}

@media screen and (min-width: 768px) {
  .inspire202005 .lead__text br {
    display: block;
  }
}

.inspire202005 .flow {
  background-image: url("/stcontents/img/sub-page//nespresso/flow_image_sp.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow {
    background-image: url("/stcontents/img/sub-page//nespresso/flow_image_pc.jpg");
    background-attachment: fixed;
    height: 580px;
    position: relative;
  }
}

.inspire202005 .flow .section__title {
  color: #FFFFFF;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.inspire202005 .flow__item {
  border: 1px solid #FFFFFF;
  border-radius: 4px;
  color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__item {
    display: block;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    text-align: center;
  }
}

.inspire202005 .flow__item:not(:last-child) {
  position: relative;
  margin-bottom: 48px;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__item:not(:last-child) {
    margin: 0 48px 0 0;
  }
}

.inspire202005 .flow__item:not(:last-child)::after {
  content: "▼";
  color: #FFFFFF;
  font-size: 20px;
  position: absolute;
  bottom: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__item:not(:last-child)::after {
    content: "▶︎";
    top: 50%;
    bottom: auto;
    left: auto;
    right: -36px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
}

.inspire202005 .flow__image {
  padding: 0 20px 0 10px;
}

@media screen and (min-width: 375px) {
  .inspire202005 .flow__image {
    padding: 0 32px 0 16px;
  }
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__image {
    height: 60px;
    padding: 15px 0;
    line-height: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.inspire202005 .flow__image img {
  width: 40px;
  height: auto;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__image img {
    width: 48px;
  }
}

.inspire202005 .flow__title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px;
  letter-spacing: 2px;
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__title {
    font-size: 20px;
    margin-bottom: 16px;
  }
}

.inspire202005 .flow__text {
  font-size: 12px;
  line-height: 1.5;
}

@media screen and (min-width: 375px) {
  .inspire202005 .flow__text {
    font-size: 14px;
  }
}

@media screen and (min-width: 960px) {
  .inspire202005 .flow__text {
    line-height: 2;
  }
}

@media screen and (max-width: 768px) {
  .inspire202005 .hotels .section__text br {
    display: none;
  }
}

.inspire202005 .hotels__list {
  margin-top: 48px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__list {
    margin-top: 64px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.inspire202005 .hotels__item:not(:last-child) {
  margin-bottom: 48px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__item:not(:last-child) {
    margin-bottom: 64px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .inspire202005 .hotels__item:nth-child(even) .hotels__image {
    margin: 0 0 0 30px;
  }
  .inspire202005 .hotels__item:nth-child(even) .hotels__body {
    text-align: right;
  }
  .inspire202005 .hotels__item:nth-child(even) .hotels__grade {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .inspire202005 .hotels__item:nth-child(even) .hotels__grade img:not(:last-of-type) {
    margin: 0 0 0 2px;
  }
}

.inspire202005 .hotels__image {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__image {
    width: 320px;
    margin: 0 30px 0 0;
  }
}

@media screen and (min-width: 960px) {
  .inspire202005 .hotels__image {
    width: 400px;
  }
}

.inspire202005 .hotels__image img {
  width: 100%;
  height: auto;
}

.inspire202005 .hotels__body > * {
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__body > * {
    margin-bottom: 20px;
  }
}

.inspire202005 .hotels__title {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: 16px;
  color: #000000;
  letter-spacing: 4px;
}

@media screen and (min-width: 375px) {
  .inspire202005 .hotels__title {
    font-size: 20px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .hotels__title {
    font-size: 24px;
  }
}

@media screen and (min-width: 960px) {
  .inspire202005 .hotels__title {
    font-size: 28px;
  }
}

.inspire202005 .hotels__grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.inspire202005 .hotels__grade img {
  width: 13px;
  height: 13px;
  border: 0;
}

.inspire202005 .hotels__grade img:not(:last-of-type) {
  margin-right: 2px;
}

.inspire202005 .hotels__area, .inspire202005 .hotels__price {
  font-size: 12px;
}

.inspire202005 .hotels__text {
  margin-bottom: 0;
  font-size: 14px;
}

.inspire202005 .about {
  padding: 100px 0;
  background-image: url("/stcontents/img/sub-page//nespresso/about_image_sp.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .inspire202005 .about {
    padding: 160px 0;
    background-image: url("/stcontents/img/sub-page//nespresso/about_image_pc.jpg");
  }
}

.inspire202005 .about .section__title,
.inspire202005 .about .section__text {
  color: #FFFFFF;
}

.inspire202005 .about .section__title {
  font-family: 'MS PGothic';
}

@media screen and (max-width: 960px) {
  .inspire202005 .about .section__title .responsive {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .inspire202005 .about .section__text br {
    display: none;
  }
}

@media screen and (min-width: 960px) {
  .inspire202005 .about .section__text br.responsive {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .relux__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 80px;
  }
}

.inspire202005 .relux__image {
  height: 370px;
  position: relative;
  overflow: hidden;
  margin-bottom: 32px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .relux__image {
    width: 550px;
    margin: 0 60px 0 0;
  }
}

.inspire202005 .relux__image::after {
  display: block;
  content: "";
  padding-top: 56.25%;
}

@media screen and (min-width: 768px) {
  .inspire202005 .relux__image::after {
    padding-top: 100%;
  }
}

.inspire202005 .relux__image img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .inspire202005 .relux__image img {
    width: auto;
    max-height: 100%;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .relux__list {
    text-align: left;
  }
}

.inspire202005 .relux__title {
  color: #0f0a64;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.inspire202005 .relux__desc {
  font-size: 12px;
  text-align: left;
  margin-bottom: 24px;
  line-height: 1.7;
}

@media screen and (min-width: 480px) {
  .inspire202005 .relux__desc {
    text-align: center;
  }
  .inspire202005 .relux__desc {
    display: inline-block;
    text-align: left;
    line-height: 2;
  }
}

.inspire202005 .overview {
  background-color: #efefef;
  padding: 5px 0;
}

@media screen and (min-width: 768px) {
  .inspire202005 .overview {
    padding: 64px 0;
  }
}

.inspire202005 .overview__defnition {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .inspire202005 .overview__defnition {
    max-width: 820px;
  }
}

.inspire202005 .overview__title {
  font-size: 16px;
  font-weight: bold;
  color: #000000;
  margin-bottom: 8px;
}

.inspire202005 .title_fix {
  margin-left: 20px;
}

.inspire202005 .point_fix::before {
  content: "※";
}

.inspire202005 .overview__title::before {
  content: "■";
}

.inspire202005 .overview__desc:not(:last-child) {
  margin-bottom: 40px;
}

.inspire202005 .overview__desc p:not(:last-of-type) {
  margin-bottom: 5px;
}

.inspire202005 .overview__desc a {
  color: #1da1f2;
  text-decoration: none;
}

.inspire202005 .overview__desc a:hover {
  text-decoration: underline;
}

.inspire202005 .overview__item {
  position: relative;
  padding-left: 1rem;
  letter-spacing: 0px;
}

.inspire202005 li.overview__fix {
  letter-spacing: -1px;
}

.inspire202005 .overview__item:not(:last-child) {
  margin-bottom: 5px;
}

.inspire202005 .overview__item::before {
  position: absolute;
  left: 0;
  content: "・";
}

.inspire202005 .overview__item .overview__list {
  margin-top: 5px;
}

.inspire202005 .contact {
  margin-bottom: 64px;
}

.inspire202005 .contact__inner {
  border: 1px solid #ccc;
  margin: 0 auto;
  max-width: 720px;
  padding: 40px 0;
  text-align: center;
}

.inspire202005 .contact__title {
  font-size: 14px;
  font-weight: 600;
  color: #000000;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .contact__title {
    font-size: 16px;
  }
  .inspire202005 li.overview__fix {
    letter-spacing: 1px;
  }
}

.inspire202005 .contact__text {
  font-size: 14px;
}

.inspire202005 .contact__text:not(:last-of-type) {
  margin-bottom: 5px;
}

.inspire202005 .contact__text a {
  color: #1da1f2;
  text-decoration: none;
}

.inspire202005 .contact__text a:hover {
  text-decoration: underline;
}

.inspire202005 .footer .copyright {
  text-align: center;
  font-size: 10px;
  margin-top: 10px;
  margin-bottom: 40px;
}

.inspire202005 .action {
  border-top: 1px solid #000;
  background-color: rgba(255, 255, 255, 0.8);
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 8px 0;
}

@media screen and (min-width: 768px) {
  .inspire202005 .footer .copyright {
    text-align: center;
    font-size: 10px;
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .inspire202005 .action {
    padding: 16px 0;
  }
}

.inspire202005 .action__list {
  padding: 0 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (min-width: 768px) {
  .inspire202005 .action__list {
    max-width: 960px;
    padding: 0 15px;
    margin: 0 auto;
  }
}

.inspire202005 .action__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 16px;
  font-weight: bold;
}

.inspire202005 .action__item:not(:first-child) {
  margin-left: 10px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .action__item:not(:first-child) {
    margin-left: 15px;
  }
}

.inspire202005 .action__item a {
  display: block;
  background-color: #0f0a64;
  color: #FFFFFF;
  text-align: center;
  text-decoration: none;
  height: 50px;
  line-height: 50px;
  border-radius: 2px;
}

.inspire202005 .modal__container {
  position: fixed;
  top: 20vh;
  width: 80%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .inspire202005 .modal__container {
    width: 50%;
    min-width: 500px;
  }
}

.inspire202005 .modal__inner {
  background: #FFFFFF;
}

.inspire202005 .modal__body {
  border: none;
  width: 100%;
  height: 40vh;
  text-align: left;
}

.inspire202005 .modal button {
  margin-top: 20px;
  border: none;
  background-color: #0f0a64;
  color: #FFFFFF;
  width: 100%;
  padding: 8px 0;
  border-radius: 2px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .modal button {
    width: 60%;
  }
}

.inspire202005 .form input, .inspire202005 .form--confirm input,
.inspire202005 .form select,
.inspire202005 .form--confirm select,
.inspire202005 .form textarea,
.inspire202005 .form--confirm textarea,
.inspire202005 .form button,
.inspire202005 .form--confirm button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.inspire202005 .form input[type=radio], .inspire202005 .form--confirm input[type=radio],
.inspire202005 .form input[type="checkbox"],
.inspire202005 .form--confirm input[type="checkbox"] {
  display: none;
}

.inspire202005 .form__heading, .inspire202005 .form-complete__title {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  margin-bottom: 32px;
  border-bottom: 1px solid #ccc;
  padding-bottom: 5px;
}

.inspire202005 .form__header {
  margin-bottom: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.inspire202005 .form__title {
  font-size: 14px;
  font-weight: bold;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.inspire202005 .form__label--any, .inspire202005 .form__label--required {
  font-size: 10px;
  color: #fff;
  background-color: #777;
  padding: 2px 5px;
  border-radius: 4px;
  margin-right: 8px;
}

.inspire202005 .form__label--required {
  background-color: #e5625c;
}

.inspire202005 .form__container + .form__container {
  margin-top: 24px;
}

.inspire202005 .form--confirm .form__container + .form__container {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .form__parallel {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .form__parallel .form__header {
    width: 220px;
    margin-bottom: 0;
  }
}

.inspire202005 .form__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.inspire202005 .form__body + .form__body {
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  .inspire202005 .form__body.vary {
    display: block;
  }
  .inspire202005 .form__body.vary label {
    display: block;
  }
  .inspire202005 .form__body.vary label:not(:first-of-type), .inspire202005 .form__body.vary label:not(:last-of-type) {
    margin: 16px 0 0 0;
  }
}

.inspire202005 .form__body .form__input,
.inspire202005 .form__body .form__textarea,
.inspire202005 .form__body .form__textarea--large {
  width: 100%;
}

.inspire202005 .form__body .error-message {
  display: none;
}

.inspire202005 .form__input {
  border: 1px solid #ddd;
  padding: 10px;
}

.inspire202005 .form__input + .form__input {
  margin-left: 20px;
}

.inspire202005 .form__select {
  position: relative;
}

.inspire202005 .form__select + .form__select {
  margin-left: 20px;
}

.inspire202005 .form__select::before, .inspire202005 .form__select::after {
  font-size: 10px;
  position: absolute;
  right: 5px;
  color: #333;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}

.inspire202005 .form__select::before {
  content: "▲";
  top: 20%;
}

.inspire202005 .form__select::after {
  content: "▼";
  bottom: 20%;
}

.inspire202005 .form__select select {
  height: 38px;
  border: 1px solid #ddd;
  padding: 10px 30px 10px 10px;
  border-radius: 0;
  background-color: #fff;
  cursor: pointer;
}

.inspire202005 .form__select select::-ms-expand {
  display: none;
}

.inspire202005 .form__radio label {
  position: relative;
  padding-left: 17px;
  cursor: pointer;
}

.inspire202005 .form__radio label:not(:first-of-type) {
  margin-left: 32px;
}

.inspire202005 .form__radio label::before {
  position: absolute;
  left: 0;
  top: 3px;
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.inspire202005 .form__radio input[type="radio"]:checked + label::before {
  border: 4px solid #4487fd;
}

.inspire202005 .form__check {
  display: block;
}

.inspire202005 .form__check label {
  display: inline-block;
  position: relative;
  padding-left: 17px;
  cursor: pointer;
}

.inspire202005 .form__check label:not(:last-of-type) {
  margin: 0 32px 24px 0;
}

.inspire202005 .form__check label:last-of-type {
  display: block;
}

.inspire202005 .form__check label::before, .inspire202005 .form__check label::after {
  position: absolute;
  content: "";
}

.inspire202005 .form__check label::before {
  width: 12px;
  height: 12px;
  border-radius: 2px;
  border: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  top: 3px;
  left: 0;
}

.inspire202005 .form__check label::after {
  display: none;
  top: 3px;
  left: 3px;
  z-index: 1;
  width: 2px;
  height: 5px;
  border: 2px solid transparent;
  border-right-color: #fff;
  border-bottom-color: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.inspire202005 .form__check input[type="checkbox"]:checked + label::before {
  border: 1px solid #4487fd;
  background-color: #4487fd;
}

.inspire202005 .form__check input[type="checkbox"]:checked + label::after {
  display: block;
}

.inspire202005 .form__textarea, .inspire202005 .form__textarea--large {
  border: 1px solid #ddd;
  padding: 10px;
  resize: none;
  height: 16px;
}

.inspire202005 .form__textarea--large {
  height: 120px;
}

.inspire202005 .form-btn__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.inspire202005 .form-btn__list--vertical {
  display: block;
  max-width: 360px;
  margin: 0 auto;
}

.inspire202005 .form-btn__item {
  width: 180px;
}

.inspire202005 .form-btn__list--vertical .form-btn__item {
  width: 100%;
}

.inspire202005 .form-btn__item:not(:first-child) {
  margin-left: 16px;
  width: 300px;
}

.inspire202005 .form-btn__list--vertical .form-btn__item:not(:first-child) {
  width: 100%;
  margin: 16px 0 0 0;
}

.inspire202005 .form-btn__item a,
.inspire202005 .form-btn__item button {
  cursor: pointer;
  display: block;
  width: 100%;
  height: 50px;
  line-height: 50px;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
}

.inspire202005 .form-btn__item a:link, .inspire202005 .form-btn__item a:visited,
.inspire202005 .form-btn__item button:link,
.inspire202005 .form-btn__item button:visited {
  text-decoration: none;
}

.inspire202005 .form-btn__item a.form-btn__bordered,
.inspire202005 .form-btn__item button.form-btn__bordered {
  color: #0f0a64;
  border: 1px solid #0f0a64;
  background-color: #fff;
}

.inspire202005 .form-btn__item a.form-btn__colored,
.inspire202005 .form-btn__item button.form-btn__colored {
  color: #fff;
  background-color: #0f0a64;
}

.inspire202005 .form-btn__item button {
  outline: none;
  border: none;
}

.inspire202005 .form--basic {
  margin-bottom: 64px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .form--basic {
    margin-bottom: 80px;
  }
}

@media screen and (max-width: 768px) {
  .inspire202005 .form--basic .form__header {
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 768px) {
  .inspire202005 .form--basic .error-message {
    margin-left: 220px;
  }
}

.inspire202005 .form--survey .form__container {
  margin-bottom: 64px;
}

.inspire202005 .form-lead {
  margin-bottom: 48px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .form-lead {
    margin-bottom: 64px;
  }
}

.inspire202005 .form-lead .form__heading, .inspire202005 .form-lead .form-complete__title {
  border: none;
  padding-bottom: 0;
}

.inspire202005 .form-lead__text {
  font-size: 14px;
  line-height: 1.5;
}

.inspire202005 .form-lead__text + .form-lead__text {
  margin-top: 5px;
}

.inspire202005 .form-complete__title {
  text-align: center;
  margin-bottom: 32px;
  border: none;
  padding-bottom: 0;
}

.inspire202005 .form-complete__text {
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .inspire202005 .form-complete__text {
    text-align: center;
  }
}

.inspire202005 .form-complete__text + .form-complete__text {
  margin-top: 5px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .form-complete__text + .form-complete__text {
    margin-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .inspire202005 .form-complete__text br {
    display: none;
  }
}

.inspire202005 .error-message {
  color: #d20404;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1;
}

.inspire202005 .share-btn {
  margin: 48px auto;
}

@media screen and (min-width: 768px) {
  .inspire202005 .share-btn {
    margin: 64px auto;
  }
}

.inspire202005 .share-btn__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.inspire202005 .share-btn__item:not(:first-child) {
  margin-left: 20px;
}

.inspire202005 .share-btn__item a {
  text-decoration: none;
}

.inspire202005 .share-btn__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.inspire202005 .share-btn__link:hover {
  opacity: .8;
}

.inspire202005 .share-btn__link i {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
  width: 38px;
  height: 38px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .share-btn__link i {
    width: 28px;
    height: 28px;
  }
}

.inspire202005 .share-btn__link i.facebook {
  background-color: #265a96;
}

.inspire202005 .share-btn__link i.facebook img {
  width: 8px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .share-btn__link i.facebook img {
    width: 6px;
  }
}

.inspire202005 .share-btn__link i.twitter {
  background-color: #00acec;
}

.inspire202005 .share-btn__link i.line {
  background-color: #01c301;
}

.inspire202005 .share-btn__link i img {
  width: 14px;
}

@media screen and (min-width: 768px) {
  .inspire202005 .share-btn__link i img {
    width: 12px;
  }
}

.inspire202005 .share-btn__text {
  color: #333;
  margin-left: 5px;
}

.inspire202005 div.inner_share {
  padding: 0px 0px 40px;
  text-align: center;
}

.inspire202005 ul.shareBtn {
  margin: 0 auto;
  width: 100%;
  margin-bottom: 0px;
  margin-top: 30px;
}

.inspire202005 ul.shareBtn li {
  margin: 0 10px;
  display: inline-block;
  text-align: center;
  border-radius: 100px;
}

.inspire202005 ul.shareBtn li.facebook {
  background: url("/stcontents/img/sub-page/inspire/share-fb.png") no-repeat 50% 50%;
  background-size: auto 16px;
  background-color: #315096;
}

.inspire202005 ul.shareBtn li.twitter {
  background: url("/stcontents/img/sub-page/inspire/share-tw.png") no-repeat 50% 50%;
  background-size: auto 16px;
  background-color: #55acee;
}

.inspire202005 ul.shareBtn li.line {
  background: url("/stcontents/img/sub-page/inspire/share-line.png") no-repeat 50% 50%;
  background-size: auto 16px;
  background-color: #00c300;
}

.inspire202005 ul.shareBtn li a {
  display: block;
  text-decoration: none;
  outline: none;
  color: #FFFFFF;
  -webkit-transition: none;
  vertical-align: middle;
  width: 34px;
  height: 34px;
}

.inspire202005 ul.shareBtn span.text {
  display: none;
}

@media (min-width: 960px) {
  .inspire202005 ul.shareBtn {
    margin-bottom: 20px;
    margin-top: 50px;
  }
  .inspire202005 ul.shareBtn li.facebook {
    background: url("/stcontents/img/sub-page/inspire/share-fb.png") no-repeat 30px 50%;
    background-size: auto 16px;
    background-color: #315096;
  }
  .inspire202005 ul.shareBtn li.twitter {
    background: url("/stcontents/img/sub-page/inspire/share-tw.png") no-repeat 30px 50%;
    background-size: auto 16px;
    background-color: #55acee;
  }
  .inspire202005 ul.shareBtn li a {
    display: block;
    text-decoration: none;
    outline: none;
    color: #FFFFFF;
    -webkit-transition: none;
    vertical-align: middle;
    width: 240px;
    height: 44px;
  }
  .inspire202005 ul.shareBtn span.text {
    display: inline-block;
    padding-top: 13px;
    font-weight: bold;
    padding-left: 20px;
  }
  .inspire202005 ul.shareBtn li.line {
    display: none;
  }
}

.vacation-home {
  /* pc */
  /* sp */
}

.vacation-home .key-visual .slick-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  height: 80vh;
}

.vacation-home .key-visual .inner {
  height: 100%;
}

.vacation-home .key-visual .inner .main-text {
  display: inline-block;
  position: absolute;
  bottom: 50%;
  left: 0;
  right: 0;
}

.vacation-home .key-visual .inner .btn {
  display: inline-block;
  position: absolute;
  bottom: 15%;
  left: 0;
  right: 0;
}

.vacation-home .contents .area .title {
  font-family: YuGo,sans-serif;
  text-align: center;
}

.vacation-home .contents .area ul li {
  width: 288px;
  height: 210px;
}

.vacation-home .contents .area ul li a {
  width: 100%;
  height: 100%;
  position: relative;
  float: left;
  color: #fff;
}

.vacation-home .contents .area ul li a .layer {
  height: 100%;
  background: #000;
  border-radius: 4px;
}

.vacation-home .contents .area ul li a .layer img {
  width: 100%;
  height: 100%;
  border-radius: 4px;
  position: relative;
  opacity: .8;
}

.vacation-home .contents .area ul li a .layer p {
  margin: 0;
  position: absolute;
  top: 87px;
  left: 0;
  right: 0;
  text-align: center;
}

.vacation-home .contents .area ul li:nth-last-child(1) {
  margin-right: 0;
}

.vacation-home .contents .theme ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.vacation-home .contents .theme ul li:nth-child(3n) {
  margin-right: 0;
}

.vacation-home .contents .theme .title {
  font-family: YuGo,sans-serif;
  text-align: center;
}

.vacation-home .contents .publish {
  background: url(/stcontents/img/sub-page/vacation-home/publish-bg.jpg) no-repeat;
  background-position: center;
  background-size: cover;
  height: 388px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 768px) {
  .vacation-home .key-visual {
    height: 80vh;
  }
  .vacation-home .key-visual .slick-box img {
    height: 80vh;
  }
  .vacation-home .key-visual .inner .main-text img {
    max-width: 100%;
    width: 695px;
    height: auto;
  }
  .vacation-home .key-visual .inner .btn a {
    font-size: 2.0rem;
  }
  .vacation-home .contents .area .wrap {
    padding: 60px 0;
    border-bottom: solid 1px #efefef;
  }
  .vacation-home .contents .area .title {
    margin-bottom: 40px;
  }
  .vacation-home .contents .area ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    overflow: hidden;
  }
  .vacation-home .contents .area ul li {
    margin-right: calc((100% - 742px) / 3);
    width: 288px;
    height: 210px;
  }
  .vacation-home .contents .area ul li a {
    width: 100%;
    height: 100%;
    position: relative;
    float: left;
    color: #fff;
  }
  .vacation-home .contents .area ul li a .layer {
    height: 100%;
    background: #000;
    border-radius: 4px;
  }
  .vacation-home .contents .area ul li a .layer img {
    width: 100%;
    height: 100%;
    border-radius: 4px;
    position: relative;
    opacity: .8;
  }
  .vacation-home .contents .area ul li a .layer p {
    margin: 0;
    position: absolute;
    top: 87px;
    left: 0;
    right: 0;
    font-family: YuGo,sans-serif;
    text-align: center;
  }
  .vacation-home .contents .area ul li:nth-last-child(1) {
    margin-right: 0;
  }
  .vacation-home .contents .theme .wrap {
    padding: 60px 0;
  }
  .vacation-home .contents .theme .title {
    margin-bottom: 30px;
  }
  .vacation-home .contents .theme ul li {
    margin-right: calc((100% - 742px) / 3);
    margin-bottom: 40px;
    width: 288px;
    display: table;
    float: left;
  }
  .vacation-home .contents .theme ul li a {
    color: #fff;
  }
  .vacation-home .contents .theme ul li a img {
    width: 288px;
    height: 210px;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    vertical-align: bottom;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
  }
  .vacation-home .contents .theme ul li a p {
    margin: 0;
    padding: 18px 16px;
    width: 288px;
    height: 94px;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    background-color: #fff;
    border: solid 1px #d8d8d8;
    display: table-cell;
    vertical-align: middle;
    color: #3c3c3c;
    font-family: YuGo,sans-serif;
    text-align: left;
  }
  .vacation-home .contents .publish {
    height: 388px;
  }
  .vacation-home .contents .publish .wrap a {
    font-size: 2.0rem;
  }
}

@media screen and (max-width: 767px) {
  .vacation-home .key-visual {
    height: 450px;
  }
  .vacation-home .key-visual .slick-box img {
    height: 450px;
  }
  .vacation-home .key-visual .inner .main-text img {
    max-width: 100%;
    width: 374px;
    height: auto;
  }
  .vacation-home .contents .area {
    border-bottom: solid 1px #efefef;
  }
  .vacation-home .contents .area .wrap {
    padding: 50px 0;
  }
  .vacation-home .contents .area .title {
    margin-bottom: 30px;
  }
  .vacation-home .contents .area ul {
    overflow-x: auto;
    overflow-y: hidden;
  }
  .vacation-home .contents .area ul::-webkit-scrollbar {
    display: none;
  }
  .vacation-home .contents .area ul li {
    display: table-cell;
    position: relative;
    width: 260px;
    height: 190px;
    padding-right: 20px;
  }
  .vacation-home .contents .area ul li a {
    width: 100%;
    height: 100%;
    white-space: nowrap;
  }
  .vacation-home .contents .area ul li a .layer {
    width: 260px;
    height: 190px;
    background: #000;
    border-radius: 4px;
  }
  .vacation-home .contents .area ul li a .layer img {
    width: 260px;
    height: 190px;
    border-radius: 4px;
    position: relative;
    opacity: .8;
  }
  .vacation-home .contents .area ul li a .layer p {
    position: absolute;
    font-family: YuGo,sans-serif;
    color: #fff;
    top: 74px;
    left: 0;
    right: 0;
    text-align: center;
  }
  .vacation-home .contents .area ul li:nth-last-child(1) {
    margin-right: 0;
  }
  .vacation-home .contents .theme .wrap {
    padding: 50px 0;
  }
  .vacation-home .contents .theme .title {
    margin-bottom: 30px;
  }
  .vacation-home .contents .theme ul li a {
    color: #fff;
    opacity: .7;
  }
  .vacation-home .contents .theme ul li a img {
    width: 100%;
    height: auto;
    border-radius: 2px;
    background-color: #fff;
    vertical-align: bottom;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
  }
  .vacation-home .contents .theme ul li a p {
    margin: 0;
    padding: 30px 14px;
    width: 100%;
    height: 81px;
    background-color: #fff;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    vertical-align: middle;
    font-family: YuGo,sans-serif;
    text-align: left;
    border: solid 1px #d8d8d8;
    color: #3c3c3c;
  }
  .vacation-home .contents .publish {
    height: 192px;
  }
}

.brandstory-rule .key-visual {
  height: 460px;
  background: url(/stcontents/img/sub-page/brandstory/rule/bg-top.png) no-repeat left top, url(/stcontents/img/sub-page/brandstory/rule/bg-bottom.png) no-repeat right bottom;
  background-color: #0F0A64;
}

.brandstory-rule .key-visual .inner {
  position: absolute;
  width: 90%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.brandstory-rule .section {
  margin-top: 40px;
  margin-bottom: 40px;
  padding-bottom: 40px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: 300;
}

.brandstory-rule .section .left {
  width: 38%;
  vertical-align: top;
  text-align: left;
}

.brandstory-rule .section .right {
  width: 50%;
}

.brandstory-rule .section .right img {
  max-width: 100%;
}

.brandstory-rule .section .right .img-color {
  width: 438px;
}

.brandstory-rule .section .right .img-logo {
  width: 390px;
}

.brandstory-rule .section .right .img-isolation {
  width: 505px;
}

.brandstory-rule .section .right .download {
  margin-top: 32px;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.brandstory-rule .section .right .download .font-large {
  font-weight: 400;
  margin-bottom: 16px;
}

.brandstory-rule .section .right .download .btn-download {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.brandstory-rule .section .right .download .btn-download a {
  width: 50%;
}

.brandstory-rule .section .right .download .btn-download a:first-child {
  margin-right: 16px;
}

.brandstory-rule .section.col-1 {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.brandstory-rule .section.col-1 .left {
  text-align: center;
}

.brandstory-rule .section.col-1 .left .logo {
  width: 250px;
}

.brandstory-rule .h1-small {
  color: #0F0A64;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .brandstory-rule .key-visual {
    height: 520PX;
    background: url(/stcontents/img/sub-page/brandstory/rule/bg-top-sp.png) no-repeat left top, url(/stcontents/img/sub-page/brandstory/rule/bg-bottom-sp.png) no-repeat right bottom;
    background-color: #0F0A64;
  }
  .brandstory-rule .key-visual .inner img {
    width: 100%;
  }
  .brandstory-rule .section {
    display: block;
    margin-top: 32px;
    margin-bottom: 32px;
    padding-bottom: 48px;
  }
  .brandstory-rule .section .font-large {
    margin-bottom: 24px;
  }
  .brandstory-rule .section.col-1 .left .logo {
    width: 100px;
    margin-bottom: 32px;
  }
  .brandstory-rule .section .left,
  .brandstory-rule .section .right {
    text-align: left;
    width: 100%;
  }
  .brandstory-rule .section .left img,
  .brandstory-rule .section .right img {
    text-align: center;
  }
  .brandstory-rule .section .right .download {
    margin-top: 40px;
    text-align: center;
  }
  .brandstory-rule .section .right .download .font-large {
    font-size: 1.6rem;
  }
  .brandstory-rule .h1-small {
    font-size: 2.6rem;
  }
}

.hotels-agreement {
  /*pc*/
  /*sp*/
}

.hotels-agreement main {
  background-color: #f2f2f0;
}

.hotels-agreement main h1 {
  font-size: 2.6rem;
}

.hotels-agreement main .table-basic-border-none {
  border: none;
}

.hotels-agreement main .table-basic-border-none th, .hotels-agreement main .table-basic-border-none td {
  background: none;
  border: none;
}

.hotels-agreement main .table-basic-border-none th {
  vertical-align: top;
}

.hotels-agreement main .table-basic-border-none .sub-title {
  font-size: 1.6rem;
  font-weight: bold;
}

.hotels-agreement main .icon-pdf::after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(/stcontents/img/common/icon-pdf-pc.png) no-repeat;
  background-size: contain;
  margin: 2px 4px;
  vertical-align: middle;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

@media screen and (min-width: 768px) {
  .hotels-agreement main {
    padding-bottom: 120px;
  }
  .hotels-agreement main .contents {
    max-width: 800px;
  }
  .hotels-agreement main .table-basic-border-none th {
    padding: 15px 0;
  }
  .hotels-agreement main .table-basic-border-none td {
    font-size: 1.6rem;
    padding: 10px 0 10px 20px;
  }
  .hotels-agreement main .table-basic-border-none td ul li span {
    font-size: 1.2rem;
    vertical-align: top;
  }
  .hotels-agreement main .main-title {
    padding-top: 30px;
    padding-bottom: 20px;
  }
  .hotels-agreement main .google-map {
    width: 480px;
  }
  .hotels-agreement main a {
    color: #555555;
    text-decoration: underline;
  }
  .hotels-agreement main a:hover {
    text-decoration: none;
  }
}

@media screen and (max-width: 767px) {
  .hotels-agreement main .wrap {
    padding-bottom: 24px;
  }
  .hotels-agreement main .main-title {
    margin-bottom: 30px;
    padding-top: 10px;
    font-weight: bold;
  }
  .hotels-agreement main .table-basic-border-none th, .hotels-agreement main .table-basic-border-none td {
    width: 100%;
    display: block;
  }
  .hotels-agreement main .table-basic-border-none th {
    margin-bottom: 10px;
    padding: 0;
    font-weight: normal;
    line-height: 1.6;
  }
  .hotels-agreement main .table-basic-border-none td {
    margin-bottom: 30px;
    font-size: 1.6rem;
  }
  .hotels-agreement main .table-basic-border-none td ul li span {
    font-size: 1rem;
    vertical-align: top;
  }
  .hotels-agreement main .google-map {
    width: 100%;
  }
  .hotels-agreement main a {
    color: #333333;
    text-decoration: underline;
  }
  .hotels-agreement main a:hover {
    text-decoration: none;
  }
  .hotels-agreement main .icon-pdf::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url(/stcontents/img/common/icon-pdf-sp.png) no-repeat;
    background-size: contain;
    margin: 2px 4px;
    vertical-align: middle;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

.hotels-client .bg-blue {
  background: #0F0A64;
  overflow: hidden;
}

.hotels-client .key-visual {
  height: 460px;
  background: url(/stcontents/img/sub-page/hotels/cliten/bg-top.png) no-repeat left top, url(/stcontents/img/sub-page/hotels/cliten/bg-bottom.png) no-repeat right bottom;
  background-color: #0F0A64;
}

.hotels-client .key-visual .inner {
  position: absolute;
  width: 90%;
  top: 58%;
  left: 3%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}

.hotels-client .key-visual .inner h1 {
  font-weight: 300;
  font-size: 40px;
}

.hotels-client .bg-white {
  padding: 80px 104px;
  margin-bottom: 120px;
  font-weight: 300;
}

.hotels-client .about,
.hotels-client .merit,
.hotels-client .flow {
  margin-bottom: 160px;
}

.hotels-client .about h1, .hotels-client .about h2,
.hotels-client .merit h1,
.hotels-client .merit h2,
.hotels-client .flow h1,
.hotels-client .flow h2 {
  color: #0F0A64;
  font-weight: 300;
}

.hotels-client .about h2,
.hotels-client .merit h2,
.hotels-client .flow h2 {
  font-size: 24px;
}

.hotels-client .about .border-red,
.hotels-client .merit .border-red,
.hotels-client .flow .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}

.hotels-client .merit .branding {
  position: relative;
  text-align: right;
}

.hotels-client .merit .branding .circle {
  right: 0;
  z-index: 1;
}

.hotels-client .merit .branding .text {
  position: absolute;
  top: 32px;
  right: 0;
  z-index: 2;
}

.hotels-client .merit .reach {
  position: relative;
  text-align: left;
}

.hotels-client .merit .reach .circle {
  left: 0;
  z-index: 1;
}

.hotels-client .merit .reach .text {
  position: absolute;
  top: 71px;
  left: 60px;
  z-index: 2;
}

.hotels-client .merit .promotion {
  position: relative;
  text-align: right;
}

.hotels-client .merit .promotion .circle {
  right: 0;
  z-index: 1;
}

.hotels-client .merit .promotion .text {
  position: absolute;
  top: 55px;
  right: 24px;
  z-index: 2;
}

.hotels-client .flow .flow-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.hotels-client .flow .flow-wrap .flow-content {
  text-align: left;
  padding-left: 24px;
}

.hotels-client .flow .flow-wrap .flow-content:last-of-type {
  padding-right: 24px;
}

.hotels-client .flow .flow-wrap .flow-content p:nth-child(2) {
  font-weight: 400;
}

.hotels-client .flow .flow-wrap .flow-content .number {
  width: 32px;
  height: 27px;
  margin-bottom: 8px;
}

.hotels-client .flow .note {
  color: #757575;
  font-size: 12px;
  text-align: left;
  margin-top: 24px;
}

.hotels-client .flow .note p {
  margin-bottom: 0;
}

.hotels-client .bread-crumbs a {
  color: #fff;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .hotels-client .key-visual .inner h1 {
    font-size: 32px;
  }
  .hotels-client .bg-white {
    padding: 80px 16px;
  }
  .hotels-client .flow .flow-wrap {
    height: 280px;
  }
  .hotels-client .flow .flow-wrap .flow-content {
    padding-left: 16px;
  }
  .hotels-client .flow .flow-wrap .flow-content:last-of-type {
    padding-right: 16px;
  }
  .hotels-client .flow .flow-wrap .flow-content img {
    height: 100%;
  }
}

@media screen and (max-width: 767px) {
  .hotels-client .key-visual {
    height: 520px;
    background: url(/stcontents/img/sub-page/hotels/cliten/bg-top-sp.png) no-repeat left top, url(/stcontents/img/sub-page/hotels/cliten/bg-bottom-sp.png) no-repeat right bottom;
  }
  .hotels-client .key-visual .inner {
    position: absolute;
    padding: 0 16px;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    text-align: center;
  }
  .hotels-client .key-visual .inner h1 {
    font-size: 26px;
  }
  .hotels-client .bg-white {
    padding: 40px 16px 80px 16px;
    margin-bottom: 0;
    overflow: hidden;
  }
  .hotels-client .about,
  .hotels-client .merit,
  .hotels-client .flow {
    margin-bottom: 80px;
  }
  .hotels-client .about h1,
  .hotels-client .merit h1,
  .hotels-client .flow h1 {
    text-align: center;
  }
  .hotels-client .about h2,
  .hotels-client .merit h2,
  .hotels-client .flow h2 {
    font-size: 20px;
  }
  .hotels-client .about .border-red,
  .hotels-client .merit .border-red,
  .hotels-client .flow .border-red {
    width: 40px;
    margin: 8px auto 32px;
  }
  .hotels-client .about {
    text-align: left;
  }
  .hotels-client .merit p {
    text-align: left;
    font-size: 14px;
  }
  .hotels-client .merit h2 {
    margin-bottom: 16px;
  }
  .hotels-client .merit .branding {
    height: 200px;
    margin-bottom: 32px;
  }
  .hotels-client .merit .branding .circle {
    position: absolute;
    width: 189px;
    right: -40px;
  }
  .hotels-client .merit .reach {
    height: 250px;
    margin-bottom: 32px;
  }
  .hotels-client .merit .reach .circle {
    position: absolute;
    width: 234px;
    left: -53px;
  }
  .hotels-client .merit .reach .text {
    top: 50px;
    left: 0;
  }
  .hotels-client .merit .promotion {
    height: 240px;
  }
  .hotels-client .merit .promotion .circle {
    position: absolute;
    width: 147px;
    right: -30px;
  }
  .hotels-client .merit .promotion .text {
    right: 0;
  }
  .hotels-client .flow .flow-wrap {
    display: block;
  }
  .hotels-client .flow .flow-wrap .flow-content {
    padding: 24px 0;
  }
  .hotels-client .flow .flow-wrap .flow-content p:nth-child(2) {
    font-size: 16px;
  }
  .hotels-client .flow .flow-wrap .flow-content p:last-child {
    font-size: 14px;
  }
  .hotels-client .flow .flow-wrap .flow-content:last-of-type {
    padding: 24px 0;
  }
  .hotels-client .flow img {
    width: 100%;
  }
  .hotels-client .bread-crumbs a {
    color: #0F0A64;
  }
}

.hotels-company {
  /*pc*/
  /*sp*/
}

.hotels-company main {
  background-color: #f2f2f0;
}

.hotels-company main h1 {
  font-size: 2.6rem;
}

.hotels-company .table-basic-border-none {
  border: none;
}

.hotels-company .table-basic-border-none th, .hotels-company .table-basic-border-none td {
  background: none;
  border: none;
}

.hotels-company .table-basic-border-none th {
  vertical-align: top;
  padding-left: 0;
}

.hotels-company .table-basic-border-none a {
  color: #555555;
  text-decoration: underline;
}

.hotels-company .table-basic-border-none a:hover {
  text-decoration: none;
}

.hotels-company .table-basic-border-none dt {
  float: left;
}
.hotels-company main .table-basic-border-none .sub-title {
  font-size: 1.6rem;
  font-weight: bold;
  white-space: nowrap;
}
.hotels-company .table-basic-border-none td {
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .hotels-company .contents {
    padding-bottom: 120px;
    max-width: 800px;
  }
  .hotels-company .contents .table-basic-border-none dt {
    width: 128px;
  }
  .hotels-company main .table-basic-border-none td span {
    font-size: 1.2rem;
    vertical-align: top;
  }
  .hotels-company .contents .main-title {
    padding-top: 14px;
    padding-bottom: 20px;
  }
  .hotels-company .contents .google-map {
    width: 480px;
  }
  .hotels-company main a {
    color: #555555;
    text-decoration: underline;
  }
  .hotels-company main a:hover {
    text-decoration: none;
  }
}

@media screen and (max-width: 767px) {
  .hotels-company .contents {
    padding-top: 24px;
  }
  .hotels-company .contents .main-title {
    margin-bottom: 30px;
    padding-top: 10px;
    font-size: 2.6rem;
    font-weight: bold;
  }
  .hotels-company .contents .table-basic-border-none tr {
    display: block;
    margin-bottom: 16px;
  }
  .hotels-company .contents .table-basic-border-none th {
    margin-bottom: 10px;
    padding: 0;
    line-height: 1.6;
  }
  .hotels-company .table-basic-border-none td {
    padding: 0;
    margin-bottom: 30px;
  }
  .hotels-company main .table-basic-border-none td span {
    font-size: 1rem;
  }
  .hotels-company .contents .table-basic-border-none dt {
    width: 138px;
  }
  .hotels-company .contents .google-map {
    width: 100%;
  }
  .hotels-company main a {
    color: #555555;
    text-decoration: underline;
  }
  .hotels-company main a:hover {
    text-decoration: none;
  }
}

.hotels-guide {
  /*pc*/
  /*sp*/
}

.hotels-guide main {
  background-color: #f2f2f0;
}

.hotels-guide main a {
  color: #555555;
  text-decoration: underline;
}

.hotels-guide main a:hover {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .hotels-guide main {
    padding-bottom: 120px;
  }
  .hotels-guide main h1, .hotels-guide main h2 {
    font-weight: normal;
  }
  .hotels-guide main h2 {
    font-size: 1.4rem;
  }
  .hotels-guide main .main-title {
    font-size: 2.6rem;
    margin-bottom: 20px;
    padding-top: 30px;
  }
  .hotels-guide main .title {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 30px 0 20px;
  }
  .hotels-guide main p {
    margin-bottom: 20px;
    line-height: 1.8;
    text-align: justify;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .hotels-guide main .wrap {
    padding-bottom: 40px;
  }
  .hotels-guide main h2 {
    font-size: 1.2rem;
  }
  .hotels-guide main .main-title {
    font-size: 2.6rem;
    margin-bottom: 30px;
    padding-bottom: 20px;
    padding-top: 30px;
    font-weight: bold;
    line-height: 1;
  }
  .hotels-guide main .title {
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .hotels-guide main p {
    margin-bottom: 20px;
    line-height: 1.6;
    font-size: 1.6rem;
  }
}

.newsletter {
  /*pc*/
  /*sp*/
}

.newsletter main .contents {
  max-width: 800px;
}

.newsletter main .example-list li {
  padding: 16px;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
}

.newsletter main .box {
  padding: 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}

.newsletter main h4 {
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .newsletter main a {
    color: #555555;
    text-decoration: underline;
  }
  .newsletter main a:hover {
    text-decoration: none;
  }
  .newsletter main .example-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .newsletter main .example-list li {
    width: 49%;
  }
}

@media screen and (max-width: 767px) {
  .newsletter main a {
    color: #333333;
    text-decoration: none;
  }
  .newsletter main a:hover {
    text-decoration: underline;
  }
  .newsletter main .main-title {
    margin-bottom: 30px;
    padding-bottom: 20px;
    padding-top: 30px;
    border-bottom: 2px solid #000;
    font-weight: bold;
    line-height: 1;
  }
}

.hotels-partner {
  /*pc*/
  /*sp*/
}

.hotels-partner main {
  background-color: #f2f2f0;
}

.hotels-partner .vidual {
  height: 400px;
  background: url(/stcontents/img/sub-page/hotels/partner/bg-main-partner.jpg) no-repeat center center;
  background-size: cover;
}

.hotels-partner .vidual .wrap {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotels-partner .vidual .area {
  background-color: #fff;
  width: 180px;
  height: 180px;
  display: table-cell;
  vertical-align: middle !important;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), 0 1px 5px rgba(0, 0, 0, 0.2), 0 0 0 5px rgba(200, 200, 200, 0.4);
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), 0 1px 5px rgba(0, 0, 0, 0.2), 0 0 0 5px rgba(200, 200, 200, 0.4);
  opacity: .9;
  text-align: center;
}

.hotels-partner .block-main {
  margin-bottom: 60px;
  padding-bottom: 60px;
  border-bottom: 1px solid #ccc;
}

.hotels-partner .introduction {
  text-align: center;
}

.hotels-partner .introduction .title {
  margin-bottom: 60px;
}

.hotels-partner .introduction .img {
  margin-bottom: 40px;
}

.hotels-partner .introduction .img img {
  max-width: 100%;
  height: auto;
}

.hotels-partner .merit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}

.hotels-partner .merit .title {
  margin-bottom: 60px;
  width: 100%;
}

.hotels-partner .merit ul {
  max-width: 780px;
}

.hotels-partner .merit ul li {
  margin-bottom: 20px;
  padding: 0 0 0 30px;
  background: url(/stcontents/img/sub-page/hotels/partner/affiliate_03.jpg) no-repeat 0 50%;
  text-align: left;
}

.hotels-partner .merit .block-footer {
  margin: 0 auto;
  width: 100%;
  max-width: 780px;
  text-align: left;
}

.hotels-partner .application {
  text-align: center;
}

.hotels-partner .application .title {
  margin-bottom: 60px;
}

.hotels-partner .application a img {
  max-width: 100%;
  height: auto;
}

.hotels-partner .application .txt {
  margin-top: 30px;
}

.hotels-partner .faq-area {
  margin-bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  text-align: center;
}

.hotels-partner .faq-area .title {
  margin-bottom: 60px;
  width: 100%;
}

.hotels-partner .faq-area dl {
  max-width: 780px;
}

.hotels-partner .faq-area dl dt, .hotels-partner .faq-area dl dd {
  text-align: left;
}

.hotels-partner .faq-area dl dt {
  margin-bottom: 10px;
}

.hotels-partner .faq-area dl dd {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .hotels-partner main {
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 767px) {
  .hotels-partner main {
    padding-top: 20px;
  }
  .hotels-partner main .vidual {
    margin-bottom: 60px;
  }
  .hotels-partner main .sp-title-img {
    padding-bottom: 30px;
  }
  .hotels-partner main .sp-title-img img {
    width: 100%;
    height: auto;
  }
}

.hotels-privacy {
  /*pc*/
  /*sp*/
}

.hotels-privacy main {
  background-color: #f2f2f0;
}

.hotels-privacy main a {
  color: #555555;
  text-decoration: underline;
}

.hotels-privacy main a:hover {
  text-decoration: none;
}

.hotels-privacy main h2 {
  line-height: 1.8;
  margin: 32px 0 24px;
}

@media screen and (min-width: 768px) {
  .hotels-privacy main {
    padding-bottom: 80px;
  }
  .hotels-privacy main .contents {
    max-width: 800px;
  }
  .hotels-privacy main h1, .hotels-privacy main h2 {
    font-weight: normal;
  }
  .hotels-privacy main h1 {
    font-size: 1.6rem;
  }
  .hotels-privacy main h2 {
    font-size: 1.6rem;
    font-weight: bold;
  }
  .hotels-privacy main .main-title {
    font-size: 2.6rem;
    margin-bottom: 20px;
    padding-top: 30px;
  }
  .hotels-privacy main p {
    font-size: 1.6rem;
    margin-bottom: 20px;
    line-height: 1.8;
  }
}

@media screen and (max-width: 767px) {
  .hotels-privacy main h1 {
    font-weight: normal;
  }
  .hotels-privacy main h1 {
    font-size: 1.6rem;
  }
  .hotels-privacy main h2 {
    font-size: 1.6rem;
  }
  .hotels-privacy main .main-title {
    font-size: 2.6rem;
    margin-bottom: 30px;
    padding-bottom: 20px;
    padding-top: 30px;
    line-height: 1;
  }
  .hotels-privacy main p {
    font-size: 1.6rem;
    margin-bottom: 20px;
    line-height: 1.6;
  }
}

.basic-table {
  margin: 5px 0;
}

.basic-table td {
  vertical-align: top;
  padding: 8px;
  border: 1px solid #888;
}

.review-guide {
  /*pc*/
  /*sp*/
}

.review-guide main {
  background-color: #f2f2f0;
}

.review-guide main a {
  color: #555555;
  text-decoration: underline;
}

.review-guide main a:hover {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .review-guide main {
    padding-bottom: 80px;
  }
  .review-guide main .contents {
    max-width: 800px;
  }
  .review-guide main h1, .review-guide main h2 {
    font-weight: normal;
  }
  .review-guide main h1 {
    font-size: 1.6rem;
  }
  .review-guide main h2 {
    font-size: 1.4rem;
  }
  .review-guide main .main-title {
    margin-bottom: 20px;
    padding-top: 30px;
  }
  .review-guide main p {
    margin-bottom: 20px;
    line-height: 1.8;
    text-align: justify;
  }
}

@media screen and (max-width: 767px) {
  .review-guide main h1 {
    font-weight: normal;
  }
  .review-guide main h1 {
    font-size: 1.6rem;
  }
  .review-guide main h2 {
    font-size: 1.4rem;
  }
  .review-guide main .main-title {
    margin-bottom: 30px;
    padding-bottom: 20px;
    padding-top: 30px;
    border-bottom: 2px solid #000;
    line-height: 1;
  }
  .review-guide main .title {
    margin-bottom: 10px;
  }
  .review-guide main p {
    margin-bottom: 20px;
    line-height: 1.6;
  }
}

.hotels-user_info {
  /*pc*/
  /*sp*/
}

.hotels-user_info main {
  background-color: #f2f2f0;
}

.hotels-user_info main p {
  font-size: 1.6rem;
  margin-bottom: 20px;
}

.hotels-user_info main h2 {
  font-size: 1.4rem;
}

.hotels-user_info main h1 {
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .hotels-user_info main {
    padding-bottom: 100px;
  }
  .hotels-user_info main a {
    color: #555555;
    text-decoration: underline;
  }
  .hotels-user_info main a:hover {
    text-decoration: none;
  }
  .hotels-user_info main .contents {
    max-width: 800px;
  }
  .hotels-user_info main .main-title {
    font-size: 2.6rem;
    margin-bottom: 20px;
    padding-top: 30px;
  }
  .hotels-user_info main .sub-title {
    font-size: 1.6rem;
    margin: 30px 0 20px;
    font-weight: bold;
  }
}

@media screen and (max-width: 767px) {
  .hotels-user_info main .wrap {
    padding-bottom: 24px;
  }
  .hotels-user_info main .wrap h2 {
    font-weight: bold;
  }
  .hotels-user_info main .wrap a {
    color: #333333;
    text-decoration: none;
  }
  .hotels-user_info main .wrap a:hover {
    text-decoration: underline;
  }
  .hotels-user_info main .wrap .main-title {
    font-size: 2.6rem;
    margin-bottom: 30px;
    padding-bottom: 20px;
    padding-top: 30px;
    font-weight: bold;
    line-height: 1;
  }
  .hotels-user_info main .wrap .title {
    font-weight: bold;
    font-size: 1.6rem;
  }
}

.lp-app {
  /*pc*/
  /*sp*/
}

.lp-app .key-visual {
  height: auto;
  background: url(/stcontents/img/sub-page/lp/app/bg-main.jpg) no-repeat top center;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .lp-app .key-visual {
    height: 600px;
    padding-top: 40px;
    padding-bottom: 30px;
  }
  .lp-app .key-visual .wrap {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .lp-app .key-visual .wrap .title {
    width: calc(100% - 457px);
    text-shadow: 1px 1px 1px #000;
  }
  .lp-app .key-visual .wrap .title .sub-title {
    margin-bottom: 16px;
    font-size: 2.4rem;
  }
  .lp-app .key-visual .wrap .title .description {
    font-size: 1.6rem;
    margin-bottom: 0;
    text-align: left;
    line-height: 1.8;
  }
  .lp-app .key-visual .wrap .title .qr-list {
    padding-top: 24px;
  }
  .lp-app .key-visual .wrap .title .qr-list li {
    float: left;
    text-align: center;
  }
  .lp-app .key-visual .wrap .title .qr-list li img.btn-app {
    margin-right: 8px;
    width: auto;
    height: 45px;
    vertical-align: middle;
  }
  .lp-app .key-visual .wrap .title .qr-list li img.qr {
    width: auto;
    max-width: 100%;
    height: 45px;
    vertical-align: middle;
  }
  .lp-app .key-visual .wrap .title .qr-list li a:hover img {
    background-color: transparent;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .lp-app .key-visual .wrap .title .qr-list li:nth-of-type(1) {
    margin-right: 28px;
  }
  .lp-app .key-visual .wrap .device {
    margin-right: 92px;
  }
  .lp-app .key-visual .wrap .device img {
    width: 365px;
    max-width: 100%;
    vertical-align: middle;
  }
  .lp-app .crumbs {
    padding-top: 32px;
    padding-bottom: 60px;
    background-color: #F2F2F0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .lp-app .key-visual .wrap .device {
    margin-right: 32px;
  }
  .lp-app .key-visual .wrap .device img {
    width: 260px;
  }
  .lp-app .key-visual .wrap .title {
    width: calc(100% - 292px);
  }
  .lp-app .key-visual .wrap .title .sub-title {
    font-size: 1.6rem;
  }
  .lp-app .key-visual .wrap .title .description {
    font-size: 1.4rem;
  }
  .lp-app .key-visual .font-xxxxx-large {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .lp-app .key-visual {
    padding-top: 70px;
    padding-bottom: 20px;
  }
  .lp-app .key-visual .title {
    text-align: center;
  }
  .lp-app .key-visual .title .sub-title {
    margin-top: 10px;
    margin-bottom: 16px;
  }
  .lp-app .key-visual .title .description {
    margin-bottom: 24px;
    font-size: 1rem;
  }
  .lp-app .key-visual .title .font-xxxxx-large {
    font-size: 16px;
  }
  .lp-app .key-visual .device {
    text-align: center;
    margin-bottom: 0;
  }
  .lp-app .key-visual .device img {
    width: 47%;
    height: auto;
  }
  .lp-app .key-visual ul.btns {
    padding-top: 16px;
    text-align: center;
  }
  .lp-app .key-visual ul.btns li {
    margin: 0 5px;
    display: inline;
  }
  .lp-app .key-visual ul.btns li a:hover img {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .lp-app .key-visual ul.btns li a img {
    width: 35%;
  }
  .lp-app .crumbs {
    padding-top: 32px;
    padding-bottom: 20px;
    background-color: #F2F2F0;
  }
  .lp-app .crumbs .bread-crumbs {
    padding-top: 0px;
  }
}

.lp-grade {
  /*sp*/
}

.lp-grade .bg-blue {
  background: #0F0A64;
}

.lp-grade .bg-white {
  padding: 0;
  overflow: hidden;
}

.lp-grade .key-visual {
  height: 460px;
  background: url(/stcontents/img/sub-page/t/bg-top.png) no-repeat left top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/sub-page/t/bg-bottom.png) no-repeat right bottom;
  background-color: #0F0A64;
}

.lp-grade .key-visual .inner {
  position: absolute;
  width: 94%;
  top: 58%;
  left: 3%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}

.lp-grade .key-visual .inner .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 32px auto 24px;
}

.lp-grade .key-visual .inner img {
  width: 400px;
}

.lp-grade .key-visual .inner h1 {
  font-weight: 300;
}

.lp-grade .introduction {
  padding-top: 80px;
  margin-bottom: 0;
}

.lp-grade .introduction .font-large {
  line-height: 4rem;
}

.lp-grade .introduction-img {
  height: 500px;
  background: url(/stcontents/img/sub-page/lp/grade/KV.jpg) no-repeat center bottom;
  background-size: cover;
  margin-bottom: 160px;
}

.lp-grade .introduction,
.lp-grade .grade,
.lp-grade .hotel-type {
  font-weight: 300;
  padding: 0 40px;
}

.lp-grade .introduction:last-child,
.lp-grade .grade:last-child,
.lp-grade .hotel-type:last-child {
  margin-bottom: 128px;
}

.lp-grade .introduction h2,
.lp-grade .grade h2,
.lp-grade .hotel-type h2 {
  font-weight: 300;
}

.lp-grade .introduction .border-red,
.lp-grade .grade .border-red,
.lp-grade .hotel-type .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 32px;
}

.lp-grade .grade {
  margin-bottom: 160px;
}

.lp-grade .grade .grade-content .graph-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 80px auto;
  max-width: 868px;
}

.lp-grade .grade .grade-content .graph-box .grade-map img {
  width: auto;
  height: 270px;
  margin-bottom: 24px;
}

.lp-grade .grade .grade-content .graph-box .grade-map p {
  color: #0F0A64;
}

.lp-grade .grade .grade-list .grade-box {
  width: 100%;
  height: 300px;
  margin-bottom: 24px;
  text-align: left;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.lp-grade .grade .grade-list .grade-box::before {
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 150px;
}

.lp-grade .grade .grade-list .grade-box.museum {
  background: url(/stcontents/img/index/bg-grade-hotel-1.jpg) no-repeat center center;
  background-size: cover;
}

.lp-grade .grade .grade-list .grade-box.star-3 {
  background: url(/stcontents/img/index/bg-grade-hotel-2.jpg) no-repeat center center;
  background-size: cover;
}

.lp-grade .grade .grade-list .grade-box.star-2 {
  background: url(/stcontents/img/index/bg-grade-hotel-3.jpg) no-repeat center center;
  background-size: cover;
}

.lp-grade .grade .grade-list .grade-box.star-1 {
  background: url(/stcontents/img/index/bg-grade-hotel-4.jpg) no-repeat center 63%;
  background-size: cover;
}

.lp-grade .grade .grade-list .grade-box.casual {
  background: url(/stcontents/img/index/bg-grade-hotel-5.jpg) no-repeat center center;
  background-size: cover;
}

.lp-grade .grade .grade-list .grade-box .text {
  position: absolute;
  left: 38px;
  bottom: 32px;
  text-align: left;
  color: #fff;
  text-shadow: 1px 1px 1px #000;
  font-size: 16px;
}

.lp-grade .grade .grade-list .grade-box .text p {
  margin-bottom: 0;
}

.lp-grade .hotel-type {
  margin-bottom: 128px;
}

.lp-grade .hotel-type-list .bg-gray {
  background-color: #fff;
}

.lp-grade .hotel-type-list ul {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  margin-top: 56px;
}

.lp-grade .hotel-type-list ul li {
  width: 32%;
  height: 180px;
  position: relative;
  padding: 16px;
  margin-bottom: 32px;
  border-radius: 8px;
  overflow: hidden;
}

.lp-grade .hotel-type-list ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 8px;
}

.lp-grade .hotel-type-list ul figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.lp-grade .hotel-type-list ul figure::before {
  position: absolute;
  width: calc(100% - 32px);
  height: 80px;
  left: 16px;
  bottom: 0;
  content: '';
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-filter: blur(60px);
          filter: blur(60px);
}

.lp-grade .hotel-type-list ul figcaption {
  z-index: 2;
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  color: #fff;
  text-align: left;
}

.lp-grade .hotel-type-list ul figcaption span {
  margin-bottom: 4px;
  background: rgba(0, 0, 0, 0.1);
}

.lp-grade .hotel-type-list ul figcaption p {
  margin-bottom: 0;
}

.lp-grade .bread-crumbs {
  margin-top: 160px;
}

.lp-grade .bread-crumbs a {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .lp-grade .key-visual {
    background: url(/stcontents/img/sub-page/t/bg-top.png) no-repeat left top, url(/stcontents/img/sub-page/t/bg-bottom.png) no-repeat right bottom;
    background-size: contain;
    height: 600px;
  }
  .lp-grade .key-visual .inner {
    top: 50%;
  }
  .lp-grade .key-visual .inner img {
    max-width: 280px;
  }
  .lp-grade .key-visual .inner .border-red {
    width: 50px;
  }
  .lp-grade .introduction,
  .lp-grade .grade,
  .lp-grade .hotel-type {
    margin-bottom: 80px;
  }
  .lp-grade .introduction .font-large,
  .lp-grade .grade .font-large,
  .lp-grade .hotel-type .font-large {
    text-align: left;
  }
  .lp-grade .introduction .border-red,
  .lp-grade .grade .border-red,
  .lp-grade .hotel-type .border-red {
    width: 50px;
  }
  .lp-grade .introduction {
    padding: 16px;
  }
  .lp-grade .introduction-img {
    overflow: hidden;
    margin-bottom: 80px;
  }
  .lp-grade .introduction-img img {
    width: auto;
    height: 85px;
  }
  .lp-grade .grade {
    padding: 0 16px;
  }
  .lp-grade .grade .grade-content .graph-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    width: 100%;
    margin: 48px auto;
  }
  .lp-grade .grade .grade-content .graph-box .grade-map p {
    text-align: center;
  }
  .lp-grade .grade .grade-content .graph-box .grade-map img {
    width: 90%;
    height: 90%;
  }
  .lp-grade .grade .grade-content .graph-box .grade-map:first-child {
    margin-bottom: 80px;
  }
  .lp-grade .grade .grade-list {
    width: 100vw;
    background-color: #f5f5f5;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 32px 16px;
  }
  .lp-grade .grade .grade-list .grade-box {
    display: block;
  }
  .lp-grade .grade .grade-list .grade-box .photo {
    width: 100%;
    height: 160px;
    border-radius: 8px 8px 0 0;
  }
  .lp-grade .grade .grade-list .grade-box .photo img {
    width: 100%;
  }
  .lp-grade .grade .grade-list .grade-box .text {
    width: calc(100% - 48px);
    font-size: 14px;
    left: 24px;
    bottom: 24px;
  }
  .lp-grade .grade .grade-list .grade-box .text img {
    height: 20px;
  }
  .lp-grade .bg-white {
    padding: 40px 0 16px;
  }
  .lp-grade .hotel-type {
    padding: 0 16px;
  }
  .lp-grade .hotel-type .bg-gray {
    background-color: #f5f5f5 !important;
    width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 24px 16px 8px 16px;
    margin-top: 40px;
  }
  .lp-grade .hotel-type-list .hotel-type-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .lp-grade .hotel-type-list ul {
    width: calc(100% + 32px);
    margin: 0 -16px;
    padding: 0 16px;
    overflow: scroll;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .lp-grade .hotel-type-list ul::-webkit-scrollbar {
    width: 0;
  }
  .lp-grade .hotel-type-list ul li {
    min-width: 226px;
    height: 204px;
    padding: 0;
    margin-right: 16px;
    margin-bottom: 0;
    position: relative;
  }
  .lp-grade .hotel-type-list ul li:last-child {
    margin-right: 0;
  }
  .lp-grade .hotel-type-list ul li img {
    top: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    height: 120px;
  }
  .lp-grade .hotel-type-list ul figure::before {
    content: '';
    background: rgba(0, 0, 0, 0.3);
    width: 50%;
    position: absolute;
    top: 0;
    left: 0;
    height: 53px;
    -webkit-filter: blur(30px);
            filter: blur(30px);
  }
  .lp-grade .hotel-type-list ul figure span {
    position: absolute;
    top: 16px;
    left: 16px;
    font-weight: 500;
    z-index: 1;
  }
  .lp-grade .hotel-type-list ul figcaption {
    width: 100%;
    left: 0;
    right: 0;
    margin-top: 8px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    text-shadow: none;
    color: #333;
    bottom: 0;
  }
  .lp-grade .hotel-type-list ul figcaption p {
    font-size: 14px;
  }
  .lp-grade .bread-crumbs {
    padding: 0 16px;
    margin-top: 0;
  }
  .lp-grade .bread-crumbs a {
    color: #0F0A64;
  }
  .lp-grade .btn-relux {
    margin: 0 16px;
    width: calc(100% - 32px);
  }
}

.lp-renewal .bg-blue {
  background: #0F0A64;
}

.lp-renewal .bg-white {
  padding: 80px;
  overflow: hidden;
}

.lp-renewal .key-visual {
  height: 600px;
  background: url(/stcontents/img/sub-page/lp/renewal/bg-top-pc.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/sub-page/lp/renewal/bg-bottom-pc.png) no-repeat left bottom;
  background-color: #0F0A64;
}

.lp-renewal .key-visual .inner {
  position: absolute;
  width: 94%;
  top: 58%;
  left: 3%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}

.lp-renewal .key-visual .inner .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 32px auto 24px;
}

.lp-renewal .key-visual .inner img {
  width: 400px;
}

.lp-renewal .key-visual .inner h1 {
  font-size: 4rem;
  font-weight: bold;
  font-weight: 700;
}

.lp-renewal .img-pc {
  width: 100%;
  position: relative;
}

.lp-renewal .description01 {
  display: block;
  position: relative;
  margin-bottom: 160px;
}

.lp-renewal .description01 .description {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.lp-renewal .description01 .description .number {
  margin-right: 32px;
}

.lp-renewal .device-pc {
  width: 100%;
  position: relative;
  -webkit-filter: drop-shadow(24px 24px 30px rgba(0, 0, 0, 0.1));
          filter: drop-shadow(24px 24px 30px rgba(0, 0, 0, 0.1));
  margin-bottom: 40px;
}

.lp-renewal .device-sp {
  width: 315px;
  position: relative;
  -webkit-filter: drop-shadow(24px 24px 30px rgba(0, 0, 0, 0.1));
          filter: drop-shadow(24px 24px 30px rgba(0, 0, 0, 0.1));
}

.lp-renewal .description02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 160px;
}

.lp-renewal .description02 .description {
  display: block;
  text-align: left;
}

.lp-renewal .description02 .description .number {
  margin: 0;
}

.lp-renewal .description02:first-child {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-renewal .description-sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.lp-renewal .description-sub .number {
  margin-right: 32px;
}

.lp-renewal .color-blue-2 {
  font-weight: 700;
  margin-bottom: 0;
}

.lp-renewal .bread-crumbs {
  margin-top: 160px;
}

.lp-renewal .bread-crumbs a {
  color: #fff;
}

.lp-renewal .circle01 {
  position: absolute;
  top: -169px;
  right: -120px;
}

.lp-renewal .circle02 {
  position: absolute;
  top: -92px;
  left: -26px;
}

.lp-renewal .circle03 {
  position: absolute;
  top: -120px;
  right: 10px;
}

.lp-renewal .circle04 {
  position: absolute;
  top: -69px;
  right: 180px;
}

.lp-renewal .device {
  position: relative;
}

.lp-renewal .default-link:hover {
  text-decoration: none;
  color: #0066cc;
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .lp-renewal .app-banner {
    margin-top: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .lp-renewal .key-visual {
    background: url(/stcontents/img/sub-page/lp/renewal/bg-top-sp.png) no-repeat right top, url(/stcontents/img/sub-page/lp/renewal/bg-bottom-sp.png) no-repeat left bottom;
    background-size: contain;
    height: 600px;
    padding: 0 16px;
  }
  .lp-renewal .key-visual .inner {
    top: 50%;
  }
  .lp-renewal .key-visual .inner img {
    max-width: 280px;
  }
  .lp-renewal .key-visual .inner .border-red {
    width: 48px;
  }
  .lp-renewal .bg-white {
    width: 100%;
    padding: 40px 16px;
  }
  .lp-renewal .device-sp {
    margin-bottom: 40px;
  }
  .lp-renewal .description01 {
    margin-bottom: 80px;
  }
  .lp-renewal .description01 .description .number {
    margin-right: 16px;
    width: 50px;
  }
  .lp-renewal .description02 {
    display: block;
    margin-bottom: 80px;
  }
  .lp-renewal .description02 .description {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .lp-renewal .description02 .description .number {
    margin-right: 16px;
    width: 50px;
  }
  .lp-renewal .description-sub .number {
    width: 50px;
  }
  .lp-renewal .circle01 {
    top: -20px;
  }
  .lp-renewal .circle02 {
    width: 332px;
    top: -52px;
    left: -80px;
  }
  .lp-renewal .circle03,
  .lp-renewal .circle04 {
    display: none;
  }
  .lp-renewal .bread-crumbs {
    padding: 0 16px;
    margin-top: 0;
  }
  .lp-renewal .bread-crumbs a {
    color: #0F0A64;
  }
  .lp-renewal .btn-relux {
    margin: 0 16px;
    width: calc(100% - 32px);
  }
}

.lp-member-status {
  /* SP */
}

.lp-member-status .share-btn li {
  margin: 0 5px 0;
  display: inline-block;
  vertical-align: middle;
}

.lp-member-status .share-btn li:last-child {
  margin-right: 0;
}

.lp-member-status .share-btn .facebook i {
  width: 36px;
  height: 36px;
  display: inline-block;
  background-color: #1877f2;
  border-radius: 75%;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/sub-page/lp/au-smartpass/icon-facebook.png);
}

.lp-member-status .share-btn .twitter i {
  width: 36px;
  height: 36px;
  background-color: #00acec;
  border-radius: 75%;
  background-size: 100%;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/sub-page/lp/au-smartpass/icon-twitter.png);
  display: inline-block;
  background-repeat: no-repeat;
}

.lp-member-status .share-btn .line i {
  width: 36px;
  height: 36px;
  background-color: #01c301;
  border-radius: 100%;
  background-size: 100%;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/sub-page/lp/au-smartpass/icon-line.png);
  display: inline-block;
  background-repeat: no-repeat;
}

.lp-member-status .key-visual {
  background: url(/stcontents/img/sub-page/lp/member-status/keyvisual.jpg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  color: #fff;
}

.lp-member-status .key-visual .vis-inner {
  position: absolute;
}

.lp-member-status .key-visual .vis-inner .header-subtitle {
  margin-top: 16px;
}

.lp-member-status .key-visual .vis-inner ul {
  margin-top: 24px;
}

.lp-member-status .status .bg-green {
  background-color: #61803a !important;
}

.lp-member-status .status .bg-gold {
  background-color: #a08a42 !important;
}

.lp-member-status .status .bg-platinum {
  background-color: #667a81 !important;
}

.lp-member-status .status .bg-diamond {
  background-color: #07061f !important;
}

.lp-member-status .status-check {
  background-color: #0f0a64;
  color: #fff;
  overflow: hidden;
}

.lp-member-status .status-check .check-btn {
  border-radius: 4px;
  line-height: 44px;
  display: block;
  text-align: center;
  color: #0f0a64 !important;
  height: 44px;
  background-color: #fff;
  text-decoration: none !important;
}

.lp-member-status .status-feature {
  text-align: center;
}

.lp-member-status .status-judgement {
  margin-top: 80px;
  padding: 80px 16px;
  background-image: url(/stcontents/img/sub-page/lp/member-status/bg.jpg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  /*background-attachment: fixed;*/
}

.lp-member-status .status-judgement .judgement-inner {
  padding: 80px;
  background-color: #fff;
  border-radius: 6px;
}

.lp-member-status .status-judgement .judgement-inner .judgement-title {
  text-align: center;
}

.lp-member-status .status-judgement .judgement-inner .title-sub {
  margin-top: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #efefef;
}

.lp-member-status .status-judgement .judgement-inner .flex .txt-box {
  margin-top: 0px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.lp-member-status .status-judgement .judgement-inner .flex .txt-box .img .img-title {
  margin-top: 24px;
  margin-bottom: 0;
  text-align: center;
  background-color: #ccc;
  height: 32px;
  line-height: 32px;
}

.lp-member-status .status-judgement .judgement-inner .flex .txt-box .img img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) {
  .lp-member-status .key-visual {
    height: 600px;
    background: url(/stcontents/img/sub-page/lp/member-status/keyvisual.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    color: #fff;
  }
  .lp-member-status .key-visual .vis-inner {
    max-width: 1146px;
    width: 100%;
    top: 40%;
    left: 50%;
    text-align: left;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .lp-member-status .key-visual .vis-inner .header-subtitle {
    margin-top: 16px;
  }
  .lp-member-status .key-visual .vis-inner ul {
    margin-top: 24px;
  }
  .lp-member-status .status {
    margin: 80px;
  }
  .lp-member-status .status .title {
    text-align: center;
  }
  .lp-member-status .status ul {
    margin-top: 40px;
    line-height: 1.5;
  }
  .lp-member-status .status ul .for-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .lp-member-status .status ul .item-box-center {
    margin-top: 8px;
    margin-left: 8px;
    width: calc((100% - 208px - 32px) / 4);
    height: 88px;
    background-color: #efefef;
    border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .lp-member-status .status ul .item-box-center.left-title {
    margin-left: 0;
    width: 208px;
    text-align: center;
  }
  .lp-member-status .status ul .top-title-box {
    color: #fff;
  }
  .lp-member-status .status ul .line-2 .item-box-center {
    background-color: #ccc;
  }
  .lp-member-status .status .attention {
    margin-top: 24px;
  }
  .lp-member-status .status-check {
    margin-top: 80px;
  }
  .lp-member-status .status-check .check-wrap {
    margin: 80px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .lp-member-status .status-check .check-wrap .left {
    padding-right: 116px;
  }
  .lp-member-status .status-check .check-wrap .left h2 {
    font-size: 2.8rem;
  }
  .lp-member-status .status-check .check-wrap .left .txt {
    margin: 0;
  }
  .lp-member-status .status-feature {
    margin-top: 80px;
  }
  .lp-member-status .status-feature .txt-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .lp-member-status .status-feature .txt-box p {
    margin-top: 48px;
    padding-left: 74px;
    width: calc((100% / 3) - 40px * 2);
    background: url(/stcontents/img/sub-page/lp/member-status/brand.jpg) 0 -2px no-repeat;
    background-size: 64px 64px;
    text-align: left;
  }
  .lp-member-status .status-judgement {
    margin-top: 80px;
    padding: 80px 16px;
  }
  .lp-member-status .status-judgement .judgement-inner {
    padding: 80px;
  }
  .lp-member-status .status-judgement .judgement-inner .title-sub {
    margin-top: 40px;
    padding-bottom: 40px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex {
    margin-top: 24px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .title {
    width: 144px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box {
    margin-top: 0px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box .img .img-title {
    margin-top: 24px;
    margin-bottom: 0;
    text-align: center;
    background-color: #ccc;
    height: 32px;
    line-height: 32px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box .img img {
    width: 100%;
    height: auto;
  }
  .lp-member-status .bread-crumbs {
    margin-top: 80px;
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 767px) {
  .lp-member-status .key-visual {
    height: 512px;
    background: url(/stcontents/img/sub-page/lp/member-status/keyvisual.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    color: #fff;
  }
  .lp-member-status .key-visual .vis-inner {
    padding: 0 16px 16px;
    bottom: 0;
  }
  .lp-member-status .key-visual .vis-inner .header-subtitle {
    margin-top: 16px;
  }
  .lp-member-status .key-visual .vis-inner ul {
    margin-top: 24px;
  }
  .lp-member-status .status {
    margin-top: 40px;
  }
  .lp-member-status .status .title {
    font-size: 1.8rem;
    text-align: center;
  }
  .lp-member-status .status ul.status-list {
    margin-top: 16px;
    line-height: 1.5;
  }
  .lp-member-status .status ul.status-list .jsc-accordion {
    margin-top: 16px;
    height: 44px;
    border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    color: #fff;
  }
  .lp-member-status .status ul.status-list .jsc-accordion::before {
    margin: auto;
    width: 7px;
    height: 7px;
    top: 0;
    right: 20px;
    bottom: 4px;
    bottom: 0;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    content: "";
    position: absolute;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .lp-member-status .status ul.status-list .jsc-accordion.active::before {
    margin: auto;
    width: 7px;
    height: 7px;
    top: 8px;
    right: 20px;
    bottom: 4px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    position: absolute;
    content: "";
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .lp-member-status .status ul.status-list .detail-box {
    display: none;
    margin: 8px 0 24px;
  }
  .lp-member-status .status ul.status-list .detail-box .detail-item {
    padding: 16px 0;
    border-bottom: 1px solid #ccc;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .lp-member-status .status ul.status-list .top-title-box {
    color: #fff;
  }
  .lp-member-status .status ul.status-list .line-2 .item-box-center {
    background-color: #ccc;
  }
  .lp-member-status .status .attention {
    margin-top: 32px;
  }
  .lp-member-status .status .attention p:nth-child(2) {
    margin-top: 4px;
  }
  .lp-member-status .status-check {
    margin-top: 40px;
  }
  .lp-member-status .status-check .left {
    margin-top: 32px;
  }
  .lp-member-status .status-check .left h2 {
    font-size: 1.8rem;
  }
  .lp-member-status .status-check .btn-default {
    margin: 32px 0;
  }
  .lp-member-status .status-feature {
    margin-top: 40px;
  }
  .lp-member-status .status-feature .txt-box {
    display: inline-block;
  }
  .lp-member-status .status-feature .txt-box p {
    margin-top: 32px;
    padding-left: 48px;
    background: url(/stcontents/img/sub-page/lp/member-status/brand.jpg) 0 1px no-repeat;
    background-size: 30px 30px;
    text-align: left;
  }
  .lp-member-status .status-judgement {
    margin-top: 80px;
    padding: 32px 0;
  }
  .lp-member-status .status-judgement .judgement-inner {
    padding: 32px 16px;
  }
  .lp-member-status .status-judgement .judgement-inner .title-sub {
    margin-top: 16px;
    padding-bottom: 16px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex {
    margin-top: 24px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box {
    margin-top: 0px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box .img .img-title {
    margin-top: 24px;
    margin-bottom: 0;
    text-align: center;
    background-color: #ccc;
    height: 32px;
    line-height: 32px;
  }
  .lp-member-status .status-judgement .judgement-inner .flex .txt-box .img img {
    width: 100%;
    height: auto;
  }
}

.lp-point {
  /*pc*/
  /*sp*/
}

.lp-point .sub-header-lp {
  background: url(/stcontents/img/sub-page/lp/point/bg-main.jpg) no-repeat center center;
  background-size: cover;
}

.lp-point .sub-header-lp h1 {
  text-align: center;
}

.lp-point .content .section .title {
  border-bottom: 1px solid #000000;
}

.lp-point .content .member .actions {
  margin-top: 15px;
}

.lp-point .content .change .point-list {
  width: 100%;
  display: table;
  margin-bottom: 25px;
  padding-bottom: 25px;
  background: url(/stcontents/img/sub-page/lp/point/line-dot2.gif) repeat-x center bottom;
}

.lp-point .content .change .point-list li {
  display: table-cell;
  width: 33%;
  text-align: center;
}

.lp-point .content .change .point-list li:nth-of-type(1) {
  background: url(/stcontents/img/sub-page/lp/point/line-dot.gif) repeat-y right top;
}

.lp-point .content .time .left {
  float: left;
  margin-bottom: 0;
}

.lp-point .content .time .left .flow {
  text-align: center;
}

.lp-point .content .time .left .flow .center {
  text-align: center;
}

.lp-point .content .time .left .flow .flow-box, .lp-point .content .time .left .flow .top, .lp-point .content .time .left .flow .bottom {
  height: 5px;
  display: block;
}

.lp-point .content .time .left .flow .flow-box {
  margin: 0 auto;
  height: auto;
  border: 0;
  text-align: left;
}

.lp-point .content .time .left .flow .flow-box-in .sub-title {
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid #000000;
}

.lp-point .content .time .left .flow img.yajirushi {
  width: 20px;
  margin: 10px 0;
}

.lp-point .content .notice dl.faq dt {
  margin-bottom: 10px;
}

.lp-point .content .notice dl.faq dd {
  margin-bottom: 40px;
  color: #666666;
}

.lp-point .content .contact {
  padding: 40px 60px;
  border: 1px dotted #CCCCCC;
}

.lp-point .content .contact p.txt {
  margin-bottom: 20px;
  text-align: center;
}

.lp-point .content .contact a {
  color: #333;
  text-decoration: underline;
}

.lp-point .content .contact a:hover {
  text-decoration: none;
}

.lp-point .social-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-point .social-btn > div:nth-child(1) {
  display: inline-block;
  width: 110px;
  margin-right: 15px;
}

@media screen and (min-width: 768px) {
  .lp-point .sub-header-lp {
    min-height: 460px;
  }
  .lp-point .sub-header-lp h1 {
    padding-top: 150px;
  }
  .lp-point .sub-header-lp h1 img {
    width: 559px;
  }
  .lp-point .content .section {
    margin-bottom: 80px;
  }
  .lp-point .content .section .title {
    margin-bottom: 25px;
    padding-bottom: 20px;
  }
  .lp-point .content .change .point-list li img {
    width: 230px;
    height: auto;
  }
  .lp-point .content .change .save .left {
    padding: 0 40px;
  }
  .lp-point .content .time {
    padding: 0 40px;
  }
  .lp-point .content .time .left {
    width: auto;
  }
  .lp-point .content .time .left .flow {
    text-align: center;
  }
  .lp-point .content .time .left .flow .center {
    text-align: center;
  }
  .lp-point .content .time .left .flow .flow-box, .lp-point .content .time .left .flow .top, .lp-point .content .time .left .flow .bottom {
    height: 5px;
    display: block;
  }
  .lp-point .content .time .left .flow .flow-box {
    margin: 0 auto;
    width: 310px;
    height: auto;
    border: 0;
    text-align: left;
  }
  .lp-point .content .time .left .flow .flow-box-in {
    padding: 5px 10px;
    background: url(/stcontents/img/sub-page/lp/point/flowbox-middle.gif) repeat-y;
  }
  .lp-point .content .contact {
    padding: 40px 60px;
  }
  .lp-point .social-btn {
    margin-bottom: 100px;
  }
}

@media screen and (max-width: 767px) {
  .lp-point .btn {
    margin-top: 7px;
    width: 100%;
  }
  .lp-point .sub-header-lp {
    width: 100%;
    margin-bottom: 20px;
    min-height: 200px;
  }
  .lp-point .sub-header-lp h1 {
    padding-top: 50px;
  }
  .lp-point .sub-header-lp h1 img {
    width: 300px;
  }
  .lp-point .content .section {
    margin-bottom: 30px;
  }
  .lp-point .content .section .title {
    padding-bottom: 10px;
    margin-bottom: 25px;
  }
  .lp-point .content .change .point-list li img {
    max-width: 90%;
    height: auto;
  }
  .lp-point .content .time .left {
    width: 100%;
  }
  .lp-point .content .time .left .flow .flow-box, .lp-point .content .time .left .flow .top, .lp-point .content .time .left .flow .bottom {
    height: 5px;
    display: block;
  }
  .lp-point .content .time .left .flow .flow-box {
    margin: 0 auto;
    width: 100%;
    height: auto;
    border: 1px solid #333333;
    text-align: left;
  }
  .lp-point .content .time .left .flow .flow-box-in {
    padding: 10px;
  }
  .lp-point .content .contact {
    padding: 20px 10px;
  }
  .lp-point .social-btn {
    margin-bottom: 60px;
  }
  .lp-point .social-btn .twitter {
    margin-right: 8px;
  }
  .lp-point .social-btn .line {
    display: inline-block;
    vertical-align: bottom;
  }
  .lp-point .social-btn .line img {
    width: 84px;
    padding-bottom: 5px;
    vertical-align: bottom;
  }
}

.lp-point-status .bg-blue {
  background: #0F0A64;
}

.lp-point-status .key-visual {
  height: 460px;
  background: url(/stcontents/img/sub-page/t/bg-top.png) no-repeat left top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/sub-page/t/bg-bottom.png) no-repeat right bottom;
  background-color: #0F0A64;
}

.lp-point-status .key-visual .inner {
  position: absolute;
  width: 94%;
  top: 58%;
  left: 3%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}

.lp-point-status .key-visual .inner img {
  width: 796px;
  margin: 0 auto 32px;
}

.lp-point-status .key-visual .inner p {
  font-size: 16px;
}

.lp-point-status .bg-white {
  padding: 24px 64px;
  margin-bottom: 120px;
}

.lp-point-status .relux-point,
.lp-point-status .relux-point-howto,
.lp-point-status .member-status,
.lp-point-status .diamond-benefits,
.lp-point-status .member-status-howto {
  margin-bottom: 80px;
}

.lp-point-status .relux-point:last-child,
.lp-point-status .relux-point-howto:last-child,
.lp-point-status .member-status:last-child,
.lp-point-status .diamond-benefits:last-child,
.lp-point-status .member-status-howto:last-child {
  margin-bottom: 80px;
}

.lp-point-status .relux-point .border-red,
.lp-point-status .relux-point-howto .border-red,
.lp-point-status .member-status .border-red,
.lp-point-status .diamond-benefits .border-red,
.lp-point-status .member-status-howto .border-red,
.lp-point-status .faq .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}

.lp-point-status .relux-point-howto h3 {
  margin-bottom: 32px;
}

.lp-point-status .relux-point-howto .exchange-rate {
  margin-bottom: 40px;
}

.lp-point-status .relux-point-howto .exchange-rate img {
  width: 320px;
}

.lp-point-status .relux-point-howto .step {
  width: fit-content;
  margin: 0 auto;
  display: flex;
  gap: 0 16px;
  justify-content: space-between;
}

.lp-point-status .relux-point-howto .step .step-content {
  width: 260px;
  padding: 24px;
  background-color: #f5f5f5;
}

.lp-point-status .relux-point-howto .step .step-content img {
  width: 100px;
}

.lp-point-status .relux-point-howto .step .step-content p {
  width: 100%;
  color: #000;
  margin-bottom: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.lp-point-status .relux-point-howto .step .step-content .text {
  height: 48px;
  position: relative;
}

.lp-point-status .member-status ul {
  margin-top: 40px;
  line-height: 1.5;
  max-width: 992px;
  font-weight: 400;
}

.lp-point-status .member-status ul .for-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.lp-point-status .member-status ul .item-box-center {
  margin-top: 8px;
  margin-left: 8px;
  width: calc((100% - 272px - 32px) / 4);
  height: 104px;
  background-color: #fff;
  border: 1px solid #C6C6C6;
  border-radius: 2px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-point-status .member-status ul .item-box-center.left-title {
  margin-left: 0;
  width: 272px;
  text-align: center;
  background-color: #f5f5f5;
  border: none;
}

.lp-point-status .member-status ul .item-box-center.left-title .font-large {
  margin-bottom: 4px;
}

.lp-point-status .member-status ul .item-box-center p {
  margin-bottom: 0;
}

.lp-point-status .member-status ul .top-title-box {
  color: #fff;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.lp-point-status .member-status ul .line-2 .item-box-center {
  background-color: #f5f5f5;
  border: none;
}

.lp-point-status .member-status ul .font-small {
  font-size: 11px;
  font-weight: 400;
}

.lp-point-status .member-status ul .bg-green {
  height: 66px;
  background: -webkit-linear-gradient(275deg, #81A754 63%, #688C3B 38%) !important;
  background: linear-gradient(175deg, #81A754 63%, #688C3B 38%) !important;
  border: none;
}

.lp-point-status .member-status ul .bg-gold {
  height: 88px;
  background: -webkit-linear-gradient(275deg, #D9B255 53%, #BA992E 47%) !important;
  background: linear-gradient(175deg, #D9B255 53%, #BA992E 47%) !important;
  border: none;
}

.lp-point-status .member-status ul .bg-platinum {
  height: 118px;
  background: -webkit-linear-gradient(275deg, #A7A9AA 50%, #757575 48%) !important;
  background: linear-gradient(175deg, #A7A9AA 50%, #757575 48%) !important;
  border: none;
}

.lp-point-status .member-status ul .bg-diamond {
  height: 146px;
  background: -webkit-linear-gradient(275deg, #150F74 47%, #05023F 42%) !important;
  background: linear-gradient(175deg, #150F74 47%, #05023F 42%) !important;
  border: none;
}

.lp-point-status .member-status .attention {
  font-size: 12px;
  margin-top: 8px;
  text-align: left;
}

.lp-point-status .member-status .attention p {
  margin-bottom: 4px;
}

.lp-point-status .member-status .attention ul {
  margin-top: 0;
}

.lp-point-status .member-status .attention ul li {
  padding-left: 1em;
  text-indent: -1em;
}

.lp-point-status .member-status .attention ul li::before {
  content: "※";
}

.lp-point-status .member-status .btn-wide {
  margin-top: 40px;
}

.lp-point-status .diamond-benefits {
  max-width: 992px;
  height: 204px;
  background: url(/stcontents/img/sub-page/lp/point-status/benefits-bg-top.png) no-repeat left top, url(/stcontents/img/sub-page/lp/point-status/benefits-bg-bottom.png) no-repeat right bottom;
  background-color: #0F0A64;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.lp-point-status .diamond-benefits p {
  font-size: 20px;
}

.lp-point-status .diamond-benefits p:first-child {
  font-size: 24px;
  font-weight: bold;
}

.lp-point-status .diamond-benefits .text-link-white {
  position: absolute;
  bottom: 16px;
  right: 32px;
  font-size: 16px;
}

.lp-point-status .member-status-howto h3 {
  margin: 40px auto 24px;
}

.lp-point-status .member-status-howto img {
  width: 100%;
}

.lp-point-status .faq dl {
  margin-bottom: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 16px;
}

.lp-point-status .faq dl p {
  margin-bottom: 0;
}

.lp-point-status .faq dl dt {
  width: 32px;
  margin-bottom: 16px;
}

.lp-point-status .faq dl dd {
  width: calc(100% - 32px);
  padding-left: 16px;
  text-align: left;
}

.lp-point-status .faq dl dd:first-of-type {
  color: #0F0A64;
  font-weight: bold;
}

.lp-point-status .faq dl dd .note {
  font-size: 12px;
  color: #757575;
}

.lp-point-status .faq dl dd .note p {
  margin-left: 1em;
  text-indent: -1em;
}

.lp-point-status .faq dl dd .note p::before {
  content: '※';
}

.lp-point-status .btn-group-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 80px 0;
}

.lp-point-status .btn-group-area a {
  width: 176px;
}

.lp-point-status .btn-group-area :first-child {
  margin-right: 16px;
}

.lp-point-status .bread-crumbs a {
  color: #fff;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .lp-point-status .key-visual .inner img {
    width: 650px;
  }
  .lp-point-status .bg-white {
    padding: 24px 40px;
  }
  .lp-point-status .member-status .top-title-box {
    font-size: 14px;
  }
  .lp-point-status .relux-point-howto .step .step-content {
    width: 195px;
    padding: 24px 10px;
  }
}

@media screen and (max-width: 767px) {
  .lp-point-status .key-visual {
    height: 600px;
    background: url(/stcontents/img/sub-page/lp/point-status/bg-top-sp.png) no-repeat left top, url(/stcontents/img/sub-page/lp/point-status/bg-bottom-sp.png) no-repeat right bottom;
  }
  .lp-point-status .key-visual .inner {
    position: absolute;
    width: 100%;
    padding: 0 16px;
    top: 58%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    text-align: center;
  }
  .lp-point-status .key-visual .inner img {
    width: 70%;
    margin: 0 auto 32px;
  }
  .lp-point-status .key-visual .inner p {
    font-size: 14px;
  }
  .lp-point-status .bg-white {
    padding: 24px 16px;
    margin-bottom: 80px;
    overflow: hidden;
  }
  .lp-point-status .relux-point,
  .lp-point-status .relux-point-howto,
  .lp-point-status .member-status,
  .lp-point-status .diamond-benefits,
  .lp-point-status .member-status-howto {
    margin-bottom: 40px;
  }
  .lp-point-status .relux-point .font-large,
  .lp-point-status .relux-point-howto .font-large,
  .lp-point-status .member-status .font-large,
  .lp-point-status .diamond-benefits .font-large,
  .lp-point-status .member-status-howto .font-large {
    font-size: 16px;
  }
  .lp-point-status .relux-point h2,
  .lp-point-status .relux-point-howto h2,
  .lp-point-status .member-status h2,
  .lp-point-status .diamond-benefits h2,
  .lp-point-status .member-status-howto h2 {
    font-size: 24px;
  }
  .lp-point-status .relux-point .border-red,
  .lp-point-status .relux-point-howto .border-red,
  .lp-point-status .member-status .border-red,
  .lp-point-status .diamond-benefits .border-red,
  .lp-point-status .member-status-howto .border-red,
  .lp-point-status .faq .border-red {
    width: 56px;
  }
  .lp-point-status .relux-point-howto .exchange-rate img {
    width: 240px;
  }
  .lp-point-status .relux-point-howto .step {
    display: block;
    width: 100%;
  }
  .lp-point-status .relux-point-howto .step .step-content {
    width: 100%;
    display: flex;
    padding: 16px 32px;
    position: relative;
  }
  .lp-point-status .relux-point-howto .step .step-content img {
    width: 75px;
    margin: 0;
  }
  .lp-point-status .relux-point-howto .step .step-content .text {
    height: 24px;
    position: unset;
  }
  .lp-point-status .relux-point-howto .step .step-content p {
    transform: translate(0, -50%);
    left: 0;
    font-size: 14px;
    padding-left: 82px;
    text-align: center;
  }
  .lp-point-status .relux-point-howto .step .step-content:last-of-type {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .lp-point-status .relux-point-howto .step .step-content:last-of-type img {
    margin-right: 8px;
  }
  .lp-point-status .relux-point-howto .step .arrow {
    margin: 4px auto 0;
    transform: rotate(90deg);
  }
  .lp-point-status .member-status ul.status-list {
    margin-top: 16px;
    line-height: 1.5;
  }
  .lp-point-status .member-status ul.status-list .jsc-accordion {
    margin-top: 16px;
    height: 44px;
    border-radius: 4px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    color: #fff;
  }
  .lp-point-status .member-status ul.status-list .jsc-accordion::before {
    margin: auto;
    width: 7px;
    height: 7px;
    top: 0;
    right: 20px;
    bottom: 4px;
    bottom: 0;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    content: "";
    position: absolute;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .lp-point-status .member-status ul.status-list .jsc-accordion.active::before {
    margin: auto;
    width: 7px;
    height: 7px;
    top: 8px;
    right: 20px;
    bottom: 4px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    position: absolute;
    content: "";
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .lp-point-status .member-status ul.status-list .detail-box {
    display: none;
    margin: 8px 0 24px;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item {
    padding: 8px 16px;
    border: 1px solid #C6C6C6;
    border-radius: 2px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 8px;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item:first-child {
    border: none;
    background-color: #f5f5f5;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item .item-txt {
    text-align: left;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item .item-txt p {
    margin-bottom: 0;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item .item-txt p:first-child {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 8px;
  }
  .lp-point-status .member-status ul.status-list .detail-box .detail-item .font-large {
    font-weight: bold;
    margin-bottom: 0;
  }
  .lp-point-status .member-status ul.status-list .top-title-box {
    color: #fff;
  }
  .lp-point-status .member-status ul.status-list .line-2 .item-box-center {
    background-color: #ccc;
  }
  .lp-point-status .member-status ul.status-list .bg-green {
    background: -webkit-linear-gradient(273deg, #81A754 48%, #688C3B 50%) !important;
    background: linear-gradient(177deg, #81A754 48%, #688C3B 50%) !important;
  }
  .lp-point-status .member-status ul.status-list .bg-gold {
    background: -webkit-linear-gradient(273deg, #D9B255 48%, #BA992E 50%) !important;
    background: linear-gradient(177deg, #D9B255 48%, #BA992E 50%) !important;
  }
  .lp-point-status .member-status ul.status-list .bg-platinum {
    background: -webkit-linear-gradient(273deg, #A7A9AA 48%, #757575 50%) !important;
    background: linear-gradient(177deg, #A7A9AA 48%, #757575 50%) !important;
  }
  .lp-point-status .member-status ul.status-list .bg-diamond {
    background: -webkit-linear-gradient(273deg, #150F74 48%, #05023F 50%) !important;
    background: linear-gradient(177deg, #150F74 48%, #05023F 50%) !important;
  }
  .lp-point-status .member-status-howto div {
    width: 100vw;
    margin-left: -16px;
    overflow-x: scroll;
  }
  .lp-point-status .member-status-howto div img {
    width: 590px;
    margin: 0 16px;
  }
  .lp-point-status .member-status-howto div img.wd-100per {
    width: calc(100% - 32px);
  }
  .lp-point-status .member-status-howto div::-webkit-scrollbar {
    display: none;
  }
  .lp-point-status .diamond-benefits p {
    font-size: 14px;
  }
  .lp-point-status .diamond-benefits p:first-child {
    font-size: 20px;
  }
  .lp-point-status .diamond-benefits .text-link-white {
    font-size: 14px;
  }
  .lp-point-status .faq dl {
    font-size: 14px;
  }
  .lp-point-status .faq dl dd {
    padding-left: 8px;
  }
  .lp-point-status .btn-group-area a {
    width: calc(100% / 2 - 4px);
  }
  .lp-point-status .btn-group-area :first-child {
    margin-right: 8px;
  }
  .swipe-box {
    position: relative;
  }
  .swipe-box:after {
    background: url(/stcontents/img/sub-page/lp/point-status/icon-swipe.png) no-repeat center center;
    background-size: contain;
    width: 104px;
    height: 104px;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .swipe-box.scroll-on:after {
    content: none;
  }
}

@media screen and (max-width: 767px){
  .lp-point-status .relux-point-howto .step .step-content img {
      width: 54px;
  }
}

.lp-pontapoint {
  /*
    コンテンツ
  */
  /*--------------------------------notice----------------------------*/
  /*
  .notice{
    display: flex;
    padding:30px 16px;
    flex-direction: column;
    background-color: #fff;
  }
  */
  /*/////  memberStatusIntroduce__status  /////////////////////////////////*/
  /* --------

   #pankuzu

  -------- */
  /* ----------------------------------------------------------------------
    footer 固定ボタン
  ----------------------------------------------------------------------- */
  /*
    追加修正
  */
  /*
  Ponta改修
*/
}

.lp-pontapoint section {
  padding: 40px 0;
}

.lp-pontapoint section .wrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 16px;
  font-size: 12px;
}

.lp-pontapoint section img {
  max-width: 100%;
}

.lp-pontapoint section h2 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 1px;
  text-align: center;
  color: #000;
}

.lp-pontapoint section h3 {
  font-weight: bold;
}

.lp-pontapoint .pc {
  display: none;
}

.lp-pontapoint .sp {
  display: block;
}

.lp-pontapoint .bg-gray {
  background: #F5F5F5;
}

.lp-pontapoint .text-center {
  text-align: center;
}

.lp-pontapoint .tect-right {
  text-align: right;
}

.lp-pontapoint .font-bold {
  font-weight: bold;
}

.lp-pontapoint .kv {
  width: 100%;
  height: 512px;
  background-image: url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-pc.png");
  background-position: 70% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint section h2 {
    font-size: 28px;
  }
  .lp-pontapoint section .wrap {
    font-size: 18px;
  }
  .lp-pontapoint .kv {
    background-position: 50% 70%;
    width: 100%;
    height: 650px;
    background-image: url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-pc.jpg");
    background-position: 70% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
  }
}

.lp-pontapoint .kv .text {
  position: absolute;
  padding: 0 14px 16px;
  bottom: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.lp-pontapoint .kv-logo {
  text-align: center;
}

.lp-pontapoint .headerTitle {
  font-weight: bold;
  color: #fff;
  letter-spacing: 1px;
  text-align: center;
}

.lp-pontapoint .headerTitle strong {
  font-weight: bold;
  color: #F2CC32;
}

.lp-pontapoint .kv .text ul {
  max-width: 765px;
  height: 147px;
  margin: 32px auto 0;
  font-weight: bold;
  font-size: 24px;
  color: #fff;
}

.lp-pontapoint .kv .text ul li {
  background: url(/stcontents/img/sub-page/lp/pontapoint/icon-check.svg) no-repeat left center;
  padding-left: 45px;
  margin-bottom: 8px;
  font-weight: normal;
}

.lp-pontapoint .kv .text ul li span {
  font-weight: bold;
  color: #ffdd63;
}

.lp-pontapoint .kv .text .note {
  vertical-align: text-top;
  font-size: 10px;
}

.lp-pontapoint .kv .text ul li.no-mark {
  background: none;
  font-size: 10px;
}

.lp-pontapoint .headerSubTitle {
  font-size: 14px;
  color: #fff;
  margin-top: 12px;
  letter-spacing: 0;
}

.lp-pontapoint .headerSubTitle + .headerSubTitle {
  margin-top: 8px;
}

.lp-pontapoint .shareBtn {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 18px;
}

.lp-pontapoint .shareBtnItem img {
  height: 32px;
  width: 32px;
}

.lp-pontapoint .shareBtnItem + .shareBtnItem {
  margin-left: 16px;
}

.lp-pontapoint .shareBtnLink {
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}
.lp-pontapoint .year-ranking .wrap {
  max-width: 1120px;
}
.lp-pontapoint .year-ranking .entry {
  height: auto;
}
.lp-pontapoint .year-ranking .entry .thumb  {
  display: flex;
  align-items: center;
  justify-content: center;
}
.lp-pontapoint .year-ranking .entry .thumb img {
  max-width: none;
  height: 120%;
  width: 120%;
}

.lp-pontapoint .year-ranking .entry.more-banner .more {
  display: block;
  margin-top: 0;
  text-align: center;
  font-size: 1.6rem;
}

.lp-pontapoint .year-ranking .bnr-more a .text:after {
  background: url(/stcontents/img/common/icon-arrow-right-gold.svg) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  vertical-align: middle;
  margin-left: 8px;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .pc {
    display: block;
  }
  .lp-pontapoint .sp {
    display: none;
  }
  .lp-pontapoint .kv .text {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 1040px;
    padding: 0 16px 24px;
    top: 85px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .lp-pontapoint .headerTitle {
    margin-top: 32px;
    font-size: 54px;
  }
  .lp-pontapoint .headerTitle span {
    font-size: 38px;
  }
  .lp-pontapoint .shareBtnItem-line {
    display: none;
  }
  .lp-pontapoint .shareBtn {
    margin-top: 24px;
  }
  .lp-pontapoint .headerSubTitle {
    line-height: 2;
    letter-spacing: 1px;
  }
  .lp-pontapoint .year-ranking .entry .icon {
      width: 30px;
  }
}

.lp-pontapoint section.point_notice {
  margin: 0;
}

.lp-pontapoint .notice_Cushion {
  background-color: #ffe63e;
  padding: 8px;
}

.lp-pontapoint section.point_notice h2.notice_title {
  font-size: 20px;
  font-size: 1.25rem;
  padding-right: 0px;
}

.lp-pontapoint .notice_title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding: 10px 0px 24px;
  text-align: center;
}

.lp-pontapoint .notice_text span {
  color: #f67a00;
}

.lp-pontapoint .notice_comment {
  margin: 0 8px;
  padding-top: 8px;
}

.lp-pontapoint .notice_explain {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  margin-bottom: 8px;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint {
    /*
    .notice{
      padding:16px 8px;
    }
    */
    /*
    .notice{
      max-width: 960px;
      margin: auto;
      padding:40px 64px;
      flex-direction: inherit;
    }
    */
  }
  .lp-pontapoint section.point_notice h2.notice_title {
    font-size: 20px;
    font-size: 1.25rem;
    padding-top: 30px;
    padding-right: 54px;
    border-right: 2px solid #d8d8d8;
  }
  .lp-pontapoint .notice_title {
    font-size: 16px;
    font-size: 1rem;
    padding: 10px 0px;
  }
  .lp-pontapoint .notice_text {
    margin-left: 80px;
  }
  .lp-pontapoint .notice_Cushion {
    background-color: #ffe63e;
    padding: 10px 0;
  }
  .lp-pontapoint .notice_comment {
    max-width: 1080px;
    margin: auto;
  }
  .lp-pontapoint .notice_explain {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    margin: 0;
  }
}

.lp-pontapoint .message {
  text-align: center;
}

.lp-pontapoint .message h2 {
  font-size: 20px;
}

.lp-pontapoint .message h2 .large {
  font-size: 24px;
}

.lp-pontapoint .message h2 .orange {
  color: #f67a00;
}

.lp-pontapoint .message .text {
  text-align: left;
  line-height: 2;
  font-size: 16px;
  color: #000;
}

.lp-pontapoint .message img {
  display: inline-block;
  max-width: 200px;
  margin: 32px auto 40px;
}

.lp-pontapoint .reluxPoint {
  text-align: center;
}

.lp-pontapoint .reluxPoint .bg {
  background: url(/stcontents/img/sub-page/lp/pontapoint/reluxpoint-bg-sp.jpg) no-repeat 0 0;
  background-size: cover;
  height: 432px;
  text-align: center;
}

.lp-pontapoint .reluxPoint img {
  width: 100%;
  max-width: 400px;
  margin-top: -190px;
  border-radius: 6px;
}

.lp-pontapoint .howto {
  background: url(/stcontents/img/sub-page/lp/pontapoint/bg-sky.jpg) no-repeat 0 0;
  background-size: cover;
  padding: 32px 0;
}

.lp-pontapoint .howto .wrap {
  background: #fff;
  margin: 0 8px;
  padding: 32px 16px;
  border-radius: 6px;
  color: #000;
}

.lp-pontapoint .howto h2 {
  font-size: 18px;
  margin-bottom: 24px;
}

.lp-pontapoint .howto dl {
  border-top: 1px solid #d8d8d8;
  padding: 32px 0 32px;
  text-align: center;
}

.lp-pontapoint .howto dl dt span {
  background: #0a0f64;
  display: inline-block;
  width: 110px;
  margin-bottom: 24px;
  padding: 4px 6px 3px;
  border-radius: 20px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint .howto dl p {
  padding-top: 16px;
  font-size: 12px;
}

.lp-pontapoint .howto dl h3 {
  font-size: 14px;
}

.lp-pontapoint .howto dl img {
  max-width: 260px;
  width: 100%;
  display: inline-block;
  margin-top: 16px;
}

.lp-pontapoint .noteText {
  padding-top: 24px;
  border-top: 2px solid #d8d8d8;
  font-size: 12px;
  color: #757575;
}

.lp-pontapoint .noteText h3 {
  margin-bottom: 4px;
}

.lp-pontapoint .noteText ul {
  padding-left: 1em;
  text-indent: -1em;
}

.lp-pontapoint .benefits .noteText {
  padding-left: 24px;
  border-top: none;
}

.lp-pontapoint .benefits h2 span {
  color: #FF9123;
}

.lp-pontapoint .benefits .figure {
  margin: 0 auto;
  text-align: center;
  margin-bottom: 16px;
}

.lp-pontapoint .benefits .figure img {
  width: 230px;
}

.lp-pontapoint .benefits .figure p {
  font-size: 12px;
}

.lp-pontapoint .discount .figure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-pontapoint .statusDetail {
  padding-top: 0;
}

.lp-pontapoint .statusDetail .noteText {
  border: none;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .message h2 .large {
    font-size: 32px;
  }
  .lp-pontapoint .message .text {
    text-align: center;
  }
  .lp-pontapoint .message img {
    max-width: 260px;
  }
  .lp-pontapoint .reluxPoint .bg {
    background: url(/stcontents/img/sub-page/lp/pontapoint/reluxpoint-bg.jpg) no-repeat 0 0;
    background-size: cover;
  }
  .lp-pontapoint .reluxPoint img {
    margin-top: -200px;
    max-width: 100%;
  }
  .lp-pontapoint .howto {
    padding: 60px 0;
  }
  .lp-pontapoint .howto h2 {
    font-size: 28px;
    margin-bottom: 52px;
  }
  .lp-pontapoint .howto .wrap {
    margin: 0 auto;
    padding: 80px 80px;
  }
  .lp-pontapoint .howto dl {
    border-top: 2px solid #d8d8d8;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 48px 0 48px;
    text-align: left;
  }
  .lp-pontapoint .howto dl dt {
    width: 25%;
  }
  .lp-pontapoint .howto dl dd {
    width: 75%;
  }
  .lp-pontapoint .howto dl h3 {
    font-size: inherit;
  }
  .lp-pontapoint .howto dl dt span {
    margin-bottom: 0;
  }
  .lp-pontapoint .howto dl img {
    max-width: 400px;
  }
  .lp-pontapoint .noteText {
    padding-top: 40px;
  }
}

.lp-pontapoint .addPoint {
  background: #0f0a64;
  padding: 32px 0;
  color: #fff;
}

.lp-pontapoint .addPoint h2 {
  margin: 0 0 10px;
  text-align: left;
  color: #fff;
}

.lp-pontapoint .addPoint .flex {
  padding: 0 16px;
}

.lp-pontapoint .addPoint .flex .right {
  margin-top: 32px;
}

.lp-pontapoint .addPoint .flex .right .box {
  max-width: 312px;
  width: 100%;
  margin: 0 auto;
  padding: 12px 10px;
  background: #fff;
  border-radius: 4px;
  border-bottom: 4px solid #d8d8d8;
  text-align: center;
  font-size: 12px;
  color: #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint .addPoint .flex .right .box span {
  display: inline-block;
  margin-bottom: 4px;
  font-weight: bold;
  font-size: 20px;
}

.lp-pontapoint .addPoint .flex .right .box:last-of-type {
  padding: 20px 10px;
}

.lp-pontapoint .addPoint .flex .arrow {
  width: 24px;
  margin: 12px auto 10px;
  line-height: 1;
}

.lp-pontapoint .addPoint .note {
  margin-top: 16px;
  font-size: 12px;
  letter-spacing: 0;
}

.lp-pontapoint .faq dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 24px;
  font-size: 12px;
}

.lp-pontapoint .faq dl dt,
.lp-pontapoint .faq dl dd {
  margin-top: 24px;
}

.lp-pontapoint .faq dl dt {
  width: 50px;
}

.lp-pontapoint .faq dl dd {
  width: calc(100% - 50px);
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint .faq dl dt span {
  background-color: #0a0f64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 32px;
  height: 32px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50% 50%;
  font-weight: bold;
  font-size: 16px;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0;
}

.lp-pontapoint .faq dl dt:nth-of-type(2) span {
  background-color: #fff;
  border: 2px solid #0a0f64;
  color: #0a0f64;
}

.lp-pontapoint .faq dl dd h3 {
  color: #0a0f64;
}

.lp-pontapoint .faq .default-link:hover {
  color: #0066CC;
}

.lp-pontapoint .bnrGtt {
  padding-top: 40px;
  border-top: 2px solid #d8d8d8;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .addPoint {
    padding: 56px 0;
  }
  .lp-pontapoint .addPoint h2 {
    margin: 30px 0 10px;
  }
  .lp-pontapoint .addPoint .flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .lp-pontapoint .addPoint .flex .left {
    width: 64.5%;
  }
  .lp-pontapoint .addPoint .flex .right {
    width: 35.5%;
    margin-top: 0;
    text-align: center;
  }
  .lp-pontapoint .addPoint .flex .right .box:first-of-type {
    width: 234px;
  }
  .lp-pontapoint .addPoint .note {
    margin-top: 60px;
  }
  .lp-pontapoint .faq {
    padding-bottom: 30px;
  }
  .lp-pontapoint .faq dl {
    margin-top: 56px;
    font-size: 16px;
  }
  .lp-pontapoint .faq dl dt span {
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
  .lp-pontapoint .faq dl dt,
  .lp-pontapoint .faq dl dd {
    margin-top: 10px;
  }
  .lp-pontapoint .faq dl dd {
    padding-left: 38px;
  }
  .lp-pontapoint .bnrGtt {
    padding-top: 70px;
  }
}

.lp-pontapoint .statusDetail h2 {
  margin-bottom: 40px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP {
  margin-top: 16px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle {
  cursor: pointer;
  height: 44px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 44px;
  text-align: center;
  border-radius: 4px;
  position: relative;
  margin-top: 16px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle::before {
  border-top: 1.5px solid #333;
  border-right: 1.5px solid #333;
  bottom: 0;
  content: "";
  height: 7px;
  margin: auto;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 7px;
  border-top: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  right: 20px;
  bottom: 4px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle.is-actived::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 8px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox {
  margin: 8px 0 24px;
  display: none;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox.is-open {
  display: block;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxta {
  line-height: 2;
  font-size: 11px;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtb {
  line-height: 2;
  font-size: 12px;
  font-weight: bold;
}

.lp-pontapoint .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtc {
  padding-top: 22px;
  font-size: 16px;
  font-weight: bold;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .memberStatusIntroduce__wrapperS.sp {
    display: none;
  }
}

.lp-pontapoint .statusNotice .wrap {
  margin: 0 auto 0;
  padding: 0 16px;
}

.lp-pontapoint .statusNotice p {
  font-size: 14px;
  line-height: 21px;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .statusNotice .wrap {
    max-width: 960px;
  }
  .lp-pontapoint .statusNotice p {
    font-size: 14px;
    line-height: 30px;
  }
}

.lp-pontapoint ul#pankuzu {
  color: #333;
  letter-spacing: -.4em;
}

.lp-pontapoint ul#pankuzu li {
  display: inline-block;
  letter-spacing: normal;
  font-size: 11px;
  color: #333;
}

.lp-pontapoint li.li_pankuzu {
  background-image: url("/stcontents/img/common/pankuzu_listmark.png");
  background-position: right center;
  background-repeat: no-repeat;
  padding: 0 15px 0 0;
  margin-right: 8px;
}

.lp-pontapoint li.li_pankuzu a,
.lp-pontapoint li.li_pankuzulast a {
  color: #333;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint ul#pankuzu {
    margin: 32px 0 24px;
  }
}

.lp-pontapoint .footerPb {
  clear: both;
  padding-bottom: 90px;
}

.lp-pontapoint div.footerFixed {
  background-color: #FFFFFF;
  width: 100%;
  position: fixed;
  bottom: 0px;
  padding: 16px 0;
  border-top: 1px solid #DDDDDD;
}

.lp-pontapoint div.footerFixed > div.inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
}

.lp-pontapoint div.footerFixed p.text {
  text-align: center;
  font-size: 11px;
  padding-bottom: 10px;
  color: #0f0a64;
}

.lp-pontapoint div.footerFixed div.btnWrap {
  display: table;
  width: 100%;
}

.lp-pontapoint div.footerFixed p.regist,
.lp-pontapoint div.footerFixed p.login {
  display: table-cell;
  width: 50%;
}

.lp-pontapoint div.footerFixed a {
  text-decoration: none;
}

.lp-pontapoint div.footerFixed p.regist,
.lp-pontapoint div.footerFixed p.login {
  padding: 0 10px;
}

.lp-pontapoint div.footerFixed input {
  -webkit-appearance: none;
}

.lp-pontapoint div#modal-container div.contents {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint div#modal-small .auIDBox .auID_btn {
  margin-left: 5px;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint #global-footer div.footer-inner {
    padding: 40px 30px 0;
  }
}

.lp-pontapoint .white-box {
  background: #FFFFFF;
  position: relative;
  margin-bottom: 16px;
  padding: 16px 16px;
  border: 1px solid #0F0A64;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 12px;
}

.lp-pontapoint .white-box h2 {
  font-size: 24px;
}

.lp-pontapoint .feature .white-box h2 {
  color: #0F0A64;
}

.lp-pontapoint .white-box h3 {
  margin-bottom: 4px;
  font-size: 14px;
}

.lp-pontapoint .col1-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
}

.lp-pontapoint .col2-box {
  margin-bottom: 16px;
}

.lp-pontapoint .col1-box h2:before,
.lp-pontapoint .col2-box h2:before {
  content: url(/stcontents/img/sub-page/lp/pontapoint/icon-check-relux.svg);
  vertical-align: top;
  margin-right: 8px;
  color: #0F0A64;
}

.lp-pontapoint .col1-box > div:last-of-type {
  padding-left: 64px;
}

.lp-pontapoint .text-link a:hover {
  opacity: 0.7;
}

.lp-pontapoint .col2-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.lp-pontapoint .col2-box .white-box {
  width: calc(50% - 10px);
  padding-bottom: 56px;
}

.lp-pontapoint .col2-box h2 {
  margin-bottom: 8px;
}

.lp-pontapoint .col2-box h3 {
  margin: 8px 0 12px;
}

.lp-pontapoint .col2-box p {
  margin-bottom: 8px;
}

.lp-pontapoint .col2-box p a {
  color: #0066CC;
}

.lp-pontapoint .col2-box .text-link {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0;
  text-align: center;
}

.lp-pontapoint .col2-box .text-link a {
  margin-top: 16px;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  color: #0F0A64;
}

.lp-pontapoint .col2-box .text-link a:after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border-right: 3px solid #0F0A64;
  border-bottom: 3px solid #0F0A64;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: 10px;
}

.lp-pontapoint .col2-box dl {
  max-width: 330px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  text-align: left;
  font-size: 12px;
  margin: 0 auto 16px;
  letter-spacing: 0;
}

.lp-pontapoint .col2-box dl dt.font-bold,
.lp-pontapoint .col2-box dl dd.font-bold {
  padding-bottom: 16px;
}

.lp-pontapoint .col2-box dl dt {
  width: calc(100% - 90px);
}

.lp-pontapoint .col2-box dl dd {
  width: 90px;
  text-align: right;
}

.lp-pontapoint .col2-box dl dd span {
  font-size: 10px;
}

.lp-pontapoint .feature .col2-box .white-box:last-of-type .icon {
  padding: 8px 0;
}

.lp-pontapoint .feature .col2-box .note {
  font-size: 10px;
  color: #666666;
}

.lp-pontapoint .bottom-box {
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  font-size: 20px;
}

.lp-pontapoint .bottom-box a {
  text-decoration: none;
}

.lp-pontapoint .bottom-box .btn {
  width: 300px;
  height: auto;
  margin: 0 12px;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  height: 48px;
  display: flex;
  align-items: center;
}

.lp-pontapoint .bottom-box .btn:after {
  content: none;
}

.lp-pontapoint .year_ranking a {
  color: #555;
}

.lp-pontapoint .year_ranking .titleHeader {
  margin-bottom: 24px;
}

.lp-pontapoint .year_ranking .entry-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.lp-pontapoint .year_ranking .entry {
  width: 222px;
  height: 232px;
  margin-right: 24px;
  position: relative;
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint .year_ranking .entry.more-banner {
  border: none;
}

.lp-pontapoint .year_ranking .entry.more-banner a {
  background: url(/stcontents/img/sub-page/lp/pontapoint/bg-ranking.png) no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-pontapoint .year_ranking .entry.more-banner img {
  width: 200px;
}

.lp-pontapoint .year_ranking .entry.more-banner .more {
  text-align: right;
  font-size: 12px;
  margin-top: 16px;
  color: #fff;
}

.lp-pontapoint .year_ranking .entry.more-banner .more:after {
  background: url(/stcontents/img/common/relux-icon_icon-navigate-right-white.svg) no-repeat 0 0;
  background-size: 100%;
  content: "";
  width: 26px;
  height: 26px;
  display: inline-block;
  vertical-align: middle;
  margin: -1px -4px 0 7px;
}

.lp-pontapoint .year_ranking .entry-list div.entry:last-child {
  margin-right: 0 !important;
}

.lp-pontapoint .year_ranking .entry p.month {
  font-size: 16px;
}

.lp-pontapoint .year_ranking .entry > a {
  display: block;
  text-decoration: none;
}

.lp-pontapoint .year_ranking .entry > a:hover {
  opacity: 0.7;
}

.lp-pontapoint .year_ranking .entry a {
  text-decoration: none;
}

.lp-pontapoint .year_ranking .entry div.thum img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.lp-pontapoint .year_ranking .entry div.info {
  padding: 0 10px 10px 10px;
}

.lp-pontapoint .year_ranking .entry div.info div.entryHeader div.left {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  z-index: 1;
}

.lp-pontapoint .year_ranking .entry div.info div.entryHeader div.left div.icon {
  width: 40px;
}

.lp-pontapoint .year_ranking .entry div.info div.entryHeader div.left div.icon img {
  width: 100%;
  height: auto;
  padding-left: 8px;
  border: none;
}

.lp-pontapoint .year_ranking .entry div.info p.name {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 12px;
}

.lp-pontapoint .year_ranking .entry div.info p.area {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11px;
}

.lp-pontapoint .year_ranking .entry div.info p.name a:hover, .lp-pontapoint .year_ranking .entry div.info p.area a:hover {
  text-decoration: underline;
}

.lp-pontapoint .year_ranking .entry div.info p.copy {
  font-size: 13px;
  color: #000000;
  margin-bottom: 10px;
}

.lp-pontapoint .year_ranking h3.name,
.lp-pontapoint .year_ranking h2.name {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  margin: 0 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}

.lp-pontapoint .year_ranking h3.entry, .lp-pontapoint .year_ranking h2.entry {
  background-color: #fff;
  -webkit-box-shadow: 0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
          box-shadow: 0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

.lp-pontapoint .year_ranking h3.entry a, .lp-pontapoint .year_ranking h2.entry a {
  text-decoration: none;
  color: #000;
}

.lp-pontapoint .year_ranking .entry div.thum {
  height: 132px;
  position: relative;
  overflow: hidden;
  z-index: 0;
  display: block;
  margin-bottom: 0;
}

.lp-pontapoint .year_ranking .entry div.thum a {
  vertical-align: text-bottom;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.lp-pontapoint .year_ranking .entry div.info {
  padding: 16px;
}

.lp-pontapoint .year_ranking .entry div.info p.name {
  font-size: 20px;
}

.lp-pontapoint .year_ranking .entry div.info p.area {
  text-align: left;
}

.lp-pontapoint .year_ranking div.entry div.info div.entryHeader {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.lp-pontapoint .year_ranking .entry div.info p.grade {
  height: 15px;
}

.lp-pontapoint .year_ranking .entry div.info p.grade img {
  height: 15px;
  display: inline-block;
}

.lp-pontapoint .year_ranking .entry div.info p.grade img.museum,
.lp-pontapoint .year_ranking .entry div.info p.grade img.casual {
  height: 12px;
}

.lp-pontapoint .year_ranking .entry div.info p.grade img.star {
  margin-right: 3px;
}

.lp-pontapoint .year_ranking .entry div.info p.grade {
  margin-bottom: 8px;
  line-height: 0;
}

.lp-pontapoint .slick-dots li {
  width: 10px;
  height: 10px;
  margin: 0 8px;
}

.lp-pontapoint .slick-dots li button:before,
.lp-pontapoint .slick-dots li.slick-active button:before {
  color: #C4C4C4;
}

@media screen and (max-width: 767px) {
  .lp-pontapoint button.slick-prev.slick-arrow {
    display: none !important;
  }
}

.lp-pontapoint .benefits h2 {
  margin-bottom: 16px;
}

.lp-pontapoint .benefits .lead {
  margin-bottom: 32px;
  text-align: center;
  line-height: 2;
}

.lp-pontapoint .letter-0 {
  letter-spacing: 0;
}

.lp-pontapoint .howto-use h2 {
  margin-bottom: 32px;
}

.lp-pontapoint .howto-use .text h3 {
  font-size: 18px;
  color: #000;
}

.lp-pontapoint .howto-use .text {
  margin-bottom: 16px;
}

.lp-pontapoint .howto-use .text p {
  font-size: 16px;
}

.lp-pontapoint .howto-use .white-box {
  margin-bottom: 32px;
  padding: 24px 24px;
  border: none;
  border-radius: 8px;
}

.lp-pontapoint .howto-use .discount .noteText {
  border-top: none;
  padding: 0;
}

.lp-pontapoint .howto-use .bnr-box {
  padding: 24px;
}

.lp-pontapoint .howto-use .bnr-box .lead {
  margin-bottom: 24px;
  font-size: 18px;
}

.lp-pontapoint .howto-use .bnr-box .col1-box {
  border: 2px solid #FFF153;
}

.lp-pontapoint .howto-use .bnr-box .photo {
  line-height: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.lp-pontapoint .howto-use .bnr-box .text {
  padding: 0 16px 16px;
}

.lp-pontapoint .howto-use .bnr-box h3 {
  margin: 4px;
}

.lp-pontapoint .howto-use .bnr-box .btn {
  max-width: 260px;
  margin: 4px auto;
  font-weight: bold;
}

.lp-pontapoint .howto-use .bnr-box ul {
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  letter-spacing: 0;
  font-size: 10px;
}

.lp-pontapoint .howto-use .red {
  color: #990000;
}

.lp-pontapoint .howto-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.lp-pontapoint .howto-box > div {
  max-width: 260px;
}

.lp-pontapoint .howto-box .title span {
  background: #F2CC32;
  width: 94px;
  height: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: bold;
  margin: 0 auto 16px;
  border-radius: 20px;
  color: #fff;
}

.lp-pontapoint .howto-box h3 {
  margin-bottom: 16px;
  font-weight: normal;
  font-size: 14px;
}

@media screen and (max-width: 1023px) {
  .lp-pontapoint .howto-box h3 {
    font-size: 13px;
  }
}

.lp-pontapoint .howto-box .arrow {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  padding-top: 100px;
}

.lp-pontapoint .howto-box .arrow span {
  display: block;
  margin-top: 8px;
  color: #0F0A64;
}

.lp-pontapoint .howto-use .noteText {
  padding-top: 10px;
  margin-bottom: 40px;
  border-top: none;
}

.lp-pontapoint .howto-use .noteText:last-of-type {
  margin-bottom: 0;
}

.lp-pontapoint .howto-box.under {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 0;
}

.lp-pontapoint .howto-box.under .arrow {
  padding: 100px 36px 0;
}

.lp-pontapoint .float-box {
  display: none;
  background-color: #FFFFFF;
  width: 100%;
  position: fixed;
  bottom: 0px;
  padding: 8px 0;
  border-top: 1px solid #DDDDDD;
  z-index: 10;
}

.lp-pontapoint .float-box-title {
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  margin-right: 12px;
}

.lp-pontapoint .float-box-title.col2-title {
  width: 100% !important;
  margin-bottom: 8px !important;
  margin-right: 0;
}

.lp-pontapoint .float-box .bottom-box p {
  margin: 0 12px;
}

.lp-pontapoint .float-box .bottom-box .btn {
  width: 300px;
  margin: 0 12px;
}

.lp-pontapoint .btn-pagetop {
  display: none;
  position: fixed;
  bottom: 160px;
  right: 80px;
}

.lp-pontapoint .btn-pagetop.static {
  position: relative;
  bottom: auto;
  right: auto;
  margin-right: 80px;
}

.lp-pontapoint .btn-pagetop img {
  width: 58px;
}

.lp-pontapoint .btn-pagetop a:hover {
  opacity: 0.7;
}

.lp-pontapoint .breadcrumbs {
  margin-top: 0;
}

@media screen and (max-width: 1024px) {
  .lp-pontapoint .headerTitle {
    font-size: 30px;
  }
  .lp-pontapoint .headerTitle span {
    font-size: 26px;
  }
  .lp-pontapoint .white-box {
    max-width: 420px;
    display: block;
    margin: 0 auto 16px !important;
  }
  .lp-pontapoint .col1-box {
    display: block;
  }
  .lp-pontapoint .col1-box h2 {
    margin-bottom: 8px;
  }
  .lp-pontapoint .col1-box h3 {
    margin: 8px 0 12px;
  }
  .lp-pontapoint .col1-box > div:last-of-type {
    padding: 0;
  }
  .lp-pontapoint .col2-box {
    display: block;
  }
  .lp-pontapoint .col2-box .white-box {
    width: auto;
  }
  .lp-pontapoint .feature .white-box {
    width: calc(100% - 32px) !important;
  }
  .lp-pontapoint .lead {
    font-size: 12px !important;
  }
  .lp-pontapoint .howto-use .bnr-box .photo img {
    width: 100%;
  }
  .lp-pontapoint .howto-use .bnr-box .text {
    padding: 16px 8px;
  }
  .lp-pontapoint .howto-use .white-box {
    max-width: 600px;
  }
  .lp-pontapoint .howto-box > div {
    max-width: none;
  }
  .lp-pontapoint .slick-slide {
    margin: 0 12px;
  }
  .lp-pontapoint .howto-box .slick-slide {
    max-width: 260px;
  }
  .lp-pontapoint .slick-dotted.slick-slider {
    display: block;
    margin-bottom: 0;
    padding-bottom: 40px;
    overflow: hidden;
  }
  .lp-pontapoint .slick-dotted.slick-slider .slick-dots {
    bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .lp-pontapoint section {
    padding: 24px 0;
  }
  .lp-pontapoint .kv {
    height: 600px;
  }
  .lp-pontapoint .kv-logo img {
    max-width: 285px;
    margin-bottom: 24px;
  }
  .lp-pontapoint .kv .text {
    top: 110px;
    bottom: auto;
    width: 100%;
    padding: 0 4px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .lp-pontapoint .kv .text ul {
    max-width: 356px;
    height: 102px;
    font-size: 14px;
  }
  .lp-pontapoint .kv .text ul li {
    background-size: 13px;
    padding-left: 22px;
  }
  .lp-pontapoint .feature .wrap {
    padding: 0;
  }
  .lp-pontapoint .col1-box h2 {
    font-size: 24px !important;
  }
  .lp-pontapoint .col1-box h2:before,
  .lp-pontapoint .col2-box h2:before {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  .lp-pontapoint .white-box h2 {
    font-size: 16px !important;
  }
  .lp-pontapoint .feature .col2-box .white-box:last-of-type .icon {
    padding: 0;
  }
  .lp-pontapoint .bottom-box {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 0 16px;
    font-size: 14px;
    text-align: center;
  }
  .lp-pontapoint .bottom-box > div {
    width: 100%;
  }
  .lp-pontapoint .bottom-box .btn {
    max-width: 420px;
    width: 100%;
    margin: 0 auto !important;
    padding: 12px 0;
    font-size: 12px;
    white-space: nowrap;
    height: 40px;
  }
  .lp-pontapoint .float-box .bottom-box .btn {
    width: 100%;
  }
  .lp-pontapoint .bottom-box.bottom-col-2 {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .lp-pontapoint .bottom-box.bottom-col-2 > div {
    width: calc(50% - 4px);
    margin: 0;
  }
  .lp-pontapoint .float-box-title {
    margin-bottom: 8px !important;
    font-size: 1.2rem;
  }
  .lp-pontapoint .benefits {
    padding: 40px 0 0;
  }
  .lp-pontapoint .benefits .figure img {
    width: 150px;
    margin: 0 auto;
  }
  .lp-pontapoint .benefits .noteText {
    padding-left: 0;
  }
  .lp-pontapoint .howto-use .bnr-box {
    padding: 24px 16px;
  }
  .lp-pontapoint .howto-use .text h3 {
    font-size: 14px;
  }
  .lp-pontapoint .howto-use .text p {
    font-size: 12px;
  }
  .lp-pontapoint .btn-pagetop {
    right: 30px;
    bottom: 130px;
  }
  .lp-pontapoint .btn-pagetop.static {
    bottom: auto;
    right: auto;
    margin-right: 30px;
  }
  .lp-pontapoint .btn-pagetop img {
    width: 40px;
  }
  .lp-pontapoint .bottom-box .btn {
    letter-spacing: 0;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 360px) {
  .lp-pontapoint .kv {
    height: 500px;
  }
  .lp-pontapoint .headerTitle {
    font-size: 24px;
  }
  .lp-pontapoint .headerTitle span {
    font-size: 18px;
  }
  .lp-pontapoint .kv .text ul {
    max-width: 290px;
    font-size: 11px;
  }
  .lp-pontapoint .float-box-title {
    font-size: 12px;
  }
  .lp-pontapoint .howto-box .slick-slide {
    max-width: 240px;
  }
}

.lp-pontapoint .share-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 16px;
  height: auto !important;
}

.lp-pontapoint .kv .text .share-box li {
  background: none;
  padding-left: 0;
  margin-bottom: 0;
  border: none;
}

.lp-pontapoint .share-box .share-btn {
  height: 32px;
  width: 32px;
}

.lp-pontapoint .share-box .share-btn + .share-btn {
  margin-left: 16px;
}

.lp-pontapoint .share-box .btn-facebook a {
  background: url("/stcontents/img/feature/icon_facebook.png") no-repeat 0 0;
}

.lp-pontapoint .share-box .btn-twitter a {
  background: url("/stcontents/img/feature/icon_twitter.png") no-repeat 0 0;
}

.lp-pontapoint .share-box .btn-line a {
  background: url("/stcontents/img/feature/icon_line.png") no-repeat 0 0;
}

.lp-pontapoint .share-box .share-btn a {
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .lp-pontapoint .share-box .btn-line {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .lp-pontapoint .share-box {
    margin-top: 40px !important;
  }
}

@media screen and (max-width: 360px) {
  .lp-pontapoint .share-box {
    margin-top: 25px !important;
  }
}

.lp-pontapoint .kv .kv-icon {
  position: absolute;
  bottom: 16px;
  right: 16px;
}

@media screen and (min-width: 1024px) {
  .lp-pontapoint .kv .kv-icon {
    width: 960px;
    text-align: right;
    position: absolute;
    bottom: 16px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.lp-pontapoint .font-strong {
  margin-bottom: 8px;
  font-weight: bold;
}

.lp-pontapoint .link-box {
  padding-bottom: 0;
}

.lp-pontapoint .link-box .btn-relux {
  max-width: 100%;
  width: 300px;
  height: 48px;
  margin: 0 auto;
  padding: 0 10px;
  border-radius: 4px;
  background-color: #0f0a64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #fff;
}

.lp-pontapoint .link-box .btn-relux {
  max-width: 100%;
  width: 300px;
  height: 48px;
  margin: 0 auto;
  padding: 0 10px;
  border-radius: 4px;
  background-color: #0f0a64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #fff;
}

.lp-pontapoint .kv {
  background-image: url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-layer-2.svg"), url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-pc.jpg");
  background-repeat: no-repeat, no-repeat;
  background-position: left bottom,  center center;
  background-size: 100%, cover;
  height: 500px;
}

.lp-pontapoint .kv .text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 1040px;
  padding: 0 16px 24px;
  top: 85px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.lp-pontapoint .year-ranking .entry.more-banner a {
  background: url(/stcontents/img/sub-page/lp/pontapoint/bg-ranking.png) no-repeat center center;
  background-size: cover;
}
.lp-pontapoint .year-ranking .entry.more-banner .more {
  color: #D9B255;
}
.lp-pontapoint .hotel-list .hotel-list-notice {
  font-size: 1.4rem;
  color: #757575;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .lp-pontapoint .kv {
    background-image: url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-layer.png"), url("/stcontents/img/sub-page/lp/pontapoint/keyvisual-sp.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left bottom,  center center;
    background-size: 100%, cover;
    height: 350px;
  }
  .lp-pontapoint .kv .text {
    top: 70px;
    bottom: auto;
    width: 100%;
    padding: 0 4px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .lp-pontapoint .hotel-list .section.wrap {
    padding: 0;
  }
  .lp-pontapoint .link-box .btn-relux {
    width: 100%;
  }
  .lp-pontapoint .year-ranking .entry .info .entry-header .left .icon img {
    max-width: none;
  }
  .lp-pontapoint .hotel-list .hotel-list-notice {
    font-size: 1.2rem;
    margin: 0 16px;
  }
}

.lp-pontapoint .kv .headerTitle {
  text-align: left;
  padding-left: 16px;
  line-height: 1.5;
}

.lp-pontapoint .sec-title {
  margin: 20px 0 16px;
  padding-left: 16px;
  padding-bottom: 0;
  border-left: 3px solid #F2CC32;
  text-align: left;
  font-weight: normal;
  font-size: 22px;
  line-height: 1.6;
}

.lp-pontapoint .sec-title strong {
  font-weight: 900;
}

@media screen and (max-width: 767px) {
  .lp-pontapoint .sec-title {
    margin: 20px 16px 40px;
  }
}

.cxl-insurance {
  /* to preserve line-height and selector appearance */
  /* because legend doesn't inherit in IE */
  /* YUI CSS Detection Stamp */
  /* // -----------------------------------------------------------------
  // Components
  // ----------------------------------------------------------------- */
  /* // -----------------------------------------------------------------
  // Pages
  // ----------------------------------------------------------------- */
  /*20210311追加*/
  /*modal*/
  /**************************\
    Demo Animation Style
  \**************************/
  /*リンク表示調整*/
  /*リンク表示調整ここまで*/
  /*商品概要*/
  /*商品概要ここまで*/
  /*SP表示*/
  /*SP表示ここまで*/
}

.cxl-insurance img {
  vertical-align: middle;
  max-width: 100%;
}

.cxl-insurance footer {
  padding-bottom: 100px;
}

.cxl-insurance .l-wrap a {
  color: #757575;
  font-size: 16px;
  cursor: pointer;
}

.cxl-insurance .l-wrap p {
  letter-spacing: 1.8px;
  line-height: 1.71;
}

.cxl-insurance .l-wrap * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.cxl-insurance .l-wrap table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1rem;
}

.cxl-insurance .l-wrap fieldset,
.cxl-insurance .l-wrap img {
  border: 0;
}

.cxl-insurance .l-wrap address,
.cxl-insurance .l-wrap caption,
.cxl-insurance .l-wrap cite,
.cxl-insurance .l-wrap code,
.cxl-insurance .l-wrap dfn,
.cxl-insurance .l-wrap em,
.cxl-insurance .l-wrap strong,
.cxl-insurance .l-wrap th,
.cxl-insurance .l-wrap var {
  font-style: normal;
  font-weight: normal;
}

.cxl-insurance .l-wrap ol,
.cxl-insurance .l-wrap ul {
  list-style: none;
}

.cxl-insurance .l-wrap caption,
.cxl-insurance .l-wrap th {
  vertical-align: top;
  text-align: left;
}

.cxl-insurance .l-wrap q::before,
.cxl-insurance .l-wrap q::after {
  content: '';
}

.cxl-insurance .l-wrap abbr,
.cxl-insurance .l-wrap acronym {
  border: 0;
  font-variant: normal;
}

.cxl-insurance .l-wrap sup {
  vertical-align: text-top;
}

.cxl-insurance .l-wrap sub {
  vertical-align: text-bottom;
}

.cxl-insurance .l-wrap legend {
  color: #333;
}

.cxl-insurance #yui3-css-stamp.cssreset {
  display: none;
}

.cxl-insurance .l-wrap ul {
  list-style-type: none;
}

.cxl-insurance .l-wrap input,
.cxl-insurance .l-wrap textarea,
.cxl-insurance .l-wrap select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: inherit;
  font-size: inherit;
  *font-size: 100%;
  font-weight: inherit;
  outline: none;
}

.cxl-insurance .l-wrap select::-ms-expand {
  display: none;
}

.cxl-insurance .l-wrap input::-ms-expand {
  display: none;
}

.cxl-insurance .l-wrap input[type='radio'] {
  display: none;
}

.cxl-insurance .l-wrap textarea {
  resize: none;
}

.cxl-insurance .u-kome {
  margin-left: 2em;
  text-indent: -2em;
}

.cxl-insurance .u-kome span {
  margin-right: 5px;
}

.cxl-insurance .c-accordion {
  background-color: #fff;
  border: 1px solid #EEE;
  border-radius: 8px;
}

.cxl-insurance .c-accordion:hover {
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}

.cxl-insurance .c-accordion-title {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
  line-height: 1.75;
  padding: 10px 40px 10px 22px;
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-accordion-title {
    display: block;
    font-size: 14.22px;
    padding: 7px 16px 10px;
  }
}

.cxl-insurance .c-accordion-title::after {
  border-bottom: 2px solid #757575;
  border-right: 2px solid #757575;
  content: "";
  display: block;
  height: 8px;
  margin-left: auto;
  position: absolute;
  right: 22px;
  top: 50%;
  -webkit-transform: rotate(45deg) translate(0, -50%);
          transform: rotate(45deg) translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 8px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-accordion-title::after {
    margin: 5px auto 0;
    position: static;
  }
}

.cxl-insurance .c-accordion-title span {
  color: #757575;
  font-size: 24px;
  margin-right: 30px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-accordion-title span {
    display: block;
    margin: 0 0 6px;
  }
}

.cxl-insurance .c-accordion-contents {
  max-height: 0;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  visibility: hidden;
}

.cxl-insurance .c-accordion-contents::before {
  background-color: #EEE;
  content: "";
  display: block;
  height: 1px;
  left: 22px;
  position: absolute;
  top: 0;
  width: calc(100% - 22px * 2 - 17px - 8px);
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-accordion-contents::before {
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: calc(100% - 16px * 2);
  }
}

.cxl-insurance .c-accordion-contents p {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  /*display: flex;*/
  font-size: 16px;
  line-height: 1.75;
  padding: 20px 22px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-accordion-contents p {
    display: block;
    font-size: 14px;
    padding: 7px 16px 10px;
  }
}

.cxl-insurance .c-accordion-contents p span {
  color: #757575;
  font-size: 24px;
  margin-right: 30px;
}

.cxl-insurance .c-accordion.is-active .c-accordion-contents {
  max-height: 1500px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  visibility: visible;
}

.cxl-insurance .c-accordion.is-active .c-accordion-title::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.cxl-insurance .c-sidebar-contents, .cxl-insurance .c-sidebar-overlay {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  visibility: hidden;
}

.cxl-insurance .c-sidebar-overlay {
  background-color: rgba(0, 0, 0, 0.45);
  height: 100vh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 800;
}

.cxl-insurance .c-sidebar-contents {
  background-color: #fff;
  height: 100vh;
  max-width: 360px;
  padding: 16px 24px;
  position: fixed;
  right: -100%;
  top: 0;
  width: 100%;
  z-index: 900;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-sidebar-contents {
    max-width: 100%;
  }
}

.cxl-insurance .c-sidebar-contents p {
  font-size: 16px;
}

.cxl-insurance .c-sidebar.is-active .c-sidebar-contents,
.cxl-insurance .c-sidebar.is-active .c-sidebar-overlay {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  visibility: visible;
}

.cxl-insurance .c-sidebar.is-active .c-sidebar-contents {
  right: 0;
}

.cxl-insurance .c-sidebar.is-active .c-sidebar-overlay {
  opacity: 1;
}

.cxl-insurance .c-sidebar-close-btn {
  height: 22px;
  margin-bottom: 16px;
  position: relative;
  width: 22px;
}

.cxl-insurance .c-sidebar-close-btn::before, .cxl-insurance .c-sidebar-close-btn::after {
  background-color: #333;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  top: 8px;
  width: 100%;
}

.cxl-insurance .c-sidebar-close-btn::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.cxl-insurance .c-sidebar-close-btn::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.cxl-insurance .c-sidebar-contents label {
  cursor: pointer;
}

.cxl-insurance .c-sidebar-contents label.disabled {
  background: #eee;
  pointer-events: none;
  border: 1px solid #979797 !important;
}
.cxl-insurance .c-sidebar-contents label.disabled:before {
  border-color: #979797 !important;
}
.cxl-insurance .c-sidebar-contents label.disabled:after {
  opacity: 0 !important;
}

.cxl-insurance .c-footer-fix {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  left: 0;
  padding: 11px 19px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: fixed;
  bottom: 0;
  width: 100%;
  -webkit-box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
  z-index: 1001;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-footer-fix {
    padding: 11px 16px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.cxl-insurance .c-footer-fix-right {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-footer-fix-right {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    display: block;
  }
}

.cxl-insurance .c-target-date1 {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.cxl-insurance .c-footer-fix-right .c-sidebar {
  margin-left: 30px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-footer-fix-right .c-sidebar {
    margin-left: auto;
  }
}

.cxl-insurance .c-footer-fix-right .c-btn {
  max-width: none;
  width: auto;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.cxl-insurance .c-footer-fix-right .c-btn:hover {
  color: #fff;
  cursor: pointer;
}

.cxl-insurance .c-footer-fix .c-target-date {
  margin-left: auto;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-footer-fix .c-target-date {
    text-align: right;
  }
}

.cxl-insurance .c-footer-fix-radio {
  margin: 32px 0 46px;
  position: relative;
}

.cxl-insurance .c-footer-fix-radio::after {
  background: -webkit-gradient(linear, left bottom, right top, color-stop(50%, rgba(0, 0, 0, 0)), color-stop(50.5%, #0000008a)) no-repeat 0 0/50% 100%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #0000008a)) no-repeat 100% 100%/50% 100%;
  background: -webkit-linear-gradient(bottom left, rgba(0, 0, 0, 0) 50%, #0000008a 50.5%) no-repeat 0 0/50% 100%, -webkit-linear-gradient(bottom right, rgba(255, 255, 255, 0) 50%, #0000008a 50.5%) no-repeat 100% 100%/50% 100%;
  background: linear-gradient(to top right, rgba(0, 0, 0, 0) 50%, #0000008a 50.5%) no-repeat 0 0/50% 100%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #0000008a 50.5%) no-repeat 100% 100%/50% 100%;
  content: "";
  height: 8px;
  left: 50%;
  position: absolute;
  top: 104%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 12px;
}

.cxl-insurance .c-footer-fix-radio label:not(:last-child) {
  margin-bottom: 16px;
}

.cxl-insurance .c-footer-fix-notice {
  font-size: 14px;
}

.cxl-insurance .c-footer-fix-notice-message {
  margin-top: 10px;
  margin-bottom: 10px;
}

.cxl-insurance .c-footer-fix-notice-message span {
  display: block;
  color: red;
  font-size: 16px;
}

.cxl-insurance .c-footer-fix-check {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.cxl-insurance .c-footer-fix-check input {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  margin-right: 5px;
}

.cxl-insurance .c-footer-fix-submit .c-btn:first-child {
  margin-bottom: 16px;
}

.cxl-insurance .c-footer-fix-submit .c-btn-secandary {
  background: #BDBDBD;
}

.cxl-insurance .c-footer-fix-submit .c-btn-secandary.is-active {
  background: #0F0A64;
}

.cxl-insurance .c-footer-fix-submit .c-btn-tertiary {
  border: 1px solid #BDBDBD;
  color: #BDBDBD;
}

.cxl-insurance .c-footer-fix-submit .c-btn-tertiary.is-active {
  border: 1px solid #0F0A64;
  color: #0F0A64;
}

.cxl-insurance .c-header {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  left: 0;
  padding: 11px 19px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 500;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-header {
    padding: 11px 16px;
  }
}

.cxl-insurance .c-header-logo {
  width: 164px;
}

.cxl-insurance .c-header-right {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.cxl-insurance .c-header-right .c-sidebar {
  margin-left: 30px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-header-right .c-sidebar {
    margin-left: auto;
  }
}

.cxl-insurance .c-header-right .c-btn {
  max-width: none;
  width: auto;
}

.cxl-insurance .c-header .c-target-date {
  margin-left: auto;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-header .c-target-date {
    display: none;
  }
}

.cxl-insurance .c-header-radio {
  margin: 32px 0 46px;
  position: relative;
}

.cxl-insurance .c-header-radio::after {
  background: -webkit-gradient(linear, left bottom, right top, color-stop(50%, rgba(0, 0, 0, 0)), color-stop(50.5%, #0000008a)) no-repeat 0 0/50% 100%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #0000008a)) no-repeat 100% 100%/50% 100%;
  background: -webkit-linear-gradient(bottom left, rgba(0, 0, 0, 0) 50%, #0000008a 50.5%) no-repeat 0 0/50% 100%, -webkit-linear-gradient(bottom right, rgba(255, 255, 255, 0) 50%, #0000008a 50.5%) no-repeat 100% 100%/50% 100%;
  background: linear-gradient(to top right, rgba(0, 0, 0, 0) 50%, #0000008a 50.5%) no-repeat 0 0/50% 100%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #0000008a 50.5%) no-repeat 100% 100%/50% 100%;
  content: "";
  height: 8px;
  left: 50%;
  position: absolute;
  top: 107%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 12px;
}

.cxl-insurance .c-header-radio label:not(:last-child) {
  margin-bottom: 16px;
}

.cxl-insurance .c-header-notice {
  font-size: 14px;
}

.cxl-insurance .c-header-notice-message {
  margin-top: 10px;
  margin-bottom: 10px;
}

.cxl-insurance .c-header-notice-message span {
  display: block;
  color: red;
  font-size: 16px;
}

.cxl-insurance .c-header-check {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.cxl-insurance .c-header-check input {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  margin-right: 5px;
  margin-top: -2px;
  vertical-align: middle;
}

.cxl-insurance .c-header-submit .c-btn:first-child {
  margin-bottom: 16px;
}

.cxl-insurance .c-header-submit .c-btn-secandary {
  background: #BDBDBD;
}

.cxl-insurance .c-header-submit .c-btn-secandary.is-active {
  background: #0F0A64;
}

.cxl-insurance .c-header-submit .c-btn-tertiary {
  height: auto;
  border: 1px solid #BDBDBD;
  color: #BDBDBD !important;
}

.cxl-insurance .c-header-submit .c-btn-tertiary.is-active {
  border: 1px solid #0F0A64;
  color: #0F0A64 !important;
}

.cxl-insurance .c-target-date {
  color: #333;
  font-size: 16px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-date {
    font-size: 14px;
    width: 100%;
  }
}

.cxl-insurance .c-target-date-date {
  color: #747474;
  font-size: 12px;
  display: block;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-date-date {
    font-size: 16px;
  }
}

.cxl-insurance .c-target-date-line {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, #fff134));
  background-image: -webkit-linear-gradient(left, transparent 50%, #fff134 50%);
  background-image: linear-gradient(to right, transparent 50%, #fff134 50%);
  background-position: -100% .5em;
  background-repeat: repeat-x;
  background-size: 200% 1em;
  font-weight: 600;
  font-size: 14px;
  padding: 0 2px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-date-line {
    display: none;
  }
}

.cxl-insurance .c-target-date-date-text {
  font-size: 14px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-date-date-text {
    display: none;
  }
}

.cxl-insurance .c-target-date-date p {
  color: #747474;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-date-date {
    display: none;
  }
}

.cxl-insurance .c-target-text {
  color: #CE0000;
  font-size: 10px;
  display: block;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-text {
    letter-spacing: 1px;
    text-align: left;
    display: inline-block;
  }
}

.cxl-insurance .c-target-text-contents {
  color: #CE0000;
  font-size: 10px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-target-text-contents {
    display: inline-block;
    text-align: left;
  }
}

.cxl-insurance .c-btn {
  background: #0F0A64;
  font-weight: 600;
  border: none;
  border-radius: 4px;
  color: #FFF;
  display: block;
  font-size: 16px;
  max-width: 96px;
  height: 56px;
  outline: none;
  padding: 8px 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  text-decoration: none !important;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-btn {
    height: 40px;
    display: block;
    margin-left: auto;
    margin-right: 0;
    margin-top: 8px;
  }
}

.cxl-insurance .c-btn.c-btn-secandary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 48px;
  font-size: 16px;
  margin: 0;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  line-height: 2;
  color: #fff;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-btn.c-btn-secandary {
    line-height: 1.5;
  }
}

.cxl-insurance .c-btn.c-btn-tertiary {
  background: #fff;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 16px;
  margin: 0;
  max-width: 100%;
  padding: 10px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 1.2em;
}

.cxl-insurance .c-main-visual {
  display: block;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual {
    padding: 0 0 45px;
  }
}

.cxl-insurance .c-main-visual-top {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 0 0 30px;
  padding: 0 39px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-top {
    margin: 63px 0 13px;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-top {
    -webkit-flex-wrap: wrap-reverse;
        -ms-flex-wrap: wrap-reverse;
            flex-wrap: wrap-reverse;
    padding: 0 15px;
  }
}

.cxl-insurance .c-main-visual-top p {
  color: #777;
  font-size: 16px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-top p {
    font-size: 12.34px;
    text-align: center;
    width: 100%;
  }
}

.cxl-insurance .c-main-visual-top .c-main-visual-logo {
  margin: 0 0 0 20px;
  max-width: 98px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-top .c-main-visual-logo {
    margin: 0 auto 5px;
    max-width: 65.33px;
  }
}

.cxl-insurance .c-main-visual-main {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main {
    display: block;
    padding-left: 0;
  }
}

.cxl-insurance .c-main-visual-main-image {
  min-height: 585px;
  overflow: hidden;
  position: relative;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-image {
    min-height: auto;
    width: 100%;
  }
}

.cxl-insurance .c-main-visual-main-image img {
  left: 50%;
  min-width: 1156px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
}

.cxl-insurance .c-main-visual-main-image img.sp-view {
  display: none;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-image img {
    min-width: auto;
    position: static;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .cxl-insurance .c-main-visual-main-image img.pc-view {
    display: none;
  }
  .cxl-insurance .c-main-visual-main-image img.sp-view {
    display: inline;
  }
}

.cxl-insurance .c-main-visual-main-text {
  max-width: 960px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -480px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
}

@media print, screen and (max-width: 1024px) {
  .cxl-insurance .c-main-visual-main-text {
    position: absolute;
    left: 16px;
    margin-left: 0;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p:first-child {
    padding-top: 1vw;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p {
    padding-left: 2vw;
  }
}

.cxl-insurance .c-main-visual-main-text p {
  display: inline-block;
  position: relative;
  line-height: 1.5;
}

.cxl-insurance .c-main-visual-main-text p::after {
  text-shadow: 2px 2px 2px black;
  content: "";
  z-index: 100;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p::after {
    height: 125%;
  }
}

.cxl-insurance .c-main-visual-main-text p:not(:last-child) {
  margin-bottom: 10px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p:not(:last-child) {
    margin-bottom: 5px;
  }
}

.cxl-insurance .c-main-visual-main-text p span {
  color: #fff;
  text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
  font-size: 24px;
  font-weight: 700;
  position: relative;
  z-index: 200;
  display: inline-block;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p span {
    font-size: 16px;
  }
}

.cxl-insurance .c-main-visual-main-text p span.petname {
  font-size: 36px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-main-text p span.petname {
    font-size: 24px;
  }
}

.cxl-insurance .petname-description {
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
  max-width: 960px;
  margin: 20px auto;
  font-size: 12px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .petname-description {
    padding: 0 24px;
    font-size: 12px;
  }
}

.cxl-insurance .c-main-visual-travel {
  margin: 0 30px 78px 0;
  max-width: 212px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-travel {
    margin: 15px 0 0;
    max-width: 100%;
    position: static;
  }
}

.cxl-insurance .c-main-visual-travel p {
  color: #757575;
  font-size: 12.34px;
  line-height: 1.6;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-travel p {
    text-align: center;
  }
}

.cxl-insurance .c-main-visual-travel-image {
  margin-bottom: 22px;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-travel-image {
    margin: 0 auto 22px;
    max-width: 212px;
  }
}

.cxl-insurance .c-main-visual-sns {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 33px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual-sns {
    margin: 0 auto 22px;
    max-width: 212px;
  }
}

.cxl-insurance .c-main-visual-sns .line-it-button {
  height: 20px !important;
  margin-right: 10px;
  width: 83px !important;
}

.cxl-insurance .c-main-visual .c-card-list {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 40px auto 0;
  max-width: 960px;
  padding: 0 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual .c-card-list {
    display: block;
  }
}

.cxl-insurance .c-main-visual .c-card-list .c-card:not(:last-child) {
  margin-right: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual .c-card-list .c-card:not(:last-child) {
    margin-bottom: 15px;
  }
}

.cxl-insurance .c-main-visual .c-target-date {
  display: none;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-main-visual .c-target-date {
    display: block;
    padding: 5px 24px;
  }
}

.cxl-insurance .c-main-visual > h2 {
  margin-top: 80px;
  position: relative;
  z-index: 100;
}

.cxl-insurance .c-card-primary {
  background-color: #fff;
  border: 2px solid #F5F5F5;
  max-width: 300px;
  overflow: hidden;
  padding: 33px 15px 18px;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 100%;
    padding: 12px 23px;
  }
}

.cxl-insurance .c-card-primary .c-card-contents {
  margin-top: 14px;
}

.cxl-insurance .c-card-primary .c-card-icon {
  margin: 0 auto;
  width: 40px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary .c-card-icon {
    margin: 0 20px 0 0;
  }
}

.cxl-insurance .c-card-primary .c-card-title {
  font-size: 16px;
  line-height: 1.4;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary .c-card-title {
    font-size: 14px;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary .c-card-title br {
    display: none;
  }
}

.cxl-insurance .c-card-primary .c-card-text {
  color: #757575;
  font-size: 16px;
  line-height: 1.4;
  margin-top: 20px;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary .c-card-text {
    display: inline-block;
    font-size: 12px;
    margin-top: 23px;
  }
}

.cxl-insurance .c-card-primary .c-card-money {
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-primary .c-card-money {
    display: inline-block;
    font-size: 18px;
  }
}

.cxl-insurance .c-card-primary .c-card-money span {
  font-size: 16px;
  font-weight: normal;
}

.cxl-insurance .circle {
  position: relative;
  display: inline-block;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background-color: #F2F7FF;
  text-align: center;
  line-height: 120px;
  margin: 0 auto;
}

.cxl-insurance .circle-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap;
}

.cxl-insurance .circle-text {
  padding-top: 8px;
}

.cxl-insurance .c-card-secondary {
  background-color: #fff;
  border-left: 4px solid #f5f5f5;
  border-radius: 4px;
  border-right: 4px solid #f5f5f5;
  overflow: hidden;
}

.cxl-insurance .c-card-secondary::before, .cxl-insurance .c-card-secondary::after {
  background: #f5f5f5;
  content: "";
  display: block;
  height: 4px;
}

.cxl-insurance .c-card-secondary .c-card-contents {
  padding: 24px 40px;
}

.cxl-insurance .c-card-secondary .c-card-title {
  color: #333;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 600;
  text-align: center;
}

.cxl-insurance .c-card-secondary .c-card-icon-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: space-evenly;
  -webkit-justify-content: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  margin-top: 25px;
}

.cxl-insurance .c-card-secondary .c-card-icon-list li {
  margin: 7px;
  width: 120px;
}

.cxl-insurance .c-card-secondary .c-card-icon-list .c-card-icon {
  display: block;
  margin-bottom: 10px;
}

.cxl-insurance .c-card-secondary .c-card-icon-list p {
  color: #333;
  font-size: 16px;
  text-align: center;
  width: 110%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-secondary .c-card-icon-list p {
    font-size: 14px;
  }
}

.cxl-insurance .c-card-tertiary {
  border: 1px solid #c6c6c6;
  background-color: #fff;
  border-radius: 4px;
  max-width: 300px;
  overflow: hidden;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary {
    max-width: 100%;
  }
}

.cxl-insurance .c-card-tertiary .c-card-title {
  background-color: #f5f5f5;
  color: #333;
  font-size: 16px;
  font-weight: 600;
  height: 116px;
  line-height: 1.4;
  text-align: left;
  margin-bottom: 30px;
  padding: 24px 21px 0px 21px;
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-title {
    font-size: 16px;
    height: auto;
    padding: 30px 15px 15px;
    text-align: center;
  }
}

.cxl-insurance .c-card-tertiary .c-card-title::after {
  background: -webkit-gradient(linear, left bottom, right top, color-stop(50%, rgba(242, 247, 255, 0)), color-stop(50.5%, #f5f5f5)) no-repeat 0 0/50% 100%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #f5f5f5)) no-repeat 100% 100%/50% 100%;
  background: -webkit-linear-gradient(bottom left, rgba(242, 247, 255, 0) 50%, #f5f5f5 50.5%) no-repeat 0 0/50% 100%, -webkit-linear-gradient(bottom right, rgba(255, 255, 255, 0) 50%, #f5f5f5 50.5%) no-repeat 100% 100%/50% 100%;
  background: linear-gradient(to top right, rgba(242, 247, 255, 0) 50%, #f5f5f5 50.5%) no-repeat 0 0/50% 100%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #f5f5f5 50.5%) no-repeat 100% 100%/50% 100%;
  content: "";
  height: 30px;
  left: 0;
  position: absolute;
  top: 100%;
  width: 100%;
}

.cxl-insurance .c-card-tertiary .c-card-bottom {
  padding: 16px 16px 32px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-bottom {
    padding: 23px 15px 20px;
  }
}

.cxl-insurance .c-card-tertiary .c-card-bottom p {
  color: #333;
  font-size: 15px;
  letter-spacing: 0.2px;
  line-height: 1.7;
  margin-bottom: 30px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-bottom p {
    font-size: 14px;
    margin-bottom: 25px;
  }
}

.cxl-insurance .c-card-tertiary .c-card-bottom p:last-child {
  margin-bottom: 0;
}

.cxl-insurance .c-card-tertiary .c-card-bottom p:first-child {
  min-height: 220px;
  margin-bottom: 0;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-bottom p:first-child {
    min-height: 0;
    margin-bottom: 25px;
  }
}

.cxl-insurance .c-card-tertiary .c-card-label {
  border: 1px solid #004499;
  border-radius: 50px;
  font-weight: 600;
  margin: 0 auto;
  max-width: 109px;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-label {
    max-width: 119px;
    padding: 5px 0;
  }
}

.cxl-insurance .c-card-tertiary .c-card-bottom .c-card-label {
  color: #004499;
}

.cxl-insurance .c-card-tertiary .c-card-bunner {
  background: #004499;
  margin-top: auto;
  padding: 25px 10px;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-card-tertiary .c-card-bunner {
    padding: 18px 10px;
  }
}

.cxl-insurance .c-card-tertiary .c-card-bunner p {
  color: #FFF;
  font-size: 16px;
  text-align: center;
}

.cxl-insurance .c-card-tertiary .c-card-bunner p span {
  font-size: 32px;
}

.cxl-insurance h2 {
  line-height: 1.5;
  text-align: center;
}

.cxl-insurance h2 span {
  color: #333;
  display: inline-block;
  font-size: 36px;
  font-weight: 600;
  padding: 0 6px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance h2 span {
    font-size: 18px;
  }
}

.cxl-insurance h3 {
  color: #333;
  font-size: 22.78px;
  font-weight: 500;
  line-height: 1.4;
  padding-bottom: 21px;
  position: relative;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance h3 {
    font-size: 18.22px;
  }
}

.cxl-insurance h3::after {
  background-color: #333;
  border-radius: 4px;
  bottom: 0;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 60px;
}

.cxl-insurance .c-block-list {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list {
    margin-left: 0;
  }
}

.cxl-insurance .c-block-list li {
  border: 1px solid #c6c6c6;
  color: #333;
  font-size: 16px;
  max-width: 300px;
  padding: 23px 10px;
  text-align: center;
  width: calc(100% / 3 - 24px);
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li {
    margin-bottom: 16px;
    max-width: 100%;
    width: 100%;
  }
}

.cxl-insurance .c-block-list li:not(:nth-child(3n)) {
  margin-right: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:not(:nth-child(3n)) {
    margin: 0 0 16px;
  }
}

.cxl-insurance .c-block-list li:nth-child(-n + 3) {
  margin-bottom: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:nth-child(-n + 3) {
    margin: 0 0 16px;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:last-child {
    margin: 0;
  }
}

.cxl-insurance .l-footer {
  background-color: #fff;
  padding: 40px 15px;
  margin-bottom: 99px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .l-footer {
    padding: 24px 15px;
    margin-bottom: 104px;
  }
}

.cxl-insurance .l-footer p {
  margin: 0 auto;
  max-width: 164px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .l-footer p {
    max-width: 125px;
  }
}

.cxl-insurance .c-banner {
  background-color: #004499;
  padding: 35px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner {
    padding: 34px 24px;
  }
}

.cxl-insurance .c-banner-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  max-width: 960 px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-inner {
    display: block;
    max-width: 380px;
  }
}

.cxl-insurance .c-banner-left, .cxl-insurance .c-banner-right {
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-left, .cxl-insurance .c-banner-right {
    width: 100%;
  }
}

.cxl-insurance .c-banner-left {
  margin-right: 15px;
}

.cxl-insurance .c-banner-left p:not(:first-child) {
  color: #fff;
  font-size: 29px;
  line-height: 1.5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.cxl-insurance .c-banner-left p:not(:last-child) {
  margin-bottom: 30px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-left p:not(:last-child) {
    margin-bottom: 40px;
    text-align: center;
  }
}

.cxl-insurance .c-banner-left p:first-child {
  margin-bottom: 0px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-left p:first-child {
    margin-bottom: 20px;
  }
}

.cxl-insurance .c-banner-left p:nth-child(2n) {
  font-weight: bold;
}

.cxl-insurance .c-banner-left p:last-child a {
  color: #fff;
  text-decoration: none;
}

.cxl-insurance .c-banner-left-title {
  color: #fff;
  font-size: 24px;
  text-align: center;
  height: 4em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-right {
    margin-top: 40px;
  }
}

.cxl-insurance .c-banner-right img {
  display: block;
  max-width: 429px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-right img {
    display: block;
  }
}

.cxl-insurance .c-banner-right p {
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-right p {
    margin-top: 40px;
    text-align: center;
  }
}

.cxl-insurance .c-step-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-step-wrap {
    display: block;
  }
}

.cxl-insurance .c-step-wrap > * {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-step-wrap > * {
    display: block;
  }
}

.cxl-insurance .c-step-title {
  padding-bottom: 30px;
  font-size: 26px;
  font-weight: 600;
  text-align: center;
}

.cxl-insurance .c-step-title2 {
  font-size: 26px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
}

.cxl-insurance .c-step-title-text {
  text-align: center;
  margin-bottom: 40px;
  font-size: 16px;
}

.cxl-insurance .agency-note {
  background-color: #F5F5F5;
}

.cxl-insurance .agency-note > div {
  margin: 0 auto;
  max-width: 990px;
  font-size: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .agency-note > div {
    display: block;
  }
}

.cxl-insurance .agency-note > div div {
  margin: 0 20px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .agency-note > div div {
    margin: 0 0 15px;
  }
}

.cxl-insurance .c-step {
  margin: 0 60px 0 0;
  max-width: 253px;
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-step {
    margin: 0 auto 45px;
  }
}

.cxl-insurance .c-step::after {
  background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #0F0A64)) no-repeat 0 0/100% 50%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #0F0A64)) no-repeat 100% 100%/100% 50%;
  background: -webkit-linear-gradient(top right, rgba(255, 255, 255, 0) 50%, #0F0A64 50.5%) no-repeat 0 0/100% 50%, -webkit-linear-gradient(bottom right, rgba(255, 255, 255, 0) 50%, #0F0A64 50.5%) no-repeat 100% 100%/100% 50%;
  background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, #0F0A64 50.5%) no-repeat 0 0/100% 50%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #0F0A64 50.5%) no-repeat 100% 100%/100% 50%;
  content: "";
  height: 25px;
  position: absolute;
  right: -45px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 12px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-step::after {
    bottom: -35px;
    left: 50%;
    right: auto;
    top: auto;
    -webkit-transform: translate(-50%, 0) rotate(90deg);
            transform: translate(-50%, 0) rotate(90deg);
  }
}

.cxl-insurance .c-step:last-child {
  margin: 0;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-step:last-child {
    margin: 0 auto;
  }
}

.cxl-insurance .c-step:last-child::after {
  content: none;
}

.cxl-insurance .c-step h4 {
  background-color: #004499;
  border-radius: 40px;
  color: #fff;
  font-size: 16px;
  margin: 0 auto;
  padding: 4px;
  text-align: center;
  width: 109px;
}

.cxl-insurance .c-step-image {
  background-color: #DCDCDC;
  border-radius: 4px;
  margin-top: 24px;
  min-height: 440px;
}

.cxl-insurance .c-step-text {
  color: #333;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 24px;
  text-align: center;
}

.cxl-insurance .c-step--first {
  margin-bottom: 80px;
}

.cxl-insurance .c-radio {
  display: none;
}

.cxl-insurance .c-radio-label {
  border: 1px solid #979797;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  padding: 14px 43px;
  position: relative;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-radio-label {
    padding: 22px 43px;
  }
}

.cxl-insurance .c-radio-label::before {
  background: #fff;
  border: 1px solid #979797;
  border-radius: 50%;
  content: '';
  display: block;
  height: 16px;
  left: 12px;
  margin-top: -8px;
  position: absolute;
  top: 49%;
  width: 16px;
}

.cxl-insurance .c-radio-label::after {
  background: #0F0A64;
  border-radius: 50%;
  content: '';
  display: block;
  height: 10px;
  left: 16px;
  margin-top: -4px;
  opacity: 0;
  position: absolute;
  top: 49%;
  width: 10px;
}

.cxl-insurance .c-radio:checked + .c-radio-label {
  border: 2px solid #0F0A64;
}

.cxl-insurance .c-radio:checked + .c-radio-label::before {
  border-color: #0F0A64;
}

.cxl-insurance .c-radio:checked + .c-radio-label::after {
  opacity: 1;
}

.cxl-insurance .p-home h3 {
  padding-bottom: 24px;
  margin-bottom: 40px;
}

.cxl-insurance .p-home-section {
  padding: 45px 0 60px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-section {
    margin-top: 0;
    padding: 35px 24px;
  }
}

.cxl-insurance .p-home-background {
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-background {
    background-color: #F5F5F5;
  }
}

.cxl-insurance .p-home-background::after {
  background-color: #F5F5F5;
  content: "";
  height: 85%;
  left: 0;
  position: absolute;
  top: 50px;
  -webkit-transform: skewY(-5deg);
          transform: skewY(-5deg);
  width: 100%;
  z-index: 1;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-background::after {
    content: none;
  }
}

.cxl-insurance .p-home .contents {
  margin: 0 auto;
  max-width: 960px;
  position: relative;
  z-index: 200;
}

.cxl-insurance .cover-text {
  font-size: 20px;
  text-align: center;
  padding-bottom: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .cover-text {
    font-size: 18px;
  }
}

.cxl-insurance .p-home-product-summary p, .cxl-insurance .p-home-product-summary .contents-text {
  font-size: 32px;
  text-align: center;
  font-weight: 600;
  margin-bottom: 16px !important;
}

.cxl-insurance .p-home-product-summary p, .cxl-insurance .p-home-product-summary .contents-text2 {
  font-size: 16px;
  text-align: left;
  font-weight: 500;
  margin-bottom: 16px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary p, .cxl-insurance .p-home-product-summary .contents-text2 {
    font-size: 14px;
  }
}

.cxl-insurance .question {
  font-size: 32px;
  text-align: center;
  margin-bottom: 40px;
  font-weight: 600;
}

.cxl-insurance .p-home-cancel {
  padding: 80px 0 0;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel {
    padding: 35px 24px;
  }
}

.cxl-insurance p.p-home-cancel-caution {
  color: #757575;
  font-size: 16px;
  margin-top: 45px;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance p.p-home-cancel-caution {
    font-size: 14px;
    margin-top: 35px;
  }
}

.cxl-insurance .p-home-cancel-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 80px auto 0;
  max-width: 700px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text {
    display: block;
    margin: 20px auto 0;
    max-width: 100%;
  }
}

.cxl-insurance .p-home-cancel-text p {
  color: #333;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text p {
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text p br {
    display: none;
  }
}

.cxl-insurance .p-home-cancel-text-icon {
  margin-right: 18px;
  width: 47px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text-icon {
    margin: 0 auto 22px;
    width: 44px;
  }
}

.cxl-insurance .p-home-cover {
  padding: 40px 0 40px;
  position: relative;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cover {
    padding: 35px 24px;
  }
}

.cxl-insurance .p-home-cover .p-home-cover-wrap {
  margin: 0 auto;
  max-width: 632px;
  position: relative;
}

.cxl-insurance .p-home-cover .p-home-cover-wrap:first-child {
  margin-bottom: 56px;
}

.cxl-insurance .p-home-cover .p-home-cover-wrap:first-child .c-card-contents::after, .cxl-insurance .p-home-cover .p-home-cover-wrap:first-child .c-card-contents::before {
  background-color: #333;
  bottom: -30px;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  width: 15px;
}

.cxl-insurance .p-home-cover .p-home-cover-wrap:first-child .c-card-contents::after {
  -webkit-transform: translate(-50%, 0) rotate(45deg);
          transform: translate(-50%, 0) rotate(45deg);
}

.cxl-insurance .p-home-cover .p-home-cover-wrap:first-child .c-card-contents::before {
  -webkit-transform: translate(-50%, 0) rotate(-45deg);
          transform: translate(-50%, 0) rotate(-45deg);
}

.cxl-insurance .p-home-cover-image {
  bottom: 0;
  max-width: 500px;
  position: absolute;
  right: 0;
  z-index: 100;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cover-image {
    margin: 24px auto 0;
    position: static;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cover-image img:first-child {
    display: none;
  }
}

.cxl-insurance .p-home-cover-image img:last-child {
  display: none;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cover-image img:last-child {
    display: block;
  }
}

.cxl-insurance .p-home-compensation {
  padding: 40px 24px 80px 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-compensation {
    padding: 35px 24px;
  }
}

.cxl-insurance .p-home-compensation.p-home-background::after {
  background-color: #F5F5F5;
  content: "";
  height: 70%;
  left: 0;
  position: absolute;
  top: 125px;
  -webkit-transform: skewY(-5deg);
          transform: skewY(-5deg);
  width: 100%;
  z-index: 1;
}

.cxl-insurance .p-home-compensation .p-home-card-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-compensation .p-home-card-wrap {
    display: block;
  }
}

.cxl-insurance .p-home-compensation .p-home-card-wrap > * {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-compensation .p-home-card-wrap > * {
    display: block;
  }
}

.cxl-insurance .p-home-compensation .p-home-card-wrap .c-card {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  width: calc(100% / 3 - 12px);
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-compensation .p-home-card-wrap .c-card {
    width: 100%;
  }
}

.cxl-insurance .p-home-compensation .p-home-card-wrap .c-card:not(:last-child) {
  margin-right: 15px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-compensation .p-home-card-wrap .c-card:not(:last-child) {
    margin-bottom: 30px;
    margin-right: 0;
  }
}

.cxl-insurance .p-home-product-summary h4 {
  color: #333;
  font-size: 26px;
  font-weight: 600;
  margin-top: 40px;
  margin-bottom: 24px;
  padding: 8 0px;
  text-align: left;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary h4 {
    margin-bottom: 27px;
    max-width: 100%;
  }
}

.cxl-insurance .p-home-product-summary p, .cxl-insurance .p-home-product-summary li {
  color: #333;
  font-size: 16px;
  line-height: 1.7;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary p, .cxl-insurance .p-home-product-summary li {
    font-size: 14px;
  }
}

.cxl-insurance .p-home-product-summary ul {
  padding-left: 20px;
}

.cxl-insurance .p-home-product-summary ul li {
  list-style-type: disc;
  margin-bottom: 16px;
}

.cxl-insurance .p-home-product-summary p:not(:last-child), .cxl-insurance .p-home-product-summary ul:not(:last-child), .cxl-insurance .p-home-product-summary table:not(:last-child) {
  margin-bottom: 15px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary table, .cxl-insurance .p-home-product-summary tbody, .cxl-insurance .p-home-product-summary tr, .cxl-insurance .p-home-product-summary th, .cxl-insurance .p-home-product-summary td {
    display: block;
  }
}

.cxl-insurance .p-home-product-summary table {
  width: 100%;
}

.cxl-insurance .p-home-product-summary table th, .cxl-insurance .p-home-product-summary table td {
  border-top: 1px solid #c6c6c6;
  border-bottom: 1px solid #c6c6c6;
  color: #333;
  line-height: 1.4;
}

.cxl-insurance .p-home-product-summary table th {
  background-color: #F5F5F5;
  padding: 20px 38px 11px 20px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary table th {
    padding: 20px 38px 20px 20px;
    font-size: 16px;
  }
}

.cxl-insurance .p-home-product-summary table td {
  padding: 20px;
  border-bottom: none;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary table td {
    border-top: none;
    padding: 20px 0;
  }
}

.cxl-insurance .p-home-product-summary table tr:last-child td {
  border-bottom: 1px solid #c6c6c6;
}

.cxl-insurance .p-home-product-summary .c-product-summary:not(:last-child) {
  margin-bottom: 33px;
}

.cxl-insurance .p-home-product-summary .c-product-summary .u-kome {
  margin-bottom: 0;
  padding: 0 20px;
  color: #757575;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-product-summary .c-product-summary .u-kome {
    padding: 0;
  }
}

.cxl-insurance .p-home-step.p-home-background::after {
  background-color: #F5F5F5;
  content: "";
  height: 95%;
  left: 0;
  position: absolute;
  top: 125px;
  -webkit-transform: skewY(-5deg);
          transform: skewY(-5deg);
  width: 100%;
  z-index: 1;
}

.cxl-insurance .summary-annoutation {
  color: #757575 !important;
}

.cxl-insurance .p-home-question {
  padding: 160px 0 80px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-question {
    padding: 35px 24px 40px;
  }
}

.cxl-insurance .p-home-question .c-accordion:not(:last-child) {
  margin-bottom: 16px;
}

.cxl-insurance * {
  font-size: 100%;
}

.cxl-insurance .mb0 {
  margin-bottom: 0;
}

.cxl-insurance .caution {
  text-indent: -4em;
  padding-left: 4em;
}

.cxl-insurance .c-banner-right p a {
  text-decoration: underline;
  font-size: 14px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-banner-right .sp_left {
    text-align: center;
    font-size: 12px;
  }
}

.cxl-insurance .icon-list-on-card {
  background-color: #fff;
  border-radius: 19px;
  padding: 20px 15px;
  font-size: 16px;
}

@media print, screen and (min-width: 788px) {
  .cxl-insurance .icon-list-on-card {
    background: 0;
    font-size: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .cxl-insurance .icon-list-on-card .card-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .cxl-insurance .icon-list-on-card .card-item:not(:last-child) {
    margin-bottom: 25px;
  }
}

.cxl-insurance .icon-list-on-card .card-item .item-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 0;
}

@media print, screen and (min-width: 768px) {
  .cxl-insurance .icon-list-on-card .card-item .item-content {
    background: #fff;
    display: block;
    text-align: center;
    width: 30%;
    max-width: 300px;
    padding: 33px 15px 18px;
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
    border-radius: 4px;
  }
  .cxl-insurance .icon-list-on-card .card-item .item-content:not(:last-child) {
    margin-right: 25px;
  }
}

.cxl-insurance .icon-list-on-card .card-item .item-content img {
  width: 25px;
  height: auto;
}

@media print, screen and (min-width: 768px) {
  .cxl-insurance .icon-list-on-card .card-item .item-content img {
    display: block;
    margin: auto;
    width: 50px;
  }
}

.cxl-insurance .icon-list-on-card .card-item .item-content .list-text {
  margin-left: 10px;
}

@media print, screen and (min-width: 768px) {
  .cxl-insurance .icon-list-on-card .card-item .item-content .list-text {
    display: block;
    margin: 40px auto 0;
  }
}

.cxl-insurance .p-home-cancel {
  padding: 140px 0 0;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel {
    padding: 35px 24px 0;
  }
}

.cxl-insurance .p-home-cancel-caution {
  color: #333;
  font-size: 16px;
  margin-top: 45px;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-caution {
    font-size: 14.22px;
    margin-top: 35px;
  }
}

.cxl-insurance .p-home-cancel-caution a {
  display: inline-block;
  text-decoration: underline;
}

.cxl-insurance .p-home-cancel-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 112px auto 0;
  width: 100%;
  max-width: 700px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text {
    display: block;
    margin: 20px auto 0;
    max-width: 100%;
  }
}

.cxl-insurance .p-home-cancel-text p {
  color: #333;
  font-size: 20.25px;
  font-weight: 600;
  line-height: 1.4;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text p {
    font-size: 18.22px;
    line-height: 1.5;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text p br {
    display: none;
  }
}

.cxl-insurance .p-home-cancel-text-icon {
  margin-right: 18px;
  width: 47px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .p-home-cancel-text-icon {
    margin: 0 auto 22px;
    width: 44px;
  }
}

.cxl-insurance .c-block-list {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cxl-insurance .c-block-list li {
  border: 2px solid #333;
  border-radius: 2px;
  color: #333;
  font-size: 17.07px;
  max-width: 300px;
  padding: 23px 10px;
  text-align: center;
  width: calc(100% / 3 - 24px);
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li {
    margin-bottom: 16px;
    max-width: 100%;
    width: 100%;
  }
}

.cxl-insurance .c-block-list li:not(:nth-child(3n)) {
  margin-right: 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:not(:nth-child(3n)) {
    margin: 0 0 16px;
  }
}

.cxl-insurance .c-block-list li:nth-child(-n+3) {
  margin-bottom: 14px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:nth-child(-n+3) {
    margin: 0 0 16px;
  }
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .c-block-list li:last-child {
    margin: 0;
  }
}

.cxl-insurance .kokuryo-summary {
  font-size: 16px;
}

.cxl-insurance .kokuryo-contents h4 {
  color: #333;
  font-size: 26px;
  font-weight: 600;
  margin-top: 40px;
  margin-bottom: 24px;
  padding: 0px;
  text-align: left;
}

.cxl-insurance .kokuryo-plan-name {
  font-size: 20px;
}

.cxl-insurance .kokuryo-plan .circle {
  position: relative;
  display: inline-block;
  width: auto;
  height: auto;
  border-radius: 0;
  background-color: transparent;
  text-align: center;
  line-height: normal;
  margin: 0 auto;
}

.cxl-insurance .kokuryo-contents ul li {
  font-size: 16px;
}

.cxl-insurance .p-home-cancel-caution {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 24px;
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .item-content .pc-view {
    display: none;
  }
  .cxl-insurance .kokuryo-summary,
  .cxl-insurance .kokuryo-product-summary {
    font-size: 14px;
  }
  .cxl-insurance .kokuryo-product-summary {
    max-width: 100%;
  }
  .cxl-insurance .p-home-cancel-text-icon {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  .cxl-insurance .h2-landing-page h2 span {
    font-size: 28px;
  }
  .cxl-insurance .kokuryo-contents ul li {
    font-size: 14px;
  }
  .cxl-insurance .kokuryo-plan th {
    height: auto !important;
  }
  .cxl-insurance .kokuryo-plan span {
    font-size: 14px !important;
  }
  .cxl-insurance .kokuryo-plan-name {
    font-size: 18px !important;
  }
  .cxl-insurance .kokuryo-plan-plice strong {
    font-size: 24px;
  }
  .cxl-insurance .hs_cos_wrapper_type_rich_text .p-home-cancel-text p {
    text-align: left;
    font-size: 16px;
  }
  .cxl-insurance .hs_cos_wrapper_type_rich_text .p-home-cancel-text-icon {
    width: 25px;
    margin-right: 10px;
  }
  .cxl-insurance .c-banner-left-title {
    height: auto;
  }
}

@media print, screen and (max-width: 360px) {
  .cxl-insurance .l-wrap a {
    font-size: 14px;
  }
  .cxl-insurance .c-main-visual-main-text p span {
    font-size: 15px;
  }
}

.cxl-insurance .lead-text {
  max-width: 910px;
  margin: 0 auto;
  font-size: 16px;
  text-align: center;
}

.cxl-insurance .micromodal {
  font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif;
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cxl-insurance .micromodal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1000;
}

.cxl-insurance .micromodal__container {
  background-color: #fff;
  padding: 30px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .cxl-insurance .micromodal__container {
    width: 90vw;
    padding: 10px 15px;
  }
}

@media print, screen and (min-width: 768px) {
  .cxl-insurance .micromodal__container {
    width: 42vw;
  }
}

.cxl-insurance .micromodal__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 10px;
}

.cxl-insurance .micromodal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.25;
  color: #313131;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: auto;
}

.cxl-insurance .micromodal__close {
  background: transparent;
  margin-bottom: 10px;
  border: 0;
  font-size: 16px;
  cursor: pointer;
}

.cxl-insurance .micromodal__header .micromodal__close::before {
  content: "\2715";
}

.cxl-insurance .micromodal__content {
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
}

.cxl-insurance .micromodal__btn {
  font-size: .875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: .25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: -webkit-transform .25s ease-out;
  -webkit-transition: -webkit-transform .25s ease-out;
  transition: transform .25s ease-out;
  transition: transform .25s ease-out, -webkit-transform .25s ease-out;
  transition: transform .25s ease-out,-webkit-transform .25s ease-out;
}

.cxl-insurance .micromodal__btn:focus, .cxl-insurance .micromodal__btn:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.cxl-insurance .micromodal__btn-primary {
  background-color: #00449e;
  color: #fff;
}

@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}

@keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}

.cxl-insurance .micromodal-slide {
  display: none;
}

.cxl-insurance .micromodal-slide.is-open {
  display: block;
}

.cxl-insurance .micromodal-slide[aria-hidden="false"] .modal__overlay {
  -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.cxl-insurance .micromodal-slide[aria-hidden="false"] .modal__container {
  -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.cxl-insurance .micromodal-slide[aria-hidden="true"] .modal__overlay {
  -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.cxl-insurance .micromodal-slide[aria-hidden="true"] .modal__container {
  -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.cxl-insurance .micromodal-slide .micromodal__container,
.cxl-insurance .micromodal-slide .micromodal__overlay {
  will-change: transform;
}

.cxl-insurance .product-detail-modal-caution {
  margin-top: 30px;
  margin-bottom: 25px;
}

.cxl-insurance .product-detail-modal-caution .title {
  width: 100%;
  background-color: #004499;
  border-radius: 2px;
  color: #FFF;
  font-size: 16px;
  margin-bottom: 23px;
  padding: 8px 5px;
  text-align: center;
}

.cxl-insurance .product-detail-modal-caution ul {
  list-style: disc;
  padding-left: 20px;
}

.cxl-insurance .sp {
  display: none;
}

.cxl-insurance .petname {
  line-height: 0.5;
}

.cxl-insurance .key-message {
  text-align: center;
}

.cxl-insurance .c-block-list li {
  padding: 10px !important;
}

.cxl-insurance .c-card-secondary .c-card-contents {
  padding: 24px 5px !important;
}

.cxl-insurance .c-card-secondary .c-card-icon-list {
  -webkit-flex-wrap: initial !important;
      -ms-flex-wrap: initial !important;
          flex-wrap: initial !important;
}

.cxl-insurance .accordion-cards-wrapper {
  margin: 0 auto;
  max-width: 948px;
  padding: 0 24px;
  position: relative;
  z-index: 200;
}

.cxl-insurance .accordion-cards-wrapper .accordion-card {
  border-radius: 0px !important;
}

.cxl-insurance .accordion-cards-wrapper .accordion-card .card-key-visual img {
  border-radius: 0px !important;
}

.cxl-insurance 　.p-home-product-summary table td {
  padding: 10px !important;
}

.cxl-insurance .c-card-secondary .c-card-icon-list {
  -webkit-flex-wrap: initial !important;
      -ms-flex-wrap: initial !important;
          flex-wrap: initial !important;
}

.cxl-insurance #kokuryotext {
  margin: 15px auto;
}

.cxl-insurance h2 {
  z-index: 500;
}

.cxl-insurance .kokuryo-product-summary {
  background-color: #004499;
  border-radius: 2px;
  color: #FFF;
  font-size: 16px;
  margin-bottom: 23px;
  max-width: 240px;
  padding: 8px 5px;
  text-align: center;
}

.cxl-insurance .petname-explain {
  background-color: #004499;
}

.cxl-insurance .p-home-section .p-home-background .p-home-step {
  padding-bottom: 0;
}

.cxl-insurance .last-summary-content {
  padding: 0 24px;
}

.cxl-insurance a {
  outline: none;
}

.cxl-insurance a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
}

.cxl-insurance .outline-cancel {
  margin: 0 auto;
  width: 80%;
  font-weight: bold;
  font-size: 24px;
  text-decoration: none;
  display: block;
  text-align: center;
  padding: 10px 0;
  color: #fff;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, right bottom, from(#004499), to(#6e4093));
  background: -webkit-linear-gradient(left top, #004499, #6e4093);
  background: linear-gradient(to right bottom, #004499, #6e4093);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4297ac', endColorstr='#6c4193',GradientType=1 );
}

@media print, screen and (max-width: 768px) {
  .cxl-insurance .sp {
    display: inline-block;
  }
  .cxl-insurance .pc {
    display: none;
  }
  .cxl-insurance .c-main-visual-main-text p {
    padding-left: 0vw;
    top: 0;
  }
  .cxl-insurance .c-main-visual-main-text span .petname {
    top: 12% !important;
  }
  .cxl-insurance .c-main-visual-main-text p::after {
    top: 55%;
  }
  .cxl-insurance .petname .pet-name {
    font-size: 6.5vw !important;
  }
  .cxl-insurance .petname .key-message {
    font-size: 14px !important;
  }
  .cxl-insurance .div-grey-sp {
    background: #f5f5f5;
  }
  .cxl-insurance .row-number-9 .icon-list-on-card {
    font-size: 24px;
    padding: 20px 35px;
  }
  .cxl-insurance .list-card-title {
    background: #f5f5f5;
  }
  .cxl-insurance #hs_cos_wrapper_widget_1635386124294 {
    background: #f5f5f5;
    padding: 5%;
  }
  .cxl-insurance .c-card-secondary .c-card-icon-list p {
    font-size: 12px !important;
  }
  .cxl-insurance .kokuryo-contents {
    padding: 0 15px !important;
  }
  .cxl-insurance .kokuryo-contents li {
    font-size: 14px;
  }
  .cxl-insurance .campaign-button {
    z-index: 900;
  }
  .cxl-insurance .kokuryo-summary {
    font-size: 14px;
    padding: 0 0 10px 0;
  }
  .cxl-insurance .kokuryo-product-summary {
    max-width: 100%;
  }
  .cxl-insurance .kokuryo-contents p:last-child {
    font-size: 12px;
    text-align: left !important;
  }
  .cxl-insurance .kokuryo-contents {
    font-size: 14px !important;
  }
  .cxl-insurance #kokuryotext {
    padding: 10px 35px;
  }
  .cxl-insurance .outline-cancel {
    font-size: 16px;
    width: 95%;
  }
  .cxl-insurance .acd-content p {
    font-size: 16px !important;
  }
  .cxl-insurance .acd-check {
    display: none;
  }
  .cxl-insurance .kokuryo-plan span {
    font-size: 14px !important;
  }
  .cxl-insurance .kokuryo-plan-name {
    font-size: 18px;
  }
  .cxl-insurance .kokuryo-plan-plice strong {
    font-size: 26px;
  }
  .cxl-insurance .c-btn {
    padding: 7px 40px;
  }
  .cxl-insurance .last-summary-content {
    font-size: 12px !important;
    padding: 0 24px;
  }
  .cxl-insurance .c-banner-left-title {
    font-size: 25px;
  }
  .cxl-insurance .petname-explain {
    padding: 0 24px;
  }
  .cxl-insurance .last-summary-content {
    padding: 0 24px;
  }
  .cxl-insurance .h2-landing-page {
    font-size: 24px;
  }
  .cxl-insurance .sj-contact {
    font-size: 12px;
  }
}

@media print, screen and (min-width: 769px) {
  .cxl-insurance {
    /*さまざまな国内旅行予約、国内航空券予約に対応！部分のみシンプルカード*/
    /*さまざまな国内旅行予約、国内航空券予約に対応！部分のみシンプルカード　ここまで*/
  }
  .cxl-insurance .row-number-17 .icon-list-on-card .card-item .item-content {
    border: 2px solid #333333;
    -webkit-box-shadow: none;
            box-shadow: none;
    background: none;
    padding: 18px 15px;
  }
  .cxl-insurance .row-number-17 .icon-list-on-card .card-item .item-content .list-text {
    margin: 0;
    font-size: 18px;
  }
  .cxl-insurance .row-number-17 .icon-list-on-card .card-item .item-content img {
    display: none !important;
  }
  .cxl-insurance .p-home-product-summary table th {
    padding: 11px 25px;
    text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
  }
  .cxl-insurance .p-home-product-summary table th .ratio {
    font-size: 30px;
  }
  .cxl-insurance .accordion-cards-wrapper {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .cxl-insurance .accordion-cards-wrapper .accordion-card {
    width: 32%;
    margin: 0 !important;
  }
  .cxl-insurance .list-card-title {
    z-index: 200;
    position: relative;
  }
  .cxl-insurance #hs_cos_wrapper_widget_1635386124294 {
    position: relative;
  }
  .cxl-insurance #hs_cos_wrapper_widget_1635386124294::after {
    background-color: #f5f5f5;
    content: "";
    height: 230%;
    left: 0;
    position: absolute;
    top: -130px;
    -webkit-transform: skewY(-5deg);
            transform: skewY(-5deg);
    width: 100%;
    z-index: 1;
  }
  .cxl-insurance .icon-list-on-card {
    z-index: 200;
    position: relative;
  }
  .cxl-insurance .campaign-button {
    border-radius: 30px 5px;
    top: initial;
    right: 1%;
    bottom: 5%;
    z-index: 900;
  }
}

.cxl-insurance .btn-modal-1 {
  cursor: pointer;
}

.cxl-insurance .caution-text {
  background: #f5f5f5;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: fixed;
  top: 0;
  left: 0;
  font-size: 16px;
  z-index: 10000;
  pointer-events: none;
}
.cxl-insurance .caution-text > div {
  margin-top: -40px;
}
.cxl-insurance .caution-text img {
    height: 26px;
}

/*
  au-smartpassページ 新デザインに変更 2023/9/21リリース
*/
.au-smartpass .wrap {
  max-width: 1120px;
}
.au-smartpass .wrap2 {
  max-width: 1120px;
  margin: 0 auto;
}
.au-smartpass .services .bd-gray {
  padding: 40px 0 0;
  border: #C6C6C6 1px solid;
}
.au-smartpass h2 {
  margin-bottom: 0;
}
.au-smartpass .border-orange {
  border-top: 1px solid #FF503E;
  width: 40px;
  margin: 8px auto 32px;
}

.au-smartpass .kv-img {
  background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-blue.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 520px;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 40px;
}
.au-smartpass .kv-img::before {
  content: "";
  display: inline-block;
  background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-left.png);
  background-size: cover;
  -webkit-filter: none;
  filter: none;
  width: 454px;
  height: 520px;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: initial;
}
.au-smartpass .kv-img::after {
  content: "";
  display: inline-block;
  background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-right.png);
  background-size: cover;
  -webkit-filter: none;
  filter: none;
  width: 320px;
  height: 520px;
  max-height: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-transform: initial;
}
.au-smartpass .kv-img .text {
  /* position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 700px; */
  color: #fff;
  text-align: center;
  z-index: 1;
}
/* .au-smartpass .kv-img .text p {
  text-shadow: 0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64,0 0 2px #0F0A64;
} */
.au-smartpass .kv-img .text .font-xxxx-large {
  color: #fff;
  text-align: center;
  /* text-shadow: 1px 1px 1px #000; */
}
.au-smartpass .kv-img .text img {
  max-width: 633px;
  margin: 0 auto;
  margin-bottom: 40px;
}
.au-smartpass .kv-img .text .text-main {
  font-size: 5.6rem;
  font-weight: bold;
  color: #fff;
  line-height: 7.2rem;
  letter-spacing: 3px;
  text-align: center;
  margin-bottom: 40px;
}
.au-smartpass .kv-img .text .text-main > span {
  font-size: 3.6rem;
}

.au-smartpass .kv-img .text .text-sub {
  font-size: 3.2rem;
  color: #fff;
  text-shadow: 1px 1px 1px #000;
  font-weight: 700;
  padding: 0 16px;
  background-color: rgba(255, 255, 255, .3);
  border-radius: 48px;
}

.au-smartpass .kv-img .text .btn-orange,
.au-smartpass .btn-footer.btn-orange {
  width: 300px;
  height: 56px;
  background-color: #EB5505;
  border: none;
  margin-bottom: 16px;
}
.au-smartpass .btn-footer.btn-orange {
  max-width: 100%;
}

.au-smartpass .lead {
  margin-bottom: 80px;
}
.au-smartpass .lead .c-card-icon-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: space-between;
  -webkit-justify-content: space-between;
      -ms-flex-pack: space-between;
          justify-content: flex-start;
}
.au-smartpass .c-card-icon-list li {
  text-align: center;
}
.au-smartpass .c-card-icon-list .icon-list-01 {
  width: 33.5%;
  margin-right: 40px;
}
.au-smartpass .c-card-icon-list .icon-list-02 {
  width: 34.3%;
  margin-right: 40px;
}
.au-smartpass .c-card-icon-list .icon-list-03 {
  width: auto;
}
.au-smartpass .c-card-icon-list .lead-icon {
  display: flex;
  margin: 0 auto 24px;
}
.au-smartpass .c-card-icon-list .lead-icon-01 {
  width: 230px;
}
.au-smartpass .c-card-icon-list .lead-icon-02 {
  width: 216px;
}
.au-smartpass .c-card-icon-list .lead-icon-03 {
  width: 270px;
}
.au-smartpass .c-card-icon-list .lead-icon img {
  width: 100%;
}
.au-smartpass .c-card-icon-list .lead-text {
  color: #333;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 4.4rem;
  text-align: center;
}
.au-smartpass .c-card-icon-list .lead-sub-text {
  font-size: 1.2rem;
  color: #757575;
  letter-spacing: 0;
}

.au-smartpass .campaign-detail {
  border: 1px solid #c6c6c6;
  background-color: #fff;
  margin: 0 auto;
  padding: 40px 40px 24px;
}
.au-smartpass .campaign-detail tr {
  display: flex;
  margin-bottom: 16px;
}
.au-smartpass .campaign-detail th {
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-right: 16px;
}
.au-smartpass .campaign-detail td {
  display: flex;
  align-items: center;
}
.au-smartpass .campaign-detail .heading {
  width: 200px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 1px;
  border: solid 3px #0F0A64;
  border-radius: 20px;
  background: #0F0A64;
  line-height: 1;
  font-weight: 500;
  font-size: 1.4rem;
  color: #fff;
}

.au-smartpass .campaign-detail td p {
  font-weight: 400;
  font-size: 1.6rem;
  margin-bottom: 0;
}

.au-smartpass .head img {
  height: auto;
}

.au-smartpass .description {
  width: 100%;
  height: auto;
  padding: 40px;
  margin-bottom: 80px;
  background: url(/stcontents/img/sub-page/lp/au-smartpass/bg-benefits.jpg) no-repeat 50% 50%;
  background-size: cover;
  text-align: center;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  color: #fff;
}

.au-smartpass .description:nth-of-type(2n) {
  background: url(/stcontents/img/sub-page/lp/au-smartpass/bg-benefits-02.jpg) no-repeat 50% 50%;
  background-size: cover;
}

.au-smartpass .description .inner-box {
  width: 100%;
  max-width: 960px;
  height: auto;
  background-color: rgba(0, 0, 0, 0.6);
  padding: 24px;
  margin: 0 auto;
}

.au-smartpass .description p {
  letter-spacing: 0;
}

.au-smartpass .coupon-cp {
  border: 4px solid #E1E9F8;
  margin: 0 auto 80px;
  padding: 24px 32px;
}
.au-smartpass .coupon-cp .content-wrap {
  max-width: 800px;
  margin: 0 auto;
}
.au-smartpass .coupon-cp .regular {
  font-size: 20px;
  font-weight: 400;
}
.au-smartpass .coupon-cp h2 {
  font-size: 24px;
  margin-bottom: 40px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
.au-smartpass .coupon-cp h2 span {
  font-size: 40px;
}
.au-smartpass .coupon-cp .date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  margin-bottom: 16px;
}
.au-smartpass .coupon-cp .date dt {
  width: 211px;
  text-align: center;
  background-color: #E1E9F8;
  padding: 4px 16px;
  margin-right: 16px;
  border-radius: 100px;
}
.au-smartpass .coupon-cp .date dd {
  width: calc(100% - 227px);
  text-align: left;
}
.au-smartpass .coupon-cp .note {
  border-top: 1px solid #757575;
  padding-top: 16px;
}
.au-smartpass .coupon-cp .howto ol {
  list-style: decimal;
  padding-left: 1.4em;
}
.au-smartpass ul.note {
  width: 100%;
  color: #757575;
  font-size: 12px;
  /* margin-bottom: 40px; */
}
.au-smartpass ul.note li {
  padding-left: 1em;
  text-indent: -1em;
}
.au-smartpass ul.note li::before {
  content: "※";
}
.au-smartpass .coupon-point {
  text-align: center;
  margin-bottom: 160px;
}
.au-smartpass .coupon-point .figure img {
  width: 100%;
}

.au-smartpass .benefits-hotel-list {
  padding: 24px 40px 40px;
}
.au-smartpass .hotel-area {
  display: flex;
  justify-content: space-between;
  margin: 0 -16px;
}
.au-smartpass .benefits-hotel-list .hotel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  width: calc(100% / 3);
  padding: 0 16px;
  margin-bottom: 0;
}
.au-smartpass .benefits-hotel-list .hotel:last-of-type {
  margin-bottom: 0;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-photo {
  width: auto;
  height: 200px;
  overflow: hidden;
  margin-right: 0;
  margin-bottom: 8px;
  position: relative;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-photo::before {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  content: "";
  width: 100%;
  height: 50%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-photo-text {
  position: absolute;
  bottom: 8px;
  left: 16px;
  right: 16px;
  color: #fff;
  text-shadow: 1px 1px 1px #000000;
  z-index: 2;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-text {
  font-size: 1.6rem;
  width: auto;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-text .attention {
  padding-left: 1em;
  text-indent: -1em;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-text .attention::before {
  content: "※";
}
.au-smartpass .benefits-hotel-list .hotel .hotel-name {
  font-weight: bold;
  font-size: 1.6rem;
  color: #fff;
  text-shadow: 1px 1px 1px #000000;
  margin-bottom: 0;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-location {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0;
  font-size: 1.2rem;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-location img {
  width: 10px;
  margin-right: 4px;
}
.au-smartpass .benefits-hotel-list .hotel .hotel-location p {
  margin-bottom: 0;
}

.au-smartpass .services .col3-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: center;
      -ms-flex-pack: justify;
          justify-content: center;
  margin-bottom: 32px;
}

.au-smartpass .services .col3-box > div {
  width: 30%;
}

.au-smartpass .services .col3-box > div .icon {
  width: 100%;
  height: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.au-smartpass .services .col3-box > div .icon img {
  height: 100%;
}
.au-smartpass .services .col3-box > div .text {
  background-color: #fff;
  padding: 16px 16px 0;
  /* font-weight: bold; */
  font-size: 1.6rem;
}
.au-smartpass .services .col3-box > div > div {
  text-align: center;
}

.au-smartpass .services .copyright {
  font-weight: bold;
  font-size: 10px;
  margin-bottom: 0;
}
.au-smartpass .services .copyright {
  font-weight: bold;
  font-size: 1rem;
  color: #757575;
  margin-top: 4px;
  margin-bottom: 0;
}
.au-smartpass .services .bg-gray {
  display: flex;
  align-items: center;
  border: #C6C6C6;
  padding: 14px;
}
.au-smartpass .services .bg-gray ul.note {
  color: #333333;
}
.au-smartpass .services .bg-gray ul.note li {
  display: inline;
  padding-left: 0;
}

.au-smartpass .benefits .step {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}
.au-smartpass .step .step-img {
  /* margin-bottom: 24px; */
}
.au-smartpass .step .step-img-01, .au-smartpass .step .step-img-02 {
  /* width: 144px; */
}
.au-smartpass .step .step-img-03 {
  /* width: 166px; */
}
.au-smartpass .step .step-img img {
  display: block;
  /* width: 100%; */
}
.au-smartpass .benefits .step .step-box {
  width: calc(100% / 4);
  height: auto;
  /* padding: 40px 24px 24px; */
  text-align: center;
  position: relative;
}

.au-smartpass .benefits .step .step-box .step-head {
  background-color: #4F68C2;
  color: #FFFFFF;
  clip-path: polygon(calc(100% - 15px) 0%, 100% 50%, calc(100% - 15px) 100%, 0% 100%, calc(0% + 15px) 50%, 0% 0%);
}

.au-smartpass .benefits .step .step-box:first-child .step-head {
  clip-path: polygon(0% 0%, calc(100% - 15px) 0%, 100% 50%, calc(100% - 15px) 100%, 0% 100%);
}

.au-smartpass .benefits .step .step-box:last-child .step-head {
  clip-path: polygon(100% 0%, 100% 50%, 100% 100%, 0% 100%, calc(0% + 15px) 50%, 0% 0%);
}

.au-smartpass .benefits .step .step-inner {
  padding: 16px 8px 0;
  display: flex;
  height: 200px;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
}

.au-smartpass .benefits .step .btn-wrap {
  padding: 0 8px;
}

.au-smartpass .benefits .step .btn {
  width: 100%;
}

.au-smartpass .benefits .step .step-box .coupon-image {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8px;
}
.au-smartpass .benefits .step .step-box .coupon-image img {
  margin: 4px;
}
.au-smartpass .benefits .step .step-box .text-link {
  margin-top: 24px;
}
.au-smartpass .benefits .step .step-box .copyright {
  font-family: monospace, sans-serif;
  font-size: 10px;
}
.au-smartpass .benefits .step .number {
  position: absolute;
  top: -48px;
  left: 8px;
  line-height: 1;
  font-weight: bold;
  font-size: 100px;
  color: #E1E9F8;
}
.au-smartpass .benefits .step img {
  margin: 0;
}
.au-smartpass .benefits .step .step-text {
  font-size: 1.6rem;
  margin-top: 0;
}
.au-smartpass .benefits .step .step-arrow {
  display: flex;
}
.au-smartpass .coupon {
  padding: 80px 0;
  background: url(/stcontents/img/sub-page/lp/au-smartpass/now-bg.jpg);
  background-size: cover;
  margin-bottom: 80px;
}
.au-smartpass .coupon .box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}
.au-smartpass .coupon .box > div {
  font-weight: bold;
}
.au-smartpass .coupon .box .left {
  width: 40%;
  background: #fff;
  letter-spacing: 1px;
  font-size: 28px;
  color: #0A0F64;
  padding: 50px 50px;
}
.au-smartpass .coupon .box .left p {
  text-align: center;
  margin: 40px 0 0;
  line-height: 1;
  font-weight: bold;
}
.au-smartpass .coupon .box .right {
  width: 60%;
  padding: 20px 30px 12px;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
  letter-spacing: 1px;
  font-size: 18px;
  color: #000;
}
.au-smartpass .coupon .box .right p.explain {
  font-weight: 400;
}
.au-smartpass .coupon .box .right p span {
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 8px;
  font-size: 24px;
}

/* 下部固定ボタン */
.au-smartpass .footer-fix-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  bottom: 0;
  width: 100%;
  text-align: center;
  background: #fff;
  border: 1px solid #ccc;
  border-width: 1px 0px 0px 0px;
  z-index: 2;
}
.au-smartpass .footer-fix-btn {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.au-smartpass .footer-fix-btn.active {
  padding: 16px 0;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.au-smartpass .footer-fix-btn .btn-text {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: auto;
  display: flex;
  align-items: center;
}
.au-smartpass .footer-fix-btn .btn {
  width: 300px;
  height: 56px;
  font-size: 1.6rem;
  margin-bottom: 16px;
}
.au-smartpass .footer-fix-btn .btn-orange {
  background-color: #EB5505;
  border: none;
}
.au-smartpass .footer-fix-btn .btn-under-text {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.8rem;
  color: #757575;
  margin-top: 6px;
  margin-bottom: 8px;
}
.au-smartpass .global-footer {
  padding-bottom: 97px;
}

.au-smartpass .benefits-list > li:not(:last-child) {
  margin-bottom: 40px;
}

.au-smartpass .benefits-list-label {
  text-align: center;
}

.au-smartpass .benefits-list-label span {
  padding: 0 16px;
  background-color: #EB5505;
  border-radius: 32px;
  font-size: 1.6rem;
  line-height: 2.8rem;
  color: #FFFFFF;
  font-weight: bold;
  display: inline-block;
  margin-bottom: 8px;
}

.au-smartpass .img-coupon {
  display: block;
  margin: 0 auto;
}

.au-smartpass .img-santaro {
  width: 200px;
  height: 198px;
  margin: 0 auto;
  display: block;
}

.au-smartpass .benefits-planList-wrap {
  padding: 24px 40px 40px;
}

.au-smartpass .planList {
  display: flex;
  margin: 0 -16px;
}

.au-smartpass .planList > li {
  width: calc(100% / 3);
  padding: 0 16px;
}

.au-smartpass .plan {
  height: 260px;
  position: relative;
}

.au-smartpass .plan::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient( rgba(0, 0, 0, 0) 30%, #000 80%);
  opacity: .7;
}

.au-smartpass .plan-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.au-smartpass .plan-detail {
  position: absolute;
  bottom: 16px;
  left: 16px;
  right: 16px;
}

.au-smartpass .plan-detail .info {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.au-smartpass .plan-detail .grade {
  display: flex;
  margin-right: 4px;
}

.au-smartpass .plan-detail .grade img {
  height: 20px;
  display: block;
}

.au-smartpass .plan-detail .grade img:not(:last-child) {
  margin-right: 4px;
}

.au-smartpass .plan-detail .name {
  font-size: 1.6rem;
  font-weight: bold;
  text-shadow: 1px 1px 1px #000;
  color: #FFFFFF;
  line-height: 1.6;
}

.au-smartpass .plan-detail .address {
  font-size: 1.2rem;
  text-shadow: 1px 1px 1px #000;
  color: #FFFFFF;
}

.au-smartpass .footer-fix-btn div.btn-text p {
  font-size: 1.6rem;
  margin-right: 16px;
  font-weight: 900;
}

.campaigns.au-smartpass .kv-img .btn-coupon-get {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 76px);
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
  .au-smartpass .wrap2 {
    max-width: 960px;
  }
  .au-smartpass .lead .wrap2,
  .au-smartpass .campaign .wrap2,
  .au-smartpass .services .wrap2,
  .au-smartpass .benefits .wrap2 {
    padding: 0 16px;
  }

  .au-smartpass .lead {
    margin-bottom: 40px;
  }
  .au-smartpass .lead .c-card-icon-list {
    justify-content: space-between;
    margin: 0 auto;
  }
  .au-smartpass .lead .c-card-icon-list li {
    margin-right: 0px;
  }
  .au-smartpass .c-card-icon-list .icon-list-01 {
    width: 290px;
  }
  .au-smartpass .c-card-icon-list .icon-list-02 {
    width: 250px;
  }
  .au-smartpass .c-card-icon-list .icon-list-03 {
    width: auto;
  }
  .au-smartpass .c-card-icon-list .lead-text {
    font-size: 1.8rem;
    line-height: 3.6rem;
  }

  .au-smartpass .services {
    margin-bottom: 40px;
  }
  .au-smartpass .services .col3-box > div {
    width: 100%;
    margin-bottom: 0;
  }
  .au-smartpass .services .col3-box > div:last-child {
    margin-bottom: 0;
  }
  .au-smartpass .benefits .step {
    display: block;
  }
  .au-smartpass .benefits .step .step-box {
    width: 100%;
    height: auto;
    margin-top: 0;
  }
  .au-smartpass .benefits .step .step-arrow {
    display: flex;
    justify-content: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .au-smartpass .benefits .step .step-arrow img {
    transform: rotate(90deg);
  }

  .au-smartpass .coupon .box .left {
    padding: 20px;
  }
  .au-smartpass .coupon .box .left p {
    margin-top: 88px;
  }
  .au-smartpass .description {
    padding: 40px 16px;
  }
  .au-smartpass .coupon-cp {
    margin: 0 16px 80px;
  }
}

@media screen and (max-width: 767px) {
  .au-smartpass .wrap2 {
    padding: 0 16px;
  }
  .au-smartpass .kv-img {
    background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-blue-sp.jpg);
    height: 560px;
    overflow: hidden;
    padding-bottom: 100px;
  }
  .au-smartpass .kv-img::before {
    background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-left-sp.png);
    width: 375px;
    height: 266px;
    max-width: 100%;
    max-height: 100%;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
  }
  .au-smartpass .kv-img::after {
    background: url(/stcontents/img/sub-page/lp/au-smartpass/kv-bg-right-sp.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 375px;
    height: 118px;
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .au-smartpass .kv-img .text {
    padding: 0 16px;
    width: 100%;
    text-align: center;
  }
  .au-smartpass .kv-img .text img {
    display: block;
    width: 100%;
    margin-bottom: 32px;
  }
  .au-smartpass .kv-img .text .font-xxxx-large {
    font-size: 2.4rem;
    font-weight: bold;
  }
  .au-smartpass .kv-img .text .text-main {
    font-size: 4rem;
    font-weight: bold;
    line-height: 4.8rem;
    letter-spacing: 1px;
    margin-bottom: 20px;
  }
  .au-smartpass .kv-img .text .text-main > span {
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
  .au-smartpass .kv-img .text .text-sub {
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
  .au-smartpass .kv-img .text .btn-orange,
  .au-smartpass .btn-footer.btn-orange {
    width: 100%;
    height: 56px;
    margin-bottom: 8px;
  }

  .au-smartpass .head h2 {
    font-size: 16px;
  }
  .au-smartpass .head .smartpassPremiumLogo {
    max-width: 100%;
    width: 268px;
  }
  .au-smartpass h2 {
    font-size: 2.4rem;
    margin-bottom: 8px;
  }
  .au-smartpass .border-orange {
    margin: 8px auto 24px;
  }
  .au-smartpass .description {
    height: auto;
    padding: 24px 16px;
    background-repeat: no-repeat;
  }
  .au-smartpass .description .inner-box h3 {
    font-size: 20px;
  }
  .au-smartpass .coupon-cp {
    border: 2px solid #E1E9F8;
    margin: 0 16px 40px;
    padding: 16px;
  }
  .au-smartpass .coupon-cp .regular {
    font-size: 16px;
  }
  .au-smartpass .coupon-cp h2 {
    font-size: 16px;
    margin-bottom: 32px;
    letter-spacing: 0.2px;
  }
  .au-smartpass .coupon-cp h2 span {
    font-size: 20px;
  }
  .au-smartpass .coupon-cp .date {
    font-size: 16px;
    margin-bottom: 24px;
    display: block;
    text-align: center;
  }
  .au-smartpass .coupon-cp .date dt {
    margin: 0 auto 8px;
  }
  .au-smartpass .coupon-cp .date dd {
    width: 100%;
    text-align: center;
  }

  .au-smartpass .lead {
    margin-bottom: 40px;
  }
  .au-smartpass .lead .c-card-icon-list {
    display: flex;
    flex-direction: column;
  }
  .au-smartpass .c-card-icon-list li {
    margin-bottom: 40px;
  }
  .au-smartpass .c-card-icon-list li:last-child {
    margin-bottom: 0;
  }
  .au-smartpass .c-card-icon-list .icon-list-01,
  .au-smartpass .c-card-icon-list .icon-list-02,
  .au-smartpass .c-card-icon-list .icon-list-03 {
    width: 100%;
    margin-right: 0;
  }
  .au-smartpass .c-card-icon-list .lead-icon {
    margin: 0 auto 8px;
  }
  .au-smartpass .c-card-icon-list .lead-text {
    font-size: 2rem;
    line-height: 3.6rem;
    margin-bottom: 4px;
  }
  .au-smartpass .c-card-icon-list .lead-sub-text {
    font-size: 1rem;
    margin-bottom: 0;
  }
  .au-smartpass .c-card-icon-list .lead-icon-01 {
    width: 184px;
  }
  .au-smartpass .c-card-icon-list .lead-icon-02 {
    width: 173px;
  }
  .au-smartpass .c-card-icon-list .lead-icon-03 {
    width: 215px;
  }

  .au-smartpass .campaign-detail {
    padding: 16px;
  }
  .au-smartpass .campaign-detail table {
    margin: 0 auto;
  }
  .au-smartpass .campaign-detail tr {
    display: block;
    margin-bottom: 24px;
  }
  .au-smartpass .campaign-detail th {
    justify-content: center;
    padding-right: 0;
  }
  .au-smartpass .campaign-detail .heading {
    margin-bottom: 8px;
  }
  .au-smartpass .campaign-detail td {
    justify-content: center;
  }
  .au-smartpass .campaign-detail td p {
    text-align: center;
  }
  .au-smartpass ul.note {
    font-size: 10px;
  }
  .au-smartpass .hotel-area {
    overflow-y: scroll;
    margin: 0 -16px;
    padding: 0 8px;
    /* スクロールバーの削除 IE・Microsoft Edge*/
    -ms-overflow-style: none;
    /* スクロールバーの削除 Firefox*/
    scrollbar-width: none;
  }
  .au-smartpass .hotel-area::-webkit-scrollbar{
    /* スクロールバーの削除 Google Chrome、Safari*/
    display: none;
  }
  .au-smartpass .benefits-hotel-list.wrap2 {
    padding: 16px 16px 24px;
    margin-left: -16px;
    margin-right: -16px;
  }
  .au-smartpass .benefits-hotel-list .hotel {
    display: block;
    min-width: 316px;
    padding: 0 8px;
    /* margin-right: 16px; */
  }
  .au-smartpass .benefits-hotel-list .hotel:last-child {
    margin-right: 0;
  }
  .au-smartpass .benefits-hotel-list .hotel .hotel-photo {
    width: auto;
    height: 200px;
  }
  .au-smartpass .benefits-hotel-list .hotel .hotel-text {
    font-size: 1.4rem;
  }
  .au-smartpass .benefits-hotel-list .hotel .hotel-text .attention {
    font-size: 1rem;
  }
  .au-smartpass .benefits-hotel-list .hotel .hotel-name {
    font-size: 1.4rem;
  }
  .au-smartpass .benefits-hotel-list .hotel .hotel-location {
    margin-bottom: 8px;
    font-size: 1rem;
  }
  .au-smartpass .services {
    padding: 24px 0 0;
    margin-bottom: 40px;
  }
  .au-smartpass .services .col3-box {
    display: block;
  }
  .au-smartpass .services .col3-box > div {
    width: 100%;
    margin-bottom: 32px;
  }
  .au-smartpass .services .col3-box > div:last-child {
    margin-bottom: 0;
  }
  .au-smartpass .services .bg-gray ul.note li {
    display: list-item;
    padding-left: 1em;
  }
  .au-smartpass .benefits .step {
    display: block;
  }
  .au-smartpass .benefits .step .step-box {
    width: 100%;
    height: auto;
    margin-top: 0;
    padding: 0;
  }
  .au-smartpass .benefits .step .step-box:not(:last-child) {
    margin-bottom: 24px;
  }
  .au-smartpass .benefits .step .step-box .step-head,
  .au-smartpass .benefits .step .step-box:first-child .step-head,
  .au-smartpass .benefits .step .step-box:last-child .step-head {
    background-color: #EB5505;
    clip-path: none;
    display: inline-block;
    padding: 0 16px;
    border-radius: 32px;
  }
  .au-smartpass .benefits .step .step-inner {
    flex-direction: column;
    height: auto;
  }
  .au-smartpass .benefits .step .step-text {
    margin-bottom: 16px;
  }
  .au-smartpass .benefits .step .btn-wrap {
    margin-top: 16px;
  }

  .au-smartpass .benefits .step .btn {
    height: 40px;
  }
  .au-smartpass .step .step-img {
    margin-bottom: 8px;
  }
  .au-smartpass .benefits .step .step-box .text-link {
    margin-top: 16px;
  }
  .au-smartpass .benefits .step .step-arrow {
    display: flex;
    justify-content: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .au-smartpass .benefits .step .step-arrow img {
    transform: rotate(90deg);
  }

  .au-smartpass .coupon .box {
    display: block;
  }
  .au-smartpass .coupon .box p {
    letter-spacing: 0;
  }
  .au-smartpass .coupon .box .left {
    width: 100%;
    padding: 20px 21px 10px;
  }
  .au-smartpass .coupon .box .left p {
    font-size: 24px;
    margin: 10px auto 20px;
  }
  .au-smartpass .coupon .box .right {
    width: 100%;
    padding: 8px 16px 16px;
  }
  .au-smartpass .footer-fix-btn div.btn-text {
    padding: 0 16px;
    margin: 0;
    width: 100%;
    display: block;
  }
  .au-smartpass .footer-fix-btn div.btn-text p {
    font-size: 1.4rem;
    margin:0 0 8px;
  }
  .au-smartpass .footer-fix-btn .btn {
    width: 100%;
  }

  .au-smartpass .img-coupon {
    width: 284px;
    height: 114px;
  }

  .au-smartpass .benefits-planList-wrap {
    margin-left: -16px;
    margin-right: -16px;
    padding: 16px 16px 24px;
  }

  .au-smartpass .planList {
    margin-left: -16px;
    margin-right: -16px;
    padding: 0 8px;
    overflow-x: auto;
    /* スクロールバーの削除 IE・Microsoft Edge*/
    -ms-overflow-style: none;
    /* スクロールバーの削除 Firefox*/
    scrollbar-width: none;
  }

  .au-smartpass .planList::-webkit-scrollbar{
    /* スクロールバーの削除 Google Chrome、Safari*/
    display: none;
  }

  .au-smartpass .planList > li {
    min-width: 316px;
    padding: 0 8px;
  }

  .au-smartpass .plan {
    height: 220px;
  }

  .au-smartpass .plan-detail .grade img {
    height: 16px;
  }

  .au-smartpass .plan-detail .name {
    font-size: 1.4rem;
  }

  .au-smartpass .plan-detail .address {
    font-size: 1rem;
  }

  .au-smartpass .font-x-large {
    font-size: 1.4rem;
  }

  .au-smartpass .footer-fix-btn.active {
    padding: 8px 0 24px;
  }
  .campaigns.au-smartpass .kv-img .btn-coupon-get {
    top: auto;
    bottom: 50%;
    transform: translate(-50%, 126px);
    width: 66vw;
    height: 11vw;
  }
}

@media screen and (max-width: 360px) {
  .au-smartpass .kv-img .text .font-xxxx-large {
    font-size: 1.6rem;
  }
  .au-smartpass .kv-img .text .text-main {
    font-size: 3.6rem;
    line-height: 5.4rem;
  }
  .campaigns.au-smartpass .kv-img .btn-coupon-get {
    height: 10vw;
    font-size: 14px;
  }
}

.lp-values {
  /* --------

   Contents

  -------- */
}

.lp-values .container {
  width: 100%;
  -webkit-text-size-adjust: 100%;
}

.lp-values .container img {
  max-width: 100%;
}

.lp-values .container a:hover {
  opacity: 0.8;
}

.lp-values .sp-v {
  display: none !important;
}

.lp-values .text-indent-none {
  text-indent: 0;
}

@media screen and (max-width: 767px) {
  .lp-values .pc-v {
    display: none !important;
  }
  .lp-values .sp-v {
    display: inline-block !important;
  }
  .lp-values .container {
    font-size: 14px;
  }
}

.lp-values .key-visual {
  background-image: url(/stcontents/img/sub-page/lp/values/kv-layer.png), url(/stcontents/img/sub-page/lp/values/keyvisual.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left bottom, center center;
  background-size: 100%, cover;
  height: 520px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}

.lp-values .key-visual p {
  border: 1px solid #FFFFFF;
  width: 266px;
  height: 52px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 32px;
  font-weight: bold;
  font-size: 23px;
}

.lp-values .key-visual h1 {
  font-size: 48px;
}

.lp-values .key-visual h1 strong {
  font-weight: bold;
}

.lp-values .container {
  font-size: 16px;
}

.lp-values .container .wrap {
  max-width: 1072px;
  margin: 0 auto;
  padding: 0 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lp-values .container .section {
  margin-top: 60px;
}

.lp-values .container .section a {
  text-decoration: none;
}

.lp-values .container .section img {
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .lp-values .key-visual {
    background-image: url(/stcontents/img/sub-page/lp/values/kv-layer-sp.png), url(/stcontents/img/sub-page/lp/values/keyvisual-sp.png?1130);
    background-repeat: no-repeat, no-repeat;
    background-position: left bottom, center center;
    background-size: 100%, cover;
    height: 350px;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 16px;
    text-shadow: 2px 1px 2px #333;
    text-align: right;
  }
  .lp-values .key-visual p {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: auto;
    margin: 0 0 8px;
    height: auto;
    padding: 4px 6px;
    font-size: 16px;
  }
  .lp-values .key-visual h1 {
    font-size: 32px;
  }
  .lp-values .container {
    font-size: 14px;
  }
}

@media screen and (max-width: 360px) {
  .lp-values .key-visual h1 {
    font-size: 28px;
  }
}

.lp-values .container .section h2 {
  position: relative;
  margin-bottom: 24px;
  padding-bottom: 24px;
  text-align: center;
  font-weight: bold;
  font-size: 26px;
}

.lp-values .container .section h2:after {
  background: #F2CC32;
  display: block;
  content: "";
  width: 80px;
  height: 3px;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -40px;
}

.lp-values .font-bold {
  font-weight: bold;
}

.lp-values .font-strong {
  margin-bottom: 8px;
  font-weight: bold;
}

.lp-values .container .btn-relux {
  width: 300px;
  height: 48px;
  margin: 0 auto;
  padding: 0 10px;
  border-radius: 4px;
  background-color: #0f0a64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #fff;
}

.lp-values .bnr-list {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 16px;
}

.lp-values .bnr-list a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 16px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  border-radius: 8px;
  overflow: hidden;
}

.lp-values .bnr-list > div {
  width: calc(50% - 8px);
  height: 220px;
  -webkit-box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
}

.lp-values .bnr-list > .wide {
  width: 100%;
  height: 320px;
}

.lp-values .bnr-list .title {
  font-weight: bold;
  font-size: 24px;
}

.lp-values .bnr-list .area {
  font-weight: bold;
  font-size: 14px;
}

.lp-values .bnr-list .price {
  position: absolute;
  right: 24px;
  bottom: 24px;
  text-align: right;
}

.lp-values .bnr-list .price span {
  font-weight: bold;
  font-size: 24px;
}

.lp-values .bnr-list .bg {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.bnr-list .bg::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
  opacity: .4;
}

.lp-values .bnr-list .bg img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.lp-values .bnr-list .bg:before {
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.4)), color-stop(transparent), to(rgba(0, 0, 0, 0.4)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.4), transparent, rgba(0, 0, 0, 0.4));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), transparent, rgba(0, 0, 0, 0.4));
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (max-width: 767px) {
  .lp-values .bnr-list {
    gap: 10px;
  }
  .lp-values .bnr-list > div {
    width: calc(50% - 5px);
  }
  .lp-values .bnr-list a {
    padding: 6px 10px;
  }
  .lp-values .bnr-list > .wide {
    height: 160px;
  }
  .lp-values .bnr-list > div {
    height: 110px;
  }
  .lp-values .bnr-list .title {
    font-size: 16px;
  }
  .lp-values .bnr-list .area {
    font-size: 10px;
  }
  .lp-values .bnr-list .price {
    right: 8px;
    bottom: 10px;
    font-size: 10px;
  }
  .lp-values .bnr-list .price span {
    font-size: 16px;
  }
  .lp-values .bnr-list > div:nth-child(n+2) .title {
    font-size: 11px;
  }
  .lp-values .bnr-list > div:nth-child(n+2) .price span {
    font-size: 14px;
  }
}

@media screen and (max-width: 350px) {
  .lp-values .key-visual {
    height: 300px;
  }
  .lp-values .container .btn-relux,
  .lp-values .container .btn-default {
    width: 250px;
  }
}

.lp-values .section .heading {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 24px;
}

.lp-values .section .heading > div:first-child img {
  width: 44px;
  height: auto;
}

.lp-values .section .heading > div:last-child {
  padding-left: 24px;
  font-size: 20px;
}

.lp-values .section .figure {
  margin: 24px 0;
}

.lp-values .section .figure.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.lp-values .section .figure.flex img {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .lp-values .section .heading > div:first-child img {
    width: 40px;
  }
  .lp-values .section .heading > div:last-child {
    padding-left: 16px;
    font-size: 16px;
  }
  .lp-values .section .figure.flex {
    display: block;
  }
  .lp-values .section .figure.flex img {
    width: 100%;
    display: block;
  }
}

.lp-values .hot-area-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.lp-values .hot-area-list li {
  width: calc(50% - 4px);
  height: 110px;
  margin-bottom: 8px;
  margin-right: 8px;
  overflow: hidden;
  border-radius: 8px;
  position: relative;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.lp-values .hot-area-list li:nth-child(2n) {
  margin-right: 0;
}

.lp-values .hot-area-list li:last-child {
  margin-right: 0;
}

.lp-values .hot-area-list li img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.lp-values .hot-area-list li .caption {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  text-align: center;
  font-weight: bold;
  text-shadow: 1px 1px 0 #000;
}

.lp-values .hot-area-list a {
  display: block;
  text-decoration: none;
  color: #fff;
  height: 100%;
}

@media (min-width: 768px) {
  .lp-values .hot-area .wrap:nth-child(2) {
    padding: 0;
  }
  .lp-values .hot-area-list {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .lp-values .hot-area-list li {
    width: 280px;
    height: 100px;
    margin-bottom: 0;
    margin-right: 32px;
  }
  .lp-values .hot-area-list li:nth-child(2n) {
    margin-right: 32px;
  }
  .lp-values .hot-area-list li:last-child {
    margin-right: 0;
  }
  .lp-values .hot-area-list li .caption {
    font-size: 16px;
  }
  .lp-values .hot-area-list a:hover {
    opacity: 0.7;
  }
}

.lp-values .hot-area-line {
  position: relative;
}

.lp-values .hot-area-line .inner {
  width: 100%;
  overflow: hidden;
}

.lp-values .container .hot-area-tag {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 16px;
}

.lp-values .container .hot-area-tag li {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.lp-values .container .hot-area-tag a {
  width: auto;
  height: 40px;
  margin-bottom: 10px;
  margin-right: 8px;
  font-size: 14px;
}

.lp-values .container .hot-area-tag .btn-default.active,
.lp-values .container .hot-area-tag .btn-default:active,
.lp-values .container .hot-area-tag .btn-default:focus,
.lp-values .container .hot-area-tag .open .dropdown-toggle.btn-default {
  background: #fff;
  color: #0F0A64 !important;
  text-decoration: none;
  border-color: #c6c6c6;
}

.lp-values .container .btn-default {
  width: 300px;
  height: 48px;
  margin: 0 auto;
  padding: 0 10px;
  border-radius: 4px;
  background-color: #fff;
  border: 1px solid #0F0A64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #0F0A64 !important;
}

.lp-values .container .btn-gray {
  border-color: #c6c6c6;
}

@media (min-width: 768px) {
  .lp-values .container .hot-area-tag {
    width: 100%;
  }
  .lp-values .container .hot-area-tag a {
    margin: 0 14px 10px 0;
  }
  .lp-values .hot-area-line {
    overflow: hidden;
    padding-right: 0;
  }
  .lp-values .hot-area-line .inner {
    position: relative;
  }
  .lp-values .hot-area-line .inner:after {
    content: none;
  }
}

.lp-values .container .float-box.float {
  background: #fff;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 8px 16px;
  z-index: 1000;
}

.lp-values .container .figure img {
  max-width: 100%;
}

@media screen and (max-width: 768px) {
  .lp-values .container .section {
    margin-top: 40px;
  }
  .lp-values .container .btn-relux,
  .lp-values .container .btn-default {
    max-width: 450px;
    width: 100%;
  }
}

.lp-values ul#pankuzu {
  color: #333;
  letter-spacing: -.4em;
}

.lp-values ul#pankuzu li {
  display: inline-block;
  letter-spacing: normal;
  font-size: 11px;
  color: #333;
}

.lp-values li.li_pankuzu {
  background-image: url("/stcontents/img/common/pankuzu_listmark.png");
  background-position: right center;
  background-repeat: no-repeat;
  padding: 0 15px 0 0;
  margin-right: 8px;
}

.lp-values li.li_pankuzu a,
.lp-values li.li_pankuzulast a {
  color: #333;
  text-decoration: none;
}

.lp-values ul#pankuzu {
  margin: 48px 0 24px;
}

.lp-zenkokuryokoshien {
  /* --------

   #pankuzu

  -------- */
  /* --------

   Contents

  -------- */
  /*
  .key-visual .kv-text {
    width: 80%;
    margin: 0 auto;
    padding-top: 130px;
    font-family: "メイリオ",Meiryo,Osaka,sans-serif;
    text-align: center;
    font-size: 32px;
    letter-spacing: 2px;
    color: #fff;
    text-shadow: 0 0 4px #000;
  }
  */
  /*
    FAQ
  */
  /*
    sareButton
  */
  /* --------

   registArea

  -------- */
  /*
    SPでのフェードインアニメーション
  */
  /*
    会員ステータスの図
  */
  /*
    GTT停止対応
  */
  /*
    GTT更新
  */
  /* PC MAP*/
  /* SP MAP*/
  /*
    全国旅行支援
  */
  /*
    KV変更
  */
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.lp-zenkokuryokoshien .container {
  width: 100%;
  -webkit-text-size-adjust: 100%;
}

.lp-zenkokuryokoshien .container a:hover {
  opacity: 0.8;
}

.lp-zenkokuryokoshien .sp-v {
  display: none !important;
}

.lp-zenkokuryokoshien .text-indent-none {
  text-indent: 0;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .pc-v {
    display: none !important;
  }
  .lp-zenkokuryokoshien .sp-v {
    display: inline-block !important;
  }
}

.lp-zenkokuryokoshien .jsc_accordion {
  cursor: pointer;
}

.lp-zenkokuryokoshien .acc_content {
  display: none;
}

.lp-zenkokuryokoshien .mt-28 {
  margin-top: 28px;
}

.lp-zenkokuryokoshien .pt-28 {
  padding-top: 28px;
}

.lp-zenkokuryokoshien .mt-38 {
  margin-top: 38px;
}

.lp-zenkokuryokoshien .pt-38 {
  padding-top: 38px;
}

.lp-zenkokuryokoshien .mt-48 {
  margin-top: 48px;
}

.lp-zenkokuryokoshien .pt-48 {
  padding-top: 48px;
}

.lp-zenkokuryokoshien .mt-60 {
  margin-top: 48px;
}

.lp-zenkokuryokoshien .pt-60 {
  padding-top: 48px;
}

.lp-zenkokuryokoshien .pl-0 {
  padding-left: 0 !important;
}

.lp-zenkokuryokoshien .pl-10 {
  padding-left: 10px !important;
}

.lp-zenkokuryokoshien .pl-20 {
  padding-left: 20px !important;
}

.lp-zenkokuryokoshien .pl-30 {
  padding-left: 30px !important;
}

.lp-zenkokuryokoshien .ml-1em {
  margin-left: -1em;
}

.lp-zenkokuryokoshien .ml-2em {
  margin-left: -2em;
}

.lp-zenkokuryokoshien .container .small {
  font-size: 90% !important;
}

.lp-zenkokuryokoshien .container .large {
  font-size: 125%;
}

.lp-zenkokuryokoshien .container .pt10 {
  display: inline-block;
  padding-top: 10px;
}

.lp-zenkokuryokoshien ul.disc {
  padding-left: 1.5em;
}

.lp-zenkokuryokoshien ul.disc li {
  list-style-type: disc;
}

.lp-zenkokuryokoshien ul li.none {
  list-style-type: none;
}

.lp-zenkokuryokoshien ul.disc li + li {
  margin-top: 10px;
}

.lp-zenkokuryokoshien .container a.link {
  color: #1675b9;
}

.lp-zenkokuryokoshien ul.square {
  padding-left: 1.5em;
}

.lp-zenkokuryokoshien ul.square li:before {
  content: "■";
  margin-right: 0.2em;
}

.lp-zenkokuryokoshien ul.square li {
  text-indent: -1.2em;
}

.lp-zenkokuryokoshien ul.square li + li {
  margin-top: 5px;
}

.lp-zenkokuryokoshien ul.square-s li {
  list-style: square;
}

.lp-zenkokuryokoshien ul.square-s li + li {
  margin-top: 10px;
}

.lp-zenkokuryokoshien ul.normal {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.lp-zenkokuryokoshien ul.normal li + li {
  margin-top: 10px;
}

.lp-zenkokuryokoshien ul#pankuzu {
  margin: 48px 0 24px;
  color: #333;
  letter-spacing: -.4em;
}

.lp-zenkokuryokoshien ul#pankuzu li {
  display: inline-block;
  letter-spacing: normal;
  font-size: 11px;
  color: #333;
}

.lp-zenkokuryokoshien li.li_pankuzu {
  background-image: url("/img/pankuzu_listmark.png");
  background-position: right center;
  background-repeat: no-repeat;
  padding: 0 15px 0 0;
  margin-right: 8px;
}

.lp-zenkokuryokoshien li.li_pankuzu a,
.lp-zenkokuryokoshien li.li_pankuzulast a {
  color: #333;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien ul#pankuzu {
    margin: 32px 0 24px;
  }
}

.lp-zenkokuryokoshien .text-center {
  text-align: center;
}

.lp-zenkokuryokoshien .key-visual {
  position: relative;
}

.lp-zenkokuryokoshien .key-visual .inner {
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -webkit-transform: none;
          transform: none;
}

.lp-zenkokuryokoshien .key-visual .bg {
  background-image: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/keyvisual.jpg?2022);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 300px;
}

.lp-zenkokuryokoshien .key-visual .date {
  height: 0;
  position: absolute;
  top: calc(70vh - 30px);
  bottom: inherit;
  right: 10px;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .key-visual {
    background: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/keyvisual.jpg?2022) no-repeat center center;
    background-size: cover;
    height: 520px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-text {
    width: 700px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding-top: 0;
  }
  .lp-zenkokuryokoshien .login-mode.key-visual .kv-text {
    top: 50%;
  }
  .lp-zenkokuryokoshien .key-visual .bg {
    background-image: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/keyvisual.jpg?2022);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 100%;
    height: 100%;
  }
  .lp-zenkokuryokoshien .key-visual .date {
    top: inherit;
    bottom: 36px;
    right: 3vw;
  }
}

.lp-zenkokuryokoshien .container .wrap {
  width: 100%;
  padding: 0 16px;
}

.lp-zenkokuryokoshien .container img {
  max-width: 100%;
}

@media screen and (min-width: 960px) {
  .lp-zenkokuryokoshien .container .wrap {
    width: 960px;
    margin: 0 auto;
    padding: 0;
  }
}

.lp-zenkokuryokoshien .container .update {
  background: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/bg-update-sp.png) no-repeat 0 0;
  background-size: cover;
  width: 100%;
  border-radius: 4px;
  margin: 40px 0 16px;
  padding: 8px 8px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .container .update .heading {
  padding: 14px 3px;
  line-height: 1.5;
  text-align: center;
  font-size: 17px;
  color: #fff;
  letter-spacing: 0;
}

.lp-zenkokuryokoshien .container .update .bg-white {
  background: #fff;
  padding: 14px 16px 20px;
  line-height: 1.8;
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .update .bg-white a {
  color: #1675b9;
}

.lp-zenkokuryokoshien .container .kv-notice {
  font-size: 11px;
}

.lp-zenkokuryokoshien .container .update ul {
  padding-left: 1.5em;
  margin-bottom: 5px;
}

.lp-zenkokuryokoshien .container .update ul li {
  margin-top: 10px;
}

.lp-zenkokuryokoshien .container .update .bg-white > ul > li {
  text-indent: -1.2em;
}

.lp-zenkokuryokoshien .container .update .bg-white .small li {
  text-indent: 0;
}

.lp-zenkokuryokoshien .container .update .bg-white > ul > li:before {
  content: "■";
  margin-right: 0.2em;
}

.lp-zenkokuryokoshien .container .update ul ul li {
  list-style-type: disc;
}

.lp-zenkokuryokoshien .container .update ul.none {
  padding-left: 0;
}

.lp-zenkokuryokoshien .container .update ul.none li {
  list-style: none;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .kv-notice {
    font-size: 15px;
    letter-spacing: 0;
  }
  .lp-zenkokuryokoshien .container .update {
    margin: 60px 0 24px;
  }
  .lp-zenkokuryokoshien .container .update .heading {
    padding: 18px 30px 24px;
    text-align: left;
    font-size: 20px;
    letter-spacing: 1px;
  }
  .lp-zenkokuryokoshien .container .update .bg-white {
    padding: 30px 48px 36px;
    font-size: 18px;
  }
}

@media screen and (max-width: 959px) {
  .lp-zenkokuryokoshien .fadein.update {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@media screen and (max-width: 350px) {
  .lp-zenkokuryokoshien .container .update .heading {
    padding: 14px 0;
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .container .update .bg-white {
    font-size: 14px;
  }
}

.lp-zenkokuryokoshien .container .section {
  margin-bottom: 42px;
  margin-top: -30px;
  padding-top: 60px;
  letter-spacing: 1px;
}

.lp-zenkokuryokoshien .container h2 {
  margin-bottom: 24px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 1px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .section p {
  line-height: 1.6;
  font-weight: bold;
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .section .marker {
  background-image: -webkit-linear-gradient(bottom, #ffce3a 12px, transparent 0);
  background-image: linear-gradient(0deg, #ffce3a 12px, transparent 0);
  padding-bottom: 6px;
}

.lp-zenkokuryokoshien .container .text a,
.lp-zenkokuryokoshien .container .kanpu a,
.lp-zenkokuryokoshien .container .faq a {
  color: #1973b7;
  word-break: break-all;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien {
    /* IE、Edge対応 */
  }
  .lp-zenkokuryokoshien .container .section {
    margin-bottom: 90px;
  }
  .lp-zenkokuryokoshien .container h2 {
    line-height: 1.35;
    font-size: 40px;
    letter-spacing: 0;
  }
  .lp-zenkokuryokoshien .container .section p {
    line-height: 1.8;
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .container .section .marker {
    background-image: -webkit-linear-gradient(bottom, #ffce3a 16px, transparent 0);
    background-image: linear-gradient(0deg, #ffce3a 16px, transparent 0);
    padding-bottom: 9px;
  }
  .lp-zenkokuryokoshien _:-ms-lang(x)::-ms-backdrop, .lp-zenkokuryokoshien .container .section .marker {
    padding-bottom: 0;
  }
  .lp-zenkokuryokoshien _:-ms-lang(x)::backdrop, .lp-zenkokuryokoshien .container .section .marker {
    padding-bottom: 0;
  }
}

.lp-zenkokuryokoshien .container .lead-box {
  background: #f0f9ff;
  padding: 65px 0;
  font-size: 16px;
  color: #1873b7;
}

.lp-zenkokuryokoshien .container .lead-box h2 {
  margin-bottom: 40px;
}

.lp-zenkokuryokoshien .container .lead-box .area h3 {
  margin-top: 10px;
  margin-bottom: 16px;
  border-left: 8px solid;
  padding-left: 16px;
  font-size: 24px;
}

.lp-zenkokuryokoshien .container .lead-box .area p {
  padding-left: 1.8em;
  font-size: 18px;
}

.lp-zenkokuryokoshien .container .lead-box .area ul {
  font-size: 18px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .container .box {
  background: #f0f9ff;
  padding: 30px 20px 10px;
  border-radius: 10px;
  border: solid 4px #aac7da;
  color: #1873b7;
}

.lp-zenkokuryokoshien .container .section h3 {
  margin-bottom: 24px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.8;
}

.lp-zenkokuryokoshien .container table {
  border-collapse: collapse;
  line-height: 1.6;
  font-size: 14px;
}

.lp-zenkokuryokoshien .container table th,
.lp-zenkokuryokoshien .container table td {
  vertical-align: top;
  font-weight: bold;
  padding-bottom: 40px;
}

.lp-zenkokuryokoshien .container table th span {
  white-space: nowrap;
  width: 133px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #1973b7;
  color: #fff;
}

.lp-zenkokuryokoshien .container table td {
  padding-left: 22px;
}

.lp-zenkokuryokoshien .container .section .note {
  margin-top: 14px;
  line-height: 1.8;
  font-size: 14px;
}

.lp-zenkokuryokoshien .container .section .note a {
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .list {
  padding: 10px 0 0 1.5em;
}

.lp-zenkokuryokoshien .container .list li {
  list-style: disc;
  padding-bottom: 10px;
  font-weight: bold;
  font-size: 15px;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .container .lead-box {
    padding: 45px 0;
  }
  .lp-zenkokuryokoshien .container table th,
  .lp-zenkokuryokoshien .container table td {
    display: block;
    padding: 0 0 20px;
  }
  .lp-zenkokuryokoshien .container .lead-box .area p {
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .container .lead-box .area h3 {
    border-left: 5px solid;
    padding-left: 18px;
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .container .lead-box .area ul {
    font-size: 15px;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .lead-box h2 {
    font-size: 38px;
  }
}

.lp-zenkokuryokoshien .container .example {
  margin-bottom: 42px;
}

.lp-zenkokuryokoshien .container .example ul {
  font-weight: bold;
  font-size: 14px;
}

.lp-zenkokuryokoshien .container .example ul .large {
  font-size: 110%;
}

.lp-zenkokuryokoshien .container .example .box {
  border: none;
}

.lp-zenkokuryokoshien .container .tokyo ul {
  line-height: 1.6;
  font-weight: bold;
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .tokyo h3 {
  color: #1973b7;
}

.lp-zenkokuryokoshien .container #cancelNote {
  font-size: 14px;
}

.lp-zenkokuryokoshien .container #cancelNote + ul {
  font-weight: normal;
  font-size: 13px;
}

.lp-zenkokuryokoshien .container .index-box {
  background: #efefef;
  padding: 30px 20px;
  border-radius: 4px;
  margin-top: 16px;
}

.lp-zenkokuryokoshien .container .index-box .inner-box {
  max-width: 790px;
  margin: 0 auto;
}

.lp-zenkokuryokoshien .container .index-box h2 {
  margin-bottom: 30px;
  text-align: center;
  letter-spacing: 1px;
  font-size: 28px;
  color: #333;
}

.lp-zenkokuryokoshien .container .index-box dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  line-height: 1.8;
  font-size: 14px;
}

.lp-zenkokuryokoshien .container .index-box dl dt {
  width: 2.5em;
  padding-right: 20px;
  text-align: right;
  letter-spacing: 0;
}

.lp-zenkokuryokoshien .container .index-box dl dt,
.lp-zenkokuryokoshien .container .index-box dl dd {
  padding-bottom: 12px;
}

.lp-zenkokuryokoshien .container .index-box dl dd {
  width: calc(100% - 2.5em);
}

.lp-zenkokuryokoshien .container .index-box a {
  color: #1675b9;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .example {
    margin-bottom: 120px;
  }
  .lp-zenkokuryokoshien .container .example ul {
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .container .example ul .large {
    font-size: 125%;
  }
  .lp-zenkokuryokoshien .container .tokyo ul {
    line-height: 1.8;
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .container #cancelNote {
    font-size: 24px;
  }
  .lp-zenkokuryokoshien .container #cancelNote + ul {
    font-weight: bold;
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .container .index-box {
    padding: 50px;
    margin-top: 24px;
  }
  .lp-zenkokuryokoshien .container .index-box h2 {
    margin-bottom: 50px;
    font-size: 40px;
  }
  .lp-zenkokuryokoshien .container .index-box dl {
    line-height: 1.8;
    font-size: 17px;
  }
  .lp-zenkokuryokoshien .container .index-box dl dt,
  .lp-zenkokuryokoshien .container .index-box dl dd {
    padding-bottom: 7px;
  }
  .lp-zenkokuryokoshien .container .index-box dl dt {
    width: 50px;
  }
  .lp-zenkokuryokoshien .container .index-box dl dd {
    width: calc(100% - 50px);
  }
}

.lp-zenkokuryokoshien .container .merit {
  margin-bottom: 20px !important;
}

.lp-zenkokuryokoshien .container .merit h2 {
  margin-bottom: 36px;
}

.lp-zenkokuryokoshien .container .merit h3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  height: auto;
  margin-bottom: 14px;
  line-height: 1.5;
  font-size: 18px;
}

.lp-zenkokuryokoshien .container .merit p {
  color: #666;
}

.lp-zenkokuryokoshien .container .merit.large p {
  color: #333;
}

.lp-zenkokuryokoshien .container .merit table th,
.lp-zenkokuryokoshien .container .merit table td {
  display: block;
  float: left;
  padding-bottom: 0;
}

.lp-zenkokuryokoshien .container .merit .heading {
  width: 72px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 1px;
  border: solid 3px #1973b7;
  border-radius: 20px;
  background: #1973b7;
  line-height: 1;
  font-weight: bold;
  font-size: 15px;
  color: #fff;
}

.lp-zenkokuryokoshien .container .merit.large h3 {
  color: #1973B7;
}

.lp-zenkokuryokoshien .container .merit#section12 h3 {
  color: inherit;
}

.lp-zenkokuryokoshien .container .merit.large .heading {
  width: 90px;
}

.lp-zenkokuryokoshien .container .merit table th {
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-right: 15px;
  clear: both;
}

.lp-zenkokuryokoshien .container .merit table tr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .merit {
    margin-bottom: 72px !important;
  }
  .lp-zenkokuryokoshien .container .merit h3 {
    font-size: 28px;
  }
  .lp-zenkokuryokoshien .container .merit table th,
  .lp-zenkokuryokoshien .container .merit table td {
    display: table-cell;
    float: none;
  }
  .lp-zenkokuryokoshien .container .merit table th {
    padding-right: 0;
  }
  .lp-zenkokuryokoshien .container .merit .heading {
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .merit h2 {
    margin-bottom: 54px;
  }
  .lp-zenkokuryokoshien .container .merit p {
    font-size: 20px;
  }
}

.lp-zenkokuryokoshien .registArea-2 {
  background: #ededed;
  padding: 56px 0 60px;
  clear: both;
}

.lp-zenkokuryokoshien .registArea-2 .registArea {
  position: relative;
  bottom: auto;
  left: auto;
  margin: 0 auto;
  padding-top: 0;
  color: inherit;
}

.lp-zenkokuryokoshien .registArea-2 .registArea div.mailInput input {
  border: none;
}

.lp-zenkokuryokoshien .registArea-2 .registArea p.txt a, .lp-zenkokuryokoshien .registArea-2 .registArea p.kiyaku a {
  border-bottom: 1px solid #555;
  color: inherit;
}

.lp-zenkokuryokoshien .period {
  width: 100%;
  padding: 24px 32px;
  border: 12px solid #E5EEFF;
  margin-bottom: 24px;
  border-radius: 4px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .period h2 {
  font-size: 24px;
  color: #1973B7;
  font-weight: 600;
  margin-bottom: 8px;
}

.lp-zenkokuryokoshien .period h2 span {
  font-size: 14px;
  font-weight: 400;
  color: #333333;
  margin-left: 8px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .period .font-bold {
  font-weight: bold;
}

.lp-zenkokuryokoshien .period p {
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .period {
    padding: 14px 16px;
    border: 8px solid #E5EEFF;
  }
  .lp-zenkokuryokoshien .period h2 {
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .period h2 span {
    display: block;
    margin-left: 0;
  }
  .lp-zenkokuryokoshien .period p {
    font-size: 14px;
  }
}

.lp-zenkokuryokoshien .container .faq .jsc_accordion {
  line-height: 1.6;
  position: relative;
  padding-right: 30px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .faq .jsc_accordion:before,
.lp-zenkokuryokoshien .container .faq .jsc_accordion:after {
  position: absolute;
  top: 13px;
  right: -7px;
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  border-top: 3px solid #1973b7;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.lp-zenkokuryokoshien .container .faq .jsc_accordion:after {
  top: 5px;
  right: 11px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.lp-zenkokuryokoshien .container .faq .jsc_accordion.is-actived:after {
  display: none;
}

.lp-zenkokuryokoshien .container .faq .jsc_accordion:hover {
  opacity: 0.7;
}

.lp-zenkokuryokoshien .container .faq h3 {
  font-size: 20px;
}

.lp-zenkokuryokoshien .container .faq .notice {
  border-top: 4px solid #1973b7;
  border-bottom: 4px solid #1973b7;
  margin-bottom: 30px;
  padding: 45px 0 25px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .container .faq .notice h3 {
  margin-bottom: 20px;
  line-height: 1.5;
  font-size: 20px;
}

.lp-zenkokuryokoshien .container .faq .notice ul {
  margin-bottom: 25px;
  padding-left: 1.5em;
}

.lp-zenkokuryokoshien .container .faq .notice ul li {
  list-style: disc;
  margin-bottom: 10px;
  padding-right: 15px;
  line-height: 1.8;
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .faq dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.8;
}

.lp-zenkokuryokoshien .container .faq dl dt,
.lp-zenkokuryokoshien .container .faq dl dd {
  margin-bottom: 25px;
}

.lp-zenkokuryokoshien .container .faq dl dt {
  width: 56px;
}

.lp-zenkokuryokoshien .container .faq dl dd {
  width: calc(100% - 56px);
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  padding-right: 15px;
  font-size: inherit;
}

.lp-zenkokuryokoshien .container .faq .question {
  font-size: 17px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .icon-q, .lp-zenkokuryokoshien .container .icon-a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 36px;
  height: 36px;
  border: solid 3px #1973b7;
  border-radius: 50%;
  background: #1973b7;
  letter-spacing: 0;
  font-weight: bold;
  font-size: 16px;
  color: #fff;
}

.lp-zenkokuryokoshien .container .icon-a {
  background: none;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .faq p {
  font-size: inherit;
  font-weight: inherit;
}

.lp-zenkokuryokoshien .container .faq .box {
  padding-top: 30px;
  padding-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .section h3 {
    font-size: 24px;
  }
  .lp-zenkokuryokoshien .container .box {
    padding: 40px 64px 28px;
  }
  .lp-zenkokuryokoshien .container table {
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .box ul {
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .faq .notice h3 {
    font-size: 28px;
  }
  .lp-zenkokuryokoshien .container .faq .notice {
    margin-bottom: 70px;
  }
  .lp-zenkokuryokoshien .container .faq .notice ul li {
    padding-right: 45px;
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .faq .jsc_accordion {
    padding-right: 45px;
  }
  .lp-zenkokuryokoshien .container .faq .jsc_accordion:before,
  .lp-zenkokuryokoshien .container .faq .jsc_accordion:after {
    top: 14px;
    right: -10px;
    width: 28px;
    height: 28px;
    border-top: 4px solid #1973b7;
  }
  .lp-zenkokuryokoshien .container .faq .jsc_accordion:after {
    top: 1px;
    right: 18px;
  }
  .lp-zenkokuryokoshien .container .faq dl {
    line-height: 1.8;
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .faq dl dt,
  .lp-zenkokuryokoshien .container .faq dl dd {
    margin-bottom: 36px;
  }
  .lp-zenkokuryokoshien .container .faq dl dt {
    width: 90px;
  }
  .lp-zenkokuryokoshien .container .faq dl dd {
    width: calc(100% - 90px);
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .faq .question {
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .container .icon-q, .lp-zenkokuryokoshien .container .icon-a {
    width: 56px;
    height: 56px;
    border: solid 4px #1973b7;
    font-size: 24px;
  }
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .acc_content {
    font-weight: normal;
    line-height: 1.6;
    font-size: 14px !important;
  }
  .lp-zenkokuryokoshien .container .acc_content h3 {
    font-size: 17px;
  }
  .lp-zenkokuryokoshien .container .faq table th,
  .lp-zenkokuryokoshien .container .faq table td {
    font-weight: normal;
  }
  .lp-zenkokuryokoshien .container .faq .steps dl dd {
    width: auto;
    padding-right: 0;
  }
  .lp-zenkokuryokoshien .container .merit .heading {
    width: 56px;
    height: 29px;
  }
  .lp-zenkokuryokoshien .container .merit.large .heading {
    width: 70px;
    font-size: 13px;
  }
  .lp-zenkokuryokoshien .container .merit h3 {
    margin-top: 1px;
  }
}

.lp-zenkokuryokoshien .recommend ul {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 10px 0 20px;
}

.lp-zenkokuryokoshien .recommend ul li {
  width: 48%;
  max-height: 168px;
  height: 28vw;
  display: block;
  position: relative;
  overflow: hidden;
  margin-bottom: 16px;
  padding: 0;
  border-radius: 4px;
}

.lp-zenkokuryokoshien .recommend ul li a {
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
  text-decoration: none;
  font-weight: bold;
  font-size: 12px;
  color: #fff;
}

.lp-zenkokuryokoshien .recommend ul .bath {
  background: url(/stcontents/img/feature/roten.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend ul .resort {
  background: url(/img/hotelpictures/RP25238_1058.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend ul .cuisine {
  background: url(/img/hotelpictures/RP23837_1017.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend ul .newOpen {
  background: url(/img/hotelpictures/RP25129_1051.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend ul .photo {
  background: url(/stcontents/img/sub-page/lp/reluxoffer/keyvisual.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend ul .abroad {
  background: url(/stcontents/img/hotels_point/keyvisual.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .recommend dl dt {
  width: 100%;
  height: 50vw;
  max-height: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  float: none;
  margin-bottom: 30px;
  padding: 0;
  overflow: hidden;
  border-radius: 8px;
}

.lp-zenkokuryokoshien .recommend dl dt a,
.lp-zenkokuryokoshien .recommend dl dt img {
  width: 100%;
  display: block;
}

.lp-zenkokuryokoshien .container .recommend dl dd h3 {
  margin-bottom: 16px;
}

.lp-zenkokuryokoshien .container .recommend dl dd p {
  line-height: 1.8;
  font-size: 15px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .recommend ul {
    padding: 20px 0;
  }
  .lp-zenkokuryokoshien .recommend ul li {
    width: 31%;
    height: 168px;
    margin-bottom: 50px;
  }
  .lp-zenkokuryokoshien .recommend ul li a {
    font-size: 17px;
  }
  .lp-zenkokuryokoshien .recommend dl dt {
    width: 27%;
    height: auto;
    float: left;
    margin-right: 30px;
  }
  .lp-zenkokuryokoshien .recommend dl dd {
    height: 180px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.lp-zenkokuryokoshien .shareArea {
  margin-top: 64px;
}

.lp-zenkokuryokoshien .shareBtn li {
  display: inline-block;
  font-weight: bold;
  margin: 0 5px 0;
  vertical-align: middle;
}

.lp-zenkokuryokoshien .shareBtn li :last-child {
  margin-right: 0;
}

@media (min-width: 768px) {
  .lp-zenkokuryokoshien .shareArea {
    margin-top: 84px;
  }
  .lp-zenkokuryokoshien .shareBtn li {
    margin: 0 10px 0 0;
  }
}

.lp-zenkokuryokoshien .shareBtn li a:link {
  color: #fff;
  text-decoration: none;
}

.lp-zenkokuryokoshien .shareBtn li a:visited {
  color: #fff;
  text-decoration: none;
}

.lp-zenkokuryokoshien .btn-fb {
  background-color: #1877f2;
  border-radius: 4px;
  border: 1px solid #1877f2;
}

.lp-zenkokuryokoshien .btn-fb:hover {
  background-color: #1877f2;
  opacity: 0.8;
}

.lp-zenkokuryokoshien .btn-fb img {
  height: 20px;
}

.lp-zenkokuryokoshien .shareBtn .twitter i {
  background-color: #00acec;
  border-radius: 75%;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}

.lp-zenkokuryokoshien .shareBtn .twitter i img {
  width: 14px;
}

.lp-zenkokuryokoshien .shareBtn .line i {
  background-color: #01c301;
  border-radius: 75%;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}

.lp-zenkokuryokoshien .shareBtn .line i img {
  width: 14px;
}

@media (min-width: 768px) {
  .lp-zenkokuryokoshien .shareBtn {
    bottom: 30px;
    margin: 0 auto;
  }
  .lp-zenkokuryokoshien .shareBtn li {
    display: inline-block;
  }
  .lp-zenkokuryokoshien .shareBtn li:nth-child(1) span.text {
    margin: 0 20px 0 5px;
  }
  .lp-zenkokuryokoshien .shareBtn li:nth-child(2) span.text {
    margin: 0 0px 0 5px;
  }
  .lp-zenkokuryokoshien .shareBtn li a:link {
    color: #fff;
    text-decoration: none;
  }
  .lp-zenkokuryokoshien .shareBtn li a:visited {
    color: #fff;
    text-decoration: none;
  }
}

.lp-zenkokuryokoshien .shareBtn li {
  display: inline-block;
  font-weight: bold;
}

@media (max-width: 767px) {
  .lp-zenkokuryokoshien .shareBtn li {
    margin: 0 5px 0;
  }
}

.lp-zenkokuryokoshien .shareBtn li a:link {
  color: #fff;
  text-decoration: none;
}

.lp-zenkokuryokoshien .shareBtn li a:visited {
  color: #fff;
  text-decoration: none;
}

.lp-zenkokuryokoshien .shareBtn .facebook i {
  width: 36px;
  height: 36px;
  display: inline-block;
  background-color: #1877f2;
  border-radius: 75%;
  background-repeat: no-repeat;
  background-size: 8px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-fb.png);
}

.lp-zenkokuryokoshien .shareBtn .twitter i {
  width: 36px;
  height: 36px;
  background-color: #00acec;
  border-radius: 75%;
  background-size: 14px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-tw.png);
}

.lp-zenkokuryokoshien .shareBtn .line i {
  width: 36px;
  height: 36px;
  background-color: #01c301;
  border-radius: 100%;
  background-size: 18px;
  background-position: 50% 50%;
  background-image: url(/stcontents/img/common/icon-line.png);
}

.lp-zenkokuryokoshien div.registArea {
  padding: 46px 16px 0;
}

.lp-zenkokuryokoshien div.registArea p.headline {
  font-size: 18px;
  font-weight: bold;
  padding: 0px 0px 24px;
  text-align: center;
}

.lp-zenkokuryokoshien div.registArea .btn-relux {
  width: 100%;
  padding: 7px 10px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien div.registArea {
    background-color: #FFFFFF;
    margin: 10px;
    padding: 0;
    border: 5px solid #DFDFDF;
  }
  .lp-zenkokuryokoshien div.registArea .btn-relux {
    width: auto;
    padding: 5px 10px;
  }
}

.lp-zenkokuryokoshien div.registArea div.saisonInner {
  padding: 15px 20px 5px;
}

.lp-zenkokuryokoshien .registBoxWrap {
  display: table;
  width: 100%;
}

.lp-zenkokuryokoshien .registBoxWrap > div {
  margin-bottom: 10px;
}

.lp-zenkokuryokoshien .registBoxWrap > div a.btn {
  padding: 12px 0 10px;
}

.lp-zenkokuryokoshien div.registArea div.mailInput {
  width: 100%;
  display: table;
}

.lp-zenkokuryokoshien div.registArea div.mailInput input,
.lp-zenkokuryokoshien div.registArea div.mailInput a.btn {
  display: table-cell;
  width: 75px;
}

.lp-zenkokuryokoshien div.registArea div.mailInput input {
  width: 100%;
  height: 44px;
  border: none;
  border: 1px solid #CCCCCC;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  padding-left: 3%;
  padding-right: 3%;
  -webkit-appearance: none;
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.lp-zenkokuryokoshien div.registArea div.mailInput input:focus {
  outline: none;
}

.lp-zenkokuryokoshien div.registArea input::-webkit-input-placeholder {
  color: #333333;
}

.lp-zenkokuryokoshien div.registArea input::-moz-input-placeholder {
  color: #333333;
}

.lp-zenkokuryokoshien div.registArea div.mailInput a.btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  width: 33%;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien div.registArea div.mailInput a.btn {
    width: 75px;
  }
}

.lp-zenkokuryokoshien div.registArea p.txt {
  font-size: 11px;
  margin-bottom: 10px;
  text-align: left;
}

.lp-zenkokuryokoshien div.registArea .loginBtn {
  text-align: center;
}

.lp-zenkokuryokoshien div.registArea p.kiyaku {
  font-size: 11px;
  margin-bottom: 10px;
}

.lp-zenkokuryokoshien div.registArea p.txt a,
.lp-zenkokuryokoshien div.registArea p.kiyaku a {
  text-decoration: none !important;
  border-bottom: 1px solid #555;
}

.lp-zenkokuryokoshien div.registArea p.txt a:hover,
.lp-zenkokuryokoshien div.registArea p.kiyaku a:hover {
  border: none;
}

.lp-zenkokuryokoshien div.aulogin-failed-message {
  color: red;
  padding-top: 5px;
}

.lp-zenkokuryokoshien div.registBoxWrap > .googleBox {
  border-radius: 2px;
}

@media (min-width: 768px) {
  .lp-zenkokuryokoshien div.registArea {
    width: 100%;
    position: absolute;
    bottom: 16px;
    left: 0;
    padding: 0px;
    background: none;
    margin: inherit;
    border: none;
    color: #FFFFFF;
  }
  .lp-zenkokuryokoshien div.registArea div.inner {
    max-width: 960px;
    margin: 0 auto;
    padding: 15px 20px 15px;
  }
  .lp-zenkokuryokoshien div.registBoxWrap > div {
    display: table-cell;
    vertical-align: bottom;
    padding: 0 0px;
    width: 33.333333%;
    padding: 0 10px;
  }
  .lp-zenkokuryokoshien div.registArea div.facebookBox {
    padding-left: 0;
  }
  .lp-zenkokuryokoshien div.registArea div.ctr {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .lp-zenkokuryokoshien div.registArea div.mailInput input {
    border: 1px solid #FFFFFF;
    margin-right: 0;
  }
  .lp-zenkokuryokoshien div.registArea p.txt {
    font-size: 11px;
    margin: 15px 0;
  }
  .lp-zenkokuryokoshien div.registArea p.txt a,
  .lp-zenkokuryokoshien div.registArea p.kiyaku a {
    text-decoration: underline;
    border-bottom: 1px solid #fff;
    color: #FFFFFF;
  }
  .lp-zenkokuryokoshien div.registArea p.txt a:hover,
  .lp-zenkokuryokoshien div.registArea p.kiyaku a:hover {
    text-decoration: none;
  }
}

@media (max-width: 959px) {
  .lp-zenkokuryokoshien {
    /* 画面外にいる状態 */
    /* 画面内に入った状態 */
  }
  .lp-zenkokuryokoshien .fadein {
    opacity: 0.1;
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);
    -webkit-transition: all 500ms;
    transition: all 500ms;
  }
  .lp-zenkokuryokoshien .fadein.scrollin {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.lp-zenkokuryokoshien .container .pointup {
  background: #f2eeeb;
  padding: 42px 0 8px;
  overflow: hidden;
}

.lp-zenkokuryokoshien .container .pointup .wrap {
  padding-bottom: 20px;
}

.lp-zenkokuryokoshien .container .pointup h2 {
  color: #a72228;
}

.lp-zenkokuryokoshien .container .pointup .flex {
  margin-bottom: 40px;
}

.lp-zenkokuryokoshien .container .pointup .flex > div:first-child {
  margin-bottom: 40px;
}

.lp-zenkokuryokoshien .container .pointup .flex p {
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .pointup .box {
  background-color: #fff;
  border-radius: 10px;
  border: solid 4px #a72228;
  padding: 30px 20px 0;
}

.lp-zenkokuryokoshien .container .pointup .section h3 {
  margin-bottom: 24px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.6;
  color: #a72228;
}

.lp-zenkokuryokoshien .container .pointup .box dl {
  display: block;
  padding-top: 10px;
}

.lp-zenkokuryokoshien .container .pointup .box dl dt {
  background-color: #a72228;
  width: 210px;
  height: 36px;
  border-radius: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  line-height: 1;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
}

.lp-zenkokuryokoshien .container .pointup .box dl dd {
  width: 100%;
  margin-bottom: 30px;
  line-height: 1.8;
  font-weight: bold;
  font-size: 14px;
  color: #a72228;
}

.lp-zenkokuryokoshien .detailLink a {
  text-decoration: none;
  font-size: 15px;
  color: #333;
}

.lp-zenkokuryokoshien .detailLink:before {
  content: url(/stcontents/img/sp/detail/icon/relux-icon_icon-navigate-right.svg);
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin: -2px 2px 0 -6px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .pointup {
    padding: 90px 0 0;
  }
  .lp-zenkokuryokoshien .container .pointup .wrap {
    padding-bottom: 50px;
  }
  .lp-zenkokuryokoshien .container .pointup .section {
    margin-bottom: 80px;
  }
  .lp-zenkokuryokoshien .container .pointup .section h3 {
    font-size: 24px;
  }
  .lp-zenkokuryokoshien .container .pointup .flex {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 70px;
  }
  .lp-zenkokuryokoshien .container .pointup .flex > div:first-child {
    width: 530px;
  }
  .lp-zenkokuryokoshien .container .pointup .flex > div:nth-child(2) {
    width: calc(100% - 558px);
    margin-left: 28px;
  }
  .lp-zenkokuryokoshien .container .pointup .flex p {
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .pointup .box {
    padding: 50px 64px 34px;
  }
  .lp-zenkokuryokoshien .container .pointup .box dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .lp-zenkokuryokoshien .container .pointup .box dl dt {
    margin-bottom: 30px;
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .pointup .box dl dd {
    width: calc(100% - 230px);
    margin-left: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .detailLink a {
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .detailLink:before {
    width: 36px;
    height: 36px;
  }
}

.lp-zenkokuryokoshien .container .steps {
  margin-bottom: 0;
}

.lp-zenkokuryokoshien .container .steps dl {
  margin-top: 40px;
}

.lp-zenkokuryokoshien .container .steps dl dt,
.lp-zenkokuryokoshien .container .steps dl dd {
  margin-bottom: 30px;
}

.lp-zenkokuryokoshien .container .steps dl dt {
  width: 133px;
  height: 36px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #1973b7;
  margin-top: 3px;
  font-weight: bold;
  font-size: 17px;
  color: #fff;
}

.lp-zenkokuryokoshien .container .steps dl h3 {
  line-height: 1.4;
  font-size: 20px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .steps .box {
  border: none;
  overflow: hidden;
}

.lp-zenkokuryokoshien .container .steps .box {
  padding: 20px 16px 25px;
}

.lp-zenkokuryokoshien .container .steps .apli-figure {
  line-height: 1.8;
}

.lp-zenkokuryokoshien .container .steps .apli-figure span {
  display: block;
  clear: both;
  padding-bottom: 20px;
}

.lp-zenkokuryokoshien .container .steps .apli-figure img {
  max-width: 60%;
  width: 389px;
  float: left;
  margin-right: 24px;
}

.lp-zenkokuryokoshien .container .steps a {
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .steps .etiquetteLink a {
  display: inline-block;
  margin-top: 20px;
}

.lp-zenkokuryokoshien .container .steps .notice {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 0 2px;
  line-height: 1.8;
  font-size: 13px;
}

.lp-zenkokuryokoshien .container .steps .notice:before {
  background: #aac7da;
  content: '';
  display: block;
  width: 16px;
  height: 80px;
  border-radius: 10px;
  float: left;
  margin-right: 12px;
  vertical-align: middle;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon li {
  width: 33%;
  padding: 0 20px;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon.col-2 li {
  width: 50%;
  padding-top: 10px;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon img {
  width: 150%;
  max-width: 500px;
  margin-left: -25%;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon.col-2 img {
  max-width: 100%;
  margin-left: 0;
}

.lp-zenkokuryokoshien .container .steps .howto-coupon li .caption {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6;
  font-size: 16px;
}

.lp-zenkokuryokoshien .container .weekday ul {
  display: block;
}

.lp-zenkokuryokoshien .container .weekday ul li {
  width: 100%;
  max-height: 196px;
  height: 28vw;
}

.lp-zenkokuryokoshien .container .weekday ul li a {
  font-size: 16px;
}

.lp-zenkokuryokoshien .container .weekday ul .east {
  background: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/bnr-weekday-01.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .container .weekday ul .west {
  background: url(/stcontents/img/sub-page/lp/zenkokuryokoshien/bnr-weekday-02.jpg) no-repeat center center;
  background-size: cover;
}

.lp-zenkokuryokoshien .container .afterReserve ul {
  font-size: 14px;
  font-weight: bold;
}

.lp-zenkokuryokoshien .container .afterReserve ul a {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .afterReserve ul {
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .steps .coupon-paper .s-small {
    max-width: 70%;
  }
  .lp-zenkokuryokoshien .container .steps .coupon-paper .small {
    max-width: 80%;
  }
  .lp-zenkokuryokoshien .container .weekday ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .lp-zenkokuryokoshien .container .weekday ul li {
    width: 48.5%;
    height: 196px;
  }
  .lp-zenkokuryokoshien .container .weekday ul li a {
    font-size: 28px;
  }
}

.lp-zenkokuryokoshien .etiquetteLink a {
  position: relative;
  text-decoration: none;
}

.lp-zenkokuryokoshien .etiquetteLink a:before {
  background: url(/stcontents/img/common/icon_arrow_blue.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  vertical-align: middle;
  margin: -2px 6px 0 0;
}

.lp-zenkokuryokoshien div#footer {
  margin-bottom: 70px;
}

.lp-zenkokuryokoshien .float-bar {
  background: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 10;
  -webkit-box-shadow: 0 0 4px #ccc;
          box-shadow: 0 0 4px #ccc;
}

.lp-zenkokuryokoshien .float-bar .topBtn {
  width: 100%;
}

.lp-zenkokuryokoshien .topBtn a {
  width: calc(100% - 32px);
  height: 48px;
  margin: 0 auto;
  padding: 0 10px;
  border-radius: 4px;
  background-color: #0f0a64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #fff;
}

.lp-zenkokuryokoshien .container .kanpu h3 {
  margin-bottom: 12px;
  font-size: 18px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .container .kanpu .small {
  line-height: 1.6;
}

.lp-zenkokuryokoshien .container .kanpu .notice {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.8;
  padding-left: 1.5em;
  text-indent: -1.1em;
}

.lp-zenkokuryokoshien .container .kanpu .notice li {
  margin-top: 20px;
}

.lp-zenkokuryokoshien .container .refund {
  margin-bottom: 72px;
}

.lp-zenkokuryokoshien .container .refund .box {
  padding: 25px 16px;
}

.lp-zenkokuryokoshien .container .refund h3 {
  color: #1675b9;
}

.lp-zenkokuryokoshien .container .flex-box p {
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .refund ul {
  padding-left: 1.5em;
  line-height: 2;
  font-weight: bold;
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .refund ul li {
  list-style: disc;
}

.lp-zenkokuryokoshien .container .refund ul li + li {
  margin-top: 5px;
}

.lp-zenkokuryokoshien .container .refund .note li {
  margin-top: 10px;
  line-height: 1.8;
}

.lp-zenkokuryokoshien .container .delete-box {
  position: relative;
  padding: 20px 20px;
  color: #454545;
}

.lp-zenkokuryokoshien .container .delete-box:before {
  content: "";
  display: block;
  background: #ddd;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.7;
}

.lp-zenkokuryokoshien .container .delete-message {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  font-weight: bold;
  font-size: 24px !important;
  color: #000;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .container .refund .note h3 {
    margin-bottom: 12px;
    font-size: 14px;
  }
  .lp-zenkokuryokoshien .container .refund .note ul {
    line-height: 1.6;
    font-weight: normal;
    font-size: 12px;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon {
    display: block;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon li {
    width: auto !important;
    padding: 0 0 10px !important;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon li .caption {
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon li .figure {
    text-align: center;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon img {
    width: 100%;
    margin: 0 auto;
  }
  .lp-zenkokuryokoshien .container .steps .howto-coupon.col-2 img {
    max-width: 500px;
  }
  .lp-zenkokuryokoshien .container .delete-box,
  .lp-zenkokuryokoshien .container .delete-box p {
    font-size: 10px;
  }
  .lp-zenkokuryokoshien .container .delete-box h3 {
    font-size: 14px;
  }
  .lp-zenkokuryokoshien .container .delete-message {
    top: 46%;
    padding: 0 10px;
    font-size: 16px !important;
    letter-spacing: 0;
  }
  .lp-zenkokuryokoshien .container .kanpu .notice {
    font-size: 15px;
  }
}

.lp-zenkokuryokoshien .container .flex-box .photo {
  margin-bottom: 40px;
  text-align: center;
}

.lp-zenkokuryokoshien .container .flex-box .photo img {
  width: 274px;
}

.lp-zenkokuryokoshien .container .flex-box .caption {
  margin-bottom: 20px;
}

.lp-zenkokuryokoshien .container .flex-box .photo:last-of-type,
.lp-zenkokuryokoshien .container .flex-box .caption:last-of-type {
  margin-bottom: 0;
}

.lp-zenkokuryokoshien .container .flex-box .caption p {
  line-height: 1.8;
}

.lp-zenkokuryokoshien .container .flex-box .caption .large {
  letter-spacing: 0;
}

.lp-zenkokuryokoshien .container .flex-box .caption .small {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .etiquetteLink a:before {
    width: 18px;
    height: 18px;
    margin: -3px 8px 0 0;
  }
  .lp-zenkokuryokoshien .container .steps dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-top: 56px;
  }
  .lp-zenkokuryokoshien .container .steps dl dt,
  .lp-zenkokuryokoshien .container .steps dl dd {
    margin-bottom: 70px;
  }
  .lp-zenkokuryokoshien .container .steps dl dd {
    width: calc(100% - 163px);
    margin-left: 30px;
  }
  .lp-zenkokuryokoshien .container .steps dl h3 {
    font-size: 32px;
  }
  .lp-zenkokuryokoshien .container .steps .box {
    padding: 26px 40px 40px;
  }
  .lp-zenkokuryokoshien .container .steps .apli-figure img {
    width: calc(59% - 24px);
  }
  .lp-zenkokuryokoshien .container .steps .apli-figure span {
    width: 41%;
    display: inline;
    float: right;
    clear: none;
  }
  .lp-zenkokuryokoshien .container .steps .notice {
    padding: 20px 0 12px;
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .steps .notice:before {
    width: 11px;
    height: 65px;
    margin-right: 16px;
  }
  .lp-zenkokuryokoshien .topBtn a {
    width: 360px;
  }
  .lp-zenkokuryokoshien .container .refund {
    margin-bottom: 120px;
  }
  .lp-zenkokuryokoshien .container .refund .box {
    padding: 30px 40px;
  }
  .lp-zenkokuryokoshien .container .flex-box p {
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .flex-box .small {
    font-size: 12px;
  }
  .lp-zenkokuryokoshien .container .refund ul {
    font-size: 16px;
  }
  .lp-zenkokuryokoshien .container .flex-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .lp-zenkokuryokoshien .container .flex-box .photo {
    width: 40%;
    margin-bottom: 40px;
    text-align: left;
  }
  .lp-zenkokuryokoshien .container .flex-box .caption {
    width: 60%;
    margin-bottom: 40px;
    padding-left: 28px;
  }
  .lp-zenkokuryokoshien .container .kanpu h3 {
    margin-bottom: 24px;
    font-size: 20px;
  }
}

.lp-zenkokuryokoshien .container .gotoCoupon {
  margin-bottom: 42px;
}

.lp-zenkokuryokoshien .container .gotoCoupon ul {
  line-height: 1.7;
  font-weight: bold;
}

.lp-zenkokuryokoshien .container .gotoCoupon .small p,
.lp-zenkokuryokoshien .container .gotoCoupon .note {
  font-size: 13px;
}

.lp-zenkokuryokoshien .container .gotoCoupon ul {
  font-size: 15px;
}

.lp-zenkokuryokoshien .container .gotoCoupon ul li {
  clear: both;
}

.lp-zenkokuryokoshien .container .gotoCoupon h3 {
  color: #1675b9;
}

.lp-zenkokuryokoshien .container .gotoCoupon .box .pt-48 {
  padding-top: 20px;
}

.lp-zenkokuryokoshien .container .gotoCoupon .large-image img {
  width: 100%;
}

.lp-zenkokuryokoshien .container .gotoCoupon .apli-figure img {
  max-width: 60%;
  width: 389px;
  float: left;
  margin-right: 24px;
}

.lp-zenkokuryokoshien .container .gotoCoupon .note {
  padding-left: 1.5em;
  line-height: 1.6;
  font-weight: normal;
}

.lp-zenkokuryokoshien .container .gotoCoupon .note li {
  font-size: 12px !important;
}

.lp-zenkokuryokoshien .container .gotoCoupon .note .square-s {
  margin: 14px 0;
  padding-left: 1.4em;
  text-indent: 0;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .gotoCoupon {
    margin-bottom: 90px;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .wrap > ul li,
  .lp-zenkokuryokoshien .container .gotoCoupon .ul-large li {
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon ul,
  .lp-zenkokuryokoshien .container .gotoCoupon .note li {
    font-size: 16px !important;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .small p {
    font-size: 14px !important;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .note {
    font-weight: bold;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .large-image img {
    width: 70%;
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .apli-figure img {
    width: calc(59% - 24px);
  }
  .lp-zenkokuryokoshien .container .gotoCoupon .box .pt-48 {
    padding-top: 48px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP {
  margin-top: 16px;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP {
    display: none;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle {
  cursor: pointer;
  height: 44px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  line-height: 44px;
  text-align: center;
  border-radius: 4px;
  position: relative;
  margin-top: 16px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle::before {
  border-top: 1.5px solid #333;
  border-right: 1.5px solid #333;
  bottom: 0;
  content: "";
  height: 7px;
  margin: auto;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 7px;
  border-top: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  right: 20px;
  bottom: 4px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle.is-actived::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 8px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox {
  margin: 8px 0 24px;
  display: none;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox.is-open {
  display: block;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetail {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxta {
  font-size: 11px;
  font-size: 0.6875rem;
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtb {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
  margin-top: 4px;
  padding-right: 20px;
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtc {
  white-space: nowrap;
  font-size: 14px;
  font-weight: bold;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC {
  display: none;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC {
    display: block;
    margin-top: 40px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .forCenter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC p {
  text-align: center;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .forFlex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .ListItemTitleBox {
  height: 88px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  border-radius: 4px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .ListItemTitleBox:nth-child(n + 2) {
  margin-left: 8px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .ListItemTitleBox {
    font-size: 18px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .ListItemConditionsBox {
  margin-top: 8px;
  height: 104px;
  border-radius: 4px;
  background-color: #ccc;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .ListItemConditionsBox:nth-child(n + 2) {
  margin-left: 8px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .memberStatuswidthLeft {
  width: 180px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .memberStatuswidthLeft {
    width: 208px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .forPadding {
  padding: 0 12px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .ListItemResultBox {
  margin-top: 8px;
  height: 124px;
  border-radius: 4px;
  background-color: #fff;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .ListItemResultBox:nth-child(n + 2) {
  display: block;
  line-height: 1.5;
  margin-left: 8px;
  padding-top: 15px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .memberStatuswidthRight {
  width: calc((100% - 180px - 32px) / 4);
  position: relative;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .memberStatuswidthRight {
    width: calc((100% - 208px - 32px) / 4);
  }
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .statusListItemTxta {
  font-size: 11px;
  font-size: 0.6875rem;
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .statusListItemTxtb {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  margin-top: 2px;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .statusListItemTxtb {
    font-size: 16px;
    font-size: 1rem;
  }
}

.lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .statusListItemTxtc {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .container .memberStatusIntroduce__statusListPC .statusListItemTxtc {
    font-size: 16px;
    font-size: 1rem;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .statusListItemTxtd {
  font-size: 16px;
  font-size: 1rem;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusListPC .statusListItemTxtd {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusAttention {
  margin-top: 24px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusAttention {
    margin-top: 32px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusAttentionTitle {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
  color: #666;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusAttentionTxt {
  font-size: 12px;
  font-size: 0.75rem;
  margin-top: 4px;
  color: #666;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusCheck {
  width: 100vw;
  margin-top: 40px;
  background-color: #0f0a64;
  overflow: hidden;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheck {
    margin-top: 80px;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckWrapper {
    max-width: 960px;
    margin: 80px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckLeft {
    padding-right: 116px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckTitle {
  padding: 32px 32px 0;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckTitle {
    padding: 0;
    font-size: 28px;
    font-size: 1.75rem;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckTxt {
  padding: 0 32px;
  font-size: 13px;
  font-size: 0.8125rem;
  color: #fff;
  margin-top: 8px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckTxt {
    margin-top: 10px;
    padding: 0;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckBtn {
  width: calc(100vw - 64px);
  margin: 24px 32px 32px;
  border-radius: 4px;
  line-height: 44px;
  display: block;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  color: #0f0a64 !important;
  height: 44px;
  background-color: #fff;
  text-decoration: none !important;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusCheckBtn {
    margin: 0;
    width: auto;
    padding: 0 20px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusFeature {
  margin-top: 40px;
  text-align: center;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusFeature {
    margin-top: 80px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxtBox {
  display: inline-block;
}

@media screen and (min-width: 960px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxtBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxt {
  font-size: 16px;
  font-size: 1rem;
  margin-top: 32px;
  background: url("../../../img/sub-page/lp/member_status/brand.jpg") 0 -2px no-repeat;
  padding-left: 48px;
  background-size: 30px 30px;
  text-align: left;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxt {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 960px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxt {
    background-size: 64px 64px;
    padding-left: 74px;
    margin-top: 48px;
    width: calc((100% / 3) - 40px * 2);
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxt br {
  display: none;
}

@media screen and (min-width: 960px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusFeatureTxt br {
    display: block;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgement {
  padding: 32px 8px;
  margin-top: 40px;
  background-image: url("../../../img/sub-page/lp/member_status/bg.jpg");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgement {
    padding: 80px 16px;
    margin-top: 80px;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgement {
    padding: 80px 16px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementContainer {
  margin: 0 auto;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementInner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 32px 16px;
  background-color: #fff;
  border-radius: 6px;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementInner {
    padding: 80px 64px;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementInner {
    max-width: 960px;
    margin: auto;
    padding: 80px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTitleSub {
  font-size: 12px;
  font-size: 0.75rem;
  margin-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #efefef;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTitleSub {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #efefef;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementFlex {
  margin-top: 16px;
}

@media screen and (min-width: 900px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementFlex {
    margin-top: 24px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTitle {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTitle {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
}

@media screen and (min-width: 900px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTitle {
    width: 144px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTxtBox {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 8px;
}

@media screen and (min-width: 900px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTxtBox {
    margin-top: 0px;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTxt {
  font-size: 12px;
  font-size: 0.75rem;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTxt + .memberStatusIntroduce__statusJudgementTxt {
  margin-top: 12px;
}

@media screen and (min-width: 640px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementTxt {
    font-size: 16px;
    font-size: 1rem;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementImgTitle {
  margin-top: 24px;
  text-align: center;
  background-color: #ccc;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
  height: 32px;
  line-height: 32px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementImg img {
  width: 100%;
}

@media screen and (min-width: 600px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementImgSP {
    display: none;
  }
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementImgPC {
  display: none;
}

@media screen and (min-width: 600px) {
  .lp-zenkokuryokoshien .memberStatusIntroduce__statusJudgementImgPC {
    display: block;
  }
}

.lp-zenkokuryokoshien .container .forCenter {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.lp-zenkokuryokoshien .container .forFlex p {
  font-weight: normal;
}

.lp-zenkokuryokoshien .container .forFlex .arrow {
  width: 100%;
  display: block;
  text-align: center;
}

.lp-zenkokuryokoshien .container .forFlex .arrow:after {
  content: "";
  display: inline-block;
  border: 9px solid transparent;
  border-top: 9px solid #000;
  margin-bottom: -9px;
}

.lp-zenkokuryokoshien .container .forFlex .bold {
  font-weight: bold;
  font-size: 28px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .arrow {
  font-size: 22px;
}

.lp-zenkokuryokoshien .memberStatusIntroduce__statusListSP .arrow:before {
  content: "";
  display: inline-block;
  margin: 0 6px 0 12px;
  border: 6px solid transparent;
  border-left: 6px solid #000;
}

.lp-zenkokuryokoshien div.bunsan {
  width: 140px;
  margin: auto;
}

@media screen and (min-width: 600px) {
  .lp-zenkokuryokoshien div.bunsan {
    width: 120px;
    margin: 0;
  }
  .lp-zenkokuryokoshien div.title_bunsan {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .lp-zenkokuryokoshien h2.text_bunsan {
    margin-top: 30px;
  }
}

.lp-zenkokuryokoshien div#section01-2 {
  padding: 0;
}

.lp-zenkokuryokoshien div#section01-2 .box:before {
  content: "Go To トラベルキャンペーンは一時停止しております。";
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 8px;
  padding: 0 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 40px;
  text-align: center;
  font-weight: bold;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien div#section01-2 .box:before {
    padding: 0 16px;
    font-size: 22px;
  }
}

.lp-zenkokuryokoshien div.registBoxWrap > div {
  margin-bottom: 16px;
  padding: 0 10px;
}

.lp-zenkokuryokoshien .registBoxWrap .aulogin-failed-message {
  display: none;
}

.lp-zenkokuryokoshien .registBoxWrap > div a.btn {
  border-radius: 2px !important;
}

.lp-zenkokuryokoshien div.registArea div.mailInput a.btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.lp-zenkokuryokoshien .registArea .btn-gg {
  border: none;
}

.lp-zenkokuryokoshien .registArea-2 .registArea .btn-gg {
  border: 1px solid #757575;
}

.lp-zenkokuryokoshien .registArea-2 .registArea div.mailInput input {
  border: 1px solid #757575;
  border-right: none;
}

.lp-zenkokuryokoshien .container h3.blue {
  color: #1973b7;
}

.lp-zenkokuryokoshien .bg-gray-map {
  background: #EFEFEF;
  padding: 50px 0 200px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .registBoxWrap {
    max-width: 540px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 auto;
  }
  .lp-zenkokuryokoshien .registArea .btn-gg {
    border: none;
  }
  .lp-zenkokuryokoshien div.registBoxWrap > div {
    width: 50%;
  }
  .lp-zenkokuryokoshien div.registArea div.facebookBox {
    padding-left: 10px;
  }
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .registArea .btn-gg {
    border: 1px solid #757575;
  }
  .lp-zenkokuryokoshien div.registArea div.mailInput input {
    border: 1px solid #757575;
    border-right: none;
  }
}

.lp-zenkokuryokoshien .section .bnr-box a {
  display: block;
  margin-bottom: 16px;
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien .section .bnr-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .lp-zenkokuryokoshien .section .bnr-box a {
    width: 48%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .lp-zenkokuryokoshien {
    /* IE対応 */
  }
  .lp-zenkokuryokoshien .other .area-map {
    background: url(/stcontents/img/common/area-map.svg) no-repeat center top;
    background-size: contain;
    width: 684px;
    height: 372px;
    position: relative;
    margin: 0 auto;
  }
  .lp-zenkokuryokoshien .other .area-map > div {
    width: 82px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    z-index: 0;
  }
  .lp-zenkokuryokoshien .other .area-map > .saninsanyou {
    width: 95px;
  }
  .lp-zenkokuryokoshien .other .hokkaido {
    top: 0;
    left: 330px;
  }
  .lp-zenkokuryokoshien .other .tohoku {
    top: -6px;
    left: 558px;
  }
  .lp-zenkokuryokoshien .other .kitakanto {
    top: 172px;
    left: 558px;
  }
  .lp-zenkokuryokoshien .other .syutoken {
    top: 276px;
    left: 515px;
  }
  .lp-zenkokuryokoshien .other .koshinetsu {
    top: 68px;
    left: 325px;
  }
  .lp-zenkokuryokoshien .other .hokuriku {
    top: 120px;
    left: 228px;
  }
  .lp-zenkokuryokoshien .other .tokai {
    top: 302px;
    left: 426px;
  }
  .lp-zenkokuryokoshien .other .kinki {
    top: 322px;
    left: 330px;
  }
  .lp-zenkokuryokoshien .other .saninsanyou {
    top: 134px;
    left: 106px;
  }
  .lp-zenkokuryokoshien .other .shikoku {
    top: 358px;
    left: 227px;
  }
  .lp-zenkokuryokoshien .other .kyushu {
    top: 326px;
    left: 30px;
  }
  .lp-zenkokuryokoshien .other .okinawa {
    top: 36px;
    left: 192px;
  }
  .lp-zenkokuryokoshien .other .area-map a {
    background: #1973B7;
    border-radius: 2px;
    display: block;
    position: relative;
    text-decoration: none;
    padding: 2px 8px 3px;
    line-height: 1.5;
    font-size: 12px;
    color: #fff;
  }
  .lp-zenkokuryokoshien .other .area-map a:after {
    background: url(/stcontents/img/common/relux-icon_icon-navigate-right-white.svg) no-repeat 0 0;
    background-size: contain;
    content: "";
    width: 18px;
    height: 18px;
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -9px;
  }
  .lp-zenkokuryokoshien .other .area-map a:hover {
    opacity: 0.8;
  }
  .lp-zenkokuryokoshien .other .area-map > div.disabled {
    pointer-events: none;
  }
  .lp-zenkokuryokoshien .other .area-map a.disabled {
    background: #f4f4f4 !important;
    cursor: default;
    color: #666 !important;
    opacity: 1;
  }
  .lp-zenkokuryokoshien .other .area-map a.disabled:after {
    display: none !important;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title {
    overflow: hidden;
    font-weight: bold;
    border-bottom: 1px solid #fff;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a {
    background: #fff !important;
    color: #0f0a64;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a:hover {
    opacity: 1 !important;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a:after {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    right: 1px;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a.finish,
  .lp-zenkokuryokoshien .other .area-map .area-title a.stop,
  .lp-zenkokuryokoshien .other .area-map .area-title a.end {
    background: #666 !important;
    color: #fff !important;
    pointer-events: none;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a.finish {
    background: #ccc !important;
  }
  .lp-zenkokuryokoshien .other .area-map .area-title a.finish:after,
  .lp-zenkokuryokoshien .other .area-map .area-title a.stop:after,
  .lp-zenkokuryokoshien .other .area-map .area-title a.end:after {
    content: none !important;
  }
  .lp-zenkokuryokoshien .other .area-map > div .area-title a:after {
    -webkit-transform: rotate(0);
            transform: rotate(0);
    display: none;
  }
  .lp-zenkokuryokoshien .other .area-map .hokkaido .area-title a,
  .lp-zenkokuryokoshien .other .area-map .okinawa .area-title a {
    background: #1973B7 !important;
    color: #fff;
  }
  .lp-zenkokuryokoshien .other .area-map .hokkaido .area-title a:after,
  .lp-zenkokuryokoshien .other .area-map .okinawa .area-title a:after {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  .lp-zenkokuryokoshien .other .area-map .area-child {
    height: 0;
    overflow: hidden;
  }
  .lp-zenkokuryokoshien .other .area-map > div {
    z-index: 1;
  }
  .lp-zenkokuryokoshien .other .area-map > div .area-title {
    border-radius: 2px 2px 0 0;
    margin-bottom: 0;
  }
  .lp-zenkokuryokoshien .other .area-map > div .area-child {
    height: auto;
  }
  .lp-zenkokuryokoshien .other .area-map > div a {
    border-radius: 0;
  }
  .lp-zenkokuryokoshien .other .area-map .area-child li:last-child a {
    border-radius: 0 0 2px 2px;
    padding-bottom: 5px;
  }
  .lp-zenkokuryokoshien .other .area-map .area-child li:last-child a:after {
    margin-top: -11px;
  }
  .lp-zenkokuryokoshien .other .prepare {
    background: #39B9C9 !important;
    pointer-events: none;
  }
  .lp-zenkokuryokoshien .other .finish,
  .lp-zenkokuryokoshien .other .stop,
  .lp-zenkokuryokoshien .other .end {
    background: #666 !important;
    pointer-events: none;
  }
  .lp-zenkokuryokoshien .other .stop {
    background: #333 !important;
  }
  .lp-zenkokuryokoshien .other .end {
    background: #ccc !important;
  }
  .lp-zenkokuryokoshien .other .disabled {
    background: #f4f4f4 !important;
    color: #c6c6c6 !important;
  }
  .lp-zenkokuryokoshien .other .prepare:after,
  .lp-zenkokuryokoshien .other .finish:after,
  .lp-zenkokuryokoshien .other .end:after,
  .lp-zenkokuryokoshien .other .stop:after,
  .lp-zenkokuryokoshien .other .disabled:after {
    display: none !important;
  }
  .lp-zenkokuryokoshien .other .hokkaido .btn-modal-iframe:after,
  .lp-zenkokuryokoshien .other .okinawa .btn-modal-iframe:after {
    display: block !important;
  }
  .lp-zenkokuryokoshien .other .hokkaido .area-title a:hover,
  .lp-zenkokuryokoshien .other .okinawa .area-title a:hover {
    opacity: 0.7 !important;
  }
  .lp-zenkokuryokoshien .other .usage {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 16px;
  }
  .lp-zenkokuryokoshien .other .usage > div {
    background: #1973B7;
    width: 82px;
    height: 32px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 10px;
    padding: 4px 8px 5px;
    border-radius: 4px;
    font-size: 14px;
    color: #fff;
  }
  .lp-zenkokuryokoshien .searchOtherType li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 32px;
    text-decoration: none;
    position: relative;
    color: #333;
  }
  .lp-zenkokuryokoshien .searchOtherType li a:after {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url(/stcontents/img/common/relux-icon_icon-navigate-right.svg) no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: -4px;
    margin-top: -13px;
  }
  .lp-zenkokuryokoshien .searchOtherType li a:hover {
    opacity: 0.7;
  }
  .lp-zenkokuryokoshien .searchOtherType li img {
    width: 52px;
    margin-right: 20px;
    border-radius: 50%;
  }
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien {
    /*
      .newSection .other .areaList li:after {
        content: url(/stcontents/img/common/relux-icon_icon-navigate-right.svg);
        width: 24px;
        height: 24px;
        transform: rotate(90deg);
        position: absolute;
        right: 5px;
        top: 11px;
      }
      .newSection .other .areaList > li:after {
        top: 5px;
        right: 13px;
      }
      */
  }
  .lp-zenkokuryokoshien .newSection {
    width: 100%;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList {
    padding: 6px 0 2px;
    border: 1px solid #ccc;
    border-radius: 2px;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList li {
    position: relative;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList > li {
    margin-bottom: 0;
    border: none;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList > li span {
    display: none;
    padding: 0;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList li.hokkaido a {
    border-top: none;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList li.hokkaido:after,
  .lp-zenkokuryokoshien .newSection .other .areaList li.okinawa:after {
    display: none;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList li.active:after {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul {
    display: block;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul li {
    font-weight: bold;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul li:after {
    right: 13px;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul li a {
    display: block;
    margin: 0 8px;
    padding: 13px 8px;
    border-top: 1px solid #ccc;
    font-size: 13px;
    color: #333;
    text-decoration: none;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul ul {
    overflow: hidden;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul ul li {
    font-weight: normal;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul ul li a {
    margin-left: 16px;
    border-top: 1px solid #efefef;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul li a.disabled {
    text-decoration: none;
    color: #ccc;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList li.okinawa a {
    padding-bottom: 10px;
  }
  .lp-zenkokuryokoshien .newSection .other .areaList ul ul li:after {
    display: none;
  }
  .lp-zenkokuryokoshien .newSection .searchOtherType {
    background: none;
    margin: 50px 0 0;
    padding: 0;
  }
  .lp-zenkokuryokoshien .newSection .searchOtherType li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 16px;
    text-decoration: none;
    position: relative;
    color: #333;
  }
  .lp-zenkokuryokoshien .newSection .searchOtherType li a:after {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url(/stcontents/img/common/relux-icon_icon-navigate-right.svg) no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: -4px;
    margin-top: -13px;
  }
  .lp-zenkokuryokoshien .newSection .searchOtherType li img {
    width: 48px;
    margin-right: 10px;
    border-radius: 50%;
  }
  .lp-zenkokuryokoshien div.indexContents div.service.newSection {
    margin-right: 0;
  }
  .lp-zenkokuryokoshien .newSection .serviceArea {
    width: 100%;
    overflow-x: auto;
  }
  .lp-zenkokuryokoshien .newSection .serviceArea .serviceBoxWrap {
    width: 1020px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .lp-zenkokuryokoshien .newSection .serviceArea .serviceBoxWrap .serviceBox {
    width: 237px;
    margin: 0 16px 40px 0;
  }
}

.lp-zenkokuryokoshien .note-title {
  font-weight: bold;
  font-size: 24px;
  color: #1973b7;
}

.lp-zenkokuryokoshien .indent-p {
  margin-bottom: 1em !important;
  padding-left: 1em;
  text-indent: -1em;
}

.lp-zenkokuryokoshien .indent-p-2 {
  margin-bottom: 1em !important;
  padding-left: 2.7em;
  text-indent: -2.7em;
}

.lp-zenkokuryokoshien .modal-iframe {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1000;
}

.lp-zenkokuryokoshien .modal-iframe > div {
  background: #fff;
  max-width: 90%;
  width: 700px;
  max-height: 90%;
  height: 600px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.lp-zenkokuryokoshien .modal-iframe iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: none;
}

.lp-zenkokuryokoshien .modal-iframe .btn-close {
  position: absolute;
  top: -12px;
  right: -60px;
  font-weight: 100;
  font-size: 48px;
  color: #fff;
  z-index: 100;
  text-shadow: 0 0 4px #333;
  line-height: 0;
  cursor: pointer;
}

.lp-zenkokuryokoshien .modal-iframe h2 {
  margin: 30px 0 24px;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0;
}

.lp-zenkokuryokoshien .modal-iframe-link {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .lp-zenkokuryokoshien .note-title {
    font-size: 18px;
  }
  .lp-zenkokuryokoshien .indent-p {
    margin-bottom: 1em !important;
    padding-left: 1em;
    text-indent: -1em;
  }
  .lp-zenkokuryokoshien .indent-p-2 {
    margin-bottom: 1em !important;
    padding-left: 2.7em;
    text-indent: -2.7em;
  }
  .lp-zenkokuryokoshien .modal-iframe {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1000;
  }
  .lp-zenkokuryokoshien .modal-iframe > div {
    background: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 20px;
    -webkit-transform: none;
            transform: none;
    max-width: none;
  }
  .lp-zenkokuryokoshien .modal-iframe iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
  }
  .lp-zenkokuryokoshien .modal-iframe .btn-close {
    position: absolute;
    top: 20px;
    right: 16px;
    font-weight: 100;
    font-size: 24px;
    color: #333;
    z-index: 100;
    line-height: 0;
    text-shadow: none;
  }
  .lp-zenkokuryokoshien .modal-iframe h2 {
    margin-bottom: 24px;
    text-align: center;
    font-size: 16px;
    letter-spacing: 0;
  }
  .lp-zenkokuryokoshien .modal-iframe-link {
    margin-top: 16px;
  }
}

.lp-zenkokuryokoshien .bg-figure {
  background: #F3F8FD;
  border-radius: 16px;
  padding: 32px 48px;
}

.lp-zenkokuryokoshien .entry-guide {
  background: #F3F8FD;
  margin-bottom: 40px;
  padding: 16px;
  text-align: center;
  font-weight: bold;
}

.lp-zenkokuryokoshien .entry-guide h3 {
  font-weight: bold;
  font-size: 20px;
  color: #0F0A64;
}

.lp-zenkokuryokoshien .entry-guide .btn-relux {
  width: 300px;
  height: 56px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 16px auto 8px;
  border-radius: 4px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 16px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type p {
  font-size: 14px;
  letter-spacing: 0;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type > div {
  border: 12px solid #F3F8FD;
  margin-right: 24px;
  padding: 13px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type .header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 24px;
  color: #1973B7;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type .header .label {
  background: #1973B7;
  margin-right: 10px;
  padding: 4px 12px 3px;
  border-radius: 20px;
  font-size: 16px;
  color: #fff;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type .typeB {
  color: #39B9C9;
}

.lp-zenkokuryokoshien .zenkoku-coupon .type .typeB .label {
  background: #39B9C9;
}

.lp-zenkokuryokoshien .ongoing {
  background: #1973B7;
  padding: 13px;
  text-align: center;
  color: #fff;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0;
  text-align: center;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list > div {
  background: #F3F8FD;
  margin-right: 24px;
  margin-bottom: 24px;
  padding: 8px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list .item {
  background: #fff;
  float: left;
  margin-top: 8px;
  margin-right: 8px;
  padding: 8px 8px;
  border-radius: 4px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list .item:last-child {
  margin-right: 0;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list .item h4 {
  font-size: 20px;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list .item .type {
  background: #1973B7;
  margin: 8px 0 0;
  padding: 3px 8px 2px;
  border-radius: 20px;
  color: #fff;
}

.lp-zenkokuryokoshien .zenkoku-coupon .list .item .typeB {
  background: #39B9C9;
}

.lp-zenkokuryokoshien .contact-list dl dt,
.lp-zenkokuryokoshien .contact-list dl dd {
  background: #F3F8FD;
  margin-bottom: 16px !important;
  padding: 13px 0;
}

.lp-zenkokuryokoshien .contact-list dl dt {
  width: 36px !important;
  text-indent: -2000px;
  overflow: hidden;
}

.lp-zenkokuryokoshien .contact-list dl dd {
  width: calc(100% - 36px) !important;
}

.lp-zenkokuryokoshien .contact-list .jsc_accordion:before {
  top: 26px !important;
  right: 7px !important;
}

.lp-zenkokuryokoshien .contact-list .jsc_accordion:after {
  top: 12px !important;
  right: 34px !important;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 16px;
  margin-left: 0;
  padding: 16px 16px;
  font-size: 20px;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div {
  padding: 0 16px;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box .text-url {
  font-size: 90%;
  font-weight: normal;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box .text-url a {
  color: inherit;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div:first-child {
  width: 100px;
}

.lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div:last-child {
  width: calc(100% - 100px);
}

.lp-zenkokuryokoshien .contact-list .acc_content {
  margin-top: -20px !important;
}

.lp-zenkokuryokoshien .contact-list .jsc_accordion:hover {
  opacity: 1 !important;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .key-visual {
    height: 520px;
  }
  .lp-zenkokuryokoshien .key-visual .bg {
    height: 100%;
    padding-bottom: 34px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-text {
    padding-top: 100px;
  }
  .lp-zenkokuryokoshien .container .merit table tr {
    display: block;
    overflow: hidden;
  }
  .lp-zenkokuryokoshien .container .merit table th {
    margin-bottom: 10px;
  }
  .lp-zenkokuryokoshien .bg-figure {
    padding: 16px 16px;
  }
  .lp-zenkokuryokoshien .zenkoku-map .titleHeader h2 {
    margin-bottom: 0;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .type {
    display: block;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .type > div {
    margin-right: 0;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .type .header {
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .type .header .label {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .list > div {
    width: 100%;
    margin-right: 0;
    margin-bottom: 12px;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .list > div h4 {
    text-align: left;
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .list .item {
    width: calc(50% - 4px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .list .item:nth-of-type(2n) {
    margin-right: 0;
  }
  .lp-zenkokuryokoshien .zenkoku-coupon .list .item .type {
    margin: 0;
  }
  .lp-zenkokuryokoshien .contact-list dl dt {
    width: 16px !important;
  }
  .lp-zenkokuryokoshien .contact-list dl dd {
    width: calc(100% - 16px) !important;
  }
  .lp-zenkokuryokoshien .contact-list .jsc_accordion:after {
    top: 17px !important;
    right: 25px !important;
  }
  .lp-zenkokuryokoshien .contact-list .acc_content .acc_box {
    margin-left: 0;
    padding: 16px 0;
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div {
    padding: 0 10px;
    font-size: 14px;
  }
  .lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div:first-child {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    font-size: 16px;
    width: 71px;
  }
  .lp-zenkokuryokoshien .contact-list .acc_content .acc_box > div:last-child {
    width: 100%;
  }
  .lp-zenkokuryokoshien .ongoing {
    padding: 8px;
  }
  .lp-zenkokuryokoshien .container #section6 table tr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.lp-zenkokuryokoshien .merit .gotoIcon {
  border-radius: 2px;
  background-color: #1973b7;
  display: inline-block;
  margin-left: 4px;
  padding: 0 8px;
  line-height: 1.6;
  font-size: 10px;
  color: #fff;
  letter-spacing: 1.8px;
  vertical-align: middle;
  margin-top: -4px;
}

.lp-zenkokuryokoshien .key-visual .kv-new {
  text-align: center;
}

.lp-zenkokuryokoshien .key-visual .kv-new .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 21px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .flex > div {
  margin: 0 8px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box {
  background: -webkit-linear-gradient(336.44deg, #4F68C2 -0.17%, #0F0A64 34.57%);
  background: linear-gradient(113.56deg, #4F68C2 -0.17%, #0F0A64 34.57%);
  border-radius: 6px;
  width: 178px;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 10px 8px;
  letter-spacing: 1px;
  font-weight: normal;
  font-size: 12px;
  text-align: center;
  color: #fff;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box p,
.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box div {
  width: 100%;
  line-height: 1.25;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box strong {
  font-weight: bold;
  font-size: 15px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box strong span {
  font-size: 13px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box .num {
  font-weight: bold;
  font-size: 26px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .coupon-box .btn-get a {
  width: 100%;
  height: 24px;
  background: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 4px;
  margin-top: 4px;
  font-size: 12px;
  color: #0F0A64;
  text-decoration: none;
  text-shadow: none;
  letter-spacing: 3px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .sp-v > div {
  margin-top: 34px;
}

.lp-zenkokuryokoshien .key-visual .kv-new .sp-v > div > div {
  margin-bottom: 11px;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box {
    width: 328px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 6px 8px 6px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box p {
    display: block;
    font-size: 14px;
    line-height: 0.85;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box strong {
    font-size: 15px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box .num {
    font-size: 20px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box > div:first-child {
    width: 55%;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box .btn-get {
    width: 45%;
    padding: 0 6px 0 20px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box .btn-get a {
    width: 100%;
    height: 36px;
    letter-spacing: 2px;
    margin-bottom: 3px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 {
    width: 100%;
    display: block;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 p {
    font-size: 13px;
    line-height: 1.5;
    letter-spacing: 2px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 > div {
    width: 100%;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 .btn-get {
    width: calc(100% - 10px);
    margin: 0 auto;
    padding: 0;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 .btn-get a {
    height: 30px;
  }
}

@media screen and (max-width: 360px){
  .lp-zenkokuryokoshien .key-visual .sp-v {
      width: 100%;
      padding: 0 16px;
  }
  .lp-zenkokuryokoshien .key-visual .kv-new .coupon-box.pattern-2 p {
    letter-spacing: 0;
  }
}
.lp-zenkokuryokoshien .mini-app-lp .key-visual .kv-text {
  width: 80%;
  margin: 0 auto;
}

.lp-zenkokuryokoshien .mini-app-lp .key-visual .inner {
  text-align: center;
}

.t-hello-2001 .introduction-content {
  max-width: 718px;
  margin: 0 auto;
}

.ranking-page main section {
  padding: 40px 0;
}

.ranking-page main section h2 {
  margin-bottom: 16px;
}

.ranking-page .main-dark {
  background: url(/stcontents/img/ranks/common/bg-bottom-2.png) no-repeat right bottom;
  background-color: #1C1C1E;
}

.ranking-page .key-visual {
  height: 360px;
  background: url(/stcontents/img/ranks/common/bg-top.png) no-repeat left top, url(/stcontents/img/ranks/2022/logo-bg.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom.png) no-repeat right bottom;
  background-color: #1C1C1E;
}

.ranking-page .key-visual .inner {
  top: 58%;
}

.ranking-page .key-visual h1 {
  display: inline-block;
  margin: 0 auto;
  letter-spacing: 1px;
  text-align: center;
  font-size: 2.6rem;
  text-shadow: none;
  color: #D9B255;
}

.ranking-page .key-visual h1 img {
  max-width: 100%;
  display: block;
  margin: 0 auto 40px;
}

.ranking-page .key-visual .sns {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 16px;
  text-align: right;
}

.ranking-page .anchor-link.position-measure ul {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: auto;
}

.ranking-page .ranking-wrap {
  margin-bottom: 88px;
  padding: 24px 40px 120px 40px;
  background: #F5F5F5;
  max-width: 1200px;
}

.ranking-page #all-ranking {
  padding: 24px 0 0 0;
}

.ranking-page #satisfy-ranking {
  padding: 120px 0 0 0;
}

.ranking-page #area-ranking h2,
.ranking-page #theme-ranking h2 {
  margin-bottom: 8px;
}

.ranking-page #area-ranking .col4-article.flex-wrap ul,
.ranking-page #theme-ranking .col4-article.flex-wrap ul {
  margin-top: 32px;
}

.ranking-page #theme-ranking {
  padding: 40px 0 0;
  padding: 120px 0 0 0;
}

.ranking-page #area-ranking {
  padding: 88px 0 0 0;
}

.ranking-page .hotel-info-list {
  padding-top: 24px;
}

.ranking-page .hotel-info-list .result-hotel.not-sales .info-text-ranking,
.ranking-page .hotel-info-list .result-hotel.not-sales .intro {
  color: #999;
}

@media (min-width: 1024px) {
  .ranking-page .hotel-info-list .result-hotel .intro {
    margin-top: 12px;
  }
  .ranking-page .hotel-info-list .result-hotel .name {
    font-size: 2.4rem;
  }
  .ranking-page .hotel-info-list .result-hotel .address {
    font-size: 1.6rem;
  }
  .ranking-page .hotel-info-list .result-hotel .photo {
    width: 640px;
    height: 300px;
  }
  .ranking-page .hotel-info-list .result-hotel .hotel-info {
    left: 662px;
    top: 32px;
  }
}

@media (max-width: 1023px) {
  .ranking-page .result-hotel .intro {
    padding: 16px 16px 4px;
  }
  .ranking-page .result-hotel .intro-text {
    font-size: 1.4rem;
  }
  .ranking-page .result-hotel .hotel-info {
    bottom: 0;
  }
  .ranking-page .result-hotel h2 {
    margin-bottom: 2px;
    font-size: 1.6rem;
  }
  .ranking-page .result-hotel .address {
    margin: 0 0 8px;
  }
}

@media (max-width: 767px) {
  .ranking-page .key-visual {
    height: 400px;
    background: url(/stcontents/img/ranks/common/bg-top-sp.png) no-repeat left top, url(/stcontents/img/ranks/2022/logo-bg.svg) no-repeat center center;
    background-color: #1C1C1E;
  }
  .ranking-page .key-visual h1 {
    padding: 0 24px;
    text-align: center;
    line-height: 1.5;
    font-size: 2rem;
  }
  .ranking-page .key-visual h1 img {
    margin: 0 auto 32px;
    width: 100%;
    max-width: 300px;
  }
  .ranking-page .key-visual .sns {
    bottom: 24px;
  }
  .ranking-page main.main-dark {
    background: #FFF;
  }
  .ranking-page main section h2 {
    margin-bottom: 8px;
    font-size: 2.4rem;
  }
  .ranking-page .ranking-wrap {
    margin-bottom: 0;
    padding: 16px 16px 0 16px;
  }
  .ranking-page #all-ranking {
    padding-top: 8px;
  }
  .ranking-page #satisfy-ranking {
    padding-top: 40px;
    padding-bottom: 16px;
  }
  .ranking-page.ranking-year .key-visual {
    height: 600px;
    background: url(/stcontents/img/ranks/common/bg-top-sp.png) no-repeat left top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom-sp.png) no-repeat right bottom;
    background-color: #1C1C1E;
  }
  .ranking-page.ranking-year #theme-ranking,
  .ranking-page.ranking-year #area-ranking {
    width: calc(100% + 32px);
    margin: 0 -16px;
    background: #FFF;
  }
  .ranking-page.ranking-year #theme-ranking .ranking-inner,
  .ranking-page.ranking-year #area-ranking .ranking-inner {
    padding-left: 16px;
    padding-right: 16px;
    margin: 0 auto;
  }
  .ranking-page.ranking-year #theme-ranking .col4-article.flex-wrap ul,
  .ranking-page.ranking-year #area-ranking .col4-article.flex-wrap ul {
    margin-top: 16px;
  }
  .ranking-page.ranking-year .btn-other {
    width: calc(100% + 32px);
    margin: 0 -16px;
    background: #FFF;
  }
  .ranking-page.ranking-year .btn-other .wrap {
    max-width: 400px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .ranking-page #theme-ranking {
    padding-top: 40px;
  }
  .ranking-page #area-ranking {
    padding-top: 32px;
  }
  .ranking-page .hotel-info-list {
    padding-top: 8px;
  }
  .ranking-page .hotel-info-list .result-hotel {
    padding-bottom: 5px;
    border-radius: 8px;
  }
  .ranking-page .hotel-info-list .result-hotel .photo {
    height: 184px;
  }
}

@media (min-width: 768px) {
  .ranking-page.ranking-year .key-visual {
    height: 460px;
  }
  .ranking-page.ranking-year .bread-crumbs a {
    color: #FFF;
  }
}

@media (max-width: 390px) {
  .ranking-page .btn-anker {
    padding: 0 8px;
  }
}

.ranking-monthly .key-visual {
  height: 460px;
  background: url(/stcontents/img/ranks/common/bg-top3.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom3.png) no-repeat left bottom;
  background-color: #1C1C1E;
}

.ranking-monthly .key-visual::before {
  background: none;
}

.ranking-monthly .key-visual h1 {
  font-size: 3.6rem;
  font-weight: 100;
  text-align: center;
  color: #FFF;
  margin-bottom: 8px;
}

.ranking-monthly .key-visual h2 {
  color: #D9B255;
  font-weight: 300;
}

.ranking-monthly .key-visual p {
  font-size: 1.6rem;
  margin-bottom: 0;
  color: #D9B255;
}

.ranking-monthly .key-visual .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 0 auto 24px;
}

.ranking-monthly .key-visual .sns {
  bottom: 16px;
}

.ranking-monthly.monthly-kasou .key-visual {
  height: 360px;
}

.ranking-monthly .ranking-area {
  padding: 80px 0;
  background: #FFF;
}

.ranking-monthly #all-ranking {
  margin-top: 0;
  padding-top: 0;
}

.ranking-monthly #theme-ranking {
  padding: 0;
}

.ranking-monthly .rank-month-wrap {
  padding-bottom: 80px;
  background: #1C1C1E;
}

.ranking-monthly .rank-month-wrap .rank-month-wrap-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  background: #FFF;
}

.ranking-monthly .rank-month-wrap .rank-month-wrap-inner .PPP {
  padding: 40px 40px 0 40px;
}

.ranking-monthly .rank-month-wrap .rank-month-wrap-inner .hotel-info-list {
  padding: 16px 40px 40px 40px;
}

@media (max-width: 767px) {
  .ranking-monthly .key-visual {
    background: url(/stcontents/img/ranks/common/bg-top3-sp.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom3-sp.png) no-repeat left bottom;
    background-color: #1C1C1E;
    height: 600px;
  }
  .ranking-monthly .key-visual .inner {
    top: 50%;
  }
  .ranking-monthly .key-visual h1 {
    font-size: 2.6rem;
    font-weight: bold;
    padding: 0;
  }
  .ranking-monthly .key-visual h1 img {
    max-width: 280px;
  }
  .ranking-monthly .key-visual .sns {
    bottom: 24px;
  }
  .ranking-monthly.monthly-kasou .key-visual {
    background: url(/stcontents/img/ranks/common/bg-top3-sp.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center;
    background-color: #1C1C1E;
    height: 400px;
  }
  .ranking-monthly #all-ranking {
    margin-top: 0;
  }
  .ranking-monthly .rank-month-wrap {
    padding-bottom: 0;
  }
  .ranking-monthly .rank-month-wrap .rank-month-wrap-inner .hotel-info-list {
    padding: 8px 16px 24px 16px;
  }
  .ranking-monthly .ranking-area {
    padding: 40px 0;
  }
  .ranking-monthly h3 {
    font-size: 2.0rem;
  }
}

.content-slider li {
  height: 140px;
  width: 256px;
  display: block;
}

.lSAction > a {
  background-image: url(/stcontents/img/ranks/common/controls.png) !important;
}

.lSAction > .lSNext {
  background-position: -40px 0 !important;
  right: 10px;
}

.lslide img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.lSPager {
  display: none !important;
}

@media (max-width: 767px) {
  .slider_area .item {
    width: calc(100% + 32px);
  }
  .slider_area .lSAction > .lSPrev,
  .slider_area .lSAction > .lSNext {
    display: none;
  }
}

.ranking-half-year .key-visual {
  height: 460px;
  background: url(/stcontents/img/ranks/common/bg-top2.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom2.png) no-repeat left bottom;
  background-color: #1C1C1E;
}

.ranking-half-year .key-visual p {
  font-size: 2.6rem;
  font-weight: 300;
  margin-bottom: 0;
  color: #D9B255;
}

.ranking-half-year .key-visual br {
  display: none;
}

.ranking-half-year .key-visual .border-red {
  border: 1px solid #FF503E;
  width: 96px;
  margin: 0 auto 16px;
}

.ranking-half-year #theme-ranking {
  padding: 120px 0 0 0;
}

.ranking-half-year .rank-month-wrap {
  background: #1C1C1E;
}

.ranking-half-year .rank-month-wrap .rank-month-wrap-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  background: #FFF;
}

.ranking-half-year .rank-month-wrap .rank-month-wrap-inner .PPP {
  padding: 40px 40px 0 40px;
}

.ranking-half-year .rank-month-wrap .rank-month-wrap-inner .hotel-info-list {
  padding: 16px 40px 40px 40px;
}

.ranking-half-year .bread-crumbs a {
  color: #fff;
}

@media (max-width: 767px) {
  .ranking-half-year .key-visual {
    background: url(/stcontents/img/ranks/common/bg-top2-sp.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom2-sp.png) no-repeat left bottom;
    background-color: #1C1C1E;
    height: 600px;
  }
  .ranking-half-year .key-visual .inner {
    top: 50%;
  }
  .ranking-half-year .key-visual p {
    font-size: 2rem;
  }
  .ranking-half-year .key-visual br {
    display: block;
  }
  .ranking-half-year .key-visual .border-red {
    width: 50px;
    margin: 0 auto 24px;
  }
  .ranking-half-year .key-visual .sns {
    bottom: 24px;
  }
  .ranking-half-year #theme-ranking {
    padding-top: 32px;
  }
  .ranking-half-year .ranking-wrap,
  .ranking-half-year .rank-month-wrap {
    background: #fff;
  }
  .ranking-half-year .bread-crumbs a {
    color: #0F0A64;
  }
}

.ranking-theme .key-visual {
  height: 360px;
  background: url(/stcontents/img/ranks/common/bg-top2.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center, url(/stcontents/img/ranks/common/bg-bottom2.png) no-repeat left bottom;
  background-color: #1C1C1E;
}

.ranking-theme .key-visual p {
  font-size: 2.6rem;
  font-weight: 300;
  margin-bottom: 0;
  color: #D9B255;
}

.ranking-theme .key-visual br {
  display: none;
}

.ranking-theme .key-visual .border-red {
  border: 1px solid #FF503E;
  width: 96px;
  margin: 0 auto 24px;
}

.ranking-theme .main-dark {
  background: #1C1C1E;
}

@media (max-width: 767px) {
  .ranking-theme .key-visual {
    background: url(/stcontents/img/ranks/common/bg-top2-sp.png) no-repeat right top, url(/stcontents/img/ranks/common/logo-bg-2.svg) no-repeat center center;
    background-color: #1C1C1E;
    height: 400px;
  }
  .ranking-theme .key-visual .inner {
    top: 50%;
  }
  .ranking-theme .key-visual p {
    font-size: 2rem;
  }
  .ranking-theme .key-visual br {
    display: block;
  }
  .ranking-theme .key-visual .border-red {
    width: 50px;
  }
  .ranking-theme .key-visual .sns {
    bottom: 24px;
  }
}

.search-from-area .key-visual {
  height: 400px;
}

.search-from-area .search-box-col2 {
  bottom: 48px;
}

.search-from-area .fixed-on .result-header-sort {
  opacity: 1;
}

.search-from-area .root-main-foot {
  background: #FFF;
}

.search-from-area .popup-position {
  top: auto;
  bottom: 48px;
}

.search-from-area .popup-peopleroom {
  width: 430px;
}

.search-from-area .area-section {
  display: none;
}

.search-from-area .station-section .large_area_tag {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.search-from-area .station-section .large_area_tag li {
  margin: 0 14px 10px 0;
}

@media screen and (max-width: 767px) {
  .search-from-area .key-visual {
    height: 382px;
  }
  .search-from-area .search-box-col2 {
    bottom: 72px;
  }
  .search-from-area .result-list {
    background: #FFF;
    padding-top: 0;
  }
  .search-from-area .result-list .wrap {
    margin: 0 16px;
    padding-top: 24px;
  }
  .search-from-area .sub-target .result-header-sort .result-sort {
    margin-bottom: 8px;
  }
  .search-from-area .sub-target .result-header-sort .result-number {
    display: block;
    font-size: 1.4rem;
    margin-bottom: 8px;
  }
  .search-from-area .sub-target .result-header-sort .result-number span {
    margin-left: 4px;
    font-size: 1.6rem;
  }
  .search-from-area .sub-target .result-header-sort .result-number label {
    margin-left: 8px;
    font-size: 1.4rem;
  }
  .search-from-area .sub-target .result-header-sort .sort-change {
    width: calc(100% + 32px);
    margin: 0 -16px;
    padding: 8px 16px;
    background: #F5F5F5;
  }
  .search-from-area .sub-target .result-header-sort .sort-change a.active {
    font-size: 1.2rem;
  }
  .search-from-area .result-hotel-list {
    width: calc(100% + 32px);
    margin: 0 -16px;
    background: #F5F5F5;
    padding-bottom: 24px;
  }
  .search-from-area .result-hotel-list .result-hotel:last-child {
    margin-bottom: 0;
  }
  .search-from-area .area-section .hot-area-line .inner {
    background: #F5F5F5;
    padding: 16px;
    max-height: 276px;
  }
  .search-from-area .popup-peopleroom {
    padding: 26px 24px 120px;
  }
  .search-from-area .station-section .large_area_tag li {
    margin: 0 8px 16px 0;
  }
}

@media screen and (min-width: 824px) {
  .search-from-area .result-sort-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .search-from-area .modal-sort.price-modal .inner {
    top: 475px;
    margin-left: -308px;
  }
  .search-from-area .modal-sort.price-modal.fixed .inner {
    top: 475px;
  }
}

@media screen and (min-width: 768px) {
  .search-from-area .modal-sort.price-modal .inner {
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

@media (min-width: 768px) and (max-width: 1120px) {
  .search-from-area .modal-sort.price-modal .inner {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-left: 0;
    left: 16px;
  }
}

.search-from-area-2 .search-box-col2 {
  position: static;
  top: inherit;
  left: inherit;
  -webkit-transform: none;
          transform: none;
}

.search-from-area-2 .search-form-wrap {
  margin-top: 16px;
  height: 48px;
  position: relative;
}

@media screen and (min-width: 768px) {
  .search-from-area-2 .popup-dateSelector {
    top: 48px;
  }
  .search-from-area-2 .popup-peopleroom {
    top: 48px;
  }
  .search-from-area-2 .search-form-wrap {
    height: 60px;
  }
}

body.campaigns {
  padding-bottom: 80px;
}

.campaigns .global-footer {
  display: none !important;
}

.campaigns .key-visual {
  background: url(/stcontents/img/sub-page/campaigns/kv-campaigns.jpg) center center no-repeat;
  background-size: cover;
  height: 520px;
  margin-bottom: 24px;
  position: relative;
}

/* 必要に応じてコメントアウト */
.campaigns .key-visual::before {
  content: "";
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}
.campaigns .key-visual.linear-gradient-h-80p::before {
  height: 80%;
}

.campaigns h2 {
  text-align: center;
}

.campaigns .bd-gray {
  border: 1px solid #ddd;
}

.campaigns .bd-gray-2 {
  border: 2px solid #ddd;
}

.campaigns .bd-gray-3 {
  border: 3px solid #ddd;
}

.campaigns .bd-gray-4 {
  border: 4px solid #ddd;
}

.campaigns .inner {
  width: 94%;
  max-width: 1120px;
  position: absolute;
  -webkit-transform: none;
          transform: none;
  left: 0;
  right: 0;
  bottom: 48px;
  margin: auto;
  text-align: center;
  text-shadow: 0 0 5px #000;
}

.campaigns .inner.timer-add {
  line-height: 1.5;
  margin-bottom: 0;
  bottom: 30px;
  font-size: 4rem;
}
.campaigns .inner.timer-add.bottom-adjust {
  bottom: 0;
}

.campaigns .inner.timer-add h1 {
  font-size: 4rem;
}

.campaigns .inner.timer-add .table-basic,
.campaigns .key-visual .table-basic {
  max-width: 680px;
  margin: 0 auto;
  border: none;
  white-space: nowrap;
}

.campaigns .inner.timer-add .table-basic th,
.campaigns .inner.timer-add .table-basic td,
.campaigns .key-visual .table-basic th,
.campaigns .key-visual .table-basic td {
  border: none;
  padding: 4px 8px;
}

.campaigns .inner.timer-add.bottom-adjust .table-basic th,
.campaigns .inner.timer-add.bottom-adjust .table-basic td,
.campaigns .key-visual .inner.bottom-adjust .table-basic th,
.campaigns .key-visual .inner.bottom-adjust .table-basic td {
  padding: 4px 0;
}

.campaigns .inner.timer-add .table-basic th,
.campaigns .key-visual .table-basic th {
  background: none;
}

.campaigns .inner.timer-add.bottom-adjust .table-basic th,
.campaigns .key-visual .inner.bottom-adjust .table-basic th {
  width: 153px;
}

.campaigns h1 {
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .campaigns h1 .line-48 {
    line-height: 48px;
  }
  .campaigns h1 .line-64 {
    line-height: 64px;
  }
}
@media screen and (max-width: 767px) {
  .campaigns h1 .sp-line-28 {
    line-height: 28px;
  }
  .campaigns h1 .sp-line-48 {
    line-height: 48px;
  }
}

.campaigns .float-bar {
  -webkit-transform: none !important;
          transform: none !important;
}

@media screen and (max-width: 1023px) {
  .campaigns .float-bar {
    padding: 0 16px;
  }
}

.campaigns .float-bar .btn-block a {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  vertical-align: middle;
}

@media screen and (max-width: 1023px) {
  .campaigns .float-bar .btn-block a:only-child {
    width: auto;
    max-width: none;
    margin-top: 8px;
  }
  .campaigns .float-bar.entry-btn .btn-block a.btn-wide:only-child {
    width: 100%;
  }
}

.campaigns .float-bar .btn-block a span {
  width: 100%;
  display: block;
  margin-bottom: -6px;
  font-size: 10px;
}

@media screen and (max-width: 1023px) {
  .campaigns .float-bar .btn-block a span {
    margin-bottom: -14px;
    line-height: 1.8;
  }
}

@media screen and (max-width: 1023px) {
  .campaigns .float-bar .btn-block a strong {
    width: 100%;
    display: block;
  }
}

.campaigns .sp-low-contents .sp-only {
  margin-bottom: 8px;
}

.campaigns .summary {
  padding: 32px;
  margin-bottom: 40px;
}

.campaigns .summary .logo {
  width: 330px;
}

.campaigns .campaign-detail {
  text-align: center;
  margin-bottom: 80px;
}

.campaigns .campaign-detail a {
  text-decoration: underline;
  color: #0066cc;
}

.campaigns .campaign-detail a:hover {
  text-decoration: none;
}

.campaigns .campaign-detail .ticket-info-tag
 {
  border: 1px solid #0F0A64;
  line-height: 1.0;
  padding: 8px 10px;
  vertical-align: middle;
  display: inline-block;
  font-size: 12px;
  border-radius: 100px;
  margin-top: -8px;
  margin-right: 8px;
  color: #0F0A64;
}

@media screen and (min-width: 768px) {
  .campaigns .campaign-detail .ticket-info-tag
   {
    font-size: 16px;
  }
}

.campaigns .campaign-detail .campaign-detail-coupons {
  margin: 32px 0;
}

.campaigns .campaign-detail .campaign-detail-coupons > li + li {
  border-top: 1px solid #c6c6c6;
  padding-top: 16px;
  margin-top: 16px;
}

.campaigns .campaign-detail .campaign-detail-coupons > li p {
  font-size: 32px;
  margin-bottom: 0;
  color: #0F0A64;
  font-weight: bold;
}

.campaigns .campaign-detail .photo-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 24px 0;
}

.campaigns .campaign-detail .photo-group img {
  width: 32%;
  height: 200px;
}

.campaigns .campaign-detail .table-basic {
  text-align: left;
}

.campaigns .campaign-detail .note,
.campaigns .campaign-period .note {
  text-align: left;
  font-size: 1.4rem;
  color: #757575;
  margin-top: 8px;
  margin-bottom: 24px;
}

.campaigns .campaign-detail .note.pc-text-center,
.campaigns .campaign-period .note.pc-text-center {
  text-align: center;
}

.campaigns .campaign-detail .note li,
.campaigns .campaign-period .note li {
  padding-left: 1em;
  text-indent: -1em;
}

.campaigns .campaign-detail .note li::before,
.campaigns .campaign-period .note li::before {
  content: "※";
}

.campaigns .campaign-detail a,
.campaigns .list-attention a,
.campaigns .list-asterisk a {
  text-decoration: underline;
  color: #0066cc;
}

.campaigns .campaign-detail a:hover,
.campaigns .list-attention a:hover,
.campaigns .list-asterisk a:hover {
  text-decoration: none;
}

.campaigns .recommend a {
  pointer-events: none;
}

.campaigns .recommend.complete a {
  pointer-events: auto;
}

.campaigns .introduction {
  margin-bottom: 80px;
}

.campaigns .introduction .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}

.campaigns .introduction .color-gray-2 {
  margin-bottom: 16px;
}

.campaigns .list-attention {
  text-align: left;
  margin-bottom: 40px;
}

.campaigns .list-attention li {
  padding-left: 1em;
  text-indent: -1em;
}

.campaigns .list-attention li::before {
  content: "・";
}

.campaigns .key-visual-complete {
  background: url(/stcontents/img/sub-page/campaigns/kv-campaigns.jpg) center center no-repeat;
  background-size: cover;
  overflow: visible;
  height: 565px;
  margin-bottom: 24px;
  position: relative;
}

.campaigns .key-visual-complete::before {
  content: "";
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  height: 60%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.campaigns .inner-box {
  width: 100%;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.campaigns .result-coupon {
  max-width: 600px;
  padding: 24px 12px;
  background-color: rgba(255, 255, 255, 0.8);
  margin: 0 auto;
  color: #000;
}

.campaigns .result-coupon .date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 20px;
  font-size: 0;
}

.campaigns .result-coupon .date div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.campaigns .result-coupon .date div p {
  font-size: 1.6rem;
  font-weight: 900;
  margin-bottom: 0;
}

.campaigns .result-coupon .date div span {
  font-size: 1.4rem;
  font-weight: normal;
  margin-right: 8px;
}

.campaigns .result-coupon .date .reservation {
  border-right: 1px solid #757575;
  padding-right: 16px;
}

.campaigns .result-coupon .date .checkout {
  font-size: 0;
}

.campaigns .result-coupon .date .checkout span {
  margin-left: 16px;
}

.campaigns .result-coupon .coupon-code {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8px auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f5f5f5;
  padding: 8px;
}

.campaigns .result-coupon .coupon-code .clip-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
}

.campaigns .result-coupon .coupon-code .clip-btn > span {
  text-decoration: underline;
}

.campaigns .result-coupon .coupon-code .clip-btn > img {
  display: block;
  width: 24px;
  height: 24px;
}

.campaigns .result-coupon .coupon-code .clip-btn:hover span {
  text-decoration: none;
}

.campaigns .result-coupon .coupon-code .clip-btn.clicked {
  color: #757575;
}

.campaigns .result-coupon .coupon-code .clip-btn.clicked span {
  text-decoration: none;
}

.campaigns.template .key-visual h1,
.campaigns.template .key-visual .inner {
  text-shadow: 1px 1px 1px #000;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.campaigns.template .key-visual h1 strong {
  font-weight: bold;
  color: #FEE661;
}

.campaigns.template .key-visual-complete {
  height: 560px;
}

.campaigns.template .key-visual-complete .inner-box {
  padding: 0 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.campaigns.template .default-link:hover {
  color: #0066cc;
  text-decoration: none;
}

.campaigns.template .summary {
  padding: 24px;
  margin-bottom: 16px;
}

.campaigns.template .coupon {
  width: 100%;
  border: 1px solid #C6C6C6;
  padding: 40px;
  margin-top: 80px;
}

.campaigns.template .coupon .coupon-contents {
  width: 80%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
}

.campaigns.template .coupon .coupon-contents .content {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 16px;
}

.campaigns.template .coupon .coupon-contents .content span {
  font-size: 1.6rem;
  font-weight: 500;
  padding: 8px 16px;
  border: 1px solid #0F0A64;
  border-radius: 50px;
  margin-right: 8px;
}

.campaigns.template .coupon .coupon-contents .coupon-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 16px 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #C6C6C6;
  margin: auto;
  font-weight: 700;
}

.campaigns.template .coupon .coupon-contents .coupon-text .title {
  margin-right: 208px;
  font-size: 2.4rem;
  margin-bottom: 0;
}

.campaigns.template .coupon .coupon-contents .coupon-text .detail {
  margin-bottom: 0;
}

.campaigns.template .coupon .coupon-contents .coupon-text.font-normal {
  font-weight: 400;
}

.campaigns.template .coupon .coupon-contents .coupon-text:last-of-type {
  border-bottom: 0;
  margin-bottom: 16px;
}

.campaigns.template .coupon .coupon-contents .list-asterisk {
  font-size: 1.2rem;
  text-align: left;
}

.campaigns.template .recommend {
  width: 100%;
  /*margin: 0 calc(50% - 50vw);*/
  padding: 40px;
  margin-top: 80px;
  margin-bottom: 80px;
}

.campaigns.template .recommend .border-red,
.campaigns .border-red-line {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}
.campaigns .border-red-line.short {
  border-width: 0.5px;
  width: 40px;
}

.campaigns.template .recommend .smartpass {
  max-width: 1120px;
  width: 100%;
  height: 300px;
  background: url(/stcontents/img/sub-page/campaigns/bg-smartpass.jpg) no-repeat center center;
  border-radius: 8px;
  background-size: cover;
  position: relative;
  overflow: hidden;
  margin-bottom: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.campaigns.template .recommend .smartpass .text {
  color: #fff;
  font-size: 2.8rem;
  font-weight: 700;
  text-shadow: 1px 1px 1px #000;
  z-index: 1;
  margin-bottom: 0;
}
.campaigns.template .recommend .smartpass .img-text {
  z-index: 1;
}

.campaigns.template .recommend .smartpass::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 220px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
}

.campaigns.template .recommend .photo-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8px;
  height: 200px;
}

.campaigns.template .recommend .photo-group img {
  width: calc(100% / 3);
  margin-right: 1px;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaigns.template .recommend.complete a:hover {
  color: inherit;
}

.campaigns.template .recommend.complete .btn-relux:hover {
  color: #fff;
}

.campaigns.template .recommend.complete .feature-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 16px;
}

.campaigns.template .recommend.complete .feature-list li {
  width: 32%;
  margin-right: 2%;
  height: 160px;
  margin-bottom: 32px;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  text-shadow: 1px 1px 1px #000;
  color: #fff;
}

.campaigns.template .recommend.complete .feature-list li img {
  height: 100%;
  width: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaigns.template .recommend.complete .feature-list li a::before {
  position: absolute;
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  height: 117px;
  bottom: 0;
  left: 0;
}

.campaigns.template .recommend.complete .feature-list li .text {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  font-size: 2.4rem;
  color: #fff;
}

.campaigns.template .recommend.complete .feature-list li.bnr-one {
  width: 100%;
  margin: 0;
}

.campaigns.template .recommend.complete .feature-list li.bnr-one a {
  height:300px !important;
}

/* キャンペーンLP 特集バナー用 */
.campaigns.template .recommend.complete .feature-list .feature-gradient .text {
  top: 57%;
}
.campaigns.template .recommend.complete .feature-list .feature-gradient a::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 84%;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  bottom: 0;
  left: 0;
}
.campaigns.template .recommend.complete .feature-list .none-gradient a::before {
  display: none;
}

.campaigns.template .full-bg-color {
  background-color: #f5f5f5;
  max-width: 100%;
}

.campaigns.template .list-attention a {
  color: #333;
  text-decoration: underline;
}
.campaigns.template .list-attention a:hover {
  color: #333;
  text-decoration: none;
}
/* キャンペーンLP 特集バナー用 END */

/* キャンペーンLP用 3steps  */
.campaigns.template .recommend-steps > .wrap {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0;
}

.campaigns.template .recommend-steps {
  width: 100%;
  margin-top: 80px;
  margin-bottom: 80px;
}

.campaigns.template .recommend-steps .border-red,
.campaigns .border-red-line {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}

.campaigns.template .recommend-steps .photo-group-steps {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8px;
  height: auto;
}

.campaigns.template .recommend-steps .photo-group-steps a img {
  width: calc(100% / 3);
  width: 100%;
  margin-right: 1px;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaigns.template .recommend-steps .photo-group-steps .step-arrow {
  display: flex;
  justify-content: center;
  align-items: center;
}

.campaigns.template .recommend-steps .photo-group-steps .step-arrow img {
  width: 16px;
  margin-right: 16px;
  margin-left: 16px;
  height: 28px;
  -o-object-fit: cover;
     object-fit: cover;
}
/* キャンペーンLP用 3steps END */

/* キャンペーンLP用 sns追加  */
.campaigns.template .key-visual .sns,
.campaigns.template .key-visual-complete .sns
 {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0;
  text-align: right;
  line-height: 1;
  z-index: 2;
}
/* キャンペーンLP用 sns追加 END */

/* キャンペーンLP用 施設紹介箇所のコード化  */
.campaigns.template .recommend .intro-wrap {
  display: flex;
  flex-direction: row;
  justify-content: center;
  max-width: 1120px;
}
.campaigns.template .recommend .intro-contents {
  border: 1px solid #C6C6C6;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 24px 16px 16px 16px;
  flex: 1;
  width: calc(100% / 3);
  width: 100%;
  margin-right: 16px;
  -o-object-fit: cover;
     object-fit: cover;
}
.campaigns.template .recommend .intro-contents:last-child {
  margin-right: 0;
}
.campaigns.template .recommend .intro-contents .intro-logo1,
.campaigns.template .recommend .intro-contents .intro-logo2,
.campaigns.template .recommend .intro-contents .intro-logo3
 {
  max-width: 220px;
  width: 300px;
  height: auto;
  object-fit: contain;
  margin-bottom: 16px;
}
.campaigns.template .recommend .intro-contents .intro-logo1 {
  margin-bottom: 26px;
}
.campaigns.template .recommend .intro-contents .intro-hotel {
  margin-bottom: 16px;
}
.campaigns.template .recommend .intro-contents .intro-text {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0;
}

@media screen and (max-width: 767px){
  .campaigns.template .recommend .intro-wrap {
    max-width: inherit;
  }
  .campaigns.template .recommend .intro-group {
    width: calc(100% + 32px);
    margin: 0 -16px 8px;
    padding: 0 16px;
    overflow: scroll;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    height: auto;
  }
  .campaigns.template .recommend .intro-group::-webkit-scrollbar {
    display: none;
  }
  .campaigns.template .recommend .intro-contents {
    width: 286px;
  }
  .campaigns.template .recommend .intro-contents .intro-hotel {
    margin-bottom: 8px;
  }
  .campaigns.template .recommend .intro-contents .intro-text {
    font-size: 1.4rem;
  }
}
/* キャンペーンLP用 施設紹介箇所のコード化 END */


@media screen and (max-width: 767px){
  .campaigns.template .recommend.complete .feature-list li.bnr-one a {
    height:160px !important;
  }
  .campaigns.template .recommend.complete .feature-list li.bnr-one .text {
    font-size: 20px;
  }
}

.campaigns.template .recommend.complete .feature-list-scroll {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 80px;
}

.campaigns.template .recommend.complete .feature-list-scroll div {
  width: 32%;
  margin-right: 2%;
  height: 160px;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  text-shadow: 1px 1px 1px #000;
  color: #fff;
  list-style: none;
}

.campaigns.template .recommend.complete .feature-list-scroll div img {
  height: 100%;
  width: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaigns.template .recommend.complete .feature-list-scroll div a::before {
  position: absolute;
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.5) 80%);
  width: 100%;
  height: 117px;
  bottom: 0;
  left: 0;
}

.campaigns.template .recommend.complete .feature-list-scroll div .text {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 0 10px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  font-size: 2.4rem;
  color: #fff;
}

.campaigns.template .recommend.complete .photo-group {
  border-radius: 8px;
  overflow: hidden;
}

.campaigns.template .recommend.complete .photo-group a {
  width: calc(100% / 3);
  margin-right: 1px;
}

.campaigns.template .recommend.complete .photo-group a:last-child {
  margin-right: 0;
}

.campaigns.template .attention-wrap {
  background-color: #f5f5f5;
}

.campaigns.template .banner {
  height: 120px;
  width: auto;
  margin-bottom: 160px;
}

.campaigns.template .banner:hover {
  opacity: 0.7;
}

.campaigns.template .app-banner {
  background: #EFEFEF;
  background-size: cover;
  margin-bottom: 40px;
}

.campaigns.template .app-banner .title {
  text-align: left;
}

.campaigns.template .customer-voice {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 220px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.campaigns.template .customer-voice .box {
  width: calc(100% / 3 - 32px);
  position: relative;
  height: auto;
}

.campaigns.template .customer-voice .box .text,
.campaigns.template .customer-voice .box img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.campaigns.template .customer-voice .box .text {
  width: 100%;
}

.campaigns.template .customer-voice .box .font-large {
  text-align: left;
}

.campaigns.template .customer-voice .box .color-gray-2 {
  text-align: right;
  margin-bottom: 0;
}

@media (max-width: 1023px) {
  .campaigns .campaign-detail img {
    max-width: 100%;
  }
}

@media (max-width: 767px) {
  .campaigns .key-visual {
    height: 560px;
    width: 100%;
    margin-bottom: 40px;
  }
  .campaigns .summary {
    padding: 32px 16px;
    margin-bottom: 40px;
  }
  .campaigns .summary .logo {
    width: 260px;
  }
  .campaigns .campaign-detail {
    margin-bottom: 40px;
  }
  .campaigns .campaign-detail .photo-group {
    display: block;
    margin: 16px 0 0;
  }
  .campaigns .campaign-detail .photo-group img {
    width: 100%;
    margin-bottom: 16px;
  }
  .campaigns .campaign-detail .note,
  .campaigns .campaign-period .note {
    text-align: left;
    font-size: 1rem;
  }
  .campaigns .campaign-detail .note.pc-text-center,
  .campaigns .campaign-period .note.pc-text-center {
    text-align: left;
  }
  .campaigns .introduction {
    margin-bottom: 40px;
  }
  .campaigns .introduction .border-red,
  .campaigns.template .recommend .border-red {
    width: 40px;
    margin: 8px auto 16px;
  }
  .campaigns .list-attention {
    margin-bottom: 24px;
  }
  .campaigns .list-attention:last-child {
    margin-bottom: 0;
  }
  .campaigns .key-visual-complete {
    height: auto;
    margin-bottom: 40px;
  }
  .campaigns .inner-box {
    padding: 110px 16px 24px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    top: unset;
  }
  .campaigns .result-coupon .date {
    height: auto;
    display: block;
  }
  .campaigns .result-coupon .date .reservation {
    padding-right: 0;
    border-right: none;
  }
  .campaigns .result-coupon .date .checkout {
    padding-left: 0px;
  }
  .campaigns .result-coupon .date .checkout span {
    margin: 0;
  }
  .campaigns .result-coupon .date .border {
    border-bottom: 1px solid #333;
    width: 60px;
    margin: 8px auto;
  }
  .campaigns .result-coupon .date div {
    display: block;
  }
  .campaigns .result-coupon .date div span {
    font-size: 1.2rem;
    margin: 0;
  }
  .campaigns.template .inner {
    bottom: 40px;
    margin-bottom: 0;
    width: 100%;
    padding: 0 16px;
  }
  .campaigns.template .inner h1 {
    margin-bottom: 24px;
    font-size: 2.2rem;
  }
  .campaigns.template .inner.timer-add {
    bottom: 20px;
  }
  .campaigns.template .inner.timer-add.bottom-adjust {
    bottom: 0;
  }
  .campaigns.template .inner.sns-on {
    bottom: 40px !important;
  }
  .campaigns.template .summary {
    padding: 16px;
  }
  .campaigns.template .coupon {
    padding: 16px;
  }
  .campaigns.template .coupon .coupon-contents {
    width: 100%;
  }
  .campaigns.template .coupon .coupon-contents .content {
    font-size: 1.6rem;
  }
  .campaigns.template .coupon .coupon-contents .content span {
    font-size: 1.2rem;
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto 8px;
    padding: 4px 8px;
  }
  .campaigns.template .coupon .coupon-contents .coupon-text {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 8px 0;
  }
  .campaigns.template .coupon .coupon-contents .coupon-text .title {
    margin-right: 32px;
    width: 50px;
    text-align: right;
    font-size: 2rem;
  }
  .campaigns.template .coupon .coupon-contents .coupon-text .title.font-xxx-large {
    font-size: 2.4rem;
  }
  .campaigns.template .coupon .coupon-contents .coupon-text .detail {
    font-size: 2.6rem;
  }
  .campaigns.template .recommend {
    margin: 40px 0;
    padding: 24px 16px;
    width: 100%;
  }
  .campaigns.template .recommend .border-red,
  .campaigns .border-red-line {
    width: 40px;
  }
  .campaigns.template .recommend .wrap {
    padding-right: 8px !important;
    padding-left: 8px !important;
    border: none;
  }
  .campaigns.template .recommend .wrap.p-0 {
    padding: 0 !important;
  }
  .campaigns.template .recommend .wrap.plr-sp-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .campaigns.template .recommend .wrap.plr-sp-16 {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .campaigns.template .recommend a {
    pointer-events: auto;
  }
  .campaigns.template .recommend a:hover {
    opacity: 1;
  }
  .campaigns.template .recommend .photo-group {
    width: calc(100% + 32px);
    margin: 0 -16px 8px;
    padding: 0 16px;
    overflow: scroll;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .campaigns.template .recommend .photo-group img {
    width: 100%;
    margin-right: 0;
  }
  .campaigns.template .recommend .photo-group::-webkit-scrollbar {
    display: none;
  }


/* キャンペーンLP用 3steps(sp) */
.campaigns.template .recommend-steps {
  margin: 40px 0;
  width: 100%;
}
.campaigns.template .recommend-steps .border-red,
.campaigns .border-red-line {
  width: 40px;
}
.campaigns.template .recommend-steps .wrap.p-0 {
  padding: 0 !important;
}
.campaigns.template .recommend-steps .wrap.plr-sp-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.campaigns.template .recommend-steps a {
  pointer-events: auto;
}
.campaigns.template .recommend-steps a:hover {
  opacity: 1;
}
.campaigns.template .recommend-steps .photo-group-steps {
  margin: 0 -16px 8px;
  padding: 24px 16px;
  overflow: scroll;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.campaigns.template .recommend-steps .photo-group-steps a img {
  width: 289px;
  height: 252px;
  margin-right: 0;
  -o-object-fit: unset;
  object-fit: unset;
}
.campaigns.template .recommend-steps .photo-group-steps::-webkit-scrollbar {
  display: none;
}
.campaigns.template .recommend-steps .photo-group-steps .step-arrow img {
  margin-right: 8px;
  margin-left: 8px;
}
/* /キャンペーンLP用 3steps(sp) END */

  .campaigns.template .recommend .smartpass {
    height: 160px;
    margin-bottom: 40px;
  }
  .campaigns.template .recommend .smartpass .text {
    width: 100%;
    font-size: 2rem;
  }
  .campaigns.template .recommend .smartpass .img-text {
    width: 272px;
  }
  .campaigns.template .recommend.complete .feature-list {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .campaigns.template .recommend.complete .feature-list li {
    width: calc(50% - 4px);
    height: 120px;
    margin-bottom: 8px;
    margin-right: 0;
  }
  .campaigns.template .recommend.complete .feature-list li .text {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 0 10px;
  }
  .campaigns.template .recommend.complete .feature-list-scroll {
    position: relative;
    height: 160px;
    margin: 0 -16px 40px;
    padding: 0 16px;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    white-space: nowrap;
    overflow: scroll;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .campaigns.template .recommend.complete .feature-list-scroll div {
    min-width: 310px;
    height: 160px;
    margin-right: 16px;
    margin-bottom: 0;
    white-space: nowrap;
  }
  .campaigns.template .recommend.complete .feature-list-scroll div .text {
    font-size: 2rem;
  }
  .campaigns.template .recommend.complete .feature-list-scroll::-webkit-scrollbar {
    display: none;
  }
  .campaigns.template .recommend.complete .photo-group {
    border-radius: 0;
    overflow: scroll;
  }
  .campaigns.template .recommend.complete .photo-group img {
    margin-right: 1px;
  }
  .campaigns.template .recommend.complete .photo-group img:first-child {
    border-radius: 8px 0 0 8px;
  }
  .campaigns.template .recommend.complete .photo-group img:last-child {
    margin-right: 0;
    border-radius: 0 8px 8px 0;
  }
  .campaigns.template .banner {
    width: 100%;
    height: auto;
    margin-bottom: 80px;
  }
  .campaigns.template .app-banner,
  .campaigns.template .attention-wrap {
    width: 100%;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .campaigns.template .customer-voice {
    display: block;
    height: auto;
  }
  .campaigns.template .customer-voice .box {
    width: 100%;
    height: 160px;
    margin-bottom: 16px;
  }
  .campaigns.template .customer-voice .box img {
    width: 160px;
    height: auto;
  }
  .campaigns.template .customer-voice .box.box-1 img {
    left: 70px;
  }
  .campaigns.template .customer-voice .box.box-2 img {
    right: -90px;
    left: auto;
  }
  .campaigns.template .customer-voice .box.box-2 .font-large {
    text-align: right;
  }
  .campaigns .inner.timer-add h1 {
    margin-bottom: 16px;
    font-size: 2.8rem;
  }

  .campaigns .roulette-wrap .roulette-box {
    padding-top: 50px;
  }
  .campaigns .roulette-wrap .letter-box h1,
  .campaigns .anime-box .letter-box h1 {
    line-height: 1.5;
    margin-bottom: 4px;
  }
  .campaigns .letter-box .result-coupon .coupon-band {
    padding: 2px;
  }
  .campaigns .roulette-wrap .roulette-box .roulette-img {
    max-width: 83%;
  }
  .campaigns .roulette-wrap .roulette-box .roulette-pin {
    transform: translate(-50%,160%);
    width: 30px;
  }
  .campaigns .roulette-wrap .letter-box {
    width: auto !important;
    top: 80px !important;
    bottom: inherit !important;
    margin-top: 100px !important;
    margin-bottom: 0 !important;
  }
  .campaigns .roulette-wrap .letter-box.active {
    margin-top: 0 !important;
  }
  .campaigns .anime-box .letter-box {
    top: 38px !important;
  }

  .campaigns .campaign-detail .campaign-detail-coupons {
    margin: 16px 0;
  }

  .campaigns .campaign-detail .campaign-detail-coupons > li + li {
    padding-top: 8px;
    margin-top: 8px;
  }

  .campaigns .campaign-detail .campaign-detail-coupons > li p {
    font-size: 2.6rem;
  }
}

.campaigns .letter-box {
  width: 560px !important;
  height: 300px;
  position: relative;
  margin: 0 auto;
  transform: translateY(-22%) !important;
  z-index: 1;
}
.campaigns .letter-box .result-coupon {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-1.png) no-repeat center center;
  background-size: contain;
  width: 550px;
  height: 278px;
  padding: 64px 12px 0;
}
.campaigns .letter-box.kv-special-feature .result-coupon {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-special-feature.png) no-repeat center center;
  background-size: contain;
  max-width: 648px;
  width: 648px;
  height: 448px;
  padding: 24px;
}
.campaigns .anime-parts-4.kv-anchor .result-coupon {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-1.png) no-repeat center center;
  background-size: contain;
  width: 550px;
  height: 278px;
  padding: 64px 12px 0;
}
.campaigns .letter-box .result-coupon.wide {
  padding: 54px 56px 0;
}
.campaigns .letter-box .result-coupon .coupon-title {
  display: inline-block;
}
.campaigns .letter-box .result-coupon .coupon-band {
  background-color: #F3F8FD;
}
.campaigns .letter-box.kv-special-feature .result-coupon a {
  width: 342px;
}
.campaigns .letter-box.kv-special-feature .result-coupon .kv-smartpass {
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  position: relative;
}
.campaigns .letter-box.kv-special-feature .result-coupon .kv-smartpass::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
  opacity: 0.6;
  transform: rotate(-180deg);
  border-radius: 8px;
}
.campaigns .letter-box.kv-special-feature .result-coupon .kv-smartpass.no-linear-gradient::before {
  display: none;
}
.campaigns .letter-box.kv-special-feature .result-coupon .btn-relux {
  width: 100%;
  height: 40px;
  font-size: 1.4rem;
  margin-top: 8px;
}
.campaigns .letter-box.kv-special-feature .result-coupon .btn-relux:hover {
  background-color: #0f0a64;
  border-color: #0f0a64;
}
.campaigns .letter-box.kv-special-feature .result-coupon .kv-smartpass .text {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  text-shadow: 1px 1px 1px #000;
  z-index: 1;
  margin-bottom: 0;
}
.campaigns .letter-box .icon-anime-ponta {
  background: url(/stcontents/img/sub-page/campaigns/icon-ponta-anime.png) no-repeat center center;
  background-size: contain;
  width: 150px;
  height: 150px;
  position: absolute;
  bottom: -8px;
  right: -90px;
  z-index: 3;
  opacity: 0;
  animation: 0.4s 3.2s fadein-anime forwards;
}
@media screen and (min-width: 768px) {
  .campaigns .anime-box .letter-box {
    transform: translateY(0%) !important;
  }
  .campaigns .letter-box.kv-special-feature {
    width: 648px !important;
    height: 448px;
  }
}
@media screen and (max-width: 1023px){
  .campaigns .letter-box .icon-anime-ponta {
    width: 120px;
    height: 120px;
    bottom: -8px;
    right: -8px;
  }
}
@media screen and (max-width: 767px){
  .campaigns .letter-box {
    max-width: 358px;
    width: 100% !important;
    height: auto;
    top: 34% !important;
  }
  .campaigns .letter-box.kv-special-feature {
    max-width: 375px;
    width: 375px;
    height: 440px;
  }
  .campaigns .anime-box .anime-parts-4.kv-sf .letter-box.kv-special-feature {
    width: 375px !important;
    transform: translate(-50%, -30%) scale(1) !important;
  }
  .campaigns .letter-box .result-coupon {
      background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-sp.png) no-repeat center center;
      background-size: contain;
      width: 262px;
      height: 214px;
      padding: 35px 16px 0;
      line-height: 1.6;
      letter-spacing: 0;
  }
  .campaigns .letter-box .result-coupon.wide {
    width: 274px;
    height: 224px;
    padding: 30px 26px 0;
  }
  .campaigns .letter-box.kv-special-feature .result-coupon {
    background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-special-feature-sp.png) no-repeat center center;
    background-size: contain;
    width: 375px;
    height: 440px;
    padding: 20px 16px;
  }
  .campaigns .letter-box.kv-special-feature .result-coupon a {
    width: 310px;
  }
  .campaigns .letter-box .icon-anime-ponta {
    width: 160px;
    height: 140px;
    bottom: -118px;
    right: 20%;
  }
}
@media screen and (max-width: 360px) {
  .campaigns.template .letter-box.inner-box {
    transform: translate(-50%, 12px) scale(1) !important;
  }
  .campaigns.template .letter-box.inner-box.kv-special-feature {
    transform: translate(-50%, -50%) scale(0.75) !important;
  }
}

.campaigns .present-list-box {
  margin: 20px auto 30px;
}

.campaigns .present-list-box dl {
  max-width: 280px;
  margin: 0 auto;
  font-size: 2.4rem;
  border-bottom: 1px #DDDDDD solid;
  clear: both;
  line-height: 1.5;
  overflow: hidden;
}

.campaigns .present-list-box dl dt {
  line-height: 2.1;
}

.campaigns .present-list-box dl:last-child {
  border-bottom: none;
}

.campaigns .present-list-box dl dt,
.campaigns .present-list-box dl dd {
  padding: 4px 16px;
  overflow: hidden;
}

.campaigns .present-list-box dl dt {
  display: inline-block;
}

.campaigns .present-list-box dl dd {
  display: inline-block;
}

.campaigns .present-list-box.noprize dl dd {
  float: none;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .campaigns .present-list-box dl {
    font-size: 2rem;
  }
}

.campaigns .glamping .key-visual {
  height: 400px;
  margin-bottom: 0;
  background-image: url(../img/sub-page/campaigns/glamping-kv.jpg);
}

.campaigns .glamping .key-visual-complete {
  background-image: url(../img/sub-page/campaigns/glamping-kv-complete.jpg);
  margin-bottom: 0;
  position: relative
}

.campaigns .glamping .key-visual-complete::after {
  content: '';
  height: 354px;
  width: 100%;
  position: absolute;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .8) 100%);
}

.campaigns .glamping .key-visual-complete .inner-box {
  z-index: 1;
}

.campaigns.template .glamping .inner {
  bottom: auto;
  top: 82px;
}

.campaigns.template .glamping .key-visual h1 strong {
  font-weight: 900;
}

.campaigns .glamping h2.border-yellow {
  margin-bottom: 16px;
}

.campaigns .glamping h2.border-yellow::after {
  content: '';
  display: block;
  width: 60px;
  height: 3px;
  background: #F2CC32;
  margin: 8px auto 0;
}

.campaigns .glamping .institution-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 8px;
}

.campaigns .glamping .institution-list > li {
  margin-bottom: 8px;
  width: calc(50% - 4px);
}

.campaigns .glamping .institution-list > li:nth-child(5n+1) {
  width: 100%;
}

.campaigns .glamping .institution-list > li:nth-child(5n+1) .institution-head,
.campaigns .glamping .institution-list > li:nth-child(5n+1) .institution-bottom{
  padding: 8px 16px
}

.campaigns .glamping .institution-item {
  height: 160px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  text-shadow: 1px 1px 1px #000000;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.campaigns .glamping a.institution-item {
  border-radius: 8px;
  overflow: hidden;
}

.campaigns .glamping .institution-head {
  padding: 8px;
  background: linear-gradient(180deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
  font-weight: bold;
  text-align: left;
}

.campaigns .glamping .institution-head .name {
  font-size: 1.4rem;
  margin-bottom: 0;
}

.campaigns .glamping .institution-head .prefecture {
  font-size: 1.2rem;
  margin-bottom: 0;
}

.campaigns .glamping .institution-bottom {
  padding: 8px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .8) 100%);
}

.campaigns .glamping .institution-bottom p {
  margin-bottom: 0;
  font-size: 1rem;
  text-align: right;
}

.campaigns .glamping .table-basic th,
.campaigns .glamping .table-basic td {
  font-size: 1.6rem;
}

.campaigns .glamping .table-basic th {
  font-weight: bold;
}

.campaigns .glamping .institution-bottom p span {
  font-size: 1.6rem;
  margin-left: 4px;
}

@media screen and (min-width: 768px) {
  .campaigns .glamping .institution-list > li {
    margin-bottom: 16px;
    width: calc(50% - 8px);
  }

  .campaigns .glamping .institution-item {
    height: 360px;
    text-shadow: 2px 2px 2px #000000;
  }

  .campaigns .glamping a.institution-item:hover {
    opacity: .7;
  }

  .campaigns .glamping .institution-list > li:nth-child(5n+1) .institution-head,
  .campaigns .glamping .institution-list > li:nth-child(5n+1) .institution-bottom{
    padding: 16px 32px;
  }

  .campaigns .glamping .institution-head,
  .campaigns .glamping .institution-bottom {
    padding: 16px 32px;
  }

  .campaigns .glamping .institution-head .name {
    font-size: 3.2rem;
  }

  .campaigns .glamping .institution-head .prefecture {
    font-size: 2rem;
  }

  .campaigns .glamping .institution-bottom p {
    font-size: 2rem;
  }

  .campaigns .glamping .institution-bottom p span {
    font-size: 2.4rem;
    margin-left: 8px;
    font-weight: bold;
  }
}

/* 1/23全国2,000円OFF CP(取得前) */
.kv-shadow {
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
  background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
  background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}

li.font757575 {
  color: #757575;
}

.uservoice-03 {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.uservoice-03 .item01 {
  width: 30%;
  background-image: url(/stcontents/img/sub-page/campaigns/ellipse01.png);
  background-size: 217px 210px;
  background-repeat: no-repeat;
  background-position: center;
  padding: 40px 0;
}

.uservoice-03 .item02 {
  width: 30%;
  background-image: url(/stcontents/img/sub-page/campaigns/ellipse02.png);
  background-size: 217px 210px;
  background-repeat: no-repeat;
  background-position: center;
  padding: 40px 0;
}

.uservoice-03 .item03 {
  width: 30%;
  background-image: url(/stcontents/img/sub-page/campaigns/ellipse03.png);
  background-size: 217px 210px;
  background-repeat: no-repeat;
  background-position: center;
  padding: 40px 0;
}

.uservoice-03 .font-large {
  text-align: left !important;
}
.uservoice-03 .color-gray-2 {
  text-align: right !important;
}
@media screen and (max-width: 767px) {
  .uservoice-03 {
    width: 100%;
    display: block;
  }
  .uservoice-03 .item01 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse01.png);
    background-size: 140px 148px;
    background-repeat: no-repeat;
    background-position: top left;
    padding: 40px 0;
  }
  .uservoice-03 .item01 .font-large {
    text-align: left !important;
  }
  .uservoice-03 .item01 .color-gray-2 {
    text-align: right !important;
  }
  .uservoice-03 .item02 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse02.png);
    background-size: 140px 148px;
    background-repeat: no-repeat;
    background-position: top right;
    padding: 40px 0;
  }
  .uservoice-03 .item02 .font-large {
    text-align: right !important;
  }
  .uservoice-03 .item02 .color-gray-2 {
    text-align: right !important;
  }
  .uservoice-03 .item03 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse03.png);
    background-size: 140px 148px;
    background-repeat: no-repeat;
    background-position: top left;
    padding: 40px 0;
  }
  .uservoice-03 .item03 .font-large {
    text-align: left !important;
  }
  .uservoice-03 .item03 .color-gray-2 {
    text-align: right !important;
  }
}
.campaigns .campaign-detail {
  margin-bottom: 0;
}

.campaigns .campaign-detail .note li,
.campaigns .campaign-period .note li {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 18px;
  color: #757575;
}

.campaigns .campaign-detail .note li a,
.campaigns .campaign-period .note li a {
  text-decoration: underline;
  color: #0066cc;
}

@media screen and (max-width: 375px) {
  .font-sp-20 {
    font-size: 2.0rem;
  }
  .sp-block {
    display: block;
  }
  .campaigns .key-visual {
    margin-bottom: 16px;
  }
  .campaigns .campaign-detail .note li {
    font-size: 1.0rem;
  }
  .campaigns .campaign-detail .ticket-info-tag
   {
    margin: 0 auto;
    display: block;
    padding: 8px;
  }
  .campaigns .campaign-detail p.mt-24 {
    margin-top: 8px !important;
  }
  .campaigns .campaign-detail p.mt-16 {
    margin-top: 8px !important;
  }
  .campaigns .campaign-detail p.mb-16 {
    margin-bottom: 8px !important;
  }
  .campaigns .campaign-detail p.mt-sp-40 {
    margin-top: 40px !important;
  }
  .uservoice-03 {
    width: 100%;
    display: block;
  }
  .uservoice-03 .item01 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse01.png);
    background-size: 132px 140px;
    background-repeat: no-repeat;
    background-position: top left;
    padding: 40px 0 0 0;
  }
  .uservoice-03 .item01 .font-large {
    text-align: left !important;
  }
  .uservoice-03 .item01 .color-gray-2 {
    text-align: right !important;
  }
  .uservoice-03 .item02 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse02.png);
    background-size: 132px 140px;
    background-repeat: no-repeat;
    background-position: top right;
    padding: 40px 0 0 0;
  }
  .uservoice-03 .item02 .font-large {
    text-align: right !important;
  }
  .uservoice-03 .item02 .color-gray-2 {
    text-align: right !important;
  }
  .uservoice-03 .item03 {
    width: 100%;
    background-image: url(/stcontents/img/sub-page/campaigns/ellipse03.png);
    background-size: 132px 140px;
    background-repeat: no-repeat;
    background-position: top left;
    padding: 40px 0 0 0;
  }
  .uservoice-03 .item03 .font-large {
    text-align: left !important;
  }
  .uservoice-03 .item03 .color-gray-2 {
    text-align: right !important;
  }
  .font757575 {
    color: #757575;
  }
}

/* 1/23全国2,000円OFF CP(取得後) */
h2.b20 {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-size: 2.0rem;
  line-height: 36px;
  text-align: center;
  letter-spacing: 1px;
  color: #333;
}

p.b-36 {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 64px;
  text-align: center;
  letter-spacing: 1px;
  color: #0F0A64;
}

.campaigns .result-coupon {
  max-width: 600px;
  padding: 40px 12px;
  background-color: rgba(255, 255, 255, 0.8);
  margin: 0 auto;
  color: #000;
}

.campaigns.template .app-banner {
  margin-bottom: 80px !important;
}
.campaigns.template .summary {
  padding: 0;
  height: 52px;
}
.campaigns.template .summary-2 .logo {
  width: 288px;
  margin-top: 15px;
}
.campaigns.template .recommend {
  margin-top: 40px;
}
.mt-80-40 {
  margin-top: 80px !important;
}
@media screen and (max-width: 375px) {
  .campaigns .result-coupon p.b-36 {
    font-size: 2.6rem;
  }
  .campaigns.template .summary {
    padding: 0;
    /* height: 32px; */
  }
  .campaigns.template .summary-2 {
    height: 40px;
  }
  .campaigns.template .summary .logo {
    width: 200px;
    margin-top: 8px;
  }
  .campaigns.template .summary-2 .logo {
    width: 230px;
    margin-top: 12px;
  }
  .campaigns .key-visual-complete {
    margin-bottom: 16px;
  }
  .campaigns.template .app-banner {
    margin-bottom: 40px !important;
  }
  .campaigns.template .app-banner .title .description {
    text-align: center !important;
  }
  .campaigns.template .recommend {
    margin-top: 26px;
  }
  .mt-80-40 {
    margin-top: 40px !important;
  }
}

/* 3太郎キャンペーンページ */
.countarea p.font-large {
  font-size: 2.4rem;
}

.countarea .countdown {
  margin: 8px auto 16px;
  overflow: hidden;
}

.countarea .countdown .countdown__unit {
  font-size: 2.4rem;
}

.countarea .countdown .js-countdown-day {
  display: none;
}
.countarea .countdown .js-countdown-ms {
  display: none;
}

.countarea .countdown .js-countdown-hour,
.countarea .countdown .js-countdown-min,
.countarea .countdown .js-countdown-sec {
  border-radius: 2px;
  color: #000;
  letter-spacing: 28px;
  position: relative;
  font-size: 5rem;
}

.countarea .countdown .js-countdown-hour::before,
.countarea .countdown .js-countdown-min::before,
.countarea .countdown .js-countdown-sec::before {
  content: url(/stcontents/img/sub-page/campaigns/square_pc.png);
  -webkit-transform: scale(0.48);
  transform: scale(0.48);
  position: absolute;
  top: -55px;
  left: -41px;
  z-index: -2;
}

.countarea .countdown .js-countdown-hour::after,
.countarea .countdown .js-countdown-min::after,
.countarea .countdown .js-countdown-sec::after {
  content: url(/stcontents/img/sub-page/campaigns/square_pc.png);
  -webkit-transform: scale(0.48);
  transform: scale(0.48);
  position: absolute;
  top: -55px;
  right: -15px;
  z-index: -2;
}

.countarea .countdown .countdown__unit-time {
  margin-left: -17px;
  margin-right: 9px;
}

.campaigns .campaign-detail .present-list-box-100 {
  margin-bottom: 8px
}

.campaigns .present-list-box-100 .present-list-inner100:last-child {
  width: 100%;
  border-bottom: none;
}

.campaigns .present-list-box-100 .present-list-inner100 {
  width: 100%;
  border-bottom: 1px solid #c6c6c6;
}
.campaigns .present-list-box-100 .present-list-inner100 dl {
  max-width: 410px;
  margin: auto;
  position: relative;
  overflow: hidden;
}

.campaigns .present-list-box-100 .present-list-inner100 dl dt {
  display: block;
  text-align: left;
  float: left;
  line-height: 64px !important;
}

.campaigns .present-list-box-100 .present-list-inner100 dl dd {
  display: block;
  text-align: left;
  float: right;
  line-height: 64px !important;
}

.campaigns .present-list-box-100 .present-list-inner100 dl .dt00 {
  padding: 4px 0 0 0 !important;
  font-size: 2.6rem !important;
  font-weight: 700 !important;
}

.campaigns .present-list-box-100 .present-list-inner100 dl .dt01 {
  padding: 4px 0 0 15px !important;
  font-size: 2.4rem !important;
  font-weight: 700 !important;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .dt02 {
  padding: 4px 0 0 15px !important;
  font-size: 2.4rem !important;
  font-weight: 700 !important;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .dt03 {
  padding: 4px 0 0 15px !important;
  font-size: 2.4rem !important;
  font-weight: 700 !important;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .dt04 {
  padding: 4px 0 0 15px !important;
  font-size: 2.4rem !important;
  font-weight: 400 !important;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .dt05 {
  padding: 4px 0 0 15px !important;
  font-size: 2.4rem !important;
  font-weight: 400 !important;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .dd01, .campaigns .present-list-box-100 .present-list-inner100 dl .dd02, .campaigns .present-list-box-100 .present-list-inner100 dl .dd03 {
  padding: 4px 0 0 19px !important;
}

.campaigns .present-list-box-100 .present-list-inner100 dl .dd04, .campaigns .present-list-box-100 .present-list-inner100 dl .dd05 {
  padding: 4px 0 0 39px !important;
}
.campaign-detail .detail ul.text-center {
  text-align: center;
  font-size: 1.2rem;
  line-height: 18px;
  margin-top: 16px;
}
.text-pc-center-sp-left {
  text-align: center;
}
.comparisonarea h2.text-pc-20 {
  font-size: 2.0rem !important;
}

/* 【LP】12/11貸別荘CP(pc) */
.campaigns .present-list-box-100 .inner60 dl {
  max-width: 60%;
}

.campaigns .campaign-detail .notes-wrap {
  display: inline-block;
  text-align: center;
}

.campaigns .campaign-detail .notes {
  color: #757575;
  text-align: left;
}
.campaigns .campaign-detail p.notes {
  font-size: 1.2rem;
  padding-left: 1em;
  margin-bottom: 0;
}
.campaigns .campaign-detail p.notes::before {
  content: '※';
  margin-left: -1em;
}
.campaigns .campaign-detail p.notes a {
  cursor: pointer;
  text-decoration: underline;
}
.campaigns .campaign-detail p.notes a:hover {
  text-decoration: none;
}
.campaigns .reservation-notes a {
  cursor: pointer;
  text-decoration: underline;
}
.campaigns .reservation-notes a:hover {
  text-decoration: none;
  color: #0066cc;
}

/* /【LP】12/11貸別荘CP(pc) */

@media screen and (max-width: 767px) {
  .countarea p.font-large {
    font-size: 1.6rem;
  }
  .countarea .countdown {
    margin: 16px auto;
    padding-left: 21px;
  }
  .countarea .countdown .countdown__unit {
    font-size: 1.6rem;
  }
  .countarea .countdown .countdown__unit-time {
    margin-left: -11px;
    margin-right: 5px;
  }
  .countarea .countdown .js-countdown-hour,
  .countarea .countdown .js-countdown-min,
  .countarea .countdown .js-countdown-sec {
    font-size: 3.2rem;
    padding: 0px;
    line-height: 40px;
    letter-spacing: 16px;
  }
  .countarea .countdown .js-countdown-hour::before,
  .countarea .countdown .js-countdown-min::before,
  .countarea .countdown .js-countdown-sec::before {
    content: url(/stcontents/img/sub-page/campaigns/square_sp.png);
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    position: absolute;
    top: -28px;
    left: -21px;
    z-index: -2;
  }
  .countarea .countdown .js-countdown-hour::after,
  .countarea .countdown .js-countdown-min::after,
  .countarea .countdown .js-countdown-sec::after {
    content: url(/stcontents/img/sub-page/campaigns/square_sp.png);
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    position: absolute;
    top: -28px;
    right: -4px;
    z-index: -2;
  }

  .timer-add .countarea .countdown {
    margin: 0 auto 16px;
    padding-left: 16px;
    white-space: nowrap;
  }

  .timer-add .countarea .countdown .countdown__unit-time {
    margin: 0 0 0 -16px;
    vertical-align: bottom;
  }

  .campaigns .inner.timer-add .table-basic th,
  .campaigns .inner.timer-add .table-basic td,
  .campaigns .key-visual .table-basic th,
  .campaigns .key-visual .table-basic td {
      display: table-cell;
      font-size: 1.2rem;
  }
  .campaigns .inner.timer-add.bottom-adjust .table-basic th,
  .campaigns .inner.timer-add.bottom-adjust .table-basic td,
  .campaigns .key-visual .inner.bottom-adjust .table-basic th,
  .campaigns .key-visual .inner.bottom-adjust .table-basic td {
      font-size: 1.4rem;
  }

  .campaigns .campaign-detail .ticket-info-tag {
    width: 75px;
    margin: 0 auto;
  }

  .campaigns .campaign-detail .ticket-info-tag.sp-long {
    width: 120px;
  }

  .campaigns .campaign-detail .ticket-info-tag.sp-middle {
    width: 90px;
  }

  .campaigns .campaign-detail ul li {
    font-size: 1.0rem;
  }
  .text-sp-10 {
    font-size: 1.0rem;
  }
  .mb-sp-12 {
    margin-bottom: 12px !important;
  }
  .font-small-sp {
    font-size: 1.0rem !important;
  }
  .text-sp-16 {
    font-size: 1.6rem !important;
  }
  .text-pc-center-sp-left {
    text-align: left;
  }

  /* 【LP】12/11貸別荘CP(sp) */
  .campaigns .present-list-box-100 .inner60 dl {
    max-width: 100%;
  }
  .campaigns .campaign-detail p.notes {
    font-size: 1rem;
  }
  /* /【LP】12/11貸別荘CP(sp) */
}

@media screen and (max-width: 360px) {
  .countarea .countdown .js-countdown-hour,
  .countarea .countdown .js-countdown-min,
  .countarea .countdown .js-countdown-sec {
    font-size: 2.4rem;
    padding: 0 6px 0 0;
    letter-spacing: 12px;
  }
}

.mini-app {
  background: #fff;
  padding-bottom: 120px;
}

@media (max-width: 767px) {
  .mini-app {
    padding-bottom: 105px;
  }
}

.mini-app {
  /*
  コンテンツ
*/
  /*--------------------------------notice----------------------------*/
  /*/////  memberStatusIntroduce__status  /////////////////////////////////*/
  /* --------

 #pankuzu

-------- */
  /* ----------------------------------------------------------------------
  footer 固定ボタン
----------------------------------------------------------------------- */
  /* ログイン */
  /*
  ログインフローページ
*/
  /*
  LP
*/
  /*
.kv .text ul {
  width: auto;
  margin: 0 auto;
  font-size: 14px;
}
.kv .text ul li {
  background: none;
  margin-bottom: 12px;
  padding: 0;
  font-weight: bold;
}
*/
}

.mini-app section {
  padding: 40px 0;
}

.mini-app section .wrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 16px;
  font-size: 12px;
}

.mini-app section img {
  max-width: 100%;
}

.mini-app section h2 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 1px;
  text-align: center;
  color: #000;
}

.mini-app section h3 {
  font-weight: bold;
}

.mini-app .pc {
  display: none;
}

.mini-app .sp {
  display: block;
}

.mini-app .bg-gray {
  background: #F5F5F5;
}

.mini-app .text-center {
  text-align: center;
}

.mini-app .tect-right {
  text-align: right;
}

.mini-app .font-bold {
  font-weight: bold;
}

.mini-app .font-small {
  font-size: 16px;
}

.mini-app .kv {
  width: 100%;
  height: 512px;
  background-image: url("/stcontents/img/mini-app/keyvisual-pc.jpg");
  background-position: 70% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .mini-app section h2 {
    font-size: 28px;
  }
  .mini-app section .wrap {
    font-size: 18px;
  }
  .mini-app .kv {
    background-position: 50% 70%;
    width: 100%;
    height: 600px;
    background-image: url("/stcontents/img/mini-app/keyvisual-sp.jpg");
    background-position: 70% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
  }
}

.mini-app .kv .text {
  position: absolute;
  padding: 0 14px 16px;
  bottom: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.mini-app .kv-logo {
  text-align: center;
}

.mini-app .headerTitle {
  font-weight: bold;
  color: #fff;
  letter-spacing: 1px;
  text-align: center;
}

.mini-app .kv .text ul {
  width: 640px;
  height: 147px;
  margin: 32px auto 0;
  font-weight: bold;
  font-size: 24px;
  color: #fff;
}

.mini-app .kv .text ul li {
  background: url(/stcontents/img/mini-app/icon-check.svg) no-repeat left center;
  padding-left: 45px;
  margin-bottom: 8px;
  font-weight: normal;
}

.mini-app .kv .text ul li span {
  font-weight: bold;
  color: #ffdd63;
}

.mini-app .kv .text .note {
  vertical-align: text-top;
  font-size: 10px;
}

.mini-app .kv .text ul li.no-mark {
  background: none;
  font-size: 10px;
}

.mini-app .headerSubTitle {
  font-size: 14px;
  color: #fff;
  margin-top: 12px;
  letter-spacing: 0;
}

.mini-app .headerSubTitle + .headerSubTitle {
  margin-top: 8px;
}

.mini-app .shareBtn {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 18px;
}

.mini-app .shareBtnItem img {
  height: 32px;
  width: 32px;
}

.mini-app .shareBtnItem + .shareBtnItem {
  margin-left: 16px;
}

.mini-app .shareBtnLink {
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .mini-app .pc {
    display: block;
  }
  .mini-app .sp {
    display: none;
  }
  .mini-app .kv .text {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 1040px;
    padding: 0 16px 24px;
    top: 144px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .mini-app .headerTitle {
    margin-top: 32px;
    font-size: 54px;
  }
  .mini-app .headerTitle span {
    font-size: 38px;
  }
  .mini-app .shareBtnItem-line {
    display: none;
  }
  .mini-app .shareBtn {
    margin-top: 24px;
  }
  .mini-app .headerSubTitle {
    line-height: 2;
    letter-spacing: 1px;
  }
}

.mini-app section.point_notice {
  margin: 0;
}

.mini-app .notice_Cushion {
  background-color: #ffe63e;
  padding: 8px;
}

.mini-app .notice {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 30px 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #fff;
}

.mini-app section.point_notice h2.notice_title {
  font-size: 20px;
  font-size: 1.25rem;
  padding-right: 0px;
}

.mini-app .notice_title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding: 10px 0px 24px;
  text-align: center;
}

.mini-app .notice_text span {
  color: #f67a00;
}

.mini-app .notice_comment {
  margin: 0 8px;
  padding-top: 8px;
}

.mini-app .notice_explain {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  margin-bottom: 8px;
}

@media screen and (min-width: 768px) {
  .mini-app section.point_notice h2.notice_title {
    font-size: 20px;
    font-size: 1.25rem;
    padding-top: 30px;
    padding-right: 54px;
    border-right: 2px solid #d8d8d8;
  }
  .mini-app .notice {
    padding: 16px 8px;
  }
  .mini-app .notice_title {
    font-size: 16px;
    font-size: 1rem;
    padding: 10px 0px;
  }
  .mini-app .notice_text {
    margin-left: 80px;
  }
  .mini-app .notice {
    max-width: 960px;
    margin: auto;
    padding: 40px 64px;
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
  }
  .mini-app .notice_Cushion {
    background-color: #ffe63e;
    padding: 10px 0;
  }
  .mini-app .notice_comment {
    max-width: 1080px;
    margin: auto;
  }
  .mini-app .notice_explain {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    margin: 0;
  }
}

.mini-app .message {
  text-align: center;
}

.mini-app .message h2 {
  font-size: 20px;
}

.mini-app .message h2 .large {
  font-size: 24px;
}

.mini-app .message h2 .orange {
  color: #f67a00;
}

.mini-app .message .text {
  text-align: left;
  line-height: 2;
  font-size: 16px;
  color: #000;
}

.mini-app .message img {
  display: inline-block;
  max-width: 200px;
  margin: 32px auto 40px;
}

.mini-app .reluxPoint {
  text-align: center;
}

.mini-app .reluxPoint .bg {
  background: url(/stcontents/img/mini-app/reluxpoint-bg-sp.jpg) no-repeat 0 0;
  background-size: cover;
  height: 432px;
  text-align: center;
}

.mini-app .reluxPoint img {
  width: 100%;
  max-width: 400px;
  margin-top: -190px;
  border-radius: 6px;
}

.mini-app .howto {
  background: url(/stcontents/img/mini-app/bg-sky.jpg) no-repeat 0 0;
  background-size: cover;
  padding: 32px 0;
}

.mini-app .howto .wrap {
  background: #fff;
  margin: 0 8px;
  padding: 32px 16px;
  border-radius: 6px;
  color: #000;
}

.mini-app .howto h2 {
  font-size: 18px;
  margin-bottom: 24px;
}

.mini-app .howto dl {
  border-top: 1px solid #d8d8d8;
  padding: 32px 0 32px;
  text-align: center;
}

.mini-app .howto dl dt span {
  background: #0a0f64;
  display: inline-block;
  width: 110px;
  margin-bottom: 24px;
  padding: 4px 6px 3px;
  border-radius: 20px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .howto dl p {
  padding-top: 16px;
  font-size: 12px;
}

.mini-app .howto dl h3 {
  font-size: 14px;
}

.mini-app .howto dl img {
  max-width: 260px;
  width: 100%;
  display: inline-block;
  margin-top: 16px;
}

.mini-app .noteText {
  padding-top: 24px;
  border-top: 2px solid #d8d8d8;
  font-size: 12px;
  color: #757575;
}

.mini-app .noteText h3 {
  margin-bottom: 4px;
}

.mini-app .noteText ul {
  padding-left: 1em;
  text-indent: -1em;
}

.mini-app .benefits .noteText {
  padding-left: 24px;
  border-top: none;
}

.mini-app .benefits h2 span {
  color: #FF9123;
}

.mini-app .benefits .figure {
  margin: 0 auto;
  text-align: center;
  margin-bottom: 16px;
}

.mini-app .benefits .figure img {
  width: 230px;
}

.mini-app .benefits .figure p {
  font-size: 12px;
}

.mini-app .discount .figure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mini-app .statusDetail {
  padding-top: 0;
}

.mini-app .statusDetail .noteText {
  border: none;
}

@media screen and (min-width: 768px) {
  .mini-app .message h2 .large {
    font-size: 32px;
  }
  .mini-app .message .text {
    text-align: center;
  }
  .mini-app .message img {
    max-width: 260px;
  }
  .mini-app .reluxPoint .bg {
    background: url(/stcontents/img/mini-app/reluxpoint-bg.jpg) no-repeat 0 0;
    background-size: cover;
  }
  .mini-app .reluxPoint img {
    margin-top: -200px;
    max-width: 100%;
  }
  .mini-app .howto {
    padding: 60px 0;
  }
  .mini-app .howto h2 {
    font-size: 28px;
    margin-bottom: 52px;
  }
  .mini-app .howto .wrap {
    margin: 0 auto;
    padding: 80px 80px;
  }
  .mini-app .howto dl {
    border-top: 2px solid #d8d8d8;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 48px 0 48px;
    text-align: left;
  }
  .mini-app .howto dl dt {
    width: 25%;
  }
  .mini-app .howto dl dd {
    width: 75%;
  }
  .mini-app .howto dl h3 {
    font-size: inherit;
  }
  .mini-app .howto dl dt span {
    margin-bottom: 0;
  }
  .mini-app .howto dl img {
    max-width: 400px;
  }
  .mini-app .noteText {
    padding-top: 40px;
  }
}

.mini-app .addPoint {
  background: #0f0a64;
  padding: 32px 0;
  color: #fff;
}

.mini-app .addPoint h2 {
  margin: 0 0 10px;
  text-align: left;
  color: #fff;
}

.mini-app .addPoint .flex {
  padding: 0 16px;
}

.mini-app .addPoint .flex .right {
  margin-top: 32px;
}

.mini-app .addPoint .flex .right .box {
  max-width: 312px;
  width: 100%;
  margin: 0 auto;
  padding: 12px 10px;
  background: #fff;
  border-radius: 4px;
  border-bottom: 4px solid #d8d8d8;
  text-align: center;
  font-size: 12px;
  color: #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .addPoint .flex .right .box span {
  display: inline-block;
  margin-bottom: 4px;
  font-weight: bold;
  font-size: 20px;
}

.mini-app .addPoint .flex .right .box:last-of-type {
  padding: 20px 10px;
}

.mini-app .addPoint .flex .arrow {
  width: 24px;
  margin: 12px auto 10px;
  line-height: 1;
}

.mini-app .addPoint .note {
  margin-top: 16px;
  font-size: 12px;
  letter-spacing: 0;
}

.mini-app .faq dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 24px;
  font-size: 12px;
}

.mini-app .faq dl dt,
.mini-app .faq dl dd {
  margin-top: 24px;
}

.mini-app .faq dl dt {
  width: 50px;
}

.mini-app .faq dl dd {
  width: calc(100% - 50px);
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .faq dl dt span {
  background-color: #0a0f64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 32px;
  height: 32px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50% 50%;
  font-weight: bold;
  font-size: 16px;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0;
}

.mini-app .faq dl dt:nth-of-type(2) span {
  background-color: #fff;
  border: 2px solid #0a0f64;
  color: #0a0f64;
}

.mini-app .faq dl dd h3 {
  color: #0a0f64;
}

.mini-app .bnrGtt {
  padding-top: 40px;
  border-top: 2px solid #d8d8d8;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .mini-app .addPoint {
    padding: 56px 0;
  }
  .mini-app .addPoint h2 {
    margin: 30px 0 10px;
  }
  .mini-app .addPoint .flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .mini-app .addPoint .flex .left {
    width: 64.5%;
  }
  .mini-app .addPoint .flex .right {
    width: 35.5%;
    margin-top: 0;
    text-align: center;
  }
  .mini-app .addPoint .flex .right .box:first-of-type {
    width: 234px;
  }
  .mini-app .addPoint .note {
    margin-top: 60px;
  }
  .mini-app .faq {
    padding-bottom: 30px;
  }
  .mini-app .faq dl {
    margin-top: 56px;
    font-size: 16px;
  }
  .mini-app .faq dl dt span {
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
  .mini-app .faq dl dt,
  .mini-app .faq dl dd {
    margin-top: 10px;
  }
  .mini-app .faq dl dd {
    padding-left: 38px;
  }
  .mini-app .bnrGtt {
    padding-top: 70px;
  }
}

.mini-app .statusDetail h2 {
  margin-bottom: 40px;
}

.mini-app .memberStatusIntroduce__statusListSP {
  margin-top: 16px;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle {
  cursor: pointer;
  height: 44px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 44px;
  text-align: center;
  border-radius: 4px;
  position: relative;
  margin-top: 16px;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle::before {
  border-top: 1.5px solid #333;
  border-right: 1.5px solid #333;
  bottom: 0;
  content: "";
  height: 7px;
  margin: auto;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 7px;
  border-top: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  right: 20px;
  bottom: 4px;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTitle.is-actived::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 8px;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox {
  margin: 8px 0 24px;
  display: none;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetailBox.is-open {
  display: block;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemDetail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxta {
  line-height: 2;
  font-size: 11px;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtb {
  line-height: 2;
  font-size: 12px;
  font-weight: bold;
}

.mini-app .memberStatusIntroduce__statusListSP .memberStatusIntroduce__statusListItemTxtc {
  padding-top: 22px;
  font-size: 16px;
  font-weight: bold;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .mini-app .memberStatusIntroduce__wrapperS.sp {
    display: none;
  }
}

.mini-app .statusNotice .wrap {
  margin: 0 auto 0;
  padding: 0 16px;
}

.mini-app .statusNotice p {
  font-size: 14px;
  line-height: 21px;
}

@media screen and (min-width: 768px) {
  .mini-app .statusNotice .wrap {
    max-width: 960px;
  }
  .mini-app .statusNotice p {
    font-size: 14px;
    line-height: 30px;
  }
}

.mini-app ul#pankuzu {
  color: #333;
  letter-spacing: -.4em;
}

.mini-app ul#pankuzu li {
  display: inline-block;
  letter-spacing: normal;
  font-size: 11px;
  color: #333;
}

.mini-app li.li_pankuzu {
  background-image: url("/stcontents/img/mini-app/pankuzu_listmark.png");
  background-position: right center;
  background-repeat: no-repeat;
  padding: 0 15px 0 0;
  margin-right: 8px;
}

.mini-app li.li_pankuzu a,
.mini-app li.li_pankuzulast a {
  color: #333;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .mini-app ul#pankuzu {
    margin: 32px 0 24px;
  }
}

.mini-app .footerPb {
  clear: both;
  padding-bottom: 90px;
}

.mini-app div.footerFixed {
  background-color: #FFFFFF;
  width: 100%;
  position: fixed;
  bottom: 0px;
  padding: 16px 0;
  border-top: 1px solid #DDDDDD;
}

.mini-app div.footerFixed > div.inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
}

.mini-app div.footerFixed p.text {
  text-align: center;
  font-size: 11px;
  padding-bottom: 10px;
  color: #0f0a64;
}

.mini-app div.footerFixed div.btnWrap {
  display: table;
  width: 100%;
}

.mini-app div.footerFixed p.regist,
.mini-app div.footerFixed p.login {
  display: table-cell;
  width: 50%;
}

.mini-app div.footerFixed a {
  text-decoration: none;
}

.mini-app div.footerFixed p.regist,
.mini-app div.footerFixed p.login {
  padding: 0 10px;
}

.mini-app div.footerFixed input {
  -webkit-appearance: none;
}

.mini-app div#modal-container div.contents {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app div#modal-small .auIDBox .auID_btn {
  margin-left: 5px;
}

@media screen and (min-width: 768px) {
  .mini-app #global-footer div.footer-inner {
    padding: 40px 30px 0;
  }
}

.mini-app .white-box {
  background: #FFFFFF;
  position: relative;
  margin-bottom: 16px;
  padding: 16px 16px;
  border: 1px solid #0F0A64;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 12px;
}

.mini-app .white-box h2 {
  font-size: 24px;
}

.mini-app .feature .white-box h2 {
  color: #0F0A64;
}

.mini-app .white-box h3 {
  margin-bottom: 4px;
  font-size: 14px;
}

.mini-app .col1-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
}

.mini-app .col2-box {
  margin-bottom: 16px;
}

.mini-app .col1-box h2:before,
.mini-app .col2-box h2:before {
  content: url(/stcontents/img/mini-app/icon-check-relux.svg);
  vertical-align: top;
  margin-right: 8px;
  color: #0F0A64;
}

.mini-app .col1-box > div:last-of-type {
  padding-left: 64px;
}

.mini-app .text-link a:hover {
  opacity: 0.7;
}

.mini-app .col2-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mini-app .col2-box .white-box {
  width: calc(50% - 10px);
  padding-bottom: 56px;
}

.mini-app .col2-box h2 {
  margin-bottom: 8px;
}

.mini-app .col2-box h3 {
  margin: 8px 0 12px;
}

.mini-app .col2-box p {
  margin-bottom: 8px;
}

.mini-app .col2-box p a {
  color: #0066CC;
}

.mini-app .col2-box .text-link {
  width: 100%;
  position: absolute;
  bottom: 16px;
  left: 0;
  text-align: center;
}

.mini-app .col2-box .text-link a {
  margin-top: 16px;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  color: #0F0A64;
}

.mini-app .col2-box .text-link a:after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border-right: 3px solid #0F0A64;
  border-bottom: 3px solid #0F0A64;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: 10px;
}

.mini-app .col2-box dl {
  max-width: 330px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  text-align: left;
  font-size: 12px;
  margin: 0 auto 16px;
  letter-spacing: 0;
}

.mini-app .col2-box dl dt.font-bold,
.mini-app .col2-box dl dd.font-bold {
  padding-bottom: 16px;
}

.mini-app .col2-box dl dt {
  width: calc(100% - 90px);
}

.mini-app .col2-box dl dd {
  width: 90px;
  text-align: right;
}

.mini-app .col2-box dl dd span {
  font-size: 10px;
}

.mini-app .feature .col2-box .white-box:last-of-type .icon {
  padding: 8px 0;
}

.mini-app .feature .col2-box .note {
  font-size: 10px;
  color: #666666;
}

.mini-app .bottom-box {
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  font-size: 20px;
}

.mini-app .bottom-box a {
  text-decoration: none;
}

.mini-app .bottom-box .btn {
  width: 300px;
  margin: 0 12px;
  padding: 16px 0;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}

.mini-app .bottom-box .btn:after {
  content: none;
}

.mini-app .year_ranking .titleHeader {
  margin-bottom: 24px;
}

.mini-app .year_ranking .entry-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mini-app .year_ranking .entry {
  width: 222px;
  height: 232px;
  margin-right: 24px;
  position: relative;
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .year_ranking .entry.more-banner {
  border: none;
}

.mini-app .year_ranking .entry.more-banner a {
  background: #0F0A64;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .year_ranking .entry.more-banner img {
  width: 200px;
}

.mini-app .year_ranking .entry.more-banner .more {
  text-align: right;
  font-size: 12px;
  margin-top: 16px;
  color: #fff;
}

.mini-app .year_ranking .entry.more-banner .more:after {
  background: url(/stcontents/img/mini-app/relux-icon_icon-navigate-right-white.svg) no-repeat 0 0;
  background-size: 100%;
  content: "";
  width: 26px;
  height: 26px;
  display: inline-block;
  vertical-align: middle;
  margin: -1px -4px 0 7px;
}

.mini-app .year_ranking .entry-list div.entry:last-child {
  margin-right: 0 !important;
}

.mini-app .year_ranking .entry p.month {
  font-size: 16px;
}

.mini-app .year_ranking .entry > a {
  display: block;
  text-decoration: none;
}

.mini-app .year_ranking .entry > a:hover {
  opacity: 0.7;
}

.mini-app .year_ranking .entry a {
  text-decoration: none;
}

.mini-app .year_ranking .entry div.thum img {
  width: 100%;
  vertical-align: bottom;
}

.mini-app .year_ranking .entry div.info {
  padding: 0 10px 10px 10px;
}

.mini-app .year_ranking .entry div.info div.entryHeader div.left {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  z-index: 1;
}

.mini-app .year_ranking .entry div.info div.entryHeader div.left div.icon img {
  width: 28px;
  padding-left: 8px;
  border: none;
}

.mini-app .year_ranking .entry div.info p.name {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 12px;
}

.mini-app .year_ranking .entry div.info p.area {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11px;
}

.mini-app .year_ranking .entry div.info p.name a:hover, .mini-app .year_ranking .entry div.info p.area a:hover {
  text-decoration: underline;
}

.mini-app .year_ranking .entry div.info p.copy {
  font-size: 13px;
  color: #000000;
  margin-bottom: 10px;
}

.mini-app .year_ranking h3.name,
.mini-app .year_ranking h2.name {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  margin: 0 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}

.mini-app .year_ranking h3.entry, .mini-app .year_ranking h2.entry {
  background-color: #fff;
  -webkit-box-shadow: 0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
          box-shadow: 0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

.mini-app .year_ranking h3.entry a, .mini-app .year_ranking h2.entry a {
  text-decoration: none;
  color: #000;
}

.mini-app .year_ranking .entry div.thum {
  height: 132px;
  position: relative;
  overflow: hidden;
  z-index: 0;
  display: block;
  margin-bottom: 0;
}

.mini-app .year_ranking .entry div.thum a {
  vertical-align: text-bottom;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.mini-app .year_ranking .entry div.info {
  padding: 16px;
}

.mini-app .year_ranking .entry div.info p.name {
  font-size: 20px;
}

.mini-app .year_ranking .entry div.info p.area {
  text-align: left;
}

.mini-app .year_ranking div.entry div.info div.entryHeader {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.mini-app .year_ranking .entry div.info p.grade {
  height: 15px;
}

.mini-app .year_ranking .entry div.info p.grade img {
  height: 15px;
  display: inline-block;
}

.mini-app .year_ranking .entry div.info p.grade img.museum,
.mini-app .year_ranking .entry div.info p.grade img.casual {
  height: 12px;
}

.mini-app .year_ranking .entry div.info p.grade img.star {
  margin-right: 3px;
}

.mini-app .year_ranking .entry div.info p.grade {
  margin-bottom: 8px;
  line-height: 0;
}

.mini-app .slick-dots li {
  width: 10px;
  height: 10px;
  margin: 0 8px;
}

.mini-app .slick-dots li button:before,
.mini-app .slick-dots li.slick-active button:before {
  color: #C4C4C4;
}

@media screen and (max-width: 767px) {
  .mini-app button.slick-prev.slick-arrow {
    display: none !important;
  }
}

.mini-app .benefits h2 {
  margin-bottom: 16px;
}

.mini-app .benefits .lead {
  margin-bottom: 32px;
  text-align: center;
  line-height: 2;
}

.mini-app .letter-0 {
  letter-spacing: 0;
}

.mini-app .howto-use h2 {
  margin-bottom: 32px;
}

.mini-app .howto-use .text h3 {
  font-size: 18px;
  color: #000;
}

.mini-app .howto-use .text {
  margin-bottom: 16px;
}

.mini-app .howto-use .text p {
  font-size: 16px;
}

.mini-app .howto-use .white-box {
  margin-bottom: 32px;
  padding: 24px 24px;
  border: none;
  border-radius: 8px;
}

.mini-app .howto-use .discount .noteText {
  border-top: none;
  padding: 0;
}

.mini-app .howto-use .bnr-box {
  padding: 24px;
}

.mini-app .howto-use .bnr-box .lead {
  margin-bottom: 24px;
  font-size: 18px;
}

.mini-app .howto-use .bnr-box .col1-box {
  border: 2px solid #FFF153;
}

.mini-app .howto-use .bnr-box .photo {
  line-height: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.mini-app .howto-use .bnr-box .text {
  padding: 0 16px;
}

.mini-app .howto-use .bnr-box h3 {
  margin: 4px;
}

.mini-app .howto-use .bnr-box .btn {
  max-width: 260px;
  margin: 4px auto;
  font-weight: bold;
}

.mini-app .howto-use .bnr-box ul {
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  letter-spacing: 0;
  font-size: 10px;
}

.mini-app .howto-use .red {
  color: #990000;
}

.mini-app .howto-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mini-app .howto-box > div {
  max-width: 260px;
}

.mini-app .howto-box .title span {
  background: #0A0F64;
  width: 94px;
  height: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: bold;
  margin: 0 auto 16px;
  border-radius: 20px;
  color: #fff;
}

.mini-app .howto-box h3 {
  margin-bottom: 16px;
  font-weight: normal;
  font-size: 14px;
}

@media screen and (max-width: 1023px) {
  .mini-app .howto-box h3 {
    font-size: 13px;
  }
}

.mini-app .howto-box .arrow {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  padding-top: 100px;
}

.mini-app .howto-box .arrow span {
  display: block;
  margin-top: 8px;
  color: #0F0A64;
}

.mini-app .howto-use .noteText {
  margin-top: 24px;
  margin-bottom: 40px;
  padding-top: 24px;
}

.mini-app .howto-use .noteText:last-of-type {
  margin-bottom: 0;
}

.mini-app .howto-box.under {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 0;
}

.mini-app .howto-box.under .arrow {
  padding: 100px 36px 0;
}

.mini-app .float-box {
  display: none;
  background-color: #FFFFFF;
  width: 100%;
  position: fixed;
  bottom: 0px;
  padding: 16px 0;
  border-top: 1px solid #DDDDDD;
  z-index: 10;
}

.mini-app .float-box-title {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-right: 12px;
}

.mini-app .float-box-title.col2-title {
  width: 100% !important;
  margin-bottom: 16px !important;
  margin-right: 0;
}

.mini-app .float-box .bottom-box p {
  margin: 0 12px;
}

.mini-app .float-box .bottom-box .btn {
  width: 300px;
  margin: 0 12px;
}

@media screen and (max-width: 1024px) {
  .mini-app .headerTitle {
    font-size: 36px;
  }
  .mini-app .headerTitle span {
    font-size: 26px;
  }
  .mini-app .white-box {
    max-width: 420px;
    display: block;
    margin: 0 auto 16px !important;
  }
  .mini-app .col1-box {
    display: block;
  }
  .mini-app .col1-box h2 {
    margin-bottom: 8px;
  }
  .mini-app .col1-box h3 {
    margin: 8px 0 12px;
  }
  .mini-app .col1-box > div:last-of-type {
    padding: 0;
  }
  .mini-app .col2-box {
    display: block;
  }
  .mini-app .col2-box .white-box {
    width: auto;
  }
  .mini-app .feature .white-box {
    width: calc(100% - 32px) !important;
  }
  .mini-app .lead {
    font-size: 12px !important;
  }
  .mini-app .howto-use .bnr-box .photo img {
    width: 100%;
  }
  .mini-app .howto-use .bnr-box .text {
    padding: 16px 8px;
  }
  .mini-app .howto-use .white-box {
    max-width: 600px;
  }
  .mini-app .howto-box > div {
    max-width: none;
  }
  .mini-app .slick-slide {
    margin: 0 12px;
  }
  .mini-app .howto-box .slick-slide {
    max-width: 260px;
  }
  .mini-app .slick-dotted.slick-slider {
    display: block;
    margin-bottom: 0;
    padding-bottom: 40px;
    overflow: hidden;
  }
  .mini-app .slick-dotted.slick-slider .slick-dots {
    bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .mini-app section {
    padding: 24px 0;
  }
  .mini-app .kv {
    height: 600px;
  }
  .mini-app .kv-logo img {
    max-width: 285px;
    margin-bottom: 24px;
  }
  .mini-app .kv .text {
    top: 130px;
    bottom: auto;
    width: 100%;
    padding: 0 4px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .mini-app .kv .text ul {
    max-width: 356px;
    height: 102px;
    font-size: 14px;
  }
  .mini-app .kv .text ul li {
    background-size: 13px;
    padding-left: 22px;
  }
  .mini-app .feature .wrap {
    padding: 0;
  }
  .mini-app .col1-box h2 {
    font-size: 24px !important;
  }
  .mini-app .col1-box h2:before,
  .mini-app .col2-box h2:before {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  .mini-app .white-box h2 {
    font-size: 18px !important;
  }
  .mini-app .feature .col2-box .white-box:last-of-type .icon {
    padding: 0;
  }
  .mini-app .bottom-box {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 0 16px;
    font-size: 14px;
    text-align: center;
  }
  .mini-app .bottom-box > div {
    width: 100%;
  }
  .mini-app .bottom-box .btn {
    max-width: 420px;
    width: 100%;
    margin: 0 auto !important;
    padding: 10px 0;
    font-size: 12px;
    white-space: nowrap;
  }
  .mini-app .float-box .bottom-box .btn {
    width: 100%;
  }
  .mini-app .bottom-box.bottom-col-2 {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mini-app .bottom-box.bottom-col-2 > div {
    width: calc(50% - 4px);
    margin: 0;
  }
  .mini-app .float-box-title {
    margin-bottom: 8px !important;
    font-size: 14px;
  }
  .mini-app .benefits {
    padding: 40px 0;
  }
  .mini-app .benefits .figure img {
    width: 150px;
    margin: 0 auto;
  }
  .mini-app .benefits .noteText {
    padding-left: 0;
  }
  .mini-app .howto-use .bnr-box {
    padding: 24px 16px;
  }
  .mini-app .howto-use .text h3 {
    font-size: 14px;
  }
  .mini-app .howto-use .text p {
    font-size: 12px;
  }
  .mini-app .btn-pagetop {
    right: 30px;
    bottom: 130px;
  }
  .mini-app .btn-pagetop.static {
    bottom: auto;
    right: auto;
    margin-right: 30px;
  }
  .mini-app .btn-pagetop img {
    width: 40px;
  }
  .mini-app .bottom-box .btn {
    letter-spacing: 0;
    font-size: 10px;
  }
}

@media screen and (max-width: 360px) {
  .mini-app .kv {
    height: 500px;
  }
  .mini-app .headerTitle {
    font-size: 24px;
  }
  .mini-app .headerTitle span {
    font-size: 18px;
  }
  .mini-app .kv .text ul {
    max-width: 290px;
    font-size: 11px;
  }
  .mini-app .float-box-title {
    font-size: 12px;
  }
  .mini-app .howto-box .slick-slide {
    max-width: 240px;
  }
}

.mini-app .share-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 16px;
  height: auto !important;
}

.mini-app .kv .text .share-box li {
  background: none;
  padding-left: 0;
  margin-bottom: 0;
  border: none;
}

.mini-app .share-box .share-btn {
  height: 32px;
  width: 32px;
}

.mini-app .share-box .share-btn + .share-btn {
  margin-left: 16px;
}

.mini-app .share-box .btn-facebook a {
  background: url("/stcontents/img/mini-app/icon_facebook.png") no-repeat 0 0;
}

.mini-app .share-box .btn-twitter a {
  background: url("/stcontents/img/mini-app/icon_twitter.png") no-repeat 0 0;
}

.mini-app .share-box .btn-line a {
  background: url("/stcontents/img/mini-app/icon_line.png") no-repeat 0 0;
}

.mini-app .share-box .share-btn a {
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .mini-app .share-box .btn-line {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .mini-app .share-box {
    margin-top: 80px !important;
  }
}

@media screen and (max-width: 360px) {
  .mini-app .share-box {
    margin-top: 30px !important;
  }
}

.mini-app .sp-v {
  display: none !important;
}

.mini-app .text-center {
  text-align: center;
}

.mini-app .text-right {
  text-align: right;
}

.mini-app div.header {
  border-bottom: none;
}

.mini-app div.contents {
  padding-top: 16px;
}

.mini-app #modal-container {
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: auto !important;
}

.mini-app div.header {
  background: none;
}

.mini-app .loading-box {
  background: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1000;
}

.mini-app .modal-forgetPassword a {
  display: block;
  margin: 24px 0 0;
  text-align: center;
  text-decoration: underline !important;
  font-size: 14px;
  color: #333 !important;
}

.mini-app .wrap-loginsignin {
  display: block;
}

.mini-app .modal-logInWithMailArea {
  width: 100%;
}

.mini-app .modal-split-signin-pc {
  background: #fff;
  width: 88px;
  display: block;
  border: none;
  position: relative;
  margin: 24px auto 16px;
  text-align: center;
  padding: 0 0 10px;
  z-index: 10;
}

.mini-app .sns-box {
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-top: -35px !important;
  margin-bottom: 24px;
  padding: 24px 16px 18px;
}

.mini-app .modal-logInWithElseArea.here-box {
  width: 100% !important;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 24px !important;
}

.mini-app .modal-logInWithElseArea.here-box > div {
  margin: 0;
  padding: 0 18px;
}

.mini-app .modal-logInWithElseArea.here-box .btn-modal {
  background: none;
  width: auto;
  height: auto;
  line-height: 1;
  display: inline-block;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  pointer-events: none;
}

.mini-app .modal-logInWithElseArea.here-box .btn-google img {
  height: auto;
}

.mini-app .btn-here .btn-modal {
  width: 100%;
  height: 44px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mini-app .btn-first .btn-block {
  width: 100%;
  height: 44px;
}

.mini-app .note {
  margin: 8px 0 0;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 11px;
  color: #757575;
}

.mini-app .login_error-top {
  display: block;
  margin-bottom: 16px;
  font-size: 14px;
}

.mini-app .flow-box ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  margin: 24px 24px 0;
  font-size: 12px;
  text-align: center;
}

.mini-app .flow-box ul.flow-icon:after {
  content: "";
  display: block;
  width: calc(100% - 50px);
  position: absolute;
  top: 15px;
  left: 25px;
  border-bottom: 2px solid #C6C6C6;
}

.mini-app .flow-box .flow-icon li span {
  background: #fff;
  display: block;
  width: 28px;
  height: 28px;
  position: relative;
  margin: 0 auto 4px;
  border: 2px solid #C6C6C6;
  border-radius: 50%;
  z-index: 10;
}

.mini-app .flow-box .flow-icon .active span {
  background: #0F0A64;
  border: 2px solid #0F0A64;
}

.mini-app .flow-box .flow-icon .active.checked span {
  background: #0F0A64 url(/stcontents/img/mini-app/icon-check.png) no-repeat center center;
  background-size: 19px;
}

.mini-app .figure-box {
  margin: 88px  0  40px;
  text-align: center;
}

.mini-app .mini-app-flow .figure-box.small-figure {
  margin: 100px 0 53px;
}

.mini-app .mini-app-flow .login-text {
  margin-bottom: 80px;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}

.mini-app .mini-app-flow .btnWithIcon {
  margin-bottom: 16px !important;
}

.mini-app .mini-app-flow .btnWithIcon:last-of-type {
  margin-bottom: 0 !important;
}

.mini-app .mini-app-flow .modal-loginsignin .modal-logInWithElseArea {
  margin: 0 auto !important;
}

.mini-app .mini-app-flow .modal-logInWithElseArea .btn-modal {
  width: 100%;
  height: 44px;
}

.mini-app .mini-app-flow .btn-here .btn-modal {
  width: 100%;
  height: 44px;
}

.mini-app .mini-app-flow .IconPosition {
  height: 24px;
}

.mini-app .mini-app-flow .btn-google img {
  height: 20px;
}

.mini-app .mini-app-flow .float-box {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 16px 16px 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .mini-app .pc-v {
    display: none !important;
  }
  .mini-app .sp-v {
    display: inline-block !important;
  }
}

@media screen and (max-width: 360px) {
  .mini-app .modal-logInWithMailArea,
  .mini-app .modal-split-pc,
  .mini-app .modal-logInWithElseArea .btn-modal,
  .mini-app .modal-logInWithElseArea {
    width: 100%;
  }
  .mini-app .btn-here .btn-modal {
    font-size: 13px;
  }
}

.mini-app .kv {
  height: 350px;
}

.mini-app .headerTitle {
  font-size: 26px;
  line-height: 1.1;
}

.mini-app .headerTitle span {
  font-size: 22px;
}

.mini-app .headerTitle span span {
  font-size: 18px;
}

.mini-app .lead-box {
  max-width: 318px;
  margin: 30px auto 0;
  position: relative;
  border: 1px solid #fff;
  border-top: none;
  border-radius: 3px;
  text-align: center;
  text-shadow: 1px 1px 1px #000;
  font-weight: bold;
  padding: 30px 10px 15px;
}

.mini-app .lead-box .heading {
  width: calc(100% + 1px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: -9px;
  left: 0px;
  color: #fff;
  font-weight: normal;
  white-space: nowrap;
}

.mini-app .lead-box .heading span {
  width: calc(50% - 80px);
  display: inline-block;
  border-bottom: 1px solid #fff;
}

.mini-app .kv .text {
  top: 66px;
}

.mini-app .kv .headerTitle {
  font-size: 24px;
  line-height: 1.5;
}

.mini-app .kv .text .note {
  margin: 0;
  padding: 0;
}

.mini-app .white-box {
  padding: 16px 8px 52px;
}

.mini-app .white-box.col1-box {
  padding-bottom: 20px;
}

.mini-app .white-box p {
  font-size: 12px;
}

.mini-app .login-box-wrap {
  min-height: 150px;
}

.mini-app .login-box {
  padding: 16px 0 0;
}

.mini-app .login-box .none {
  display: none;
}

.mini-app .login-box .bottom-box {
  font-weight: normal;
}

.mini-app .login-box .bottom-box .btn-block {
  width: 100%;
  overflow: hidden;
  height: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 16px;
  font-size: 14px;
  border-radius: 2px;
}

.mini-app .login-box .visible {
  color: #0F0A64;
}

.mini-app .login-box.float {
  background: #fff;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

.mini-app .login-box.float .bottom-box {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  font-weight: bold;
}

.mini-app .login-box.float .bottom-box > div {
  margin-right: 12px;
}

.mini-app .login-box.float .bottom-box > div:last-child {
  margin-left: 12px;
  margin-right: 0;
}

.mini-app .login-box.float .none {
  width: 100%;
  display: block;
  line-height: 6px;
  margin-top: 8px;
  font-weight: normal;
  font-size: 10px;
  color: #0F0A64;
}

.mini-app .login-box.float .btn-relux-app {
  font-weight: bold;
  line-height: 2.5;
}

.mini-app .login-box.float .visible {
  display: none;
}

.mini-app .login-box.float .btn-block {
  font-weight: bold;
}

.mini-app .point {
  padding-top: 40px;
}

.mini-app .point h2 {
  margin: 16px auto 24px;
  color: #0F0A64;
}

.mini-app .point table .heading {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
  margin-right: 18px;
  padding-left: 2px;
  padding-bottom: 6px;
  letter-spacing: 2px;
  border-bottom: 2px solid #554B98;
  font-size: 20px;
  color: #554B98;
  white-space: nowrap;
}

.mini-app .point table th {
  vertical-align: top;
  padding-top: 16px;
}

.mini-app .point table td {
  padding-bottom: 16px;
  line-height: 1.8;
}

.mini-app .feature h2 {
  margin-bottom: 16px;
}

.mini-app .statusDetail {
  padding-top: 24px;
}

.mini-app .text-link a {
  margin-top: 16px;
  text-decoration: none;
  font-weight: normal !important;
  font-size: 12px;
  color: #0F0A64;
}

.mini-app .text-link a:after {
  content: "";
  display: inline-block;
  width: 5px !important;
  height: 5px !important;
  border-right: 2px solid #0F0A64 !important;
  border-bottom: 2px solid #0F0A64 !important;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-bottom: 1px;
  margin-left: 6px !important;
}

.mini-app .noteText p {
  font-size: 12px;
}

.mini-app .benefits .text-link {
  margin-top: 16px;
  text-align: right;
}

.mini-app .annoucement {
  padding-top: 0;
}

.mini-app .red {
  color: #990000;
}

.mini-app #modal.au-connect {
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .mini-app .login-box .visible {
    font-size: 12px;
  }
  .mini-app .login-box .bottom-box {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .mini-app .login-box .bottom-box > div {
    margin: 0 12px;
  }
  .mini-app .login-box .bottom-box .btn-block {
    padding: 0 20px;
  }
}

@media screen and (min-width: 360px) {
  .mini-app .kv .text ul {
    max-width: 100%;
  }
  .mini-app .kv .text ul {
    padding-left: 10px;
  }
}

.mini-app .sp-v {
  display: none !important;
}

.mini-app .text-center {
  text-align: center;
}

.mini-app .text-right {
  text-align: right;
}

.mini-app #leave-form textarea {
  width: 100%;
}

.mini-app #leave-form [type="submit"] {
  width: 100%;
  height: 40px;
  border-radius: 2px;
}

.mini-app #leave-form .note {
  margin-top: 8px;
  font-size: 10px;
  color: #990000;
}

.mini-app .leave-modal {
  background: #EFEFEF;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
}

.mini-app .leave-modal .leave-box {
  width: calc(100% - 36px);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #fff;
  padding: 36px 16px 24px;
  -webkit-box-shadow: 0px 1px 4px 0px #00000040;
          box-shadow: 0px 1px 4px 0px #00000040;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mini-app .leave-modal .leave-box p {
  font-weight: bold;
}

.mini-app .leave-modal .btn-modal {
  width: 100%;
  margin-top: 40px;
  border-radius: 2px;
}

.mini-app #recover table {
  border-spacing: 0;
}

.mini-app #recover th,
.mini-app #recover td {
  display: block;
}

.mini-app #recover th {
  border-left: 4px solid #222;
  margin-top: 16px;
  margin-bottom: 16px;
  padding-left: 10px !important;
  text-align: left;
  font-weight: normal;
}

.mini-app #recover input {
  width: 100% !important;
  height: 40px;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
  color: #333333;
  margin-bottom: 10px;
  padding: 0 12px;
}

.mini-app #recover input + p {
  font-size: 11px;
}

.mini-app .submit-btn-area .btn-block {
  height: 44px !important;
  border: none !important;
  margin-top: 24px;
}

@media screen and (max-width: 767px) {
  .mini-app .pc-v {
    display: none !important;
  }
  .mini-app .sp-v {
    display: inline-block !important;
  }
}

.mini-app-sub .modal-container {
  -webkit-box-shadow: none;
          box-shadow: none;
}

/*
　追加差分修正
*/
/*
  LP
*/
.mini-app-lp {
  line-height: 1.5;
  /*
  .kv .text ul {
    width: auto;
    margin: 0 auto;
    font-size: 14px;
  }
  .kv .text ul li {
    background: none;
    margin-bottom: 12px;
    padding: 0;
    font-weight: bold;
  }
  */
  /*
    hello改修
  */
}

.mini-app-lp .kv {
  height: 350px;
  position: relative;
}

.mini-app-lp .kv .kv-icon {
  position: absolute;
  bottom: 8px;
  right: 16px;
}

.mini-app-lp .kv .kv-logo {
  margin: 8px 16px 0 0;
  text-align: right;
}

.mini-app-lp .headerTitle {
  font-size: 26px;
  line-height: 1.1;
}

.mini-app-lp .headerTitle span {
  font-size: 22px;
}

.mini-app-lp .headerTitle span span {
  font-size: 18px;
}

.mini-app-lp .lead-box {
  max-width: 318px;
  margin: 30px auto 0;
  position: relative;
  border: 1px solid #fff;
  border-top: none;
  border-radius: 3px;
  text-align: center;
  text-shadow: 1px 1px 1px #000;
  font-weight: bold;
  padding: 30px 10px 15px;
}

.mini-app-lp .lead-box .heading {
  width: calc(100% + 1px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: -9px;
  left: 0px;
  color: #fff;
  font-weight: normal;
  white-space: nowrap;
}

.mini-app-lp .lead-box .heading span {
  width: calc(50% - 80px);
  display: inline-block;
  border-bottom: 1px solid #fff;
}

.mini-app-lp .kv .headerTitle {
  font-size: 24px;
  line-height: 1.5;
}

.mini-app-lp .kv .text .note {
  margin: 0;
  padding: 0;
}

.mini-app-lp .white-box {
  padding: 16px 8px 52px;
}

.mini-app-lp .white-box.col1-box {
  padding-bottom: 20px;
}

.mini-app-lp .white-box p {
  font-size: 12px;
}

.mini-app-lp .login-box-wrap {
  min-height: 150px;
}

.mini-app-lp .login-box {
  padding: 16px 0 0;
}

.mini-app-lp .login-box .none {
  display: none;
}

.mini-app-lp .login-box .bottom-box {
  font-weight: normal;
}

.mini-app-lp .login-box .bottom-box .btn-block {
  width: 100%;
  overflow: hidden;
  height: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 16px;
  font-size: 14px;
  border-radius: 2px;
}

.mini-app-lp .login-box .visible {
  color: #0F0A64;
}

.mini-app-lp .login-box.float {
  background: #fff;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

.mini-app-lp .login-box.float .bottom-box {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  font-weight: bold;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.mini-app-lp .login-box.float .bottom-box > div {
  margin-left: 6px;
  margin-right: 0;
}

.mini-app-lp .login-box.float .bottom-box > div:last-child {
  margin-right: 6px;
  margin-left: 0;
}

.mini-app-lp .login-box.float .none {
  width: 100%;
  display: block;
  line-height: 6px;
  margin-top: 8px;
  font-weight: normal;
  font-size: 10px;
  color: #0F0A64;
}

.mini-app-lp .login-box.float .no-float {
  display: none;
}

.mini-app-lp .login-box.float .btn-relux-app {
  font-weight: bold;
  line-height: 2.5;
}

.mini-app-lp .login-box.float .visible {
  display: none;
}

.mini-app-lp .login-box.float .btn-block {
  font-weight: bold;
}

.mini-app-lp .point {
  padding-top: 40px;
}

.mini-app-lp .point h2 {
  margin: 16px auto 24px;
  color: #0F0A64;
}

.mini-app-lp .point table .heading {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
  margin-right: 18px;
  padding-left: 2px;
  padding-bottom: 6px;
  letter-spacing: 2px;
  border-bottom: 2px solid #554B98;
  font-size: 20px;
  color: #554B98;
}

.mini-app-lp .point table th {
  vertical-align: top;
  padding-top: 16px;
}

.mini-app-lp .point table td {
  padding-bottom: 16px;
  line-height: 1.8;
}

.mini-app-lp .feature h2 {
  margin-bottom: 16px;
}

.mini-app-lp .statusDetail {
  padding-top: 24px;
}

.mini-app-lp .text-link a {
  margin-top: 16px;
  text-decoration: none;
  font-weight: normal !important;
  font-size: 12px;
  color: #0F0A64;
}

.mini-app-lp .text-link a:after {
  content: "";
  display: inline-block;
  width: 5px !important;
  height: 5px !important;
  border-right: 2px solid #0F0A64 !important;
  border-bottom: 2px solid #0F0A64 !important;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-bottom: 1px;
  margin-left: 6px !important;
}

.mini-app-lp .noteText p {
  font-size: 12px;
}

.mini-app-lp .benefits .text-link {
  margin-top: 16px;
  text-align: right;
}

.mini-app-lp .annoucement {
  padding-top: 0;
}

.mini-app-lp .red {
  color: #990000;
}

.mini-app-lp #modal.au-connect {
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .mini-app-lp .login-box .visible {
    font-size: 12px;
  }
  .mini-app-lp .login-box .bottom-box {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .mini-app-lp .login-box .bottom-box > div {
    margin: 0 12px;
  }
  .mini-app-lp .login-box .bottom-box .btn-block {
    padding: 0 20px;
  }
}

@media screen and (min-width: 360px) {
  .mini-app-lp .kv .text ul {
    max-width: 100%;
  }
  .mini-app-lp .kv .text ul {
    padding-left: 10px;
  }
}

.mini-app-lp .kv {
  background-image: url("/stcontents/img/mini-app/keyvisual-layer.png"), url("/stcontents/img/mini-app/keyvisual-sp.png");
  background-repeat: no-repeat, no-repeat;
  background-position: left bottom,  center center;
  background-size: 100%, cover;
}

.mini-app-lp .kv .headerTitle {
  text-align: left;
  padding: 16px;
}

.mini-app-lp .sec-title {
  margin: 0 16px 20px;
  padding-left: 16px;
  border-left: 3px solid #F2CC32;
  text-align: left;
  font-weight: normal;
  font-size: 20px;
}

.mini-app-lp .sec-title strong {
  font-weight: bold;
}

.mini-app-lp .section h2 {
  position: relative;
  margin-bottom: 24px;
  padding-bottom: 24px;
  text-align: center;
  font-weight: bold;
  font-size: 26px;
}

.mini-app-lp .section h2:after {
  background: #F2CC32;
  display: block;
  content: "";
  width: 80px;
  height: 3px;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -40px;
}

.mini-app-lp .pl-8 {
  padding-left: 8px;
}

.mini-app-lp .pl-16 {
  padding-left: 16px;
}

.mini-app-lp .pl-24 {
  padding-left: 24px;
}

.mini-app-lp .pr-8 {
  padding-right: 8px;
}

.mini-app-lp .pr-16 {
  padding-right: 16px;
}

.mini-app-lp .pr-24 {
  padding-right: 24px;
}

.mini-app-lp .mt-48 {
  margin-top: 48px;
}

.mini-app-lp .section img {
  max-width: 100%;
}

.mini-app-lp .section .heading {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 16px;
}

.mini-app-lp .section .heading > div:first-child img {
  width: 44px;
  height: auto;
}

.mini-app-lp .section .heading > div:last-child {
  padding-left: 24px;
  font-size: 20px;
}

.mini-app-lp .section .figure {
  margin: 24px 0;
}

.mini-app-lp .section .figure.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.mini-app-lp .section .figure.flex img {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .mini-app-lp .section .heading > div:first-child img {
    width: 40px;
  }
  .mini-app-lp .section .heading > div:last-child {
    padding-left: 16px;
    font-size: 16px;
  }
  .mini-app-lp .section .figure.flex {
    display: block;
  }
  .mini-app-lp .section .figure.flex img {
    width: 100%;
    display: block;
  }
}

.bnr-list {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.bnr-list a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 16px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  overflow: hidden;
  text-decoration: none;
}

.bnr-list > div > div {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 16px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  overflow: hidden;
}

.bnr-list > div {
  width: calc(50% - 8px);
  height: 220px;
  margin-bottom: 4px;
}

.bnr-list > .wide {
  width: 100%;
  height: 176px;
}

.bnr-list .title {
  font-weight: bold;
  font-size: 24px;
}

.bnr-list .area {
  font-size: 14px;
}

.bnr-list .price {
  position: absolute;
  right: 24px;
  bottom: 24px;
  text-align: right;
}

.bnr-list .price span {
  font-weight: bold;
  font-size: 24px;
}

.bnr-list .bg {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}

.bnr-list .bg img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.bnr-list p {
  margin-bottom: 2px;
}

.bnr-list .title {
  line-height: 1.5;
}

.bnr-list > div p {
  z-index: 1;
  position: relative;
}

.bnr-list .tag {
  background: #F2CC32E5;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4px;
  padding: 1px 3px;
  font-weight: normal;
  font-size: 12px;
  text-shadow: none;
  color: #333;
}

.bnr-list > .bnr-pro {
  height: auto;
  width: auto;
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .bnr-list > .wide {
    height: 300px;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 767px) {
  .bnr-list > div {
    width: calc(50% - 5px);
  }
  .bnr-list > div > div {
    padding: 6px 10px;
  }
  .bnr-list a {
    padding: 6px 10px;
  }
  .bnr-list > .wide {
    height: 176px;
  }
  .bnr-list > div {
    height: 110px;
  }
  .bnr-list .title {
    font-size: 16px;
  }
  .bnr-list .area {
    font-size: 12px;
  }
  .bnr-list .price {
    right: 8px;
    bottom: 10px;
    font-size: 12px;
  }
  .bnr-list .price span {
    font-size: 16px;
  }
}

/* マップモーダル */
.map-modal {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 50;
  display: none;
}

.map-modal .map-modal-content {
  height: 100%;
}

.map-modal .js-modal-close {
  top: 30px;
  right: 30px;
  z-index: 51;
}

.map-modal .gmnoprint {
  display: none;
}

.map-modal .gm-style-cc {
  display: none;
}

.hotel-map-area {
  width: 100%;
  height: 100%;
  background-color: #F5F5F5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /*-- Scrollbar --*/
}

.hotel-map-area p {
  margin-bottom: 0;
}

.hotel-map-area .hotel-list-area {
  width: 412px;
  height: 100%;
  overflow-y: hidden;
}

.hotel-map-area .hotel-list-area .hotel-list-content {
  padding-top: 16px;
  padding-left: 24px;
  height: 100%;
  overflow-y: auto;
}

.hotel-map-area .hotel-list-area .hotel-list-item {
  width: 360px;
  height: 210px;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  position: relative;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  text-shadow: 1px 1px 1px #000000;
  line-height: 1.5;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  overflow: hidden;
}

.hotel-map-area .hotel-list-area .hotel-list-item::before {
  height: 100%;
  width: 100%;
  background-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.hotel-map-area .hotel-list-area .hotel-list-item.active {
  -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  margin-top: 16px;
  margin-bottom: 16px !important;
  -webkit-transform: scale(1.055, 1);
          transform: scale(1.055, 1);
  border: 2px solid #4F68C2;
}

.hotel-map-area .hotel-list-area .hotel-list-item:hover {
  margin-top: 16px;
  margin-bottom: 16px !important;
  -webkit-transform: scale(1.055, 1);
          transform: scale(1.055, 1);
  border: 2px solid #4F68C2;
}

.hotel-map-area .hotel-list-area .hotel-list-item:hover .hotel-list-item-content {
  opacity: 0.7;
}

.hotel-map-area .hotel-list-area .hotel-list-item a {
  display: block;
  color: inherit;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bg-img {
  width: 400px;
  height: 210px;
  -o-object-fit: cover;
     object-fit: cover;
}

.hotel-map-area .hotel-list-area .hotel-list-item .icon-grade,
.hotel-map-area .hotel-list-area .hotel-list-item .icon-label {
  position: absolute;
  top: 16px;
  left: 16px;
  text-shadow: none;
}

.hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite,
.hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite-on {
  position: absolute;
  top: 16px;
  right: 16px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite a,
.hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite-on a {
  width: 32px;
  height: 30px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area {
  padding: 0 16px;
  width: 100%;
  position: absolute;
  bottom: 46px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand img {
  position: relative;
  top: 0;
  left: 0;
  height: 16px;
  -webkit-filter: drop-shadow(0 0 3px #000);
          filter: drop-shadow(0 0 3px #000);
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand img[src*="grade-star"] {
  margin-left: 2px;
  height: 12px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand p {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 4.8px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand span {
  background: rgba(0, 0, 0, 0.1);
  text-shadow: none;
  margin-left: 8px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .name {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.75;
}

.hotel-map-area .hotel-list-area .hotel-list-item .center-area .area {
  max-width: 184px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 0 16px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 16px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-num {
  margin-left: 4px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-count {
  line-height: 2;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-count a {
  position: relative;
  display: inline-block;
  text-decoration: underline;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-price {
  padding-left: 16px;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-price div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-price .price-terms {
  margin-right: 4px;
  position: relative;
  top: 1px;
  letter-spacing: 0;
}

.hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-price .price-num {
  font-size: 2.0rem;
}

.hotel-map-area .hotel-list-area .hotel-list-item:not(:last-child) {
  margin-bottom: 8px;
}

.hotel-map-area .map-area {
  width: calc(100% - 412px);
  height: 100%;
}

.hotel-map-area .map-area .map {
  width: 100%;
  height: 100%;
}

.hotel-map-area .map-area .map .zoom-control {
  margin: 0 32px 32px 0;
}

.hotel-map-area .map-area .map .zoom-control-in {
  margin-bottom: 4px;
  width: 24px;
  height: 24px;
  background-color: #0f0a64;
  border-radius: 4px;
  position: relative;
  cursor: pointer;
}

.hotel-map-area .map-area .map .zoom-control-in::before {
  width: 10px;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  top: 11px;
  left: 7px;
  content: "";
}

.hotel-map-area .map-area .map .zoom-control-in::after {
  width: 2px;
  height: 10px;
  background-color: #ffffff;
  position: absolute;
  top: 7px;
  left: 11px;
  content: "";
}

.hotel-map-area .map-area .map .zoom-control-out {
  width: 24px;
  height: 24px;
  background-color: #0f0a64;
  border-radius: 4px;
  position: relative;
  cursor: pointer;
}

.hotel-map-area .map-area .map .zoom-control-out::before {
  width: 10px;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  top: 11px;
  left: 7px;
  content: "";
}

.hotel-map-area .map-area .map .popup-container {
  width: 200px;
  height: 0;
  position: absolute;
  cursor: auto;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.hotel-map-area .map-area .map .popup-bubble-anchor {
  width: 100%;
  bottom: 8px;
  position: absolute;
  left: 0;
}

.hotel-map-area .map-area .map .popup-bubble-anchor.active::after {
  background-color: #4F68C2;
  z-index: 1;
}

.hotel-map-area .map-area .map .popup-bubble-anchor.hover-style::after {
  background-color: #554B98;
  z-index: 8;
}

.hotel-map-area .map-area .map .popup-bubble-anchor::after {
  width: 16px;
  height: 16px;
  background-color: #0f0a64;
  -webkit-transform: rotateZ(45deg) skew(24deg, 24deg);
          transform: rotateZ(45deg) skew(24deg, 24deg);
  border-radius: 0 0 3px 0;
  position: absolute;
  top: -8px;
  left: -8px;
  content: "";
  z-index: 1;
}

.hotel-map-area .map-area .map .popup-bubble {
  -webkit-box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.2);
  padding: 8px;
  min-width: 80px;
  max-width: 150px;
  min-height: 50px;
  background-color: #ffffff;
  border: 2px solid #0f0a64;
  border-radius: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP";
  line-height: 1;
  letter-spacing: 1px;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  z-index: 2;
}

.hotel-map-area .map-area .map .popup-bubble.mark-num {
  padding: 8px;
  min-width: auto;
  min-height: auto;
}

.hotel-map-area .map-area .map .popup-bubble.mark-num .mark-num-content {
  color: #333333;
  font-weight: 700;
  line-height: 1;
}

.hotel-map-area .map-area .map .popup-bubble.mark-num .mark-num-content span {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.14;
}

.hotel-map-area .map-area .map .popup-bubble .popup-bubble-content {
  margin-bottom: 2px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.hotel-map-area .map-area .map .popup-bubble .popup-bubble-detail {
  margin-top: 2px;
  margin-bottom: 4px;
  text-align: center;
  color: #757575;
  font-size: 12px;
  line-height: 1.33;
  display: none;
}

.hotel-map-area .map-area .map .popup-bubble.active {
  border-color: #4F68C2;
  z-index: 3;
}

.hotel-map-area .map-area .map .popup-bubble.active .popup-bubble-detail {
  display: block;
}

.hotel-map-area .map-area .map .popup-bubble.hover-style {
  border-color: #554B98;
  z-index: 9;
}

.hotel-map-area .map-area .map .research-btn {
  width: 130px;
  height: 40px;
  background-color: #0f0a64;
  border-radius: 4px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 24px;
  left: calc(50% - 65px);
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  z-index: 1;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.hotel-map-area ::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

.hotel-map-area ::-webkit-scrollbar-thumb {
  background-color: #c6c6c6;
}

.hotel-map-area ::-webkit-scrollbar-track {
  background-color: transparent;
}

@media screen and (max-width: 767px) {
  .map-modal {
    margin: 0;
    width: 100%;
    height: 100%;
  }
  .map-modal .js-modal-close {
    width: 40px;
    height: 40px;
    background-image: url(/stcontents/img/common/icon-close-3.svg);
    top: 13px;
    right: 16px;
  }
  .hotel-map-area {
    position: relative;
  }
  .hotel-map-area ::-webkit-scrollbar {
    width: 0;
    height: 0;
  }
  .hotel-map-area .hotel-list-area {
    padding: 0 16px;
    width: 100%;
    height: 140px;
    position: absolute;
    bottom: 16px;
    display: none;
    z-index: 1;
  }
  .hotel-map-area .hotel-list-area .hotel-list-content {
    padding: 0;
    width: 100%;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 0 !important;
    width: 100%;
    height: 140px;
    font-size: 10px;
    overflow: hidden;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    display: none;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item:hover {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    -webkit-transform: scale(1);
            transform: scale(1);
    border: none;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item:hover .hotel-list-item-content {
    opacity: 1;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item.active {
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    -webkit-transform: scale(1);
            transform: scale(1);
    display: block;
    border: none;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item.card-move {
    animation: cardMove .5s 1;
    -webkit-animation: cardMove .5s 1;
    /*Safari and Chrome*/
  }
  @-webkit-keyframes cardMove {
    0% {
      bottom: -140px;
    }
    100% {
      bottom: 0;
    }
  }
  @keyframes cardMove {
    0% {
      bottom: -140px;
    }
    100% {
      bottom: 0;
    }
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bg-img {
    width: 100%;
    height: 140px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .icon-grade {
    top: 8px;
    left: 8px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite,
  .hotel-map-area .hotel-list-area .hotel-list-item .icon-favorite-on {
    top: 12px;
    right: 11px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area {
    padding: 0 16px 0 8px;
    width: 100%;
    position: absolute;
    bottom: 29px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand p {
    margin-right: 4px;
    font-size: 12px;
    letter-spacing: 3px;
    text-shadow: none;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area .name {
    font-size: 12px;
    line-height: 1.5;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area .area {
    max-width: 153px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bottom-area {
    padding: 0 16px 0 8px;
    bottom: 5px;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-num {
    font-size: 12px;
    line-height: 1.8;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-count {
    line-height: 2;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-grade .grade-count a {
    text-decoration: none;
  }
  .hotel-map-area .hotel-list-area .hotel-list-item .bottom-area .bottom-area-price .price-num {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .hotel-map-area .map-area {
    padding-left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
  }
  .hotel-map-area .map-area .map .popup-bubble {
    -webkit-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
    padding: 4px;
    max-width: 111px;
    min-width: 58px;
    min-height: 36px;
    border-width: 1px;
    border-radius: 6px;
    font-size: 12px;
    line-height: 1.33;
  }
  .hotel-map-area .map-area .map .popup-bubble.mark-num {
    padding: 4px;
  }
  .hotel-map-area .map-area .map .popup-bubble.mark-num .mark-num-content {
    line-height: 1.33;
  }
  .hotel-map-area .map-area .map .popup-bubble.mark-num .mark-num-content span {
    font-size: 10px;
    line-height: 1.6;
  }
  .hotel-map-area .map-area .map .popup-bubble .popup-bubble-content {
    margin-bottom: 0;
  }
  .hotel-map-area .map-area .map .popup-bubble .popup-bubble-content .icon-grade {
    height: 12px;
  }
  .hotel-map-area .map-area .map .popup-bubble .popup-bubble-detail {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 10px;
    line-height: 1.6;
  }
  .hotel-map-area .map-area .map .popup-bubble-anchor::after {
    width: 10px;
    height: 10px;
    top: -5px;
    left: -5px;
  }
  .hotel-map-area .map-area .map .research-btn {
    width: 124px;
    height: 32px;
  }
}

@media screen and (min-width: 768px) {
  .hotel-map-area .hotel-list-area .hotel-list-item .center-area .brand span.tag-hoteltype-white {
    height: 20px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    -webkit-transform-origin: 0 center;
            transform-origin: 0 center;
    padding: 0 5px;
    border-radius: 2px;
    font-size: 1rem;
    line-height: 1;
    border-radius: 2px;
    border: 1px solid;
    color: #fff;
  }
}

/*
  春旅割
*/
.lp-spring2023 .key-visual {
  background: url(/stcontents/img/sub-page/lp/springpromo2023/kv.jpg) no-repeat center center;
  background-size: cover;
  max-height: 470px;
}
.lp-spring2023 .key-visual .inner {
  background: rgba(255,255,255,0.7);
  width: auto;
  left: 50%;
  margin: 0 auto;
  padding: 24px 48px;
  transform: translate(-50%, -50%);
  color: #333;
}
.lp-spring2023 .key-visual h1 {
  text-shadow: none;
  margin-bottom: 16px;
}

@media screen and (max-width: 1023px) {
  .lp-spring2023 .key-visual .inner {
    width: 86%;
    padding: 16px 24px;
  }
  .special-list li .text {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  .special-list li {
    height: auto;
  }
  .special-list li a:after {
    background: none;
  }
  .special-list li .notice {
    font-size: 1.8rem;
  }
  .special-list li.wide {
    width: 100%;
    height: 150px;
  }
  .special-list li.wide .photo {
    height: 150px;
  }
  .special-list h3 {
    width: 100%;
    position: relative;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    text-shadow: none;
    font-weight: bold;
    margin: 8px 0 12px;
  }
}

@media screen and (max-width: 400px) {
  .special-list li .text {
    letter-spacing: 0;
  }
}

@media screen and (max-width: 380px) {
  .special-list li .text {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 360px) {
  .lp-spring2023 .key-visual .inner,
  .lp-spring2023 .key-visual .inner .font-small {
    padding: 10px 10px 4px;
    font-size: 1rem;
  }
  .lp-spring2023 .key-visual h1 {
    margin-bottom: 8px;
  }
  .special-list li span {
    font-size: 1.1rem;
  }
}

/*
  10周年キャンペーン
*/
/* 共通 */
.font-w-300 {
  font-weight: 300;
}
/* mv */
.anniversary10th.template .logo {
  margin-top: 0;
}
.anniversary10th .key-visual .list-indent li {
  font-size: 2.4rem;
  line-height: 4.4rem;
  font-weight: 400;
}
.anniversary10th .key-visual .list-indent li::before {
  color: #FF503E;
}
.anniversary10th .lead {
  z-index: 2;
}
.anniversary10th.template .key-visual h1 > .mv-logo {
  width: 312px;
  margin: 0 auto 1.6rem;
}
.anniversary10th.template .key-visual h1 > .mv-text {
  width: 700px;
  max-width: 100%;
  margin: 0 auto 3.2rem;
}
.anniversary10th.template .key-visual h1 > div img {
  width: 100%;
  vertical-align: top;
}
/* contents */
.anniversary10th .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}
.thanks .bg-img-01 img {
  width: 100%;
}
.table-line-area {
  max-width: 630px;
  border: 1px solid #c6c6c6;
  background-color: #fff;
  margin: 0 auto;
  padding: 26px 40px 26px;
}
.table-line-area-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
}
.txt-blue-label {
  display: inline-block;
  color: #0F0A64;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  border: 1px solid #0F0A64;
  border-radius: 50px;
  margin-right: 8px;
  padding: 8px 16px;
}
.table-line {
  width: 364px;
  max-width: 364px;
  border-top: none;
  border-bottom: none;
  margin: 0 auto;
}
.table-line tr:last-child td,
.table-line tr:last-child th {
  border-bottom: none;
}
.table-line tr:nth-child(-n+3) th,
.table-line tr:nth-child(-n+3) td {
  font-weight: bold;
}
.table-line th {
  font-weight: 400;
  background-color: #fff;
}
.table-line th,
.table-line td {
  font-size: 2.6rem;
}
.table-line td {
  text-align: right;
}
/* 期間 */
.campaigns .thanks .table-basic.table-term {
  border: none;
  max-width: 630px;
  margin: 0 auto;
}
.campaigns .thanks .table-basic.table-term th,
.campaigns .thanks .table-basic.table-term td {
  border: none;
  padding: 0;
  margin-bottom: 8px;
}
.campaigns .thanks .table-basic.table-term th {
  width: 162px;
  padding-right: 0.8rem;
  background: none;
}
.campaigns .thanks .table-basic.table-term td.border {
  border-right: 1px solid #333;
  padding: 0 0 0 0;
  margin-right: 0.8rem;
  display: inline-block;
  height: 1.6rem;
  margin-top: 0.7rem;
}
/* 「詳細はこちら」アコーディオン */
.anniversary10th .accordion-btn {
  display: block;
  text-align: left;
  position: relative;
}
.anniversary10th .accordion-btn::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
}
/* 「お得なプランをみる」追従バナー */
.float-bar.disappear-route {
  padding: 16px 16px;
}
/* プラン特集 */
.anniversary10th .feature-ttl {
  font-size: 2.6rem;
  line-height: 1.85;
  font-weight: 300;
}
.anniversary10th .col4-article ul .area-1 {
  background-image: url(/stcontents/img/sub-page/10thanniversary/plan-bnr-01.png);
}
.anniversary10th .col4-article ul .area-2 {
  background-image: url(/stcontents/img/sub-page/10thanniversary/plan-bnr-02.png);
}
.anniversary10th .col4-article ul .area-3 {
  background-image: url(/stcontents/img/sub-page/10thanniversary/plan-bnr-03.png);
}
.anniversary10th .col4-article ul .area-4 {
  background-image: url(/stcontents/img/sub-page/10thanniversary/plan-bnr-04.png);
}
.anniversary10th .col4-article ul li a {
  font-weight: bold;
}
/* エリア特集 追従アンカーリンク */
.anniversary10th .anchor-link.position-measure {
  width: 100%;
  z-index: 10;
}
/* エリア特集 コンテンツ */
.area-feature .area-feature-heads {
  font-size: 2rem;
  line-height: 2.8rem;
  font-weight: bold;
  text-align: left;
}
.root-sub-list.responsive-2col .sub-box {
  cursor: pointer;
}
.area-feature .sub-box figure .frame-flex-base {
  display: block;
  text-align: left;
  text-shadow: 1px 1px 1px #000;
}
.area-feature .hotel-name, .hotel-place {
  color: #fff;
}
.area-feature .hotel-name {
  font-size: 1.6rem;
  line-height: 28px;
  font-weight: bold;
}
.area-feature .hotel-place {
  font-size: 1.2rem;
  line-height: 18px;
  font-weight: 400;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  white-space: normal;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.area-feature .plan-name {
  color: #333;
  height: calc(2.4rem * 2);
  line-height: 2.4rem;
}
@media (min-width: 1120px) {
  .root-sub-list.responsive-2col .sub-box {
    -webkit-flex-basis: calc(100% / 2 - 1rem);
        -ms-flex-preferred-size: calc(100% / 2 - 1rem);
            flex-basis: calc(100% / 2 - 1rem);
  }
}
@media (min-width: 768px) {
  .anniversary10th .global-header .logo-image {
    padding-top: 1.8rem;
  }
  .anniversary10th .global-header .logo-image img {
    height: 2.4rem;
  }
  .global-header .before-menu {
    margin-top: 8px;
  }
  /* 期間 */
  .campaigns .thanks .table-basic.table-term {
    max-width: 300px;
  }
  /* 背景画像 pc表示 */
  .thanks {
    position: relative;
  }
  .thanks .bg-img-01 {
    position: absolute;
    left: 0;
    top: 642px;
    z-index: -1;
  }
  .area-feature {
    position: relative;
  }
  .area-feature .bg-img-02 {
    position: absolute;
    left: -124px;
    top: -150px;
    z-index: -1;
  }
  .area-feature .bg-img-03 {
    position: absolute;
    right: 0;
    top: 745px;
    z-index: -1;
  }
  .area-feature .bg-img-04 {
    position: absolute;
    left: 0;
    top: 2880px;
    z-index: -1;
  }
  .area-feature .bg-img-05 {
    position: absolute;
    right: -88px;
    bottom: 2098px;
    z-index: -1;
  }
  /* エリア特集 コンテンツ pc表示 */
  .area-feature .frame-sub-list {
    margin-bottom: 1.6rem;
  }
  .area-feature .sub-box {
    margin-bottom: 2.4rem;
  }
  .area-feature .sub-box figure {
    height: 200px;
  }
  .area-feature .sub-box-detail {
    padding: 0.8rem 1.6rem 1.6rem;
    height: 108px;
  }
}
@media (max-width: 1023px){
  .anchor-link.position-measure ul {
    justify-content: normal;
  }
}
@media (max-width: 767px) {
  .anniversary10th .campaign-detail .list-indent li {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  .anniversary10th .campaign-detail .note li {
    font-size: 1.2rem;
  }
  .anniversary10th .lead {
    padding: 0 7.2%;
  }
  .campaigns.template .key-visual h1 > .mv-logo {
    width: 56%;
  }
  .anniversary10th .key-visual .list-indent li {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  .anniversary10th.template .key-visual h1 > .mv-text {
    width: 100%;
    margin: 0 auto 2.4rem;
  }
  .anniversary10th .wave {
    width: 100%;
    max-width: none;
    height: auto;
  }
  .sp-text-left {
    text-align: left;
  }
  .sp-text-center {
    text-align: center !important;
  }
  .table-line-area {
    padding: 24px 16px;
  }
  .table-line-area-ttl {
    flex-direction: column;
  }
  .table-line-area-ttl .txt-blue-label {
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1;
    margin-right: 0;
    margin-bottom: 8px;
    padding: 4px 8px;
  }
  .table-line-area-ttl span {
    display: inline-block;
    line-height: 1.75;
  }
  .table-line {
    width: 100%;
  }
  .table-line td,
  .table-line th {
    display: table-cell;
    width: auto;
    border-bottom: 1px solid #C6C6C6;
  }
  .table-line th {
    min-width: initial;
  }
  .table-line td {
    text-align: right;
  }
  /* 期間 */
  .campaigns .thanks .table-basic.table-term {
    width: 260px;
  }
  .campaigns .thanks .table-basic.table-term th,
  .campaigns .thanks .table-basic.table-term td {
    display: table-cell;
    letter-spacing: 1px;
  }
  .campaigns .thanks .table-basic.table-term th {
    width: 146px;
    padding-right: 0.6rem;
  }
  .campaigns .thanks .table-basic.table-term td {
    width: auto;
  }
  .campaigns .thanks .table-basic.table-term td.border {
    margin-top: 0.6rem;
    margin-right: 0.6rem;
  }
  /* 背景画像 wave sp表示 */
  .thanks {
    position: relative;
  }
  .thanks .bg-img-01 {
    position: absolute;
    left: 0;
    bottom: 0px;
    z-index: -1;
  }
  /* エリア特集 コンテンツ sp表示 */
  .area-feature .area-feature-heads {
    margin-left: 16px;
  }
  .area-feature .select-detail-photo {
    height: 12.6rem;
  }
  .area-feature .plan-name {
    -webkit-line-clamp: 3;
    white-space: normal;
    height: calc(2.4rem * 3);
    line-height: 2.4rem;
  }
  .area-feature .hotel-name {
    -webkit-line-clamp: 2;
    white-space: normal;
  }
  /* プラン特集 */
  .anniversary10th .feature-ttl {
    font-size: 2.4rem;
    line-height: 4.4rem;
  }
}
/*
  10周年キャンペーン end
*/

/*
  春クーポン祭りLP
*/
body.springfes {
  padding-bottom: 0 !important;
}
.springfes .global-footer {
  display: block !important;
}
.springfes .key-visual {
  background: url(/stcontents/img/sub-page/lp/springfes23/kv-springfes.jpg) center center no-repeat;
  background-size: cover;
  height: 600px;
  margin-bottom: 0;
  position: relative;
}
.springfes .key-visual:before {
  content: none;
}
.springfes .key-visual .inner {
  background: url(/stcontents/img/sub-page/lp/springfes23/kv-text-bg.png) center center no-repeat;
  background-size: contain;
  top: 50%;
  bottom: inherit;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 70px 0;
}
.springfes .key-visual .inner:before {
  content: url(/stcontents/img/sub-page/lp/springfes23/kv-sakura.png);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: scale(0.5) translate(-95%, -130%);
  transform-origin: center center;
}
.springfes .key-visual h1 {
  font-size: 6.4rem;
}

.springfes .calendar-table {
  text-align: center;
  border-top: none;
}
.springfes .calendar-table th {
  width: calc(100% /9);
  min-width: 0;
  padding: 2px 8px;
  text-align: center;
  border-left: 2px solid #fff;
}
.springfes .calendar-table th:first-child {
  border-left: 2px solid #F5F5F5;
}
.springfes .calendar-table th:last-child {
  border-right: 2px solid #F5F5F5;
}
.springfes .calendar-table td {
  border: 2px solid #F5F5F5;
  padding: 8px 8px 34px;
  position: relative;
}
.springfes .calendar-table td:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -2px;
  width: calc(100% + 4px);
  border-bottom: 18px solid #D9B255;
}
.springfes .gold-line {
  line-height: 0;
  text-align: center;
  position: relative;
  z-index: 1;
}
.springfes .gold-line img {
  width: 247px;
  display: inline-block;
  vertical-align: top;
  margin-top: -40px;
}
.springfes .campaign .border-red {
  border: 1px solid #FF503E;
  width: 40px !important;
  margin: 16px auto 24px;
}
.springfes .coupon-block {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.springfes .coupon-block > div {
  background: url(/stcontents/img/sub-page/lp/springfes23/coupon-bg.png) no-repeat center center;
  background-size: contain;
  width: 550px;
  height: 200px;
  margin-bottom: 24px;
}
.springfes .coupon-block > div a {
  display: block;
  padding: 20px 0;
}
.springfes .coupon-block .btn-relux:hover {
  background-color: #0f0a64;
}

@media screen and (min-width: 768px) {
  .springfes .key-visual h1 {
    margin-bottom: 0 !important;
  }
  .springfes .coupon-block .btn-wide {
    width: 348px;
  }
}

@media screen and (max-width: 1280px) {
  .springfes .coupon-block {
    display: block;
  }
  .springfes .coupon-block > div {
    margin: 0 auto 16px;
  }
  .springfes.template .recommend.complete .feature-list li .text {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .springfes .key-visual {
    background: url(/stcontents/img/sub-page/lp/springfes23/kv-springfes-sp.jpg) center center no-repeat;
    background-size: cover;
    height: 560px;
    max-height: 90vh;
    margin-bottom: 0;
    position: relative;
  }
  .springfes .key-visual h1 {
    margin-bottom: 8px !important;
    font-size: 2.7rem !important;
  }
  .springfes .key-visual .inner:before {
    content: url(/stcontents/img/sub-page/lp/springfes23/kv-sakura-sp.png);
    transform: scale(0.48) translate(-103%, -144%);
    transform-origin: center center;
  }
  .springfes .key-visual .inner h1,
  .springfes .key-visual .inner p {
    position: relative;
    z-index: 1;
  }
  .springfes .calendar-table th,
  .springfes .calendar-table td {
    display: table-cell;
    width: 20%;
  }
  .springfes .calendar-table td {
    padding-bottom: 30px;
  }
  .springfes .calendar-table td:after {
    border-bottom: 12px solid #D9B255;
  }
  .springfes .calendar-table tr:nth-child(2) td {
    padding-bottom: 20px;
  }
  .springfes .calendar-table tr:nth-child(2) td:first-child:after {
    content: none;
  }
  .springfes .gold-line img {
    width: 187px;
    margin-top: -30px;
  }
  .springfes .coupon-block > div {
    background: url(/stcontents/img/sub-page/lp/springfes23/coupon-bg-sp.png) no-repeat center center;
    background-size: contain;
    width: 355px;
    height: 168px;
    margin: 0 auto 6px;
  }
  .springfes .coupon-block .font-xxxx-large {
    font-size: 2.4rem
  }
  .springfes .coupon-block .btn-relux {
    width: 250px;
    height: 40px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 500px) {
  .springfes .coupon-block > div {
    width: calc(100vw - 20px);
    height: calc(50vw - 20px);
    margin: 0 0 6px -6px;
  }
  .springfes .coupon-block > div a {
    padding: 7vw 0;
  }
  .springfes.template .recommend.complete .feature-list li {
    width: 100%;
  }
}
@media screen and (max-width: 400px) {
  .springfes .coupon-block > div a {
    padding: 6vw 0;
  }
}
@media screen and (max-width: 320px){
  .springfes .coupon-block .font-xxxx-large {
      font-size: 2rem;
      margin: -2px 0 4px;
  }
}

/*
  夏トクキャンペーン
*/
.summerfes .key-visual {
  background: url(https://rlx.jp/img/hotelpictures/RP21847_2wk6N.jpg) center center no-repeat;
  background-size: cover;
}
.summerfes .key-visual .inner {
  margin-top: 90px;
}
.summerfes .key-visual .inner:before {
  content: none;
}
.summerfes .key-visual h1 {
  line-height: 1.2;
  margin-bottom: 32px !important;
}
.summerfes .key-visual .text-bg-1 {
  text-shadow: 1px 1px 1px #000, 0 0 16px rgba(44,78,114,1), 0 0 16px rgba(44,78,114,1), 0 0 16px rgba(44,78,114,1);
}
.summerfes.campaigns .key-visual .text-bg-2 {
  text-shadow: 1px 1px 1px #000, 0 0 40px rgba(44,78,114,1), 0 0 40px rgba(44,78,114,1), 0 0 40px rgba(44,78,114,1);
}
.summerfes .key-visual .bg-text {
  position: absolute;
  width:100%;
  top: 0;
  left: 0;
  z-index: -1;
  color: transparent;
}
.summerfes .key-visual .inner .label {
  background: rgba(15, 10, 100, 0.5);
  display: inline-block;
  padding: 4px 16px;
  border-radius: 44px;
  color: #fff;
}

@media (min-width: 1024px){
  .result-hotel-list.recommend-list .result-hotel {
      height: 35rem;
  }
}

.result-hotel-list.recommend-list a:hover {
    opacity: 0.7;
}
.result-hotel-list.recommend-list .photo {
  width: 576px;
  height: 100%;
  overflow: hidden;
}
.result-hotel-list.recommend-list .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.result-hotel-list.recommend-list .hotel-info {
  top: 24px;
  left: 600px;
  padding-right: 24px;
  color: #333;
}
.result-hotel-list.recommend-list .hotel-grade {
  align-items: flex-start;
}
.result-hotel-list.recommend-list .hotel-grade span {
  margin-top: -6px;
}
.result-hotel-list.recommend-list .hotel-info a:hover {
  color: inherit;
}
.result-hotel-list.recommend-list .hotel-info .address {
  margin: 0 0 8px;
}
.result-hotel-list.recommend-list .hotel-info .price-box {
  justify-content: flex-end;
  margin-top: 16px;
}
.result-hotel-list.recommend-list .hotel-info .price {
  font-weight: bold;
  font-size: inherit;
  line-height: 2.4rem;
}

@media (max-width: 1280px) {
  .result-hotel-list.recommend-list .photo {
    width: 53%;
  }
  .result-hotel-list.recommend-list .hotel-info {
    left: calc(53% + 24px);
  }
}
@media (max-width: 1023px) {
  .result-hotel-list.recommend-list .result-hotel {
    height: auto;
    margin-bottom: 16px;
    border-radius: 8px;
  }
  .result-hotel-list.recommend-list .result-hotel a {
    color: #333;
  }
  .result-hotel-list.recommend-list .photo {
    width: 100%;
    height: 198px;
  }
  .result-hotel-list.recommend-list .hotel-info {
    position: relative;
    top: inherit;
    bottom: inherit;
    left: inherit;
    right: inherit;
    padding: 16px;
  }
  .result-hotel-list.recommend-list .hotel-grade img {
    filter: none;
  }
  .result-hotel-list.recommend-list .hotel-info div > div {
    text-shadow: none;
  }
  .result-hotel-list.recommend-list .hotel-info-body {
    display: block;
  }
  .tanabata .result-hotel-list.recommend-list .price-box .font-small {
    font-size: 10px;
  }
}

@media (max-width: 767px) {
  .summerfes .key-visual .inner {
    top: 55%;
  }
  .summerfes .key-visual .inner h1 {
    margin-bottom: 16px !important;
    font-size: 4.4rem !important;
  }
  .summerfes .key-visual .inner p {
    line-height: 1.5;
  }
  .result-hotel-list.recommend-list .result-hotel {
    margin-bottom: 8px;
  }
  .result-hotel-list.recommend-list .result-hotel:last-child {
    margin-bottom: 16px;
  }
  .result-hotel-list.recommend-list .hotel-grade {
    margin-left: 0 !important;
  }
  .result-hotel-list.recommend-list .hotel-grade img {
    height: 15px;
    width: auto !important;
  }
  .result-hotel-list.recommend-list .hotel-grade span {
    font-size: 1.4rem;
  }
  .result-hotel-list.recommend-list .hotel-info .address {
    font-size: 1.2rem;
  }
  .result-hotel-list.recommend-list .hotel-info .plan-name {
    font-size: 1.6rem;
    padding: 0 !important;
  }
  .summerfes .recommend .text-asterisk {
    font-size: 1rem;
  }
  .summerfes .recommend .feature-list li .text {
    font-size: 2.4rem !important;
    font-weight: bold !important;
    line-height: 1.8 !important;
  }
  .summerfes .recommend .feature-list.text-add li p {
    font-size: 1.4rem !important;
  }
}
@media (max-width: 360px) {
  .summerfes .key-visual .inner {
    top: 50%;
  }
}

/*
  クリスマスキャンペーン
*/
.christmas2310 .key-visual {
  background: url(https://rlx.jp/img/hotelpictures/RP377406_B4p7K.jpg) center center no-repeat !important;
  background-size: cover;
}
.christmas2310 .anchor-link.position-measure {
  z-index: 20;
}

@media screen and (max-width: 767px){
  .christmas2310 .float-bar.default {
    padding: 12px 16px 16px !important;
  }
}

/*
  さきどり夏旅キャンペーン
*/
.summer-campaign .key-visual .inner h1 {
  font-size: 5rem;
}
.summer-campaign .key-visual .table-basic {
  width: 400px;
}
.summer-campaign .key-visual::before {
  content: none;
}
.summer-campaign .key-visual table th {
  position: relative;
  padding-right: 12px !important;
}
.summer-campaign .key-visual table th:after {
  content: "｜";
  position: absolute;
  top: 50%;
  right: -8px;
  transform: translateY(-50%);
}
.radius-style > span {
  background: rgba(167, 218, 255, 0.7);
  padding: 2px 24px 4px;
  border-radius: 56px;
}
.radius-style > span:last-child {
  margin-left: 8px;
}
.border-gray-box {
  border: 1px solid #ccc;
}
.summer-figure-title {
  margin-bottom: -52px;
  position: relative;
}
.summer-figure-title span {
  background: #A7DAFF;
  display: inline-block;
  padding: 2px 24px 4px;
  border-radius: 56px;
  font-size: 1.6rem;
  color: #fff;
}
.summer-figure-2 {
  margin: 0 -16px 0 -16px;
}
.summer-figure-2-title {
  margin-bottom: -60px;
}

.campaigns .anime-box.small-box .anime-parts-1 {
  top: 0;
}
.campaigns .anime-box.small-box .anime-parts-2 {
  bottom: 20px;
}
.campaigns .anime-box.small-box .anime-parts-3 {
  top: -156px;
}

.campaigns.template .recommend.complete .feature-list.text-add li {
  height: auto;
  border-radius: 0;
  box-shadow: none;
}
.campaigns.template .recommend.complete .feature-list.text-add li a {
  height: 160px;
  width: 100%;
  display: block;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.campaigns.template .recommend.complete .feature-list.text-add li p {
  color: #333;
  text-shadow: none;
  padding-top: 8px;
  font-size: 16px;
  text-align: left;
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .summer-figure-2-title {
    margin-bottom: -30px;
  }
}

.summer-campaign .inner.timer-add .table-basic td .font-bold {
  font-weight: 900;
}
@media screen and (min-width: 768px) {
  .summer-campaign .inner.timer-add .table-basic td {
    font-size: 20px;
  }
}

@media screen and (max-width: 767px) {
  .summer-campaign .anime-box {
    top: 45% !important;
  }
  .summer-campaign .key-visual .inner.timer-add {
    bottom: 40px;
  }
  .campaigns .anime-box.small-box .result-coupon {
    width: 280px;
    height: 228px;
  }
  .campaigns .anime-box.small-box .anime-parts-1 {
    height: 130px;
    top: -8px;
    left: 2px;
  }
  .campaigns .anime-box.small-box .anime-parts-2 {
    bottom: 30px;
    left: 2px;
    height: 170px;
  }
  .campaigns .anime-box.small-box .anime-parts-3 {
    width: 358px;
    top: -106px;
    left: 2px;
  }
  .summer-campaign .key-visual .inner h1 {
    font-size: 4rem;
  }
  .summer-campaign .key-visual .font-xxxxx-large {
    font-size: 3rem;
  }
  .radius-style > span {
    padding: 2px 16px 4px;
  }
  .summer-campaign .inner.timer-add .table-basic {
    width: auto;
  }
  .summer-campaign .inner.timer-add .table-basic th,
  .summer-campaign .inner.timer-add .table-basic td {
    width: auto;
  }
  .summer-campaign .inner.timer-add .table-basic td {
    font-size: 14px;
  }
  .summer-figure-title {
    margin-bottom: -16px;
  }
  .summer-campaign .bd-bottom-gray-2 {
    margin: 0 -16px 16px;
  }
  .summer-campaign .border-gray-box {
    border: none;
  }
  .campaigns.template .summer-campaign .recommend .wrap {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .campaigns.template .summer-campaign .recommend.complete .feature-list li .text {
    font-size: 2rem;
    font-weight: bold;
  }
  .campaigns.template .recommend.complete .feature-list.text-add li {
    width: 100%;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 360px) {
  .key-visual .font-x-large {
      font-size: 12px;
  }
  .summer-campaign .key-visual .font-xxxxx-large {
    font-size: 2.5rem;
  }
  .summer-campaign .key-visual table th:after {
    content: none;
  }
}

@media screen and (max-width: 320px) {
  .campaigns .anime-box.small-box .anime-parts-1 {
    width: 316px;
    top: 12px;
  }
  .campaigns .anime-box.small-box .anime-parts-2 {
    width: 316px;
    height: 170px;
    bottom: 22px;
    left: 2px;
  }
  .campaigns .anime-box.small-box .anime-parts-3 {
    width: 316px;
    top: -98px;
    left: 2px;
  }
}

/*
  七夕キャンペーン
*/
.tanabata .key-visual {
  background: url(/stcontents/img/sub-page/lp/tanabata2306/kv-tanabata.png) no-repeat center bottom;
  background-size: cover;
}
.tanabata .key-visual:after {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(1,0,50,0.7) 8%, rgba(3, 0, 153, 0) 50%);
  position: absolute;
  top: 0;
  left: 0;
}
.tanabata .key-visual h1 {
  text-shadow: 2px 2px 20px #000000, 1px 1px 2px #001A78 !important;
}
/*
  七夕キャンペーン
*/
.tanabata .key-visual .inner {
  margin-top: 96px;
}
.kv-table dl {
  width: 716px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  text-align: left;
  line-height: 1;
}
.kv-table dl dt,
.kv-table dl dd {
  margin-bottom: 16px;
}
.kv-table dl dt:last-of-type,
.kv-table dl dd:last-of-type {
  margin-bottom: 0;
}
.kv-table dl dt {
  background: #4F68C2;
  width: 178px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 40px;
  text-shadow: none;
  font-size: 2rem;
  color: #fff;
}
.kv-table dl dd {
  width: calc(100% - 178px - 16px);
  font-size: 3.6rem;
}
.kv-table dl .small {
  font-size: 2.6rem;
}
.kv-table dl .date {
  font-size: 2.4rem;
}
.tanabata h2.heading {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
}
.tanabata h2.heading .icon {
  background: #4F68C2;
  width: 92px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #fff;
  border-radius: 40px;
  letter-spacing: 0;
  margin-right: 8px;
  font-size: 2rem;
}
.table-bd-new {
  border: 1px solid #C6C6C6;
}
.table-bd-new td {
  background: transparent;
}
.table-bd-new td {
  background: #fff;
}

.tanabata .note {
  font-size: 1.4rem;
  color: #757575;
}
.tanabata .note a {
  text-decoration: underline;
}
.tanabata .note a:hover {
  text-decoration: none;
  color: #0066cc;
}
.tanabata .note ul li {
  padding-left: 1.5rem;
  text-indent: -1.5rem;
}
.tanabata .recommend {
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
}
.tanabata .result-hotel-list.recommend-list .result-hotel {
  height: auto;
}
.tanabata .result-hotel-list.recommend-list .photo {
  width: 688px;
  height: 452px;
  display: flex;
}
.tanabata .result-hotel-list.recommend-list .photo div {
  position: relative;
}
.tanabata .result-hotel-list.recommend-list .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tanabata .result-hotel-list.recommend-list .photo .large {
  width: 430px;
  height: 452px;
}
.tanabata .result-hotel-list.recommend-list .photo .large img {
  border-right: 1px solid #fff;
}
.tanabata .result-hotel-list.recommend-list .photo .small {
  width: 258px;
  height: 226px;
  line-height: 0;
  overflow: hidden;
  position: relative;
}
.tanabata .result-hotel-list.recommend-list .photo .small:first-child img {
  border-bottom: 1px solid #fff;
}
.tanabata .result-hotel-list.recommend-list .photo .text {
  display: inline-block;
  position: absolute;
  top: 16px;
  left: 16px;
  display: inline-block;
  margin-right: 16px;
  padding: 2px 8px 3px;
  line-height: 1.3;
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(3px);
  text-align: left;
  font-size: 14px;
  color: #000;
}
.tanabata .result-hotel-list.recommend-list .hotel-info {
  top: 24px;
  left: 712px;
  padding-right: 24px;
  font-size: 1.4rem;
  color: #333;
}
.tanabata .result-hotel-list.recommend-list .hotel-grade .label {
  display: inline-block;
  padding: 5px 8px;
  border: 1px solid #333333;
  border-radius: 2px;
  line-height: 1;
  margin: 0 8px 0 10px;
  font-size: 12px;
  letter-spacing: 0;
}
.tanabata .result-hotel-list.recommend-list .hotel-grade .area {
  display: inline-block;
  font-size: 1.6rem;
  margin-top: -3px;
  color: #757575;
}
.tanabata .result-hotel-list.recommend-list .hotel-info .name {
  font-size: 2rem;
  font-weight: bold;
  text-shadow: none;
}
.tanabata .result-hotel-list.recommend-list .hotel-info .name a {
  text-decoration: underline;
}
.tanabata .result-hotel-list.recommend-list .hotel-info .name a:hover {
  text-decoration: none;
  opacity: 1;
}
.tanabata .result-hotel-list.recommend-list .result-hotel .address-box {
  line-height: 1.5;
}
.tanabata .result-hotel-list.recommend-list .hotel-info dl dt {
  border-left: 1px solid rgb(221,72,41);
  padding-left: 8px;
  font-weight: bold;
  font-size: 1.4rem;
}
.tanabata .result-hotel-list.recommend-list .hotel-info dl dd {
  margin: 4px 0;
}
.tanabata .result-hotel-list.recommend-list .hotel-info dl dd:last-of-type {
  margin-bottom: 0;
}
.tanabata .result-hotel-list.recommend-list .price-box {
  justify-content: center;
  margin: 16px 0 0 !important;
}
.tanabata .result-hotel-list.recommend-list .price-box form {
  width: 100%;
}
.tanabata .result-hotel-list.recommend-list .price-box .btn-relux {
  min-width: 220px;
  width: 100%;
  height: 40px;
  color: #fff;
}
.tanabata .result-hotel-list.recommend-list .price-box .btn-disabled {
  pointer-events: none;
}
.before-none:before {
    content: none !important;
}
.finish-text {
  background: rgba(0,0,0,0.6);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 188px 16px 0;
  text-align: center;
  z-index: 10;
}
.finish-text > p {
  max-width: 885px;
  margin: 0 auto;
  background: #333;
  padding: 10px 10px;
  font-size: 2.4rem;
  color: #fff;
}
.finished .finish-text {
  display: block;
}
.finished.tanabata .result-hotel-list .price-box a,
.finished.tanabata .coupon-block > div a {
  pointer-events: none;
}
.btn-finished {
  background: #F5F5F5 !important;
  color: #C6C6C6 !important;
  border: none !important;
  pointer-events: none !important;
}

@media (max-width: 1279px) and (min-width: 1024px){
  .tanabata .result-hotel-list.recommend-list .photo {
    width: 570px;
    height: 440px;
    float: left;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-info {
    left: inherit;
    width: calc(100% - 594px);
    height: auto;
    float: right;
    font-size: 1.2rem;
  }
  .tanabata .result-hotel-list.recommend-list .photo .large {
    width: 330px;
    height: 440px;
  }
  .tanabata .result-hotel-list.recommend-list .photo .small {
    width: 240px;
    height: 230px;
  }
  .tanabata .result-hotel-list.recommend-list .photo .text {
    font-size: 11px;
  }
}
@media (max-width: 1023px){
  .tanabata .result-hotel-list.recommend-list .photo {
    float: none;
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-info {
    width: 100%;
    position: relative;
    top: inherit;
    left: inherit;
    padding: 16px 16px 16px;
  }
  .tanabata .result-hotel-list.recommend-list .photo > div {
    width: 100%;
    display: flex;
  }
  .tanabata .result-hotel-list.recommend-list .photo .small {
    width: 50%;
    height: 240px;
  }

  .tanabata .result-hotel-list.recommend-list .photo .large {
    width: 100%;
    height: 300px;
  }
  .tanabata .result-hotel-list.recommend-list .photo .large img {
    border: none;
    border-bottom: 1px solid #fff;
  }
  .tanabata .result-hotel-list.recommend-list .photo .small:first-child img {
    border: none;
    border-right: 1px solid #fff;
  }
  .tanabata .result-hotel-list.recommend-list .photo .text {
    font-size: 12px;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-grade .label {
    font-size: 10px;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-grade .area {
    font-size: 1.4rem;
    margin-top: -4px;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-info dl dt {
    font-size: 1.2rem;
  }

  .tanabata .result-hotel-list.recommend-list .hotel-info .name {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-info .plan-name {
    font-size: 1.4rem;
  }
  .tanabata .result-hotel-list.recommend-list .price-box .btn-relux {
    margin-top: 16px;
    padding: 0 12px;
    font-size: 1.4rem;
  }
}
@media (max-width: 767px){
  .tanabata .key-visual {
    background: url(/stcontents/img/sub-page/lp/tanabata2306/kv-tanabata-sp.png) no-repeat center top;
    background-size: cover;
    height: auto;
    max-height: none !important;
  }
  .tanabata .key-visual:after {
    content: none;
  }
  .tanabata .key-visual .inner {
    position: relative;
    top: inherit;
    left: inherit;
    transform: none;
    margin-top: 0;
    padding: 180px 0 40px;
  }
  .tanabata .key-visual .inner h1 {
    margin-bottom: 24px !important;
    font-size: 4rem !important;
  }
  .tanabata .key-visual .font-64 {
    font-size: 40px;
  }
  .tanabata .key-visual .font-40 {
    font-size: 28px;
  }
  .kv-table dl {
    width: 100%;
    display: block;
    text-align: center;
  }
  .kv-table dl dt {
    width: 152px;
    height: 28px;
    margin: 0 auto 8px !important;
    font-size: 1.4rem;
  }
  .kv-table dl dd {
    width: auto;
    height: auto;
    padding: 0 10px;
    font-size: 2rem;
  }
  .kv-table dl dd .small {
    font-size: 1.6rem;
  }
  .kv-table dl .date {
    margin-bottom: 0;
    font-size: 1.6rem;
  }
  .tanabata .wrap .font-36 {
    font-size: 2.6rem !important;
  }
  .tanabata h2.heading {
    display: block;
    font-size: 2.4rem;
    line-height: 1.8;
  }
  .tanabata h2.heading .icon {
    width: 81px;
    height: 36px;
    display: flex;
    margin: 0 auto;
    font-size: 1.6rem;
  }
  .table-basic th {
    font-size: 1.6rem;
  }
  .tanabata .recommend {
    overflow: visible;
  }
  .tanabata .result-hotel-list.recommend-list .photo .small {
    width: 50%;
    height: 120px;
  }
  .tanabata .result-hotel-list.recommend-list .photo .large {
    width: 100%;
    height: 190px;
  }
  .tanabata .result-hotel-list.recommend-list .photo .text {
    top: 8px;
    left: 8px;
    font-size: 10px;
    margin-right: 8px;
  }
  .tanabata .result-hotel-list.recommend-list .hotel-info {
    padding: 9px 16px 16px;
    font-size: 1.2rem;
  }
  .tanabata .result-hotel-list.recommend-list .price-box .btn-relux {
    margin-top: 0;
  }
  .tanabata .coupon-block > div {
    margin: 0 auto 6px !important;
    width: 100%;
    height: auto;
  }
  .tanabata .coupon-block + .table-bd-new {
    border: 1px solid #C6C6C6;
  }
  .bg-sp-none {
    background: none !important;
  }
  .campaigns.tanabata .recommend .wrap {
    padding: 0 16px !important;
  }
  .tanabata #notice {
    font-size: 1.4rem;
  }
  .finish-text > p {
    font-size: 1.6rem;
  }
}

.common-toast {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  opacity: 1;
  background-color: #4F68C2;
  animation: toastHide .5s 3s forwards;
  box-sizing: border-box;
  text-align: center;
  z-index: 1000;
  overflow: hidden;
}
.common-toast > div {
  padding: 10px 10px;
  color: #fff;
}
@keyframes toastHide{
  0% {
    opacity: 1;
  }
  99% {
    opacity: 0;
    height: 60px;
  }
  100% {
    height: 0;
  }
}

/*
  旅得クーポンLP
*/
.tabitoku2307 .key-visual {
  background: none;
  overflow: hidden;
  padding: 0;
}
.tabitoku2307 .key-visual video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1);
  transform-origin: center;
}
.tabitoku2307 .key-visual:before {
  background: linear-gradient(0deg, #D5CDC0 0%, rgb(7, 151, 169) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0.3;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.tabitoku2307 .key-visual .inner {
  width: 100%;
  background: none;
  top: auto;
  bottom: 128px;
  left: auto;
  transform: none;
  padding: 0 10px;
}
.tabitoku2307 .key-visual .inner:before {
  content: none;
}
.tabitoku2307 .key-visual h1 {
  text-align: center;
  position: relative;
}
.tabitoku2307 .key-visual h1 img {
  width: 100%;
  max-width: 939px;
  margin: 0 auto;
}
.tabitoku2307 .key-visual .lead {
  display: inline-block;
  text-align: center;
  position: relative;
  -webkit-text-stroke: 4px #008E9E;
  text-stroke: 4px #008E9E;
}
.tabitoku2307 .key-visual .date-box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.tabitoku2307 .key-visual .label {
  display: flex;
  width: 194px;
  height: 40px;
  padding: 2px 24px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 40px;
  border: 1px solid #FFF;
  background: #2A9CA9;
  font-size: 20px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 1px;
}
.tabitoku2307 .key-visual .text-date {
  display: inline-block;
  text-shadow: 2px 2px 3px #002E38;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 1px;
  position: relative;
  -webkit-text-stroke: 2px #008E9E;
  text-stroke: 2px #008E9E;
}
.tabitoku2307 .coupon-block > div {
  background: url(/stcontents/img/sub-page/lp/tabitokucoupon2307/coupon-bg.png) no-repeat center top;
  background-size: contain;
  width: 360px;
  height: 286px;
  margin-bottom: 24px;
  padding: 24px 44px;
}
.tabitoku2307 .coupon-block > div .title {
  font-weight: 900;
  font-size: 38px;
}
.tabitoku2307 .coupon-block > div .btn-relux {
  width: 100%;
  height: 48px;
}
.table-coupon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 8px;
  line-height: 1.5;
  color: #0F0A64;
}
.table-coupon dt,
.table-coupon dd {
  margin-bottom: 6px;
}
.table-coupon dt {
  width: 40%;
  background: #F3F8FD;
  padding: 0 8px;
  font-size: 12px;
}
.table-coupon dd {
  width: 60%;
  padding: 0 8px;
  text-align: left;
  font-size: 14px;
}

.tabitoku2307 .feature-list.col-2 li {
  width: calc(50% - 16px) !important;
  margin-right: 0 !important;
}
.tabitoku2307 .feature-list.col-2 li:first-child {
  margin-right: 32px !important;
}
.tabitoku2307 .feature-list.col-2 li a::before {
  content: "" !important;
  height: 100% !important;
}
.tabitoku2307 .feature-list.col-2 li a {
  height: 182px !important;
}
.tabitoku2307 .feature-list.mb-0 li {
  margin-bottom: 0 !important;
}
.tabitoku2307 .feature-list .coming a,
.tabitoku2307 .feature-list .finish a {
  pointer-events: none;
}
.tabitoku2307 .feature-list .coming a:before,
.tabitoku2307 .feature-list .finish a:before {
  background: rgba(0,0,0,0.7) !important;
}
.tabitoku2307 .feature-list li .text {
  font-weight: bold !important;
}


@media screen and (max-width: 800px){
  .tabitoku2307 .campaigns.template .wrap {
    padding: 0 16px !important;
  }
}

@media screen and (max-width: 767px){
  .tabitoku2307 .key-visual h1 img {
    max-width: 343px;
  }
  .tabitoku2307 .coupon-block > div {
    background: url(/stcontents/img/sub-page/lp/tabitokucoupon2307/coupon-bg-sp.png) no-repeat center top;
    background-size: contain;
    width: 343px;
    height: 230px;
    margin: 0 auto;
    padding: 16px 40px;
  }
  .tabitoku2307 .coupon-block > div .title {
    margin-bottom: 4px;
    font-size: 32px;
  }
  .tabitoku2307 .coupon-block > div .btn-relux {
    height: 40px;
  }
  .table-coupon {
    margin-bottom: 4px;
  }
  .table-coupon dt {
    width: 38%;
  }
  .table-coupon dd {
    width: 62%;
    padding: 0px 8px;
  }
  .tabitoku2307 section h2 {
    font-size: 24px;
  }
  .tabitoku2307 .feature-list.col-2 li {
    width: 100% !important;
    margin: 0 0 10px !important;
  }
  .tabitoku2307 .feature-list.col-2 li:first-child {
    margin-right: 0 !important;
  }
  .tabitoku2307 .feature-list li .text {
    font-size: 24px !important;
  }
  .tabitoku2307 .feature-list.text-add li p {
    font-size: 14px !important;
  }
  .tabitoku2307 .feature-list.col-3 li {
    max-width: 343px;
    width: 100% !important;
    height: 160px!important;
    margin: 0 auto 8px!important;
  }
  .tabitoku2307 .feature-list .coming .text,
  .tabitoku2307 .feature-list .finish .text {
    font-size: 20px !important;
  }
  .tabitoku2307 .btn-relux.btn-wide {
    max-width: 323px;
  }
  .tabitoku2307 .key-visual .inner {
    bottom: 50px;
  }
  .tabitoku2307 .key-visual h1 {
    line-height: 1.5;
    font-size: 40px !important;
  }
  .tabitoku2307 .key-visual .label {
    width: 108px;
    height: 28px;
    padding: 0;
    margin-right: 8px !important;
    font-size: 14px;
  }
  .tabitoku2307 .key-visual .lead {
    line-height: 2;
  }
  .tabitoku2307 .key-visual .lead,
  .tabitoku2307 .key-visual .text-date {
    font-size: 20px !important;
  }
}
@media screen and (max-width: 360px){
  .tabitoku2307 .key-visual h1 {
    font-size: 32px !important;
  }
  .tabitoku2307 .key-visual .lead,
  .tabitoku2307 .key-visual .text-date {
    font-size: 16px !important;
  }
  .tabitoku2307 .coupon-block > div {
    width: 100%;
    height: 62vw;
    margin: 0 auto;
    padding: 12px 12%;
  }
  .tabitoku2307 .coupon-block > div .title {
    font-size: 26px;
  }
  .table-coupon dt,
  .table-coupon dd {
    font-size: 10px;
  }
}

/*
  秋旅キャンペーンLP
*/
.akitabi2023 {}

.akitabi2023 .key-visual {
  background-image: url(../img/sub-page/lp/akitabi2023/bg-kv-pc.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 600px;
}

.akitabi2023 .key-visual.finish {
  background-image: url(../img/sub-page/lp/akitabi2023/bg-kv-finish.png);
  height: 100vh;
}

.akitabi2023 .key-visual.finish::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba( 0, 0, 0, .4);

}

.akitabi2023 .key-visual .inner {
}

.akitabi2023 .key-visual h1 {
  text-align: center;
}

.akitabi2023 .key-visual.finish h1 {
  font-size: 3.6rem;
  font-weight: normal;
  margin-bottom: 8px;
}

.akitabi2023 .key-visual h1 img {
  margin: auto;
}

.akitabi2023 .key-visual.finish p {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 40px;
  text-shadow: 0 0 5px #000;
}

.akitabi2023 .coupon-table {
  position: absolute;
  bottom: 48px;
  left: 50%;
  transform: translateX(-50%);
}

.akitabi2023 .coupon-table th,
.akitabi2023 .coupon-table td {
  padding: 4px 0;
  text-shadow: 1px 1px 1px #000;
  font-size: 1.6rem;
}

.akitabi2023 .coupon-table td::before {
  content: '｜';
  margin: 0 8px;
}

.akitabi2023 .coupon-block img {
  margin: 0 auto 16px;
  max-width: 100%;
}

.akitabi2023 .coupon-block-note {
  font-size: 1.2rem;
  color: #757575;
  text-align: center;
}

.akitabi2023 .border-red {
  border: 1px solid #FF503E;
  width: 40px;
  margin: 16px auto 24px;
}

.akitabi2023 .secret-bunner {
  background: linear-gradient(180deg, #1E1E1E 0%, #2B2A2A 100%);
  color: #fff;
  text-align: center;
  display: block;
  pointer-events: none;
}

.akitabi2023 .secret-bunner .bg {
  height: 300px;
  width: 100%;
  background-image: url(../img/sub-page/lp/akitabi2023/bg-plan-pc.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
}

.akitabi2023 .secret-bunner h3 {
  font-size: 2.6rem;
  margin-bottom: 16px
}

.akitabi2023 .secret-bunner .plan-period {
  display: flex;
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.akitabi2023 .secret-bunner .plan-period > p {
  margin-bottom: 0;
}

.akitabi2023 .secret-bunner .plan-period > p + p {
  margin-left: 16px;
}

.akitabi2023 .secret-bunner .plan-period span {
  font-weight: bold;
}

.akitabi2023 .secret-bunner .plan-note {
  color: #757575;
  margin-bottom: 0;
}

.akitabi2023 .secret-bunner.login {
  display: block;
  background-image: url(https://rlx.jp/img/hotelpictures/RP24701_1066.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  text-shadow: 1px 1px 1px #000;
  /* border-radius: 8px; */
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
  pointer-events: none;
  position: relative;
}

.akitabi2023 .secret-bunner.login::after {
  content: '';
  display: block;
  background-color: rgba( 0, 0, 0, .5);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.akitabi2023 .secret-bunner.login.complete {
  border-radius: 8px;
  pointer-events: auto;
}

.akitabi2023 .secret-bunner.login.complete:hover {
  opacity: .8;
}

.akitabi2023 .secret-bunner.login.complete::after {
  content: none;
}

.akitabi2023 .secret-bunner.login .bg {
  background-image: none;
}

.akitabi2023 .secret-bunner.login .text {
  background: radial-gradient( rgba( 0, 0, 0, .9), transparent 75%);
}

.akitabi2023 .secret-bunner.login.complete .plan-period {
  margin-bottom: 0;
}

.akitabi2023 .secret-bunner.login .plan-note {
  position: relative;
  z-index: 1;
  color: #fff;
}

.akitabi2023 .secret-bunner.login.complete .plan-note {
  display: none;
}

.akitabi2023 .popular-area-group {
  margin-bottom: 32px;
}

.akitabi2023 .popular-area-group > h3 {
  text-align: center;
  margin-bottom: 24px;
}

.akitabi2023 .popular-area-list {
  display: flex;
  justify-content: space-between;
}

.akitabi2023 .popular-area-list > li {
  flex: 1;
  height: 160px;
}

.akitabi2023 .popular-area-list > li + li {
  margin-left: 24px;
}

.akitabi2023 .popular-area-list .item {
  display: flex;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
  align-items: center;
  position: relative;
}

.akitabi2023 .popular-area-list .item:hover {
  opacity: .7;
}

.akitabi2023 .popular-area-list .item .bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.akitabi2023 .popular-area-list .item .name {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 2.4rem;
  font-weight: bold;
  color: #fff;
  text-shadow: 1px 1px 1px #000;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, 0) 100%);
}

.akitabi2023 .list-attention {
  font-size: 1.6rem;
  margin-bottom: 0;
}

.akitabi2023 .sp-low-contents .sp-only {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .akitabi2023 .key-visual {
    background-image: url(../img/sub-page/lp/akitabi2023/bg-kv-sp.jpg);
  }

  .akitabi2023 .key-visual .inner {
    top: auto;
    left: 3%;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    bottom: 140px;
  }

  .akitabi2023 .key-visual.complete .inner {
    left: 0;
    right: 0;
    width: auto;
  }

  .akitabi2023 .key-visual.finish .inner {
    bottom: 50%;
    transform: translateY(50%);
  }

  .akitabi2023 .key-visual.finish h1 {
    font-size: 3.2rem;
  }

  .akitabi2023 .key-visual h1 img {
    height: auto;
    max-width: 374px;
    width: 100%;
  }

  .akitabi2023 .key-visual.complete h1 img {
    max-width: 346px;
    transform: translateX(-11px);
  }

  .akitabi2023 .key-visual.finish p {
    font-size: 1.6rem;
  }

  .akitabi2023 .coupon-table {
    bottom: 40px;
  }

  .akitabi2023 .coupon-table th,
  .akitabi2023 .coupon-table td {
    font-size: 1.4rem;
    white-space: nowrap;
  }

  .akitabi2023 .coupon-table th {
    font-weight: bold;
  }

  .akitabi2023 .coupon-table td::before {
    margin: 0 4px;
  }

  .akitabi2023 .coupon-block img {
    max-width: 100%;
  }

  .akitabi2023 .coupon-block-note {
    font-size: 1rem;
    text-align: left;
  }

  .akitabi2023 .secret-bunner .bg {
    background-image: url(../img/sub-page/lp/akitabi2023/bg-plan-sp.png);
  }

  .akitabi2023 .secret-bunner h3 {
    font-size: 2.4rem;
  }

  .akitabi2023 .secret-bunner .plan-period {
    display: inline-block;
    text-align: left;
    font-size: 1.4rem;
  }

  .akitabi2023 .secret-bunner .plan-period > p + p {
    margin-left: 0;
  }

  .akitabi2023 .secret-bunner .plan-note {
    font-size: 1.2rem;
  }

  .akitabi2023 .popular-area-list {
    display: block;
  }

  .akitabi2023 .popular-area-list > li + li {
    margin-left: 0;
    margin-top: 8px;
  }

  .akitabi2023 .list-attention {
    font-size: 1.4rem;
  }

  .akitabi2023 .float-bar.default {
    padding: 8px 16px 24px;
  }
}

@media screen and (max-width: 374px) {
  .akitabi2023 .coupon-table th,
  .akitabi2023 .coupon-table td {
    font-size: 1.2rem;
  }
}

/* さきどり夏旅CP バナーを非活性に */
.campaigns.template .recommend.complete .feature-list li.bnr-inactive {
  cursor: not-allowed;
}
.campaigns.template .recommend.complete .feature-list li.bnr-inactive a {
  pointer-events: none;
}
.campaigns.template .recommend.complete .feature-list li.bnr-inactive a .text {
  color: #C6C6C6;
}
.campaigns.template .recommend.complete .feature-list li.bnr-inactive a::before {
  background-color: rgba(0,0,0,0.5);
  height: 100%;
}
.campaigns.template .recommend.complete .feature-list li.bnr-inactive p {
  color: #C6C6C6;
}

/*
  三井G CP
*/
/* --- 取得後KV クーポン部分 anchorタイプ --- */
.campaigns.template .anime-box.anime-box-kv-anchor {
  width: 668px !important;
  height: 334px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
  padding: 0;
}
.campaigns .anime-box .anime-parts-4.kv-anchor {
  margin-left: 0;
  animation: none;
}
.campaigns .anime-parts-4.kv-anchor .letter-box {
  width: 668px !important;
  height: 334px;
}
.campaigns .anime-parts-4.kv-anchor .letter-box .result-coupon {
  background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-anchor.png) no-repeat center center;
  background-size: contain;
  width: 668px !important;
  height: 334px;
  padding: 44px 30px 43px;
}
.campaigns .anime-parts-4.kv-anchor .letter-box .result-coupon .btn-relux {
  min-width: initial;
  width: 264px;
  height: 32px;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .campaigns.template .anime-box.anime-box-kv-anchor {
    max-width: initial;
    width: 375px !important;
    height: 330px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) !important;
  }
  .campaigns .anime-box .anime-parts-4.kv-anchor {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -17%) scale(1) !important;
  }
  .campaigns .anime-parts-4.kv-anchor .letter-box {
    width: 375px !important;
    height: 330px;
    margin: initial;
  }
  .campaigns .anime-parts-4.kv-anchor .letter-box .result-coupon {
    background: url(/stcontents/img/sub-page/campaigns/anime-parts-1-anchor-sp.png) no-repeat center center;
    background-size: contain;
    width: 375px !important;
    height: 330px;
    padding: 24px 15px 16px;
  }
    /* spクーポン内部 */
  .campaigns .anime-parts-4.kv-anchor .letter-box .result-coupon .btn-relux {
    min-width: 312px;
    width: 100%;
  }
}
@media screen and (max-width: 320px) {
  .campaigns.template .anime-box.anime-box-kv-anchor {
    transform: translate(-50%, -50%) scale(0.8) !important;
  }
}
/* --- おすすめ施設 --- */
.coupon-off__block {
  display: flex;
  align-items: center;
}
.coupon-off__bg {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 2px 8px;
  border-radius: 2px;
}
.coupon-off__price {
  display: flex;
  align-items: center;
}
.coupon-off__price > span {
  display: block;
  text-align: right;
}
.coupon-off__price__num {
  display: flex;
  align-items: center;
}
.campaigns.template .chain-name {
  font-size: 2rem;
  font-weight: bold;
}
.campaigns.template .au-tag-label {
  background: #FFF5EF;
  font-size: 1.2rem;
  color: #EB5505;
  padding: 7px 16px;
}
@media screen and (min-width: 768px) {
  .coupon-off__bg {
    margin-right: 8px;
  }
}
@media screen and (max-width: 767px) {
  .coupon-off__block {
    display: block;
  }
  .coupon-off__block .coupon-off__price {
    display: block;
  }
  .coupon-off__block .coupon-off__price__num {
    justify-content: flex-end;
  }
  .coupon-off__bg {
    font-size: 1.2rem;
    margin-right: 0;
  }
  .campaigns.template .chain-name {
    font-size: 1.6rem;
    line-height: 28px;
  }
  .campaigns.template .au-tag-label {
    font-size: 12px;
    padding: 4px 8px;
  }
}
/* --- クーポン対象施設 --- */
.campaigns.template .area {
  width: 100%;
  padding: 40px;
}
.campaigns .area .border-red {
  border: 1px solid #FF503E;
  width: 80px;
  margin: 16px auto 24px;
}
/* 親要素（エリア名） */
.campaigns.template .area-list {
  max-width: 1120px;
  margin: 20px auto 12px;
  border-radius: 4px;
  font-size: 1.4rem;
  cursor: pointer;
}
.campaigns.template .area-list > li {
  background: #fff;
  border-bottom: 2px solid #F5F5F5;
  border-radius: 0;
  margin-bottom: 0;
  position: relative;
}
.campaigns.template .area-list > li:first-child {
  border-top: 2px solid #F5F5F5;
}
.campaigns.template .area-list > li > span {
  display: block;
  color: #0F0A64;
  font-weight: 700;
  padding: 16px 16px 14px;
}
.campaigns.template .area-list > li > span.active {
  background: #0F0A64;
  color: #fff;
}
.campaigns.template .area-list > li > span.active:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-white.svg);
}
.campaigns.template .area-list > li > span.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  top: 30px;
}
.campaigns.template .area-list > li > span:after {
  content: url(/stcontents/img/common/icon-arrow-bottom-relux.svg);
  width: 18px;
  height: 9px;
  position: absolute;
  top: 15px;
  right: 20px;
}
/* 子要素（施設名） */
.campaigns.template .area-list ul {
  display: none;
}
.campaigns.template .area-list ul li {
  background: #F3F8FD;
  color: #333333;
}
.campaigns.template .area-list ul li:after {
  top: 50% !important;
  right: 28px !important;
  -webkit-transform: translateY(-50%) rotate(-90deg) !important;
          transform: translateY(-50%) rotate(-90deg) !important;
}
.campaigns.template .area-list ul li a {
  display: block;
  padding: 8px 28px 8px 8px;
  border-top: 1px solid #ccc;
  color: #333333;
  position: relative;
}
.campaigns.template .area-list ul li a:hover {
  background: #F5F5F5;
}
.campaigns.template .area-list:not(.no-link) ul li a::after {
  content: url(/stcontents/img/common/icon-arrow-bottom-relux.svg);
  width: 18px;
  height: 9px;
  position: absolute;
  top: 50%;
  right: 21px;
  -webkit-transform: translateY(-50%) rotate(-90deg);
  transform: translateY(-50%) rotate(-90deg);
}
.campaigns.template .area-list.no-link ul li a:hover {
  background: initial;
  cursor: auto;
}
.campaigns.template .area-list ul li a span {
  display: block;
  padding: 0;
}
.campaigns.template .area-list ul li a .tag-label {
  padding: 4px 12px;
  margin-bottom: 6px;
}
.campaigns.template .area-list ul li a .hotel-name {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}
.campaigns.template .area-list ul li a .hotel-name span {
  display: inline;
}
.campaigns.template .area-list ul li a .hotel-name .tag-hoteltype {
  padding: 4px 10px;
  margin-right: 8px;
}
@media (min-width: 768px) {
  .campaigns.template .area-list > li > span:hover {
    background-color: #554B98;
    color: #fff;
  }
  .campaigns.template .area-list > li > span.active:after,
  .campaigns.template .area-list > li > span:hover:after {
    content: url(/stcontents/img/common/icon-arrow-bottom-white.svg);
  }
}
@media screen and (max-width: 767px) {
  /* sp取得前画面で施設名タップした時に色が変わらないようにする */
  .campaigns.template .area-list.no-link ul li a {
    pointer-events: none;
  }

  .campaigns.template .area {
    padding: 40px 0;
  }
  .campaigns.template .area-list > li span {
    padding: 12px 8px 10px;
  }
  .campaigns.template .area-list > li > span:after {
    top: 12px;
    right: 12px;
  }
  .campaigns.template .area-list > li > span.active:after {
    top: 27px
  }
  .campaigns.template .area-list ul li a::after {
    right: 21px;
  }
  .campaigns.template .area-list ul li a .tag-label {
    display: inline-block;
    padding: 4px 12px;
    margin-bottom: 0;
  }
  .campaigns.template .area-list ul li a .hotel-name {
    display: block;
  }
  .campaigns.template .area-list ul li a .hotel-name span {
    display: inline;
  }
}
/* 三井G CP end */

/*
  年末年始・旅館キャンペーンLP
*/
.ryokan2310 .key-visual {
  background: url(https://rlx.jp/img/hotelpictures/RP90689_pMxHh.jpg) center center no-repeat !important;
  background-size: cover !important;
}
.ryokan2310 .anchor-link.position-measure {
  z-index: 20;
}
@media screen and (max-width: 767px){
  .ryokan2310 .float-bar.default {
    padding: 12px 16px 16px !important;
  }
  .ryokan2310 .feature-premium .plan-deal .plan-deal-card-head {
    height: 220px;
  }
}

/*
  沖縄キャンペーンLP
*/
.okinawa2310 .key-visual {
  background-image: url(../img/sub-page/lp/okinawa2310/bg-kv.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover !important;
  height: 470px;
}
.okinawa2310 .key-visual.finish {
  background-image: url(../img/sub-page/lp/okinawa2310/bg-kv.jpg);
  height: 100vh;
}
.okinawa2310 .key-visual .inner {
  bottom: 40px;
  top: inherit;
  transform: none;
}
.okinawa2310 .key-visual:after {
  background: linear-gradient(180deg, rgba(0, 20, 91, 0.60) 0%, rgba(0, 20, 91, 0.00) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.max-width100 {
  max-width: 100%;
}
.justify-center {
  justify-content: center !important;
}
.justify-between {
  justify-content: space-between !important;
}
.justify-end {
  justify-content: flex-end !important;
}
.coupon-block-new {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.coupon-block-new > div {
  background: url(/stcontents/img/sub-page/lp/okinawa2310/coupon-bg.png) no-repeat center center;
  background-size: contain;
  width: 440px;
  height: 204px;
  padding: 24px 0;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: #0F0A64;
}
.coupon-block-new > div a {
  display: block;
  padding: 20px 0;
}
.coupon-block-new .title {
    font-size: 36px;
    line-height: 1;
    margin-bottom: 0;
}
.coupon-block-new .title span {
  font-size: 48px;
}
.coupon-block-new .title.long {
  font-size: 30px;
}
.coupon-block-new .title.long span {
  font-size: 38px;
}
.coupon-block-new .btn-relux {
    width: 320px;
    height: 48px;
}
.coupon-block-new .btn-relux:hover {
  background-color: #0f0a64;
}
.okinawa2310 .key-visual.complete .inner,
.okinawa2310 .key-visual.finish .inner {
  bottom: inherit !important;
  top: 50% !important;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .springfes .key-visual h1 {
    margin-bottom: 0 !important;
  }
  .coupon-block-new .btn-wide {
    width: 348px;
  }
}
@media screen and (max-width: 1280px) {
  .coupon-block-new {
    display: block;
  }
  .coupon-block-new > div {
    margin: 0 auto 16px;
  }
}
@media screen and (max-width: 767px) {
  .okinawa2310 .key-visual h1 img {
    max-width: 100%;
    width: 293px;
  }
  .okinawa2310 .key-visual.complete h1 img {
    width: 360px;
  }
  .coupon-block-new > div {
    background: url(/stcontents/img/sub-page/lp/okinawa2310/coupon-bg-sp.png) no-repeat center center;
    background-size: contain;
    max-width: 100%;
    width: 355px;
    height: 168px;
    margin: 0 auto 6px;
    padding: 16px 0;
    font-size: 14px;
  }
  .coupon-block-new .title {
    font-size: 32px;
  }
  .coupon-block-new .title span {
    font-size: 40px;
  }
  .coupon-block-new .title.long {
    font-size: 24px;
  }
  .coupon-block-new .title.long span {
    font-size: 32px;
  }
  .coupon-block-new .font-xxxx-large {
    font-size: 2.4rem
  }
  .coupon-block-new .btn-relux {
    width: 250px;
    height: 40px;
    font-size: 1.4rem;
  }
  .okinawa2310 .float-bar .btn-wide {
    max-width: none;
    width: 100%;
    margin: 0 !important;
  }
  .sp-list-off {
    display: block !important;
    margin: 0 auto !important;
    overflow: visible !important;
  }
  .sp-list-off > li {
    margin: 0 0 12px !important;
  }
  .sp-list-off .plan-deal-card {
    width: 100% !important;
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.10) !important;
    border-radius: 8px !important;
    border: 1px solid #F5F5F5 !important;
  }
}
@media screen and (max-width: 320px){
  .coupon-block-new .btn-relux {
    width: 210px;
    height: 32px;
  }
  .coupon-block-new .font-xxxx-large {
      font-size: 2rem;
      margin: -2px 0 4px;
  }
}
/*
  北海道キャンペーンLP
*/
.hokkaido2311 .key-visual {
  background-image: url(../img/sub-page/lp/hokkaido2311/bg-kv.jpg) !important;
  background-repeat: no-repeat;
  background-position: center bottom !important;
  background-size: cover !important;
  height: 470px;
}
.hokkaido2311 .key-visual.finish {
  background-image: url(../img/sub-page/lp/hokkaido2311/bg-kv.jpg) !important;
  height: 100vh;
}
.hokkaido2311 .key-visual .inner {
  bottom: 40px;
  top: inherit;
  transform: none;
}
.hokkaido2311 .key-visual:after {
  background: linear-gradient(180deg, rgba(0, 20, 91, 0.60) 0%, rgba(0, 20, 91, 0.00) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px){
  .hokkaido2311 .key-visual {
    background-image: url(../img/sub-page/lp/hokkaido2311/bg-kv-sp.jpg) !important;
  }
  .hokkaido2311 .key-visual.finish {
    background-image: url(../img/sub-page/lp/hokkaido2311/bg-kv-sp.jpg) !important;
  }
  .feature-premium .sp-one .plan-list {
    display: block;
    margin: 0 auto;
  }
  .feature-premium .sp-one .plan-list > li {
    padding: 0 !important;
    margin: 0 4px 16px !important;
  }
  .feature-premium .plan-deal.sp-one .plan-deal-card {
    width: auto;
  }
}

/*
  スキーキャンペーンLP
*/
.ski2311 .key-visual {
  background-image: url(../img/sub-page/lp/ski2311/bg-kv.jpg) !important;
  background-repeat: no-repeat;
  background-position: center bottom !important;
  background-size: cover !important;
  height: 470px;
}
.ski2311 .key-visual.finish {
  background-image: url(../img/sub-page/lp/ski2311/bg-kv-sp.jpg) !important;
  height: 100vh;
}
.ski2311 .key-visual .inner {
  bottom: 40px;
  top: inherit;
  transform: none;
}
.ski2311 .key-visual:after {
  background: linear-gradient(180deg, rgba(0, 20, 91, 0.60) 0%, rgba(0, 20, 91, 0.00) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px){
  .ski2311 .key-visual {
    background-image: url(../img/sub-page/lp/ski2311/bg-kv-sp.jpg) !important;
  }
  .ski2311 .key-visual.finish {
    background-image: url(../img/sub-page/lp/ski2311/bg-kv-sp.jpg) !important;
  }
  .anchor-link.position-measure.center-position ul {
    justify-content: center;
    min-width: 0;
  }
}

/* 映像でさがす旅LP */
.lp-visual-inspirations {
  /* font-family: YuMincho, 'Yu Mincho', serif;
  line-height: 1.2; */
  overscroll-behavior: none;
}

.lp-visual-inspirations .text-mincho {
  font-family: YuMincho, 'Yu Mincho', serif;
  line-height: 1.2;
}

.fullPageScroll {
  width: 100%;
  height: 100vh;
  height: 100svh;
  position: relative;
  scroll-snap-type: y mandatory;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
  -ms-overflow-style: none;
  /*Firefoxへの対応*/
  scrollbar-width: none;
}

 /*Google Chrome、Safariへの対応*/
.fullPageScroll::-webkit-scrollbar{
  /* display: none; */
}

.fullPageScroll.scrolling {
  scroll-snap-type: none;
}

.fullPageScroll.snap-off {
  scroll-snap-type: none;
}

.fullPageScroll .global-footer {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.fullPageScroll .slick-next {
  left: 0;
  right: 0;
  bottom: 16px;
  margin: auto;
}

.fullPageScroll-sec {
  width: 100%;
  height: 100vh;
  height: 100svh;
  position: relative;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.fullPageScroll-sec::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0, .2);
  pointer-events: none;
}

.fullPageScroll-sec-last {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.fullPageScroll-sec .video {
  width: 100%;
  height: 100%;
}

.fullPageScroll-sec .video::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.fullPageScroll-sec .video video {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.lp-visual-inspirations .prefecture-nav {
  display: none;
  position: fixed;
  top: 60px;
  left: 0;
  right: 0;
  z-index: 1;
  justify-content: center;
}

.lp-visual-inspirations .prefecture-nav.is-show {
  display: flex;
}

.lp-visual-inspirations .prefecture-nav > li {
  position: relative;
  display: flex;
  justify-content: center;
  margin-right: 16px;
  line-height: 1.6;
}

.lp-visual-inspirations .prefecture-nav > li:last-child {
  margin-right: 0;
}

.lp-visual-inspirations .prefecture-nav > li a {
  color: #fff;
  display: block;
  text-align: center;
  padding: 8px 24px;
  border-radius: 100px;
  width: 100%;
  font-weight: bold;
  background-color: rgba( 0, 0, 0, .4);
  border: 1px solid transparent;
  font-size: 1.6rem;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.15);
}

.lp-visual-inspirations .prefecture-nav > li a.current {
  background-color: #FFFFFF;
  color: #333333;
}

.lp-visual-inspirations .prefecture-nav > li a:not(.current):hover {
  opacity: .7;
}

.facility-nav {
  position: fixed;
  right: 80px;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  text-shadow: 1px 1px 1px #000;
  font-size: 1.2rem;
}

.facility-nav.show-shizuoka > li:not(.shizuoka):not(.arrow),
.facility-nav.show-okinawa > li:not(.okinawa):not(.arrow) {
  display: none;
}

.facility-nav.hide {
  display: none;
}

.facility-nav > li {
  margin-bottom: 16px;
}

.facility-nav > li:last-child {
  margin-bottom: 0;
}

.facility-nav > li a {
  color: #fff;
  padding-right: 28px;
  position: relative;
}

.facility-nav > li a::after {
  content: '';
  display: block;
  background-color: #fff;
  width: 3px;
  height: 3px;
  border-radius: 100%;
  box-shadow: 1px 1px 1px #000;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 9px;
  margin: auto;
}

.facility-nav > li.current a {
  color: #D9B255;
  font-weight: bold;
}

.facility-nav > li.current a::after {
  width: 6px;
  height: 6px;
  background-color: #D9B255;
  right: 8px;
}

.facility-nav .arrow button {
  text-indent: -9999px;
  color: transparent;
  background-color: transparent;
  width: 24px;
  height: 24px;
  padding: 0;
  background-image: url(../img/sub-page/lp/visual_inspirations/icon-nav-arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
}

.facility-nav .arrow.prev button {
  transform: rotate(180deg);
}

.lp-visual-inspirations .scroll-txt {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 80px;
  z-index: 1;
  margin: auto;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  text-shadow: 1px 1px 1px #000;
}

.lp-visual-inspirations .scroll-next-arrow {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 8px;
  margin: auto;
  z-index: 1;
  width: 65px;
  height: 65px;
  background-image: url(../img/sub-page/lp/visual_inspirations/icon-arrow-next-pc.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.lp-visual-inspirations .scroll-next-arrow:hover {
  opacity: .7;
}

.normalScroll-content {
  padding: 80px 0 160px;
}

.lp-visual-inspirations .kv-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-visual-inspirations .kv-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.lp-visual-inspirations .kv-text {
  color: #fff;
  text-shadow: 1px 1px 1px #000;
  text-align: center;
  margin-bottom: 72px;
}

.lp-visual-inspirations .kv-ttl {
  font-size: 5.4rem;
  font-weight: 600;
  margin-bottom: 23px;
}

.lp-visual-inspirations .kv-ttl span {
  font-size: 4.2rem;
}

.lp-visual-inspirations .kv-caption {
  font-size: 2rem;
  margin-bottom: 0;
}

.lp-visual-inspirations .kv-btns {
  display: flex;
  justify-content: center;
}

.lp-visual-inspirations .kv-btn {
  display: flex;
  padding: 14px 22px;
  border: 2px solid #fff;
  border-radius: 48px;
  font-size: 2rem;
  color: #fff;
  background-color: rgba( 0, 0, 0, .2);
}

.lp-visual-inspirations .kv-btn:hover {
  opacity: .7;
}

.lp-visual-inspirations .kv-btn + .kv-btn {
  margin-left: 16px;
}

.lp-visual-inspirations .sp-contents {
  display: none;
}

.lp-visual-inspirations .facility-detail {
  position: absolute;
  right: 80px;
  bottom: 45px;
  background-color: rgba( 0, 0, 0, .8);
  padding: 24px;
  color: #fff;
  width: 430px;
}

.lp-visual-inspirations .facility-detail .info {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}

.lp-visual-inspirations .facility-detail .grade {
  margin-bottom: 0;
  margin-right: 8px;
  display: flex;
}

.lp-visual-inspirations .facility-detail .grade .icon-grade {
  vertical-align: bottom;
  width: 24px;
  height: 24px;
}

.lp-visual-inspirations .facility-detail .label {
  font-size: 1.2rem;
  padding: 4px 10px;
  border: 1px solid #fff;
  border-radius: 2px;
  line-height: 1.2;
  background-color: rgba( 0, 0, 0, .1);
}

.lp-visual-inspirations .facility-detail .name {
  font-size: 2.4rem;
  line-height: 1.6;
  /* margin-bottom: 8px; */
}

.lp-visual-inspirations .facility-detail .address {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.lp-visual-inspirations .facility-detail .address::before {
  content: '';
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 4px;
  background-image: url(../img/sub-page/lp/visual_inspirations/icon-address.svg);
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: center;
}

.lp-visual-inspirations .facility-detail .price {
  line-height: 24px;
}

.lp-visual-inspirations .facility-detail .price span {
  font-size: 1rem;
  margin-left: 8px;
}

.lp-visual-inspirations .facility-detail .btn-group {
  /* margin-top: 16px; */
  display: flex;
}

.lp-visual-inspirations .facility-detail .btn {
  background-color: rgba( 255, 255, 255, .1);
  color: #fff;
  border: 1px solid rgba( 255, 255, 255, .8);
  border-radius: 4px;
  display: flex;
  height: 48px;
  padding: 0 16px;
  width: 100%;
  min-width: 300px;
  align-items: center;
  justify-content: center;
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
}

.lp-visual-inspirations .facility-detail .btn:hover {
  opacity: .7;
}

.lp-visual-inspirations .facility-detail .btn.btn-photo-modal {
  display: flex;
  flex-flow: column;
  width: auto;
  min-width: auto;
  font-size: 1.2rem;

  margin-right: 8px;
}

.lp-visual-inspirations .head {
  text-align: center;
  margin-bottom: 40px;
}

.lp-visual-inspirations .h2 {
  font-size: 2.4rem;
  font-weight: normal;
  padding-bottom: 8px;
  position: relative;
  margin-bottom: 16px;
}

.lp-visual-inspirations .h2 span {
  font-size: 3.2rem;
}

.lp-visual-inspirations .h2::after {
  content: '';
  width: 56px;
  height: 2px;
  background-color: #D9B255;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.lp-visual-inspirations .lead {
  font-size: 1.6rem;
  margin-bottom: 0;
}

.lp-visual-inspirations .gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
}

.lp-visual-inspirations .gallery-item {
  height: 0;
  position: relative;
  padding-top: 100%;
}

.lp-visual-inspirations .gallery-item.large-item1 {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 3;
}
.lp-visual-inspirations .gallery-item.large-item2 {
  grid-column-start: 3;
  grid-column-end: 5;
  grid-row-start: 4;
  grid-row-end: 6;
}
.lp-visual-inspirations .gallery-item.large-item3 {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 6;
  grid-row-end: 8;
}
.lp-visual-inspirations .gallery-item.large-item4 {
  grid-column-start: 3;
  grid-column-end: 5;
  grid-row-start: 9;
  grid-row-end: 11;
}

.lp-visual-inspirations .modal-btn {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  appearance: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.lp-visual-inspirations .modal-btn img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.lp-visual-inspirations .tags {
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  bottom: 16px;
  left: 16px;
  margin-bottom: 0;
}

.lp-visual-inspirations .tags > li {
  color: #0f0a64;
  font-size: 1.4rem;
  padding: 2px 12px;
  background-color: rgba( 255, 255, 255, .9);
  border-radius: 2px;
  margin-top: 8px;
  margin-right: 8px;
}

.lp-visual-inspirations .tags > li:last-child {
  margin-right: 0;
}

.lp-visual-inspirations .common-modal {
  display: none;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
}

.lp-visual-inspirations .common-modal .js-modal-close {
  position: absolute;
  z-index: 1;
  background: url(/stcontents/img/common/icon-close-white.svg) no-repeat 0 0;
  background-size: contain;
}

.lp-visual-inspirations .common-modal .content {
  background-color: #fff;
  width: 100%;
  height: 100%;
  /* padding: 40px 120px; */
}

.lp-visual-inspirations .common-modal .modal-inner {
  display: flex;
  flex-flow: column;
  height: 100%;
  justify-content: space-between;
}

.lp-visual-inspirations .common-modal .modal-main {
  width: 100%;
  /* height: calc( 100% - 172px ); */
  overflow: hidden;
  position: relative;
  flex: 1;
}

.lp-visual-inspirations .common-modal .modal-sub {
  /* height: 148px; */
  padding: 24px 40px;
  background-color: #1C1C1E;
  overflow-x: auto;
}

.lp-visual-inspirations .common-modal .modal-sub-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: fit-content;
  margin: auto;
}

.lp-visual-inspirations .common-modal .facility-detail {
  display: flex;
  background-color: transparent;
  padding: 0;
  justify-content: flex-end;
  position: static;
  width: 300px;
  margin-left: 80px;
}

.lp-visual-inspirations .common-modal .facility-detail .facility-detail-col {
  overflow: hidden;
}

.lp-visual-inspirations .common-modal .facility-detail .facility-detail-col + .facility-detail-col {
  margin-left: 40px;
}

.lp-visual-inspirations .common-modal .facility-detail .grade .icon-grade {
  width: 20px;
  height: 20px;
}

.lp-visual-inspirations .common-modal .facility-detail .name {
  font-size: 2rem;
  margin-bottom: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lp-visual-inspirations .common-modal .facility-detail .price {
  display: none;
}

.lp-visual-inspirations .common-modal .facility-detail .address::before {
  width: 16px;
  height: 16px;
  background-size: 16px;
}

.lp-visual-inspirations .common-modal .facility-detail .address {
  font-size: 1.2rem;
  line-height: 1.6;
}

.lp-visual-inspirations .common-modal .facility-detail .btn {
  height: 40px;
  margin-top: 8px;
}

.lp-visual-inspirations .common-modal .facility-features {
  display: flex;
  align-items: center;
}

.lp-visual-inspirations .common-modal .facility-feature + .facility-feature {
  padding-left: 20px;
}

.lp-visual-inspirations .common-modal .facility-feature > li {
   margin: 8px 0;
}

.lp-visual-inspirations .common-modal .modal-slider {
  width: 100%;
  height: 100%;
}

.lp-visual-inspirations .common-modal .modal-slider li {
  height: 100%;
}

.lp-visual-inspirations .common-modal .modal-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-visual-inspirations .common-modal .modal-slider .slick-list {
  height: 100%;
}

.lp-visual-inspirations .common-modal .modal-slider .slick-track {
  height: 100%;
}

.lp-visual-inspirations .common-modal .modal-slider .slick-arrow {
  cursor: pointer;
}

.lp-visual-inspirations .common-modal .modal-slider .slick-arrow:hover {
  opacity: .7;
}

.lp-visual-inspirations .common-modal .modal-slider .slick-arrow {
  width: 65px;
  height: 65px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
  background-image: url(../img/sub-page/lp/visual_inspirations/icon-arrow-next-pc.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.lp-visual-inspirations .common-modal .modal-slider .arrow-left {
  transform: rotate(90deg);
  left: 46px;
}

.lp-visual-inspirations .common-modal .modal-slider .arrow-right {
  transform: rotate(-90deg);
  right: 46px;
}

.lp-visual-inspirations .common-modal .modal-thumbs {
  /* width: 100%;
  height: 100%; */
  display: flex;
  justify-content: flex-start;
}

.lp-visual-inspirations .common-modal .modal-thumbs li {
  height: 116px;
  width: 116px !important;
  margin: 0 8px;
}

.lp-visual-inspirations .common-modal .modal-thumbs li:first-child {
  margin-left: 0;
}

.lp-visual-inspirations .common-modal .modal-thumbs li:last-child {
  margin-right: 0;
}

.lp-visual-inspirations .common-modal .modal-thumbs li.slick-current {
  border: 2px solid #D9B255;
}

.lp-visual-inspirations .common-modal .modal-thumbs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-visual-inspirations .common-modal .modal-thumbs li.slick-current img {
  opacity: .7;
}

.lp-visual-inspirations .common-modal .modal-thumbs .slick-list {
  height: 100%;
}

.lp-visual-inspirations .common-modal .modal-thumbs .slick-track {
  transform:unset !important;
  height: 100%;
  width: auto !important;
  display: flex;
  margin: 0;
}

@media (max-width: 767px) {

  .facility-nav {
    display: none;
  }

  .lp-visual-inspirations .scroll-txt {
    font-size: 1.6rem;
    bottom: 40px;
  }

  .lp-visual-inspirations .scroll-next-arrow {
    background-image: url(../img/sub-page/lp/visual_inspirations/icon-arrow-next-sp.svg);
    width: 24px;
    height: 24px;
  }

  .pagination {
    display: none;
  }

  .fullPageScroll-sec {
    /* display: none; */
  }

  .fullPageScroll-sec.kv {
    display: block;
    height: 100vh;
    height: 100svh;
  }

  .normalScroll-content {
    padding-left: 16px;
    padding-right: 16px;
  }

  .lp-visual-inspirations .kv-inner {
    left: 0;
    right: 0;
    transform: translate(0, -50%)
  }

  .lp-visual-inspirations .kv-text {
    margin-bottom: 0;
  }

  .lp-visual-inspirations .kv-ttl {
    font-size: 3.4rem;
    margin-bottom: 1.6rem;
  }

  .lp-visual-inspirations .kv-ttl span {
    font-size: 2.4rem;
  }

  .lp-visual-inspirations .kv-caption {
    font-size: 1.6rem;
  }

  .lp-visual-inspirations .kv-btns {
    display: none;
  }

  .lp-visual-inspirations .sp-contents {
    display: block;
    padding-top: 80px;
  }

  .lp-visual-inspirations .prefecture-nav > li {
    margin-right: 8px;
  }

  .lp-visual-inspirations .prefecture-nav > li a {
    font-size: 1.2rem;
    padding: 7px 16px;
  }

  .lp-visual-inspirations .carousel .video {
    margin-top: 16px;
  }

  .lp-visual-inspirations .carousel .video video {
    height: auto;
    width: 100%
  }

  .lp-visual-inspirations .carousel .slick-track {
    display: flex;
  }

  .lp-visual-inspirations .facility-detail {
    /* text-align: center; */
    padding: 24px 16px 40px;
    height: auto;
    width: auto;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .7));
  }

  .lp-visual-inspirations .facility-detail .info {
    /* justify-content: center; */
  }

  .lp-visual-inspirations .facility-detail .label {
    font-size: 1rem;
    padding: 0 4px;
    line-height: 1.4;
  }

  .lp-visual-inspirations .facility-detail .name {
    font-size: 2rem;
    margin-bottom: 0;
    text-shadow: 1px 1px 1px #000;
  }

  .lp-visual-inspirations .facility-detail .address {
    /* justify-content: center; */
    font-size: 1rem;
    /* margin-bottom: 20px; */
    text-shadow: 1px 1px 1px #000;
  }

  .lp-visual-inspirations .facility-detail .address::before {
    width: 16px;
    height: 16px;
  }

  .lp-visual-inspirations .facility-detail .price {
    text-shadow: 1px 1px 1px #000;
  }

  .lp-visual-inspirations .facility-detail .grade .icon-grade {
    width: 16px;
    height: 16px;
  }

  .lp-visual-inspirations .facility-detail .btn {
    font-weight: bold;
    width:100%;
    min-width: auto;
  }

  .lp-visual-inspirations .facility-detail .btn:focus {
    outline: none;
  }

  .lp-visual-inspirations .h2 {
    font-size: 2.3rem;
    font-weight: normal;
    padding-bottom: 8px;
    position: relative;
    margin-bottom: 16px;
  }

  .lp-visual-inspirations .h2 span {
    font-size: 2.6rem;
  }

  .lp-visual-inspirations .lead {
    font-size: 1.4rem;
  }

  .lp-visual-inspirations .tags {
    left: 8px;
    bottom: 8px;
  }

  .lp-visual-inspirations .tags > li {
    font-size: 1rem;
  }

  .lp-visual-inspirations .gallery {
    grid-template-columns: repeat(3, 1fr);
  }

  .lp-visual-inspirations .carousel {
    overflow: hidden;
  }

  .lp-visual-inspirations .carousel .arrow-left {
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    top: 244px;
    left: 26px;
    z-index: 1;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
  }

  .lp-visual-inspirations .carousel .arrow-right {
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    top: 244px;
    right: 26px;
    z-index: 1;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
  }

  .lp-visual-inspirations .carousel .slick-dots {
    bottom: 24px;
  }

  .slick-dots li {
    width: 4px;
    height: 4px;
  }

  .slick-dots li button {
    padding: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 2px;
  }

  .slick-dots li.slick-active button {
    background-color: #D9B255;
  }

  .slick-dots li button::before {
    display: none;
  }

  .lp-visual-inspirations .gallery-item.large-item1 {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 3;
  }
  .lp-visual-inspirations .gallery-item.large-item2 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 5;
    grid-row-end: 7;
  }
  .lp-visual-inspirations .gallery-item.large-item3 {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 8;
    grid-row-end: 10;
  }
  .lp-visual-inspirations .gallery-item.large-item4 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 12;
    grid-row-end: 14;
  }

  .lp-visual-inspirations .common-modal .content {
    padding: 0;
  }

  .lp-visual-inspirations .common-modal .js-modal-close {
    background-color: rgba( 255, 255, 255, .7);
    border-radius: 15px;
    background: url(/stcontents/img/common/icon-close-4.svg) no-repeat 0 0, rgba( 255, 255, 255, .8);
    background-size: contain;
  }

  .lp-visual-inspirations .common-modal .modal-inner {
    display: block;
    overflow: auto;
  }

  .lp-visual-inspirations .common-modal .modal-main {
    overflow: visible;
    height: auto;
  }

  .lp-visual-inspirations .common-modal .modal-sub {
    display: block;
    padding: 0;
    background-color: transparent;
    position: sticky;
    bottom: 0;
    left: 0;
    right: 0;
  }

  .lp-visual-inspirations .common-modal .modal-sub-inner {
    display: block;
    width: auto;
  }

  .lp-visual-inspirations .common-modal .modal-thumbs {
    display: none;
  }

  .lp-visual-inspirations .common-modal .facility-detail {
    position: sticky;
    right: 0;
    text-align: left;
    width: 100%;
    display: block;
    padding: 24px;
    background-color: rgba( 0, 0, 0, .8);
    margin: 0;
  }

  .lp-visual-inspirations .common-modal .facility-detail .facility-detail-col {
    width: 100%;
  }

  .lp-visual-inspirations .common-modal .facility-detail .facility-detail-col + .facility-detail-col {
    margin-left: 0;
  }

  .lp-visual-inspirations .common-modal .facility-detail .info {
    justify-content: flex-start;
  }

  .lp-visual-inspirations .common-modal .facility-detail .grade .icon-grade {
    height: 16px;
    width: 16px;
  }

  .lp-visual-inspirations .common-modal .facility-detail .address {
    justify-content: flex-start;
    margin-bottom: 8px;
  }

  .lp-visual-inspirations .common-modal .facility-features {
    display: none;
  }
}
/* 映像でさがす旅LP end */

/* auPAYゴールドカードLP */
.lp-aupay-goldcard .kv {
  height: 520px;
  background: url(../img/sub-page/lp/aupay-goldcard/bg-kv-wave-pc.svg) no-repeat bottom center/100%, linear-gradient(97deg, #333 0%, #1C1C1E 32.06%);
  display: flex;
  justify-content: center;
}

.lp-aupay-goldcard .kv .inner {
  display: flex;
  align-items: flex-start;
  margin-top: 150px;
}

.lp-aupay-goldcard .kv-img {
  margin-right: 56px;
}

.lp-aupay-goldcard .kv-img p {
  font-size: 1.2rem;
  text-align: center;
  color: #fff;
  opacity: .8;
}

.lp-aupay-goldcard .kv-img p span {
  font-weight: bold;
}

.lp-aupay-goldcard .kv-img2 {
  display: flex;
  flex-flow: column;
  align-items: center;
}

.lp-aupay-goldcard .kv-ttl {
  margin-bottom: 40px;
}

.lp-aupay-goldcard .kv-ttl img {
  display: block;
}

.lp-aupay-goldcard section {
  margin-top: 80px;
}

.lp-aupay-goldcard .overview {
  border-collapse: collapse;
  border-top: 1px solid #c6c6c6;
  width: 100%;
}

.lp-aupay-goldcard .overview th,
.lp-aupay-goldcard .overview td {
  border-bottom: 1px solid #c6c6c6;
  font-size: 1.6rem;
  padding: 10px 16px;
}

.lp-aupay-goldcard .overview th {
  width: 293px;
  background-color: #f5f5f5;
  font-weight: bold;
  vertical-align: top;
}

/* overview-secondary(table type2) */
.lp-aupay-goldcard .overview-secondary {
  border-collapse: collapse;
  border-top: 1px solid #c6c6c6;
  width: 100%;
}

.lp-aupay-goldcard .overview-secondary th,
.lp-aupay-goldcard .overview td {
  border: 1px solid #c6c6c6;
  font-size: 1.6rem;
  padding: 10px 16px;
}

.lp-aupay-goldcard .overview-secondary th:nth-child(2) {
  border-left: none;
}

.lp-aupay-goldcard .overview-secondary th {
  width: 293px;
  background-color: #f5f5f5;
  font-weight: bold;
  vertical-align: top;
  text-align: center;
}

.lp-aupay-goldcard .overview-secondary-inner td {
  border: 1px solid #c6c6c6;
  padding: 16px;
  vertical-align: top;
}

.lp-aupay-goldcard .overview-secondary-inner td:nth-child(2) {
  border-left: none;
}

.lp-aupay-goldcard .overview-secondary-inner-sp,
.lp-aupay-goldcard .overview-secondary-sp-item1,
.lp-aupay-goldcard .overview-secondary-sp-item2
 {
  display: none;
}

/* /overview-secondary(table type2) */

/* overview-tertiary(table type3) */
.lp-aupay-goldcard .overview-tertiary {
  border-collapse: collapse;
  width: 100%;
}

.lp-aupay-goldcard .overview-tertiary th,
.lp-aupay-goldcard .overview td {
  border: 1px solid #c6c6c6;
  font-size: 1.6rem;
  padding: 10px 16px;
}

.lp-aupay-goldcard .overview td {
  border-right: none;
}

.lp-aupay-goldcard .overview-tertiary th {
  /* width: 293px; */
  width: 369px;
  background-color: #fff;
  font-weight: bold;
  vertical-align: top;
  text-align: center;
}

.lp-aupay-goldcard .overview-tertiary-inner th
 {
  border: 1px solid #c6c6c6;
  padding: 16px;
  vertical-align: top;
}

.lp-aupay-goldcard .overview-tertiary-inner th div > img
 {
  margin: auto;
}

.lp-aupay-goldcard .overview-tertiary-inner2 td,
.lp-aupay-goldcard .overview-tertiary-inner3 td,
.lp-aupay-goldcard .overview-tertiary-inner4 td
 {
  background-color: #f5f5f5;
  border: 1px solid #c6c6c6;
  padding: 8px;
  vertical-align: middle;
  text-align: center;
  font-weight: 700;
  height: 93px;
}

.lp-aupay-goldcard .overview-tertiary-inner2 td span,
.lp-aupay-goldcard .overview-tertiary-inner3 td span,
.lp-aupay-goldcard .overview-tertiary-inner4 td span
 {
  color: #FF503E;
 }

.lp-aupay-goldcard .overview-tertiary-inner2 > .align-top,
.lp-aupay-goldcard .overview-tertiary-inner3 > .align-top
 {
  vertical-align: top;
 }

.lp-aupay-goldcard .overview-tertiary-inner th:first-child {
  background-color: #fff;
  border: none;
}

.lp-aupay-goldcard .overview-tertiary-inner2 td:nth-child(n+2),
.lp-aupay-goldcard .overview-tertiary-inner3 td:nth-child(n+3),
.lp-aupay-goldcard .overview-tertiary-inner4 td:nth-child(n+4)
 {
  background-color: #fff;
  font-weight: 400;
  padding: 16px;
  text-align: justify;
  word-break: break-all;
  white-space: wrap;
}

.lp-aupay-goldcard .overview-tertiary-sp-only {
  display: none;
}

.lp-aupay-goldcard .table-notes-sp-only {
  display: none;
}

/* /overview-tertiary(table type3) */

.lp-aupay-goldcard .notes {
  color: #757575;
  font-size: 1.2rem !important;
}

.lp-aupay-goldcard .notes a {
  color: inherit;
  text-decoration: underline;
}

.lp-aupay-goldcard .notes a:hover {
  text-decoration: none;
}

.lp-aupay-goldcard p.notes {
  padding-left: 1em;
  margin-bottom: 0;
}

.lp-aupay-goldcard p.notes::before {
  content: '※';
  margin-left: -1em;
}

/* notes-secondary (*無し) */
.lp-aupay-goldcard .notes-secondary {
  color: #757575;
  font-size: 1.2rem;
}

.lp-aupay-goldcard .notes-secondary a {
  color: inherit;
  text-decoration: underline;
}

.lp-aupay-goldcard .notes-secondary a:hover {
  text-decoration: none;
}

.lp-aupay-goldcard p.notes-secondary,
.lp-aupay-goldcard .notes-secondary li {
  padding-left: 2em;
  text-indent:-2em;
  margin-bottom: 0;
}

.lp-aupay-goldcard p.notes-secondary > span,
.lp-aupay-goldcard .notes-secondary li > span
 {
  color: #FF503E;
}

/* /notes-secondary (*無し) */

.lp-aupay-goldcard ul.notes {
  padding-left: 1em;
}

.lp-aupay-goldcard ul.notes > li::before {
  content: '※';
  margin-left: -1em;
}

.lp-aupay-goldcard ol.notes {
  counter-reset: li;
}

.lp-aupay-goldcard ol.notes > li {
  list-style: none;
  padding-left: 3em;
}

.lp-aupay-goldcard ol.notes > li::before {
  counter-increment: li;
  content: '※'counter(li)'：';
  margin-left: -3em;
}

.lp-aupay-goldcard .square-list > li {
  padding-left: 1em;
}

.lp-aupay-goldcard .square-list > li::before {
  content: '■';
  margin-left: -1em;
}

.lp-aupay-goldcard .dot-list > li {
  padding-left: 1em;
}

.lp-aupay-goldcard .dot-list > li::before {
  content: '・';
  margin-left: -1em;
}

.lp-aupay-goldcard ul.asterisk-list > li {
  padding-left: 1em;
}

.lp-aupay-goldcard ul.asterisk-list > li::before {
  content: '*';
  margin-left: -1em;
}

.lp-aupay-goldcard ol.asterisk-list {
  counter-reset: li;
}

.lp-aupay-goldcard ol.asterisk-list > li {
  list-style: none;
  padding-left: 2em;
}

.lp-aupay-goldcard ol.asterisk-list > li::before {
  counter-increment: li;
  content: '*'counter(li);
  margin-left: -2em;
}

.lp-aupay-goldcard .overview-carousel-head {
  font-size: 1.6rem;
  margin: 16px 0;
  font-weight: bold;
  text-align: center;
}

.lp-aupay-goldcard .overview-carousel {
  display: flex;
}

.lp-aupay-goldcard .overview-carousel-item {
  width: calc( 100% / 3 );
}

.lp-aupay-goldcard .overview-carousel-item + .overview-carousel-item {
  margin-left: 8px;
}

.lp-aupay-goldcard .overview-carousel-item img {
  width: 100%;
}

.lp-aupay-goldcard .benefit1 {
  border: 1px solid #c6c6c6;
  overflow: hidden;
}

.lp-aupay-goldcard .benefit1-img {
  display: block;
  /* margin-left: -1px; */
  margin-left: -4px;
  /* width: calc( 100% + 2px ); */
  width: calc( 100% + 4px );
}

.lp-aupay-goldcard h2 {
  font-size: 2.4rem;
  padding-bottom: 8px;
  position: relative;
  text-align: center;
  margin-bottom: 24px;
}

.lp-aupay-goldcard h2::before {
  content: '';
  display: block;
  height: 1px;
  width: 40px;
  background-color: #FF503E;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.lp-aupay-goldcard h2 span {
  display: block;
  font-size: 1.6rem;
  line-height: 1.4;
}

.lp-aupay-goldcard .accordion {
  margin-top: 16px;
}

.lp-aupay-goldcard .accordion.borderd {
  border: 1px solid #c6c6c6;
  overflow: hidden;
}

.lp-aupay-goldcard .accordion > dt {
  cursor: pointer;
  background-color: #f5f5f5;
  padding: 16px;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
}

.lp-aupay-goldcard .accordion > dt::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(../img/sub-page/lp/aupay-goldcard/ic-accordion-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  margin: auto;
}

.lp-aupay-goldcard .accordion.show > dt::before {
  transform: rotate(180deg);
}

.lp-aupay-goldcard .accordion > dd {
  overflow: hidden;
  background-color: #fff;
  padding: 16px;
}

.lp-aupay-goldcard .accordion.scroll > dd {
  overflow: auto;
}

.lp-aupay-goldcard .accordion:not(.show) > dd {
  display: none;
}

.lp-aupay-goldcard .accordion-caption > span {
  color: #A58D2D;
  font-size: 16px;
  font-weight: bold;
}

/* 角丸見出し、コンテンツ内見出しの色変更 */
.lp-aupay-goldcard .accordion-caption-secondary > span {
  color: #fff;
  font-size: 16px;
  padding: 2px 10px;
  border-radius: 40px;
  background-color: #B5A245;
}

.lp-aupay-goldcard .accordion-caption-secondary > p
 {
  font-size: 1.4rem;
}

.lp-aupay-goldcard .accordion-content-title {
  color: #B5A245;
  font-weight: bold;
  font-size: 1.4rem;
}
/* /角丸見出し、コンテンツ内見出しの色変更 */

.lp-aupay-goldcard .apply {
  background-color: #FFFDDF;
  padding: 40px 0;
}

.lp-aupay-goldcard .benefit2-steps {
  display: flex;
  justify-content: space-between;
}

.lp-aupay-goldcard .benefit2-steps-item {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.lp-aupay-goldcard .benefit2-steps-item p {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 8px;
  position: relative;
}

.lp-aupay-goldcard .benefit2-steps .benefit2-steps-item:not(:last-child) p::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-left: 8px solid #0F0A64;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -24px;
  margin: auto;
}

/* apply-steps(クーポン適用手順) PC*/
.lp-aupay-goldcard .apply-steps {
  display: flex;
  justify-content: space-between;
  padding: 24px;
  background-color: #FFFDDF;
  max-width: 1080px;
}

.lp-aupay-goldcard .apply-steps-sm {
  display: flex;
  justify-content: space-between;
  padding: 24px;
  background-color: #FFFDDF;
  max-width: 774px;
}

.lp-aupay-goldcard .apply-steps-item,
.lp-aupay-goldcard .apply-steps-item2
 {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.lp-aupay-goldcard .apply-steps-item img,
.lp-aupay-goldcard .apply-steps-item2 img
 {
  max-width: 100%;
}

.lp-aupay-goldcard .apply-steps-item img
 {
  margin-left: 0;
}

.lp-aupay-goldcard .apply-steps-item2 img
 {
  margin-left: 24px;
}
/* /apply-steps(クーポン適用手順)PC */

.lp-aupay-goldcard .coupon-detail-img {
  padding: 15px;
}

.lp-aupay-goldcard .benefit3 {
  display: flex;
  justify-content: space-between;
}

.lp-aupay-goldcard .benefit3 + .benefit3 {
  margin-top: 32px;
}

.lp-aupay-goldcard .benefit3-item {
  border: 1px solid #c6c6c6;
  display: flex;
  flex-flow: column;
  flex: 1;
  padding-top: 32px;
  align-items: center;
  height: 210px;
}

.lp-aupay-goldcard .benefit3-item + .benefit3-item {
  margin-left: 32px;
}

.lp-aupay-goldcard .benefit3-img img {

}

.lp-aupay-goldcard .benefit3-item p {
  flex: 1;
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

.lp-aupay-goldcard .benefit3-item2 {
  border: 1px solid #c6c6c6;
  display: flex;
  flex-flow: row;
  flex: 1;
  padding: 16px;
  align-items: center;
  justify-content: center;
}

.lp-aupay-goldcard .benefit3-item2 + .benefit3-item2 {
  margin-left: 32px;
}

.lp-aupay-goldcard .benefit3-item2 .benefit3-img {
  margin-right: 32px;
}

.lp-aupay-goldcard .benefit3-item2 p {
  margin-bottom: 0;
  text-align: center;
  font-size: 16px;
}

.lp-aupay-goldcard .benefit3-item2 p span {
  font-weight: bold;
}

.lp-aupay-goldcard .card-steps {
  display: flex;
}

.lp-aupay-goldcard .card-steps-item {
  text-align: center;
  font-size: 16px;
}

.lp-aupay-goldcard .card-steps-item .step-arrow {
  display: block;
  margin-bottom: 16px;
}

.lp-aupay-goldcard .card-steps-img {
  margin: 16px 0;
}

.lp-aupay-goldcard .card-steps-item-head {
  font-weight: bold;
}

.lp-aupay-goldcard .apply-card-img {
  display: block;
  margin: 0 auto 16px;
}

.lp-aupay-goldcard .apply-text {
  font-size: 1.6rem;
  margin-bottom: 24px;
}

.lp-aupay-goldcard .apply-fee {
  font-weight: bold;
  margin-bottom: 0;
}

.lp-aupay-goldcard .apply-btns {
  display: flex;
  justify-content: center;
}

.lp-aupay-goldcard .apply-btns-item + .apply-btns-item {
  margin-left: 16px;
}

.lp-aupay-goldcard .apply-btns-item p {
  font-weight: bold;
  font-size: 1.6rem;
}

.lp-aupay-goldcard .apply-btns-item p span {
  color: #A58D2D;
}

.lp-aupay-goldcard .card-detail-table-img {
  width: 1087px;
  height: 1822px;
  object-fit: cover;
  object-position: left top;
}

.lp-aupay-goldcard .faq {
  margin-bottom: 40px;
}

.lp-aupay-goldcard .faq > dt,
.lp-aupay-goldcard .faq > dd {
  padding-left: 44px;
  position: relative;
  font-size: 1.6rem;
}

.lp-aupay-goldcard .faq > dt {
  margin-bottom: 16px;
}

.lp-aupay-goldcard .faq > dd {
  margin-bottom: 24px;
}

.lp-aupay-goldcard .faq > dt::before,
.lp-aupay-goldcard .faq > dd::before {
  content: '';
  display: block;
  width: 28px;
  height: 28px;
  position: absolute;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.lp-aupay-goldcard .faq > dt::before {
  background-image: url(/stcontents/img/sub-page/lp/aupay-goldcard/ic-faq-question.svg);
}

.lp-aupay-goldcard .faq > dd::before {
  background-image: url(/stcontents/img/sub-page/lp/aupay-goldcard/ic-faq-answer.svg);
}

.lp-aupay-goldcard .contacts {
  background-color: #f5f5f5;
  text-align: center;
  padding: 16px;
  margin-bottom: 160px;
}

.lp-aupay-goldcard .contacts > dt,
.lp-aupay-goldcard .contacts > dd {
  margin-bottom: 0;
  font-size: 1.6rem;
}

.lp-aupay-goldcard .contacts > dt {
  font-weight: bold;
}

@media (max-width: 767px) {

  .lp-aupay-goldcard .kv {
    background: url(../img/sub-page/lp/aupay-goldcard/bg-kv-wave-sp.svg) no-repeat bottom center/100%, linear-gradient(97deg, #333 0%, #1C1C1E 32.06%);
    height: 600px;
    position: relative;
  }

  .lp-aupay-goldcard .kv .inner {
    flex-flow: column;
    align-items: center;
    margin-top: 106px;
  }

  .lp-aupay-goldcard .kv-img {
    margin-right: 0;
    text-align: center;
    /* order: 2; */
  }

  .lp-aupay-goldcard .kv-img img {
    width: 211px;
  }

  .lp-aupay-goldcard .kv-ttl {
    position: absolute;
    top: 74px;
    left: 0;
    right: 0;
    margin: auto;
    width: 210px;

  }

  .lp-aupay-goldcard .kv-ttl img {
    width: 100%;
  }

  .lp-aupay-goldcard .kv-introduction img {
    width: 311px;
  }

  .lp-aupay-goldcard section {
    margin-top: 40px;
  }

  .lp-aupay-goldcard .overview {
    border-top: none;
    border-bottom: 1px solid #f5f5f5;
  }

  .lp-aupay-goldcard .overview th,
  .lp-aupay-goldcard .overview td {
    display: block;
    border: none;
    padding: 8px;
  }

  .lp-aupay-goldcard .overview th {
    width: auto;
  }

  .lp-aupay-goldcard .overview td {
    font-size: 1.4rem;
  }

  /* overview-secondary(table type2 @media) */
  /* .lp-aupay-goldcard .overview-secondary {
    border-top: none;
    border-bottom: 1px solid #f5f5f5;
  } */

  /* .lp-aupay-goldcard .overview-secondary th,
  .lp-aupay-goldcard .overview-secondary td {
    display: block;
    border: none;
    padding: 8px;
  } */

  /* .lp-aupay-goldcard .overview-secondary th {
    width: auto;
  } */

  .lp-aupay-goldcard .overview-secondary td {
    font-size: 1.4rem;
  }

  /* .lp-aupay-goldcard .overview-secondary-pc,
  .lp-aupay-goldcard .overview-secondary-inner-pc
   {
    display: none;
  }

  .lp-aupay-goldcard .overview-secondary-inner-sp,
  .lp-aupay-goldcard .overview-secondary-sp-item1,
  .lp-aupay-goldcard .overview-secondary-sp-item2
   {
    display: block;
    border: 1px solid #f5f5f5;
  } */


  /* /overview-secondary(table type2 @media) */

  /* overview-tertiary(table type3 @media) */
  .lp-aupay-goldcard .overview-tertiary {
    border-top: none;
    border-bottom: 1px solid #f5f5f5;
  }

  /* .lp-aupay-goldcard .overview-tertiary th,
  .lp-aupay-goldcard .overview-tertiary td {
    display: block;
    border: none;
    padding: 8px;
  } */

  .lp-aupay-goldcard .overview-tertiary th {
    width: auto;
  }

  .lp-aupay-goldcard .overview-tertiary td {
    font-size: 1.4rem;
    white-space: nowrap;
  }

  .lp-aupay-goldcard .table-notes-sp-only {
    display: block;
  }

  .lp-aupay-goldcard .overview-tertiary-scroll {
    overflow-x: auto;
    padding: 16px;
  }

  /* Retina対応（幅1/2） */
  .lp-aupay-goldcard .aupay-gold-card-img {
    width: 306.5px;
    height: 24px;
  }

  .lp-aupay-goldcard .aupay-card-img {
    width: 200.5px;
    height: 24px;
  }
  /* /Retina対応（幅1/2） */


  /* /overview-tertiary(table type3 @media) */

  .lp-aupay-goldcard .overview-carousel {
    overflow-x: auto;
    margin: 0 -16px;
    padding: 0 16px;
  }

  .lp-aupay-goldcard .overview-carousel-item {
    min-width: 316px;
  }

  .lp-aupay-goldcard .overview-carousel-item p {
    font-size: 14px;
  }

  .lp-aupay-goldcard h2 span {
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .accordion-caption p,
  .lp-aupay-goldcard .accordion-caption .dot-list
   {
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .accordion-caption .dot-list .notes {
    font-size: 1.2rem;
  }

  .lp-aupay-goldcard .accordion.scroll > dd {
    overflow: auto;
    padding: 16px 0 !important;
    /* margin: 0 -16px; */
  }

  .lp-aupay-goldcard .benefit1-detail-image {
    width: 100%;
    padding: 16px;
  }

  .lp-aupay-goldcard .benefit2-steps-item img {
    height: 220px;
  }

  .lp-aupay-goldcard .benefit2-steps {
    margin: 0 -16px;
    padding: 0 16px;
    overflow: auto;
  }

  .lp-aupay-goldcard .benefit2-steps-item + .benefit2-steps-item {
    margin-left: 32px;
  }

  .lp-aupay-goldcard .benefit2-steps-item p {
    font-size: 1.4rem;
  }

  /* apply-steps(クーポン適用手順)SP */
  .lp-aupay-goldcard .apply {
    background-color: #FFFDDF;
    padding: 40px 0 24px 0;
  }

  .lp-aupay-goldcard .apply-steps-item,
  .lp-aupay-goldcard .apply-steps-item2 {
    width: 100%;
    height: auto;
  }

  .lp-aupay-goldcard .apply-steps-item img
   {
    display: block;
    /* margin: auto;
    width: 302px;
    height: 220px; */
    margin: 16px auto 0 auto;
    width: 100%;
  }

  .lp-aupay-goldcard .apply-steps-item2 img
   {
    display: block;
    /* margin: auto;
    width: 302px;
    height: 220px; */
    margin: 16px auto;
    width: 100%;
  }

  .lp-aupay-goldcard .apply-steps {
    flex-direction: column;
    align-items: center;
    padding: 0 16px;
    height: auto;
  }

  .lp-aupay-goldcard .apply-steps-sm {
    flex-direction: column;
    align-items: center;
    padding: 0 16px;
    height: auto;
  }


  /* /apply-steps(クーポン適用手順)SP */

  .lp-aupay-goldcard .coupon-detail-img {
    display: block;
    padding: 0;
    width: calc( 100% + 2px );
    margin-left: -1px;
    margin-bottom: -1px;
  }

  .lp-aupay-goldcard .benefit3 {
    display: block;
  }

  .lp-aupay-goldcard .benefit3-item {
    padding-top: 24px;
    padding-bottom: 24px;
    height: auto;
  }

  .lp-aupay-goldcard .benefit3-item p {
    margin-bottom: 0;
  }

  .lp-aupay-goldcard .benefit3-item + .benefit3-item {
    margin-left: 0;
    margin-top: 16px;
  }

  .lp-aupay-goldcard .benefit3 + .benefit3 {
    margin-top: 16px;
  }

  .lp-aupay-goldcard .benefit3-item2 {
    justify-content: space-between;
  }

  .lp-aupay-goldcard .benefit3-item2 + .benefit3-item2 {
    margin-left: 0;
    margin-top: 16px;
  }

  .lp-aupay-goldcard .benefit3-item2 .benefit3-img {
    margin-right: 8px;
    display: flex;
  }

  .lp-aupay-goldcard .benefit3-item2 p {
    font-size: 1.4rem;
    flex: 1;
  }

  .lp-aupay-goldcard .card-steps {
    display: block;
  }

  .lp-aupay-goldcard .card-steps-item {
    text-align: center;
    font-size: 16px;
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .card-steps-item + .card-steps-item {
    margin-top: 32px;
  }

  .lp-aupay-goldcard .card-steps-item .step-arrow {
    width: 100%;
  }

  .lp-aupay-goldcard .apply-card-img {
    width: 211px;
  }

  .lp-aupay-goldcard .apply-text {
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .apply-btns {
    letter-spacing: 0;
  }

  .lp-aupay-goldcard .apply-btns-item {
    width: 50%;
  }

  .lp-aupay-goldcard .apply-btns-item p {
    font-size: 1rem;
    font-weight: 900;
  }

  .lp-aupay-goldcard .apply-btns-item + .apply-btns-item {
    margin-left: 8px;
  }

  .lp-aupay-goldcard .apply-btns a {
    font-size: 1.4rem;
    white-space: nowrap;
    letter-spacing: 0;
  }

  .lp-aupay-goldcard .card-detail-table-img {
    width: 732px;
    padding-right: 16px;
    height: auto;
    object-fit: fill;
  }

  .lp-aupay-goldcard .faq > dt,
  .lp-aupay-goldcard .faq > dd {
    padding-left: 40px;
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .faq > dt::before,
  .lp-aupay-goldcard .faq > dd::before {
    width: 24px;
    height: 24px;
  }

  .lp-aupay-goldcard .contacts {
    margin-bottom: 80px;
  }

  .lp-aupay-goldcard .contacts > dt,
  .lp-aupay-goldcard .contacts > dd {
    font-size: 1.4rem;
  }

  .lp-aupay-goldcard .float-bar.default {
    padding: 8px 16px 24px;
  }
}

/* SEサイズ以下でボタン内の文字サイズを縮小 */
@media (max-width: 384px) {
  .lp-aupay-goldcard .apply-btns a {
    font-size: 1.3rem;
  }
}
@media (max-width: 340px) {
  .lp-aupay-goldcard .apply-btns a {
    font-size: 1.2rem;
  }
}
@media (max-width: 326px) {
  .lp-aupay-goldcard .apply-btns a {
    font-size: 1.1rem;
  }
}
/* /SEサイズ以下でボタン内の文字サイズを縮小 */


/* auPAYゴールドカードLP end */

/* 法人向け出張予約LP start */
.business-trip main {
  overflow: hidden;
}
.business-trip .relux-toast {
  background-color: #0F0A64;
  color: #FFFFFF;
}
.business-trip .relux-toast > div {
  padding: 0;
  font-size: 2.4rem;
  font-weight: bold;
}
.business-trip .kv {
  height: 460px;
  margin-bottom: 40px;
  background-image: url(/stcontents/img/sub-page/business/bg-kv.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}
.business-trip .kv::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.00) 49.6%, #000 100%);
}
.business-trip .kv .kv-inner {
  position: absolute;
  left: 50%;
  bottom: 40px;
  transform: translateX(-50%);
  margin: auto;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000;
  text-align: center;
}
.business-trip .kv.is-login .kv-inner {
  bottom: 100px;
}
.business-trip .kv h1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 16px;
}
.business-trip .kv p {
  font-size: 2.4rem;
  margin-bottom: 0;
}
.business-trip .anchor-link.position-measure {
  margin-top: -130px;
  margin-bottom: 130px;
}
.business-trip .anchor-link.position-measure ul {
  justify-content: center;
  min-width: 0;
}
.business-trip .sec {
  margin-bottom: 80px;
}
.business-trip .sec-ttl {
  font-size: 2.6rem;
  font-weight: bold;
  text-align: center;
  padding-bottom: 16px;
  margin-bottom: 24px;
  position: relative;
}
.business-trip .sec-ttl::after {
  content: '';
  height: 1px;
  width: 40px;
  background-color: #FF503E;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.business-trip .searchBoxGroupWrap {
  position: relative;
}
.business-trip .searchBoxArea .searchBox .box {
  border-top: 0;
  border-bottom: 0;
  border-left: 0;
}
.business-trip .searchBoxGroupWrap .popup-position {
  top: 84px;
  left: 40px;
  right: 40px;
  width: auto;
  transform: none;
}
.business-trip .searchBoxGroupWrap .popup-suggest {
  width: calc(100% / 2);
}
.business-trip .searchBoxGroupWrap .popup-dateSelector {
  width: 800px;
  margin: auto;
}
.business-trip .searchBoxGroupWrap .popup-peopleroom {
  width: calc(100% / 4);
}
.business-trip .searchBoxGroupWrap .modalbox-container.modalbox-child {
  display: none;
}
.business-trip .searchBoxGroupWrap .modalbox-container.modalbox-budget .input-box {
  display: flex;
  align-items: center;
  width: 100%;
}
.business-trip .searchBoxGroupWrap .modalbox-container.modalbox-budget .input-box .input-content2 {
  margin-bottom: 0;
  flex: 1;
}
.business-trip .searchBoxGroupWrap .modalbox-container.modalbox-budget .input-box span {
  margin: 0 8px;
}
.business-trip .searchBoxGroup {
  background-color: #F5F5F5;
  padding: 24px 40px;
  position: static;
  transform: unset;
}
.business-trip .searchBar {
  display: flex;
  border: 1px solid #0F0A64;
  border-radius: 8px;
  background-color: #FFFFFF;
  overflow: hidden;
  height: 60px;
  width: auto;
  margin-bottom: 16px;
}
.business-trip .searchBar.searchBox .searchBar-box {
  width: 25%;
  border-right: 1px solid #0F0A64;
  padding: 4px 16px;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  height: 100%;
}
.business-trip .searchBar .searchBar-box:hover {
  background-color: #F5F5F5;
}
.business-trip .searchBar .searchBar-box:last-child {
  border-right: 0;
}
.business-trip .searchBar .searchBar-box.searchBar-budgetBox {
  cursor: auto;
}
.business-trip .searchBar .searchBar-box.searchBar-budgetBox:hover {
  background-color: inherit;
}
.business-trip .searchBar .searchBar-box-name {
  font-size: 1.2rem;
  font-weight: bold;
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  color: #333333;
}
.business-trip .searchBar .checkin-out .searchBar-box-name {
  margin-bottom: 0;
}
.business-trip .searchBar .checkin-out .searchBar-value {
  justify-content: center;
}
.business-trip .searchBar .checkin-out .searchBar-value .border {
  margin: 0 8px;
}
.business-trip .searchBar .checkin-out .searchBar-value .main {
  font-size: 1.4rem;
  color: inherit;
}
.searchBox .box .main
.business-trip .searchBar .checkin-out.unset .searchBar-value {
  justify-content: normal;
}
.business-trip .searchBar .searchBar-value {
  display: flex;
  font-size: 1.4rem;
}
.business-trip .searchBoxArea .searchBox .box.area .searchBar-value {
  height: 100%;
}
.business-trip .searchBoxArea .searchBox .box.area.unset .searchBar-value {
  height: auto;
}
.business-trip .searchBoxArea .searchBox .box.area input[type="text"] {
  font-size: 1.4rem;
  width: 100%;
}
.business-trip .searchBoxArea .searchBox .box.area input[type="text"]::-webkit-input-placeholder {
  font-size: 1.4rem;
}
.business-trip .searchBar-budgetBox .searchBar-value{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.business-trip .searchBar-budgetBox .searchBar-value span {
  display: flex;
  align-items: flex-end;
  padding: 4px 0;
}
.business-trip .searchBar-budgetBox .searchBar-budgetBox-item {
  display: flex;
  align-items: flex-end;
  padding: 4px 16px 8px;
  cursor: pointer;
}
.business-trip .searchBar-budgetBox .searchBar-budgetBox-item:hover {
  background-color: #F5F5F5;
}
.business-trip .searchBar .searchBar-value input {
  font-size: 1.4rem;
  background-color: transparent;
  width: 100%;
}
.business-trip .searchBar .searchBar-value input:focus {
  border: 0;
}
.business-trip .searchBoxArea .searchBar-box.peopleroom .main {
  font-size: 1.4rem;
}
.business-trip .sort {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  padding-bottom: 16px;
}
.business-trip .sort dt {
  font-size: 1.6rem;
  font-weight: bold;
  margin-right: 16px;
  line-height: 1.4;
}
.business-trip .sort > dd {
  display: flex;
  flex-wrap: wrap;
}
.business-trip .sort > dd .input-checkbox2:not(:last-child) {
  margin-right: 24px;
  margin-bottom: 8px;
}
.business-trip .cards {
  display: flex;
  flex-wrap: wrap;
  margin-left: -8px;
  margin-right: -8px;
}
.business-trip .cards > li {
  width: calc( 100% / 4 );
  padding: 0 8px;
  margin-bottom: 16px;
}
.business-trip .cards-item {
  display: block;
  height: 120px;
  width: 100%;
  position: relative;
  color: #FFFFFF;
  border-radius: 8px;
  overflow: hidden;
}

.business-trip .cards-item:hover {
  opacity: .7;
}

.business-trip .cards-item::before {
  content: '';
  display: block;
  background-color: rgba( 0, 0, 0, .3);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.business-trip .cards-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.business-trip .cards-txt {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 24px;
  text-shadow: 1px 1px 1px #000;
  line-height: 1.2;
  font-weight: 700;
}
.business-trip .cards-txt p {
  font-size: 2.4rem;
}
.business-trip .cards-txt span {
  font-size: 2rem;
}
.business-trip .howto {
  display: flex;
  justify-content: space-between;
}
.business-trip .howto-item {
  flex: 1;
  background-color: #F3F8FD;
  padding: 24px;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.business-trip .howto-item:not(:first-child) {
  margin-left: 52px;
}
.business-trip .howto-item:not(:first-child)::before {
  content: '';
  display: block;
  width: 20px;
  height: 40px;
  background-image: url(/stcontents/img/sub-page/business/icon-arrow-step-relux.svg);
  background-size: auto;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: -36px;
}
.business-trip .howto-item img {
  width: 240px;
  margin-bottom: 16px;
}
.business-trip .howto-item .text {
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: center;
  font-size: 1.6rem;
}
.business-trip .howto-item .text p:not(.notes) {
  margin-bottom: 0;
  font-weight: bold;
}
.business-trip .faq {
  margin-bottom: 0;
}
.business-trip .faq a {
  text-decoration: underline;
  color: #0066cc;
}
.business-trip .faq a:hover {
  text-decoration: none;
}
.business-trip .faq > dt,
.business-trip .faq > dd {
  padding-left: 56px;
  position: relative;
  min-height: 40px;
  padding-top: 5px;
}
.business-trip .faq > dt {
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 900;
  color: #0A0F64;
}
.business-trip .faq > dd {
  margin-bottom: 40px;
  font-size: 1.6rem;
}
.business-trip .faq > dt::before,
.business-trip .faq > dd::before {
  content: '';
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 0;
  top: 0;
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.business-trip .faq > dt::before {
  background-image: url(/stcontents/img/sub-page/business/icon-faq-question.svg);
}
.business-trip .faq > dd::before {
  background-image: url(/stcontents/img/sub-page/business/icon-faq-answer.svg);
}
.business-trip .faq ol {
  counter-reset: li;
}
.business-trip .faq ol > li {
  padding-left: 1em;
}
.business-trip .faq ol > li::before {
  counter-increment: li;
  content: counter(li)'.';
  margin-left: -1em;
}
.business-trip .faq dl > dt {
  font-weight: 900;
}
.business-trip .faq dl > dd {
  margin-bottom: 16px;
}
.business-trip .faq .imgBox-outer{
}
.business-trip .faq .imgBox {
  background-color: #F3F8FD;
  display: flex;
  justify-content: center;
  align-items: center;;
  padding: 24px;
  margin: 8px 0;
}
.business-trip .faq .imgBox-item {
  display: flex;
  align-items: center;
}
.business-trip .faq .imgBox-item:not(:first-child)::before {
  content: '';
  display: block;
  width: 20px;
  height: 40px;
  margin: 0 40px;
  background-image: url(/stcontents/img/sub-page/business/icon-arrow-step-relux.svg);
  background-size: auto;
  background-position: center;
  background-repeat: no-repeat;
}
.business-trip .faq .member-status {
  margin-bottom: 0;
}
.business-trip .notes {
  color: #757575;
  font-size: 1.2rem !important;
}
.business-trip p.notes {
  padding-left: 1em;
  margin-bottom: 0;
}
.business-trip p.notes::before {
  content: '※';
  margin-left: -1em;
}
.business-trip ul.notes {
  padding-left: 1em;
}
.business-trip ul.notes > li::before {
  content: '※';
  margin-left: -1em;
}

@media (max-width: 767px) {

  .business-trip .relux-toast > div {
    font-size: 1.6rem;
  }
  .business-trip .sec {
    margin-bottom: 40px;
  }
  .business-trip .sec-ttl {
    font-size: 2.4rem;
  }
  .business-trip .kv.is-login .kv-inner img {
    width: 389px;
    height: 235px;
  }
  .business-trip .anchor-link.position-measure {
    margin-bottom: 80px;
  }

  .business-trip .howto {
    flex-flow: column;
  }
  .business-trip .howto-item:not(:first-child) {
    margin-left: 0;
    margin-top: 36px
  }
  .business-trip .howto-item:not(:first-child)::before {
    transform: rotate(90deg);
    top: -38px;
    bottom: auto;
    left: 0;
    right: 0;
  }
  .business-trip .searchBoxGroup {
    margin: 0 -16px;
    padding: 16px;
  }
  .business-trip .searchBar {
    height: 48px;
    border-radius: 4px;
  }
  .business-trip .searchBar::before {
    content: '';
    width: 18px;
    height: 18px;
    background-image: url(/stcontents/img/common/icon-search.svg);
    background-repeat: no-repeat;
    background-size: 14px;
    background-position: center;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 4px;
    margin: auto;
  }
  .business-trip .searchBoxGroupWrap .popup-peopleroom {
    width: auto;
  }
  .business-trip .searchBoxGroup.modal-on .searchBar {
    position: fixed;
    z-index: 41;
    top: 32px;
    left: 0;
    right: 0;
  }
  .business-trip .searchBar .searchBar-box.area {
    width: 100%;
    border-right: 0;
    display: flex;
    padding: 8px;
  }
  .business-trip .searchBar .searchBar-box:not(.area) {
    display: none;
  }
  .business-trip .searchBar .searchBar-box.area .searchBar-value {
    padding-left: 22px;
    width: 100%;
  }
  .business-trip .searchBoxGroupWrap .popup-position {
    left: 0;
    right: 0;
  }
  .business-trip .searchBoxGroupWrap .popup-suggest,
  .business-trip .searchBoxGroupWrap .popup-dateSelector {
    width: 100%;
  }
  .business-trip .sort {
    flex-flow: column;
  }
  .business-trip .sort > dt {
    margin-bottom: 8px;
  }
  .business-trip .sort > dd .input-checkbox2:not(:last-child) {
    margin-right: 8px;
  }
  .business-trip .cards {
    margin-left: -4px;
    margin-right: -4px;
  }
  .business-trip .cards > li {
    width: calc( 100% / 2 );
    padding: 0 4px;
    margin-bottom: 8px;
  }
  .business-trip .cards-item {
    height: 100px;
  }
  .business-trip .cards-txt p,
  .business-trip .cards-txt span {
    font-size: 1.6rem;
  }
  .business-trip .faq .faq-spOffset {
    margin-left: -48px;
    margin-right: -16px;
    padding: 0 16px;
  }
  .business-trip .faq > dt,
  .business-trip .faq > dd {
    padding-left: 32px;
    min-height: 24px;
    padding-top: 0;
    line-height: 1.6;
  }
  .business-trip .faq > dd {
    margin-bottom: 24px;
  }
  .business-trip .faq > dt::before,
  .business-trip .faq > dd::before {
    width: 24px;
    height: 24px;
  }
  .business-trip .faq .imgBox-outer {
    overflow: auto;
    margin: 0 -16px;
    padding: 0 16px;
    scrollbar-width: none;
  }
  .business-trip .faq .imgBox-outer::-webkit-scrollbar {
    display: none;
  }
  .business-trip .faq .imgBox {
    width: fit-content;
  }
  .business-trip .faq .imgBox-item img {
    width: 216px;
  }
  .business-trip .faq .imgBox-item:not(:first-child)::before {
    margin: 0 8px;
  }
}
/* 法人向け出張予約LP end */

/* ふるさと納税プロモーションLP start */

.lp-furusato main {
  padding-bottom: 100px;
}

.lp-furusato .kv {
  height: 500px;
  position: relative;
}

.lp-furusato .kv::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 36, 8, 0.80) 23.64%, rgba(0, 20, 91, 0.00) 100%);
}

.lp-furusato .kv-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-furusato .kv-ttl {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100px;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000;
  font-size: 6rem;
  font-weight: 500;
  text-align: center;
  flex-flow: column;
}

.lp-furusato .kv-ttl span {
  font-size: 4.4rem;
}

.lp-furusato .kv-ttl-sub {
  display: block;
  font-size: 3rem;
  margin-bottom: 0;
}

.lp-furusato .anchor-link.position-measure {
  width: auto;
  margin-top: -104px;
  margin-bottom: 68px;
}

.lp-furusato .sec {
  margin-bottom: 80px;
}

.lp-furusato .heading {
  text-align: center;
  font-size: 2.6rem;
  padding: 0 0 16px;
  margin-bottom: 24px;
  position: relative;
}

.lp-furusato .heading::after {
  content: '';
  display: block;
  width: 40px;
  height: 1px;
  background-color: #FF503E;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.lp-furusato .accordion {
  margin-bottom: 32px;
}

.lp-furusato .accordion > dt {
  cursor: pointer;
  background-color: #F5F5F5;
  color: #0F0A64;
  padding: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 4px 4px 0 0;
  position: relative;
  line-height: 1.4;
}

.lp-furusato .accordion > dt:hover {
  opacity: .8;
}

.lp-furusato .accordion.is-open > dt {
  color: #FFF;
  background-color: #0F0A64;
}

.lp-furusato .accordion > dt::after {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(../img/sub-page/lp/furusato/icon-accordion-arrow-close.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  margin: auto;
}

.lp-furusato .accordion.is-open > dt::after {
  background-image: url(../img/sub-page/lp/furusato/icon-accordion-arrow-open.svg);
}

.lp-furusato .accordion > dd {
  padding: 16px 16px 24px;
  background-color: #F5F5F5;
  /* display: none; */
}

.lp-furusato .accordion.is-open > dd {
  /* display: block; */
}

.lp-furusato .merit-summary {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.lp-furusato .merit-summary-col {
  padding-top: 8px;
  min-height: 182px;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: flex-start;
  margin-right: 40px;
  background-image: url(../img/sub-page/lp/furusato/bg-merit-circle.svg);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: top center;
}

.lp-furusato .merit-summary-col:last-child {
  margin-right: 0;
}

.lp-furusato .merit-summary-col img {
  margin-bottom: 16px;
}

.lp-furusato .merit-summary-col > div {
  display: flex;
  height: 100%;
  align-items: center;
}

.lp-furusato .merit-summary-col p {
  text-align: center;
  font-size: 1.6rem;
}

.lp-furusato .merit-summary-col p strong {
  font-weight: 900;
}

.lp-furusato .merit-summary-col p span {
  display: block;
  font-size: 1rem;
  color: #757575;
}

.lp-furusato .site-name {
  margin-bottom: 16px;
  padding-top: 16px;
  text-align: center;
}

.lp-furusato .site-name img {
  display: block;
  margin: 0 auto;
}

.lp-furusato .site-name img.aupay {
  width: 310px;
  height: 40px;
}

.lp-furusato .site-name img.jal {
  width: 260px;
  height: 60px;
}

.lp-furusato .site-name img.rakuten {
  width: 318px;
  height: 80px;
}

.lp-furusato .site-name img.choice {
  width: 244px;
  height: 80px;
}

.lp-furusato .localGovernments {
  display: flex;
  flex-wrap: wrap;
  margin-left: -16px;
  margin-right: -16px;
  margin-bottom: -32px;
}

.lp-furusato .localGovernments > li {
  width: calc( 100% / 3 );
  padding: 0 16px;
  margin-bottom: 32px;
}

.lp-furusato .localGovernments-item {
  display: flex;
  flex-flow: column;
  height: 100%;
}

.lp-furusato .localGovernments-item-head {
  height: 160px;
  width: 100%;
  margin-bottom: 8px;
  position: relative;
}

.lp-furusato .localGovernments-item-head::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient( to bottom, rgba( 0, 0, 0, 0) 0%, rgba( 0, 0, 0, 1) 100%);
  opacity: .8;
}

.lp-furusato .localGovernments-item-head img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-furusato .localGovernments-item-head p {
  font-size: 2rem;
  font-weight: 700;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.lp-furusato .localGovernments-item-btn {
  background-color: #FFFFFF;
  color: #0F0A64;
  border: 1px solid #0F0A64;
  border-radius: 4px;
  min-height: 48px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 1.6rem;
  cursor: pointer;
  margin-top: auto;
}

.lp-furusato .localGovernments-item-btn:hover {
  opacity: .7;
}

.lp-furusato .facilities {
  margin-bottom: 8px;
}

.lp-furusato .facilities-item {
  font-size: 1.6rem;
  color: #0F0A64;
  font-weight: 500;
  position: relative;
  background-color: transparent;
  padding: 0 24px 0 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 100%;
  vertical-align: bottom;
}

.lp-furusato .facilities-item:hover {
  opacity: .7;
}

.lp-furusato .facilities-item::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #0F0A64;
  border-right: 2px solid #0F0A64;
  transform: rotate(45deg);
  position: absolute;
  right: 8px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.lp-furusato .localGovernments2 {
  display: flex;
  flex-wrap: wrap;
  margin-left: -16px;
  margin-right: -16px;
  margin-bottom: -32px;
}

.lp-furusato .localGovernments2 > li {
  width: calc( 100% / 3 );
  padding: 0 16px;
  margin-bottom: 32px;
}

.lp-furusato .localGovernments2-item {
  display: flex;
  flex-flow: column;
  height: 100%;
}

.lp-furusato .localGovernments2-item-head {
  height: 200px;
  position: relative;
}

.lp-furusato .localGovernments2-item-head::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient( to bottom, rgba( 0, 0, 0, 0) 0%, rgba( 0, 0, 0, 1) 100%);
  opacity: .8;
}

.lp-furusato .localGovernments2-item-head img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-furusato .localGovernments2-item-head p {
  font-size: 2rem;
  font-weight: 700;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.lp-furusato .localGovernments2-item-body {
  padding: 16px;
  background-color: #F5F5F5;
  flex: 1;
}

.lp-furusato .sites > li:not(:last-child) {
  margin-bottom: 8px;
}

.lp-furusato .sites-item {
  background-color: #FFFFFF;
  border: 1px solid #C6C6C6;
  border-radius: 8px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.10);
  padding: 8px;
  display: flex;
  flex-flow: column;
  align-items: center;
  width: 100%;
  cursor: pointer;
}

.lp-furusato .sites-item:hover {
  opacity: .7;
}

.lp-furusato .sites-item img {
  margin-bottom: 4px;
}

.lp-furusato .sites-item img.aupay {
  width: 186px;
  height: 24px;
}

.lp-furusato .sites-item img.jal {
  width: 138px;
  height: 32px;
}

.lp-furusato .sites-item img.rakuten {
  width: 128px;
  height: 32px;
}

.lp-furusato .sites-item img.choice {
  width: 98px;
  height: 32px;
}

.lp-furusato .sites-item span {
  font-size: 1.6rem;
  color: #0F0A64;
  font-weight: 500;
  position: relative;
  background-color: transparent;
  padding: 0 24px 0 0;
}

.lp-furusato .sites-item span::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #0F0A64;
  border-right: 2px solid #0F0A64;
  transform: rotate(45deg);
  position: absolute;
  right: 8px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.lp-furusato .notes {
  padding: 40px;
  background-color: #F5F5F5;
}

.lp-furusato .notes-heading {
  font-size: 2rem;
  margin-bottom: 16px;
  text-align: center;
}

.lp-furusato .notes-listTtl {
  font-size: 1.6rem;
  margin-bottom: 0;
  font-weight: bold;
}

.lp-furusato .notes-list {
  font-size: 1.6rem;
}

.lp-furusato .notes-list > li {
  padding-left: 1em;
  text-indent: -1em;
}

.lp-furusato .notes-list > li::before {
  content: '・';
}

.lp-furusato .notes2 {
  font-size: 1.2rem !important;
  color: #757575;
  margin-bottom: 0;
}

.lp-furusato .notes2::before {
  content: '※';
  display: inline;
}

.lp-furusato .common-modal {
  max-width: 800px;
}

.lp-furusato .common-modal .modal-container {
  height: auto;
  max-height: 90%;
  top: 50%;
  transform: translateY(-50%);
  margin: auto;
  display: flex;
}

.lp-furusato.is-notLogin .common-modal .modal-container {
  padding-bottom: 80px;
}

.lp-furusato .modal-content {
  display: flex;
  flex-flow: column;
  width: 100%;
}

.lp-furusato .modal-content > dt {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 2rem;
  text-align: center;
}

.lp-furusato .modal-content > dt p {
  display: block;
  font-size: 1.4rem;
  font-weight: 400;
  margin-bottom: 0;
}

.lp-furusato .modal-content > dd {
  flex: 1;
  overflow: auto;
  background-color: #F5F5F5;
  box-shadow: 2px 0px 6px 0px rgba(0, 0, 0, 0.10) inset;
}

.lp-furusato .modal-fixedBar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 16px 40px 16px 24px;
  height: 80px;
  background-color: #FFFFFF;
  display: none;
  align-items: center;
  justify-content: flex-end;
  box-shadow: 0px -2px 8px 0px rgba(0, 0, 0, 0.08);
}

.lp-furusato.is-notLogin .modal-fixedBar {
  display: flex;
}

.lp-furusato .modal-fixedBar p {
  margin-bottom: 0;
  font-weight: 700;
  font-size: 1.6rem;
}

.lp-furusato .modal-fixedBar .btn {
  width: 160px;
  margin-left: 16px;
}

.lp-furusato .coupons {
  display: flex;
  flex-wrap: wrap;
  padding: 16px;
}

.lp-furusato .coupons > li {
  width: calc( 100% / 2 );
  padding: 0 4px;
  margin-bottom: 8px;
}

.lp-furusato .coupons-item {
  display: flex;
  flex-flow: column;
  text-align: center;
  padding: 16px 32px;
  background-color: #FFFFFF;
  border-radius: 16px;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
  color: #0F0A64;
}

.lp-furusato .coupons-item:hover {
  background-color: #A6BCE9;
}

.lp-furusato.is-notLogin .coupons-item {
  pointer-events: none;
  color: #C6C6C6;
}

.lp-furusato .coupons-item-donation {
  background-color: #F3F8FD;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  line-height: 24px;
  border-radius: 12px;
}

.lp-furusato.is-notLogin .coupons-item-donation {
  background-color: #C6C6C6;
  color: #FFFFFF;
}

.lp-furusato .coupons-item-detail {
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 48px;
  margin-bottom: 0;
}

.lp-furusato .coupons-item-detail span {
  font-size: 2.6rem;
}

.lp-furusato .coupons-item-ponta {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lp-furusato .coupons-item-ponta > dt::after {
  content: '｜';
  color: #FF503E;
}

.lp-furusato.is-notLogin .coupons-item-ponta > dt::after {
  color: #c6c6c6;
}

@media (max-width: 767px) {
  .lp-furusato .kv-ttl {
    bottom: 100px;
    font-size: 3.8rem;
  }

  .lp-furusato .kv-ttl span {
    font-size: 2.8rem;
  }

  .lp-furusato .kv-ttl-sub {
    font-size: 2rem;
    line-height: 2;
    margin-top: 8px;
  }

  .lp-furusato .anchor-link.position-measure {
    margin-left: -16px;
    margin-right: -16px;
    /* padding: 0 16px; */
    overflow-x: visible;
  }

  .lp-furusato .anchor-link.position-measure ul {
    min-width: auto;
    width: 100%;
    overflow-x: auto;
    padding: 0 16px;
    scrollbar-width: none;
  }

  .lp-furusato .anchor-link.position-measure ul::-webkit-scrollbar {
    display: none;
  }

  .lp-furusato .heading {
    font-size: 2.4rem;
  }

  .lp-furusato .sec {
    margin-bottom: 40px;
  }

  .lp-furusato .accordion > dt {
    padding: 12px 16px;
  }

  .lp-furusato .accordion > dd {
    padding-top: 8px;
  }

  .lp-furusato .merit-summary {
    flex-flow: column;
  }

  .lp-furusato .merit-summary-col {
    margin-right: 0;
    margin-bottom: 24px;
  }

  .lp-furusato .merit-summary-col:last-child {
    margin-bottom: 0;
  }

  .lp-furusato .site-name {
    margin-bottom: 8px;
  }

  .lp-furusato .site-name img.aupay {
    width: 248px;
    height: 32px;
  }

  .lp-furusato .site-name img.jal {
    width: 173px;
    height: 40px;
  }

  .lp-furusato .site-name img.rakuten {
    width: 199px;
    height: 50px;
  }

  .lp-furusato .site-name img.choice {
    width: 153px;
    height: 50px;
  }

  .lp-furusato .localGovernments {
    margin: 0 0 -24px;
  }

  .lp-furusato .localGovernments > li {
    width: 100%;
    padding: 0;
    margin-bottom: 24px;
  }

  .lp-furusato .localGovernments-item-btn {
    min-height: 40px;
    font-size: 1.4rem;
  }

  .lp-furusato .facilities > li:not(:last-child) {
    margin-bottom: 8px;
  }

  .lp-furusato .facilities-item {
    font-size: 1.4rem;
  }

  .lp-furusato .localGovernments2 {
    margin: 0 0 -24px;
  }

  .lp-furusato .localGovernments2 > li {
    width: 100%;
    padding: 0;
    margin-bottom: 24px;
  }

  .lp-furusato .notes {
    padding: 24px 16px;
    margin-left: -16px;
    margin-right: -16px;
  }

  .lp-furusato .notes-heading {
    font-size: 1.6rem;
  }

  .lp-furusato .notes-listTtl {
    font-size: 1.4rem;
  }

  .lp-furusato .notes-list {
    font-size: 1.4rem;
  }

  .lp-furusato .common-modal {
    max-width: 800px;
  }

  .lp-furusato .common-modal .modal-container {
    max-height: unset;
    transform: translateY(0);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .lp-furusato.is-notLogin .common-modal .modal-container {
    padding-bottom: 102px;
  }

  .lp-furusato .modal-fixedBar {
    flex-wrap: wrap;
    height: auto;
    justify-content: center;
    padding: 8px 16px 24px;
  }

  .lp-furusato.is-notLogin .modal-fixedBar {
    display: flex;
  }

  .lp-furusato .modal-fixedBar p {
    font-size: 1.2rem;
    width: 100%;
    margin-bottom: 8px;
    text-align: center;
  }

  .lp-furusato .modal-fixedBar .btn {
    height: 40px;
    font-size: 1.4rem;
    width: calc(50% - 4px);
    margin-left: 0;
  }

  .lp-furusato .modal-fixedBar .btn + .btn {
    margin-left: 8px;
  }
  .lp-furusato .notes2 {
    font-size: 1rem !important;
  }
  .lp-furusato .coupons > li {
    width: 100%;
    padding: 0;
    margin-bottom: 8px;
  }

  .lp-furusato .coupons-item {
    padding-left: 40px;
    padding-right: 40px;
  }

  .lp-furusato .coupons-item-detail {
    font-size: 1.4rem;
  }

  .lp-furusato .coupons-item-detail span {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 360px){
  .lp-furusato .kv-ttl {
    font-size: 3.4rem;
  }
  .lp-furusato .coupons-item {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* ふるさと納税プロモーションLP end */

/* トップページボタン群スタイル修正 */
.feature-line-2 {
  width: 100%;
  overflow-x: auto;
  position: relative;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 0;
}
.feature-line-2 h2 {
  line-height: 44px;
}
.feature-line-2 .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-content: space-between;
      -ms-flex-line-pack: justify;
          align-content: space-between;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.feature-line-2 a {
  color: #0F0A64;
  background: #F3F8FD;
  border: none;
  border-radius: 8px;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
  width: 198px;
  height: 82px;
  float: left;
  text-align: left;
  margin-right: 32px;
  margin-bottom: 32px;
  padding: 16px 8px 14px 16px;
  position: relative;
}
.feature-line-2 a:last-child {
  margin-right: 0px;
  margin-bottom: 40px;
}
.feature-line-2 a::after {
  display: inline-block;
  content: "";
  background: url(/stcontents/img/index/icon-featureline2-arrow-right.svg) no-repeat;
  width: 9px;
  height: 16px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.feature-line-2 a:hover {
  opacity: .7;
}
.feature-line-2 .upper-row {
  display: flex;
  align-items: center;
  height: 28px;
}
.feature-line-2 .upper-row .fl2-icon {
  width: 24px;
  margin-right: 8px;
}
.feature-line-2 .mb-2 {
  margin-bottom: 2px;
}
.feature-line-2 .lower-row {
  color: #0F0A64;
}
@media (max-width: 767px) {
  .feature-line-2 .inner {
    justify-content: space-between;
  }
  .feature-line-2 .inner::after {
    content: "";
    display: block;
    width: calc(33% - 4px);
    height: 0;
  }
  .feature-line-2 a {
    width: calc(33% - 4px);
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.10);
    margin-right: 8px;
    margin-bottom: 8px;
  }
  .feature-line-2 a:last-child {
    margin-right: 8px;
  }
  .feature-line-2 a::after {
    display: none;
  }
  .feature-line-2 .upper-row {
    height: 24px;
    margin-bottom: 8px;
  }
  .feature-line-2 .upper-row .fl2-icon {
    width: 16px;
    margin-right: 2px;
  }
  .feature-line-2 .mb-sp-10 {
    display: flex;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 767px) and (min-width: 601px) {
  .feature-line-2 a:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media (max-width: 600px) {
  .feature-line-2 a {
    width: calc(50% - 4px);
    margin-right: 8px;
    margin-bottom: 8px;
    padding: 14px 10px;
  }
  .feature-line-2 a:nth-of-type(2n) {
    margin-right: 0;
  }
  .feature-line-2 .lower-row {
   letter-spacing: normal;
  }
}
@media (max-width: 367px) {
  .feature-line-2 .upper-row span {
    font-size: 1.3rem;
  }
  .feature-line-2 .lower-row {
    font-size: 1rem;
  }
}
/* トップページボタン群スタイル修正 end */

/* 9/4 3チェーン合同15%OFFCP */
.campaigns.template .area-list .location {
  color: #757575;
}
@media (max-width: 767px) {
  .campaigns.template .area-list .location {
    font-size: 1.2rem;
  }
}

/* 9/18ドーミーイン10%OFFCP */
.campaigns.template .key-visual.kv-coupon .inner {
  bottom: 126px;
}
.campaigns.template .key-visual.kv-coupon .inner h1 {
  max-width: 660px;
  display: flex;
  margin: 0 auto 24px;
}
.campaigns.template .key-visual.kv-coupon .inner h1 .kv_coupon_img {
  width: 100%;
}
.campaigns.template .key-visual .table-basic {
  max-width: 640px;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .campaigns .key-visual.kv-coupon {
    height: 420px;
  }
  .campaigns.template .key-visual.kv-coupon .inner {
    /* 23/12/6 snsアイコン追加のため */
    bottom: 62px;
    /* bottom: initial; */
    /* position: initial; */
  }
  .campaigns.template .key-visual.kv-coupon .inner h1 {
    max-width: 343px;
    margin-bottom: 16px;
  }

  .campaigns.template .key-visual .table-basic {
    max-width: 343px;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 384px) {
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic th,
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic td {
    font-size: 1.3rem;
    min-width: auto;
  }
}
@media screen and (max-width: 372px) {
  .campaigns.template .inner {
    padding: 0 8px;
  }
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic th,
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic td {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 326px) {
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic th,
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic td {
    font-size: 1.1rem;
  }
}
/* 10/2関西エリア15%OFF */
@media screen and (max-width: 767px) {
  .campaigns .key-visual .inner.bottom-adjust .table-basic .sp-font-adjust {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 340px) {
  .campaigns.template .key-visual .inner.bottom-adjust .table-basic .sp-font-adjust {
    font-size: 1.1rem;
  }
}

/* 冬旅CP start */

.winter2312 .key-visual {
  height: 470px;
  background-image: url(../img/sub-page/lp/winter2312/bg-kv.png) !important;
  background-position: center left;
  background-repeat: no-repeat;
  background-size: cover;
}

.winter2312 .key-visual:after {
  background: linear-gradient(180deg, rgba(0, 20, 91, 0.60) 0%, rgba(0, 20, 91, 0.00) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}

.winter2312 .key-visual.finish {
  height: 100dvh;
}

.winter2312 .key-visual .inner {
  top: auto;
  bottom: 32px;
  transform: unset;
}

.winter2312 .key-visual.complete .inner,
.winter2312 .key-visual.finish .inner {
  bottom: inherit !important;
  top: 50% !important;
  transform: translateY(-50%);
}

.winter2312 .key-visual h1 {
  line-height: 1.3;
  text-shadow: 2px 2px 6px #000;
}

.winter2312 .key-visual .kv-txt {
  font-size: 3.6rem;
}

.winter2312 .key-visual .kv-txt span {
  font-size: 2.2rem;
}

.winter2312 .key-visual .kv-ttl {
  font-size: 6rem;
  font-weight: 700;
}

.winter2312 .key-visual.finish h1 {
  font-size: 3.6rem;
  font-weight: 300;
  text-shadow: 1px 1px 1px #000;
}

.winter2312 .key-visual.finish p {
  font-size: 2rem;
  font-weight: 700;
  text-shadow: 1px 1px 1px #000;
}

.winter2312 .sec {
  margin-bottom: 40px;
}

.winter2312 .float-bar.default {
  z-index: 22;
  padding: 16px;
}

.facilityCardList {
  display: flex;
  margin: 0 -16px;
  flex-wrap: wrap;
}

.facilityCardList > li {
  width: calc(100% / 4);
  margin-bottom: 32px;
  padding: 0 16px;
}

.facilityCard {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  color: #333;
  text-decoration: none;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
  height: 100%;
}

.facilityCard:hover {
  color: #333;
  opacity: .7;
}

.facilityCard-head {
  height: 170px;
  position: relative;
}

.facilityCard-body {
  padding: 8px 16px 16px;
  height: calc(100% - 170px);
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.facilityCard-img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.facilityCard-img::before {
  content: '';
  display: block;
  background: linear-gradient(rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1));
  opacity: .8;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.facilityCard-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.facilityCard-grade {
  position: absolute;
  bottom: 8px;
  left: 16px;
}

.facilityCard-grade img {
  height: 20px;
}

.facilityCard-ttl {
  font-size: 1.6rem;
  font-weight: 900;
  margin-bottom: 0;
  line-height: 1.6;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.facilityCard-area {
  color: #757575;
  font-size: 1.2rem;
  margin-bottom: 0;
}

.facilityCard-priceBox {
  margin-top: 8px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  line-height: 1.6;
}

.facilityCard-priceBox > dt,
.facilityCard-priceBox > dd {
  text-align: right;
}

.facilityCard-priceBox > dt {
  font-size: 1.2rem;
}

.facilityCard-priceBox > dd {
  font-size: 2rem;
  margin-left: 8px;
  display: flex;
  flex-flow: column;
}

.facilityCard-priceBox > dd .price-before,
.facilityCard-priceBox > dd .price-after {
  line-height: 1.4;
}

.facilityCard-priceBox > dd .price {
  font-weight: bold;
}

.facilityCard-priceBox > dd .price-before {
  color: #C6C6C6;
  font-size: 1.6rem;
  text-decoration: line-through;
}

.facilityCard-priceBox > dd .price-after {
  color: #FF503E;
  font-weight: 900;
}


@media (max-width: 1023px) {
  /* PC横幅小さい場合.facilityCardListを3カラム表示 */
  .facilityCardList {
    margin: 0 -8px;
  }

  .facilityCardList > li {
    width: calc(100% / 3);
    padding: 0 8px;
    margin-bottom: 16px;
  }

  .winter2312 .sp-low-contents .sp-only {
    margin-top: 0;
  }
}

@media (max-width: 767px) {

  .winter2312 .key-visual .inner {
    /* top: 50%;
    bottom: auto;
    right: 0;
    transform: translateY(-50%); */
  }

  .winter2312 .key-visual .kv-txt {
    font-size: 2.4rem;
  }

  .winter2312 .key-visual .kv-txt span {
    font-size: 1.6rem;
  }

  .winter2312 .key-visual .kv-ttl {
    font-size: 4rem;
    font-weight: 700;
  }

  .winter2312 .key-visual.complete h1 img {
    transform: translateX(-11px);
  }

  .winter2312 .float-bar.default {
    padding: 8px 16px 24px;
  }

  .winter2312 .float-bar .btn-block a {
    max-width: none;
    width: 100%;
    /* margin: 0; */
  }

  .facilityCardList {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin: 0 -16px;
  }

  .facilityCardList::-webkit-scrollbar {
    display: none;
  }

  .facilityCardList > li {
    width: auto;
    padding: 0 4px;
    margin-bottom: 16px;
    scroll-snap-align: center;
  }

  .facilityCardList > li:first-child {
    padding-left: 16px;
  }

  .facilityCardList > li:last-child {
    padding-right: 16px;
  }

  .facilityCard {
    width: 256px;
  }

  .facilityCard:hover {
    color: #333;
    opacity: .7;
  }

  .facilityCard-head {
    height: 170px;
    position: relative;
  }

  .facilityCard-body {
    padding: 8px 16px 16px;
  }

  .facilityCard-img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .facilityCard-img::before {
    content: '';
    display: block;
    background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
    opacity: .8;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .facilityCard-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .facilityCard-grade {
    position: absolute;
    bottom: 8px;
    left: 16px;
  }

  .facilityCard-grade img {
    height: 20px;
  }

  .facilityCard-ttl {
    font-size: 1.6rem;
    font-weight: 900;
    margin-bottom: 0;
    line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .facilityCard-area {
    color: #757575;
    font-size: 1.2rem;
    margin-bottom: 0;
  }

  .facilityCard-priceBox {
    margin-top: 8px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    line-height: 1.6;
  }

  .facilityCard-priceBox > dt,
  .facilityCard-priceBox > dd {
    text-align: right;
  }

  .facilityCard-priceBox > dt {
    font-size: 1.2rem;
  }

  .facilityCard-priceBox > dd {
    font-size: 2rem;
    margin-left: 8px;
    display: flex;
    flex-flow: column;
  }

  .facilityCard-priceBox > dd .price-before,
  .facilityCard-priceBox > dd .price-after {
    line-height: 1.4;
  }

  .facilityCard-priceBox > dd .price-before {
    color: #C6C6C6;
    font-size: 1.6rem;
    text-decoration: line-through;
  }

  .facilityCard-priceBox > dd .price-after {
    color: #FF503E;
    font-weight: 900;
  }
}

/* 冬旅CP end */

/* 新春旅みくじCP*/

.newyear2401 .global-footer {
  display: block !important;
}

.newyear2401 .key-visual {
  height: 600px;
}
.newyear2401 .key-visual,
.newyear2401 .key-visual-complete {
  background-image: url(../img/sub-page/lp/newyear2401/bg-kv.png) !important;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.newyear2401 .key-visual:after {
  background: linear-gradient(180deg, rgba(0, 20, 91, 0.60) 0%, rgba(0, 20, 91, 0.00) 100%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}

.newyear2401 .key-visual-complete::before {
  height: 100% !important;
}

.newyear2401 .key-visual.finish {
  height: 100dvh;
}
.newyear2401 .key-visual.finish .inner {
  bottom: 50%;
}
.newyear2401 .omikuji-block,
.newyear2401 .omikuji-block-2 {
  height: 286px;
}
.newyear2401 .omikuji-block img,
.newyear2401 .omikuji-block-2 img {
  width: 600px;
  margin: 0 auto;
  cursor: pointer;
}
.newyear2401 .omikuji-block a,
.newyear2401 .omikuji-block-2 a {
  opacity: 1;
}
.newyear2401 .omikuji-block .btn-disabled,
.newyear2401 .omikuji-block-2 .btn-disabled {
  opacity: 1;
}
.newyear2401 .omikuji-block img.disabled,
.newyear2401 .omikuji-block img.hover {
  display: none !important;
}
.newyear2401 .omikuji-block .btn-disabled img.pc-only,
.newyear2401 .omikuji-block.change-disabled img.pc-only {
  display: none !important;
}
.newyear2401 .omikuji-block .btn-disabled img.pc-only.disabled,
.newyear2401 .omikuji-block.change-disabled img.pc-only.hover {
  display: block !important;
}
.newyear2401 .omikuji-block .anime {
  max-width: 100%;
  width: 600px;
  display: block;
  opacity: 0;
  position: relative;
}
.newyear2401 .omikuji-block .anime img {
  width: 280px;
  position: relative;
  z-index: 2;
}

.campaigns .omikuji-anime-box {
    width: 600px !important;
    height: 276px;
    position: relative;
    margin: 0 auto;
    transform: translateY(-35%) !important;
}
.campaigns .omikuji-anime-box .result-coupon {
    background: url(/stcontents/img/sub-page/campaigns/omikuji-coupon-bg.png) no-repeat center center;
    background-size: contain;
    width: 600px;
    height: 276px;
    padding: 24px 12px 0;
    position: relative;
}

.campaigns .omikuji-anime-box .omikuji-anime-1 {
  display: none;
  background: none;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.campaigns .omikuji-anime-box .omikuji-anime-1 img {
  width: 280px;
}
.campaigns .omikuji-anime-box:before,
.newyear2401 .omikuji-block .anime:before {
  background: url(/stcontents/img/sub-page/campaigns/omikuji-bg-icon-1.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: block;
  width: 322px;
  height: 257px;
  position: absolute;
  top: 0;
  left: -25%;
}
.campaigns .omikuji-anime-box:after,
.newyear2401 .omikuji-block .anime:after {
  background: url(/stcontents/img/sub-page/campaigns/omikuji-bg-icon-2.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: block;
  width: 322px;
  height: 257px;
  position: absolute;
  bottom: 0;
  right: -23%;
}
.campaigns .omikuji-anime-box .omikuji-anime-2 {
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -46%);
  z-index: 2;
  transition: opacity 0.1s;
}

@media (max-width: 767px) {
  .newyear2401 .key-visual {
    height: 470px;
  }
  .newyear2401 .key-visual .inner {
    width: 100%;
    left: 0;
  }
  .newyear2401 .omikuji-block,
  .newyear2401 .omikuji-block-2 {
    height: 243px;
  }
  .newyear2401 .omikuji-block img,
  .newyear2401 .omikuji-block-2 img {
    max-width: 100%;
    width: 343px;
  }
  .newyear2401 .omikuji-block .btn-disabled img.pc-only.disabled,
  .newyear2401 .omikuji-block .btn-disabled img.sp-only,
  .newyear2401 .omikuji-block.change-disabled img.pc-only.disabled,
  .newyear2401 .omikuji-block.change-disabled img.sp-only {
    display: none !important;
  }
  .newyear2401 .omikuji-block .btn-disabled img.sp-only.disabled,
  .newyear2401 .omikuji-block.change-disabled img.sp-only.hover {
    display: block !important;
  }
  .newyear2401 .omikuji-block .anime img {
    width: 220px;
  }
  .campaigns.template .key-visual-complete .omikuji-anime-box {
    max-width: 100% !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    top: 0 !important;
    left: 0 !important;
    padding: 0 !important;
  }
  .campaigns .omikuji-anime-box .result-coupon {
      background: url(/stcontents/img/sub-page/campaigns/omikuji-coupon-bg-sp.png) no-repeat center center;
      background-size: contain;
      max-width: 100%;
      width: 380px !important;
      height: 310px;
      padding: 34px 32px 0;
  }
  .campaigns .omikuji-anime-box .omikuji-anime-1 img {
    width: 220px;
  }
  .campaigns .omikuji-anime-box:before,
  .newyear2401 .omikuji-block .anime:before {
    background: url(/stcontents/img/sub-page/campaigns/omikuji-bg-icon-1-sp.png) no-repeat 0 0;
    background-size: contain;
    width: 220px;
    height: 226px;
    top: 0;
    left: 0;
  }
  .campaigns .omikuji-anime-box:after,
  .newyear2401 .omikuji-block .anime:after {
    background: url(/stcontents/img/sub-page/campaigns/omikuji-bg-icon-2-sp.png) no-repeat 0 0;
    background-size: contain;
    width: 190px;
    height: 210px;
    bottom: 0;
    right: 0;
  }
  .omikuji-block .coupon-text,
  .omikuji-block-2 .coupon-text {
    max-width: 295px;
  }
}
@media (max-width: 360px){
  .campaigns .omikuji-anime-box .result-coupon {
    max-width: 86%;
  }
  .campaigns .omikuji-anime-box h1 {
    font-size: 26px;
  }
  .campaigns .omikuji-anime-box .result-coupon {
      padding: 34px 24px 0;
  }
  .float-bar .float-note {
    font-size: 10px;
  }
}

/*
  恋みくじCP
*/
.valentine2402 main {
  background: #F5E6E8;
}
.valentine2402 main table {
  background: #fff;
}
.valentine2402 .key-visual,
.valentine2402 .key-visual-complete {
  background-image: url(../img/sub-page/lp/valentine2402/bg-kv.png) !important;
  overflow: hidden;
  height: 470px !important;
}
.valentine2402 .key-visual .inner {
  bottom: 37px;
}
.valentine2402 .key-visual:before,
.valentine2402 .key-visual-complete:before {
  background: url(../img/sub-page/lp/valentine2402/icon-heart-left.png) no-repeat 0 0;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -640px;
  content: "";
  display: block;
  width: 365px;
  height: 257px;
}
.valentine2402 .key-visual:after,
.valentine2402 .key-visual-complete:after {
  background: url(../img/sub-page/lp/valentine2402/icon-heart-right.png) no-repeat 0 0;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 50%;
  margin-right: -640px;
  content: "";
  display: block;
  width: 371px;
  height: 263px;
}
.valentine2402 .key-visual h1 {
  text-shadow: 0px 0px 19px #86000B;
}
.valentine2402 .key-visual.finish {
  height: 100vh !important;
}
.valentine2402 .key-visual.finish .inner {
  bottom: auto;
}
.valentine2402 .key-visual.finish .inner:before {
  content: "";
  background: rgba(0,0,0,0.4);
  position: absolute;
  top: -100vh;
  left: -100vw;
  width: 205vw;
  height: 205vh;
}
.valentine2402 .key-visual.finish .inner > div {
  position: relative;
  z-index: 1;
  }
.omikuji-block-2.coupon-block-new {
  display: block;
  height: auto;
}
.omikuji-block-2 .btn-disabled {
  background: #F5F5F5;
  border: none;
  color: #C6C6C6;
}
.omikuji-block-2 .coupon-text {
  max-width: 246px;
  width: auto !important;
  height: auto;
  cursor: default !important;
}
.omikuji-block-2 .bg-coupon {
  background: url(../img/sub-page/campaigns/bg-coupon.png) no-repeat center center;
  background-size: contain;
  margin: 0 auto;
}
.omikuji-block-2 .btn-entry {
  display: flex;
  margin: 0 auto;
  padding: 0;
}
.omikuji-block-2 .btn-relux:hover {
  background-color: #554B98;
}
.omikuji-block-2 + .anime img {
  width: 330px;
  position: absolute;
  bottom: 45px;
  left: 50%;
  transform: translateX(-50%);
  }
.campaigns .present-list-box-100.text-right .present-list-inner100 dl dt {
    width: 100px;
    text-align: right;
}
.campaigns .present-list-box-100 .present-list-inner100 dl .font-bold {
  font-weight: bold !important;
}
.valentine2402 .omikuji-anime-box:before,
.valentine2402 .omikuji-anime-box:after {
  content: none !important;
}
.valentine2402 .omikuji-anime-box .result-coupon {
  background: url(/stcontents/img/sub-page/lp/valentine2402/bg-coupon-pink.png) no-repeat center center;
  background-size: contain;
  width: 613px;
  height: 307px;
  padding: 80px 16px 0 40px;
}
.key-visual.shadow-add .inner:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0,0,0,0.2);
}
@media screen and (max-width: 767px){
  .pc-only-inline {
    display: none;
  }
  .valentine2402 .key-visual,
  .valentine2402 .key-visual-complete {
    background-image: url(../img/sub-page/lp/valentine2402/bg-kv-sp.png) !important;
    height: 470px !important;
  }
  .valentine2402 .key-visual:before,
  .valentine2402 .key-visual-complete:before {
    background-image: url(../img/sub-page/lp/valentine2402/icon-heart-left-sp.png);
    width: 124px;
    height: 179px;
    left: 16px;
    margin-left: 0;
  }
  .valentine2402 .key-visual:after,
  .valentine2402 .key-visual-complete:after {
    background-image: url(../img/sub-page/lp/valentine2402/icon-heart-right-sp.png);
    width: 124px;
    height: 179px;
    right: 16px;
    margin-right: 0;
  }
  .valentine2402 .omikuji-block-2 {
    height: auto;
  }
  .omikuji-block-2 .bg-coupon {
    background: url(../img/sub-page/campaigns/bg-coupon-sp.png) no-repeat center center;
    background-size: contain;
    width: 343px;
    padding: 25px 65px 10px;
  }
  .omikuji-block-2 .btn-entry {
    max-width: 100%;
  }
  .omikuji-block-2 + .anime img {
    bottom: 0;
  }
  .valentine2402 .omikuji-anime-box .result-coupon {
    background-image: url(/stcontents/img/sub-page/lp/valentine2402/bg-coupon-pink-sp.png);
    margin-left: -10px;
    padding: 54px 0 0 20px;
    text-align: center;
    width: 360px !important;
    height: 212px;
  }
  .valentine2402 .omikuji-anime-box .omikuji-anime-2 {
    transform: translate(-50%, -31%);
  }
  .campaigns .campaign-detail .d-flex .ticket-info-tag {
    width: 85px;
    margin: 0 8px 0 0;
    white-space: nowrap;
  }
}
@media screen and (max-width: 360px){
  .valentine2402 .omikuji-anime-box .result-coupon {
    max-width: none;
    width: 300px !important;
    height: 212px;
  }
  .valentine2402 .omikuji-anime-box h1 {
    font-size: 24px;
  }
  .campaigns .campaign-detail .d-flex .ticket-info-tag + .font-x-large {
    font-size: 1.5rem;
  }
}

/* 南城市特集LP start */
.nanjoshi2401 .kv {
  height: 470px;
  margin-bottom: 40px;
  position: relative;
  overflow: hidden;
}

.nanjoshi2401 .kv::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(0deg, #002279 0%, rgba(0, 51, 181, 0.00) 64.81%);
  opacity: 0.6;
  z-index: 1;
}

.nanjoshi2401 .kv-img {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 100%;
  transform: translateY(-50%);
}

.nanjoshi2401 .kv-inner {
  position: absolute;
  bottom: 80px;
  padding: 0 40px;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 1;
}

.nanjoshi2401 .kv-ttl {
  color: #FFFFFF;
  font-size: 6.4rem;
  font-weight: 700;
  text-shadow: 1px 1px 1px #000;
  position: relative;
  display: inline-block;
}

.nanjoshi2401 .kv-ttl-sub {
  font-size: 2.4rem;
  font-weight: 400;
  margin-bottom: 0;
}

.nanjoshi2401 .kv-ttl-bg {
  position: absolute;
  z-index: -1;
  top: -40px;
  right: -180px;
}

.nanjoshi2401 .sec {
  margin-bottom: 80px;
}

.nanjoshi2401 .sec.dark {
  background-color: #333333;
  color: #fff;
  padding: 80px 0;
}

.nanjoshi2401 .sec.dark a {
  color: #fff;
  text-decoration: underline;
}

.nanjoshi2401 .sec.dark a:hover {
  text-decoration: none;
}

.nanjoshi2401 .sec.dark .anchor-link {
  margin-bottom: 24px;
  z-index: 20;
}

.nanjoshi2401 .sec.dark .anchor-link ul {
  height: auto;
  min-width: 0;
  justify-content: center !important;
}

.nanjoshi2401 .sec.dark .anchor-link .btn-anker {
  color: #fff;
  background-color: rgba( 0, 0, 0, .4);
  text-decoration: none;
  border: none;
}

.nanjoshi2401 .sec.dark .anchor-link .btn-anker.active {
  background-color: #fff;
  color: #333;
}

.nanjoshi2401 .charm p {
  font-size: 1.4rem;
  text-align: center;
}

.nanjoshi2401 .charm-map {
  margin-bottom: 8px;
}

.nanjoshi2401 .charm-map img {
  display: block;
  width: 100%;
}

.nanjoshi2401 .charm-pics {
  display: flex;
  margin-bottom: 8px;
}

.nanjoshi2401 .charm-pics-item {
  display: block;
  margin-right: 8px;
  min-width: 0;
}

.nanjoshi2401 .charm-pics-item:last-child {
  margin-right: 0;
}

.nanjoshi2401 .charm-pics-item img {
  display: block;
  width: 100%;
}

.nanjoshi2401 .model-headding {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.nanjoshi2401 .model-grade {
  margin-right: 8px;
  display: flex;
}

.nanjoshi2401 .model-grade img {
  height: 16px;
}

.nanjoshi2401 .model-grade img:not(:last-child) {
  /* margin-right: 8px; */
}

.nanjoshi2401 .model-label {
  margin-right: 8px;
  display: flex;
}

.nanjoshi2401 .model-label .tag-hoteltype-white {
  transform: scale(1);
  line-height: 16px;
  padding: 4px 10px;
  font-size: 1.2rem;
}

.nanjoshi2401 .model-name {
  margin-bottom: 0;
  font-size: 2.4rem;
}

.nanjoshi2401 .model-lead {
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.nanjoshi2401 .model:not(:last-child) {
  margin-bottom: 80px;
}

.nanjoshi2401 .model-body {
  display: flex;
}

.nanjoshi2401 .model-image {
  flex: 1;
}

.nanjoshi2401 .model-movieWrap {
  position: relative;
  max-height: 450px;
  overflow: hidden;
}

.nanjoshi2401 .model-movieWrap video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.nanjoshi2401 .model-movie {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
}

.nanjoshi2401 .model-detail {
  width: 400px;
  margin-left: 24px;
}

.nanjoshi2401 .model-pics {
  display: flex;
  margin: 16px -8px 0;
}

.nanjoshi2401 .model-pics-item {
  padding: 0 8px;
  width: calc( 100% / 3 );
}

.nanjoshi2401 .model-pics-item-head {
  height: 156px;
  margin-bottom: 8px;
}

.nanjoshi2401 .model-pics-item-head img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nanjoshi2401 .model-pics-item-body p {
  font-size: 1.4rem;
}

.nanjoshi2401 .model-course-day {
  margin-bottom: 24px;
  font-size: 1.4rem;

}

.nanjoshi2401 .model-course-day > dt,
.nanjoshi2401 .model-plan > dt {
  padding: 0 8px;
  position: relative;
  border-left: 1px solid #FF503E;
  font-weight: 700;
  line-height: 1.4;
}

.nanjoshi2401 .model-course-day > dd {
  padding-left: 22px;
}

.nanjoshi2401 .model-course-day > dd + dt {
  margin-top: 16px;
}

.nanjoshi2401 .model-plan {
  font-size: 1.4rem;
}

.nanjoshi2401 .model-course-timeschedule > dt {
  float: left;
  margin-right: 8px;
}

.nanjoshi2401 .model-course-timeschedule > dt.circle {
  position: relative;
}

.nanjoshi2401 .model-course-timeschedule > dt.circle::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #FFFFFF;
  position: absolute;
  left: -14px;
  top: 9px;
}

.nanjoshi2401 .model-course-timeschedule > dd {
  overflow: hidden;
}

.nanjoshi2401 .model-plan-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  height: 60px;
  padding: 0 16px;
  font-size: 1.6rem;
  font-weight: 900;
  background-color: rgba( 255, 255, 255, .1);
  border: 1px solid rgba( 255, 255, 255, .8);
  border-radius: 4px;
  margin: 8px 0;
  text-decoration: none !important;
}

.nanjoshi2401 .model-plan-btn:hover {
  opacity: .7;
}

.nanjoshi2401 .notes {
  color: #757575;
  font-size: 1.2rem !important;
}

.nanjoshi2401 .model .notes {
  color: #C6C6C6;
}

.nanjoshi2401 p.notes {
  padding-left: 1em;
}

.nanjoshi2401 p.notes::before {
  content: '※';
  margin-left: -1em;
}

.nanjoshi2401 ul.notes {
  padding-left: 1em;
}

.nanjoshi2401 ul.notes > li::before {
  content: '※';
  margin-left: -1em;
}

.nanjoshi2401 .notes a {
  text-decoration: underline;
}

.nanjoshi2401 .notes a:hover {
  color: #0066CC;
}

.nanjoshi2401 .pamphlet {
  width: 100%;
  height: 318px;
}

.nanjoshi2401 .pamphlet img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: none;
  object-position: right;
}

@media screen and (max-width: 767px) {
  .nanjoshi2401 .kv-img {
    height: 100%;
    top: 0 !important;
    transform: translateY(0);
    object-fit: cover;
  }

  .nanjoshi2401 .kv-inner {
    bottom: 40px;
    padding: 0 20px;
  }

  .nanjoshi2401 .kv-ttl {
    font-size: 4rem;
    line-height: 1.4;
  }

  .nanjoshi2401 .kv-ttl-sub {
    font-size: 1.6rem;
    margin-top: 8px;
    line-height: 1.8;
  }

  .nanjoshi2401 .kv-ttl-bg {
    top: -57px;
    right: 0;
  }

  .nanjoshi2401 .kv-ttl-bg img {
    width: 178px;
    height: 114px;
  }

  .nanjoshi2401 .charm-pics-item {
    height: 190px;
  }

  .nanjoshi2401 .charm-pics-item img {
    height: 100%;
    object-fit: cover;
  }

  .nanjoshi2401 .charm p {
    text-align: left;
  }

  .nanjoshi2401 .model-body {
    display: block;
    position: relative;
  }

  .nanjoshi2401 .model-detail {
    margin-left: 0;
    width: auto;
  }

  .nanjoshi2401 .model-image {
    position: relative;
    overflow: hidden;
    margin: 0 -16px 16px;
  }

  .nanjoshi2401 .model-movieWrap {
    padding: 0;
    width: auto;
    height: 100dvh;
    max-height: unset;
  }

  .nanjoshi2401.is-notLogin .model-movieWrap {
    height: calc(100dvh - 64px);
  }

  .nanjoshi2401 .model-courseWrap {
    position: absolute;
    top: calc( 100% - 160px );
    left: 0;
    right: 0;
    bottom: 0;
    padding-bottom: 70px;
    transition: all .3s;
    background: linear-gradient(to top, #000 0%, rgba(0, 0, 0, 0.00) 100%);
    display: flex;
    align-items: flex-end;
  }

  .nanjoshi2401 .model-image.is-show-timeschedule .model-courseWrap {
    top: 0;
    height: auto;
    background-color: rgba( 0, 0, 0, .7);
  }

  .nanjoshi2401 .model-course {
    height: 100%;
    overflow-y: hidden;
    padding: 16px;
    text-shadow: 1px 1px 1px #000;
  }

  .nanjoshi2401 .model-image.is-show-timeschedule .model-courseWrap .model-course {
    overflow-y: auto;
    height: fit-content;
    max-height: 100%;
  }

  .model-course-timescheduleBtn {
    color: #333;
    position: absolute;
    bottom: 24px;
    font-size: 1.6rem;
    color: #FFFFFF;
    background-color: transparent;
    padding: 8px 28px 8px 16px;
    left: 50%;
    transform: translateX(-50%);
  }

  .model-course-timescheduleBtn::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    display: block;
    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    transform: rotate(45deg);
    position: absolute;
    right: 8px;
    top: 0px;
    bottom: 5px;
    margin: auto;
  }

  .nanjoshi2401 .model-image.is-show-timeschedule .model-course-timescheduleBtn::after {
    transform: rotate(-135deg);
    top: 5px;
    bottom: 0px;
  }

  .nanjoshi2401 .model-plan-btn {
    height: 48px;
  }

  .nanjoshi2401 .model-picsWrap {
    margin: 16px -16px 0;
    overflow-x: auto;
  }

  .nanjoshi2401 .model-picsWrap::-webkit-scrollbar{
    display:none;
  }

  .nanjoshi2401 .model-pics {
    margin: 0;
    padding: 0 8px;
    width: fit-content;
  }

  .nanjoshi2401 .model-pics-item {
    min-width: 220px;
  }

  .nanjoshi2401 .pamphlet {
    width: 100%;
    height: auto;
  }

  .nanjoshi2401 .pamphlet img {
    max-width: 343px;
    height: auto;
    object-fit: unset;
    margin: auto;
  }
}

@media screen and (max-width: 1199px) {
  .nanjoshi2401 .kv-img {
    height: 100%;
    top: 0 !important;
    transform: translateY(0);
    object-fit: cover;
  }
}


/* 南城市特集LP end */

/* 2024年-強羅花扇特集LP start */
.special2024-event01 main {
  color: #333333;
  letter-spacing: 1px;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  word-break: break-word;
  font-family: "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","MS Gothic","ＭＳ ゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
  -moz-osx-font-smoothing: grayscale;
  font-size: 13px;
  line-height: 1.5;
  overflow: hidden;
}
.special2024-event01 .kv {
  height: 470px;
  position: relative;
  overflow: hidden;
}
.special2024-event01 .kv::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0.00) 100%);
  opacity: 0.8;
  width: 100%;
  z-index: 1;
}
.special2024-event01 .kv-img {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 100%;
  transform: translateY(-50%);
}
.special2024-event01 .kv-inner {
  position: absolute;
  bottom: 80px;
  padding: 0 40px;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 1;
}
.special2024-event01 .kv-ttl {
  color: #FFFFFF;
  font-size: 4rem;
  font-weight: 600;
  text-shadow: 1px 1px 1px #000;
  font-family: "Hiragino Mincho ProN";
}
.special2024-event01 .kv-ttl-sub {
  font-size: 2.4rem;
  font-weight: normal;
  text-shadow: 1px 1px 1px #000;
  margin-top: 16px;
  margin-bottom: 0;
}
.special2024-event01 .sec {
  margin-bottom: 40px;
}
.special2024-event01 section .container-first,
.special2024-event01 section .container {
  max-width: 1000px;
  padding: 0;
  box-sizing: border-box;
  margin: auto;
}
.special2024-event01 section .container-first {
  margin: 24px auto 40px;
}
.special2024-event01 .lead__description {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 1000px;
  margin: 0 auto 40px;
  min-width: 280px;
}
.special2024-event01 div.lead__description .sub_title,
.special2024-event01 div.lead__description .sub_title-first {
  font-size: 2.2rem;
  font-weight: 600;
  font-family: "Hiragino Mincho ProN";
  letter-spacing: 1px;
  padding-top: 0;
  margin-bottom: 0;
  width: 100%;
}
.special2024-event01 div.lead__description .sub_title {
  font-size: 2.6rem;
}
.special2024-event01 div.lead__description p {
  color: #333;
  font-size: 1.6rem;
  font-weight: 300;
  font-family: "Hiragino Mincho ProN";
  line-height: 1.8;
  letter-spacing: 1px;
}
.special2024-event01 div.lead__description p.text {
  max-width: 100%;
  margin-top: 16px;
  margin-bottom: 0;
}
.special2024-event01 div.lead__description p.sold-out {
  background-color: #F5F5F5;
  font-size: 2rem;
  font-weight: 600;
  padding: 40px 50px;
}
.special2024-event01 .notes {
  color: #757575 !important;
  font-size: 1.2rem !important;
  margin: 8px 0 0;
}
.special2024-event01 .plan-pics {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
.special2024-event01 .plan-pics-item {
  display: block;
  margin-right: 2px;
  margin-top: 24px;
  min-width: 0;
  max-height: 340px;
  overflow: hidden;
}
.special2024-event01 .inn-pics {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin: 16px -8px 8px;
}
.special2024-event01 .inn-pics-item
 {
  display: flex;
  padding: 0 8px;
}
.special2024-event01 .inn-pics-item img {
  margin-right: 2px;
}
.special2024-event01 .profile-pics,
.special2024-event01 .profile-pics02 {
  display: flex;
  align-items: center;
}
.special2024-event01 .profile-pics-item {
  display: block;
  margin-top: 24px;
  margin-left: 40px;
}
.special2024-event01 .profile-pics-item02 {
  display: block;
  margin-top: 24px;
  margin-right: 40px;
}
.special2024-event01 .profile-pics-item img,
.special2024-event01 .profile-pics-item02 img
 {
  width: 308px;
  height: auto;
}
.special2024-event01 .sp-only-sm {
  display: none;
}
.special2024-event01 .sp-only-md {
  display: none;
}

/* 下部固定フロートバー専用-active-event01-pc */
.special2024-event01 .float-bar.active-event01 {
  -webkit-transform: none;
          transform: none;
  padding: 8px 16px;
  padding: 16px;
  -webkit-transition: none;
  transition: none;
}
.special2024-event01 .float-bar .contents,
.special2024-event01 .float-bar.active-event01 .contents {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
.special2024-event01 .float-bar .contents p,
.special2024-event01 .float-bar.active-event01 .contents p {
  display: inline-block;
  margin: 8px 16px 8px;
  white-space: nowrap;
}
.special2024-event01 .float-bar .float-btn-block a,
.special2024-event01 .float-bar.active-event01 .float-btn-block a {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  vertical-align: middle;
}
.special2024-event01 .float-bar .float-btn-block a span,
.special2024-event01 .float-bar.active-event01 .float-btn-block a span {
  width: 100%;
  display: block;
  margin-bottom: -12px;
  font-size: 10px;
  font-weight: normal;
}
/* /下部固定フロートバー専用-active-event01-pc */

@media screen and (max-width: 767px) {
  .special2024-event01 .kv-inner {
    bottom: 40px;
    padding: 0 16px;
  }
  .special2024-event01 .kv-ttl {
    font-size: 3.2rem;
    line-height: 1;
  }
  .special2024-event01 .kv-ttl span {
    font-size: 2.6rem;
  }
  .special2024-event01 .kv-ttl-sub {
    font-size: 1.6rem;
    padding-top: 16px;
  }
  .special2024-event01 section .container-first {
    padding: 0 16px;
  }
  .special2024-event01 section .container {
    margin: 40px auto;
    padding: 0 16px;
  }
  .special2024-event01 div.lead__description .sub_title-first {
  font-size: 2rem;
  }
  .special2024-event01 div.lead__description .sub_title {
  font-size: 2.4rem;
  }
  .special2024-event01 div.lead__description p.sold-out {
    font-size: 1.6rem;
    padding: 40px 16px;
  }
  .special2024-event01 .notes {
    margin: 4px 0 0;
  }
  .special2024-event01 .plan-pics {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    margin-top: -2px;
  }
  .special2024-event01 .plan-pics-item {
    display: block;
    margin-top: 16px;
    margin-bottom: -2px;
    margin-right: 0;
    margin-left: 0;
    min-width: 0;
    max-height: 340px;
    overflow: hidden;
  }
  .special2024-event01 .plan-pics-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .special2024-event01 .plan-pics-item02 {
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .special2024-event01 .plan-pics-item02 img {
    width: 100%;
    height: 100%;
    margin-left: 4px;
    margin-left: 0;
    object-fit: cover;
  }
  .special2024-event01 .plan-pics-item02:nth-child(2) {
    margin-left: 2px;
  }
  .special2024-event01 .inn-picsWrap {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    /* margin-right: calc(50% - 50vw); */
    margin: 0 -16px 0 0;
  }
  .special2024-event01 .inn-pics {
    margin: 16px 16px 0 -16px;
    overflow-x: auto;
  }
  .special2024-event01 .inn-pics::-webkit-scrollbar{
    display:none;
  }
  .special2024-event01 .inn-pics-item
   {
    padding: 0;
    margin: 0 16px;
  }
  .special2024-event01 .inn-pics-item img
   {
    max-width: 320px;
    width: 100%;
    height: auto;
    margin-right: 2px;
  }
  .special2024-event01 .inn-pics-item img:last-child {
    margin-right: 16px;
  }
  .special2024-event01 .profile-pics {
    flex-direction: column-reverse;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .special2024-event01 .profile-pics02 {
    flex-direction: column;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .special2024-event01 .profile-pics-item
   {
    display: block;
    margin-top: 16px;
    margin-left: 0;
    width: 308px;
    height : auto;
  }
  .special2024-event01 .profile-pics-item02
   {
    display: block;
    margin-top: 16px;
    margin-right: 0;
    width: 308px;
    height : auto;
  }
  .special2024-event01 .profile-pics-item img,
  .special2024-event01 .profile-pics-item02 img {
    width: 100%;
    height: auto;
  }
  .special2024-event01 .sp-only-md {
    display: block;
  }

  /* 下部固定フロートバー専用-active-event01-sp */
  .special2024-event01 .float-bar.active-event01 {
    padding: 8px 16px 24px;
  }
  .special2024-event01 .float-bar .contents,
  .special2024-event01 .float-bar.active-event01 .contents {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: auto;
  }
  .special2024-event01 .float-bar .contents p,
  .special2024-event01 .float-bar.active-event01 .contents p {
    margin-top: 0;
  }
  .special2024-event01 .float-bar .float-btn-block,
  .special2024-event01 .float-bar.active-event01 .float-btn-block {
    width: 100%;
    height: auto;
  }
  .special2024-event01 .float-bar .float-btn-block a, .special2024-event01 .float-bar.active-event01 .float-btn-block a {
    width: 100%;
  }
  .special2024-event01 .float-bar .float-btn-block a span,
  .special2024-event01 .float-bar.active-event01 .float-btn-block a span {
    font-size: 8px;
  }
  /* /下部固定フロートバー専用-active-event01-sp */

}

@media screen and (max-width: 340px) {
  .special2024-event01 .sp-only-sm {
    display: block;
  }
  .special2024-event01 .sp-only-md {
    display: none;
  }
  .special2024-event01 .kv-ttl span {
    font-size: 2.2rem;
  }
  .special2024-event01 .kv-ttl-sub {
    white-space: nowrap;
  }
}

@media screen and (max-width: 1199px) {
  .special2024-event01 .kv-img {
    height: 100%;
    top: 0 !important;
    transform: translateY(0);
    object-fit: cover;
  }
}
/* 2024年-強羅花扇特集LP end */


/* 貸別荘LP start  */
.vacation-rental2312 .key-visual {
  height: 520px;
  margin-bottom: 24px;
  position: relative;
  background: none;
  margin-left: -16px!important;
  margin-top: -86px;
}

.vacation-rental2312 .inner2 {
  bottom: 250px!important;
}
.vacation-rental2312 .inner-wrap {
  position: relative;
}
.vacation-rental2312 .inner-coupon-wrap {
  width: 556px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 16px 0;
  white-space: nowrap;
  font-weight: bold;
}
.vacation-rental2312 .inner-coupon-item1 {
  display: block;
  width: 54px;
  padding: 10px 0;
  letter-spacing: 1px;
}
.vacation-rental2312 .inner-coupon-item2 {
  display: block;
  width: 260px;
  font-size: 2.4rem;
  letter-spacing: 1px;
}
.vacation-rental2312 .inner-coupon-item3 {
  display: block;
  width: 168px;
  padding: 4px;
  text-align: center;
  background-color: #F5F5F5;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 1px;
}
.vacation-rental2312 .inner-coupon-item4 {
  color: #fff;
  cursor: pointer;
  display: block;
  width: 64px;
  padding: 4px 8px;
  background-color: #0F0A64;
  border: 1px solid #0F0A64;
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 1px;
}
.vacation-rental2312 .inner-coupon-item4:hover {
  color: #fff;
  text-decoration: none;
  background-color: #554B98;
  border-color: #554B98;
}

input:focus,button:focus{
  outline: 0;
}

.vacation-rental2312 .inner-content .notes-wrap .notes {
  color: #333333;
}
.vacation-rental2312 .inner-content .notes-wrap .notes span {
  color: #CE0000;
}
.vacation-rental2312 .inner-container {
  position: absolute;
  top: 50%;
  left: 50%;
  /* transform: translate(-47%,-47%); */
  transform: translate(-47%,-86%);
}
.vacation-rental2312 .inner-content {
  color: #0F0A64;
  text-shadow: none;
  text-align: center;
}
.vacation-rental2312 .common-toast {
  height: 56px;
}
.vacation-rental2312 .common-toast > p {
  font-size: 2rem;
  padding: 10px;
}

/* 貸別荘LP(sp) */
@media screen and (max-width: 767px) {
  .vacation-rental2312 .key-visual,
  .vacation-rental2312 .key-visual-complete .key-visual {
    height: initial !important;
    max-height: 90vh;
    margin-bottom: 0;
    margin-top: 0;
    margin-left: -10px!important;
    position: relative;
  }

  .vacation-rental2312 .complete-only {
    position: initial;
  }

  .vacation-rental2312 .inner-wrap {
    position: relative;
  }
  .vacation-rental2312 .inner-container {
    position: initial;
    top: initial;
    left : initial;
    transform: initial;
  }
  .vacation-rental2312 .inner-coupon-wrap {
    display: block;
    width: 100%;
    padding: 0;
  }
  .vacation-rental2312 .coupon-item-wrap {
    display: flex;
    justify-content: center;
    width: 321px;
  }
  .vacation-rental2312 .coupon-item-wrap:nth-child(2n) {
    padding-bottom: 16px;
  }
  .vacation-rental2312 .inner-coupon-item1 {
    width: 62px;
    font-size: 1.4rem;
    display: flex;
  }
  .vacation-rental2312 .inner-coupon-item2 {
    width: 204px;
    font-size: 2rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .vacation-rental2312 .inner-coupon-item3 {
    width: 233px;
    font-size: 1.4rem;
  }
  .vacation-rental2312 .inner-content .notes-wrap .notes {
    letter-spacing: 0;
    line-height: 18px;
    font-size: 1.2rem;
  }
  .vacation-rental2312 .common-toast {
    height: 40px;
  }
  .vacation-rental2312 .common-toast > p {
    font-size: 1.6rem;
    padding: 5px;
  }
}
/* 貸別荘LP end */

/* フッター下に無駄な余白をなくす(topページ) */
body.index {
  background-color: #303233; /* フッターと同じ色 */
}
.index main {
  background-color: #fff;
}
/* フッター下に無駄な余白をなくす(topページ) end */


/* 詳細画面と同じスタイル */
.p-content-head {
    width: 100%;
    margin-bottom: 3.125rem;
}
.p-content-head__info {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-bottom: 1.875rem;
}
.p-content-head__info i {
    display: block;
    font-size: 1.75rem;
}
.fa-solid, .fas {
    font-weight: 900;
}
.fa-regular, .far {
    font-weight: 400;
}
.p-content-head__title {
    font-size: 3.75rem;
    line-height: 1.2;
    margin: 0.2em 0 0.6em;
}
.p-content-head__subtitle {
    font-size: 1.125rem;
    line-height: 1.2;
}
.p-content-head__address {
    font-size: 1.25rem;
    line-height: 1.2;
    text-decoration: underline;
}

@media screen and (max-width: 834px) {
    .p-content-head__info i {
        font-size: 1.375rem;
    }
    .p-content-head__title {
        font-size: 2.25rem;
        margin-top: 0.3em;
    }
    .p-content-head__subtitle {
        font-size: 0.875rem;
    }
    .p-content-head__address {
        font-size: 1rem;
    }
}

@media screen and (max-width: 480px) {
    .p-content-head {
        margin-bottom: 1.875rem;
    }
}
