@charset "UTF-8";
@import 'https://fonts.googleapis.com/css?family=Roboto+Condensed:700|Roboto:300,400,500';
@import url("https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
html, body, div, span, hr, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: '';
  content: none;
}

q:before, q:after {
  content: '';
  content: none;
}

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

a {
  text-decoration: none;
  outline: none;
}

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 200;
  src: url("/english/assets/fonts/NotoSansCJKjp-Light.eot");
  src: local("NotoSansCJKjp-Light"), url("/english/assets/fonts/NotoSansCJKjp-Light.eot?#iefix") format("embedded-opentype"), url("/english/assets/fonts/NotoSansCJKjp-Light.woff2") format("woff2"), url("/english/assets/fonts/NotoSansCJKjp-Light.woff") format("woff"), url("/english/assets/fonts/NotoSansCJKjp-Light.ttf") format("truetype"), url("/english/assets/fonts/NotoSansCJKjp-Light.svg#svgFontName") format("svg");
}

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 300;
  src: url("/english/assets/fonts/NotoSansCJKjp-DemiLight.eot");
  src: local("NotoSansCJKjp-DemiLight"), url("/english/assets/fonts/NotoSansCJKjp-DemiLight.eot?#iefix") format("embedded-opentype"), url("/english/assets/fonts/NotoSansCJKjp-DemiLight.woff2") format("woff2"), url("/english/assets/fonts/NotoSansCJKjp-DemiLight.woff") format("woff"), url("/english/assets/fonts/NotoSansCJKjp-DemiLight.ttf") format("truetype"), url("/english/assets/fonts/NotoSansCJKjp-DemiLight.svg#svgFontName") format("svg");
}

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("/english/assets/fonts/NotoSansCJKjp-Regular.eot");
  src: local("NotoSansCJKjp-Regular"), url("/english/assets/fonts/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("/english/assets/fonts/NotoSansCJKjp-Regular.woff2") format("woff2"), url("/english/assets/fonts/NotoSansCJKjp-Regular.woff") format("woff"), url("/english/assets/fonts/NotoSansCJKjp-Regular.ttf") format("truetype"), url("/english/assets/fonts/NotoSansCJKjp-Regular.svg#svgFontName") format("svg");
}

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 500;
  src: url("/english/assets/fonts/NotoSansCJKjp-Medium.eot");
  src: local("NotoSansCJKjp-Medium"), url("/english/assets/fonts/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("/english/assets/fonts/NotoSansCJKjp-Medium.woff2") format("woff2"), url("/english/assets/fonts/NotoSansCJKjp-Medium.woff") format("woff"), url("/english/assets/fonts/NotoSansCJKjp-Medium.ttf") format("truetype"), url("/english/assets/fonts/NotoSansCJKjp-Medium.svg#svgFontName") format("svg");
}

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 700;
  src: url("/english/assets/fonts/NotoSansCJKjp-Bold.eot");
  src: local("NotoSansCJKjp-Bold"), url("/english/assets/fonts/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("/english/assets/fonts/NotoSansCJKjp-Bold.woff2") format("woff2"), url("/english/assets/fonts/NotoSansCJKjp-Bold.woff") format("woff"), url("/english/assets/fonts/NotoSansCJKjp-Bold.ttf") format("truetype"), url("/english/assets/fonts/NotoSansCJKjp-Bold.svg#svgFontName") format("svg");
}

/* datepicker */
@media only screen and (min-width: 961px) {
  #ui-datepicker-div {
    position: absolute !important;
    display: none;
    background-color: #dcdcdc;
    width: 750px !important;
    padding: 20px 78px;
    top: 370px !important;
    left: 30px !important;
    bottom: auto !important;
    right: auto !important;
  }
  .ui-datepicker-header {
    text-align: center;
  }
  .ui-datepicker-prev,
  .ui-datepicker-next {
    position: absolute;
    top: 50%;
    content: "";
    display: block;
    width: 44px;
    height: 54px;
    margin-top: -27px;
    text-indent: -9999px;
    overflow: hidden;
  }
  .ui-datepicker-prev:hover,
  .ui-datepicker-next:hover {
    cursor: pointer;
  }
  .ui-datepicker-prev.ui-state-disabled:hover,
  .ui-datepicker-next.ui-state-disabled:hover {
    opacity: 1.0;
    cursor: default;
  }
  .ui-datepicker-prev {
    left: 17px;
    background: url("/english/assets/img/btn_carousel_wht_l.png") center no-repeat;
    background-size: 44px auto;
  }
  .ui-datepicker-prev.ui-state-disabled {
    background: url("/english/assets/img/btn_carousel_disable_l.png") center no-repeat;
    background-size: 44px auto;
  }
  .ui-datepicker-next {
    right: 17px;
    background: url("/english/assets/img/btn_carousel_wht_r.png") center no-repeat;
    background-size: 44px auto;
  }
  .ui-datepicker-next.ui-state-disabled {
    background: url("/english/assets/img/btn_carousel_disable_r.png") center no-repeat;
    background-size: 44px auto;
  }
  .ui-datepicker-group {
    float: right;
    width: 287px;
  }
  .ui-datepicker-group:first-child {
    float: left;
  }
  .ui-datepicker-title {
    font-size: 1.4rem;
    font-weight: 500;
  }
  .ui-datepicker-calendar {
    width: 100%;
    text-align: center;
    margin-top: 7px;
  }
  .ui-datepicker-calendar thead th {
    color: #fff;
    background-color: #333333;
    padding: 7px 0 6px;
  }
  .ui-datepicker-calendar thead th:first-child {
    background-color: #8c6868;
  }
  .ui-datepicker-calendar thead th:last-child {
    background-color: #68788c;
  }
  .ui-datepicker-calendar tbody tr {
    border-top: 1px solid #ccc;
  }
  .ui-datepicker-calendar tbody tr:first-child {
    border-top: none;
  }
  .ui-datepicker-calendar tbody td {
    padding: 10px 0 8px;
    border-right: 1px solid #ccc;
    background-color: #fff;
  }
  .ui-datepicker-calendar tbody td:hover {
    cursor: pointer;
  }
  .ui-datepicker-calendar tbody td:first-child a {
    color: #8c6868;
  }
  .ui-datepicker-calendar tbody td:last-child {
    border-right: none;
  }
  .ui-datepicker-calendar tbody td:last-child a {
    color: #2f62a2;
  }
  .ui-datepicker-calendar tbody td.ui-datepicker-unselectable, .ui-datepicker-calendar tbody td.ui-state-disabled {
    background-color: #eaeaea;
    color: #999;
  }
  .ui-datepicker-calendar tbody td.ui-datepicker-unselectable:hover, .ui-datepicker-calendar tbody td.ui-state-disabled:hover {
    cursor: default;
  }
}

@media only screen and (max-width: 960px) {
  #ui-datepicker-div {
    display: none;
    background-color: #dcdcdc;
    width: 296px !important;
    padding: 21px 5px 6px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.35);
    top: 50% !important;
    left: 50% !important;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
  }
  .ui-datepicker-header {
    text-align: center;
  }
  .ui-datepicker-prev,
  .ui-datepicker-next {
    position: absolute;
    top: 14px;
    content: "";
    display: block;
    width: 38px;
    height: 38px;
    text-indent: -9999px;
    overflow: hidden;
  }
  .ui-datepicker-prev {
    left: 17px;
    background: url("/english/assets/img/btn_carousel_wht_s_l.png") center no-repeat;
    background-size: 38px auto;
  }
  .ui-datepicker-prev.ui-state-disabled {
    background: url("/english/assets/img/btn_carousel_disable_s_l.png") center no-repeat;
    background-size: 38px auto;
  }
  .ui-datepicker-next {
    right: 17px;
    background: url("/english/assets/img/btn_carousel_wht_s_r.png") center no-repeat;
    background-size: 38px auto;
  }
  .ui-datepicker-next.ui-state-disabled {
    background: url("/english/assets/img/btn_carousel_disable_r.png") center no-repeat;
    background-size: 38px auto;
  }
  .ui-datepicker-group {
    float: right;
    width: 287px;
  }
  .ui-datepicker-group:first-child {
    float: left;
  }
  .ui-datepicker-title {
    font-size: 2.0rem;
    font-weight: 500;
  }
  .ui-datepicker-calendar {
    width: 100%;
    text-align: center;
    margin-top: 21px;
  }
  .ui-datepicker-calendar thead th {
    color: #fff;
    background-color: #333333;
    padding: 6px 0 6px;
    font-size: 1.2rem;
  }
  .ui-datepicker-calendar thead th:first-child {
    background-color: #8c6868;
  }
  .ui-datepicker-calendar thead th:last-child {
    background-color: #68788c;
  }
  .ui-datepicker-calendar tbody tr {
    border-top: 1px solid #ccc;
  }
  .ui-datepicker-calendar tbody tr:first-child {
    border-top: none;
  }
  .ui-datepicker-calendar tbody td {
    padding: 14px 0 13px;
    border-right: 1px solid #ccc;
    background-color: #fff;
    font-size: 1.4rem;
  }
  .ui-datepicker-calendar tbody td.ui-datepicker-unselectable, .ui-datepicker-calendar tbody td.ui-state-disabled {
    background-color: #eaeaea;
    color: #999;
  }
  .ui-datepicker-calendar tbody td:first-child a {
    color: #8c6868;
  }
  .ui-datepicker-calendar tbody td:last-child {
    border-right: none;
  }
  .ui-datepicker-calendar tbody td:last-child a {
    color: #2f62a2;
  }
}

@media only screen and (min-width: 768px) and (max-width: 960px) {
  #ui-datepicker-div {
    display: none;
    width: 592px !important;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

html.is-loading {
  overflow: hidden;
}

body {
  font-family: "Roboto", "NotoSansCJKjp", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  color: #000;
}

html[lang="en"] body {
  font-family: "Barlow", "NotoSansCJKjp", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", YuGothic, "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

a {
  color: #000;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
          appearance: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.js-tab_cont {
  display: none;
}

.js-tab_cont.is-show {
  display: block;
}

.common_loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.common_loading .common_loading_logo {
  position: absolute;
  top: 45%;
  left: 50%;
  width: 130px;
  overflow: hidden;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
}

.common_loading .common_loading_logo img {
  width: 100%;
}

.common_loading .common_loading_mask {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: white;
}

.common_loading .common_loading_mask:after {
  position: absolute;
  bottom: -29px;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 30px;
  background: linear-gradient(white 0, rgba(255, 255, 255, 0.7) 70%, rgba(255, 255, 255, 0) 100%);
}

.common_lazyloader {
  padding: 20px 0 40px;
  transition: opacity 0.2s ease-in-out;
}

.common_lazyloader.is-hide {
  opacity: 0;
}

.common_lazyloader .common_lazyloader_dot,
.common_lazyloader .common_lazyloader_dot:before,
.common_lazyloader .common_lazyloader_dot:after {
  border-radius: 50%;
  width: 12px;
  height: 12px;
  animation-fill-mode: both;
  animation: loading-anime 1.8s infinite ease-in-out;
}

.common_lazyloader .common_lazyloader_dot {
  color: #b0b0b0;
  margin: 0 auto;
  position: relative;
  text-indent: -9999em;
  transform: translateZ(0);
  animation-delay: -0.16s;
}

.common_lazyloader .common_lazyloader_dot:before, .common_lazyloader .common_lazyloader_dot:after {
  content: '';
  position: absolute;
  top: 0;
}

.common_lazyloader .common_lazyloader_dot:before {
  left: -20px;
  animation-delay: -0.32s;
}

.common_lazyloader .common_lazyloader_dot:after {
  left: 20px;
}

@keyframes loading-anime {
  0%,
  80%,
  100% {
    box-shadow: 0 12px 0 -8px;
  }
  40% {
    box-shadow: 0 12px 0 0;
  }
}

@media only screen and (min-width: 961px) {
  a,
  button {
    transition: opacity 0.3s ease-in-out;
  }
  a:hover,
  button:hover {
    opacity: 0.6;
  }
  .breadcrumb ul li a:hover {
    opacity: 1.0;
    color: #4c4c4c;
    text-decoration: underline;
  }
  .common_tab ul li a {
    transition: all 0.3s ease-in-out;
  }
  .common_tab ul li a:hover {
    opacity: 1.0;
    color: #fff;
    background-color: #4c4c4c;
  }
  .hover-text-blk {
    color: #000;
  }
  .hover-text-blk:hover {
    opacity: 1.0;
    color: #4c4c4c;
    text-decoration: underline;
  }
  .hover-text-detail {
    transition: all 0.1s ease-in-out;
  }
  .hover-text-detail:hover {
    border-color: transparent !important;
  }
  .hover-roundBtn {
    transition: all 0.3s ease-in-out;
    color: #000;
    background-color: #fff;
  }
  .hover-roundBtn:hover {
    opacity: 1.0;
    color: #fff !important;
    background-color: #000 !important;
  }
  .cont {
    padding-top: 75px;
  }
  .cont.is-header-fixed {
    padding-top: 150px;
  }
  .header-simple + .cont {
    padding-top: 0;
  }
  .header-simple + .cont.is-header-fixed {
    padding-top: 75px;
  }
}

@media only screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
  .section_ttl {
    font-size: 3.2rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .section_ttl_sub {
    text-align: center;
    margin-bottom: 20px;
  }
  .section_ttl_sub span {
    font-size: 1.8rem;
    font-weight: 700;
    display: inline-block;
    border-bottom: 2px solid #000;
    padding: 0 3px 4px;
    box-sizing: content-box;
  }
  .section_ttl_sub span img {
    width: 100%;
  }
  .section_ttl_membership {
    font-size: 3.2rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-align: center;
  }
  .section_ttl_membership > span {
    display: inline-block;
  }
  .section_ttl_membership_sub {
    text-align: center;
    margin-bottom: 47px;
  }
  .section_ttl_membership_sub p {
    display: inline-block;
    text-align: center;
    border-top: 3px solid #000;
    border-bottom: 3px solid #000;
  }
  .section_ttl_membership_sub p span {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    height: 48px;
    line-height: 46px;
    padding: 0 25px;
    margin: 2px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
  }
  .section_ttl_membership_sub p span img {
    width: 322px;
  }
  .breadcrumb {
    margin-top: 105px;
    border-top: 1px solid #e5e5e5;
  }
  .breadcrumb ul {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
    height: 50px;
    overflow: hidden;
  }
  .breadcrumb ul li {
    float: left;
    font-size: 1.2rem;
    display: inline-block;
    padding-right: 27px;
    position: relative;
  }
  .breadcrumb ul li:after {
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    display: block;
    background: url("/english/assets/img/arrow_breadcrumb.png") 0 0 no-repeat;
    background-size: 27px auto;
    width: 27px;
    height: 50px;
  }
  .breadcrumb ul li:first-child a {
    padding-left: 0;
  }
  .breadcrumb ul li img {
    position: relative;
    top: -4px;
    margin-right: 10px;
    vertical-align: middle;
  }
  .breadcrumb ul li a,
  .breadcrumb ul li span {
    vertical-align: middle;
    line-height: 51px;
    padding-top: 3px;
    padding-right: 19px;
    padding-left: 20px;
    display: block;
    width: 100%;
    height: 100%;
  }
  .pagetop {
    display: none;
    position: relative;
    width: 100%;
  }
  .pagetop_inner {
    position: fixed;
    bottom: 100px;
    right: 30px;
  }
  .pagetop a {
    position: relative;
    display: block;
    width: 52px;
    height: 52px;
    background-color: rgba(0, 0, 0, 0.8);
    border-radius: 26px;
    box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.7);
    text-indent: -9999px;
  }
  .pagetop a:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    content: "";
    display: block;
    background: url("/english/assets/img/cursor_pagetop.png") 0 0 no-repeat;
    background-size: 18px auto;
    width: 18px;
    height: 18px;
  }
  .common_tab {
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .common_tab ul {
    max-width: 760px;
    margin: 0 auto;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
  }
  .common_tab ul li {
    -ms-flex: 1;
        flex: 1;
  }
  .common_tab ul li:last-child a {
    border-right: 2px solid #333;
  }
  .common_tab ul li a {
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.14em;
    line-height: 1.3;
    background-color: #fff;
    color: #333;
    border-top: 2px solid #333;
    border-bottom: 2px solid #333;
    border-left: 2px solid #333;
  }
  .common_tab ul li a.is-show {
    background-color: #333;
    color: #fff;
  }
  .common_tab ul li a.is-show:hover {
    cursor: default;
  }
  .common_section_inner {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto 0;
  }
  .common_event_carousel .common_event_carousel_list {
    width: 100%;
    max-width: 1044px;
    margin: 0 auto 0;
  }
  .common_event_carousel .common_event_carousel_list.is-item-1 {
    max-width: 305px;
  }
  .common_event_carousel .common_event_carousel_list.is-item-2 {
    max-width: 610px;
  }
  .common_event_carousel .common_event_carousel_list.is-item-3 {
    padding: 0 5.3%;
  }
  .common_event_carousel .common_event_carousel_list li {
    padding: 0 30px;
  }
  .common_event_carousel .common_event_carousel_list li:first-child {
    margin-left: 0;
  }
  .common_event_carousel .common_event_carousel_list li a {
    display: block;
  }
  .common_event_carousel .common_event_carousel_list li figure img {
    width: 100%;
  }
  .common_event_carousel .common_event_carousel_list .slick-prev,
  .common_event_carousel .common_event_carousel_list .slick-next {
    position: absolute;
    top: 30%;
    content: "";
    display: block;
    width: 38px;
    height: 48px;
    text-indent: -9999px;
    overflow: hidden;
    z-index: 1;
  }
  .common_event_carousel .common_event_carousel_list .slick-prev.slick-disabled,
  .common_event_carousel .common_event_carousel_list .slick-next.slick-disabled {
    opacity: 0;
    cursor: default;
  }
  .common_event_carousel .common_event_carousel_list .slick-prev {
    left: 0;
    background: url("/english/assets/img/btn_carousel_blk_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .common_event_carousel .common_event_carousel_list .slick-next {
    right: 0;
    background: url("/english/assets/img/btn_carousel_blk_r.png") 0 0 no-repeat;
    background-size: cover;
  }
  .common_event_carousel .common_event_carousel_catch {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 12px;
  }
  .common_event_carousel .common_event_carousel_catch + .common_event_carousel_date {
    margin-top: 12px;
  }
  .common_event_carousel .common_event_carousel_place {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .common_event_carousel .common_event_carousel_date {
    font-size: 1.2rem;
    margin-top: 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .fixed_floating_menu {
    position: fixed;
    right: -145px;
    top: 40%;
    width: 125px;
    height: 180px;
    z-index: 10;
    color: #fff;
    letter-spacing: 0.1em;
    text-align: center;
    transition: right 0.5s ease-in-out;
  }
  .fixed_floating_menu.is-show {
    right: 0;
  }
  .fixedreserve {
    height: 180px;
  }
  .fixedreserve a {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    padding-top: 30px;
    background-color: rgba(0, 0, 0, 0.8);
    transition: background-color 0.3s ease-in-out;
  }
  .fixedreserve a:hover {
    opacity: 1.0;
    background-color: rgba(208, 0, 0, 0.8);
  }
  .fixedreserve img {
    width: 20px;
  }
  .fixedreserve_ttl {
    font-size: 1.4rem;
    font-weight: 500;
    margin-top: 12px;
    letter-spacing: 0.05em;
  }
  .fixedreserve_subttl {
    font-size: 1.2rem;
    font-weight: 300;
    margin-top: 8px;
  }
  .fixedreserve_btn {
    margin-top: 20px;
    display: inline-block;
    width: 95px;
    height: 26px;
    border: 1px solid #fff;
    line-height: 24px;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    font-family: "NotoSansCJKjp", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  }
  .fixedregistration {
    height: 80px;
    margin-top: 20px;
  }
  .fixedregistration a {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    padding-top: 10px;
    background-color: rgba(0, 0, 0, 0.8);
    transition: background-color 0.3s ease-in-out;
  }
  .fixedregistration a:hover {
    opacity: 1.0;
    background-color: rgba(208, 0, 0, 0.8);
  }
  .fixedregistration img {
    width: 30px;
  }
  .fixedregistration_btn {
    margin-top: 10px;
    display: inline-block;
    width: 95px;
    height: 26px;
    border: 1px solid #fff;
    line-height: 24px;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    font-family: "NotoSansCJKjp", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  }
}

@media only screen and (max-width: 960px) {
  html.is-hidden {
    -webkit-overflow-scrolling: touch !important;
    overflow: hidden;
    height: 100%;
  }
  body.is-hidden {
    position: relative;
    overflow: hidden;
    height: 100%;
  }
  .cont {
    padding-top: 65px;
  }
  .fixedreserve {
    display: none;
  }
  .fixedregistration {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
  .common_loading .common_loading_logo {
    top: 45%;
    left: 50%;
    width: 90px;
  }
  .common_event_carousel .common_event_carousel_list {
    overflow: hidden;
  }
  .common_event_carousel .common_event_carousel_list li {
    width: 185px;
    margin: 0 10px;
  }
  .common_event_carousel .common_event_carousel_list li a {
    display: block;
  }
  .common_event_carousel .common_event_carousel_list li figure img {
    width: 100%;
  }
  .common_event_carousel .common_event_carousel_catch {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 7px;
  }
  .common_event_carousel .common_event_carousel_catch + .common_event_carousel_date {
    margin-top: 5px;
  }
  .common_event_carousel .common_event_carousel_place {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 5px;
  }
  .common_event_carousel .common_event_carousel_date {
    font-size: 8px;
    margin-top: 2px;
  }
  .section_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .section_ttl_sub {
    text-align: center;
    margin-bottom: 10px;
  }
  .section_ttl_sub span {
    font-size: 1.2rem;
    font-weight: 700;
    display: inline-block;
    border-bottom: 2px solid #000;
    padding: 0 3px 4px;
    box-sizing: content-box;
  }
  .section_ttl_sub span img {
    width: 100%;
  }
  .section_ttl_membership {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-align: center;
  }
  .section_ttl_membership > span {
    display: inline-block;
  }
  .section_ttl_membership > span:last-child {
    margin-top: -5px;
  }
  .section_ttl_membership > span img {
    margin-right: 3px;
  }
  .section_ttl_membership_sub {
    text-align: center;
    margin-bottom: 22px;
  }
  .section_ttl_membership_sub p {
    display: inline-block;
    text-align: center;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
  }
  .section_ttl_membership_sub p span {
    display: block;
    font-size: 1.2rem;
    font-weight: 700;
    height: 30px;
    line-height: 28px;
    padding: 0 32px;
    margin: 2px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
  }
  .section_ttl_membership_sub p span img {
    width: 216px;
  }
  .cont {
    padding-top: 54px;
  }
  .pagetop {
    display: none !important;
  }
  .common_tab ul {
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
  }
  .common_tab ul li {
    -ms-flex: 1;
        flex: 1;
  }
  .common_tab ul li:first-child a {
    border-left: none;
  }
  .common_tab ul li a {
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    font-size: 1.2rem;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.14em;
    line-height: 1.28;
    background-color: #fff;
    color: #333;
    border-top: 2px solid #333;
    border-bottom: 2px solid #333;
    border-left: 2px solid #333;
  }
  .common_tab ul li a.is-show {
    background-color: #333;
    color: #fff;
  }
}

@media only screen and (min-width: 961px) {
  footer .footer_guide a:hover,
  footer .footer_facilities a:hover {
    opacity: 1.0;
    color: #4c4c4c;
    text-decoration: underline;
  }
  footer .footer_nav_list a:hover {
    opacity: 1.0;
    text-decoration: underline;
  }
}

@media only screen and (min-width: 768px) {
  footer .footer_guide {
    background-color: #f0f0f0;
    padding: 27px 0;
  }
  footer .footer_guide_inner {
    display: table;
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  footer .footer_guide_col {
    display: table-cell;
    padding-right: 15px;
  }
  footer .footer_guide_col:nth-of-type(1) {
    width: 26.8%;
  }
  footer .footer_guide_col:nth-of-type(2), footer .footer_guide_col:nth-of-type(3) {
    width: 27.8%;
  }
  footer .footer_guide_col:nth-of-type(4) {
    width: 17.6%;
  }
  footer .footer_guide_ttl {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 17px;
  }
  footer .footer_guide_list {
    display: block !important;
  }
  footer .footer_guide_list li {
    margin-top: 12px;
  }
  footer .footer_guide_list li:first-child {
    margin-top: 0;
  }
  footer .footer_guide_list a {
    font-size: 1.2rem;
  }
  footer .footer_facilities {
    background-color: #e5e5e5;
    padding: 31px 0 27px;
  }
  footer .footer_facilities_inner {
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  footer .footer_facilities_table {
    display: table;
    width: 100%;
  }
  footer .footer_facilities_col {
    display: table-cell;
    padding-right: 10px;
  }
  footer .footer_facilities_col:nth-of-type(1) {
    width: 26.8%;
  }
  footer .footer_facilities_col:nth-of-type(2), footer .footer_facilities_col:nth-of-type(3) {
    width: 27.8%;
  }
  footer .footer_facilities_col:nth-of-type(4) {
    width: 17.6%;
  }
  footer .footer_facilities_ttl {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 20px;
  }
  footer .footer_facilities_list li {
    margin-top: 12px;
  }
  footer .footer_facilities_list li:first-child {
    margin-top: 0;
  }
  footer .footer_facilities_list a {
    font-size: 1.2rem;
  }
  footer .footer_nav_inner {
    position: relative;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  footer .footer_nav_logo {
    position: absolute;
    top: 35px;
    left: 12px;
  }
  footer .footer_nav_logo a {
    display: block;
    width: 166px;
  }
  footer .footer_nav_logo a img {
    width: 100%;
  }
  footer .footer_nav_fb {
    position: absolute;
    top: 42px;
    right: 22px;
  }
  footer .footer_nav_fb a {
    display: block;
    width: 32px;
    height: 32px;
  }
  footer .footer_nav_fb a img {
    width: 100%;
  }
  footer .footer_nav_list {
    display: table;
    width: 100%;
    padding: 44px 0 33px 26.8%;
    border-bottom: 1px solid #d6d6d6;
  }
  footer .footer_nav_list li {
    display: table-cell;
  }
  footer .footer_nav_list li:nth-of-type(1) {
    width: 19%;
  }
  footer .footer_nav_list li:nth-of-type(2) {
    width: 19%;
  }
  footer .footer_nav_list a {
    font-size: 1.2rem;
    font-weight: 200;
    color: #666;
  }
  footer .footer_copyright {
    text-align: center;
    font-weight: 200;
    padding: 14px 0 100px;
  }
  footer .footer_list_ttl {
    pointer-events: none;
  }
}

@media only screen and (max-width: 767px) {
  footer {
    margin-top: 30px;
  }
  footer .js-footer_list {
    display: none;
  }
  footer .footer_list_ttl {
    position: relative;
    padding: 20px 15px 20px 3px;
    margin: 0 12px;
    border-bottom: 1px solid #d5d5d5;
  }
  footer .footer_list_ttl:before {
    content: "";
    position: absolute;
    top: 25px;
    right: 6px;
    width: 12px;
    background: #202020;
    height: 2px;
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  footer .footer_list_ttl:after {
    content: "";
    position: absolute;
    top: 25px;
    right: 6px;
    width: 12px;
    background: #202020;
    height: 2px;
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  footer .footer_list_ttl.is-show:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  footer .footer_list_ttl.is-show:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  footer .footer_guide {
    background-color: #f0f0f0;
    font-size: 1.2rem;
    font-weight: 500;
  }
  footer .footer_guide_list {
    margin: 0 12px;
    border-bottom: 1px solid #d5d5d5;
  }
  footer .footer_guide_list li {
    margin-left: 14px;
    border-bottom: 1px dotted #d5d5d5;
  }
  footer .footer_guide_list li:last-child {
    border-bottom: none;
  }
  footer .footer_guide_list li a {
    padding: 17px 30px 17px 4px;
    display: block;
    width: 100%;
    height: 100%;
  }
  footer .footer_facilities {
    background-color: #f0f0f0;
    font-size: 1.2rem;
    font-weight: 500;
  }
  footer .footer_facilities_ttl {
    border-top: 4px solid #d5d5d5;
    border-bottom: none;
  }
  footer .footer_facilities_list {
    margin: 0 12px;
    border-top: 1px solid #d5d5d5;
  }
  footer .footer_facilities_list li {
    margin-left: 14px;
    border-bottom: 1px dotted #d5d5d5;
  }
  footer .footer_facilities_list li:last-child {
    border-bottom: none;
  }
  footer .footer_facilities_list li a {
    padding: 17px 30px 17px 4px;
    display: block;
    width: 100%;
    height: 100%;
  }
  footer .footer_nav {
    margin-top: 40px;
  }
  footer .footer_nav_logo {
    text-align: center;
  }
  footer .footer_nav_logo a {
    display: inline-block;
    width: 138px;
  }
  footer .footer_nav_logo a img {
    width: 100%;
  }
  footer .footer_nav_fb {
    display: none;
  }
  footer .footer_nav_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding: 0 2px 11px;
    margin: 27px 12px 0;
    border-bottom: 1px solid #d6d6d6;
  }
  footer .footer_nav_list li {
    font-size: 1.2rem;
    font-weight: 200;
  }
  footer .footer_nav_list li a {
    color: #666;
  }
  footer .footer_copyright {
    font-size: 0.8rem;
    font-weight: 200;
    text-align: center;
    padding: 12px 0 20px;
  }
}

@media only screen and (min-width: 961px) {
  header {
    position: relative;
    background-color: #fff;
    height: 75px;
  }
  header .header_cont {
    position: relative;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
    height: 100%;
  }
  header .header_logo {
    padding-top: 20px;
  }
  header .header_logo a, header .header_logo span {
    display: block;
    width: 130px;
  }
  header .header_logo a img, header .header_logo span img {
    width: 100%;
  }
  header .header_nav {
    position: absolute;
    top: 30px;
    right: 10px;
  }
  header .header_nav > li {
    float: left;
    font-size: 1.2rem;
    margin-left: 20px;
  }
  header .header_nav > li:first-child {
    margin-left: 0;
  }
  header .header_nav > li > a {
    line-height: 22px;
    vertical-align: middle;
    display: inline-block;
  }
  header .header_nav > li img {
    position: relative;
    top: -2px;
    margin-right: 4px;
    vertical-align: middle;
  }
  header .header_nav_faq img {
    width: 20.5px;
  }
  header .header_nav_login img {
    width: 20px;
  }
  header .header_nav_member {
    position: relative;
  }
  header .header_nav_member img {
    width: 28px;
  }
  header .header_nav_member_cont {
    display: none;
    position: absolute;
    top: 35px;
    right: 0;
    z-index: 3;
    width: 334px;
    text-align: center;
    background-color: #fff;
    box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.35);
  }
  header .header_nav_member_cont:before {
    position: absolute;
    top: -20px;
    right: 43px;
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #000;
    border-left: 10px solid transparent;
  }
  header .header_nav_member_cont_ttl {
    font-size: 1.2rem;
    color: #fff;
    background-color: #000;
    padding: 8px 0;
  }
  header .header_nav_member_cont ul {
    padding: 15px 0 19px;
  }
  header .header_nav_member_cont ul li {
    display: inline-block;
  }
  header .header_nav_member_cont ul li:first-child {
    margin-right: 2px;
  }
  header .header_nav_member_cont ul li a {
    font-size: 1.2rem;
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 32px;
    box-shadow: 0 0 0 1px #000 inset;
    border-radius: 16px;
    line-height: 32px;
    width: 155px;
    font-weight: 700;
  }
  header .header_nav_lang {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  header .header_nav_lang img {
    -ms-flex: 0 0 20px;
        flex: 0 0 20px;
    width: 20px;
    height: 20px;
    top: 0 !important;
  }
  header .header_nav_lang_select {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 8px;
  }
  header .header_nav_lang_select li:not(:first-child) {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 8px;
  }
  header .header_nav_lang_select li:not(:first-child)::before {
    content: "";
    display: block;
    width: 1px;
    height: 12px;
    background-color: #333;
  }
  header .header_nav_search {
    position: relative;
    border-left: 1px solid #dcdcdc;
    padding: 0 7px 0 17px;
    margin-left: 17px;
  }
  header .header_nav_search .header_nav_search_trigger {
    padding-top: 2px;
  }
  header .header_nav_search .header_nav_search_trigger a {
    position: relative;
    display: inline-block;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: hidden;
    width: 21px;
    height: 21px;
    background: url(/assets/img/icon_search.png) center no-repeat;
    background-size: cover;
  }
  header .header_nav_search .header_nav_search_cont {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #fff;
    width: 35px;
    height: 29px;
    border-bottom: 2px solid #333;
    opacity: 0;
    transition: all 0.3s ease-in-out;
    z-index: -1;
  }
  header .header_nav_search .header_nav_search_cont.is-show {
    width: 365px;
    opacity: 1;
  }
  header .header_nav_search .header_nav_search_cont.is-frontLayer {
    z-index: 1;
  }
  header .header_nav_search .header_nav_search_form {
    position: relative;
  }
  header .header_nav_search .header_nav_search_input {
    font-size: 1.4rem;
    font-weight: 400;
    color: #666;
    background-color: #fff;
    border: none;
    width: 100%;
    height: 20px;
    padding: 13px 40px 12px 10px;
  }
  header .header_nav_search .header_nav_search_input:focus {
    outline: none;
  }
  header .header_nav_search .header_nav_search_submit {
    position: absolute;
    top: 2px;
    right: 7px;
    display: block;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: hidden;
    background-color: transparent;
    padding: 0;
    border: none;
    line-height: 1;
    cursor: pointer;
    width: 21px;
    height: 21px;
    background: url(/assets/img/icon_search.png) center no-repeat;
    background-size: cover;
  }
  header .header_menubtn {
    display: none;
  }
  header .header_reserve {
    position: absolute;
    bottom: -65px;
    right: 10px;
    z-index: 2;
  }
  header .header_reserve a {
    display: inline-block;
    color: #fff;
    border-radius: 4px;
    background-color: #333333;
    width: 175px;
    height: 55px;
    line-height: 55px;
    vertical-align: middle;
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
    transition: all 0.3s ease-in-out;
  }
  header .header_reserve a:hover {
    opacity: 1;
    background-color: #d00000;
  }
  header .header_reserve a img {
    position: relative;
    top: -2px;
    width: 20px;
    vertical-align: middle;
    margin-right: 8px;
  }
  header .header_guide_sp {
    display: none !important;
  }
  header .header_guide {
    position: absolute;
    top: 75px;
    width: 100%;
    height: 75px;
    background-color: #f6f6f6;
    z-index: 1;
  }
  header .header_guide_list {
    width: 100%;
    height: 75px;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  header .header_guide_list > li {
    float: left;
    font-size: 1.4rem;
    font-weight: 500;
    color: #191816;
    height: 75px;
  }
  header .header_guide_list > li:nth-of-type(1) {
    width: 19.33%;
  }
  header .header_guide_list > li:nth-of-type(1) .header_guide_label span {
    border-left: 1px solid #dcdcdc;
  }
  header .header_guide_list > li:nth-of-type(2) {
    width: 15.91%;
  }
  header .header_guide_list > li:nth-of-type(3) {
    width: 15.82%;
  }
  header .header_guide_list > li:nth-of-type(4) {
    width: 14.16%;
  }
  header .header_guide_list > li:nth-of-type(5) {
    width: 15.23%;
  }
  header .header_guide_list > li.add_pointer {
    cursor: pointer;
  }
  header .header_guide_list > li:hover .header_guide_label {
    color: rgba(0, 0, 0, 0.7);
  }
  header .header_guide_list > li:hover .header_guide_label:after {
    height: 3px;
  }
  header .header_guide_label {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    padding: 17px 0 16px;
    transition: color 0.3s ease-in-out;
  }
  header .header_guide_label:after {
    display: block;
    background: #0f0f0f;
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    transition: all 0.3s ease-in-out;
  }
  header .header_guide_label > a,
  header .header_guide_label > span {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    border-right: 1px solid #dcdcdc;
  }
  header .header_guide_sub {
    position: absolute;
    top: 75px;
    left: 0px;
    width: 100%;
    background-color: rgba(55, 55, 55, 0.902);
    overflow: hidden;
    display: none;
  }
  header .header_guide_sub_list {
    max-width: 1044px;
    padding: 5px 10px 15px;
    margin: 0 auto;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    overflow: hidden;
  }
  header .header_guide_sub_list.is-show {
    opacity: 1;
  }
  header .header_guide_sub_list > li {
    display: inline-block;
    float: left;
    width: 20%;
    height: 30px;
    text-align: center;
    border-right: 1px solid #727272;
    margin-top: 10px;
  }
  header .header_guide_sub_list > li:nth-of-type(5n + 1) {
    border-left: 1px solid #727272;
  }
  header .header_guide_sub_list > li a {
    font-size: 1.2rem;
    font-weight: 500;
    color: #fff;
    vertical-align: middle;
  }
  header .header_guide_sub_list > li a span {
    display: table-cell;
    height: 30px;
    vertical-align: middle;
    line-height: 1.2;
  }
  header.is-fixed {
    position: fixed;
    top: -65px;
    left: 0;
    width: 100%;
    height: 65px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    z-index: 999;
  }
  header.is-fixed.is-scroll-show {
    transition: all 0.5s ease-in-out;
    top: 0;
  }
  header.is-fixed .header_logo {
    position: relative;
    padding-top: 15px;
    z-index: 99;
    display: inline-block;
  }
  header.is-fixed .header_logo a, header.is-fixed .header_logo span {
    width: 110px;
  }
  header.is-fixed .header_reserve {
    display: none;
  }
  header.is-fixed .header_nav {
    top: 15px;
    z-index: 99;
  }
  header.is-fixed .header_nav > li {
    font-size: 1.0rem;
    margin-left: 20px;
    text-align: center;
  }
  header.is-fixed .header_nav > li:first-child {
    margin-left: 0;
  }
  header.is-fixed .header_nav > li > a {
    line-height: 1;
    vertical-align: top;
  }
  header.is-fixed .header_nav > li img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    top: 0;
    vertical-align: top;
  }
  header.is-fixed .header_nav_faq img {
    margin-bottom: 7px;
  }
  header.is-fixed .header_nav_login img {
    margin-bottom: 7px;
  }
  header.is-fixed .header_nav_member img {
    margin-top: 1px;
    margin-bottom: 8px;
  }
  header.is-fixed .header_nav_member_cont {
    top: 52px;
  }
  header.is-fixed .header_nav_member_cont:before {
    right: 11px;
  }
  header.is-fixed .header_nav_lang {
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 6px 0;
  }
  header.is-fixed .header_guide {
    top: 0;
    height: 65px;
    background-color: transparent;
  }
  header.is-fixed .header_guide_list {
    height: 65px;
  }
  header.is-fixed .header_guide_list > li {
    font-size: 1.2rem;
    padding: 0;
    width: auto;
    height: 65px;
    margin-left: 2.44%;
  }
  header.is-fixed .header_guide_list > li:first-child {
    margin-left: 145px;
  }
  header.is-fixed .header_guide_list > li .header_guide_label span,
  header.is-fixed .header_guide_list > li .header_guide_label a {
    border: none;
  }
  header.is-fixed .header_guide_label {
    padding: 0 2px;
  }
  header.is-fixed .header_guide_sub {
    top: 65px;
  }
  .reserved {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
  }
  .reserved_base {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
  }
  .reserved_cont {
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -300px;
    margin-left: -410px;
    width: 820px;
  }
  .reserved_ttl {
    font-size: 2.4rem;
    font-weight: 500;
    text-align: center;
    padding-top: 47px;
  }
  .reserved_ttl img {
    position: relative;
    top: 7px;
    width: 36px;
    margin-right: 17px;
  }
  .reserved_close a {
    position: absolute;
    top: 20px;
    right: 20px;
    content: "";
    display: block;
    width: 29px;
    height: 29px;
    background: url("/english/assets/img/btn_close.png") center no-repeat;
    background-size: cover;
  }
  .reserved .common_tab {
    margin-top: 50px;
  }
  .reserved_formcont {
    background-color: #f4f4f4;
    padding: 0 30px 35px;
  }
  .reserved_formcont .input_list {
    position: relative;
  }
  .reserved_formcont .input_list.w-374 {
    width: 374px;
  }
  .reserved_formcont .input_list.w-364 {
    width: 364px;
  }
  .reserved_formcont .input_list.w-247 {
    width: 247px;
  }
  .reserved_formcont .input_list.w-107 {
    width: 107px;
  }
  .reserved_formcont .input_list.w-133 {
    width: 133px;
  }
  .reserved_formcont .input_list.ml-7 {
    margin-left: 7px;
  }
  .reserved_formcont .input_list.ml-10 {
    margin-left: 10px;
  }
  .reserved_formcont .input_list.ml-12 {
    margin-left: 12px;
  }
  .reserved_formcont .select_arrow {
    cursor: pointer;
    pointer-events: none;
    z-index: 1;
    width: 25px;
    height: 50px;
    position: absolute;
    right: 13px;
    top: 0;
    background: url("/english/assets/img/arrow_pulldown.png") center no-repeat;
    background-size: 21px auto;
  }
  .reserved_formcont input,
  .reserved_formcont select {
    font-family: "Roboto", "NotoSansCJKjp", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    -webkit-appearance: none;
            appearance: none;
    width: 100%;
    height: 50px;
    border-radius: 0px;
    background: #fff;
    border: none;
    text-align: left;
    padding-left: 14px;
    color: #000;
    line-height: 1.2;
    padding: 10px 46px 10px 14px;
    font-size: 1.6rem;
  }
  .reserved_formcont input::-ms-expand,
  .reserved_formcont select::-ms-expand {
    display: none;
  }
  .reserved_formcont input.is-unchecked,
  .reserved_formcont select.is-unchecked {
    color: #666;
  }
  .reserved_formcont ul:after {
    content: " ";
    display: table;
    clear: both;
  }
  .reserved_formcont ul li {
    float: left;
  }
  .reserved_formsubmit {
    text-align: center;
    margin-top: 30px;
  }
  .reserved_formsubmit a {
    display: inline-block;
    text-align: center;
    height: 45px;
    border-radius: 22.5px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 45px;
    width: 240px;
    font-size: 1.8rem;
    font-weight: 700;
  }
  .reserved_formsubmit a.is-disable {
    color: #ccc;
    box-shadow: 0 0 0 2px #ddd inset;
    background-color: #ddd;
    pointer-events: none;
  }
  .reserved_formsubmit a.is-disable:hover {
    color: #ccc !important;
    box-shadow: 0 0 0 2px #ddd inset !important;
    background-color: #ddd !important;
  }
  .reserved_formsubmit + .reserved_linknote {
    margin-top: 30px;
  }
  .reserved_formsubmit + .reserved_link {
    margin-top: 32px;
  }
  .reserved_linknote {
    text-align: center;
    margin-top: 14px;
    font-size: 1.1rem;
    color: #aaa;
    line-height: 1.8;
  }
  .reserved_link {
    text-align: center;
    margin-top: 14px;
  }
  .reserved_link button {
    font-family: inherit;
    font-size: inherit;
  }
  .reserved_link a, .reserved_link button {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 500;
    transition: opacity 0.3s ease-in-out;
  }
  .reserved_link a:hover, .reserved_link button:hover {
    opacity: 0.6;
  }
}

@media only screen and (max-width: 960px) {
  header .js-header_sub_sp {
    display: none;
  }
  header .header_cont {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background-color: #fff;
    height: 54px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  }
  header .header_logo {
    padding-top: 12px;
    text-align: center;
  }
  header .header_logo a, header .header_logo span {
    display: inline-block;
    width: 100px;
  }
  header .header_logo a img, header .header_logo span img {
    width: 100%;
  }
  header .header_reserve {
    display: none;
  }
  header .header_nav {
    position: absolute;
    top: 13px;
    right: 11px;
  }
  header .header_nav > li {
    float: left;
    font-size: 8px;
    margin-left: 9px;
    text-align: center;
  }
  header .header_nav > li:first-child {
    margin-left: 0;
  }
  header .header_nav > li > a {
    display: inline-block;
  }
  header .header_nav > li img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  header .header_nav_faq {
    display: none;
  }
  header .header_nav_login img {
    width: 16px;
    margin-bottom: 5px;
  }
  header .header_nav_member {
    position: relative;
  }
  header .header_nav_member img {
    width: 20px;
    margin-top: 1px;
    margin-bottom: 7px;
  }
  header .header_nav_member_cont {
    display: none;
    position: absolute;
    top: 47px;
    right: 0;
    z-index: 2;
    width: 296px;
    text-align: center;
    background-color: #fff;
    box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.35);
  }
  header .header_nav_member_cont:before {
    position: absolute;
    top: -20px;
    right: 11px;
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #000;
    border-left: 10px solid transparent;
  }
  header .header_nav_member_cont_ttl {
    font-size: 1.2rem;
    color: #fff;
    background-color: #000;
    padding: 8px 0;
  }
  header .header_nav_member_cont ul {
    padding: 15px 0 19px;
  }
  header .header_nav_member_cont ul li {
    display: inline-block;
  }
  header .header_nav_member_cont ul li:first-child {
    margin-right: 2px;
  }
  header .header_nav_member_cont ul li a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 32px;
    box-shadow: 0 0 0 1px #000 inset;
    border-radius: 16px;
    line-height: 32px;
    width: 135px;
    font-size: 1.0rem;
    font-weight: 700;
  }
  header .header_nav_lang {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 6px;
  }
  html[lang='ja'] header .header_nav_lang {
    display: none;
  }
  header .header_nav_lang img {
    -ms-flex: 0 0 20px;
        flex: 0 0 20px;
    width: 20px;
    height: 20px;
    top: 0 !important;
  }
  header .header_nav_lang_select {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 8px;
  }
  header .header_nav_lang_select li:not(:first-child) {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 8px;
  }
  header .header_nav_lang_select li:not(:first-child)::before {
    content: "";
    display: block;
    width: 1px;
    height: 12px;
    background-color: #333;
  }
  header .header_menubtn {
    position: absolute;
    top: 9px;
    left: 8px;
    cursor: pointer;
    width: 35px;
    height: 35px;
    z-index: 1;
  }
  header .header_menubtn span {
    background-color: #000;
    height: 2px;
    left: 10px;
    position: absolute;
    width: 19px;
    transition: all 0.5s ease-in-out;
  }
  header .header_menubtn span:nth-of-type(1) {
    top: 10px;
  }
  header .header_menubtn span:nth-of-type(2) {
    top: 17px;
  }
  header .header_menubtn span:nth-of-type(3) {
    top: 24px;
  }
  header .header_menubtn.is-show span:nth-of-type(1) {
    -ms-transform: rotate(-45deg) translate(-5.2px, 3px);
        transform: rotate(-45deg) translate(-5.2px, 3px);
  }
  header .header_menubtn.is-show span:nth-of-type(2) {
    -ms-transform: scale(0);
        transform: scale(0);
  }
  header .header_menubtn.is-show span:nth-of-type(3) {
    -ms-transform: rotate(45deg) translate(-7px, -4.6px);
        transform: rotate(45deg) translate(-7px, -4.6px);
  }
  header .header_guide_pc {
    display: none;
  }
  header .header_guide {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1e1e1e;
    z-index: 99;
  }
  header .header_guide.is-show {
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
  header .header_guide_list {
    padding-top: 54px;
    padding-bottom: 100px;
  }
  header .header_guide_ttl {
    background-color: #1e1e1e;
    position: relative;
    font-size: 1.6rem;
    font-weight: 500;
    color: #fff;
    border-bottom: 1px solid #303030;
    padding: 21px 0 19px 23px;
  }
  header .header_guide_ttl_reserve {
    padding: 15px 0 19px 23px;
  }
  header .header_guide_ttl > img {
    position: relative;
    top: 3px;
    margin-left: 10px;
  }
  header .header_guide_ttl:before {
    content: "";
    position: absolute;
    top: 28px;
    right: 19px;
    width: 12px;
    background: #bfbfbf;
    height: 2px;
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  header .header_guide_ttl:after {
    content: "";
    position: absolute;
    top: 28px;
    right: 19px;
    width: 12px;
    background: #bfbfbf;
    height: 2px;
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  header .header_guide_ttl.is-show:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  header .header_guide_ttl.is-show:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  header .header_guide_ttl_link {
    padding: 0;
  }
  header .header_guide_ttl_link:before {
    content: none;
  }
  header .header_guide_ttl_link:after {
    content: "";
    position: absolute;
    top: 23px;
    right: 21px;
    display: block;
    background: url("/english/assets/img/arrow_link_sp.png") 0 0 no-repeat;
    background-size: 8px auto;
    width: 8px;
    height: 14px;
  }
  header .header_guide_ttl_link a {
    display: block;
    padding: 21px 0 19px 23px;
    color: #fff;
  }
  header .header_guide_sub {
    background-color: #f4f4f4;
    border-bottom: 1px solid #b9b9b9;
  }
  header .header_guide_sub li {
    font-size: 1.4rem;
    font-weight: 300;
    margin-left: 20px;
  }
  header .header_guide_sub li:last-child a {
    border-bottom: none;
  }
  header .header_guide_sub li a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 22px 0 19px 4px;
    border-bottom: 1px solid #b9b9b9;
  }
  header .header_guide_sub li a:after {
    content: "";
    position: absolute;
    top: 23px;
    right: 21px;
    display: block;
    background: url("/english/assets/img/arrow_link_sp.png") 0 0 no-repeat;
    background-size: 8px auto;
    width: 8px;
    height: 14px;
  }
  header .header_guide_reserve {
    background-color: #f4f4f4;
    border-bottom: 1px solid #b9b9b9;
    padding: 0 12px;
  }
  header .header_guide_reserve li {
    padding: 30px 0 25px;
  }
  header .header_guide_reserve li:first-child {
    padding: 25px 0 35px;
    border-bottom: 2px solid #b9b9b9;
  }
  header .header_guide_reserve_ttl {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500;
  }
  header .header_guide_reserve_formcont .input_row:after {
    content: " ";
    display: table;
    clear: both;
  }
  header .header_guide_reserve_formcont .input_row .input_list {
    float: left;
  }
  header .header_guide_reserve_formcont .input_row_stay .input_list:nth-of-type(1) {
    width: 31.5%;
  }
  header .header_guide_reserve_formcont .input_row_stay .input_list:nth-of-type(2) {
    width: 31.5%;
  }
  header .header_guide_reserve_formcont .input_row_stay .input_list:nth-of-type(3) {
    width: 37%;
  }
  header .header_guide_reserve_formcont .input_row_restaurant .input_list:nth-of-type(1) {
    width: 63%;
  }
  header .header_guide_reserve_formcont .input_row_restaurant .input_list:nth-of-type(2) {
    width: 37%;
  }
  header .header_guide_reserve_formcont .input_list {
    position: relative;
    margin-top: 20px;
  }
  header .header_guide_reserve_formcont .input_list_inner {
    position: relative;
  }
  header .header_guide_reserve_formcont .input_list.pr-11 {
    padding-right: 11px;
  }
  header .header_guide_reserve_formcont .select_arrow {
    cursor: pointer;
    pointer-events: none;
    z-index: 1;
    width: 25px;
    height: 40px;
    position: absolute;
    right: 10px;
    top: 0;
    background: url("/english/assets/img/arrow_pulldown.png") center no-repeat;
    background-size: 16px auto;
  }
  header .header_guide_reserve_formcont input,
  header .header_guide_reserve_formcont select {
    -webkit-appearance: none;
            appearance: none;
    width: 100%;
    height: 40px;
    border-radius: 0px;
    background: #fff;
    border: none;
    text-align: left;
    padding-left: 14px;
    color: #000;
    line-height: 1;
    padding: 10px 42px 10px 14px;
    font-size: 1.4rem;
  }
  header .header_guide_reserve_formcont input.is-unchecked,
  header .header_guide_reserve_formcont select.is-unchecked {
    color: #666;
  }
  header .header_guide_reserve_submit {
    text-align: center;
    margin-top: 30px;
  }
  header .header_guide_reserve_submit a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 44px;
    border-radius: 22px;
    line-height: 44px;
    width: 198px;
    font-size: 1.6rem;
    font-weight: 700;
  }
  header .header_guide_reserve_submit a.is-disable {
    color: #ccc;
    box-shadow: 0 0 0 2px #ddd inset;
    background-color: #ddd;
    pointer-events: none;
  }
  header .header_guide_reserve_submit + .header_guide_reserve_linknote {
    margin-top: 30px;
  }
  header .header_guide_reserve_submit + .header_guide_reserve_link {
    margin-top: 32px;
  }
  header .header_guide_reserve_linknote {
    text-align: center;
    margin-top: 14px;
    font-size: 1.1rem;
    color: #aaa;
    line-height: 1.8;
  }
  header .header_guide_reserve_link {
    text-align: center;
    margin-top: 16px;
  }
  header .header_guide_reserve_link button {
    font-family: inherit;
    font-size: inherit;
  }
  header .header_guide_reserve_link a, header .header_guide_reserve_link button {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 500;
  }
  header .header_guide_sp .header_guide_search {
    background-color: #f4f4f4;
    padding: 15px 12px;
  }
  header .header_guide_sp .header_guide_search_form {
    position: relative;
  }
  header .header_guide_sp .header_guide_search_input {
    font-size: 1.4rem;
    font-weight: 400;
    color: #666;
    background-color: #fff;
    border-radius: 3px;
    border: none;
    width: 100%;
    height: 39px;
    padding: 13px 43px 12px 12px;
  }
  header .header_guide_sp .header_guide_search_submit {
    position: absolute;
    top: 10px;
    right: 10px;
    display: block;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: hidden;
    background-color: transparent;
    padding: 0;
    border: none;
    line-height: 1;
    cursor: pointer;
    width: 21px;
    height: 21px;
    background: url(/assets/img/icon_search.png) center no-repeat;
    background-size: cover;
  }
  header .header_guide_sp .header_guide_faq {
    padding: 24px 12px 0;
    text-align: right;
  }
  header .header_guide_sp .header_guide_faq a {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    color: #fff;
    padding-left: 36px;
    background: url(/assets/img/icon_question_wht.png) left center no-repeat;
    background-size: 30px 29px;
  }
  header .header_guide_sp .header_guide_lang {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    padding: 24px 12px 0 0;
  }
  header .header_guide_sp .header_guide_lang_select {
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 18px;
  }
  header .header_guide_sp .header_guide_lang_select li:not(:first-child) {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    position: relative;
    gap: 0 18px;
  }
  header .header_guide_sp .header_guide_lang_select li:not(:first-child)::before {
    display: block;
    content: "";
    width: 1px;
    height: 20px;
    background-color: #fff;
  }
  header .header_guide_sp .header_guide_lang a {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    color: #fff;
  }
  header .header_nav_search {
    display: none;
  }
  .reserved {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 960px) {
  header .header_cont {
    height: 65px;
  }
  header .header_logo {
    padding-top: 15px;
  }
  header .header_logo a, header .header_logo span {
    width: 115px;
  }
  header .header_nav {
    top: 22px;
  }
  header .header_nav > li {
    float: left;
    font-size: 1.2rem;
    margin-left: 28px;
  }
  header .header_nav > li:first-child {
    margin-left: 0;
  }
  header .header_nav > li > a {
    line-height: 20px;
    vertical-align: middle;
    display: inline-block;
  }
  header .header_nav > li img {
    display: inline;
    margin-left: 0;
    position: relative;
    top: -2px;
    margin-right: 4px;
    vertical-align: middle;
  }
  header .header_nav_login img {
    width: 20px;
    margin-bottom: 0;
  }
  header .header_nav_member {
    position: relative;
  }
  header .header_nav_member img {
    width: 28px;
    margin-bottom: 0;
  }
  header .header_nav_member_cont {
    top: 35px;
    width: 334px;
  }
  header .header_nav_member_cont:before {
    right: 43px;
  }
  header .header_nav_member_cont ul li a {
    width: 155px;
    font-size: 1.2rem;
  }
  header .header_menubtn {
    top: 15px;
  }
  header .header_guide {
    top: 65px;
  }
  header .header_guide_list {
    padding-top: 0;
  }
  .reserved {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .about.about-index .pc-only {
    display: none;
  }
  .about.about-index .about_main {
    min-height: 298px;
    background: url(/assets/img/about/main_index.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-index .about_main .about_main_title {
    margin-bottom: 26px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 2.4rem;
  }
  .about.about-index .about_main .about_main_announcement {
    text-align: left;
    line-height: 2.2rem;
    padding: 0 9px;
  }
  .about.about-index .about_main .about_main_text {
    text-align: left;
    line-height: 2.2rem;
    padding: 0 9px;
  }
  .about.about-index .about_cards {
    padding: 30px 0;
    background: #f3f6f7;
  }
  .about.about-index .about_cards .about_cards_imgWrap {
    width: 210px;
    margin: 0 auto 22px;
    position: relative;
  }
  .about.about-index .about_cards .about_cards_imgWrap:before {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background: url(/assets/img/about/illust_annual_free_sp.png) center center no-repeat;
    background-size: 100%;
    position: absolute;
    left: -34px;
    top: -20px;
  }
  .about.about-index .about_cards .about_cards_imgWrap img {
    width: 100%;
  }
  .about.about-index .about_cards .about_cards_apply {
    text-align: center;
  }
  .about.about-index .about_cards .about_apply_btn {
    font-size: 1.2rem;
    letter-spacing: 0.06em;
    line-height: 30px;
    border: solid 1px #333333;
  }
  .about.about-index .about_cards .about_main_guidance {
    padding-top: 24px;
    text-align: center;
  }
  .about.about-index .about_cards .about_main_guidance a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000000;
    color: #000000;
  }
  .about.about-index .about_privilege {
    padding-top: 56px;
    margin-bottom: 20px;
  }
  .about.about-index .about_privilege .about_privilege_title {
    margin-bottom: 50px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 4.4rem;
    letter-spacing: 0.1em;
  }
  .about.about-index .about_privilege .about_privilege_title_num {
    margin: 0 2px;
    display: inline-block;
    width: 46px;
    height: auto;
    vertical-align: middle;
  }
  .about.about-index .about_privilege .about_privilege_section {
    padding-bottom: 70px;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap {
    margin-bottom: 13px;
    text-align: center;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-point {
    width: 38px;
    height: auto;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-off {
    width: 28px;
    height: auto;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-hotel {
    width: 41px;
    height: auto;
  }
  .about.about-index .about_privilege .about_privilege_section_title {
    margin-bottom: 10px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.4rem;
    letter-spacing: 0.13em;
  }
  .about.about-index .about_privilege .about_privilege_section_text {
    margin-bottom: 25px;
    font-size: 1.2rem;
    line-height: 2.2rem;
    letter-spacing: 0.074em;
  }
  .about.about-index .about_privilege .about_privilege_section_text br {
    display: none;
  }
  .about.about-index .about_privilege .about_privilege_section_linkWrap {
    text-align: center;
  }
  .about.about-index .about_privilege .about_privilege_section_link {
    display: inline-block;
    padding: 0 35px;
    border: solid 1px #000;
    border-radius: 16px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0.06em;
  }
  .about.about-english .pc-only {
    display: none;
  }
  .about.about-english .about_content_inner {
    padding: 0 12px;
  }
  .about.about-english .about_main {
    background: url(/assets/img/about/main_index_sp_en.jpg) center center no-repeat;
    background-size: cover;
    padding: 58px 0 0;
  }
  .about.about-english .about_main .about_main_title {
    margin-bottom: 10px;
    font-size: 21px;
  }
  .about.about-english .about_main .about_main_title img {
    display: block;
    margin: 0 auto;
    max-width: 172px;
  }
  .about.about-english .about_main .about_main_text {
    font-size: 1.4rem;
    line-height: 2;
    padding: 0;
  }
  .about.about-english .about_cards {
    padding: 53px 0 46px;
  }
  .about.about-english .about_cards .about_cards_imgWrap {
    width: 243px;
    margin: 0 auto;
  }
  .about.about-english .about_cards .about_cards_imgWrap:before {
    background: url(/assets/img/about/illust_annual_free_sp_en.png) center center no-repeat;
    background-size: 100%;
    left: -20px;
    top: -40px;
  }
  .about.about-english .about_cards .about_cards_imgWrap img {
    width: 100%;
  }
  .about.about-english .about_privilege {
    padding-top: 0;
  }
  .about.about-english .about_privilege .about_privilege_title {
    letter-spacing: 0.2em;
    font-size: 2.4rem;
  }
  .about.about-english .about_privilege .about_privilege_title_num {
    margin: 0 10px 0 0;
  }
  .about.about-english .about_privilege .about_privilege_section {
    padding-bottom: 70px;
  }
  .about.about-english .about_privilege .about_privilege_section_title {
    margin-bottom: 10px;
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 0.13em;
  }
  .about.about-english .about_privilege .about_privilege_section_text {
    margin-bottom: 25px;
    font-size: 1.4rem;
    line-height: 1.9;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_privilege .about_privilege_section_text br {
    display: inline;
  }
  .about.about-english .about_privilege .about_privilege_section_text strong {
    font-weight: 700;
  }
  .about.about-english .about_privilege .about_privilege_section_linkWrap {
    text-align: center;
  }
  .about.about-english .about_privilege .about_privilege_section_link {
    display: inline-block;
    padding: 0 35px;
    border: solid 1px #000;
    border-radius: 16px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0.06em;
  }
  .about.about-english .about_privilege .about_privilege_banner {
    margin: 0 -12px 60px;
  }
  .about.about-english .about_privilege .about_privilege_banner img {
    width: 100%;
  }
  .about.about-english .about_reward {
    margin-top: 10px;
  }
  .about.about-english .about_reward .about_content_inner {
    padding-bottom: 90px;
    border-bottom: none;
  }
  .about.about-english .about_reward_title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_lead {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_graph {
    margin: 50px auto 0;
  }
  .about.about-english .about_reward_graph_img {
    width: 100%;
  }
  .about.about-english .about_reward_graph_text {
    margin: 8px calc(-2%) 0;
    display: -ms-flexbox;
    display: flex;
  }
  .about.about-english .about_reward_graph_text_item {
    -ms-flex: 0 0 calc(100% / 3);
        flex: 0 0 calc(100% / 3);
    text-align: center;
    font-size: 11px;
    line-height: 1.167;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_text {
    margin-top: 30px;
    font-size: 14px;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app .about_content_inner {
    padding-bottom: 100px;
  }
  .about.about-english .about_app_title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_features {
    margin: 50px auto 0;
    display: -ms-flexbox;
    display: flex;
    gap: 20px 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .about.about-english .about_app_features_item {
    height: 134px;
    border-style: solid;
    border-width: 1px;
    border-color: #303333;
    border-radius: 8px;
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 15px;
  }
  .about.about-english .about_app_features_item img {
    display: inline-block;
  }
  .about.about-english .about_app_features_item_icon {
    -ms-flex: 0 0 84px;
        flex: 0 0 84px;
    text-align: center;
  }
  .about.about-english .about_app_features_item-promotion img {
    width: 28px;
  }
  .about.about-english .about_app_features_item-coupon img {
    width: 46px;
  }
  .about.about-english .about_app_features_item-point img {
    width: 50px;
    margin: 0 0 11px;
  }
  .about.about-english .about_app_features_item-bestrate img {
    width: 30px;
  }
  .about.about-english .about_app_features_item_text {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_button {
    margin-top: 40px;
  }
  .about.about-english .about_app_button_link {
    display: -ms-flexbox;
    display: flex;
    gap: 0 8px;
    width: 100%;
    height: 36px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    border-style: solid;
    border-width: 1px;
    border-color: black;
    border-radius: 18px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_button_link img {
    width: 16px;
    -ms-flex: 0 0 16px;
        flex: 0 0 16px;
  }
  .about.about-english .about_facilities .about_content_inner {
    padding-bottom: 60px;
  }
  .about.about-english .about_facilities_title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_facilities_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 36px;
    margin: 50px -12px 0;
    padding: 40px;
    background-color: #f5f5f5;
  }
  .about.about-english .about_facilities_list_item {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.375;
    color: #080808;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_facilities_terms {
    margin-top: 80px;
    text-align: center;
  }
  .about.about-english .about_facilities_terms_link {
    font-size: 16px;
    font-weight: 700;
    line-height: 2.563;
    border-bottom: 2px solid #222222;
    letter-spacing: 0.1em;
  }
  .about.about-english .granvillage_Membership_Terms_・_GRANVISTA_Points {
    font-size: 16px;
    font-family: "Barlow";
    color: #080808;
    font-weight: bold;
    line-height: 2.563;
    text-align: left;
    position: absolute;
    left: 22.937px;
    top: 4290.858px;
    width: 265px;
    height: 54px;
    z-index: 75;
  }
  .about.about-english .about_facilities_contact {
    margin-top: 80px;
  }
  .about.about-english .about_facilities_contact_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    text-align: center;
    height: 30px;
    max-width: 200px;
    margin: 0 auto;
    border: 1px solid #000;
    border-radius: 15px;
    font-size: 14px;
    font-weight: 700;
    color: #000;
    letter-spacing: 0.1em;
  }
}

@media only screen and (min-width: 768px) {
  .about .sp-only {
    display: none;
  }
  .about.about-index .about_main {
    min-height: 730px;
    padding-top: 105px;
    background: url(/assets/img/about/main_index.jpg?202310) center center no-repeat;
    background-size: cover;
  }
  .about.about-index .about_main .about_content_inner {
    text-align: center;
  }
  .about.about-index .about_main .about_main_title {
    float: none;
    display: inline-block;
    margin-bottom: 40px;
    font-size: 2.4rem;
    line-height: 38px;
    letter-spacing: 0.075em;
    text-align: center;
    position: relative;
  }
  .about.about-index .about_main .about_main_title:after {
    content: "";
    display: block;
    width: 114px;
    height: 114px;
    background: url(/assets/img/about/illust_annual_free_pc.png) center center no-repeat;
    background-size: 100%;
    position: absolute;
    right: -132px;
    top: -24px;
  }
  .about.about-index .about_main .about_main_textArea {
    margin: 0 auto 46px;
    width: auto;
    float: none;
  }
  .about.about-index .about_main .about_main_text {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .about.about-index .about_main .about_main_cardWrap {
    width: 100%;
    max-width: 803px;
    margin: 0 auto 46px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .about.about-index .about_main .about_main_cardList {
    width: 240px;
  }
  .about.about-index .about_main .about_main_cardList img {
    width: 100%;
  }
  .about.about-index .about_main .about_main_apply {
    text-align: center;
  }
  .about.about-index .about_main .about_apply_btn {
    border-radius: 20px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 38px;
    letter-spacing: 0.06em;
    background: #fff;
    border: none;
  }
  .about.about-index .about_main .about_main_guidance {
    padding-top: 24px;
    text-align: center;
  }
  .about.about-index .about_main .about_main_guidance a {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #fff;
    color: #fff;
  }
  .about.about-index .about_privilege {
    padding-top: 130px;
    margin-bottom: 50px;
  }
  .about.about-index .about_privilege .about_privilege_title {
    margin-bottom: 20px;
    font-size: 3.4rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-align: center;
    line-height: 1.8;
  }
  .about.about-index .about_privilege .about_privilege_title .about_privilege_title_num {
    width: 72px;
    vertical-align: middle;
  }
  .about.about-index .about_privilege .about_privilege_wrap {
    border-top: solid 2px #c9c9c9;
  }
  .about.about-index .about_privilege .about_privilege_section {
    padding: 36px 0;
    overflow: hidden;
    border-bottom: solid 2px #c9c9c9;
    position: relative;
    letter-spacing: -.4em;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap {
    display: inline-block;
    width: 15%;
    vertical-align: top;
    text-align: center;
    padding-top: 30px;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-point {
    width: 63px;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-off {
    width: 46px;
  }
  .about.about-index .about_privilege .about_privilege_section_iconWrap .icon-hotel {
    width: 69px;
  }
  .about.about-index .about_privilege .about_privilege_section_detail {
    width: 85%;
    display: inline-block;
    padding-left: 20px;
    padding-right: 245px;
  }
  .about.about-index .about_privilege .about_privilege_section_title {
    margin-bottom: 16px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: 0.02em;
  }
  .about.about-index .about_privilege .about_privilege_section_text {
    font-size: 1.6rem;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .about.about-index .about_privilege .about_privilege_section_linkWrap {
    position: absolute;
    right: 22px;
    bottom: 36px;
  }
  .about.about-index .about_privilege .about_privilege_section_link {
    display: inline-block;
    padding: 0 20px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 18px;
  }
  .about.about-english .about_main {
    padding-top: 74px;
    background: url(/assets/img/about/main_index_en.jpg?202412) center center no-repeat;
    background-size: cover;
  }
  .about.about-english .about_main .about_main_title {
    width: 285px;
    margin-bottom: 18px;
    line-height: 28px;
  }
  .about.about-english .about_main .about_main_title:after {
    background: url(/assets/img/about/illust_annual_free_pc_en.png) center center no-repeat;
    right: -230px;
    top: 0;
    background-size: contain;
  }
  .about.about-english .about_main .about_main_textArea {
    margin-bottom: 23px;
  }
  .about.about-english .about_main .about_main_text {
    font-size: 20px;
    line-height: 1.8;
  }
  .about.about-english .about_main .about_main_cardArea {
    max-width: 537px;
    margin: 0 auto;
  }
  .about.about-english .about_main .about_main_cardArea img {
    width: 100%;
  }
  .about.about-english .about_privilege {
    padding-top: 80px;
    margin-bottom: 0;
  }
  .about.about-english .about_privilege .about_privilege_title {
    margin-bottom: 80px;
  }
  .about.about-english .about_privilege .about_privilege_title .about_privilege_title_num {
    margin-right: 1em;
  }
  .about.about-english .about_privilege .about_privilege_section {
    letter-spacing: -.4em;
  }
  .about.about-english .about_privilege .about_privilege_section_detail {
    padding-right: 160px;
  }
  .about.about-english .about_privilege .about_privilege_section_iconWrap {
    padding-top: 0;
  }
  .about.about-english .about_privilege .about_privilege_section_iconWrap-point {
    padding-top: 30px;
  }
  .about.about-english .about_privilege .about_privilege_section_title {
    margin-bottom: 10px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1,4;
    letter-spacing: 0.2em;
  }
  .about.about-english .about_privilege .about_privilege_section_text {
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_privilege .about_privilege_section_text strong {
    font-weight: 700;
  }
  .about.about-english .about_privilege .about_privilege_banner {
    max-width: 1024px;
    margin: 0 auto 40px;
  }
  .about.about-english .about_privilege .about_privilege_banner img {
    width: 100%;
  }
  .about.about-english .about_reward {
    margin-top: 80px;
  }
  .about.about-english .about_reward .about_content_inner {
    padding-bottom: 80px;
    border-bottom: solid 2px #c9c9c9;
  }
  .about.about-english .about_reward_title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_lead {
    margin-top: 38px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_graph {
    max-width: 930px;
    margin: 80px auto 0;
  }
  .about.about-english .about_reward_graph_img {
    width: 100%;
  }
  .about.about-english .about_reward_graph_text {
    margin: 22px -18px 0;
    display: -ms-flexbox;
    display: flex;
  }
  .about.about-english .about_reward_graph_text_item {
    -ms-flex: 0 0 calc(100% / 3);
        flex: 0 0 calc(100% / 3);
    text-align: center;
    font-size: 24px;
    line-height: 1.167;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_reward_text {
    margin-top: 38px;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app {
    margin-top: 80px;
  }
  .about.about-english .about_app .about_content_inner {
    padding-bottom: 80px;
    border-bottom: solid 2px #c9c9c9;
  }
  .about.about-english .about_app_title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_features {
    margin: 32px auto 0;
    max-width: 920px;
    display: -ms-flexbox;
    display: flex;
    gap: 30px 40px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .about.about-english .about_app_features_item {
    height: 200px;
    border-style: solid;
    border-width: 2px;
    border-color: #303333;
    border-radius: 8px;
    -ms-flex: 0 0 calc((100% - 40px) / 2);
        flex: 0 0 calc((100% - 40px) / 2);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 25px;
  }
  .about.about-english .about_app_features_item img {
    display: inline-block;
  }
  .about.about-english .about_app_features_item_icon {
    -ms-flex: 0 0 120px;
        flex: 0 0 120px;
    text-align: center;
  }
  .about.about-english .about_app_features_item-promotion img {
    width: 41px;
  }
  .about.about-english .about_app_features_item-coupon img {
    width: 69px;
  }
  .about.about-english .about_app_features_item-point img {
    width: 73px;
    margin: 0 0 16px;
  }
  .about.about-english .about_app_features_item-bestrate img {
    width: 44px;
  }
  .about.about-english .about_app_features_item_text {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_button {
    max-width: 540px;
    margin: 60px auto 0;
  }
  .about.about-english .about_app_button_link {
    display: -ms-flexbox;
    display: flex;
    gap: 0 16px;
    width: 100%;
    height: 80px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    border-style: solid;
    border-width: 2px;
    border-color: black;
    border-radius: 40px;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_app_button_link img {
    width: 28px;
    -ms-flex: 0 0 28px;
        flex: 0 0 28px;
  }
  .about.about-english .about_facilities {
    margin-top: 80px;
  }
  .about.about-english .about_facilities .about_content_inner {
    padding-bottom: 80px;
  }
  .about.about-english .about_facilities_title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.125;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_facilities_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
    margin-top: 38px;
    padding: 48px 38px 28px;
    background-color: #f5f5f5;
  }
  .about.about-english .about_facilities_list_item {
    -ms-flex: 0 0 calc((100% - 40px) / 3);
        flex: 0 0 calc((100% - 40px) / 3);
    min-height: 2lh;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.375;
    color: #080808;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_facilities_terms {
    margin-top: 100px;
    text-align: center;
  }
  .about.about-english .about_facilities_terms_link {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.75;
    border-bottom: 2px solid #222222;
    letter-spacing: 0.1em;
  }
  .about.about-english .about_facilities_contact {
    margin-top: 80px;
  }
  .about.about-english .about_facilities_contact_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    text-align: center;
    height: 50px;
    max-width: 225px;
    margin: 0 auto;
    border: 2px solid #000;
    border-radius: 25px;
    font-size: 18px;
    font-weight: 700;
    color: #000;
    letter-spacing: 0.1em;
  }
}

@media only screen and (max-width: 767px) {
  .about.about-point .about_main {
    background: url(/assets/img/about/main_point.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-point .about_pointDetail {
    background-color: #f3f6f7;
  }
  .about.about-point .about_pointDetail_inner {
    padding: 40px 12px 60px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 .about_pointDetail_lead {
    text-align: center;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 .about_pointDetail_note {
    margin-top: 53px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_02 {
    margin-top: 76px;
  }
  .about.about-point .about_pointDetail_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .about.about-point .about_pointDetail_lead {
    font-size: 1.2rem;
    line-height: 1.45;
    margin-top: 13px;
  }
  .about.about-point .about_pointDetail_note {
    font-weight: 200;
    line-height: 1.5;
  }
  .about.about-point .about_pointDetail_note li {
    margin-top: 15px;
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .about.about-point .about_pointDetail_note li:first-child {
    margin-top: 0;
  }
  .about.about-point .about_pointDetail_card {
    margin-top: 40px;
  }
  .about.about-point .about_pointDetail_card_list {
    margin-top: 35px;
  }
  .about.about-point .about_pointDetail_card_list:first-child {
    margin-top: 0;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_normal .about_pointDetail_card_per img {
    width: 40px;
    margin-left: 5px;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_gold .about_pointDetail_card_per img {
    width: 42px;
    margin-left: 3px;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_platinum .about_pointDetail_card_per img {
    width: 40px;
    margin-left: 5px;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_platinum .about_pointDetail_card_row:after {
    content: none;
  }
  .about.about-point .about_pointDetail_card_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    height: 34px;
    line-height: 34px;
    border-radius: 17px;
    background-color: #e1e1e1;
  }
  .about.about-point .about_pointDetail_card_row {
    position: relative;
    text-align: center;
    margin-top: 20px;
  }
  .about.about-point .about_pointDetail_card_row:after {
    position: absolute;
    bottom: -30px;
    left: 50%;
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid #828282;
    border-right: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid transparent;
  }
  .about.about-point .about_pointDetail_card_img {
    display: inline-block;
    vertical-align: middle;
    width: 46%;
    text-align: right;
    padding-right: 14px;
    padding-left: 22px;
  }
  .about.about-point .about_pointDetail_card_img img {
    width: 100%;
    max-width: 241px;
  }
  .about.about-point .about_pointDetail_card_per {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    vertical-align: middle;
    width: 53%;
    text-align: left;
  }
  .about.about-point .about_pointDetail_card_per img {
    position: relative;
    vertical-align: middle;
    top: -7px;
  }
  .about.about-point .about_pointDetail_card_lankup {
    position: relative;
    font-size: 1.5rem;
    font-weight: 400;
    text-align: center;
    margin-top: 20px;
    line-height: 1.2;
  }
  .about.about-point .about_pointDetail_card_lankup-number {
    font-size: 1.8rem;
    font-weight: 500;
  }
  .about.about-point .about_pointDetail_card_lankup-bold {
    font-weight: 500;
  }
  .about.about-point .about_pointDetail_card_progress {
    display: none;
  }
  .about.about-point .about_pointDetail_effective {
    margin-top: 20px;
  }
  .about.about-point .about_pointDetail_effective p {
    margin-bottom: 7px;
    font-size: 1.0rem;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: 0.05px;
  }
  .about.about-point .about_pointDetail_effective img {
    width: 100%;
  }
  .about.about-point .about_pointDetail_convert {
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .about.about-point .about_pointDetail_convert_ttl {
    font-size: 1.2rem;
    font-weight: 500;
    text-align: center;
    color: #fff;
    background-color: #333;
    padding: 9px 0 8px;
  }
  .about.about-point .about_pointDetail_convert_img {
    text-align: center;
    margin-top: 41px;
  }
  .about.about-point .about_pointDetail_convert_caption {
    display: none;
  }
  .about.about-point .about_pointDetail_apply {
    text-align: center;
    margin-top: 45px;
  }
  .about.about-point .about_pointDetail_apply a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 40px;
    border-radius: 20px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 40px;
    width: 180px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  .about.about-point .about_hotelList {
    padding-top: 63px;
    margin-bottom: 30px;
  }
  .about.about-point .about_apply {
    margin-bottom: 42px;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) {
  .about.about-point .about_main {
    background: url(/assets/img/about/main_point.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-point .about_pointDetail {
    background-color: #f3f6f7;
  }
  .about.about-point .about_pointDetail_inner {
    max-width: 1044px;
    padding: 83px 10px 60px;
    margin: 0 auto;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 {
    padding-bottom: 120px;
    border-bottom: 2px solid #c9c9c9;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 .about_pointDetail_ttl {
    text-align: center;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 .about_pointDetail_lead {
    text-align: center;
    font-size: 1.8rem;
    margin-top: 28px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_01 .about_pointDetail_note {
    margin-top: 50px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_02 {
    position: relative;
    padding-top: 50px;
    padding-right: 350px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_02 .about_pointDetail_lead {
    font-size: 1.6rem;
    line-height: 1.75;
    margin-top: 20px;
  }
  .about.about-point .about_pointDetail_section.about_pointDetail_section_02 .about_pointDetail_note {
    margin-top: 35px;
  }
  .about.about-point .about_pointDetail_ttl {
    font-size: 3.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-point .about_pointDetail_note {
    font-size: 1.2rem;
    font-weight: 200;
    line-height: 1.5;
  }
  .about.about-point .about_pointDetail_note li {
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .about.about-point .about_pointDetail_card {
    display: table;
    width: 100%;
    padding: 0 17px;
    margin-top: 58px;
  }
  .about.about-point .about_pointDetail_card_list {
    display: table-cell;
    text-align: center;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_normal .about_pointDetail_card_per img {
    width: 62px;
    margin-left: 13px;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_gold .about_pointDetail_card_per img {
    width: 64px;
    margin-left: 8px;
  }
  .about.about-point .about_pointDetail_card_list.about_pointDetail_card_list_platinum .about_pointDetail_card_per img {
    width: 62px;
    margin-left: 13px;
  }
  .about.about-point .about_pointDetail_card_ttl {
    font-size: 1.8rem;
    font-weight: 700;
  }
  .about.about-point .about_pointDetail_card_img {
    display: inline-block;
    max-width: 260px;
    padding: 0 10px;
    margin-top: 20px;
  }
  .about.about-point .about_pointDetail_card_img img {
    width: 100%;
  }
  .about.about-point .about_pointDetail_card_per {
    font-size: 1.8rem;
    margin-top: 62px;
  }
  .about.about-point .about_pointDetail_card_per img {
    position: relative;
    top: 13px;
  }
  .about.about-point .about_pointDetail_card_lankup {
    display: none;
  }
  .about.about-point .about_pointDetail_card_progress {
    margin-top: 45px;
  }
  .about.about-point .about_pointDetail_card_progress img {
    width: 100%;
  }
  .about.about-point .about_pointDetail_convert {
    position: absolute;
    top: 40px;
    right: 0;
    width: 330px;
  }
  .about.about-point .about_pointDetail_convert_ttl {
    font-size: 1.4rem;
    text-align: center;
    color: #fff;
    background-color: #333;
    padding: 8px 0 6px;
  }
  .about.about-point .about_pointDetail_convert_img {
    text-align: center;
    margin-top: 41px;
  }
  .about.about-point .about_pointDetail_convert_caption {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 10px 0 0 30px;
  }
  .about.about-point .about_pointDetail_apply {
    text-align: center;
    margin-top: 70px;
  }
  .about.about-point .about_pointDetail_apply a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 50px;
    border-radius: 25px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 50px;
    width: 224px;
    font-size: 1.8rem;
    font-weight: 700;
  }
  .about.about-point .about_pointDetail_effective {
    margin-top: 20px;
  }
  .about.about-point .about_pointDetail_effective p {
    margin-bottom: 7px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.05px;
  }
  .about.about-point .about_pointDetail_effective img {
    width: 100%;
  }
  .about.about-point .about_hotelList {
    padding-bottom: 50px;
    margin-top: 80px;
  }
  .about.about-point .about_hotelList .about_hotelList_title {
    font-size: 32px;
    letter-spacing: 0.075em;
  }
  .about.about-point .about_apply {
    margin-bottom: 68px;
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .about.about-privilege .about_main {
    background: url(/assets/img/about/main_privilege.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-privilege .about_servicies {
    padding-top: 40px;
    background: #f3f6f7;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea_title {
    margin-bottom: 16px;
    font-size: 2.0rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.025em;
    color: #333;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea_caption {
    font-size: 1.2rem;
    line-height: 2.2rem;
    text-align: center;
    color: #333;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceName, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceName, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceName {
    margin-bottom: 20px;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 2.4rem;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceImg, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceImg, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceImg {
    width: 100%;
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceImg img, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceImg img, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceImg img {
    width: 100%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetailLabel, .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawaLabel, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetailLabel, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetailLabel {
    margin-bottom: 18px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 28px;
    color: #fff;
    letter-spacing: 0.075em;
    text-align: center;
    background: #333;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetail, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetail, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetail {
    margin-bottom: 4px;
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #333;
    letter-spacing: 0.05em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetail strong, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetail strong, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetail strong {
    font-size: 2.4rem;
    font-weight: bold;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceText, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceText {
    font-size: 1.2rem;
    line-height: 2.0rem;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLink, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLink, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_1colmn_serviceLink {
    display: inline-block;
    padding: 0 13px 7px 2px;
    border-bottom: solid 1px #333;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #333;
    position: relative;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLink:after, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLink:after, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_1colmn_serviceLink:after {
    content: "";
    width: 6px;
    height: 9px;
    position: absolute;
    bottom: 9px;
    right: 2px;
    background: url(/assets/img/about/icon_service_arrow.png);
    background-size: 100%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceNotice, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceNotice, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceNotice {
    margin-bottom: 10px;
    font-size: 1.0rem;
    line-height: 1.8rem;
    font-weight: 200;
    letter-spacing: 0.075em;
    text-indent: -1em;
    padding-left: 1em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_service {
    padding-bottom: 70px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetailWrap {
    padding-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText + .about_servicies_2colmn_serviceNoticeWrap {
    margin-top: -16px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLinkWrap {
    text-align: right;
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceLabel {
    margin-bottom: 12px;
    font-size: 1.2rem;
    line-height: 2.0rem;
    background-color: #c6c6c6;
    color: #333;
    text-align: center;
    border-radius: 4px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceWrap {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceWrap + .about_servicies_2colmn_serviceNoticeWrap {
    margin-top: -16px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_price {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 2.2rem;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_price strong {
    font-size: 1.8rem;
    font-weight: bold;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn {
    padding-bottom: 70px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetailWrap {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLinkWrap {
    text-align: right;
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceWrap {
    padding-bottom: 70px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetailWrap {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceLinkWrap {
    text-align: right;
    margin-bottom: 20px;
  }
  .about.about-privilege .about_hotelList {
    margin-top: 20px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_title {
    margin-top: 40px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_list:last-child {
    border-bottom: none;
  }
  .about.about-privilege .about_hotelList .about_hotelList_detail {
    padding-bottom: 30px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_detail.border-bottom {
    border-bottom: solid 1px #bebdbd;
    position: relative;
  }
  .about.about-privilege .about_hotelList .about_hotelList_detail.border-bottom:before {
    content: "";
    display: block;
    height: 1px;
    width: 15px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_detail.border-bottom:after {
    content: "";
    display: block;
    height: 1px;
    width: 15px;
    background-color: #fff;
    position: absolute;
    right: 0;
    bottom: -1px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_detail_item_price strong {
    font-size: 18px;
  }
  .about.about-privilege .about_apply {
    margin-top: 30px;
    margin-bottom: 42px;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) {
  .about.about-privilege .about_main {
    background: url(/assets/img/about/main_privilege.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-privilege .about_servicies {
    padding-top: 80px;
    background: #f3f6f7;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea {
    margin-bottom: 40px;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea_title {
    margin-bottom: 16px;
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea_caption {
    font-size: 18px;
    text-align: center;
    color: #333;
    letter-spacing: 0.05em;
  }
  .about.about-privilege .about_servicies .about_servicies_titleArea_caption br {
    display: none;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceName, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceName, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceName {
    margin-bottom: 14px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceImg {
    width: 100%;
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceImg img {
    width: 100%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetailLabel, .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawaLabel, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetailLabel, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetailLabel {
    margin-bottom: 14px;
    font-size: 12px;
    font-weight: 400;
    line-height: 28px;
    color: #fff;
    letter-spacing: 0.075em;
    text-align: center;
    background: #333;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetail, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetail, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetail {
    margin-bottom: 6px;
    font-size: 14px;
    color: #333;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetail strong, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetail strong, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceDetail strong {
    font-size: 24px;
    font-weight: bold;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceText, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceText {
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.075em;
    font-weight: 200;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLink, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLink, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_1colmn_serviceLink {
    display: inline-block;
    padding: 0 13px 7px 2px;
    border-bottom: solid 2px #010101;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    position: relative;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLink:after, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLink:after, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_1colmn_serviceLink:after {
    content: "";
    width: 6px;
    height: 9px;
    position: absolute;
    bottom: 9px;
    right: 2px;
    background: url(/assets/img/about/icon_service_arrow.png);
    background-size: 100%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceNotice, .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceNotice, .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceNotice {
    font-size: 1.2rem;
    font-weight: 200;
    line-height: 1.5;
    text-indent: -0.75em;
    padding-left: 0.75em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    margin-bottom: 36px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_service {
    width: 48%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceContent {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding-bottom: 16px;
    min-height: 124px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceDetailWrap {
    width: 49%;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceText + .about_servicies_2colmn_serviceNoticeWrap {
    margin-top: -10px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceLinkWrap {
    margin-bottom: 24px;
    text-align: right;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawaWrap {
    width: 100%;
    margin-bottom: 1px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceArea:last-child {
    margin-top: 25px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceArea:after {
    content: " ";
    display: block;
    clear: both;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceLabel {
    margin-bottom: 8px;
    font-size: 12px;
    line-height: 24px;
    text-align: center;
    background-color: #c6c6c6;
    border-radius: 3px;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceWrap {
    margin-top: 5px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_priceWrap + .about_servicies_2colmn_serviceNoticeWrap {
    margin-top: 10px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_price {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceKamogawa_price strong {
    font-size: 24px;
  }
  .about.about-privilege .about_servicies .about_servicies_2colmn .about_servicies_2colmn_serviceNoticeWrap + .about_servicies_2colmn_serviceLinkWrap {
    margin-top: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn {
    margin-bottom: 40px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceWrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceImg,
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceContentWrap {
    width: 48%;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceImg img {
    width: 100%;
    height: auto;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceContent {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    margin-bottom: 30px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceDetailWrap {
    width: 49%;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLinkWrap {
    text-align: right;
  }
  .about.about-privilege .about_servicies .about_servicies_1colmn .about_servicies_1colmn_serviceLink {
    margin-bottom: 22px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding-bottom: 75px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceWrap {
    width: 48%;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceImg {
    margin-bottom: 10px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceImg img {
    width: 100%;
    height: auto;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceText {
    margin-bottom: 20px;
  }
  .about.about-privilege .about_servicies .about_servicies_3colmn .about_servicies_3colmn_serviceLinkWrap {
    text-align: right;
    margin-bottom: 30px;
  }
  .about.about-privilege .about_hotelList .about_hotelList_title {
    margin-top: 80px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-privilege .about_apply {
    margin-top: 30px;
    margin-bottom: 68px;
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .about.about-registration .common_tab {
    margin-top: 45px;
  }
  .about.about-registration .common_tab ul li a {
    height: 70px;
  }
  .about.about-registration .about_registration_ttl {
    padding: 42px 15px 0;
  }
  .about.about-registration .about_registration_ttl h2 {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-registration .about_registration_ttl p {
    font-size: 1.4rem;
    letter-spacing: 0.075em;
    color: #080808;
    line-height: 1.42;
    margin-top: 18px;
  }
  .about.about-registration .about_registration {
    background-color: #f4f4f4;
    margin-bottom: 50px;
  }
  .about.about-registration .about_registration_inner {
    padding: 30px 12px 40px;
    margin: 0 auto;
  }
  .about.about-registration .about_registration_section_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-registration .about_registration_section_maintxt {
    font-size: 1.4rem;
    letter-spacing: 0.075em;
    line-height: 1.42;
    color: #080808;
    padding: 0 2px;
    margin-top: 18px;
  }
  .about.about-registration .about_registration_section_head {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    line-height: 1.8;
    color: #fff;
    text-align: center;
    padding: 2px 0 3px;
    background-color: #333;
  }
  .about.about-registration .about_registration_section_block {
    background-color: #fff;
  }
  .about.about-registration .about_registration_section_block_inner ul {
    padding: 0px 16px 0px 16px;
  }
  .about.about-registration .about_registration_section_block_step_title {
    display: none;
  }
  .about.about-registration .about_registration_section_block_step_title_sp {
    height: 30px;
    display: -ms-flexbox;
    display: flex;
    background-color: #c9c9c9;
  }
  .about.about-registration .about_registration_section_block_step_title_sp p {
    font-size: 1.4rem;
    font-weight: 500;
    position: absolute;
    left: 40px;
    margin-top: 4px;
  }
  .about.about-registration .about_registration_section_block_step_title_sp span {
    font-size: 2.0rem;
    font-weight: 400;
  }
  .about.about-registration .about_registration_section_block_step_title_sp h5 {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 auto;
    margin-top: 9px;
  }
  .about.about-registration .about_registration_section_block_step_title_sp_description {
    text-align: left;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.075px;
    margin-top: 16px;
  }
  .about.about-registration .about_registration_section_block_step_title_sp_red {
    color: #c21732;
    height: 30px;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -ms-flex-align: center;
        align-items: center;
    background-color: #c9c9c9;
    padding: 0px 16px 0px 16px;
  }
  .about.about-registration .about_registration_section_block_step_title_sp_red p {
    font-size: 1.4rem;
    font-weight: 500;
    position: absolute;
    left: 40px;
  }
  .about.about-registration .about_registration_section_block_step_title_sp_red span {
    font-size: 2.0rem;
    font-weight: 400;
  }
  .about.about-registration .about_registration_section_block_step_title_sp_red h5 {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 auto;
  }
  .about.about-registration .about_registration_section_block_step1 {
    padding-top: 40px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents {
    margin-top: 16px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple {
    border-bottom: 1px solid #c9c9c9;
    margin: 42px 0px 30px 0px;
    text-align: center;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_badge p {
    font-size: 1.4rem;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 4px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_badge span {
    margin-left: 10px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_badge img {
    width: 190px;
    margin-bottom: 10px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_qr {
    width: 110px;
    height: 110px;
    margin-bottom: 30px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay {
    margin: 30px 0px 30px 0px;
    text-align: center;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_badge p {
    font-size: 1.4rem;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 4px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_badge span {
    margin-left: 10px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_badge img {
    width: 190px;
    margin-bottom: 10px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_qr {
    width: 110px;
    height: 110px;
  }
  .about.about-registration .about_registration_section_block_step_template {
    padding: 0px 0px 60px 0px;
  }
  .about.about-registration .about_registration_section_block_step_template_contents img {
    width: 100%;
    padding: 26px 0px 30px 0px;
  }
  .about.about-registration .about_registration_section_block_step_template_contents p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.075em;
  }
  .about.about-registration .about_registration_section_block_step_template_contents span {
    color: #c21732;
  }
  .about.about-registration .about_registration_section_block_step5 {
    padding: 0px 0px 60px 0px;
  }
  .about.about-registration .about_registration_section_block_step5 .about_registration_section_block_step5_contents img {
    width: 67%;
    padding: 26px 0px 30px 0px;
  }
  .about.about-registration .about_registration_section_block_step5 .about_registration_section_block_step5_contents p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.075em;
  }
  .about.about-registration .about_registration_steplist_note {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.42;
    margin-top: 20px;
  }
  .about.about-registration .about_registration_situations {
    margin-top: 35px;
  }
  .about.about-registration .about_registration_situations li {
    text-align: center;
  }
  .about.about-registration .about_registration_situations li:first-child {
    margin-bottom: 40px;
  }
  .about.about-registration .about_registration_situations li:first-child figure img {
    width: 240px;
  }
  .about.about-registration .about_registration_situations li figure {
    margin-top: 20px;
  }
  .about.about-registration .about_registration_situations li figure img {
    width: 276px;
  }
  .about.about-registration .about_registration_situations_attention {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    color: #b40000;
    margin-top: 20px;
  }
  .about.about-registration .about_registration_section_bycard {
    margin-top: 70px;
  }
  .about.about-registration .about_registration_section_bycard .about_registration_section_ttl {
    line-height: 1.375;
  }
  .about.about-registration .about_registration_section_bycard .about_registration_section_block {
    margin-top: 13px;
  }
  .about.about-registration .about_registration_section_byapplication .about_registration_section_ttl {
    line-height: 1.375;
  }
  .about.about-registration .about_registration_internet {
    margin-top: 31px;
  }
  .about.about-registration .about_registration_internet .about_registration_steplist li:first-child {
    margin-top: 0;
  }
  .about.about-registration .about_registration_internet_outline {
    padding: 8px 2px 30px;
  }
  .about.about-registration .about_registration_internet_lead {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #080808;
    line-height: 1.66;
  }
  .about.about-registration .about_registration_internet_note {
    letter-spacing: 0.075em;
    line-height: 1.6;
    text-indent: -0.5em;
    margin-left: 0.5em;
    margin-top: 20px;
  }
  .about.about-registration .about_registration_internet_img {
    text-align: center;
    margin-top: 26px;
  }
  .about.about-registration .about_registration_internet_img img {
    width: 241px;
  }
  .about.about-registration .about_registration_section_feature {
    padding: 0 2px;
    margin-top: 75px;
  }
  .about.about-registration .about_registration_section_feature .about_registration_section_ttl {
    line-height: 1.37;
  }
  .about.about-registration .about_registration_feature {
    margin-top: 20px;
  }
  .about.about-registration .about_registration_feature_list {
    text-align: center;
  }
  .about.about-registration .about_registration_feature_list li {
    margin-top: 14px;
  }
  .about.about-registration .about_registration_feature_list li:first-child {
    margin-top: 0;
  }
  .about.about-registration .about_registration_feature_list_bg {
    border-radius: 3px;
    background-color: #fff;
    padding: 33px 0 30px;
    margin: 0 auto;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_card img {
    width: 58px;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_point img {
    width: 45px;
  }
  .about.about-registration .about_registration_feature_list_catch {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.3;
    margin-top: 13px;
  }
  .about.about-registration .about_registration_feature_note p {
    line-height: 1.6;
    letter-spacing: 0.075em;
    text-indent: -0.5em;
    margin-left: 0.5em;
    margin-top: 20px;
  }
  .about.about-registration .about_registration_section_hotelOrFacilities {
    margin-top: 45px;
  }
  .about.about-registration .about_registration_section_hotelOrFacilities .about_registration_section_block {
    margin-top: 32px;
  }
  .about.about-registration .about_registration_section_hotelOrFacilities .about_registration_steplist li:first-child {
    margin-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .about.about-registration .common_tab {
    margin-top: 62px;
  }
  .about.about-registration .about_registration_ttl {
    max-width: 1044px;
    padding: 44px 10px 0;
    margin: 0 auto;
  }
  .about.about-registration .about_registration_ttl h2 {
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-registration .about_registration_ttl p {
    font-size: 1.6rem;
    letter-spacing: 0.075em;
    color: #080808;
    line-height: 1.75;
    margin-top: 24px;
  }
  .about.about-registration .about_registration {
    background-color: #f4f4f4;
    margin-bottom: 50px;
  }
  .about.about-registration .about_registration_inner {
    max-width: 1044px;
    padding: 60px 10px;
    margin: 0 auto;
  }
  .about.about-registration .about_registration_section_ttl {
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .about.about-registration .about_registration_section_maintxt {
    font-size: 1.6rem;
    letter-spacing: 0.075em;
    line-height: 1.75;
    color: #080808;
    margin-top: 20px;
  }
  .about.about-registration .about_registration_section_head {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #fff;
    text-align: center;
    padding: 11px 0;
    background-color: #333;
  }
  .about.about-registration .about_registration_section_block {
    background-color: #fff;
  }
  .about.about-registration .about_registration_section_block_inner {
    padding: 0px 60px 38px;
  }
  .about.about-registration .about_registration_section_block_step_title {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  .about.about-registration .about_registration_section_block_step_title img {
    width: 90px;
    margin-right: 16px;
  }
  .about.about-registration .about_registration_section_block_step_title h5 {
    font-size: 2.8rem;
    font-weight: 700;
  }
  .about.about-registration .about_registration_section_block_step_title_red {
    color: #c21732;
  }
  .about.about-registration .about_registration_section_block_step1 {
    padding: 40px 0px 60px 0px;
    border-bottom: 1px solid #c9c9c9;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents {
    display: -ms-flexbox;
    display: flex;
    margin-top: 16px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end;
    border-right: 1px solid #c9c9c9;
    padding-left: 34px;
    padding-right: 24px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_badge p {
    font-size: 1.6rem;
    line-height: 24px;
    font-weight: 400;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_badge img {
    width: 190px;
    margin-top: 4px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_apple .about_registration_section_block_step1_contents_download_apple_qr {
    width: 110px;
    height: 110px;
    margin-left: 32px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end;
    padding-left: 34px;
    padding-right: 24px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_badge p {
    font-size: 1.6rem;
    line-height: 24px;
    font-weight: 400;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_badge img {
    width: 190px;
    margin-top: 4px;
  }
  .about.about-registration .about_registration_section_block_step1 .about_registration_section_block_step1_contents .about_registration_section_block_step1_contents_download_googleplay .about_registration_section_block_step1_contents_download_googleplay_qr {
    width: 110px;
    height: 110px;
    margin-left: 32px;
  }
  .about.about-registration .about_registration_section_block_step_template {
    padding: 60px 0px 0px 0px;
  }
  .about.about-registration .about_registration_section_block_step_template_contents img {
    width: 100%;
    padding: 26px 32px 30px 32px;
  }
  .about.about-registration .about_registration_section_block_step_template_contents p {
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0px 32px 0px 32px;
    line-height: 1.75;
    letter-spacing: 0.075em;
  }
  .about.about-registration .about_registration_section_block_step_template_contents span {
    color: #c21732;
  }
  .about.about-registration .about_registration_section_block_step5 {
    padding: 60px 0px 0px 0px;
  }
  .about.about-registration .about_registration_section_block_step5 .about_registration_section_block_step5_contents img {
    width: 67%;
    padding: 26px 32px 30px 32px;
  }
  .about.about-registration .about_registration_section_block_step5 .about_registration_section_block_step5_contents p {
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0px 32px 0px 32px;
    line-height: 1.75;
    letter-spacing: 0.075em;
  }
  .about.about-registration .about_registration_steplist_note {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.4;
    margin-top: 20px;
    padding: 0 12px;
    text-indent: -1em;
    margin-left: 1em;
  }
  .about.about-registration .about_registration_situations {
    margin-top: 44px;
    padding-bottom: 40px;
    border-bottom: 2px solid #c9c9c9;
    overflow: hidden;
  }
  .about.about-registration .about_registration_situations li {
    float: left;
    text-align: center;
    width: 50%;
    padding: 0 0 0 18px;
  }
  .about.about-registration .about_registration_situations li:first-child {
    padding: 0 18px 0 0;
  }
  .about.about-registration .about_registration_situations li:first-child figure {
    margin-top: 93px;
  }
  .about.about-registration .about_registration_situations li:first-child figure img {
    width: 240px;
  }
  .about.about-registration .about_registration_situations li figure {
    margin-top: 20px;
  }
  .about.about-registration .about_registration_situations li figure img {
    width: 298px;
  }
  .about.about-registration .about_registration_situations_attention {
    font-size: 2.0rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    color: #b40000;
    margin-top: 25px;
  }
  .about.about-registration .about_registration_section_bycard {
    margin-top: 49px;
  }
  .about.about-registration .about_registration_section_bycard .about_registration_section_ttl {
    text-align: center;
  }
  .about.about-registration .about_registration_section_bycard .about_registration_section_block {
    margin-top: 30px;
  }
  .about.about-registration .about_registration_section_byapplication .about_registration_section_ttl {
    text-align: center;
  }
  .about.about-registration .about_registration_internet {
    margin-top: 33px;
  }
  .about.about-registration .about_registration_internet .about_content_inner {
    padding: 0;
  }
  .about.about-registration .about_registration_internet_outline {
    position: relative;
    padding: 12px 8px 50px 8px;
  }
  .about.about-registration .about_registration_internet_lead {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    line-height: 1.8;
    padding-right: 261px;
  }
  .about.about-registration .about_registration_internet_note {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.3;
    text-indent: -0.5em;
    padding-right: 261px;
    margin-left: 0.5em;
    margin-top: 55px;
  }
  .about.about-registration .about_registration_internet_img {
    position: absolute;
    top: 20px;
    right: 8px;
    width: 241px;
  }
  .about.about-registration .about_registration_internet_img img {
    width: 100%;
  }
  .about.about-registration .about_registration_section_feature {
    padding-top: 50px;
  }
  .about.about-registration .about_registration_section_feature .about_registration_section_ttl {
    text-align: center;
  }
  .about.about-registration .about_registration_feature {
    margin-top: 43px;
  }
  .about.about-registration .about_registration_feature_list {
    text-align: center;
  }
  .about.about-registration .about_registration_feature_list li {
    display: inline-block;
    vertical-align: top;
    margin: 0 19px;
  }
  .about.about-registration .about_registration_feature_list_bg {
    width: 271px;
    height: 153px;
    border-radius: 6px;
    background-color: #fff;
  }
  .about.about-registration .about_registration_feature_img {
    height: 89px;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_card {
    padding-top: 22px;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_card img {
    width: 68px;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_point {
    padding-top: 18px;
  }
  .about.about-registration .about_registration_feature_img.about_registration_feature_img_point img {
    width: 63px;
  }
  .about.about-registration .about_registration_feature_list_catch {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.3;
  }
  .about.about-registration .about_registration_feature_note {
    text-align: center;
    margin-top: 15px;
  }
  .about.about-registration .about_registration_feature_note p {
    display: inline-block;
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.3;
    text-indent: -0.5em;
    margin-left: 0.5em;
    text-align: left;
  }
  .about.about-registration .about_registration_section_hotelOrFacilities {
    margin-top: 70px;
  }
  .about.about-registration .about_registration_section_hotelOrFacilities .about_registration_section_block {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .about.about-stay .about_main {
    background: url(/assets/img/about/main_stay.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-stay .about_privilege {
    padding: 0 0 18px;
    background-color: #f3f6f7;
  }
  .about.about-stay .about_privilege .about_privilege_section {
    padding-top: 40px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_title {
    margin-bottom: 14px;
    text-align: center;
    font-size: 2.0rem;
    line-height: 4.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #333;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_label {
    margin-bottom: 20px;
    background-color: #333333;
    color: #fff;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_list {
    margin-bottom: 40px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_listTitle {
    text-align: center;
    font-size: 1.6rem;
    line-height: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    margin-bottom: 18px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_listImage {
    width: 100%;
    margin-bottom: 10px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_listImage img {
    width: 100%;
    height: auto;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_listText {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 2.0rem;
    letter-spacing: 0.075em;
    color: #333;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnImage {
    width: 100%;
    margin-bottom: 10px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnImage img {
    width: 100%;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnTextSection {
    margin-bottom: 30px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnTextSection.mb-narrow {
    margin-bottom: 18px;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnSectionTitle {
    margin-bottom: 6px;
    font-size: 1.6rem;
    line-height: 2.0rem;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnSectionText {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 2.2rem;
    color: #333;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section .about_privilege_section_1colmnSectionNotice {
    font-size: 1.0rem;
    font-weight: 200;
    line-height: 1.4rem;
    letter-spacing: 0.025em;
  }
  .about.about-stay .about_hotels {
    padding-top: 24px;
    margin-bottom: 30px;
  }
  .about.about-stay .about_hotels .about_content_inner {
    padding: 0;
  }
  .about.about-stay .about_hotels_title {
    padding-bottom: 12px;
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    border-bottom: solid 2px #999999;
    font-weight: 700;
  }
  .about.about-stay .about_hotels_list {
    display: block;
  }
  .about.about-stay .about_hotels_link {
    display: block;
    padding: 0 12px;
  }
  .about.about-stay .about_hotels_linkInner {
    padding: 10px 0;
    overflow: hidden;
    border-bottom: dotted 1px #cccccc;
  }
  .about.about-stay .about_hotels_imgWrap {
    width: 18%;
    float: left;
  }
  .about.about-stay .about_hotels_imgWrap img {
    width: 100%;
    border-radius: 3px;
  }
  .about.about-stay .about_hotels_textArea {
    width: 82%;
    float: left;
    padding-top: 4px;
    padding-left: 8px;
  }
  .about.about-stay .about_hotels_name {
    margin-bottom: 4px;
    font-size: 1.6rem;
    letter-spacing: 0.075rem;
    font-weight: 700;
    color: #333;
    line-height: 2.0rem;
  }
  .about.about-stay .about_hotels_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url(/assets/img/icon_link.png) center center no-repeat;
    background-size: 100%;
  }
  .about.about-stay .about_hotels_address {
    font-size: 1.0rem;
    color: #666;
    letter-spacing: 0.075rem;
  }
  .about.about-stay .about_apply {
    margin-bottom: 42px;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) {
  .about.about-stay .about_main {
    background: url(/assets/img/about/main_stay.jpg) center center no-repeat;
    background-size: cover;
  }
  .about.about-stay .about_privilege {
    background-color: #f3f6f7;
    padding-bottom: 45px;
  }
  .about.about-stay .about_privilege .about_privilege_section {
    padding-top: 76px;
  }
  .about.about-stay .about_privilege .about_privilege_section_titleArea {
    margin-bottom: 26px;
  }
  .about.about-stay .about_privilege .about_privilege_section_title {
    margin-bottom: 15px;
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section_label {
    width: 300px;
    margin: 0 auto;
    font-size: 14px;
    font-weight: 400;
    line-height: 27px;
    background-color: #333333;
    color: #fff;
    text-align: center;
  }
  .about.about-stay .about_privilege .about_privilege_section_listWrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .about.about-stay .about_privilege .about_privilege_section_list {
    width: 48%;
  }
  .about.about-stay .about_privilege .about_privilege_section_listTitle {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 10px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section_listImage {
    width: 100%;
    margin-bottom: 6px;
  }
  .about.about-stay .about_privilege .about_privilege_section_listImage img {
    width: 100%;
    height: auto;
  }
  .about.about-stay .about_privilege .about_privilege_section_listText {
    font-size: 14px;
    font-weight: 200;
    line-height: 20px;
    letter-spacing: 0.05em;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnImage,
  .about.about-stay .about_privilege .about_privilege_section_1colmnTextArea {
    width: 48%;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnImage img {
    width: 100%;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnTextSection {
    margin-bottom: 45px;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnSectionTitle {
    margin-bottom: 11px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnSectionText {
    font-size: 14px;
    font-weight: 200;
    line-height: 20px;
    letter-spacing: 0.05em;
  }
  .about.about-stay .about_privilege .about_privilege_section_1colmnSectionNotice {
    float: right;
    font-size: 1.2rem;
    font-weight: 200;
    line-height: 1.5;
    letter-spacing: 0.02em;
  }
  .about.about-stay .about_hotels {
    padding-top: 70px;
    margin-bottom: 30px;
  }
  .about.about-stay .about_hotels .about_hotels_title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    padding-bottom: 25px;
    letter-spacing: 0.075em;
    border-bottom: solid 2px #999999;
  }
  .about.about-stay .about_hotels .about_hotels_list {
    display: block;
    border-bottom: dotted 1px #cccccc;
  }
  .about.about-stay .about_hotels .about_hotels_link {
    padding: 10px;
    display: block;
  }
  .about.about-stay .about_hotels .about_hotels_linkInner {
    overflow: hidden;
  }
  .about.about-stay .about_hotels .about_hotels_imgWrap {
    float: left;
    width: 70px;
  }
  .about.about-stay .about_hotels .about_hotels_imgWrap img {
    width: 100%;
    height: auto;
    border-radius: 4px;
  }
  .about.about-stay .about_hotels .about_hotels_textArea {
    float: left;
    padding-top: 4px;
    padding-left: 15px;
  }
  .about.about-stay .about_hotels .about_hotels_name {
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
  }
  .about.about-stay .about_hotels .about_hotels_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url(/assets/img/icon_link.png) center center no-repeat;
    background-size: 100%;
  }
  .about.about-stay .about_hotels .about_hotels_address {
    font-size: 12px;
    font-weight: 400;
    color: #666666;
  }
  .about.about-stay .about_apply {
    margin-bottom: 68px;
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .about {
    /**** about共通 ****/
  }
  .about .about_content_inner {
    padding: 0 10px;
  }
  .about .about_main {
    color: #fff;
    padding: 65px 0 70px;
  }
  .about .about_main .about_main_title {
    margin-bottom: 26px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 400;
    letter-spacing: 0.1em;
  }
  .about .about_main .about_main_copy {
    margin-bottom: 10px;
    font-weight: 500;
    text-align: center;
    font-size: 1.4rem;
    line-height: 2.6rem;
    letter-spacing: 0.1em;
  }
  .about .about_main .about_main_text {
    text-align: left;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 2.0rem;
    letter-spacing: 0.1em;
    max-width: 430px;
    margin: 0 auto;
  }
  .about .about_main .about_main_text br {
    display: none;
  }
  .about_footer_list {
    display: block;
    margin-bottom: 10px;
    border-radius: 4px;
    border: solid 2px #000;
  }
  .about_footer_list-about .about_footer_link:before {
    width: 25px;
    height: 20px;
    background: url(/assets/img/about/icon_footer_about.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-apply .about_footer_link:before {
    width: 25px;
    height: 22px;
    background: url(/assets/img/about/icon_footer_apply.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-point .about_footer_link:before {
    width: 25px;
    height: 22px;
    background: url(/assets/img/about/icon_footer_point.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-privilege .about_footer_link:before {
    width: 25px;
    height: 21px;
    background: url(/assets/img/about/icon_footer_privilege.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-service .about_footer_link:before {
    width: 25px;
    height: 23px;
    background: url(/assets/img/about/icon_footer_service.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_link {
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 40px;
    letter-spacing: 0.075em;
    color: #333;
    text-align: center;
    position: relative;
  }
  .about_footer_link:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 14%;
    margin: auto;
  }
  .about_apply_btn {
    display: inline-block;
    padding: 0 20px;
    border-radius: 16px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 28px;
    border: solid 2px #000;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
  .about .about_hotelList .about_content_inner {
    padding: 0;
  }
  .about .about_hotelList .about_hotelList_title {
    padding-bottom: 12px;
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .about .about_hotelList .about_hotelList_list {
    display: block;
    border-top: solid 2px #999999;
  }
  .about .about_hotelList .about_hotelList_list:last-child {
    border-bottom: solid 2px #999999;
  }
  .about .about_hotelList .about_hotelList_link {
    display: block;
    padding: 0 15px;
    background-color: #ebebeb;
  }
  .about .about_hotelList .about_hotelList_linkInner {
    padding: 20px 0 19px;
    overflow: hidden;
  }
  .about .about_hotelList .about_hotelList_imgWrap {
    width: 18%;
    float: left;
  }
  .about .about_hotelList .about_hotelList_imgWrap img {
    width: 100%;
    border-radius: 3px;
  }
  .about .about_hotelList .about_hotelList_textArea {
    width: 82%;
    float: left;
    padding-top: 4px;
    padding-left: 10px;
  }
  .about .about_hotelList .about_hotelList_name {
    margin-bottom: 4px;
    font-size: 1.6rem;
    letter-spacing: 0.075rem;
    font-weight: 700;
    color: #333;
    line-height: 2.0rem;
  }
  .about .about_hotelList .about_hotelList_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url(/assets/img/icon_link.png) center center no-repeat;
    background-size: 100%;
  }
  .about .about_hotelList .about_hotelList_address {
    font-size: 1.0rem;
    color: #666;
    letter-spacing: 0.075rem;
  }
  .about .about_hotelList .about_hotelList_detail {
    padding: 15px 15px 40px;
  }
  .about .about_hotelList .about_hotelList_detail_item,
  .about .about_hotelList .about_hotelList_detail_item_tag {
    color: #333;
    margin-top: 22px;
  }
  .about .about_hotelList .about_hotelList_detail_item:first-child,
  .about .about_hotelList .about_hotelList_detail_item_tag:first-child {
    margin-top: 0;
  }
  .about .about_hotelList .about_hotelList_detail_item dt,
  .about .about_hotelList .about_hotelList_detail_item_tag dt {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .about .about_hotelList .about_hotelList_detail_item dt + dd,
  .about .about_hotelList .about_hotelList_detail_item_tag dt + dd {
    margin-top: 7px;
  }
  .about .about_hotelList .about_hotelList_detail_item dd,
  .about .about_hotelList .about_hotelList_detail_item_tag dd {
    font-size: 1.2rem;
    line-height: 1.28;
    margin-top: 3px;
    letter-spacing: 0.075em;
  }
  .about .about_hotelList .about_hotelList_detail_note {
    margin-top: 22px;
  }
  .about .about_hotelList .about_hotelList_detail_note ul li {
    font-weight: 200;
    line-height: 1.4;
    text-indent: -0.5em;
    margin-left: 0.5em;
  }
}

@media only screen and (min-width: 768px) {
  .about {
    /**** about共通 ****/
  }
  .about .about_content_inner {
    max-width: 1044px;
    margin: 0 auto;
    padding: 0 10px;
  }
  .about .about_main {
    color: #fff;
    padding-top: 64px;
    min-height: 300px;
    overflow: hidden;
  }
  .about .about_main .about_main_title {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
  }
  .about .about_main .about_main_text {
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075em;
  }
  .about .about_apply_btn {
    display: inline-block;
    padding: 0 20px;
    border-radius: 16px;
    font-size: 14px;
    line-height: 28px;
    border: solid 2px #000;
    letter-spacing: 0.06em;
  }
  .about_footer {
    letter-spacing: -.4em;
  }
  .about_footer_list {
    display: inline-block;
    width: 32%;
    margin-right: 2%;
    margin-bottom: 20px;
    border-radius: 4px;
    border: solid 2px #000;
  }
  .about_footer_list:nth-child(3n) {
    margin-right: 0;
  }
  .about_footer_list-about .about_footer_link:before {
    width: 32px;
    height: 24px;
    background: url(/assets/img/about/icon_footer_about.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-apply .about_footer_link:before {
    width: 32px;
    height: 26px;
    background: url(/assets/img/about/icon_footer_apply.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-point .about_footer_link:before {
    width: 32px;
    height: 30px;
    background: url(/assets/img/about/icon_footer_point.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-privilege .about_footer_link:before {
    width: 36px;
    height: 33px;
    background: url(/assets/img/about/icon_footer_privilege.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-service .about_footer_link:before {
    width: 32px;
    height: 36px;
    background: url(/assets/img/about/icon_footer_service.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_link {
    display: block;
    padding-left: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 56px;
    letter-spacing: 0.025em;
    color: #333;
    text-align: center;
    position: relative;
    background-color: #fff;
    border-radius: 2px;
  }
  .about_footer_link:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5%;
    margin: auto;
  }
  .about .about_hotelList .about_hotelList_title {
    text-align: center;
    margin-bottom: 20px;
    font-weight: 700;
  }
  .about .about_hotelList .about_hotelList_list {
    display: block;
    border-top: solid 2px #999999;
  }
  .about .about_hotelList .about_hotelList_list:last-child {
    border-bottom: solid 2px #999999;
  }
  .about .about_hotelList .about_hotelList_link {
    padding: 10px;
    display: block;
  }
  .about .about_hotelList .about_hotelList_linkInner {
    overflow: hidden;
  }
  .about .about_hotelList .about_hotelList_imgWrap {
    float: left;
    width: 70px;
  }
  .about .about_hotelList .about_hotelList_imgWrap img {
    width: 100%;
    height: auto;
    border-radius: 4px;
  }
  .about .about_hotelList .about_hotelList_textArea {
    float: left;
    padding-top: 4px;
    padding-left: 15px;
    letter-spacing: 0.075em;
  }
  .about .about_hotelList .about_hotelList_name {
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
  }
  .about .about_hotelList .about_hotelList_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url(/assets/img/icon_link.png) center center no-repeat;
    background-size: 100%;
  }
  .about .about_hotelList .about_hotelList_address {
    font-size: 12px;
    font-weight: 400;
    color: #666666;
  }
  .about .about_hotelList .about_hotelList_detail {
    padding: 15px 10px 30px;
    border-top: dotted 1px #cccccc;
    letter-spacing: 0.05em;
  }
  .about .about_hotelList .about_hotelList_detail_item {
    margin-top: 12px;
  }
  .about .about_hotelList .about_hotelList_detail_item dt {
    font-size: 1.2rem;
    font-weight: 700;
    color: #333;
    letter-spacing: 0.025em;
  }
  .about .about_hotelList .about_hotelList_detail_item dd {
    font-size: 1.2rem;
    line-height: 1.3;
    margin-top: 6px;
    letter-spacing: 0.075em;
  }
  .about .about_hotelList .about_hotelList_detail_item_tag {
    margin-top: 5px;
    overflow: hidden;
  }
  .about .about_hotelList .about_hotelList_detail_item_tag:first-child {
    margin-top: 0;
  }
  .about .about_hotelList .about_hotelList_detail_item_tag dt {
    float: left;
    background-color: #999;
    border-radius: 2px;
    width: 170px;
    height: 24px;
    line-height: 24px;
    font-size: 1.2rem;
    color: #fff;
    text-align: center;
  }
  .about .about_hotelList .about_hotelList_detail_item_tag dd {
    font-size: 1.4rem;
    line-height: 24px;
    width: 100%;
    padding-left: 180px;
  }
  .about .about_hotelList .about_hotelList_detail_note {
    margin-top: 25px;
    overflow: hidden;
  }
  .about .about_hotelList .about_hotelList_detail_note ul {
    float: right;
  }
  .about .about_hotelList .about_hotelList_detail_note ul li {
    text-align: left;
    line-height: 1.4;
    text-indent: -0.5em;
    margin-left: 0.5em;
  }
}

@media only screen and (min-width: 961px) {
  .about_footer_list-about .about_footer_link:after {
    width: 32px;
    height: 24px;
    background: url(/assets/img/about/icon_footer_about_hover.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-apply .about_footer_link:after {
    width: 32px;
    height: 26px;
    background: url(/assets/img/about/icon_footer_apply_hover.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-point .about_footer_link:after {
    width: 32px;
    height: 30px;
    background: url(/assets/img/about/icon_footer_point_hover.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-privilege .about_footer_link:after {
    width: 36px;
    height: 33px;
    background: url(/assets/img/about/icon_footer_privilege_hover.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_list-service .about_footer_link:after {
    width: 32px;
    height: 36px;
    background: url(/assets/img/about/icon_footer_service_hover.png) center center no-repeat;
    background-size: auto 100%;
  }
  .about_footer_link {
    transition: all 0.3s ease-in-out;
  }
  .about_footer_link:before, .about_footer_link:after {
    transition: all 0.3s ease-in-out;
  }
  .about_footer_link:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5%;
    margin: auto;
    opacity: 0;
  }
  .about_footer_link:hover {
    opacity: 1.0;
    background-color: #000;
    color: #fff;
  }
  .about_footer_link:hover:before {
    opacity: 0;
  }
  .about_footer_link:hover:after {
    opacity: 1.0;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_osakabay_list_lead_bold {
    font-weight: 700;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label {
    background-color: #333;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.025em;
    line-height: 24px;
    padding-left: 6px;
    display: inline-block;
    position: relative;
    padding-right: 15px;
    margin-bottom: 7px;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label_number {
    padding-left: 5px;
    display: inline-block;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label:after {
    content: '';
    border-top: 12px solid transparent;
    border-right: 8px solid #fff;
    border-bottom: 12px solid transparent;
    box-sizing: border-box;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
  }
  .campaign .campaign_detail .plan_osakabay_list_item {
    margin-top: 55px;
  }
  .campaign .campaign_detail .plan_osakabay_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_osakabay_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_osakabay_list_photo {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_osakabay_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_osakabay_list_lead_ul {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_osakabay_list_summary {
    margin: 24px 0 30px;
  }
  .campaign .campaign_detail .plan_osakabay_list_summary_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_osakabay_link_detail {
    text-align: center;
    padding-bottom: 30px;
    margin-top: 60px;
  }
  .campaign .campaign_detail .plan_osakabay_link_detail a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_osakabay_list_lead_bold {
    font-weight: 700;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label {
    background-color: #333;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.025em;
    line-height: 30px;
    padding-left: 8px;
    display: inline-block;
    position: relative;
    margin-bottom: 7px;
    padding-right: 22px;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label_number {
    padding-left: 6px;
    display: inline-block;
  }
  .campaign .campaign_detail .plan_osakabay_campaign_label:after {
    content: '';
    border-top: 15px solid transparent;
    border-right: 8px solid #fff;
    border-bottom: 15px solid transparent;
    box-sizing: border-box;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
  }
  .campaign .campaign_detail .plan_osakabay_list {
    margin: 0 -50px;
  }
  .campaign .campaign_detail .plan_osakabay_list_item {
    padding: 0 50px;
    margin-top: 40px;
  }
  .campaign .campaign_detail .plan_osakabay_list_item:first-child {
    margin-top: 0px;
  }
  .campaign .campaign_detail .plan_osakabay_list_ttl {
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
  }
  .campaign .campaign_detail .plan_osakabay_list_main {
    position: relative;
    margin-top: 15px;
    overflow: hidden;
  }
  .campaign .campaign_detail .plan_osakabay_list_photo {
    float: right;
    width: 40.91%;
    padding-left: 35px;
  }
  .campaign .campaign_detail .plan_osakabay_list_lead {
    width: 59.09%;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
  .campaign .campaign_detail .plan_osakabay_list_lead_ul {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 22px;
  }
  .campaign .campaign_detail .plan_osakabay_list_summary {
    margin: 40px 0 30px;
  }
  .campaign .campaign_detail .plan_osakabay_list_summary_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_osakabay_link_detail {
    text-align: center;
    margin-top: 80px;
  }
  .campaign .campaign_detail .plan_osakabay_link_detail a {
    display: inline-block;
    padding: 0 52px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_sapporogrand01 {
    margin-top: 55px;
    margin-bottom: 20px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_sapporogrand01_video {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_video iframe {
    width: 100%;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead > li {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead > li:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead_ttl {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead_text {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_summary {
    margin-top: 24px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_summary_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_sapporogrand01_link_facility {
    text-align: center;
    padding-bottom: 30px;
    margin-top: 50px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_link_facility a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_sapporogrand01 {
    margin: 0 -50px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_inner {
    padding: 0 50px 50px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_ttl {
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
  }
  .campaign .campaign_detail .plan_sapporogrand01_main {
    position: relative;
    margin-top: 35px;
    overflow: hidden;
  }
  .campaign .campaign_detail .plan_sapporogrand01_video {
    float: right;
    width: 40.91%;
    padding-left: 35px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_video iframe {
    width: 100%;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead {
    width: 59.09%;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    padding-bottom: 40px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead > li {
    margin-top: 28px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead > li:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead_ttl {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.33;
  }
  .campaign .campaign_detail .plan_sapporogrand01_lead_text {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 12px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_summary {
    margin-top: 60px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_summary_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_sapporogrand01_link_facility {
    text-align: center;
    margin-bottom: 40px;
  }
  .campaign .campaign_detail .plan_sapporogrand01_link_facility a {
    display: inline-block;
    padding: 0 52px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_sapporogrand02 {
    margin-bottom: 60px;
  }
  .campaign .campaign_detail .plan_sapporogrand02_photo_item img {
    width: 100%;
    padding: 0;
  }
  .campaign .campaign_detail .plan_sapporogrand02_lead {
    font-size: 1.2rem;
    line-height: 1.7;
    font-weight: 200;
    letter-spacing: 0.11rem;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_sapporogrand02 {
    margin-bottom: 70px;
  }
  .campaign .campaign_detail .plan_sapporogrand02_photo {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    margin: 0 -25px;
  }
  .campaign .campaign_detail .plan_sapporogrand02_photo_item {
    width: 47.29%;
    margin: 0 25px;
  }
  .campaign .campaign_detail .plan_sapporogrand02_photo_item img {
    width: 100%;
  }
  .campaign .campaign_detail .plan_sapporogrand02_lead {
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 0.13rem;
    margin-top: 35px;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_sapporogrand03 {
    padding-top: 10px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item {
    margin-top: 57px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item:last-child {
    margin-bottom: 60px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_photo {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_sapporogrand03 {
    padding-top: 40px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item {
    overflow: hidden;
    margin-top: 88px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_item:last-child {
    margin-bottom: 120px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_ttl {
    float: right;
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
    width: 62.01%;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_photo {
    float: left;
    width: 33.54%;
  }
  .campaign .campaign_detail .plan_sapporogrand03_list_lead {
    float: right;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 18px;
    width: 62.01%;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_sapporopark_list_item {
    margin-top: 55px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporopark_list_item:last-child {
    margin-bottom: 20px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_sapporopark_list_photo {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_lead_ttl {
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.2;
    margin-bottom: 12px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_summary {
    margin-top: 24px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_summary_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_sapporopark_link_detail {
    text-align: center;
    padding-bottom: 30px;
    margin-top: 25px;
  }
  .campaign .campaign_detail .plan_sapporopark_link_detail a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_sapporopark_list {
    margin: 0 -50px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_item {
    padding: 0 50px;
    margin-top: 80px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_sapporopark_list_item:last-child {
    padding-bottom: 50px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_ttl {
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
  }
  .campaign .campaign_detail .plan_sapporopark_list_main {
    position: relative;
    margin-top: 35px;
    overflow: hidden;
  }
  .campaign .campaign_detail .plan_sapporopark_list_photo {
    float: right;
    width: 40.91%;
    padding-left: 35px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_lead {
    width: 59.09%;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    padding-bottom: 40px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_lead_ttl {
    display: block;
    font-size: 2.0rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.2;
    margin-bottom: 23px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_summary {
    margin-top: 60px;
  }
  .campaign .campaign_detail .plan_sapporopark_list_summary_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_sapporopark_link_detail {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 40px;
  }
  .campaign .campaign_detail .plan_sapporopark_link_detail a {
    display: inline-block;
    padding: 0 52px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_seaworld01_list_item {
    margin-top: 55px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_seaworld01_list_item:last-child {
    margin-bottom: 20px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_seaworld01_list_photo {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_pdf {
    text-align: right;
    margin-top: 11px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_pdf a {
    color: #333;
    font-size: 1.0rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    display: inline-block;
    padding-right: 21px;
    background: url(/assets/img/icon_pdf_small.png) right center no-repeat;
    background-size: 14px 18px;
    line-height: 18px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_summary {
    margin-top: 24px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_summary_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_seaworld01_link_facility {
    text-align: center;
    padding-bottom: 30px;
    margin-top: 50px;
  }
  .campaign .campaign_detail .plan_seaworld01_link_facility a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_seaworld01_list {
    margin: 0 -50px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_item {
    padding: 73px 50px 80px;
    border-top: 1px solid #a6acad;
  }
  .campaign .campaign_detail .plan_seaworld01_list_item:first-child {
    border-top: none;
    padding-top: 0;
  }
  .campaign .campaign_detail .plan_seaworld01_list_item:last-child {
    padding-bottom: 50px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_ttl {
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
  }
  .campaign .campaign_detail .plan_seaworld01_list_main {
    position: relative;
    margin-top: 35px;
    overflow: hidden;
  }
  .campaign .campaign_detail .plan_seaworld01_list_photo {
    float: right;
    width: 40.91%;
    padding-left: 35px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_lead {
    width: 59.09%;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    padding-bottom: 40px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_pdf {
    position: absolute;
    bottom: 4px;
    right: 40.91%;
  }
  .campaign .campaign_detail .plan_seaworld01_list_pdf a {
    color: #333;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    display: inline-block;
    padding-right: 26px;
    background: url(/assets/img/icon_pdf_small.png) right center no-repeat;
    background-size: 18px 23px;
    line-height: 23px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_summary {
    margin-top: 60px;
  }
  .campaign .campaign_detail .plan_seaworld01_list_summary_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .campaign .campaign_detail .plan_seaworld01_link_facility {
    text-align: center;
    margin-bottom: 40px;
  }
  .campaign .campaign_detail .plan_seaworld01_link_facility a {
    display: inline-block;
    padding: 0 52px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_seaworld02 {
    padding-top: 10px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item {
    margin-top: 57px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item:last-child {
    margin-bottom: 60px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .campaign .campaign_detail .plan_seaworld02_list_photo {
    margin-top: 15px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_link {
    text-align: center;
    margin-top: 35px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_link a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_seaworld02 {
    padding-top: 40px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item {
    overflow: hidden;
    margin-top: 88px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item:first-child {
    margin-top: 0;
  }
  .campaign .campaign_detail .plan_seaworld02_list_item:last-child {
    margin-bottom: 120px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_ttl {
    float: right;
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
    width: 62.01%;
    margin-top: 5px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_photo {
    float: left;
    width: 33.54%;
  }
  .campaign .campaign_detail .plan_seaworld02_list_lead {
    float: right;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 18px;
    width: 62.01%;
  }
  .campaign .campaign_detail .plan_seaworld02_list_link {
    float: right;
    clear: right;
    margin-top: 35px;
  }
  .campaign .campaign_detail .plan_seaworld02_list_link a {
    display: inline-block;
    padding: 0 45px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
}

.campaign .campaign_detail {
  width: 100%;
}

.campaign .campaign_detail .service_menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
}

.campaign .campaign_detail .service_menu_base {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}

.campaign .campaign_detail .service_menu_cont {
  max-width: 820px;
  width: 80%;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: -300px auto;
}

.campaign .campaign_detail .service_menu_ttl {
  font-size: 2.4rem;
  font-weight: 500;
  text-align: center;
  padding-top: 37px;
  padding-bottom: 20px;
  letter-spacing: 0.03rem;
  position: relative;
}

.campaign .campaign_detail .service_menu_ttl img {
  position: relative;
  top: 7px;
  left: -9px;
  width: 26px;
}

.campaign .campaign_detail .service_menu_list {
  background-color: #f4f4f4;
  max-width: 740px;
  margin: 0 auto 40px;
  padding: 13px 10px;
  height: 330px;
  overflow-x: scroll;
}

.campaign .campaign_detail .service_menu_list_ttl {
  font-size: 1.8rem;
  letter-spacing: 0.06rem;
  background-color: #ceb656;
  color: #fff;
  text-align: center;
  max-width: 750px;
  width: 100%;
  margin: 0 auto 21px;
  padding: 12px 0 10px;
}

.campaign .campaign_detail .service_menu_list_ttl strong {
  font-size: 2.4rem;
}

.campaign .campaign_detail .service_menu_list_desc {
  padding: 0 16px;
  font-size: 1.6rem;
  line-height: 2.14;
  letter-spacing: 0.038rem;
}

.campaign .campaign_detail .service_menu_close a {
  position: absolute;
  top: 20px;
  right: 20px;
  content: "";
  display: block;
  width: 29px;
  height: 29px;
  background: url("/english/assets/img/btn_close.png") center no-repeat;
  background-size: cover;
}

.campaign .campaign_detail .plan {
  max-width: 1024px;
  margin: 0 auto;
}

.campaign .campaign_detail .plan img {
  width: 100%;
}

.campaign .campaign_detail .plan_top {
  width: 100%;
  height: 98px;
  position: relative;
  display: table;
}

.campaign .campaign_detail .plan_top_inner {
  display: table-cell;
  vertical-align: middle;
  margin-top: 5px;
}

.campaign .campaign_detail .plan_top_ttl {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 63px;
  letter-spacing: 0.1rem;
}

.campaign .campaign_detail .plan_top_date {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.2;
  margin-top: 15px;
  letter-spacing: 0.1rem;
  color: #080808;
  margin-bottom: 36px;
}

.campaign .campaign_detail .plan_contents {
  margin: 42px 50px 39px;
}

.campaign .campaign_detail .plan_contents img {
  width: auto;
  height: auto;
  max-width: 100%;
  display: block;
  margin: 0 auto;
}

.campaign .campaign_detail .plan_contents_lead {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 58px;
  letter-spacing: 0.13rem;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg {
  padding-bottom: 58px;
  line-height: 1.6;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg p {
  font-size: 14px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg h1 {
  font-size: 28px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg h2 {
  font-size: 26px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg h3 {
  font-size: 24px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg strong {
  font-weight: bold;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg a {
  text-decoration: underline;
}

.campaign .campaign_detail .plan_contents_point {
  width: 100%;
  margin-bottom: 54px;
}

.campaign .campaign_detail .plan_contents_point li {
  vertical-align: top;
}

.campaign .campaign_detail .plan_contents_point_pic {
  width: 310px;
  padding-top: 8px;
}

.campaign .campaign_detail .plan_contents_point_detail {
  padding: 0 10px 0 8px;
}

.campaign .campaign_detail .plan_contents_point_detail .point_title {
  font-size: 2.0rem;
  font-weight: 700;
  margin-bottom: 31px;
  line-height: 1.4;
  letter-spacing: 0.29rem;
}

.campaign .campaign_detail .plan_contents_point_detail .point_subtitle {
  font-size: 1.6rem;
  font-weight: 200;
  margin-bottom: 21px;
  line-height: 1.5;
  letter-spacing: 0.14rem;
}

.campaign .campaign_detail .plan_contents_point_detail .point_text {
  font-size: 1.6rem;
  font-weight: 200;
  margin-left: 18px;
  line-height: 1.6;
  letter-spacing: 0.12rem;
  margin-bottom: 25px;
}

.campaign .campaign_detail .plan_contents_ttl {
  font-size: 2.0rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.21rem;
  margin-bottom: 20px;
}

.campaign .campaign_detail .plan_contents_outline {
  margin-bottom: 66px;
}

.campaign .campaign_detail .plan_contents_outline table {
  width: 100%;
  border-collapse: collapse;
  border: 1px #a6acad solid;
}

.campaign .campaign_detail .plan_contents_outline table tr {
  font-size: 1.6rem;
}

.campaign .campaign_detail .plan_contents_outline table th, .campaign .campaign_detail .plan_contents_outline table td {
  padding: 20px;
  line-height: 1.6;
  vertical-align: middle;
  border: 1px #a6acad solid;
}

.campaign .campaign_detail .plan_contents_outline table th {
  text-align: left;
  width: 22%;
  background-color: #c2c6c7;
}

.campaign .campaign_detail .plan_contents_outline table td {
  width: 78%;
}

.campaign .campaign_detail .plan_contents_sns {
  display: block;
  text-align: right;
}

.campaign .campaign_detail .plan_contents_sns li {
  display: inline-block;
  padding-right: 18px;
}

.campaign .campaign_detail .plan_contents_sns li:last-child {
  padding-right: 0;
}

.campaign .campaign_detail .plan_contents_sns img {
  width: 40px;
  height: 40px;
}

.campaign .campaign_detail .recommend_ttl {
  font-size: 2.0rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.21rem;
  margin-bottom: 27px;
}

.campaign .campaign_detail .recommend_plan_cont {
  background-color: #f4f4f4;
  padding: 40px 0 100px;
}

.campaign .campaign_detail .recommend_plan_cont_list {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto 40px;
}

.campaign .campaign_detail .recommend_plan_cont_list > .no-cont {
  font-size: 1.4rem;
  padding-top: 15px;
}

.campaign .campaign_detail .recommend_plan_cont_list.index {
  width: 100%;
  border-radius: 8px;
  background-color: #fff;
  padding: 10px 58px 23px;
  border: 2px solid rgba(201, 201, 201, 0.5);
  text-align: center;
}

.campaign .campaign_detail .recommend_plan_cont_list .index-name {
  text-align: center;
  font-size: 1.8rem;
  margin: 5px 25px 0 0;
  display: inline-block;
}

.campaign .campaign_detail .recommend_plan_cont_list .index-name a {
  display: inline-block;
  width: 100%;
  padding: 5px 0;
}

.campaign .campaign_detail .recommend_plan_cont_list .index-name .icon-arrow {
  content: "";
  background: url("/english/assets/img/btn_arrow.png");
  background-size: contain;
  width: 24px;
  height: 24px;
  display: inline-block;
  position: relative;
  top: 5px;
  margin-right: 11px;
}

.campaign .campaign_detail .recommend_plan_cont_list.service {
  width: 100%;
  padding: 48px 50px;
  background-color: #fff;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_ttl {
  font-size: 2.8rem;
  text-align: center;
  padding-bottom: 26px;
  border-bottom: 2px solid #333333;
  margin-bottom: 34px;
  letter-spacing: 0.15rem;
  position: relative;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_ttl_pre {
  font-size: 1.4rem;
  font-weight: 400;
  position: absolute;
  right: 0;
  bottom: 29px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_genre {
  font-size: 1.4rem;
  line-height: 1.7;
  padding-bottom: 7px;
  letter-spacing: 0.2rem;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_place {
  font-size: 2.0rem;
  line-height: 1.2;
  padding-bottom: 17px;
  letter-spacing: 0.05rem;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail {
  display: table;
  padding-bottom: 60px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail.border {
  border-bottom: 1px dotted #6c6c6c;
  margin-bottom: 60px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail:last-of-type {
  padding-bottom: 0;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail li {
  display: table-cell;
  vertical-align: top;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_img {
  width: 33%;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_img img {
  width: 100%;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_text {
  padding-left: 48px;
  position: relative;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_ttl {
  font-size: 2.0rem;
  line-height: 20px;
  display: inline;
  letter-spacing: 0.2rem;
  vertical-align: bottom;
  line-height: 2.0;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_ttl .tag {
  font-size: 1.4rem;
  font-weight: 200;
  padding: 0 14px;
  height: 26px;
  background-color: #000;
  display: inline-block;
  line-height: 26px;
  text-align: center;
  color: #fff;
  margin-right: 12px;
  margin-bottom: 4px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_ttl + .service_detail_sub {
  padding-top: 7px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_price {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.17;
  padding-bottom: 31px;
  padding-top: 7px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_price strong {
  font-size: 2.2rem;
  letter-spacing: 0.2rem;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_sub {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.34;
  letter-spacing: 0.04rem;
  padding-bottom: 3px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_desc {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04rem;
  padding-bottom: 15px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu {
  font-size: 1.6rem;
  line-height: 2.25;
  font-weight: 700;
  letter-spacing: 0.13rem;
  display: block;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu .icon-menu {
  content: "";
  background: url(/assets/img/icon_menu.png);
  background-size: contain;
  margin-right: 5px;
  width: 13px;
  height: 15px;
  display: inline-block;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_reserve {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 14px 15px 12px 20px;
  border: 2px solid #000;
  border-radius: 23px;
  letter-spacing: 0.1rem;
  display: block;
  float: right;
  width: 260px;
  height: 47px;
  transition: all 0.3s;
  margin-top: 10px;
}

.campaign .campaign_detail .recommend_plan_cont_list .service_detail_reserve:hover {
  background-color: #000;
  color: #fff;
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail {
    min-width: 320px;
  }
  .campaign .campaign_detail .plan {
    min-width: 320px;
  }
  .campaign .campaign_detail .plan img {
    padding-bottom: 10px;
  }
  .campaign .campaign_detail .plan_top {
    height: 51px;
    padding: 0 12px;
  }
  .campaign .campaign_detail .plan_top_ttl {
    font-size: 1.6rem;
    margin-top: 42px;
    letter-spacing: 0.25rem;
  }
  .campaign .campaign_detail .plan_top_date {
    font-size: 1.0rem;
    margin-top: 4px;
    letter-spacing: 0.01rem;
    color: #666666;
  }
  .campaign .campaign_detail .plan_contents {
    max-width: 640px;
    margin: 15px auto 81px;
    padding: 0 12px;
  }
  .campaign .campaign_detail .plan_contents_lead {
    font-size: 1.2rem;
    line-height: 1.7;
    font-weight: 200;
    margin-bottom: 43px;
    letter-spacing: 0.11rem;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg {
    padding-bottom: 43px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg p {
    font-size: 12px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg h1 {
    font-size: 18px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg h2 {
    font-size: 16px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg h3 {
    font-size: 14px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg strong {
    font-weight: bold;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg a {
    text-decoration: underline;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .application_link {
    text-align: center;
    margin: 50px auto 60px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .application_link a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 30px;
    border-radius: 25px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 30px;
    width: 200px;
    font-size: 1.2rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: 0.06px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions {
    border-bottom: 1px solid #c9c9c9;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions h3 {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 56px;
    letter-spacing: 0.1px;
    text-align: center;
    margin-bottom: 32px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list {
    text-align: center;
    margin-bottom: 62px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_item {
    display: -ms-flexbox;
    display: flex;
    border-radius: 5px;
    width: 100%;
    height: 120px;
    border: 1.5px solid #303333;
    -ms-flex-align: center;
        align-items: center;
    margin-bottom: 11px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions h5 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 14.16px;
    letter-spacing: 0.06px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions p {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.075px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_phone_img {
    width: 80px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_phone_img img {
    width: 28px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_coupon_img {
    width: 80px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_coupon_img img {
    width: 44px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_card_img {
    width: 80px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_card_img img {
    width: 51px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_hotel_img {
    width: 80px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_hotel_img img {
    width: 34px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_text_container {
    width: 210px;
    text-align: left;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_text_container h5 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 14.16px;
    letter-spacing: 0.025px;
    margin-bottom: 5px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .functions .functions_list_text_container p {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: 0.075px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .point_extension {
    margin-top: 50px;
    padding-bottom: 50px;
    border-bottom: 1px solid #c9c9c9;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .point_extension img {
    width: 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .point_extension h3 {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 56px;
    letter-spacing: 0.1px;
    text-align: center;
    margin-bottom: 5px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .point_extension .point_extension_description {
    margin-bottom: 30px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.05px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .point_extension .point_extension_expiration_date {
    margin-bottom: 7px;
    font-size: 1.0rem;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: 0.05px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .rankup {
    padding: 50px 0px 72px;
    border-bottom: 1px solid #c9c9c9;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .rankup h3 {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 31px;
    letter-spacing: 0.1px;
    text-align: center;
    margin-bottom: 10px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .rankup p {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.05px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .rankup img {
    width: 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download {
    margin-top: 50px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download h3 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_apple {
    border-bottom: 1px solid #c9c9c9;
    margin-top: 30px;
    text-align: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_badge p {
    font-size: 1.4rem;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 4px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_badge span {
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_badge img {
    width: 190px;
    margin-bottom: 10px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_qr {
    width: 110px;
    height: 110px;
    margin-bottom: 30px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_googleplay {
    margin: 30px 0px 30px 0px;
    text-align: center;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_badge p {
    font-size: 1.4rem;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 4px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_badge span {
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_badge img {
    width: 190px;
    margin-bottom: 10px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_qr {
    width: 110px;
    height: 110px;
    margin-bottom: 80px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .more_info_link {
    text-align: right;
    padding-top: 30px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .more_info_link p {
    font-size: 1.2rem;
    letter-spacing: 0.06px;
    font-weight: 700;
    line-height: 12px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .more_info_link a {
    display: inline-block;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
    text-decoration: none;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .more_info_link img {
    display: inline-block;
    width: 6px;
    padding: 0px;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer {
    margin-top: 30px;
    letter-spacing: -.4em;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list {
    display: block;
    margin-bottom: 10px;
    border-radius: 4px;
    border: solid 2px #000;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list-about .campaign_footer_link:before {
    width: 25px;
    height: 20px;
    background: url(/assets/img/about/icon_footer_about.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list-apply .campaign_footer_link:before {
    width: 25px;
    height: 22px;
    background: url(/assets/img/about/icon_footer_apply.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list-point .campaign_footer_link:before {
    width: 25px;
    height: 22px;
    background: url(/assets/img/about/icon_footer_point.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list-privilege .campaign_footer_link:before {
    width: 25px;
    height: 21px;
    background: url(/assets/img/about/icon_footer_privilege.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_list-service .campaign_footer_link:before {
    width: 25px;
    height: 23px;
    background: url(/assets/img/about/icon_footer_service.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_link {
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 40px;
    letter-spacing: 0.075em;
    color: #333;
    text-align: center;
    position: relative;
    text-decoration: none;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .plan_lp_202310 .campaign_footer_link:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 14%;
    margin: auto;
  }
  .campaign .campaign_detail .plan_contents_point {
    display: block;
  }
  .campaign .campaign_detail .plan_contents_point li {
    display: block;
  }
  .campaign .campaign_detail .plan_contents_point_detail {
    padding: 0;
  }
  .campaign .campaign_detail .plan_contents_point_detail img {
    padding-bottom: 10px;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_title {
    font-size: 1.4rem;
    margin-bottom: 14px;
    letter-spacing: 0.08rem;
    margin-bottom: 25px;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_subtitle {
    font-size: 1.2rem;
    margin-bottom: 14px;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_text {
    font-size: 1.2rem;
    letter-spacing: 0.06rem;
  }
  .campaign .campaign_detail .plan_contents_ttl {
    font-size: 1.6rem;
  }
  .campaign .campaign_detail .plan_contents_outline {
    margin-bottom: 15px;
  }
  .campaign .campaign_detail .plan_contents_outline table tr {
    font-size: 1.1rem;
  }
  .campaign .campaign_detail .plan_contents_outline table th, .campaign .campaign_detail .plan_contents_outline table td {
    padding: 10px;
    line-height: 1.7rem;
  }
  .campaign .campaign_detail .plan_contents_outline table th {
    text-align: center;
    width: 31%;
  }
  .campaign .campaign_detail .plan_contents_outline table td {
    width: 69%;
    letter-spacing: 0.18rem;
  }
  .campaign .campaign_detail .plan_contents_sns a {
    display: inline-block;
  }
  .campaign .campaign_detail .plan_contents_sns li {
    padding-right: 11px;
  }
  .campaign .campaign_detail .plan_contents_sns img {
    width: 38px;
    height: 38px;
    padding-bottom: 0;
  }
  .campaign .campaign_detail .recommend_ttl {
    font-size: 1.6rem;
    letter-spacing: 0.13rem;
    margin-bottom: 18px;
  }
  .campaign .campaign_detail .recommend_plan {
    background-color: #f4f4f4;
  }
  .campaign .campaign_detail .recommend_plan_cont {
    padding: 15px 0 30px;
    max-width: 640px;
    margin: 0 auto;
  }
  .campaign .campaign_detail .recommend_plan_cont_list {
    width: auto;
  }
  .campaign .campaign_detail .recommend_plan_cont_list > .no-cont {
    padding-bottom: 15px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list.index {
    display: block;
    height: auto;
    width: auto;
    background-color: #fff;
    margin: 0 10px 8px;
    padding: 5px 10px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name {
    display: block;
    text-align: left;
    font-size: 1.4rem;
    line-height: 3.6rem;
    letter-spacing: 0.1rem;
    margin: 0 auto;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name .icon-arrow {
    width: 20px;
    height: 20px;
    left: 5px;
    margin-right: 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name a {
    padding: 0;
  }
  .campaign .campaign_detail .recommend_plan_cont_list.service {
    width: auto;
    padding: 26px 16px;
    margin: 0 12px 30px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list:last-child.service {
    margin: 0 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_ttl {
    font-size: 1.6rem;
    padding-bottom: 14px;
    border-bottom: 1px solid #333333;
    margin-bottom: 17px;
    letter-spacing: 0.1rem;
    font-weight: 700;
    text-align: left;
    padding-right: 90px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_ttl_pre {
    font-size: 1.2rem;
    bottom: 16px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_genre {
    font-size: 1.0rem;
    padding-bottom: 0;
    letter-spacing: 0.02rem;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_place {
    font-size: 1.2rem;
    font-weight: 700;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail {
    display: block;
    padding-bottom: 21px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail.border {
    margin-bottom: 15px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail li {
    display: block;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_img {
    width: 100%;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_img img {
    min-width: 69px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_text {
    width: 100%;
    padding-left: 0;
    padding-top: 20px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_ttl {
    font-size: 1.4rem;
    letter-spacing: 0.12rem;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_ttl .tag {
    font-size: 1.0rem;
    height: 20px;
    display: inline-block;
    line-height: 20px;
    margin-right: 0;
    margin-bottom: 2px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_price {
    font-size: 1.2rem;
    padding: 10px 6px 10px 0;
    text-align: right;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_price strong {
    font-size: 1.8rem;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_sub {
    font-size: 1.2rem;
    margin-top: 19px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_desc {
    font-size: 1.2rem;
    line-height: 1.9;
    letter-spacing: 0.09rem;
    padding-bottom: 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu {
    font-size: 1.2rem;
    line-height: 2.5;
    border-top: 1px solid #a8a8a8;
    border-bottom: 1px solid #a8a8a8;
    position: relative;
    margin-bottom: 0;
    padding-left: 1px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu:before {
    content: "";
    position: absolute;
    top: 14px;
    right: 0;
    width: 12px;
    background: #202020;
    height: 2px;
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu:after {
    content: "";
    position: absolute;
    top: 14px;
    right: 0;
    width: 12px;
    background: #202020;
    height: 2px;
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
    transition: all 0.5s ease-in-out;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu.is-show:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu.is-show:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu_list.js-targetlist {
    display: none;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu_list .menu_list_ttl {
    font-size: 1.2rem;
    line-height: 2.6;
    letter-spacing: 0.075rem;
    background-color: #ceb656;
    color: #fff;
    text-align: center;
    margin-top: 14px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu_list .menu_list_desc {
    font-size: 1.2rem;
    letter-spacing: 0.06rem;
    padding-top: 10px;
    padding-bottom: 23px;
    line-height: 1.9;
    border-bottom: 1px solid #a8a8a8;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_menu_list .menu_list_desc-indent {
    text-indent: -1em;
    margin-left: 1em;
    margin-bottom: 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .service_detail_reserve {
    font-size: 1.2rem;
    padding: 9px 0;
    text-align: center;
    border: 1px solid #000;
    border-radius: 14px;
    float: none;
    width: 220px;
    height: 31px;
    margin: 30px auto;
  }
  .campaign .campaign_detail .plan_notes {
    font-size: 1.0rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 2.0;
    text-indent: -0.75em;
    padding-left: 3px;
    margin-left: 0.75em;
    margin-top: 8px;
  }
  .campaign .campaign_detail .plan_table {
    table-layout: fixed;
    width: 100%;
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.4;
    border-bottom: solid 1px #a6acad;
    margin-top: 11px;
  }
  .campaign .campaign_detail .plan_table th,
  .campaign .campaign_detail .plan_table td {
    vertical-align: middle;
    border-left: solid 1px #a6acad;
    border-top: solid 1px #a6acad;
  }
  .campaign .campaign_detail .plan_table th {
    text-align: left;
    background-color: #c2c6c7;
    padding: 15px 10px;
    width: 34.12%;
  }
  .campaign .campaign_detail .plan_table td {
    text-align: left;
    padding: 10px;
    background-color: #fff;
    line-height: 1.66;
  }
  .campaign .campaign_detail .plan_table td:last-child {
    border-right: solid 1px #a6acad;
  }
  .campaign .campaign_detail .plan_table .bold_price {
    font-size: 1.6rem;
    font-weight: 500;
  }
  .campaign .campaign_detail .plan_table .bold_text {
    font-size: 1.6rem;
    font-weight: 500;
  }
  .campaign .campaign_detail .plan_table .note {
    font-size: 1.0rem;
  }
  .campaign .campaign_detail.recommend + .planandevent {
    margin-top: 50px;
    padding-top: 0;
    border-top: none;
  }
  .campaign .planandevent {
    margin-top: -20px;
    padding-top: 50px;
    padding-bottom: 70px;
    border-top: 2px solid #999;
  }
  .campaign .planandevent-campaign {
    margin-top: 50px;
    padding-top: 0;
    border-top: none;
  }
  .campaign .planandevent_ttl {
    font-size: 1.7rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .campaign .common_event_carousel {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .campaign .campaign_detail .plan_lp_202310 .application_link {
    text-align: center;
    width: 100%;
    max-width: 1044px;
    padding: 0 10px 70px;
    margin: 50px auto 0;
  }
  .campaign .campaign_detail .plan_lp_202310 .application_link a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 50px;
    border-radius: 25px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 50px;
    width: 318px;
    font-size: 1.8rem;
    font-weight: 700;
    text-decoration: none;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions {
    margin-bottom: 30px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
    margin-bottom: 50px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between;
    text-align: center;
    -ms-flex-align: center;
        align-items: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_item {
    display: -ms-flexbox;
    display: flex;
    border-radius: 5px;
    width: calc(50% - 10px);
    width: 440px;
    height: 200px;
    border: 1.5px solid #303333;
    -ms-flex-align: center;
        align-items: center;
    margin: 0px 2px 30px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions h5 {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions p {
    font-size: 1.6rem;
    font-weight: 400;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_phone_img {
    width: 110px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_phone_img img {
    width: 34px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_coupon_img {
    width: 110px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_coupon_img img {
    width: 72px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_card_img {
    width: 110px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_card_img img {
    width: 70px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_hotel_img {
    width: 110px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_hotel_img img {
    width: 40px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container {
    width: 270px;
    margin-left: 20px;
    text-align: left;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container h5 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.06px;
    margin-bottom: 6px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: 0.075px;
  }
  .campaign .campaign_detail .plan_lp_202310 .point_extension {
    padding-bottom: 60px;
    border-bottom: 1px solid #c9c9c9;
  }
  .campaign .campaign_detail .plan_lp_202310 .point_extension h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
    margin-bottom: 25px;
  }
  .campaign .campaign_detail .plan_lp_202310 .point_extension .point_extension_description {
    margin-bottom: 30px;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.05px;
  }
  .campaign .campaign_detail .plan_lp_202310 .point_extension .point_extension_expiration_date {
    margin-bottom: 7px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.05px;
  }
  .campaign .campaign_detail .plan_lp_202310 .rankup {
    padding: 80px 0px 72px;
    border-bottom: 1px solid #c9c9c9;
  }
  .campaign .campaign_detail .plan_lp_202310 .rankup img {
    width: 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .rankup h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
    margin-bottom: 30px;
  }
  .campaign .campaign_detail .plan_lp_202310 .rankup p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download {
    margin-top: 80px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents {
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_apple {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end;
    border-right: 1px solid #c9c9c9;
    padding-left: 34px;
    padding-right: 24px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_badge p {
    font-size: 1.6rem;
    line-height: 24px;
    font-weight: 400;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_badge img {
    width: 190px;
    margin-top: 4px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_apple .download_contents_apple_qr {
    width: 110px;
    height: 110px;
    margin-left: 32px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_googleplay {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end;
    padding-left: 34px;
    padding-right: 24px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_badge p {
    font-size: 1.6rem;
    line-height: 24px;
    font-weight: 400;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_badge img {
    width: 190px;
    margin-top: 4px;
  }
  .campaign .campaign_detail .plan_lp_202310 .download .download_contents .download_contents_googleplay .download_contents_googleplay_qr {
    width: 110px;
    height: 110px;
    margin-left: 32px;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link {
    text-align: right;
    width: 100%;
    max-width: 1044px;
    padding: 30px 10px 0;
    margin: 0 auto;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link p {
    font-size: 1.4rem;
    line-height: 19px;
    font-weight: 700;
    letter-spacing: 0.06px;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link a {
    display: inline-block;
    padding: 0 1px 3px;
    border-bottom: 2px solid #000;
    text-decoration: none;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link img {
    display: inline-block;
    width: 6px;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link .hover-text-detail a {
    transition: all 0.1s ease-in-out;
  }
  .campaign .campaign_detail .plan_lp_202310 .more_info_link .hover-text-detail a:hover {
    border-color: transparent !important;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer {
    margin-top: 160px;
    letter-spacing: -.4em;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list {
    display: inline-block;
    width: 32%;
    margin-right: 2%;
    margin-bottom: 20px;
    border-radius: 4px;
    border: solid 2px #000;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list:nth-child(3n) {
    margin-right: 0;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list-about .campaign_footer_link:before {
    width: 32px;
    height: 24px;
    background: url(/assets/img/about/icon_footer_about.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list-apply .campaign_footer_link:before {
    width: 32px;
    height: 26px;
    background: url(/assets/img/about/icon_footer_apply.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list-point .campaign_footer_link:before {
    width: 32px;
    height: 30px;
    background: url(/assets/img/about/icon_footer_point.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list-privilege .campaign_footer_link:before {
    width: 36px;
    height: 33px;
    background: url(/assets/img/about/icon_footer_privilege.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_list-service .campaign_footer_link:before {
    width: 32px;
    height: 36px;
    background: url(/assets/img/about/icon_footer_service.png) center center no-repeat;
    background-size: auto 100%;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_link {
    display: block;
    padding-left: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 56px;
    letter-spacing: 0.025em;
    color: #333;
    text-align: center;
    position: relative;
    background-color: #fff;
    border-radius: 2px;
    text-decoration: none;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_link:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5%;
    margin: auto;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_link p {
    transition: all 0.1s ease-in-out;
  }
  .campaign .campaign_detail .plan_lp_202310 .campaign_footer_link p:hover {
    border-bottom: 2px solid #000 !important;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_title {
    padding-right: 335px;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_image {
    float: right;
    width: 335px;
    padding-left: 25px;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_image img {
    width: 100%;
    height: auto;
  }
  .campaign .campaign_detail .plan_contents_point_detail .point_list {
    padding-right: 335px;
  }
  .campaign .campaign_detail.recommend + .planandevent {
    padding-top: 0;
    margin-top: 50px;
    border-top: none;
  }
  .campaign .campaign_detail .planandevent {
    padding-top: 90px;
    margin-top: 100px;
    border-top: 2px solid #999;
  }
  .campaign .campaign_detail .planandevent-campaign {
    padding-top: 0;
    margin-top: 50px;
    border-top: none;
  }
  .campaign .campaign_detail .planandevent_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .campaign .campaign_detail .common_event_carousel {
    margin-top: 30px;
  }
  .campaign .campaign_detail .plan_notes {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 2.0;
    text-indent: -0.75em;
    padding-left: 3px;
    margin-left: 0.75em;
    margin-top: 8px;
  }
  .campaign .campaign_detail .plan_table {
    table-layout: fixed;
    width: 100%;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.4;
    text-align: left;
    margin-top: 20px;
    border-bottom: solid 1px #a6acad;
  }
  .campaign .campaign_detail .plan_table th,
  .campaign .campaign_detail .plan_table td {
    vertical-align: middle;
    border-left: solid 1px #a6acad;
    padding: 25px 19px 23px;
    border-top: solid 1px #a6acad;
  }
  .campaign .campaign_detail .plan_table th {
    background-color: #c2c6c7;
    width: 210px;
  }
  .campaign .campaign_detail .plan_table td {
    background-color: #fff;
    line-height: 1.8;
  }
  .campaign .campaign_detail .plan_table td:last-child {
    border-right: solid 1px #a6acad;
  }
  .campaign .campaign_detail .plan_table .bold_price {
    font-size: 2.4rem;
    font-weight: 700;
  }
  .campaign .campaign_detail .plan_table .bold_text {
    font-size: 2.0rem;
    font-weight: 500;
  }
  .campaign .campaign_detail .plan_table .note {
    font-size: 1.2rem;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .campaign .campaign_detail .plan_top {
    padding: 0 20px;
  }
  .campaign .campaign_detail .plan_top_access {
    right: 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont {
    padding: 40px 12px 100px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list.index {
    padding: 5px 40px 18px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions {
    margin-bottom: 30px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.05px;
    text-align: center;
    margin-bottom: 50px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between;
    text-align: center;
    -ms-flex-align: center;
        align-items: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_item {
    display: -ms-flexbox;
    display: flex;
    border-radius: 5px;
    width: 48%;
    height: 200px;
    border: 1.5px solid #303333;
    -ms-flex-align: center;
        align-items: center;
    margin: 0px 0px 20px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_phone_img {
    width: 90px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_phone_img img {
    width: 30px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_coupon_img {
    width: 90px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_coupon_img img {
    width: 68px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_card_img {
    width: 90px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_card_img img {
    width: 66px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_hotel_img {
    width: 90px;
    margin-left: 10px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_hotel_img img {
    width: 36px;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container {
    width: 270px;
    margin-left: 20px;
    padding-right: 15px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container h5 {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.06px;
  }
  .campaign .campaign_detail .plan_lp_202310 .functions .functions_list_text_container p {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: 0.075px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 960px) {
  .campaign .campaign_detail .plan_contents_point .point_title {
    font-size: 1.7rem;
  }
  .campaign .campaign_detail .plan_contents_point .point_subtitle {
    font-size: 1.4rem;
  }
  .campaign .campaign_detail .plan_contents_point .point_text {
    font-size: 1.4rem;
  }
  .campaign .campaign_detail .plan_contents_ttl {
    font-size: 1.8rem;
  }
  .campaign .campaign_detail .plan_contents_outline {
    margin-bottom: 15px;
  }
  .campaign .campaign_detail .plan_contents_outline table tr {
    height: 51px;
    font-size: 1.3rem;
  }
  .campaign .campaign_detail .plan_contents_outline table th {
    padding: 0 15px;
    width: 24%;
    line-height: 1.7rem;
  }
  .campaign .campaign_detail .plan_contents_outline table td {
    padding: 0 15px;
    width: 76%;
    letter-spacing: 0.18rem;
    line-height: 1.7rem;
  }
  .campaign .campaign_detail .plan_contents_sns a {
    display: inline-block;
  }
  .campaign .campaign_detail .plan_contents_sns li {
    padding-right: 10px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name {
    font-size: 1.6rem;
    margin: 5px 15px 0 0;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name .icon-arrow {
    width: 22px;
    height: 22px;
    left: 5px;
    margin-right: 12px;
  }
  .campaign .campaign_detail .recommend_plan_cont_list .index-name a {
    padding: 3px 0;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area {
  border: 2px solid #333333;
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area {
    margin-top: 35px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover {
  padding: 40px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover {
    padding: 30px 10px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover:not(:first-of-type) {
  border-top: 2px solid #333333;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_red .campaign_area_block_title {
  border-bottom-color: #e34e32;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_red .campaign_area_block_content_main_prize_title {
  color: #e34e32;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_red.campaign_area_block_cover_soon:before {
  background-color: rgba(227, 78, 50, 0.502);
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_yellow .campaign_area_block_title {
  border-bottom-color: #fa9715;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_yellow .campaign_area_block_content_main_prize_title {
  color: #fa9715;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_yellow.campaign_area_block_cover_soon:before {
  background-color: rgba(250, 151, 21, 0.502);
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_purple .campaign_area_block_title {
  border-bottom-color: #546ebc;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_purple .campaign_area_block_content_main_prize_title {
  color: #546ebc;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_purple.campaign_area_block_cover_soon:before {
  background-color: rgba(84, 110, 188, 0.502);
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_green .campaign_area_block_title {
  border-bottom-color: #5bb6c6;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_green .campaign_area_block_content_main_prize_title {
  color: #5bb6c6;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_green.campaign_area_block_cover_soon:before {
  background-color: rgba(91, 182, 198, 0.502);
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_end {
  position: relative;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_end:before {
  content: "応募期間が終了しました。 \A ご応募ありがとうございました。";
  white-space: pre;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  text-align: center;
  -ms-flex-pack: center;
      justify-content: center;
  background-color: rgba(51, 51, 51, 0.502);
  color: #FFF;
  font-size: 4.2rem;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_end:before {
    font-size: 5.5vw;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_soon {
  position: relative;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_soon:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: url("/english/assets/img/icn_soon.png") center no-repeat;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_cover_soon:before {
    background-size: 80%;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  padding-bottom: 28px;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  margin-bottom: 45px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title {
    font-size: 1.6rem;
    padding-bottom: 20px;
    margin-bottom: 30px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title span {
  font-size: 3.2rem;
  letter-spacing: 0.5rem;
  display: inline-block;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title span:after {
  content: "｜";
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title span {
    font-size: 2.4rem;
    letter-spacing: 0.2rem;
    display: block;
  }
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_title span:after {
    content: "";
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content {
    display: block;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_img {
  -ms-flex: 0 1 300px;
      flex: 0 1 300px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main {
  -ms-flex: 0 1 485px;
      flex: 0 1 485px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize {
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize {
    display: block;
    margin-bottom: 15px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize_title {
  -ms-flex: 0 0 60px;
      flex: 0 0 60px;
  font-size: 2.4rem;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize_title {
    font-size: 2rem;
    margin-bottom: 5px;
    text-align: center;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize_txt {
  font-size: 1.8rem;
  line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_prize_txt {
    font-size: 1.6rem;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_txt {
  font-size: 1.8rem;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_txt {
    font-size: 1.2rem;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_btn {
  text-align: center;
  margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_btn {
    margin-top: 20px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_btn a {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
  padding: 10px 30px;
  border: 2px solid;
  border-radius: 30px;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_area_block_content_main_btn a {
    font-size: 1.4rem;
    padding: 5px 30px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box {
  position: relative;
  border: 2px solid #000;
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box {
    margin-top: 35px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col {
    display: block;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_img {
  -ms-flex: 0 0 240px;
      flex: 0 0 240px;
  margin-right: 40px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_img {
    margin-right: 0;
    margin-bottom: 20px;
    padding: 0 10px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_img_note {
  display: block;
  font-size: 1rem;
  line-height: 1.2;
  margin-top: 5px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_img_note {
    font-size: 1rem;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_content {
  -ms-flex: 0 1 555px;
      flex: 0 1 555px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile {
    margin-top: 25px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_img {
  -ms-flex: 0 0 120px;
      flex: 0 0 120px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_img {
    -ms-flex: 0 0 36%;
        flex: 0 0 36%;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_content {
  -ms-flex: 0 1 410px;
      flex: 0 1 410px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_content {
    -ms-flex: 0 1 58%;
        flex: 0 1 58%;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_title {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 7px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_title {
    font-size: 1.2rem;
    margin-bottom: 4px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_2col_profile_txt {
  font-size: 1.2rem;
  line-height: 1.4;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_deco {
  position: absolute;
  z-index: 5;
  left: 40px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_deco {
    left: 10px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_chance .campaign_box_deco {
  top: -48px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_chance .campaign_box_deco {
    top: -40px;
    width: 145px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_present .campaign_box_deco {
  top: -28px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_present .campaign_box_deco {
    width: 110px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_inner {
  padding: 40px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_inner {
    padding: 15px 10px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_title {
  font-size: 1.8rem;
  text-align: center;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_title_cover {
  background-color: #f1f1f1;
  padding: 15px;
  border-bottom: 2px solid #000;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_title {
    font-size: 1.4rem;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_title span {
  font-size: 2.4rem;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_title span {
    font-size: 1.6rem;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_lead {
  font-size: 2rem;
  font-weight: bold;
  margin-top: 10px;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_lead {
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_txt {
  font-size: 1.6rem;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_txt + .campaign_box_txt {
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_txt {
    font-size: 1.2rem;
    line-height: 1.7;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step {
  display: -ms-flexbox;
  display: flex;
  margin-top: 15px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step:first-of-type {
  margin-top: 25px;
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step_title {
  -ms-flex: 0 0 105px;
      flex: 0 0 105px;
  font-family: "Roboto";
  font-size: 2.4rem;
  font-weight: bold;
  margin-right: 25px;
  border-right: 1px solid #000;
  line-height: 1.2;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step_title {
    -ms-flex: 0 0 70px;
        flex: 0 0 70px;
    font-size: 1.6rem;
    margin-right: 15px;
  }
}

.campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step_txt {
  font-size: 1.6rem;
  padding-top: 2px;
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_detail .plan_contents_inner_wysiwyg .campaign_box_step_txt {
    font-size: 1.2rem;
    padding-top: 0;
  }
}

@media only screen and (min-width: 640px) and (max-width: 768px) {
  .campaign .campaign_detail .plan_top_img.pc-only {
    display: block !important;
  }
  .campaign .campaign_detail .plan_top_img.sp-only {
    display: none;
  }
}

@media only screen and (max-width: 960px) {
  .campaign .campaign_detail .service_detail_reserve_modal {
    display: none !important;
  }
}

@media only screen and (min-width: 961px) {
  .campaign .campaign_detail .service_detail_reserve_menu {
    display: none !important;
  }
}

.campaign_en_contents {
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.campaign_en_contents p {
  margin-top: 1lh;
}

.campaign_en_contents strong {
  font-weight: bold;
}

.campaign_en_contents_list {
  margin-top: 60px;
}

.campaign_en_contents_list dt {
  font-size: 18px;
  font-weight: bold;
  margin-top: 30px;
}

.campaign_en_contents_list dd {
  margin-left: 22px;
}

.campaign_en_contents_details {
  margin: 40px -50px 0;
}

.campaign_en_contents_details_title {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.125;
  text-align: center;
}

.campaign_en_contents_details_lead {
  font-size: 18px;
  line-height: 2;
  padding: 0 50px;
  margin-top: 30px;
}

.campaign_en_contents_details_lead em {
  background: linear-gradient(transparent 50%, #fad76c 50%);
  font-weight: bold;
}

.campaign_en_contents_details_contents {
  margin: 46px 0 80px;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
}

.campaign_en_contents_details_contents_data {
  display: -ms-flexbox;
  display: flex;
  gap: 0 55px;
  padding: 40px 50px 30px;
}

.campaign_en_contents_details_contents_data dt {
  -ms-flex: 0 0 184px;
      flex: 0 0 184px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.944;
}

.campaign_en_contents_details_contents_terms {
  display: -ms-flexbox;
  display: flex;
  gap: 0 55px;
  padding: 30px 50px 20px;
  border-top: 1px dotted #ccc;
}

.campaign_en_contents_details_contents_terms dt {
  -ms-flex: 0 0 184px;
      flex: 0 0 184px;
}

.campaign_en_contents_details_contents_terms dt span {
  display: inline-block;
  border-radius: 2px;
  background-color: #999999;
  font-size: 12px;
  line-height: 1;
  letter-spacing: normal;
  padding: 10px 20px;
  color: #fff;
}

.campaign_en_contents_contact {
  margin-top: 80px !important;
  font-size: 16px;
  color: #080808;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
}

.campaign_en_contents_contact a {
  text-decoration: underline;
}

.campaign_en_contents_download {
  margin-top: 80px;
  padding: 60px 0 0;
  border-top: 2px solid #c9c9c9;
}

.campaign_en_contents_download_title {
  font-size: 16px;
  color: #080808;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
}

.campaign_en_contents_download_list {
  margin-top: 30px;
  display: -ms-flexbox;
  display: flex;
  gap: 0 55px;
  -ms-flex-pack: center;
      justify-content: center;
}

.campaign_en_contents_download_list_item {
  -ms-flex-preferred-size: 344px;
      flex-basis: 344px;
  display: -ms-flexbox;
  display: flex;
  gap: 0 30px;
  -ms-flex-align: end;
      align-items: flex-end;
}

.campaign_en_contents_download_list_item_badge {
  -ms-flex: 0 0 200px;
      flex: 0 0 200px;
  font-size: 16px;
  font-weight: bold;
  line-height: 2.25;
}

.campaign_en_contents .about_content_inner {
  background-color: #f5f5f5;
  padding: 40px 0 0 !important;
  max-width: none;
}

.campaign_en_contents .about_facilities_list {
  margin-top: 0 !important;
  background-color: transparent !important;
}

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

.campaign_en_contents .about_app_button_link img {
  width: 28px !important;
  margin: 0 !important;
}

@media only screen and (max-width: 767px) {
  .campaign_en_contents {
    font-size: 14px;
  }
  .campaign_en_contents_list {
    margin-top: 40px;
  }
  .campaign_en_contents_details {
    margin: 60px 0 0;
  }
  .campaign_en_contents_details_title {
    font-size: 24px;
  }
  .campaign_en_contents_details_lead {
    font-size: 14px;
    padding: 0;
    margin-top: 40px;
  }
  .campaign_en_contents_details_contents {
    margin: 40px 0 70px;
    border: none;
  }
  .campaign_en_contents_details_contents_data {
    display: block;
    padding: 0 0 16px;
  }
  .campaign_en_contents_details_contents_data dt {
    font-size: 14px;
  }
  .campaign_en_contents_details_contents_terms {
    display: block;
    padding: 28px 0 0;
  }
  .campaign_en_contents_details_contents_terms dt span {
    display: inline-block;
    padding: 8px 20px;
  }
  .campaign_en_contents_details_contents_terms dd {
    margin-top: 14px;
  }
  .campaign_en_contents_contact {
    margin-top: 46px !important;
  }
  .campaign_en_contents_download {
    margin-top: 44px;
    padding: 44px 0 0;
  }
  .campaign_en_contents_download_list {
    margin-top: 24px;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 60px 0;
    -ms-flex-align: center;
        align-items: center;
  }
  .campaign_en_contents_download_list_item {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    -ms-flex-direction: column;
        flex-direction: column;
    gap: 14px 0;
    -ms-flex-align: center;
        align-items: center;
  }
  .campaign_en_contents_download_list_item_badge {
    width: 200px;
    -ms-flex: auto;
        flex: auto;
  }
  .campaign_en_contents_download_list_item_qr {
    width: 114px;
    -ms-flex: auto;
        flex: auto;
  }
  .campaign_en_contents .about_content_inner {
    margin: 0 -12px !important;
    overflow: hidden;
  }
  .campaign_en_contents .about_app_button {
    margin-top: 26px !important;
  }
  .campaign_en_contents .about_app_button_link img {
    width: 16px !important;
    padding: 0 !important;
  }
}

.campaign .campaign_top {
  width: 100%;
  max-width: 1044px;
  padding: 0 10px;
  margin: 62px auto 0;
}

.campaign .campaign_top .section_ttl_sub span {
  width: 170px;
  padding: 0 1px 0px;
}

.campaign .campaign_top_search {
  max-width: 924px;
  margin: 0 auto;
}

.campaign .campaign_top_search ul {
  display: inline-block;
  width: 100%;
}

.campaign .campaign_top_search li {
  margin: 45px 0 50px;
  width: 48%;
}

.campaign .campaign_top_search li:first-child {
  float: left;
}

.campaign .campaign_top_search li:last-child {
  float: right;
}

.campaign .campaign_top_search_selectbox {
  width: 100%;
  position: relative;
}

.campaign .campaign_top_search_selectbox:after {
  cursor: pointer;
  pointer-events: none;
  content: "";
  width: 39px;
  height: 38px;
  display: block;
  background-color: #fff;
  position: absolute;
  top: 1px;
  right: 1px;
  z-index: 0;
}

.campaign .campaign_top_search_selectbox_btn {
  cursor: pointer;
  pointer-events: none;
  z-index: 1;
  width: 21px;
  height: 12px;
  position: absolute;
  top: 14px;
  right: 10px;
  background: url(/assets/img/arrow_pulldown.png) no-repeat;
  background-size: contain;
}

.campaign .campaign_top_search_text {
  width: 80%;
  height: 40px;
  font-size: 1.4rem;
  font-weight: 200;
  padding: 10px 14px;
  border: none;
  background-color: #fff;
  color: #080808;
  letter-spacing: 0.13rem;
}

.campaign .campaign_top_search_text.select {
  width: 100%;
  -webkit-appearance: none;
          appearance: none;
  border-radius: 0;
  padding: 10px 41px 10px 9px;
  border: 1px solid #c9c9c9;
}

.campaign .campaign_top_search_text.select::-ms-expand {
  display: none;
}

.campaign .campaign_top_search_text:focus {
  outline: 0;
  border: 1px solid #005eae;
  padding: 10px 9px;
}

.campaign .campaign_top_search_text:focus::-webkit-input-placeholder {
  color: transparent;
}

.campaign .campaign_top_list {
  max-width: 924px;
  overflow: hidden;
  margin-top: 20px;
  width: 100%;
  margin: 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
}

.campaign .campaign_top_list .event {
  position: relative;
  opacity: 1;
}

.campaign .campaign_top_list .event:before {
  color: #fff;
  font-size: 1.2rem;
  position: absolute;
  z-index: 2;
  font-weight: 500;
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  white-space: pre;
}

.campaign .campaign_top_list .event:after {
  content: "";
  width: 0;
  height: 0;
  border: 43px solid transparent;
  position: absolute;
  left: -43px;
  top: -43px;
  display: inline-block;
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
}

.campaign .campaign_top_list .event-closed figure {
  opacity: .5;
}

.campaign .campaign_top_list .event-closed:before {
  content: "終了";
  font-size: 1.4rem;
  left: 5px;
  top: 14px;
}

.campaign .campaign_top_list .event-closed:after {
  border-right: 43px solid #9d9d9d;
}

.campaign .campaign_top_list .event-closed a:hover {
  opacity: 1;
}

.campaign .campaign_top_list .event-nearly-close:before {
  content: "終了\A間近";
  left: 7px;
  top: 8px;
}

.campaign .campaign_top_list .event-nearly-close:after {
  border-right: 43px solid #ff3838;
}

.campaign .campaign_top_list .event-in-session:before {
  content: "開催中";
  left: 1px;
  top: 15px;
}

.campaign .campaign_top_list .event-in-session:after {
  border-right: 43px solid #ffc000;
}

.campaign .campaign_top_list li {
  float: left;
  width: 26.5%;
  margin-left: 8.2%;
}

.campaign .campaign_top_list li:nth-child(3n+1) {
  margin-left: 2.05%;
}

.campaign .campaign_top_list li:last-child {
  margin-right: 2.05%;
}

.campaign .campaign_top_list li a {
  display: block;
}

.campaign .campaign_top_list li figure img {
  width: 100%;
}

.campaign .campaign_top_plan {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.2;
  margin-top: 15px;
  margin-bottom: 11px;
  letter-spacing: 0.1rem;
  position: relative;
}

.campaign .campaign_top_plan.ellipsis {
  height: 36px;
  position: relative;
  overflow: hidden;
}

.campaign .campaign_top_plan.ellipsis:before, .campaign .campaign_top_plan.ellipsis:after {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.8) 20%, white 30%, white 90%, white 100%);
}

.campaign .campaign_top_plan.ellipsis:before {
  content: "...";
  position: absolute;
  right: 0;
  bottom: -3px;
  width: 2.0em;
  display: inline-block;
  text-align: right;
}

.campaign .campaign_top_plan.ellipsis:after {
  content: "";
  position: relative;
  width: 1em;
  height: 100%;
  right: -1em;
  float: right;
  padding-right: 1.5em;
}

.campaign .campaign_top_schedule {
  display: block;
}

.campaign .campaign_top_schedule li {
  width: 100%;
  margin-left: 0;
}

.campaign .campaign_top_schedule li:nth-child(3n+1) {
  margin-left: 0;
}

.campaign .campaign_top_schedule li:last-child {
  margin-bottom: 32px;
}

.campaign .campaign_top_schedule .place {
  font-size: 1.2rem;
  color: #666;
  letter-spacing: 0.07rem;
  font-weight: 700;
  margin: 1px 0 0;
}

.campaign .campaign_top_schedule .date {
  font-size: 1.2rem;
  color: #666;
  line-height: 1.3;
  letter-spacing: 0.08rem;
  letter-spacing: 0.11rem;
  font-weight: 400;
  margin: 4px 2px 5px;
}

.campaign .campaign_top .campaign_top_itemlist {
  position: relative;
}

.campaign .campaign_top .campaign_top_itemlist:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
}

.campaign .campaign_top .campaign_top_itemlist.is-loading:after {
  display: block;
  animation: mask_campaignlist 0.2s ease-in-out 0s;
}

@keyframes mask_campaignlist {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media only screen and (max-width: 767px) {
  .campaign .campaign_top {
    min-width: 320px;
    padding: 0 12px;
  }
  .campaign .campaign_top_search ul {
    padding: 19px 0 25px;
  }
  .campaign .campaign_top_search li {
    margin: 0 0 8px;
    width: 100%;
  }
  .campaign .campaign_top_search li:last-child {
    margin-bottom: 0px;
  }
  .campaign .campaign_top_list .event:before {
    font-size: 1.0rem;
  }
  .campaign .campaign_top_list .event:after {
    border: 40px solid transparent;
    left: -40px;
    top: -40px;
  }
  .campaign .campaign_top_list .event-closed:before {
    content: "終了";
    left: 7px;
    top: 15px;
  }
  .campaign .campaign_top_list .event-closed:after {
    border-right: 40px solid #9d9d9d;
  }
  .campaign .campaign_top_list .event-nearly-close:before {
    content: "終了\A間近";
    font-size: 1.0rem;
    left: 9px;
    top: 9px;
  }
  .campaign .campaign_top_list .event-nearly-close:after {
    border-right: 40px solid #ff3838;
  }
  .campaign .campaign_top_list .event-in-session:before {
    content: "開催中";
    left: 4px;
    top: 14px;
  }
  .campaign .campaign_top_list .event-in-session:after {
    border-right: 40px solid #ffc000;
  }
  .campaign .campaign_top_list li {
    float: left;
    width: 47.5%;
    margin-left: 5%;
  }
  .campaign .campaign_top_list li:nth-child(2n+1) {
    margin-left: 0;
  }
  .campaign .campaign_top_list li:nth-child(2n) {
    margin-right: 0;
  }
  .campaign .campaign_top_list li:nth-child(3n+1) {
    margin-left: auto;
  }
  .campaign .campaign_top_plan {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.4;
    margin-top: 8px;
    margin-bottom: 6px;
    padding-left: 3px;
    letter-spacing: 0.05rem;
  }
  .campaign .campaign_top_plan.ellipsis {
    height: 30px;
  }
  .campaign .campaign_top_plan.ellipsis:before {
    height: 18px;
  }
  .campaign .campaign_top_plan.ellipsis:after {
    right: -0.5rem;
  }
  .campaign .campaign_top_schedule {
    display: block;
  }
  .campaign .campaign_top_schedule li {
    width: 100%;
    margin-left: 0;
  }
  .campaign .campaign_top_schedule li:last-child {
    margin-bottom: 22px;
  }
  .campaign .campaign_top_schedule .place {
    font-size: 1.0rem;
    color: #666;
    letter-spacing: 0.07rem;
    font-weight: 700;
    margin: 5px 3px 0;
  }
  .campaign .campaign_top_schedule .date {
    font-size: 0.8rem;
    color: #666;
    line-height: 1.3;
    letter-spacing: 0.11rem;
    font-weight: 400;
    margin: 3px 3px 5px;
  }
}

.errorpage {
  text-align: center;
}

.errorpage.errorpage-404 h2 {
  display: inline-block;
  background: url(/assets/img/error/logo_404.png) center no-repeat;
  background-size: cover;
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
}

.errorpage.errorpage-404 h3 {
  font-weight: 400;
  color: #444;
  letter-spacing: 0.075em;
}

.errorpage.errorpage-404 .errorpage_lead {
  font-weight: 200;
  color: #444;
  letter-spacing: 0.075em;
}

@media only screen and (max-width: 767px) {
  .errorpage {
    padding-top: 50px;
    padding-bottom: 18px;
  }
  .errorpage.errorpage-404 h2 {
    width: 161px;
    height: 90px;
  }
  .errorpage.errorpage-404 h3 {
    font-size: 1.4rem;
    margin-top: 30px;
  }
  .errorpage.errorpage-404 .errorpage_lead {
    font-size: 1.2rem;
    line-height: 1.83;
    margin-top: 15px;
  }
  .errorpage.errorpage-404 .errorpage_link {
    margin-top: 33px;
  }
  .errorpage.errorpage-404 .errorpage_link > a {
    display: inline-block;
    padding: 0 35px;
    border: solid 1px #000;
    border-radius: 15px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: 0.06em;
  }
}

@media only screen and (min-width: 768px) {
  .errorpage {
    padding-top: 190px;
    padding-bottom: 120px;
  }
  .errorpage.errorpage-404 h2 {
    width: 322px;
    height: 180px;
  }
  .errorpage.errorpage-404 h3 {
    font-size: 2.4rem;
    margin-top: 30px;
  }
  .errorpage.errorpage-404 .errorpage_lead {
    font-size: 1.6rem;
    line-height: 1.5;
    margin-top: 15px;
  }
  .errorpage.errorpage-404 .errorpage_link {
    margin-top: 45px;
  }
  .errorpage.errorpage-404 .errorpage_link > a {
    display: inline-block;
    padding: 0 49px;
    border: solid 2px #000;
    border-radius: 25px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
  }
}

@media only screen and (max-width: 959px) {
  #lp-gaultmillau .fixedreserve {
    display: none;
  }
  .gm .sp-only {
    display: block !important;
  }
  .gm .pc-only {
    display: none !important;
  }
  .gm .fade {
    opacity: 0;
    position: relative;
    bottom: -30px;
    transition: all 1s ease-out;
  }
  .gm .fade-mainvisual {
    bottom: 0;
    transition: all 1.3s ease-out;
  }
  .gm .fade.is-show {
    opacity: 1;
    bottom: 0;
  }
  .gm img {
    width: 100%;
  }
  .gm_mainvisual {
    width: 100%;
    background: url("/english/assets/img/gaultmillau/mainvisual_sp.png") 0 0 no-repeat;
    background-size: contain;
    position: relative;
    padding-top: 93%;
  }
  .gm_mainvisual_append {
    position: absolute;
    top: 18px;
    z-index: 3;
    width: 100%;
  }
  .gm_mainvisual_append_entryclose {
    background: rgba(255, 255, 255, 0.8);
    margin: 0 8%;
  }
  .gm_mainvisual_append_entryclose_inner {
    padding: 3% 10% 2% 9%;
  }
  .gm_mainvisual_append_entryclose_text {
    margin: 0 auto;
  }
  .gm_mainvisual_append_entryclose_thx {
    padding: 2% 35% 0 37%;
    margin: 0 auto;
  }
  .gm_mainvisual_title {
    position: absolute;
    bottom: 23%;
    left: 0;
    right: 0;
    margin: auto;
    padding: 0 4%;
  }
  .gm_mainvisual_date {
    position: absolute;
    bottom: 13%;
    left: 0;
    right: 0;
    margin: auto;
    padding: 0 18%;
  }
  .gm_mainvisual_venue {
    position: absolute;
    bottom: 10%;
    padding: 0 30%;
    left: 0;
    right: 0;
    margin: auto;
  }
  .gm_mainvisual_label {
    width: 31%;
    position: absolute;
    right: 0;
    top: 0;
  }
  .gm_mainlead {
    padding: 0 4%;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.2rem;
    letter-spacing: 0.09rem;
    line-height: 1.9;
    margin-top: 6.6%;
    margin-bottom: 17%;
  }
  .gm_event_title {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 2.6rem;
    text-align: center;
    margin-top: 8%;
  }
  .gm_event_lineup {
    margin-top: 6%;
  }
  .gm_event_lineup_lead {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.05rem;
    line-height: 1.9;
  }
  .gm_event_lineup_sweets {
    width: 100%;
    background: url("/english/assets/img/gaultmillau/event_sweets_sp.jpg") no-repeat;
    background-size: contain;
    padding-top: 87%;
    position: relative;
  }
  .gm_event_lineup_sweets_subtitle {
    padding: 0 19% 0 3%;
  }
  .gm_event_lineup_sweets_text {
    position: absolute;
    top: 12%;
    width: 100%;
    max-width: 500px;
  }
  .gm_event_lineup_sweets_title {
    margin-top: 5%;
    padding: 0 17% 0 3%;
  }
  .gm_event_lineup_sweets_lead {
    margin-top: 5%;
    padding: 0 41% 0 4%;
  }
  .gm_event_lineup_talkshow {
    width: 100%;
    background: url("/english/assets/img/gaultmillau/event_talkshow_sp.png") no-repeat;
    background-size: contain;
    padding-top: 100%;
    margin-top: -8%;
    position: relative;
    z-index: 1;
  }
  .gm_event_lineup_talkshow_text {
    position: absolute;
    top: 15%;
    width: 100%;
    max-width: 500px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .gm_event_lineup_talkshow_subtitle {
    padding: 0 16% 0 12%;
  }
  .gm_event_lineup_talkshow_title {
    margin-top: 9%;
    padding: 0 32% 0 35%;
  }
  .gm_event_lineup_talkshow_lead {
    margin-top: 7%;
    padding: 0 28%;
  }
  .gm_event_etc {
    margin: 2% auto;
    padding: 0 3%;
  }
  .gm_event_etc li {
    max-width: 400px;
    margin: 0 auto;
  }
  .gm_event_etc_title {
    margin: 0 auto;
    max-width: 250px;
  }
  .gm_event_etc_title-special {
    width: 61%;
  }
  .gm_event_etc_title-champagne {
    width: 58%;
  }
  .gm_event_etc_title-takeout {
    width: 72%;
  }
  .gm_event_etc_img {
    margin-top: 5%;
  }
  .gm_event_etc_text {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.4rem;
    letter-spacing: 0.08rem;
    line-height: 1.8;
    margin: 4% 7% 14%;
  }
  .gm_detail {
    background-color: #f3f6f8;
    padding: 10% 0 18%;
  }
  .gm_detail_title {
    letter-spacing: 0.21rem;
    margin-bottom: 20px;
    font-size: 2.6rem;
    text-align: center;
    margin-bottom: 6%;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  }
  .gm_detail_inner {
    padding: 0 3%;
    max-width: 550px;
    margin: 0 auto;
  }
  .gm_detail_tb {
    width: 100%;
    border-collapse: collapse;
    border: 1px #a6acad solid;
  }
  .gm_detail_tb tr {
    min-height: 51px;
    font-size: 1.2rem;
  }
  .gm_detail_tb th {
    padding: 4% 5%;
    text-align: left;
    width: 31%;
    line-height: 1.7rem;
    background-color: #c2c6c7;
    border-bottom: 1px #a6acad solid;
    vertical-align: top;
  }
  .gm_detail_tb td {
    padding: 4% 4% 3%;
    width: 69%;
    letter-spacing: 0.11rem;
    line-height: 1.7;
    border: 1px #a6acad solid;
    vertical-align: middle;
    background-color: #fff;
  }
  .gm_detail_tb td a {
    display: inline-block;
  }
  .gm_detail_tb td strong {
    border-bottom: 1px solid #000;
    padding-bottom: 2px;
  }
  .gm_detail_tb td > small {
    display: block;
    font-size: 1.0rem;
    letter-spacing: 0.09rem;
    line-height: 1.8;
    margin: 5px 0;
  }
  .gm_detail_tb_list {
    padding-left: 3%;
  }
  .gm_detail_tb_list p {
    text-indent: -1.5em;
    padding-left: 1em;
  }
  .gm_detail_contact {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    margin: 10% 0px;
    letter-spacing: 0.05rem;
    line-height: 1.7;
  }
  .gm_detail_entryclose {
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    margin: 3.7% 0px;
    letter-spacing: 0.05rem;
    line-height: 1.7;
    color: #b9b9b9;
  }
  .gm_detail_guide {
    margin-top: 13%;
    width: 100%;
    background-color: #fff;
  }
  .gm_detail_guide_title {
    position: absolute;
    top: 5.5%;
    left: 3%;
    right: 0;
    margin: auto;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.15rem;
    line-height: 1.5;
  }
  .gm_detail_guide_image {
    width: 142px;
    margin: 0 auto;
    padding-top: 82px;
  }
  .gm_detail_guide_text {
    font-size: 1.4rem;
    letter-spacing: 0.03rem;
    line-height: 1.98;
    padding: 4px 5% 7%;
  }
  .gm_members {
    max-width: 350px;
    margin: 0 auto;
  }
  .gm_members_inner {
    position: relative;
    padding: 15% 7% 0;
  }
  .gm_members_logo {
    width: 64%;
    display: inline-block;
  }
  .gm_members_circle {
    position: absolute;
    right: 8%;
    top: 8%;
    width: 23%;
  }
  .gm_members_card {
    width: 87%;
    display: block;
    margin: 9% auto 5%;
  }
  .gm_members_text {
    font-size: 1.4rem;
    letter-spacing: 0.12rem;
    line-height: 1.9;
  }
  .gm_members .gm_btn {
    margin: 9% 0 18%;
  }
  .gm_btn {
    margin-top: 11%;
  }
  .gm_btn_apply {
    margin: 0 auto;
    display: block;
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .gm_btn_apply-black {
    min-width: 180px;
    max-width: 230px;
    width: 65%;
    height: 40px;
    line-height: 40px;
    background-color: #fff;
    color: #000;
    border-radius: 25px;
    letter-spacing: 0.12rem;
    box-shadow: 0 0 0 2px #000 inset;
  }
  .gm_btn_apply-pink {
    min-width: 180px;
    width: 60%;
    height: 40px;
    line-height: 40px;
    background-color: #d53a9b;
    color: #fff;
    border-radius: 28px;
    letter-spacing: 0.13rem;
  }
  .gm_btn_apply-gray {
    min-width: 180px;
    width: 60%;
    height: 40px;
    line-height: 40px;
    background-color: #b9b9b9;
    color: #fff;
    border-radius: 28px;
    letter-spacing: 0.13rem;
  }
}

@media only screen and (min-width: 960px) {
  #lp-gaultmillau .fixedreserve {
    display: none;
  }
  .gm .fade {
    opacity: 0;
    position: relative;
    bottom: -30px;
    transition: all 1s ease-out;
  }
  .gm .fade-mainvisual {
    transition: all 1.3s ease-out;
    bottom: 0;
  }
  .gm .fade.is-show {
    opacity: 1;
    bottom: 0;
  }
  .gm .section {
    max-width: 1366px;
    margin: 0 auto;
  }
  .gm img {
    width: 100%;
  }
  .gm_mainvisual {
    height: 400px;
    background: url("/english/assets/img/gaultmillau/mainvisual_pc.jpg") center no-repeat;
    background-size: 1366px 400px;
    position: relative;
  }
  .gm_mainvisual_text {
    width: 450px;
    height: 235px;
    position: absolute;
    top: 96px;
    left: 44%;
  }
  .gm_mainvisual_title {
    width: 450px;
    height: 89px;
    margin-top: 26px;
    margin-left: -1px;
  }
  .gm_mainvisual_append {
    position: relative;
  }
  .gm_mainvisual_append_entryclose {
    position: absolute;
    right: -95px;
    top: -7px;
  }
  .gm_mainvisual_append_entryclose_inner {
    background-color: #fff;
    width: 257px;
    height: 45px;
    position: relative;
  }
  .gm_mainvisual_append_entryclose_inner:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -17px;
    margin-top: -7px;
    border: 7px solid transparent;
    border-right: 10px solid #fff;
  }
  .gm_mainvisual_append_entryclose_text {
    width: 220px;
    margin: 0 auto;
    padding-top: 9px;
  }
  .gm_mainvisual_append_entryclose_thx {
    width: 61px;
    margin: 0 auto;
    padding-top: 4px;
  }
  .gm_mainvisual_date {
    display: block;
    margin-top: 30px;
    margin-left: 5px;
    width: 367px;
  }
  .gm_mainvisual_venue {
    margin-top: 8px;
    margin-left: 5px;
    width: 60%;
  }
  .gm_mainvisual_label {
    width: 260px;
  }
  .gm_mainlead {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.6rem;
    text-align: center;
    letter-spacing: 0.12rem;
    line-height: 1.9;
    margin-top: 40px;
  }
  .gm_event_title {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 3.0rem;
    text-align: center;
    letter-spacing: 0.3rem;
    margin-top: 65px;
  }
  .gm_event_lineup {
    width: 100%;
    height: 340px;
    position: relative;
    margin-top: 45px;
    background: url("/english/assets/img/gaultmillau/event_bg.jpg") center top no-repeat;
    background-size: cover;
  }
  .gm_event_lineup_lead {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.6rem;
    color: #fff;
    letter-spacing: 0.08rem;
    line-height: 1.7;
  }
  .gm_event_lineup_sweets_text {
    position: absolute;
    top: 40px;
    left: 4%;
  }
  .gm_event_lineup_sweets_subtitle {
    width: 317px;
  }
  .gm_event_lineup_sweets_title {
    margin-top: 15px;
    width: 407px;
  }
  .gm_event_lineup_sweets_lead {
    margin-top: 23px;
    width: 280px;
  }
  .gm_event_lineup_talkshow {
    position: relative;
    height: 340px;
    width: 100%;
  }
  .gm_event_lineup_talkshow_text {
    position: absolute;
    top: 52px;
    right: 15%;
    z-index: 3;
  }
  .gm_event_lineup_talkshow_subtitle {
    width: 315px;
  }
  .gm_event_lineup_talkshow_title {
    text-align: center;
    width: 185px;
    margin: 21px auto 0;
  }
  .gm_event_lineup_talkshow_lead {
    margin-top: 24px;
    margin-left: 21px;
    width: 280px;
  }
  .gm_event_etc {
    max-width: 1067px;
    padding: 0 20px;
    margin: 68px auto 60px;
    display: -ms-flexbox;
    display: flex;
  }
  .gm_event_etc li {
    width: 30%;
    margin-right: 5%;
  }
  .gm_event_etc li:last-of-type {
    margin-right: 0;
  }
  .gm_event_etc_title {
    text-align: center;
  }
  .gm_event_etc_title-special {
    width: 210px;
    margin: 0 auto;
  }
  .gm_event_etc_title-champagne {
    width: 315px;
    margin-left: -5px;
  }
  .gm_event_etc_title-takeout {
    width: 295px;
    margin: 0 auto;
  }
  .gm_event_etc_img {
    margin-top: 28px;
  }
  .gm_event_etc_text {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 1.4rem;
    letter-spacing: 0.08rem;
    line-height: 1.8;
    margin-top: 10px;
  }
  .gm_detail {
    background-color: #f3f6f8;
    padding-bottom: 55px;
  }
  .gm_detail_title {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 3.0rem;
    text-align: center;
    letter-spacing: 0.3rem;
    padding: 60px 0 40px;
  }
  .gm_detail_inner {
    width: 925px;
    margin: 0 auto;
  }
  .gm_detail_tb {
    width: 100%;
    border-collapse: collapse;
    border: 1px #a6acad solid;
  }
  .gm_detail_tb tr {
    height: 62px;
    font-size: 1.6rem;
  }
  .gm_detail_tb th {
    padding: 17px 20px;
    text-align: left;
    width: 22%;
    background-color: #c2c6c7;
    border: 1px #a6acad solid;
    vertical-align: middle;
  }
  .gm_detail_tb td {
    padding: 17px 30px 17px 27px;
    width: 78%;
    border: 1px #a6acad solid;
    vertical-align: middle;
    background-color: #fff;
    letter-spacing: 0.16rem;
    line-height: 1.9;
  }
  .gm_detail_tb td a {
    display: inline-block;
  }
  .gm_detail_tb td strong {
    border-bottom: 1px solid #000;
    padding-bottom: 3px;
  }
  .gm_detail_tb td > small {
    font-size: 1.4rem;
    display: block;
    letter-spacing: 0.14rem;
    margin: 10px 0;
  }
  .gm_detail_entryclose {
    font-size: 1.6rem;
    margin-top: 21px;
    text-align: center;
    letter-spacing: 0.07rem;
    color: #b9b9b9;
  }
  .gm_detail_contact {
    font-size: 2.0rem;
    font-weight: bold;
    margin-top: 39px;
    text-align: center;
    letter-spacing: 0.07rem;
  }
  .gm_detail_contact a {
    cursor: default;
  }
  .gm_detail_contact a:hover {
    opacity: 1;
  }
  .gm_detail_guide {
    margin-top: 76px;
    width: 100%;
    height: 250px;
    padding: 40px 50px 0 205px;
    position: relative;
    background-color: #fff;
  }
  .gm_detail_guide_title {
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.8;
    letter-spacing: 0.24rem;
  }
  .gm_detail_guide_image {
    width: 142px;
    height: 162px;
    position: absolute;
    left: 40px;
    top: 25px;
  }
  .gm_detail_guide_text {
    font-size: 1.4rem;
    padding-top: 14px;
    line-height: 1.95;
    letter-spacing: 0.03rem;
  }
  .gm_members {
    margin-top: 50px;
  }
  .gm_members_inner {
    width: 680px;
    margin: 0 auto;
    position: relative;
  }
  .gm_members_logo {
    display: inline-block;
    position: absolute;
    top: 10px;
    width: 218px;
  }
  .gm_members_circle {
    position: absolute;
    width: 90px;
    top: 10px;
    left: 0;
    right: 6px;
    margin: 0 auto;
  }
  .gm_members_card {
    position: absolute;
    top: 10px;
    right: 0;
    width: 241px;
  }
  .gm_members_text {
    font-size: 1.6rem;
    position: absolute;
    bottom: 103px;
    letter-spacing: 0.12rem;
    line-height: 1.8;
  }
  .gm_members .gm_btn {
    padding-top: 225px;
  }
  .gm_btn {
    margin-top: 46px;
  }
  .gm_btn_apply {
    margin: 0 auto;
    display: block;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .gm_btn_apply-black {
    width: 224px;
    height: 50px;
    line-height: 50px;
    border-radius: 25px;
    background-color: #fff;
    color: #000;
    letter-spacing: 0.12rem;
    box-shadow: 0 0 0 2px #000 inset;
    transition: all 0.3s ease-in-out;
  }
  .gm_btn_apply-black:hover {
    opacity: 1.0;
    color: #fff !important;
    background-color: #000 !important;
  }
  .gm_btn_apply-pink {
    width: 344px;
    height: 56px;
    line-height: 56px;
    background-color: #d53a9b;
    border-radius: 28px;
    letter-spacing: 0.34rem;
    color: #fff;
  }
  .gm_btn_apply-gray {
    width: 344px;
    height: 56px;
    line-height: 56px;
    background-color: #c2c6c7;
    border-radius: 28px;
    letter-spacing: 0.34rem;
    color: #fff;
  }
}

@media screen and (min-width: 960px) and (max-width: 1366px) {
  .gm_event_lineup {
    background: url("/english/assets/img/gaultmillau/event_bg_min.jpg") center top no-repeat;
    background-size: cover;
  }
  .gm_event_lineup_talkshow:after {
    content: "";
    background: url("/english/assets/img/gaultmillau/patissier.png") right top no-repeat;
    background-size: contain;
    display: block;
    height: 248px;
    width: 100vw;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
  }
}

@media screen and (min-width: 960px) and (max-width: 1100px) {
  .gm_event_lineup_sweets_lead {
    width: 205px;
  }
  .gm_event_lineup_talkshow_lead {
    width: 200px;
    margin: 24px auto;
  }
  .gm_event_lineup_talkshow_text {
    right: 8.5%;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1366px) {
  .gm_event_lineup_talkshow_text {
    right: 12%;
  }
}

@media only screen and (max-width: 767px) {
  .faq {
    padding-top: 42px;
  }
  .faq .common_section_inner {
    padding: 0 12px;
  }
  .faq .faq_head_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.14em;
  }
  .faq .faq_qa {
    margin-top: 40px;
  }
  .faq .faq_qa_list_item:first-child {
    border-top: 1px solid #999;
    padding-top: 2px;
  }
  .faq .faq_qa_list_item {
    position: relative;
    cursor: pointer;
  }
  .faq .faq_qa_list_item span {
    position: absolute;
    top: 50%;
    right: 12px;
    border: 2px solid #999;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-top: -14px;
  }
  .faq .faq_qa_list_item span:after, .faq .faq_qa_list_item span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 11px;
    right: 5px;
  }
  .faq .faq_qa_list_item span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .faq .faq_qa_list_item .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .faq .faq_qa_list_item .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .faq .faq_qa_list_question {
    border-bottom: 1px dotted #CCCCCC;
  }
  .faq .faq_qa_list_question_text {
    margin: 0 12px;
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.075em;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
    position: relative;
  }
  .faq .faq_qa_list_question_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .faq .faq_qa_list_answer {
    display: none;
    border-bottom: 1px solid #999999;
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.075em;
  }
  .faq .faq_qa_list_answer a {
    font-weight: 700;
    text-decoration: underline;
  }
  .faq .faq_qa_list_answer ul li,
  .faq .faq_qa_list_answer ol li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .faq .faq_qa_list_answer_text {
    position: relative;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
  }
  .faq .faq_qa_list_answer_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
}

@media only screen and (min-width: 768px) {
  .faq {
    padding-top: 104px;
  }
  .faq .faq_head .common_section_inner {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .faq .faq_head_ttl {
    display: table-cell;
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    vertical-align: middle;
    width: 215px;
  }
  .faq .faq_qa {
    margin-top: 65px;
  }
  .faq .faq_qa_list_item:first-child {
    border-top: 1px solid #999;
    padding-top: 2px;
  }
  .faq .faq_qa_list_question {
    position: relative;
    cursor: pointer;
  }
  .faq .faq_qa_list_question span {
    position: absolute;
    right: 19px;
    top: 50%;
    border: 2px solid #999;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: block;
    margin-top: -17px;
  }
  .faq .faq_qa_list_question span:after, .faq .faq_qa_list_question span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 14px;
    right: 8px;
  }
  .faq .faq_qa_list_question span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .faq .faq_qa_list_question .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .faq .faq_qa_list_question .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .faq .faq_qa_list_question_text {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.075em;
    border-bottom: 1px dotted #CCCCCC;
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .faq .faq_qa_list_question_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .faq .faq_qa_list_answer {
    display: none;
    border-bottom: 1px solid #999999;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .faq .faq_qa_list_answer a {
    font-weight: 700;
    text-decoration: underline;
  }
  .faq .faq_qa_list_answer a:hover {
    opacity: 1;
    text-decoration: none;
  }
  .faq .faq_qa_list_answer ul li,
  .faq .faq_qa_list_answer ol li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .faq .faq_qa_list_answer_text {
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .faq .faq_qa_list_answer_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:before {
  background-color: #f3f3f3;
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_allergy:after {
  background-image: url("/english/assets/img/hotelandresort/icon_allergy.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_baggage:after {
  background-image: url("/english/assets/img/hotelandresort/icon_baggage.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_bath:after {
  background-image: url("/english/assets/img/hotelandresort/icon_bath.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_laundry:after {
  background-image: url("/english/assets/img/hotelandresort/icon_laundry.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_massge:after {
  background-image: url("/english/assets/img/hotelandresort/icon_massge.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_milk:after {
  background-image: url("/english/assets/img/hotelandresort/icon_milk.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_parking:after {
  background-image: url("/english/assets/img/hotelandresort/icon_parking.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_track:after {
  background-image: url("/english/assets/img/hotelandresort/icon_track.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_walk:after {
  background-image: url("/english/assets/img/hotelandresort/icon_walk.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_wifi:after {
  background-image: url("/english/assets/img/hotelandresort/icon_wifi.png");
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.is-disable:before {
  background: linear-gradient(-45deg, #f3f3f3 0%, #f3f3f3 49%, #dedede 50%, #f3f3f3 51%, #f3f3f3 100%);
}

.hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.is-disable:after {
  opacity: 0.1;
}

.js-hotel_accordion_cont {
  display: none;
}

@media only screen and (max-width: 767px) {
  .hotelandresort.hotelandresort-detail .hotelandresort_section_ttl {
    font-size: 1.7rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main {
    padding-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head {
    position: relative;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl {
    padding: 0 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_logo {
    max-width: 158px;
    margin: 0 auto;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_logo img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_name {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.14em;
    padding: 0 120px 0 0;
    margin-top: 27px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_name span {
    display: block;
    font-size: 1.0rem;
    font-weight: 400;
    line-height: 1.0;
    letter-spacing: 0.025em;
    color: #666;
    margin-top: 5px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility {
    position: absolute;
    bottom: 6px;
    right: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility a {
    position: relative;
    display: block;
    border-radius: 2px;
    background-color: #333333;
    width: 100px;
    height: 24px;
    color: #fff;
    font-weight: 500;
    line-height: 24px;
    padding-left: 27px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility a:before {
    position: absolute;
    top: 9px;
    left: 10px;
    display: block;
    content: "";
    width: 11px;
    height: 6px;
    background: url("/english/assets/img/arrow_pulldown_wht_s.png") center no-repeat;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual_image span {
    display: block;
    overflow: hidden;
    height: 236px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual_caption {
    font-size: 1.2rem;
    line-height: 1.83;
    letter-spacing: 0.075em;
    text-align: center;
    padding: 0 15px;
    margin-top: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_events {
    margin-top: 65px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_events .common_event_carousel {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature {
    background-color: #f4f4f4;
    margin-top: 105px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_resort {
    padding: 39px 12px 70px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_lists {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem {
    margin-top: 8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem:first-child {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem:last-child .hotelandresort_feature_accordion_cont {
    margin-bottom: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a {
    position: relative;
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #fff;
    padding: 18px 55px 18px 15px;
    background-color: #333;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon {
    position: absolute;
    display: block;
    width: 28px;
    height: 28px;
    border: 2px solid #fff;
    border-radius: 14px;
    top: 50%;
    right: 14px;
    margin-top: -14px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:before, .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:after {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #fff;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    top: 11px;
    left: 5px;
    transition: all 0.5s ease-in-out;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a.is-show .hotelandresort_feature_accordion_icon:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a.is-show .hotelandresort_feature_accordion_icon:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_cont {
    background-color: #fff;
    margin-bottom: 70px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_cont_inner {
    padding: 20px 15px 40px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table {
    width: 100%;
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.4;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table tr,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table tr,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table tr {
    border-top: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table tr:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table tr:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table tr:last-child {
    border-bottom: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td {
    vertical-align: middle;
    border-left: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th {
    text-align: left;
    background-color: #c2c6c7;
    padding: 15px 10px;
    width: 34.12%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td {
    text-align: left;
    padding: 10px;
    background-color: #fff;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td:last-child {
    border-right: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table {
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 {
    margin-top: 18px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 {
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th {
    border-bottom: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_note {
    margin-top: 6px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_note li {
    letter-spacing: 0.075em;
    line-height: 1.6;
    text-indent: -0.5em;
    margin-left: 0.5em;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 9px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_lead {
    font-size: 1.2rem;
    line-height: 1.66;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img {
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li {
    margin-top: 25px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li:first-child {
    margin-top: 0px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li p {
    font-size: 1.2rem;
    line-height: 1.66;
    margin-top: 9px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop {
    margin-top: 58px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li {
    text-align: center;
    padding: 0 27px;
    margin-top: 25px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li:first-child {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li a {
    display: block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li figure {
    max-width: 562px;
    margin: 0 auto;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li figure img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li p.hotelandresort_feature_restaurantandshop_name {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.05em;
    margin-top: 7px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li p.hotelandresort_feature_restaurantandshop_category {
    font-size: 1.2rem;
    font-weight: 200;
    line-height: 1.66;
    letter-spacing: 0.075em;
    margin-top: 2px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hours {
    margin-top: 50px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_admission {
    margin-top: 45px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve {
    text-align: center;
    margin-top: 40px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve a {
    width: 163px;
    display: inline-block;
    padding: 0 13px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: 0.06em;
    border: solid 1px #000;
    border-radius: 15px;
    background-color: #fff;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main {
    margin-top: 20px;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img {
    position: relative;
    display: inline-block;
    overflow: hidden;
    max-width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img:before, .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img:after {
    position: absolute;
    top: 0;
    content: "";
    display: block;
    width: 14px;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img:before {
    left: 0;
    background: linear-gradient(-90deg, rgba(244, 244, 244, 0), #f4f4f4);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img:after {
    right: 0;
    background: linear-gradient(90deg, rgba(244, 244, 244, 0), #f4f4f4);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img.is-show-shadow-l:before {
    opacity: 1;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img.is-show-shadow-r:after {
    opacity: 1;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img figure {
    max-width: 100%;
    height: 170px;
    overflow: auto;
    text-align: left;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main_img figure img {
    width: auto;
    height: 100%;
    vertical-align: top;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li {
    padding: 0 3px;
    margin-top: 20px;
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li:first-child {
    margin-top: 25px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li h4 {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.5;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li p {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    color: #666;
    line-height: 1.5;
    float: right;
    width: 55.21%;
    margin-top: 8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li figure {
    width: 44.79%;
    padding-right: 10px;
    margin-top: 7px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li figure img {
    width: 100%;
    border-radius: 3px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility {
    margin-top: 40px;
    padding: 0 12px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_main {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_main_ttl {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    margin-left: -0.5em;
    margin-bottom: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_service_ttl {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    margin-left: -0.5em;
    margin-bottom: 5px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_area {
    height: 250px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_area iframe {
    width: 100%;
    height: 250px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_sub {
    margin-top: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link {
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link a {
    float: right;
    position: relative;
    display: block;
    border-radius: 2px;
    background-color: #333333;
    width: 87px;
    height: 24px;
    color: #fff;
    font-weight: 500;
    line-height: 24px;
    padding-left: 24px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link a:before {
    position: absolute;
    top: 5px;
    left: 9px;
    display: block;
    content: "";
    width: 10px;
    height: 14px;
    background: url("/english/assets/img/icon_mapmarker_wht.png") center no-repeat;
    background-size: 10px 14px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_txt {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.2;
    margin-top: 18px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax {
    margin-top: 8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span {
    display: inline-block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span:after {
    content: " /";
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span:last-child:after {
    content: none;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_detail {
    margin-top: 35px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul {
    padding-left: 2px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li {
    display: inline-block;
    width: 64px;
    text-align: center;
    vertical-align: top;
    margin: 14px 7px 0 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span {
    position: relative;
    display: block;
    line-height: 1.2;
    padding-top: 69px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:before, .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 64px;
    height: 64px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span.icon_fitness {
    letter-spacing: -0.09em;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info {
    margin-top: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note {
    position: relative;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note:first-child {
    margin-bottom: 5px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note span {
    display: block;
    letter-spacing: 0.075em;
    line-height: 1.4;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note span:first-child {
    font-size: 1.2rem;
    margin-bottom: 3px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note > a {
    position: absolute;
    right: 0;
    top: 50%;
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    height: 20px;
    line-height: 20px;
    border-radius: 10px;
    border: 1px solid #000;
    background-color: #fff;
    padding: 0 8px;
    text-align: center;
    margin-top: -10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy {
    display: none !important;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy {
    display: none;
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_base {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% - 24px);
    max-width: 640px;
    height: calc(100% - 60px);
    background-color: #ffffff;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    overflow: hidden;
    padding: 50px 15px 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_close {
    position: absolute;
    top: 12px;
    right: 12px;
    display: block;
    width: 24px;
    height: 24px;
    background: url(/assets/img/btn_close_sp.png) center no-repeat;
    background-size: cover;
    overflow: hidden;
    text-indent: -9999px;
    white-space: nowrap;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner {
    height: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl dt {
    color: #4c4c4c;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl dt:first-child {
    margin-top: 22px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl dd {
    color: #a8a8a8;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.8;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl dd p {
    margin-top: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl dd a {
    text-decoration: underline;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_inner dl ol li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy_cont_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #4c4c4c;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access {
    margin-top: 36px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dt {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    margin-top: 35px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dt:first-child {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dd {
    font-size: 1.2rem;
    font-weight: 200;
    letter-spacing: 0.075em;
    line-height: 1.66;
    margin-top: 5px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_link {
    text-align: center;
    margin-top: 40px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_link a {
    display: inline-block;
    padding: 0 13px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: 0.06em;
    border: solid 1px #000;
    border-radius: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .hotelandresort.hotelandresort-detail {
    padding-top: 60px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_section_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head {
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl {
    display: table;
    table-layout: fixed;
    width: 100%;
    padding: 0 130px 0 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_logo {
    display: table-cell;
    vertical-align: middle;
    width: 180px;
    padding: 0 24px 0 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_logo img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_name {
    display: table-cell;
    vertical-align: middle;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.1em;
    padding: 2px 0 0 19px;
    border-left: solid 2px #000;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_ttl_name span {
    display: block;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.0;
    letter-spacing: 0.075em;
    color: #080808;
    margin-top: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility {
    float: right;
    position: relative;
    top: -8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility a {
    position: relative;
    display: block;
    border-radius: 2px;
    background-color: #333333;
    width: 115px;
    height: 33px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 33px;
    padding-left: 32px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_head_facility a:before {
    position: absolute;
    top: 13px;
    left: 10px;
    display: block;
    content: "";
    width: 13px;
    height: 8px;
    background: url("/english/assets/img/arrow_pulldown_wht.png") center no-repeat;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual {
    margin-top: 12px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual_image img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_main_visual_caption {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 0.12em;
    text-align: center;
    margin-top: 21px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_events {
    margin-top: 60px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_events .common_event_carousel {
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature {
    background-color: #f4f4f4;
    margin-top: 60px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_resort {
    padding: 60px 0 50px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_lists {
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem {
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem:first-child {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_listitem:last-child .hotelandresort_feature_accordion_cont {
    margin-bottom: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a {
    position: relative;
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #fff;
    padding: 25px 65px 25px 33px;
    background-color: #333;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon {
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    border: 2px solid #fff;
    border-radius: 15px;
    top: 50%;
    right: 17px;
    margin-top: -15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:before, .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:after {
    position: absolute;
    content: "";
    display: block;
    width: 18px;
    height: 2px;
    background-color: #fff;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    top: 12px;
    left: 4px;
    transition: all 0.5s ease-in-out;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a .hotelandresort_feature_accordion_icon:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a.is-show .hotelandresort_feature_accordion_icon:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_ttl a.is-show .hotelandresort_feature_accordion_icon:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_cont {
    background-color: #fff;
    margin-bottom: 74px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_accordion_cont_inner {
    padding: 50px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.4;
    text-align: left;
    table-layout: fixed;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table tr,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table tr,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table tr {
    border-top: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table tr:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table tr:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table tr:last-child {
    border-bottom: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td {
    vertical-align: middle;
    border-left: solid 1px #a6acad;
    padding: 25px 19px 23px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table th,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th {
    background-color: #c2c6c7;
    width: 204px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td {
    background-color: #fff;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table td:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table td:last-child,
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table td:last-child {
    border-right: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table {
    margin-top: 35px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table table {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 {
    max-width: 824px;
    margin: 19px auto 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table {
    table-layout: fixed;
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table02 table th {
    width: 210px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 {
    margin-top: 35px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table {
    table-layout: fixed;
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_table03 table th {
    width: 210px;
    border-bottom: solid 1px #a6acad;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_note {
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_note li {
    font-size: 1.2rem;
    letter-spacing: 0.06em;
    line-height: 1.66;
    text-indent: -0.5em;
    margin-left: 0.5em;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_ttl {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 18px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_lead {
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img {
    margin-top: 20px;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li {
    display: inline-block;
    width: 49.5%;
    vertical-align: top;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li:first-child {
    padding-right: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li:last-child {
    padding-left: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img li p {
    font-size: 1.4rem;
    line-height: 1.71;
    letter-spacing: 0.06em;
    text-align: left;
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hotel_img.is-single li {
    padding: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop {
    margin-top: 80px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop .hotelandresort_section_ttl + .hotelandresort_feature_restaurantandshop_list {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
        justify-content: flex-start;
    margin-top: 35px;
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li {
    width: 33.3333%;
    border-left: 1px solid #c2c6c7;
    text-align: center;
    padding: 0 4.78% 5px;
    vertical-align: top;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li:last-child {
    border-right: 1px solid #c2c6c7;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li a {
    display: block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li figure img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li p.hotelandresort_feature_restaurantandshop_name {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.025em;
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_restaurantandshop_list li p.hotelandresort_feature_restaurantandshop_category {
    font-size: 1.4rem;
    font-weight: 200;
    line-height: 1.42;
    letter-spacing: 0.075em;
    margin-top: 7px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_hours {
    margin-top: 89px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_admission {
    margin-top: 45px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve {
    text-align: center;
    margin-top: 40px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve a {
    width: 247px;
    display: inline-block;
    padding: 0 20px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main {
    margin-top: 25px;
    margin-bottom: 85px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_main figure img {
    width: 100%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_detail {
    padding-top: 25px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list {
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li {
    width: 48.24%;
    margin-top: 50px;
    overflow: hidden;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li:nth-of-type(odd) {
    float: left;
    clear: both;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li:nth-of-type(even) {
    float: right;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li:nth-of-type(1), .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li:nth-of-type(2) {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li h4 {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.025em;
    line-height: 1.5;
    float: right;
    width: 53.45%;
    margin-top: 6px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li p {
    font-size: 1.2rem;
    letter-spacing: 0.025em;
    color: #666;
    line-height: 1.33;
    float: right;
    width: 53.45%;
    margin-top: 14px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li figure {
    width: 46.55%;
    padding-right: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_floor_list li figure img {
    width: 100%;
    border-radius: 3px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility {
    margin-top: 78px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_main {
    margin-top: 29px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_main:after {
    content: "";
    clear: both;
    display: block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_main_ttl {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.025em;
    margin-left: -0.5em;
    margin-bottom: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_service_ttl {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.025em;
    margin-left: -0.5em;
    margin-bottom: 10px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map {
    float: left;
    width: 56.6%;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_area {
    height: 425px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_area iframe {
    width: 100%;
    height: 425px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_sub {
    position: relative;
    margin-top: 20px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link {
    position: absolute;
    top: 0;
    right: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link a {
    position: relative;
    display: block;
    border-radius: 2px;
    background-color: #333333;
    width: 105px;
    height: 33px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 33px;
    padding-left: 31px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_link a:before {
    position: absolute;
    top: 6px;
    left: 10px;
    display: block;
    content: "";
    width: 14px;
    height: 21px;
    background: url("/english/assets/img/icon_mapmarker_wht.png") center no-repeat;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_txt {
    font-size: 1.6rem;
    letter-spacing: 0.06em;
    line-height: 1.2;
    padding-right: 120px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax {
    margin-top: 12px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span {
    display: inline-block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span:after {
    content: " /";
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_map_telfax span:last-child:after {
    content: none;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_detail {
    float: left;
    width: 43.4%;
    padding: 0 0 0 50px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services {
    margin-top: 30px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul {
    margin-top: 7px;
    margin-left: -22px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li {
    display: inline-block;
    width: 80px;
    text-align: center;
    vertical-align: top;
    margin: 8px 0 0 22px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span {
    position: relative;
    display: block;
    line-height: 1.2;
    padding-top: 85px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:before, .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 80px;
    height: 80px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services ul li span:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info {
    position: relative;
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note {
    font-size: 1.0rem;
    letter-spacing: 0.025em;
    line-height: 1.4;
    text-align: right;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_note span {
    display: inline-block;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_btn {
    position: relative;
    text-align: right;
    margin-top: 15px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_services_info_btn > a {
    display: inline-block;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: 0.06em;
    height: 26px;
    line-height: 24px;
    border-radius: 13px;
    border: 1px solid #000;
    background-color: #fff;
    padding: 0 15px;
    text-align: center;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_over_allergy {
    display: none !important;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy {
    z-index: 1;
    display: none;
    position: absolute;
    top: 40px;
    right: 0;
    background-color: #fff;
    padding-bottom: 10px;
    text-align: left;
    width: 569px;
    box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.35);
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy:before {
    position: absolute;
    top: -20px;
    right: 34px;
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #000;
    border-left: 10px solid transparent;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl {
    padding: 25px 30px 30px;
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dt {
    font-weight: 700;
    margin-top: 17px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dt:first-child {
    margin-top: 8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd {
    font-weight: 200;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd p {
    margin-top: 17px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd p:first-child {
    margin-top: 8px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd ol li {
    margin-top: 11px;
    text-indent: -1em;
    margin-left: 1em;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd ol li:first-child {
    margin-top: 6px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy dl dd a {
    text-decoration: underline;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy_ttl {
    position: relative;
    font-size: 1.2rem;
    color: #fff;
    background-color: #000;
    text-align: center;
    padding: 8px 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_popover_allergy_ttl > a {
    position: absolute;
    top: 7px;
    right: 11px;
    display: block;
    width: 15px;
    height: 14px;
    background: url(/assets/img/btn_close_wht_s.png) center no-repeat;
    background-size: cover;
    text-indent: -9999px;
    overflow: hidden;
    white-space: nowrap;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dt {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    margin-top: 24px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dt:first-child {
    margin-top: 0;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_access dl dd {
    font-size: 1.4rem;
    font-weight: 200;
    letter-spacing: 0.025em;
    line-height: 1.71;
    margin-top: 12px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_link {
    text-align: center;
    margin-top: 50px;
  }
  .hotelandresort.hotelandresort-detail .hotelandresort_facility_link a {
    display: inline-block;
    padding: 0 20px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
  }
}

@media only screen and (max-width: 960px) {
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve_modal {
    display: none !important;
  }
}

@media only screen and (min-width: 961px) {
  .hotelandresort.hotelandresort-detail .hotelandresort_feature_reserve_menu {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .hotelandresort.hotelandresort-index {
    padding: 0 12px;
    margin-top: 40px;
  }
  .hotelandresort .section_ttl_sub span {
    width: 109px;
  }
  .hotelandresort .hotels_list ul {
    overflow: hidden;
  }
  .hotelandresort .hotels_list ul li {
    width: 47.3%;
    margin-top: 20px;
  }
  .hotelandresort .hotels_list ul li:nth-of-type(odd) {
    float: left;
    clear: both;
  }
  .hotelandresort .hotels_list ul li:nth-of-type(even) {
    float: right;
  }
  .hotelandresort .hotels_list ul li a {
    display: block;
  }
  .hotelandresort .hotels_list ul li figure img {
    border-radius: 3px;
    width: 100%;
  }
  .hotelandresort .hotels_name {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 3px;
    padding-left: 2px;
  }
  .hotelandresort .hotels_address {
    font-size: 1.0rem;
    color: #666;
    margin-top: 3px;
    padding-left: 2px;
  }
}

@media only screen and (min-width: 768px) {
  .hotelandresort.hotelandresort-index {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 68px auto 0;
  }
  .hotelandresort .section_ttl_sub span {
    width: 163px;
  }
  .hotelandresort .hotels_list ul {
    overflow: hidden;
    margin-top: 20px;
  }
  .hotelandresort .hotels_list ul:first-child {
    margin-top: 50px;
  }
  .hotelandresort .hotels_list ul li {
    float: left;
    width: 22.46%;
    margin-left: 3.38%;
  }
  .hotelandresort .hotels_list ul li:first-child {
    margin-left: 0;
  }
  .hotelandresort .hotels_list ul li a {
    display: block;
  }
  .hotelandresort .hotels_list ul li figure img {
    width: 100%;
    border-radius: 3px;
  }
  .hotelandresort .hotels_name {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 8px;
    padding-left: 1px;
  }
  .hotelandresort .hotels_address {
    font-size: 1.2rem;
    color: #666;
    margin-top: 5px;
    padding-left: 1px;
  }
}

@media only screen and (max-width: 767px) {
  .news.news-detail {
    padding: 0 15px;
  }
  .news.news-detail .news_detail_inner {
    padding-bottom: 76px;
  }
  .news.news-detail .news_detail_head {
    padding-top: 37px;
  }
  .news.news-detail .news_detail_head_date {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.1em;
  }
  .news.news-detail .news_detail_head_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.4;
    margin-top: 5px;
  }
  .news.news-detail .news_detail_cont {
    margin-top: 19px;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.8;
  }
  .news.news-detail .news_detail_cont h1 {
    font-size: 1.375rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h2 {
    font-size: 1.35rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h3 {
    font-size: 1.325rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h4 {
    font-size: 1.3rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h5 {
    font-size: 1.275rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h6 {
    font-size: 1.25rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont pre {
    font-family: monospace;
    white-space: pre;
    margin: 1em 0;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.8;
  }
  .news.news-detail .news_detail_cont strong {
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont em {
    font-style: italic;
  }
  .news.news-detail .news_detail_cont ul {
    display: block;
    list-style-type: disc;
    margin: 1em 0;
    padding-left: 30px;
  }
  .news.news-detail .news_detail_cont ul li {
    display: list-item;
  }
  .news.news-detail .news_detail_cont ol {
    display: block;
    list-style-type: decimal;
    margin: 1em 0;
    padding-left: 30px;
  }
  .news.news-detail .news_detail_cont ol li {
    display: list-item;
  }
  .news.news-detail .news_detail_cont blockquote {
    display: block;
    margin: 1em 40px;
  }
  .news.news-detail .news_detail_cont a {
    color: #0000ff;
    cursor: auto;
    text-decoration: underline;
    word-break: break-all;
  }
  .news.news-detail .news_detail_cont del {
    text-decoration: line-through;
  }
  .news.news-detail .news_detail_cont hr {
    display: block;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: #d6d6d6;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
  }
  .news.news-detail .news_detail_pdf {
    margin-top: 15px;
    text-align: right;
  }
  .news.news-detail .news_detail_pdf_link {
    display: inline-block;
    position: relative;
    font-size: 1.0rem;
    font-weight: 200;
    letter-spacing: 0.075em;
    line-height: 10px;
    padding-left: 13px;
    margin-left: 15px;
  }
  .news.news-detail .news_detail_pdf_link:first-child {
    margin-left: 0;
  }
  .news.news-detail .news_detail_pdf_link:before {
    position: absolute;
    content: "";
    display: block;
    width: 8px;
    height: 10px;
    background: url("/english/assets/img/icon_pdf_sp.png") center no-repeat;
    background-size: cover;
    left: 0;
    top: 0;
  }
  .news.news-detail .news_detail_image {
    margin: 30px auto 0;
    padding: 0 22px;
    max-width: 624px;
  }
  .news.news-detail .news_detail_image_area {
    position: relative;
    overflow: hidden;
    padding-top: 100%;
    margin: 0 auto;
  }
  .news.news-detail .news_detail_image_area span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
  }
  .news.news-detail .news_detail_pager {
    padding: 0 22px;
    margin: 49px auto 0;
    overflow: hidden;
    max-width: 624px;
  }
  .news.news-detail .news_detail_pager_link {
    width: 50%;
  }
  .news.news-detail .news_detail_pager_link a {
    position: relative;
    display: inline-block;
    max-width: 80.48%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 0 7px;
    border-bottom: 2px solid #000;
  }
  .news.news-detail .news_detail_pager_link a:before {
    position: absolute;
    content: "";
    display: block;
    width: 4px;
    height: 7px;
    top: 3px;
  }
  .news.news-detail .news_detail_pager_prev {
    float: left;
    text-align: left;
  }
  .news.news-detail .news_detail_pager_prev a {
    padding-left: 15px;
  }
  .news.news-detail .news_detail_pager_prev a:before {
    background: url("/english/assets/img/arrow_link_pager_l.png") center no-repeat;
    background-size: cover;
    left: 2px;
  }
  .news.news-detail .news_detail_pager_next {
    float: right;
    text-align: right;
  }
  .news.news-detail .news_detail_pager_next a {
    padding-right: 15px;
  }
  .news.news-detail .news_detail_pager_next a:before {
    background: url("/english/assets/img/arrow_link_pager_r.png") center no-repeat;
    background-size: cover;
    right: 2px;
  }
  .news.news-detail .news_detail_back {
    text-align: center;
    margin-top: 50px;
  }
  .news.news-detail .news_detail_back a {
    position: relative;
    display: inline-block;
    max-width: 80.48%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 0 7px;
    border-bottom: 2px solid #000;
    padding-right: 15px;
  }
  .news.news-detail .news_detail_back a:before {
    position: absolute;
    content: "";
    display: block;
    width: 4px;
    height: 7px;
    top: 3px;
    background: url("/english/assets/img/arrow_link_pager_r.png") center no-repeat;
    background-size: cover;
    right: 2px;
  }
}

@media only screen and (min-width: 768px) {
  .news.news-detail {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .news.news-detail .news_detail_inner {
    padding: 0 50px;
  }
  .news.news-detail .news_detail_head {
    padding-top: 119px;
  }
  .news.news-detail .news_detail_head_date {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.1em;
  }
  .news.news-detail .news_detail_head_ttl {
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin-top: 7px;
  }
  .news.news-detail .news_detail_cont {
    margin-top: 36px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 2.0;
  }
  .news.news-detail .news_detail_cont h1 {
    font-size: 2.35rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h2 {
    font-size: 2.25rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h3 {
    font-size: 2.15rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h4 {
    font-size: 2.05rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h5 {
    font-size: 1.95rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont h6 {
    font-size: 1.85rem;
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont pre {
    font-family: monospace;
    white-space: pre;
    margin: 1em 0;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 2.0;
  }
  .news.news-detail .news_detail_cont strong {
    font-weight: 700;
  }
  .news.news-detail .news_detail_cont em {
    font-style: italic;
  }
  .news.news-detail .news_detail_cont ul {
    display: block;
    list-style-type: disc;
    padding-left: 40px;
  }
  .news.news-detail .news_detail_cont ul li {
    display: list-item;
  }
  .news.news-detail .news_detail_cont ol {
    display: block;
    list-style-type: decimal;
    padding-left: 40px;
  }
  .news.news-detail .news_detail_cont ol li {
    display: list-item;
  }
  .news.news-detail .news_detail_cont blockquote {
    display: block;
    margin: 1em 40px;
  }
  .news.news-detail .news_detail_cont a {
    color: #0000ff;
    cursor: auto;
    text-decoration: underline;
    word-break: break-all;
  }
  .news.news-detail .news_detail_cont del {
    text-decoration: line-through;
  }
  .news.news-detail .news_detail_cont hr {
    display: block;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: #d6d6d6;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
  }
  .news.news-detail .news_detail_pdf {
    margin-top: 30px;
    text-align: right;
  }
  .news.news-detail .news_detail_pdf_link {
    display: inline-block;
    position: relative;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 37px;
    padding-left: 39px;
    margin-left: 20px;
  }
  .news.news-detail .news_detail_pdf_link:first-child {
    margin-left: 0;
  }
  .news.news-detail .news_detail_pdf_link:before {
    position: absolute;
    content: "";
    display: block;
    width: 29px;
    height: 37px;
    background: url("/english/assets/img/icon_pdf_pc.png") center no-repeat;
    background-size: cover;
    left: 0;
    top: 0;
  }
  .news.news-detail .news_detail_image {
    margin-top: 20px;
  }
  .news.news-detail .news_detail_image_area {
    width: 580px;
    height: 580px;
    overflow: hidden;
    margin: 0 auto;
  }
  .news.news-detail .news_detail_image_area span {
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
  }
  .news.news-detail .news_detail_pager {
    max-width: 580px;
    margin: 20px auto 0;
    overflow: hidden;
  }
  .news.news-detail .news_detail_pager_link a {
    position: relative;
    display: inline-block;
    max-width: 202px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 0 0 6px;
    border-bottom: 2px solid #000;
  }
  .news.news-detail .news_detail_pager_link a:before {
    position: absolute;
    content: "";
    display: block;
    width: 6px;
    height: 9px;
    top: 3px;
  }
  .news.news-detail .news_detail_pager_prev {
    float: left;
  }
  .news.news-detail .news_detail_pager_prev a {
    padding-left: 14px;
  }
  .news.news-detail .news_detail_pager_prev a:before {
    background: url("/english/assets/img/arrow_link_pager_l.png") center no-repeat;
    background-size: cover;
    left: 0;
  }
  .news.news-detail .news_detail_pager_next {
    float: right;
  }
  .news.news-detail .news_detail_pager_next a {
    padding-right: 14px;
  }
  .news.news-detail .news_detail_pager_next a:before {
    background: url("/english/assets/img/arrow_link_pager_r.png") center no-repeat;
    background-size: cover;
    right: 0;
  }
  .news.news-detail .news_detail_back {
    text-align: center;
    margin-top: 20px;
  }
  .news.news-detail .news_detail_back a {
    position: relative;
    display: inline-block;
    max-width: 202px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 0 0 6px;
    border-bottom: 2px solid #000;
    padding-right: 14px;
  }
  .news.news-detail .news_detail_back a:before {
    position: absolute;
    content: "";
    display: block;
    width: 6px;
    height: 9px;
    top: 3px;
    background: url("/english/assets/img/arrow_link_pager_r.png") center no-repeat;
    background-size: cover;
    right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .news.news-index {
    padding-top: 38px;
  }
  .news.news-index .section_ttl_sub span {
    width: 33px;
  }
  .news.news-index .section_ttl {
    font-size: 1.6rem;
  }
  .news.news-index .common_tab {
    margin-top: 20px;
  }
  .news_cont {
    background-color: #f4f4f4;
  }
  .news_cont_list {
    padding: 41px 12px 15px;
  }
  .news_cont_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .news_cont_date {
    font-size: 1rem;
    font-weight: 200;
  }
  .news_cont_txt {
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 10px;
  }
  .news_cont_txt .is-external_link::after {
    content: '';
    display: inline-block;
    width: 11px;
    height: 9px;
    background: url("/english/assets/img/icon-link-blk.png");
    background-size: 11px, 9px;
    margin-left: 7px;
  }
}

@media only screen and (min-width: 768px) {
  .news.news-index {
    padding-top: 61px;
  }
  .news.news-index .title-section .section_ttl_sub span {
    width: 50px;
  }
  .news.news-index .common_tab {
    margin-top: 50px;
  }
  .news_cont {
    background-color: #f4f4f4;
  }
  .news_cont_list {
    display: table;
    table-layout: fixed;
    width: 100%;
    max-width: 1044px;
    padding: 65px 10px 10px;
    margin: 0 auto;
  }
  .news_cont_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .news_cont_date {
    display: table-cell;
    width: 115px;
    font-size: 1.2rem;
    padding-left: 24px;
  }
  .news_cont_txt {
    display: table-cell;
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 0 24px 0 60px;
  }
  .news_cont_txt .is-external_link::after {
    content: '';
    display: inline-block;
    width: 11px;
    height: 9px;
    background: url("/english/assets/img/icon-link-blk.png");
    background-size: 11px, 9px;
    margin-left: 7px;
  }
}

@media only screen and (max-width: 767px) {
  .offer_bestrate .offer_main {
    background-image: url("/english/assets/img/offer/bestrate_main.jpg");
  }
  .offer_bestrate .offer_bestrateDetail_section_01 {
    background-color: #f3f6f7;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_inner {
    padding: 0 36px 40px 12px;
    margin: 0 auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_mainimg {
    padding-top: 42px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_mainimg p {
    width: 70px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_ttl {
    font-size: 20px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 25px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_ttl {
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.075em;
    font-weight: 700;
    position: relative;
    padding-left: 23px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_ttl::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 13px;
    background: url("/english/assets/img/offer/bestrate_crown.png");
    background-size: 18px 13px;
    position: absolute;
    left: 0;
    margin-top: 2px;
    background-repeat: no-repeat;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_txt {
    padding: 10px 0 31px 21px;
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0.075em;
    font-weight: 400;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits br {
    display: none;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .caption_list {
    font-size: 10px;
    line-height: 16px;
    letter-spacing: 0.060em;
    font-weight: 200;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 {
    padding: 40px 10px 0;
    margin: 0 auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration {
    position: relative;
    margin: 0 auto 30px;
    background-color: #f3f0e6;
    background-repeat: no-repeat;
    box-sizing: border-box;
    padding: 22px 21px;
    width: 100%;
    text-align: center;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament {
    position: absolute;
    display: block;
    width: 66px;
    height: 66.5px;
    background: url(/assets/img/offer/bestrate_ornament.png) 0 0 no-repeat;
    background-size: cover;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_tl {
    top: 12px;
    left: 11px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_tr {
    top: 12px;
    right: 11px;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_bl {
    bottom: 12px;
    left: 11px;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_br {
    bottom: 12px;
    right: 11px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_borderBox {
    box-sizing: border-box;
    border: 1px solid #bfb9a6;
    padding: 22px 14px 14px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_ttl {
    font-size: 20px;
    letter-spacing: 0.075em;
    font-weight: 700;
    color: #b6a77d;
    text-align: center;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_ttl img {
    width: 168px;
    height: auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_txt {
    padding-top: 12px;
    padding-bottom: 19px;
    font-size: 10px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.075em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_txt span {
    font-size: 18px;
    font-weight: 700;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_caption {
    font-size: 10px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.075em;
    text-align: left;
    box-sizing: border-box;
    background: #e1dcce;
    border-radius: 4px;
    padding: 22px 25px 20px 22px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration br {
    display: none;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements {
    box-sizing: border-box;
    padding: 12px 0;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_subttl {
    font-size: 14px;
    font-weight: 700;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_txt {
    font-size: 12px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.075em;
    padding: 3px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_txt li {
    letter-spacing: 0.050em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 {
    border-top: 1px solid #999999;
    padding-top: 28px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list {
    font-size: 12px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.050em;
    padding: 3px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list li {
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list li.offer_requirements_txt {
    text-indent: 0;
    margin-left: 0;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_caption {
    font-size: 12px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.075em;
    padding: 3px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_caption li {
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 {
    border-top: 1px solid #999999;
    padding-top: 28px;
    padding-bottom: 31px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt_captionlist {
    font-size: 10px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.075em;
    padding-left: 3px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt_captionlist li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .non_subject {
    color: #fff;
    border-radius: 2px;
    height: 27px;
    background-color: #999;
    padding-top: 0;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.075em;
    box-sizing: border-box;
    padding: 8px 20px;
    display: inline-block;
    text-align: center;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt {
    margin-top: 5px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 {
    padding: 50px 0 0;
    margin: 0 auto;
    border-top: 2px solid #999999;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ttl {
    font-size: 16px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    box-sizing: border-box;
    border-bottom: 2px solid #999999;
    padding-bottom: 19px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list {
    position: relative;
    cursor: pointer;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list span {
    position: absolute;
    top: 50%;
    right: 12px;
    border: 2px solid #999;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-top: -14px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list span:after, .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 11px;
    right: 5px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ul .offer_question_list .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .question_item {
    border-bottom: 1px dotted #CCCCCC;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .question_item .question {
    margin: 0 12px;
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.075em;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
    position: relative;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .question::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer_item {
    display: none;
    border-bottom: 2px solid #999999;
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.075em;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer_item .answer {
    position: relative;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .more_questions {
    text-align: right;
    padding: 40px 10px 0;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .more_questions a {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
}

@media only screen and (min-width: 768px) {
  .offer_bestrate .offer_main {
    background-image: url("/english/assets/img/offer/bestrate_main.jpg");
  }
  .offer_bestrate .offer_bestrateDetail_section_01 {
    background-color: #f3f6f7;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_inner {
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_mainimg {
    padding: 66px 0 18px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_detail_mainimg p {
    width: 100px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_ttl {
    font-size: 32px;
    line-height: 38px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    margin-bottom: 75px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits {
    overflow: hidden;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_ttl {
    vertical-align: middle;
    display: table;
    position: relative;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_list_ttl::before {
    content: '';
    display: inline-block;
    width: 22px;
    height: 19px;
    background: url("/english/assets/img/offer/bestrate_crown.png");
    background-size: 22px 19px;
    margin-right: 7px;
    position: absolute;
    margin-top: 4px;
    left: 0;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_list_ttl {
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0.075em;
    font-weight: 700;
    padding-left: 35px;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_txt {
    padding-top: 15px;
    padding-bottom: 45px;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.075em;
    font-weight: 400;
    margin-left: 34px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_01 {
    width: 50%;
    float: left;
    padding-right: 20px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .offer_bestrateDetail_benefits_02 {
    width: 50%;
    float: right;
    padding-left: 23px;
  }
  .offer_bestrate .offer_bestrateDetail_section_01 .caption_list {
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0.075em;
    font-weight: 200;
    padding-bottom: 79px;
    padding-left: 34px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 {
    max-width: 1044px;
    padding: 0 10px 0;
    margin: 100px auto 0;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration {
    position: relative;
    max-width: 850px;
    margin: 0 auto 72px;
    background-color: #f3f0e6;
    background-repeat: no-repeat;
    box-sizing: border-box;
    padding: 30px;
    width: 100%;
    text-align: center;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament {
    position: absolute;
    display: block;
    width: 132px;
    height: 133px;
    background: url(/assets/img/offer/bestrate_ornament.png) 0 0 no-repeat;
    background-size: cover;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_tl {
    top: 10px;
    left: 10px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_tr {
    top: 10px;
    right: 10px;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_bl {
    bottom: 10px;
    left: 10px;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration .bestrateDetail_declaration_ornament.position_br {
    bottom: 10px;
    right: 10px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg);
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_borderBox {
    box-sizing: border-box;
    border: 2px solid #bfb9a6;
    padding: 40px 40px 50px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_ttl {
    font-size: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    color: #b6a77d;
    text-align: center;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_ttl img {
    width: 270px;
    height: auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_txt {
    padding-top: 24px;
    padding-bottom: 30px;
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_txt span {
    font-size: 24px;
    font-weight: 700;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .bestrateDetail_declaration_caption {
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.075em;
    text-align: left;
    box-sizing: border-box;
    background: #e1dcce;
    max-height: 163px;
    max-width: 706px;
    border-radius: 4px;
    padding: 30px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements {
    display: table;
    box-sizing: border-box;
    padding: 30px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_subttl {
    display: table-cell;
    font-size: 18px;
    font-weight: 700;
    line-height: 56px;
    width: 288px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_txt {
    display: table-cell;
    width: auto;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
    padding-bottom: 18px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 {
    border-top: 1px solid #999999;
    padding-top: 42px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list {
    display: block;
    width: auto;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
    padding-bottom: 28px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list li {
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_list li.offer_requirements_txt {
    text-indent: 0;
    margin-left: 0;
    padding-bottom: 35px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_01 .offer_requirements_txt_caption {
    font-size: 12px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 {
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
    padding-bottom: 42px;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt {
    display: block;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt_captionlist {
    font-size: 12px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .offer_requirements_txt_captionlist li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .offer_bestrate .offer_bestrateDetail_section_03 .offer_requirements_02 .non_subject {
    color: #fff;
    border-radius: 2px;
    width: 184px;
    height: 34px;
    background-color: #999;
    font-size: 12px;
    font-weight: 400;
    line-height: 56px;
    letter-spacing: 0.075em;
    box-sizing: border-box;
    padding: 13px 35px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 {
    max-width: 1044px;
    padding: 80px 10px 0;
    margin: 0 auto;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_ttl {
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    box-sizing: border-box;
    border-bottom: 2px solid #999999;
    padding-bottom: 25px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list {
    position: relative;
    cursor: pointer;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list span {
    position: absolute;
    right: 19px;
    top: 50%;
    border: 2px solid #999;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
    margin-top: -17px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list span:after, .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 14px;
    right: 8px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .offer_question_list .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .question {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.075em;
    border-bottom: 1px dotted #CCCCCC;
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .question::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer_item {
    display: none;
    border-bottom: 2px solid #999999;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer_item .answer {
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .answer::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .more_questions {
    text-align: right;
    padding-top: 49px;
  }
  .offer_bestrate .offer_bestrateDetail_section_04 .more_questions a {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
}

@media only screen and (max-width: 767px) {
  .offer_carrental .offer_main {
    background-image: url("/english/assets/img/offer/carrental_main.png");
  }
  .offer_carrental .offer_detail {
    overflow: hidden;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner {
    padding: 0 12px;
    margin: 0 auto;
    text-align: center;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_detail_mainimg {
    padding-top: 40px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_detail_mainimg p {
    width: 84px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_ttl {
    font-size: 20px;
    line-height: 56px;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-align: center;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_subttl {
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 700;
    padding-bottom: 13px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_subttl span {
    font-size: 30px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_txt {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 20px;
    text-align: left;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_txt a {
    border-bottom: 1px solid #9c9d9e;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_caption {
    font-size: 10px;
    line-height: 16px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 40px;
    text-align: left;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 {
    padding: 0 12px;
    margin: 0 auto;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule {
    box-sizing: border-box;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_subttl {
    font-size: 14px;
    font-weight: 700;
    padding-top: 18px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_txt_list {
    font-size: 12px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.075em;
    padding: 3px 3px 30px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_txt_list li {
    letter-spacing: 0.050em;
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_01 .offer_rule_subttl {
    padding-top: 40px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_01 .offer_rule_txt_list {
    margin-top: 5px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_02 {
    border-top: 1px dotted #999999;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_02 .non_subject {
    color: #fff;
    border-radius: 2px;
    width: 155px;
    height: 27px;
    background-color: #999;
    padding-top: 0;
    font-size: 12px;
    font-weight: 400;
    line-height: 56px;
    letter-spacing: 0.075em;
    box-sizing: border-box;
    padding: 8px 20px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_02 .offer_rule_txt_list {
    line-height: 24px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .external_link {
    text-align: center;
    float: right;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .external_link a {
    font-weight: 700;
    display: inline-block;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 38px;
    border: solid 1px #000;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
}

@media only screen and (min-width: 768px) {
  .offer_carrental .offer_main {
    background-image: url("/english/assets/img/offer/carrental_main.png");
  }
  .offer_carrental .offer_detail {
    overflow: hidden;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner {
    text-align: center;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_detail_mainimg {
    padding-top: 91px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_detail_mainimg p {
    width: 100px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_ttl {
    font-size: 32px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 32px;
    padding-top: 34px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_ttl br {
    display: none;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_subttl {
    font-size: 30px;
    line-height: 32px;
    letter-spacing: 0.015em;
    font-weight: 700;
    padding-bottom: 33px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_subttl span {
    font-size: 50px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_txt {
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 25px;
    width: 724px;
    margin: 0 auto;
    text-align: left;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_txt a {
    border-bottom: 1px solid #9c9d9e;
    box-shadow: 0 1px #cacccd;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_01 .offer_detail_inner .offer_carrental_caption {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 95px;
    text-align: right;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 {
    max-width: 1044px;
    padding: 80px 10px 0;
    margin: 0 auto;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule {
    display: table;
    box-sizing: border-box;
    padding: 30px;
    width: 100%;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_subttl {
    display: table-cell;
    font-size: 18px;
    font-weight: 700;
    width: 274px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_txt_list {
    display: table-cell;
    width: auto;
    padding-left: 17px;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_txt_list li {
    text-indent: -0.75em;
    margin-left: 0.75em;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_01 {
    border-top: 1px solid #999999;
    padding: 42px 0 28px 40px;
    display: block;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_02 {
    border-top: 1px dotted #cccccc;
    border-bottom: 1px solid #999999;
    padding-bottom: 57px;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .offer_rule_02 .non_subject {
    color: #fff;
    border-radius: 2px;
    height: 34px;
    line-height: 34px;
    background-color: #999;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.075em;
    box-sizing: border-box;
    padding: 0 35px;
    display: inline-block;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .external_link {
    text-align: center;
    padding-top: 30px;
    float: right;
  }
  .offer_carrental .offer_detail .offer_carrentalDetail_section_02 .external_link a {
    font-weight: 700;
    display: inline-block;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 14px;
    line-height: 24px;
    border: solid 2px #000;
    letter-spacing: 0.075em;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .offer_packageplan .offer_main {
    background-image: url("/english/assets/img/offer/packageplan_main.png");
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner {
    padding: 0 10px;
    margin: 0 auto;
    text-align: center;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_detail_mainimg {
    padding-top: 39px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_detail_mainimg p {
    width: 77px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_ttl {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 23px;
    padding-top: 5px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_subttl {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 700;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_txt {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 40px;
    margin-top: 5px;
    text-align: left;
  }
}

@media only screen and (min-width: 768px) {
  .offer_packageplan .offer_main {
    background-image: url("/english/assets/img/offer/packageplan_main.png");
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner {
    width: 724px;
    margin: 0 auto;
    text-align: center;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_detail_mainimg {
    padding-top: 95px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_detail_mainimg p {
    width: 101px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_ttl {
    font-size: 32px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 45px;
    padding-top: 28px;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_ttl br {
    display: none;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_subttl {
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.075em;
    font-weight: 700;
  }
  .offer_packageplan .offer_detail .offer_packageplanDetail_section .offer_detail_inner .offer_packageplan_txt {
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 50px;
    margin-top: 5px;
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .offer_tieup .offer_main {
    background-image: url("/english/assets/img/offer/tieup_main.png");
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner {
    padding: 0 12px;
    margin: 0 auto;
    text-align: center;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_detail_mainimg {
    padding-top: 40px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_detail_mainimg p {
    width: 53px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_tieup_ttl {
    font-size: 20px;
    line-height: 56px;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-align: center;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_tieup_txt {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 55px;
    text-align: left;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 {
    margin: 0 auto;
    padding-top: 35px;
    padding-bottom: 69px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .section_02_ttl {
    font-size: 16px;
    line-height: 38px;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-align: center;
    border-bottom: 2px solid #999;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service {
    padding: 0 12px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_item {
    padding-top: 30px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_img {
    width: 100%;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_subttl {
    font-size: 16px;
    letter-spacing: 0.075em;
    line-height: 22px;
    font-weight: 700;
    padding: 12px 0 8px 2px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_txt {
    font-size: 12px;
    letter-spacing: 0.075em;
    line-height: 22px;
    font-weight: 400;
    padding-left: 3px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_allcompanies {
    text-align: right;
    padding: 0 12px;
    margin-top: 50px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_allcompanies a {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 {
    margin: 0 auto;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_ttl {
    font-size: 16px;
    line-height: 38px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    border-bottom: 2px solid #999;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner {
    padding: 0 12px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content_list {
    padding-top: 17px;
    position: relative;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content_company {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content_pdf {
    top: 0;
    right: 0;
    font-size: 10.03px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-top: 17px;
    padding-right: 35px;
    position: absolute;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content_pdf a::after {
    content: '';
    background: url("/english/assets/img/icon_pdf_pc.png") top right no-repeat;
    position: absolute;
    width: 14px;
    height: 18px;
    background-size: 14px 18px;
    padding-left: 5px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content .offer_exclusives {
    margin-top: 12px;
    margin-bottom: 30px;
    text-align: center;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .offer_content .offer_exclusives_btn {
    display: inline-block;
    padding: 0 20px;
    border-radius: 13px;
    font-size: 12px;
    font-weight: 700;
    line-height: 22px;
    border: solid 2px #000;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .tieup_companies {
    max-width: 423px;
    margin: 30px auto 41px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .tieup_companies > img {
    width: 100%;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .tieup_companies_box {
    font-size: 12px;
    line-height: 22px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-left: 3px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_inner .tieup_companies_box .list_box > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_apply {
    margin-top: 30px;
    text-align: center;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_apply_btn {
    display: inline-block;
    padding: 0 16px;
    border-radius: 15px;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 28px;
    border: solid 1px #000;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList {
    line-height: 1.8;
    text-align: left;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList_list {
    display: inline;
    font-size: 14px;
    font-weight: 500;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList_list:not(:last-of-type)::after {
    content: "/";
    margin: 0 10px;
  }
}

@media only screen and (min-width: 768px) {
  .offer_tieup .offer_main {
    background-image: url("/english/assets/img/offer/tieup_main.png");
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 {
    width: 100%;
    background-color: #f3f6f7;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner {
    text-align: center;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_detail_mainimg {
    padding-top: 66px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_detail_mainimg p {
    width: 82px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_tieup_ttl {
    font-size: 32px;
    line-height: 56px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 32px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_tieup_ttl br {
    display: none;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_01 .offer_detail_inner .offer_tieup_txt {
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding-bottom: 90px;
    width: 724px;
    margin: 0 auto;
    text-align: left;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 {
    max-width: 1044px;
    padding: 56px 10px 0;
    margin: 0 auto;
    overflow: hidden;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .section_02_ttl {
    font-size: 20px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 25px;
    border-bottom: 1px solid #999;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service {
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    min-height: 1px;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    margin: 0 auto;
    width: 100%;
    padding: 41px 0;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_item {
    width: 24.12%;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_item .tieup_service_img {
    width: 100%;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_subttl {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.06em;
    font-weight: 700;
    padding-top: 13px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_service_txt {
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0.06em;
    font-weight: 400;
    padding-top: 20px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_allcompanies {
    text-align: right;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_02 .tieup_allcompanies a {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 {
    max-width: 1044px;
    padding: 56px 10px 0;
    margin: 0 auto;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .section_03_ttl {
    font-size: 20px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 25px;
    border-bottom: 1px solid #999;
    margin-bottom: 41px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content {
    display: table;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content_list {
    padding-top: 29px;
    display: table-row;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content_company {
    padding-left: 25px;
    font-size: 18px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    display: table-cell;
    vertical-align: middle;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content_pdf {
    display: table-cell;
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
    padding: 12px 35px 12px 24px;
    vertical-align: middle;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content_pdf a {
    position: relative;
    vertical-align: middle;
    display: inline-block;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content_pdf a::after {
    content: '';
    background: url("/english/assets/img/icon_pdf_pc.png") top right no-repeat;
    display: inline-block;
    vertical-align: middle;
    width: 29px;
    height: 37px;
    background-size: 29px 37px;
    padding-left: 9px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content .offer_exclusives {
    display: table-cell;
    text-align: center;
    padding-left: 35px;
    vertical-align: middle;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_content .offer_exclusives_btn {
    display: inline-block;
    padding: 0 20px;
    border-radius: 13px;
    font-size: 14px;
    font-weight: 700;
    line-height: 22px;
    border: solid 2px #000;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies {
    width: 423px;
    margin: 91px auto 41px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies > img {
    width: 100%;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies_box {
    display: -ms-flexbox;
    display: flex;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies_box .list_box {
    width: 50%;
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.075em;
    font-weight: 400;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies_box .list_box_01 {
    padding-left: 26px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_companies_box .list_box > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList {
    line-height: 2.4;
    text-align: center;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList_list {
    display: inline;
    font-size: 16px;
    font-weight: 500;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .tieup_textList_list:not(:last-of-type)::after {
    content: "/";
    margin: 0 10px;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_apply {
    margin-top: 30px;
    text-align: right;
  }
  .offer_tieup .offer_detail .offer_tieupDetail_section_03 .offer_apply_btn {
    display: inline-block;
    padding: 0 16px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 700;
    line-height: 28px;
    border: solid 2px #333333;
    letter-spacing: 0.06em;
    background-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .offer .offer_detail {
    padding-bottom: 100px;
  }
  .offer_main {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding: 65px 0 70px;
  }
  .offer_main .offer_content_inner {
    padding: 0 12px;
  }
  .offer_main .offer_main_title {
    margin-bottom: 26px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 400;
    letter-spacing: 0.1em;
  }
  .offer_main .offer_sub_title {
    margin-bottom: 10px;
    font-weight: 500;
    text-align: center;
    font-size: 1.4rem;
    line-height: 2.6rem;
    letter-spacing: 0.1em;
  }
  .offer_main .offer_main_text {
    text-align: left;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 2.0rem;
    letter-spacing: 0.1em;
    max-width: 430px;
    margin: 0 auto;
  }
  .offer_main .offer_main_text br {
    display: none;
  }
  .offer .offer_detail_mainimg {
    text-align: center;
  }
  .offer .offer_detail_mainimg p {
    display: inline-block;
  }
  .offer .offer_detail_mainimg p img {
    width: 100%;
  }
  .offer .offer_hotelList_ttl {
    padding: 39px 0 15px;
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    border-bottom: 2px solid #999999;
    line-height: 1.375;
  }
  .offer .offer_hotelList_ul {
    padding: 12px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_list {
    display: block;
    border-bottom: 1px dotted #CCCCCC;
  }
  .offer .offer_hotelList_ul .offer_hotelList_link {
    display: block;
    padding: 10px 0 10px 10px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_plan {
    overflow: hidden;
    padding-bottom: 20px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_plan_link {
    display: block;
    font-size: 10px;
    font-weight: 700;
    padding: 7px 6px 7px 8px;
    border: 1px solid #000;
    border-radius: 4px;
    letter-spacing: 0.1em;
    width: 86px;
    height: 24px;
    float: right;
  }
  .offer .offer_hotelList_ul .offer_hotelList_linkInner {
    overflow: hidden;
  }
  .offer .offer_hotelList_ul .offer_hotelList_imgWrap {
    width: 18%;
    float: left;
  }
  .offer .offer_hotelList_ul .offer_hotelList_imgWrap img {
    width: 100%;
    border-radius: 3px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_textArea {
    width: 82%;
    float: left;
    padding-top: 4px;
    padding-left: 10px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_name {
    margin-bottom: 4px;
    font-size: 1.6rem;
    letter-spacing: 0.075rem;
    font-weight: 700;
    color: #333;
    line-height: 2.0rem;
  }
  .offer .offer_hotelList_ul .offer_hotelList_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url("/english/assets/img/icon_link.png") center center no-repeat;
    background-size: 100%;
  }
  .offer .offer_hotelList_ul .offer_hotelList_address {
    font-size: 1.0rem;
    color: #666;
    letter-spacing: 0.075rem;
  }
  .offer .offer_hotelList_ul .offer_privilege_section_linkWrap {
    position: absolute;
    right: 22px;
    bottom: 36px;
  }
  .offer .offer_hotelList_ul .offer_privilege_section_link {
    display: inline-block;
    padding: 0 20px;
    font-size: 14px;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 18px;
  }
}

@media only screen and (min-width: 768px) {
  .offer_main {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    min-height: 300px;
    overflow: hidden;
    padding-top: 64px;
  }
  .offer_main .offer_content_inner {
    text-align: left;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .offer_main .offer_main_title {
    float: none;
    display: inline-block;
    margin-bottom: 40px;
    font-size: 28px;
    line-height: 38px;
    letter-spacing: 0.075em;
    text-align: left;
    position: relative;
    width: 44%;
  }
  .offer_main .offer_main_textArea {
    width: auto;
    float: none;
    display: inline-block;
    position: absolute;
    padding-top: 5px;
  }
  .offer_main .offer_sub_title {
    font-size: 24px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0.075em;
    padding-bottom: 40px;
    padding-left: 1px;
  }
  .offer_main .offer_sub_title br {
    display: none;
  }
  .offer_main .offer_main_text {
    font-size: 16px;
    font-weight: 200;
    line-height: 28px;
    letter-spacing: 0.075em;
  }
  .offer .offer_detail_mainimg {
    text-align: center;
  }
  .offer .offer_detail_mainimg p {
    display: inline-block;
  }
  .offer .offer_detail_mainimg p img {
    width: 100%;
  }
  .offer .offer_hotelList {
    max-width: 1044px;
    padding: 80px 10px 0;
    margin: 0 auto;
  }
  .offer .offer_hotelList_ttl {
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0.075em;
    font-weight: 700;
    text-align: center;
    box-sizing: border-box;
    border-bottom: 2px solid #999999;
    padding-bottom: 20px;
  }
  .offer .offer_hotelList_ttl br {
    display: none;
  }
  .offer .offer_hotelList_ul .offer_hotelList_list {
    display: block;
    border-bottom: 1px dotted #CCCCCC;
    position: relative;
  }
  .offer .offer_hotelList_ul .offer_hotelList_link {
    display: block;
    padding: 10px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_plan {
    position: absolute;
    right: 5px;
    top: 50%;
    margin-top: -18px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_plan_link {
    display: block;
    font-size: 14px;
    font-weight: 700;
    padding: 0 6px 0 8px;
    border: 2px solid #000;
    border-radius: 4px;
    letter-spacing: 0.075em;
    width: 109px;
    height: 35px;
    line-height: 31px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_linkInner {
    position: relative;
    overflow: hidden;
  }
  .offer .offer_hotelList_ul .offer_hotelList_imgWrap {
    float: left;
    width: 70px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_imgWrap img {
    width: 100%;
    height: auto;
    border-radius: 4px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_textArea {
    float: left;
    padding-top: 4px;
    padding-left: 15px;
    letter-spacing: 0.075em;
  }
  .offer .offer_hotelList_ul .offer_hotelList_name {
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
  }
  .offer .offer_hotelList_ul .offer_hotelList_name.is-external_link:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 9px;
    margin-left: 4px;
    background: url("/english/assets/img/icon_link.png") center center no-repeat;
    background-size: 100%;
  }
  .offer .offer_hotelList_ul .offer_hotelList_address {
    font-size: 12px;
    font-weight: 400;
    color: #666666;
  }
  .offer .offer_hotelList_ul .offer_privilege_section_linkWrap {
    position: absolute;
    right: 22px;
    bottom: 36px;
  }
  .offer .offer_hotelList_ul .offer_privilege_section_link {
    display: inline-block;
    padding: 0 20px;
    font-size: 14px;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 18px;
  }
}

@media only screen and (max-width: 767px) {
  .policy {
    padding-top: 42px;
  }
  .policy .common_section_inner {
    padding: 0 12px;
  }
  .policy .policy_head_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.14em;
  }
  .policy .policy_cont {
    margin-top: 40px;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.6;
  }
  .policy .policy_cont_sec {
    padding: 0 5px;
    margin-top: 20px;
  }
  .policy .policy_cont_sec:first-child {
    border-top: 1px solid #999;
    padding-top: 10px;
    margin-top: 0;
  }
  .policy .policy_cont_sec_ttl {
    font-weight: 700;
  }
  .policy .policy_cont_sec_list li {
    text-indent: -1.5em;
    margin-left: 1.5em;
  }
  .policy .policy_cont_additional {
    text-align: right;
    margin-top: 20px;
  }
  .policy .policy_cont_additional_lead {
    margin-top: 10px;
  }
  .policy .policy_cont_additional_date {
    margin-top: 20px;
  }
  .policy .policy_cont_info {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 768px) {
  .policy {
    padding-top: 104px;
  }
  .policy .policy_head .common_section_inner {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .policy .policy_head_ttl {
    display: table-cell;
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    vertical-align: middle;
    width: 215px;
  }
  .policy .policy_cont {
    margin-top: 67px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.75;
  }
  .policy .policy_cont_sec {
    padding: 0 5px;
    margin-top: 30px;
  }
  .policy .policy_cont_sec:first-child {
    border-top: 1px solid #999;
    padding-top: 10px;
    margin-top: 0;
  }
  .policy .policy_cont_sec_ttl {
    font-weight: 700;
  }
  .policy .policy_cont_sec_list li {
    text-indent: -1.5em;
    margin-left: 1.5em;
  }
  .policy .policy_cont_additional {
    text-align: right;
    margin-top: 26px;
  }
  .policy .policy_cont_additional_lead {
    margin-top: 12px;
  }
  .policy .policy_cont_additional_date {
    margin-top: 34px;
  }
  .policy .policy_cont_info {
    margin-top: 64px;
  }
}

@media only screen and (max-width: 767px) {
  .search {
    padding-top: 42px;
  }
  .search .common_section_inner {
    padding: 0 12px;
  }
  .search .search_section_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    padding-bottom: 10px;
    border-bottom: 1px solid #999;
  }
  .search .search_head_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.14em;
  }
  .search .search_head_words {
    font-size: 1.0rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.4;
    background-color: #f3f3f3;
    border-radius: 2px;
    padding: 7px 5px 6px;
    margin-top: 12px;
  }
  .search .search_head_words span:after {
    content: ",";
  }
  .search .search_head_words span:last-child:after {
    content: none;
  }
  .search .search_empty {
    margin-top: 42px;
    padding-bottom: 100px;
  }
  .search .search_empty_ttl {
    font-size: 1.2rem;
    font-weight: 500;
    color: #666;
    letter-spacing: 0.14em;
    padding-bottom: 10px;
    border-bottom: 1px solid #999;
  }
  .search .search_empty_ttl .search_empty_ttl_num {
    font-size: 1.6rem;
    font-weight: 700;
    color: #000;
  }
  .search .search_empty_ttl .search_empty_ttl_blk {
    font-weight: 700;
    color: #000;
  }
  .search .search_result {
    margin-top: 42px;
  }
  .search .search_result_listContainer {
    max-width: 616px;
    margin: 0 auto;
  }
  .search .search_result_list_item {
    margin-top: 57px;
  }
  .search .search_result_list_item:first-child {
    margin-top: 25px;
  }
  .search .search_result_list_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.57;
  }
  .search .search_result_list_photo {
    margin-top: 15px;
  }
  .search .search_result_list_photo img {
    width: 100%;
  }
  .search .search_result_list_lead {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.83;
    margin-top: 5px;
  }
  .search .search_result_list_link {
    text-align: center;
    margin-top: 35px;
  }
  .search .search_result_list_link a {
    display: inline-block;
    padding: 0 42px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 20px;
    background-color: #fff;
  }
  .search .search_news {
    margin-top: 40px;
  }
  .search .search_news_list {
    padding: 0 0 15px;
  }
  .search .search_news_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .search .search_news_date {
    font-size: 1rem;
    font-weight: 200;
  }
  .search .search_news_txt {
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 10px;
  }
  .search .search_news_txt a.is-external_link::after {
    content: '';
    display: inline-block;
    width: 11px;
    height: 9px;
    background: url("/english/assets/img/icon-link-blk.png");
    background-size: 11px, 9px;
    margin-left: 7px;
  }
  .search .search_qa {
    margin-top: 40px;
  }
  .search .search_qa_list_item {
    position: relative;
    cursor: pointer;
  }
  .search .search_qa_list_item span {
    position: absolute;
    top: 50%;
    right: 12px;
    border: 2px solid #999;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-top: -14px;
  }
  .search .search_qa_list_item span:after, .search .search_qa_list_item span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 11px;
    right: 5px;
  }
  .search .search_qa_list_item span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .search .search_qa_list_item .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .search .search_qa_list_item .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .search .search_qa_list_question {
    border-bottom: 1px dotted #CCCCCC;
  }
  .search .search_qa_list_question_text {
    margin: 0 12px;
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.075em;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
    position: relative;
  }
  .search .search_qa_list_question_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .search .search_qa_list_answer {
    display: none;
    border-bottom: 1px solid #999999;
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.075em;
  }
  .search .search_qa_list_answer_text {
    position: relative;
    padding: 13px 48px 13px 46px;
    margin: 0 12px;
  }
  .search .search_qa_list_answer_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-size: cover;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
}

@media only screen and (min-width: 768px) {
  .search {
    padding-top: 104px;
  }
  .search .search_section_ttl {
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    padding-bottom: 20px;
    border-bottom: 1px solid #999;
  }
  .search .search_head .common_section_inner {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .search .search_head_ttl {
    display: table-cell;
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    vertical-align: middle;
    width: 215px;
  }
  .search .search_head_words {
    display: table-cell;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.4;
    background-color: #f3f3f3;
    border-radius: 2px;
    padding: 9px 11px 8px;
  }
  .search .search_head_words span:after {
    content: ",";
  }
  .search .search_head_words span:last-child:after {
    content: none;
  }
  .search .search_empty {
    margin-top: 87px;
    padding-bottom: 100px;
  }
  .search .search_empty_ttl {
    font-size: 1.8rem;
    font-weight: 500;
    color: #666;
    letter-spacing: 0.14em;
    padding-bottom: 20px;
    border-bottom: 1px solid #999;
  }
  .search .search_empty_ttl .search_empty_ttl_num {
    font-size: 2.4rem;
    font-weight: 700;
    color: #000;
  }
  .search .search_empty_ttl .search_empty_ttl_blk {
    font-weight: 700;
    color: #000;
  }
  .search .search_result {
    margin-top: 87px;
  }
  .search .search_result_list {
    margin: 0 50px;
  }
  .search .search_result_list_item {
    overflow: hidden;
    margin-top: 88px;
  }
  .search .search_result_list_item:first-child {
    margin-top: 40px;
  }
  .search .search_result_list_ttl {
    float: right;
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.4;
    width: 62.01%;
    margin-top: 5px;
  }
  .search .search_result_list_photo {
    float: left;
    width: 33.54%;
  }
  .search .search_result_list_photo img {
    width: 100%;
  }
  .search .search_result_list_lead {
    float: right;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.075em;
    line-height: 1.5;
    margin-top: 18px;
    width: 62.01%;
  }
  .search .search_result_list_link {
    float: right;
    clear: right;
    margin-top: 35px;
  }
  .search .search_result_list_link a {
    display: inline-block;
    padding: 0 45px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: 0.06em;
    border: solid 2px #000;
    border-radius: 25px;
    background-color: #fff;
  }
  .search .search_news {
    margin-top: 78px;
  }
  .search .search_news_list {
    display: table;
    table-layout: fixed;
    width: 100%;
    max-width: 1044px;
    padding: 0 0 10px;
    margin: 0 auto;
  }
  .search .search_news_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .search .search_news_date {
    display: table-cell;
    width: 115px;
    font-size: 1.2rem;
    padding-left: 24px;
  }
  .search .search_news_txt {
    display: table-cell;
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 0 24px 0 60px;
  }
  .search .search_news_txt a.is-external_link::after {
    content: '';
    display: inline-block;
    width: 11px;
    height: 9px;
    background: url("/english/assets/img/icon-link-blk.png");
    background-size: 11px, 9px;
    margin-left: 7px;
  }
  .search .search_qa {
    margin-top: 78px;
  }
  .search .search_qa_list_question {
    position: relative;
    cursor: pointer;
  }
  .search .search_qa_list_question span {
    position: absolute;
    right: 19px;
    top: 50%;
    border: 2px solid #999;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: block;
    margin-top: -17px;
  }
  .search .search_qa_list_question span:after, .search .search_qa_list_question span:before {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: #999;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    transition: all 0.5s ease-in-out;
    top: 14px;
    right: 8px;
  }
  .search .search_qa_list_question span:before {
    -ms-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
  }
  .search .search_qa_list_question .active:before {
    -ms-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1);
  }
  .search .search_qa_list_question .active:after {
    -ms-transform: rotate(90deg) scale(0);
        transform: rotate(90deg) scale(0);
  }
  .search .search_qa_list_question_text {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.075em;
    border-bottom: 1px dotted #CCCCCC;
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .search .search_qa_list_question_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_question.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .search .search_qa_list_answer {
    display: none;
    border-bottom: 1px solid #999999;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.075em;
  }
  .search .search_qa_list_answer_text {
    padding: 13px 126px 13px 56px;
    position: relative;
  }
  .search .search_qa_list_answer_text:before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 34px;
    background: url("/english/assets/img/icon_qa_answer.png");
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;
    margin-left: 7px;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
}

@media only screen and (min-width: 768px) {
  .top .top_mainvisual_arrow {
    display: none;
  }
  .top_mainvisual_list {
    position: relative;
  }
  .top_mainvisual_list_item {
    max-width: 1024px;
  }
  .top_mainvisual_list_item_inner {
    position: relative;
  }
  .top_mainvisual_list_item a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .top_mainvisual_list_item a img {
    width: 100%;
  }
  .top_mainvisual_list .slick-prev,
  .top_mainvisual_list .slick-next {
    position: absolute;
    top: 50%;
    content: "";
    display: block;
    width: 34px;
    height: 48px;
    text-indent: -9999px;
    overflow: hidden;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    z-index: 1;
  }
  .top_mainvisual_list .slick-prev {
    left: 0;
    background: url("/english/assets/img/btn_carousel_top_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_mainvisual_list .slick-next {
    right: 0;
    background: url("/english/assets/img/btn_carousel_top_r.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_mainvisual_sub {
    border-bottom: 4px solid #efefef;
  }
  .top_mainvisual_sub_list {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
  }
  .top_mainvisual_sub_list:after {
    content: " ";
    display: table;
    clear: both;
  }
  .top_mainvisual_sub_list_item {
    float: left;
    width: 25%;
  }
  .top_mainvisual_sub_list_item.is-num-1 {
    width: 100%;
  }
  .top_mainvisual_sub_list_item.is-num-2 {
    width: 50%;
  }
  .top_mainvisual_sub_list_item.is-num-3 {
    width: 33.33%;
  }
  .top_mainvisual_sub_list_item a {
    position: relative;
    display: block;
    width: 100%;
    padding: 15px 0;
  }
  .top_mainvisual_sub_list_item a:after {
    position: absolute;
    bottom: -4px;
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #999;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
  }
  .top_mainvisual_sub_list_item a.is-current:after {
    opacity: 1;
  }
  .top_mainvisual_sub_list_item div {
    padding: 4px 0;
    border-right: 1px dotted #848484;
  }
  .top_mainvisual_sub_list_item figure {
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
  }
  .top_mainvisual_sub_list_item figure img {
    width: 70px;
  }
  .top_mainvisual_sub_list_item p {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    font-weight: 500;
    padding-left: 20px;
    padding-right: 10px;
  }
  .top_mainvisual_sub_list_item:first-child div {
    border-left: 1px dotted #848484;
  }
  .top_latest {
    background-color: #f3f6f7;
    padding: 63px 0 75px;
  }
  .top_latest_list {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 33px auto 0;
  }
  .top_latest_list_inner {
    position: relative;
    padding: 0 9%;
  }
  .top_latest_list_inner.is-item-less-1 {
    padding: 0;
    margin: 0 auto;
    max-width: 280px;
  }
  .top_latest_list_inner.is-item-less-2 {
    padding: 0;
    margin: 0 auto;
    max-width: 560px;
  }
  .top_latest_list_img {
    position: relative;
  }
  .top_latest_list_img img {
    width: 100%;
  }
  .top_latest_list_category {
    width: 100%;
    height: 20px;
    line-height: 20px;
    font-size: 1.2rem;
    font-weight: 200;
    color: #fff;
    text-align: center;
  }
  .top_latest_list_category.category-offer {
    background-color: #713e11;
  }
  .top_latest_list_category.category-feature {
    background-color: #880b0b;
  }
  .top_latest_list_category.category-event {
    background-color: #0a3762;
  }
  .top_latest_list_category.category-campaign {
    background-color: #ff9600;
  }
  .top_latest_list_item {
    padding: 0 23px;
  }
  .top_latest_list_item a {
    display: block;
  }
  .top_latest_list_text {
    font-size: 1.4rem;
    line-height: 1.3;
    margin-top: 8px;
  }
  .top_latest_list .slick-next,
  .top_latest_list .slick-prev {
    position: absolute;
    top: 50%;
    content: "";
    display: block;
    width: 44px;
    height: 54px;
    text-indent: -9999px;
    overflow: hidden;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .top_latest_list .slick-next.slick-disabled,
  .top_latest_list .slick-prev.slick-disabled {
    opacity: 0;
    cursor: default;
  }
  .top_latest_list .slick-prev {
    left: 0;
    background: url("/english/assets/img/btn_carousel_wht_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_latest_list .slick-next {
    right: 0;
    background: url("/english/assets/img/btn_carousel_wht_r.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership {
    margin: 100px auto 0;
    max-width: 1366px;
  }
  .top_membership .section_ttl_membership > span img {
    position: relative;
    width: 72px;
    top: 23px;
  }
  .top_membership .section_ttl_membership > span:first-child {
    position: relative;
  }
  .top_membership .section_ttl_membership > span:first-child:before {
    display: block;
    position: absolute;
    content: "";
    top: -26px;
    left: -13px;
    width: 106px;
    height: 19px;
    background: url("/english/assets/img/top/label_membership_pc.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership_about {
    text-align: center;
    margin-top: 33px;
  }
  .top_membership_about a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_membership_section {
    position: relative;
    overflow: hidden;
  }
  .top_membership_section_bg {
    width: 100%;
    height: 100%;
  }
  .top_membership_section_cont {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 0 auto;
    color: #fff;
  }
  .top_membership_section_inner {
    position: relative;
    text-align: center;
  }
  .top_membership_section_inner:after {
    content: " ";
    display: table;
    clear: both;
  }
  .top_membership_section_ttl {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 1.3;
  }
  .top_membership_section_catch {
    position: relative;
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: 25px;
  }
  .top_membership_section_catch:after, .top_membership_section_catch:before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    width: 5px;
    height: 21px;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
  }
  .top_membership_section_catch:before {
    left: -11px;
    background: url("/english/assets/img/brackets_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership_section_catch:after {
    right: -10px;
    background: url("/english/assets/img/brackets_r.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership_section_txt {
    font-size: 1.4rem;
    line-height: 1.4;
    margin-top: 20px;
  }
  .top_membership_section_detail a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 32px;
    border-radius: 15px;
    line-height: 32px;
    width: 150px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  .top_membership_01 {
    margin-top: 60px;
  }
  .top_membership_01 .top_membership_section_bg {
    background: url("/english/assets/img/top/membership_bg_01_pc.png?202310") center no-repeat;
    background-size: cover;
  }
  .top_membership_01 .top_membership_section_cont {
    padding-top: 112px;
    padding-bottom: 153px;
  }
  .top_membership_01 .top_membership_section_intro {
    float: right;
    width: 455px;
    height: 418px;
    background: url("/english/assets/img/top/bg_circle_01.png") center no-repeat;
    background-size: cover;
    padding-top: 8px;
  }
  .top_membership_01 .top_membership_section_img {
    margin-bottom: 10px;
  }
  .top_membership_01 .top_membership_section_img img {
    width: 58px;
  }
  .top_membership_01 .top_membership_section_detail {
    margin-top: 14px;
  }
  .top_membership_02 {
    -ms-transform-origin: 100% 0;
        transform-origin: 100% 0;
    -ms-transform: skewY(-3.38deg);
        transform: skewY(-3.38deg);
  }
  .top_membership_02 .top_membership_section_bg {
    -ms-transform-origin: 100% 0;
        transform-origin: 100% 0;
    -ms-transform: skewY(3.38deg);
        transform: skewY(3.38deg);
    background: url("/english/assets/img/top/membership_bg_02_pc.png") center no-repeat;
    background-size: cover;
  }
  .top_membership_02 .top_membership_section_cont {
    padding-top: 132px;
    padding-bottom: 119px;
  }
  .top_membership_02 .top_membership_section_img {
    margin-bottom: 5px;
  }
  .top_membership_02 .top_membership_section_img img {
    width: 64px;
  }
  .top_membership_02 .top_membership_section_intro {
    width: 449px;
    height: 432px;
    background: url("/english/assets/img/top/bg_circle_02.png") center no-repeat;
    background-size: cover;
    padding-top: 30px;
  }
  .top_membership_02 .top_membership_section_detail {
    margin-top: 25px;
  }
  .top_membership_03 {
    -ms-transform-origin: 0 0;
        transform-origin: 0 0;
    -ms-transform: skewY(3.38deg);
        transform: skewY(3.38deg);
  }
  .top_membership_03 .top_membership_section_bg {
    -ms-transform-origin: 0 0;
        transform-origin: 0 0;
    -ms-transform: skewY(-3.38deg);
        transform: skewY(-3.38deg);
    background: url("/english/assets/img/top/membership_bg_03_pc.png") center no-repeat;
    background-size: cover;
  }
  .top_membership_03 .top_membership_section_cont {
    padding-top: 176px;
    padding-bottom: 119px;
  }
  .top_membership_03 .top_membership_section_img img {
    width: 72px;
  }
  .top_membership_03 .top_membership_section_intro {
    float: right;
    width: 424px;
    height: 431px;
    background: url("/english/assets/img/top/bg_circle_03.png") center no-repeat;
    background-size: cover;
    padding-top: 18px;
    padding-right: 34px;
  }
  .top_membership_03 .top_membership_section_detail {
    margin-top: 27px;
  }
  .top_membership_application {
    text-align: center;
    border-bottom: 1px solid #c2c6c7;
    width: 100%;
    max-width: 1044px;
    padding: 0 10px 70px;
    margin: 50px auto 0;
  }
  .top_membership_application a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 50px;
    border-radius: 25px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 50px;
    width: 224px;
    font-size: 1.8rem;
    font-weight: 700;
  }
  .top_events {
    margin-top: 85px;
  }
  .top_events .section_ttl span {
    position: relative;
    display: inline-block;
    position: relative;
  }
  .top_events .section_ttl span:before {
    position: absolute;
    top: -40px;
    left: -122px;
    display: block;
    width: 100px;
    height: 100px;
    content: "";
    background: url("/english/assets/img/top/label_events_pc.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_events .section_ttl_sub span {
    width: 127px;
  }
  .top_events .common_event_carousel {
    margin-top: 65px;
  }
  .top_events_list {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 65px auto 0;
    overflow: hidden;
  }
  .top_events_list.is-item-less-1 {
    max-width: 336px;
  }
  .top_events_list.is-item-less-2 {
    max-width: 652px;
  }
  .top_events_list.is-item-less-3 {
    max-width: 968px;
  }
  .top_events_list li {
    padding: 0 38px;
  }
  .top_events_list li:first-child {
    margin-left: 0;
  }
  .top_events_list li a {
    display: block;
  }
  .top_events_list li figure img {
    width: 100%;
  }
  .top_events_catch {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 12px;
  }
  .top_events_place {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .top_events_date {
    font-size: 1.2rem;
    margin-top: 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .top .top_events_link {
    text-align: right;
    width: 100%;
    max-width: 1044px;
    padding: 30px 10px 0;
    margin: 0 auto;
  }
  .top .top_events_link a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_offer {
    background-color: #f4f4f4;
    padding: 40px 0;
    margin-top: 55px;
  }
  .top_offer .section_ttl_sub span {
    width: 120px;
  }
  .top_offer ul {
    width: 50%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 25px auto 0;
    overflow: hidden;
  }
  .top_offer ul li {
    float: left;
    width: 50%;
    height: 207px;
    text-align: center;
    border-right: 1px solid #c2c6c7;
  }
  .top_offer ul li:first-child {
    border-left: 1px solid #c2c6c7;
  }
  .top_offer ul li:nth-of-type(1) figure {
    width: 73px;
    margin-top: 12px;
    margin-bottom: 24px;
  }
  .top_offer ul li:nth-of-type(1) p.top_offer_lead {
    margin-top: 31px;
  }
  .top_offer ul li:nth-of-type(2) figure {
    width: 79px;
    margin-top: 27px;
    margin-bottom: 37px;
  }
  .top_offer ul li:nth-of-type(2) p.top_offer_lead {
    margin-top: 41px;
  }
  .top_offer ul li:nth-of-type(3) figure {
    width: 77px;
    margin-top: 26px;
    margin-bottom: 23px;
  }
  .top_offer ul li:nth-of-type(3) p.top_offer_lead {
    margin-top: 25px;
  }
  .top_offer ul li:nth-of-type(4) figure {
    width: 53px;
    margin-top: 18px;
    margin-bottom: 25px;
  }
  .top_offer ul li:nth-of-type(4) p.top_offer_lead {
    margin-top: 41px;
  }
  .top_offer ul li a {
    display: block;
  }
  .top_offer ul li figure {
    margin-left: auto;
    margin-right: auto;
  }
  .top_offer ul li figure img {
    width: 100%;
  }
  .top_offer ul li p.top_offer_catch {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2;
  }
  .top_offer ul li p.top_offer_lead {
    margin-top: 25px;
    font-size: 1.4rem;
    font-weight: 200;
    line-height: 1.4;
  }
  .top_hotels {
    width: 100%;
    max-width: 1044px;
    padding: 0 10px;
    margin: 68px auto 0;
  }
  .top_hotels .section_ttl_sub span {
    width: 163px;
  }
  .top_hotels ul {
    overflow: hidden;
    margin-top: 20px;
  }
  .top_hotels ul:first-child {
    margin-top: 50px;
  }
  .top_hotels ul li {
    float: left;
    width: 22.46%;
    margin-left: 3.38%;
  }
  .top_hotels ul li:first-child {
    margin-left: 0;
  }
  .top_hotels ul li a {
    display: block;
  }
  .top_hotels ul li figure img {
    width: 100%;
    border-radius: 3px;
  }
  .top_hotels_name {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 8px;
  }
  .top_hotels_address {
    font-size: 1.2rem;
    color: #666;
    margin-top: 5px;
  }
  .top_news {
    margin-top: 75px;
  }
  .top_news .section_ttl_sub span {
    width: 50px;
  }
  .top_news .common_tab {
    margin-top: 50px;
  }
  .top_news_cont {
    background-color: #f4f4f4;
  }
  .top_news_cont_list {
    display: table;
    table-layout: fixed;
    width: 100%;
    max-width: 1044px;
    padding: 25px 10px 50px;
    margin: 0 auto;
  }
  .top_news_cont_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .top_news_cont_list .top_news_more_info_link {
    text-align: right;
    padding-top: 15px;
  }
  .top_news_cont_list .top_news_more_info_link a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_news_cont_date {
    display: table-cell;
    width: 115px;
    font-size: 1.2rem;
    padding-left: 24px;
  }
  .top_news_cont_txt {
    display: table-cell;
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 0 24px 0 60px;
  }
  .top_recommended {
    margin-top: 100px;
  }
  .top_recommended .section_ttl_sub span {
    width: 132px;
  }
  .top_recommended ul {
    margin-top: 50px;
    text-align: center;
  }
  .top_recommended ul li {
    display: inline-block;
    margin: 0 24px;
  }
  .top_recommended ul li a {
    position: relative;
    display: block;
    width: 295px;
    height: 70px;
  }
  .top_recommended ul li a img {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
  }
  .top_recommended ul li a.top_recommended_online {
    background-color: #000;
  }
  .top_recommended ul li a.top_recommended_online img {
    width: 251px;
  }
  .top_recommended ul li a.top_recommended_localvalues {
    background-color: #fff;
    border: 1px solid #999;
    width: 225px;
  }
  .top_recommended ul li a.top_recommended_localvalues img {
    width: 125px;
  }
}

@media only screen and (max-width: 767px) {
  .top .top_mainvisual_arrow {
    display: none;
  }
  .top_mainvisual_list_item {
    max-width: 1024px;
  }
  .top_mainvisual_list_item a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .top_mainvisual_list_item a img {
    width: 100%;
  }
  .top_mainvisual_list .slick-dots {
    text-align: center;
    padding: 2px 0 10px;
  }
  .top_mainvisual_list .slick-dots li {
    display: inline-block;
    position: relative;
    width: 18px;
    height: 18px;
    text-indent: -9999px;
  }
  .top_mainvisual_list .slick-dots li:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background-color: #cfcfcf;
  }
  .top_mainvisual_list .slick-dots li.slick-active:after {
    background-color: #000;
  }
  .top_mainvisual_sub {
    display: none;
  }
  .top_latest {
    background-color: #f3f6f7;
    padding: 35px 0 30px;
  }
  .top_latest_list {
    margin: 33px auto 0;
  }
  .top_latest_list_inner {
    position: relative;
  }
  .top_latest_list_img {
    position: relative;
  }
  .top_latest_list_img img {
    width: 100%;
  }
  .top_latest_list_category {
    position: absolute;
    bottom: -20px;
    width: 100%;
    height: 20px;
    line-height: 20px;
    font-size: 1.2rem;
    font-weight: 200;
    color: #fff;
    text-align: center;
  }
  .top_latest_list_category.category-offer {
    background-color: #713e11;
  }
  .top_latest_list_category.category-feature {
    background-color: #880b0b;
  }
  .top_latest_list_category.category-event {
    background-color: #0a3762;
  }
  .top_latest_list_category.category-campaign {
    background-color: #ff9600;
  }
  .top_latest_list_item {
    padding: 0 15px;
  }
  .top_latest_list_item a {
    display: block;
  }
  .top_latest_list_text {
    font-size: 1.0rem;
    font-weight: 200;
    line-height: 1.3;
    margin-top: 28px;
  }
  .top_latest_list .slick-next,
  .top_latest_list .slick-prev {
    position: absolute;
    top: 50%;
    content: "";
    display: block;
    width: 44px;
    height: 54px;
    text-indent: -9999px;
    overflow: hidden;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    z-index: 1;
  }
  .top_latest_list .slick-prev {
    left: 7px;
    background: url("/english/assets/img/btn_carousel_wht_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_latest_list .slick-next {
    right: 7px;
    background: url("/english/assets/img/btn_carousel_wht_r.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership {
    margin-top: 50px;
  }
  .top_membership .section_ttl_membership > span img {
    position: relative;
    width: 49px;
    top: 16px;
  }
  .top_membership .section_ttl_membership > span:first-child {
    position: relative;
  }
  .top_membership .section_ttl_membership > span:first-child:before {
    display: block;
    position: absolute;
    content: "";
    top: -18px;
    left: 50%;
    width: 81px;
    height: 14px;
    margin-left: -40.5px;
    background: url("/english/assets/img/top/label_membership_pc.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_membership .section_ttl_membership_sub {
    margin-bottom: 37px;
  }
  .top_membership_about {
    text-align: center;
    margin-top: 25px;
  }
  .top_membership_about a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_membership_section {
    position: relative;
    overflow: hidden;
  }
  .top_membership_section_bg {
    width: 100%;
    height: 100%;
  }
  .top_membership_section_cont {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    color: #fff;
  }
  .top_membership_section_inner {
    position: relative;
    text-align: center;
  }
  .top_membership_section_inner:after {
    content: " ";
    display: table;
    clear: both;
  }
  .top_membership_section_ttl {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.3;
  }
  .top_membership_section_catch {
    display: none;
  }
  .top_membership_section_txt {
    font-size: 9px;
    line-height: 1.35;
    margin-top: 5px;
  }
  .top_membership_section_detail a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 24px;
    border-radius: 12px;
    line-height: 24px;
    width: 100px;
    font-weight: 700;
    margin-top: 10px;
  }
  .top_membership_01 {
    margin-top: 29px;
  }
  .top_membership_01 .top_membership_section_bg {
    background: url("/english/assets/img/top/membership_bg_01_sp.png?202310") center no-repeat;
    background-size: cover;
  }
  .top_membership_01 .top_membership_section_cont {
    padding-top: 35px;
    padding-bottom: 42px;
  }
  .top_membership_01 .top_membership_section_intro {
    float: right;
    width: 176px;
    min-height: 162px;
    background: url("/english/assets/img/top/bg_circle_01.png") center top no-repeat;
    background-size: 100% auto;
    padding-top: 5px;
  }
  .top_membership_01 .top_membership_section_img {
    margin-bottom: 4px;
  }
  .top_membership_01 .top_membership_section_img img {
    width: 24px;
  }
  .top_membership_02 {
    -ms-transform-origin: 100% 0;
        transform-origin: 100% 0;
    -ms-transform: skewY(-3.38deg);
        transform: skewY(-3.38deg);
  }
  .top_membership_02 .top_membership_section_bg {
    -ms-transform-origin: 100% 0;
        transform-origin: 100% 0;
    -ms-transform: skewY(3.38deg);
        transform: skewY(3.38deg);
    background: url("/english/assets/img/top/membership_bg_02_sp.png") center no-repeat;
    background-size: cover;
  }
  .top_membership_02 .top_membership_section_cont {
    padding-top: 35px;
    padding-bottom: 51px;
  }
  .top_membership_02 .top_membership_section_img img {
    width: 34px;
  }
  .top_membership_02 .top_membership_section_intro {
    width: 172px;
    min-height: 166px;
    background: url("/english/assets/img/top/bg_circle_02.png") center top no-repeat;
    background-size: 100% auto;
    padding-top: 10px;
  }
  .top_membership_03 {
    -ms-transform-origin: 0 0;
        transform-origin: 0 0;
    -ms-transform: skewY(3.38deg);
        transform: skewY(3.38deg);
  }
  .top_membership_03 .top_membership_section_bg {
    -ms-transform-origin: 0 0;
        transform-origin: 0 0;
    -ms-transform: skewY(-3.38deg);
        transform: skewY(-3.38deg);
    background: url("/english/assets/img/top/membership_bg_03_sp.png") center no-repeat;
    background-size: cover;
  }
  .top_membership_03 .top_membership_section_cont {
    padding-top: 38px;
    padding-bottom: 30px;
  }
  .top_membership_03 .top_membership_section_img {
    margin-bottom: 5px;
  }
  .top_membership_03 .top_membership_section_img img {
    width: 34px;
  }
  .top_membership_03 .top_membership_section_intro {
    float: right;
    width: 174px;
    min-height: 177px;
    background: url("/english/assets/img/top/bg_circle_03.png") center top no-repeat;
    background-size: 100% auto;
    padding-top: 4px;
    padding-right: 15px;
  }
  .top_membership_application {
    text-align: center;
    margin-top: 20px;
  }
  .top_membership_application a {
    display: inline-block;
    text-align: center;
    background-color: #fff;
    height: 40px;
    border-radius: 20px;
    box-shadow: 0 0 0 2px #000 inset;
    line-height: 40px;
    width: 180px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  .top_events {
    margin-top: 85px;
  }
  .top_events .section_ttl span {
    position: relative;
    display: inline-block;
    position: relative;
  }
  .top_events .section_ttl span:before {
    position: absolute;
    top: -21px;
    left: -53px;
    display: block;
    width: 48px;
    height: 47px;
    content: "";
    background: url("/english/assets/img/top/label_events_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top_events .section_ttl_sub span {
    width: 92px;
  }
  .top_events .common_event_carousel {
    margin-top: 25px;
  }
  .top_events_list {
    overflow: hidden;
    margin-top: 25px;
  }
  .top_events_list li {
    width: 185px;
    margin: 0 10px;
  }
  .top_events_list li a {
    display: block;
  }
  .top_events_list li figure img {
    width: 100%;
  }
  .top_events_catch {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 7px;
  }
  .top_events_place {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 5px;
  }
  .top_events_date {
    font-size: 8px;
    margin-top: 2px;
  }
  .top .top_events_link {
    text-align: right;
    padding: 30px 12px 0;
  }
  .top .top_events_link a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_offer {
    background-color: #f4f4f4;
    padding: 30px 0;
    margin-top: 55px;
  }
  .top_offer .section_ttl {
    line-height: 1.2;
  }
  .top_offer .section_ttl_sub span {
    width: 82px;
  }
  .top_offer ul {
    padding: 0 12px;
    margin-top: 15px;
    overflow: hidden;
  }
  .top_offer ul li {
    width: 50%;
    height: 144px;
    text-align: center;
  }
  .top_offer ul li:nth-of-type(1) {
    position: relative;
    float: left;
    border-right: 1px solid #c2c6c7;
  }
  .top_offer ul li:nth-of-type(1) figure {
    width: 53px;
    margin-top: 9px;
    margin-bottom: 13px;
  }
  .top_offer ul li:nth-of-type(1) p.top_offer_lead {
    margin-top: 10px;
  }
  .top_offer ul li:nth-of-type(1):after {
    content: "";
    display: block;
    position: absolute;
    bottom: -4px;
    right: -5px;
    width: 9px;
    height: 7px;
    background-color: #f4f4f4;
  }
  .top_offer ul li:nth-of-type(2) {
    float: right;
  }
  .top_offer ul li:nth-of-type(2) figure {
    width: 57px;
    margin-top: 19px;
    margin-bottom: 24px;
  }
  .top_offer ul li:nth-of-type(2) p.top_offer_lead {
    margin-top: 20px;
  }
  .top_offer ul li:nth-of-type(3) {
    float: left;
    border-right: 1px solid #c2c6c7;
  }
  .top_offer ul li:nth-of-type(3) figure {
    width: 56px;
    margin-top: 15px;
    margin-bottom: 16px;
  }
  .top_offer ul li:nth-of-type(3) p.top_offer_lead {
    margin-top: 16px;
  }
  .top_offer ul li:nth-of-type(4) {
    float: right;
  }
  .top_offer ul li:nth-of-type(4) figure {
    width: 38px;
    margin-top: 12px;
    margin-bottom: 12px;
  }
  .top_offer ul li:nth-of-type(4) p.top_offer_lead {
    margin-top: 24px;
  }
  .top_offer ul li a {
    display: block;
  }
  .top_offer ul li figure {
    margin-left: auto;
    margin-right: auto;
  }
  .top_offer ul li figure img {
    width: 100%;
  }
  .top_offer ul li p.top_offer_catch {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
  }
  .top_offer ul li p.top_offer_lead {
    margin-top: 25px;
    font-size: 1.2rem;
    line-height: 1.1;
  }
  .top_hotels {
    padding: 0 12px;
    margin-top: 40px;
  }
  .top_hotels .section_ttl_sub span {
    width: 109px;
  }
  .top_hotels ul {
    overflow: hidden;
  }
  .top_hotels ul li {
    width: 47.3%;
    margin-top: 20px;
  }
  .top_hotels ul li:nth-of-type(odd) {
    float: left;
    clear: both;
  }
  .top_hotels ul li:nth-of-type(even) {
    float: right;
  }
  .top_hotels ul li a {
    display: block;
  }
  .top_hotels ul li figure img {
    border-radius: 3px;
    width: 100%;
  }
  .top_hotels_name {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 3px;
  }
  .top_hotels_address {
    font-size: 1.0rem;
    color: #666;
    margin-top: 3px;
  }
  .top_news {
    margin-top: 45px;
  }
  .top_news .section_ttl_sub span {
    width: 33px;
  }
  .top_news .common_tab {
    margin-top: 20px;
  }
  .top_news_cont {
    background-color: #f4f4f4;
  }
  .top_news_cont_list {
    padding: 0 12px 15px;
  }
  .top_news_cont_list li {
    padding: 15px 0;
    border-bottom: 1px dotted #6c6c6c;
  }
  .top_news_cont_list .top_news_more_info_link {
    text-align: right;
    padding-top: 15px;
  }
  .top_news_cont_list .top_news_more_info_link a {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 1px 6px;
    border-bottom: 2px solid #000;
  }
  .top_news_cont_date {
    font-size: 1.2rem;
    font-weight: 200;
  }
  .top_news_cont_txt {
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 10px;
  }
  .top_recommended {
    padding: 0 12px;
    margin-top: 65px;
  }
  .top_recommended .section_ttl_sub span {
    width: 88px;
  }
  .top_recommended ul {
    margin-top: 19px;
    text-align: center;
  }
  .top_recommended ul li {
    margin-top: 20px;
  }
  .top_recommended ul li:first-child {
    margin-top: 0;
  }
  .top_recommended ul li a {
    position: relative;
    display: block;
    width: 295px;
    height: 70px;
    margin: 0 auto;
  }
  .top_recommended ul li a img {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
  }
  .top_recommended ul li a.top_recommended_online {
    background-color: #000;
  }
  .top_recommended ul li a.top_recommended_online img {
    width: 251px;
  }
  .top_recommended ul li a.top_recommended_localvalues {
    background-color: #fff;
    border: 1px solid #999;
    width: 200px;
  }
  .top_recommended ul li a.top_recommended_localvalues img {
    width: 110px;
  }
}

@media only screen and (min-width: 1024px) {
  .top .top_mainvisual_arrow {
    position: relative;
    display: block;
    max-width: 1024px;
    margin: 0 auto;
    height: 0;
  }
  .top .top_mainvisual_arrow_btn {
    position: absolute;
    top: 176px;
    content: "";
    display: block;
    width: 34px;
    height: 48px;
    z-index: 1;
  }
  .top .top_mainvisual_arrow_btn.top_mainvisual_arrow_btn_prev {
    left: 0;
    background: url("/english/assets/img/btn_carousel_top_l.png") 0 0 no-repeat;
    background-size: cover;
  }
  .top .top_mainvisual_arrow_btn.top_mainvisual_arrow_btn_next {
    right: 0;
    background: url("/english/assets/img/btn_carousel_top_r.png") 0 0 no-repeat;
    background-size: cover;
  }
}