@charset "UTF-8";
/* ==========================================================================
   Foundation
========================================================================== */
/*
  font settings
**************************************************/
/*
  calculation width
**************************************************/
/*
  boxsizing settings
**************************************************/
/*
  opacity settings
**************************************************/
/*
  border-radius settings
**************************************************/
/*
  drop shadow settings
**************************************************/
/*
  vertical align setting
**************************************************/
/*
  table layout setting
**************************************************/
/*
  flexbox layout setting
**************************************************/
/*
  scaling img
**************************************************/
/*
  clearfix
**************************************************/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, 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;
}
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  color: inherit;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
select::-ms-expand {
  display: none;
}
html {
  font-size: 62.5%;
}
body {
  font-size: 3.5vw;
  font-size: 1.6rem;
  line-height: 1;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media screen and (max-width : 600px) {
  body {
    -webkit-text-size-adjust: 100%;
  }
}
.pc-only {
  display: none !important;
}
.bread {
  background: #eaeaea;
}
.bread ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.5vw 2vw;
  overflow-x: scroll;
}
.bread ul li {
  font-size: 3vw;
  line-height: 1.5;
  color: #2e2e2e;
  white-space: nowrap;
}
.bread ul li a {
  font-size: 3vw;
  color: #2e2e2e;
  text-decoration: none;
}
/*------------------------------------
以下このコンテンツ用
--------------------------------------*/
#faircontent {
  background-color: #e7dddd;
  background-image: url(../img/kv_bg4.jpg);
  background-position: left calc(50% - -4vw) top -10vw;
  background-repeat: no-repeat;
  background-size: 320vw;
  padding-top: 5vw;
  padding-bottom: 10vw;
  overflow: hidden;
}
#faircontent a {
  -webkit-tap-highlight-color: transparent;
}
#faircontent .pc-only {
  display: none;
}
#faircontent .sp-only {
  display: block;
}
#faircontent > div {
  display: block;
  margin: 0 auto 10vw;
  padding-top: 18vw;
  padding-bottom: 7.5vw;
  background: #fff;
  position: relative;
}
#faircontent > div:last-child {
  margin-bottom: 0;
}
#faircontent > div h2 {
  position: absolute;
  top: -2vw;
  left: calc(50% - 65vw);
}
#faircontent > div h2 img {
  width: 130vw;
  position: relative;
}
#faircontent > div h2 p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 5vw;
  font-weight: bold;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 53%;
  z-index: 2;
}
#faircontent #kv {
  background: none;
  width: 90vw;
  border-radius: 0;
  padding-top: 0;
}
#faircontent #kv h1 img {
  display: block;
  width: 100%;
  margin: 0 auto 5vw;
}
#faircontent #kv p {
  display: block;
  width: 80vw;
  margin: 0 auto 30px auto;
  font-size: 3.5vw;
  font-weight: bold;
  color: #000;
  line-height: 1.5;
  text-align: center;
  background: #ffd700;
  padding: 10px 0;
  letter-spacing: 0.1em;
}
#faircontent #kv p span {
  /*font-size: 26px;*/
  font-weight: bold;
  color: #E30003;
}
#faircontent #nav {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}
#faircontent #nav h2 {
  display: block;
  width: 92vw;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  top: 0;
  left: 0;
}
#faircontent #nav h2 p {
  display: block;
  width: 100%;
  color: #395390;
  background: #fff;
  padding: 5vw 0 0;
  border-top-left-radius: 3vw;
  border-top-right-radius: 3vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: -8vw;
}
#faircontent #nav .point_ttl {
  display: block;
  width: 100%;
  font-size: 4.5vw;
  font-weight: bold;
  text-align: center;
  margin: 0 auto;
  color: #fff;
  position: absolute;
  top: 6.5vw;
  z-index: 2;
}
#faircontent #nav .points {
  display: block;
  width: 90vw;
/*  height: 90vw;*/
  margin: 0 auto;
/*  position: relative;*/
/*
  background: url(../img/sp/nav_bg2.png) no-repeat center top 4vw;
  background-size: 100%;
*/
}
#faircontent #nav .points dt {
  font-size: 2.5vw;
  font-weight: bold;
  padding: 1.2vw 3vw;
  color: #f06d4a;
  box-sizing: border-box;
  position: absolute;
  background: url(../img/sp/point_bg.png) no-repeat;
  background-size: 100%;
}
#faircontent #nav .points dt:nth-of-type(1) {
  top: 20vw;
  right: 2vw;
}
#faircontent #nav .points dt:nth-of-type(2) {
  top: 61vw;
  left: 2vw;
}
#faircontent #nav .points dt:nth-of-type(3) {
  top: 105vw;
  right: 2vw;
}
#faircontent #nav .points dt span {
  font-size: 4.5vw;
  margin-left: .5vw;
}
#faircontent #nav .points dd {
  font-size: 3.5vw;
  font-weight: bold;
  color: #000;
  line-height: 1.5;
  width: 60vw;
  position: absolute;
  padding: 3vw;
  border-radius: 3vw;
}
#faircontent #nav .points dd:nth-of-type(1) {
  top: 28vw;
  right: 2vw;
  background: #FFABA4;
}
#faircontent #nav .points dd:nth-of-type(2) {
  top: 69vw;
  left: 2vw;
  background: #CDAEDA;
}
#faircontent #nav .points dd:nth-of-type(3) {
  top: 113vw;
  right: 2vw;
  background: #94BFC5;
}

#faircontent #nav .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 92vw;
  /* margin: -6vw auto 0;*/
  margin: 0 auto;
  padding-bottom: 7.5vw;
}
#faircontent #nav .btns li {
  -webkit-transition: .2s;
  transition: .2s;
  /* width: 48.5%;*/
  width: 48%;
  height: 18vw;
}
#faircontent #nav .btns.navi03 li {
  width: 31%;
}
#faircontent #nav .btns li:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
/*#faircontent #nav .btns li:nth-child(1) {
          background: url(../img/sp/nav_btn01.png) no-repeat;
          background-size: 100%; }
        #faircontent #nav .btns li:nth-child(2) {
          background: url(../img/sp/nav_btn02.png) no-repeat;
          background-size: 100%; }*/
#faircontent #nav .btns li {
  display: inline-block;
  /* padding: 0.4em 1.6em;*/
  /*font-size: 0.8em;*/
  text-decoration: none;
  user-select: none;
  background: #00b5ad;
  border: 1px #fff solid;
  box-shadow: 0 0 0 3px #00b5ad;
}
#faircontent #nav .btns li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 3.5vw;
  font-weight: bold;
  text-align: center;
  color: #fff;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.2
}
#faircontent #rank ul {
  display: block;
  width: 92vw;
  margin: 7.5vw auto;
}
#faircontent #rank ul li {
  width: 100%;
  min-height: 30vw;
  background: #fff;
  margin-bottom: 3vw;
  padding: 2vw;
  border: .5vw solid #d3d1cb;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 2vw;
  position: relative;
}
#faircontent #rank ul li:nth-child(1) .dsc {
  background: #c5a929;
}
#faircontent #rank ul li:nth-child(2) {
  min-height: 34vw;
}
#faircontent #rank ul li:nth-child(2) .dsc {
  background: #8d8d8d;
}
#faircontent #rank ul li:nth-child(3) .dsc {
  background: #a96a3c;
}
#faircontent #rank ul li .rank_crown {
  width: 11vw;
  position: absolute;
  top: -5vw;
  left: -3vw;
  z-index: 2;
}
#faircontent #rank ul li .dsc, #faircontent #rank ul li .ttl, #faircontent #rank ul li a {
  width: 64%;
  float: right;
}
#faircontent #rank ul li .dsc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 3vw;
  font-weight: bold;
  line-height: 1.3;
  padding: 1.5vw 3vw;
  color: #fff;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #rank ul li .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 3.5vw;
  font-weight: bold;
  color: #324888;
  padding: 3vw 0 0;
}
#faircontent #rank ul li .rank_gelande {
  display: block;
  width: 33%;
  height: auto;
  float: left;
  margin: 0;
  position: absolute;
  top: 2vw;
  left: 2vw;
}
#faircontent #rank ul li a {
  margin-top: 3vw;
  padding: 3vw 4.5vw 3vw 1.5vw;
  font-size: 3.5vw;
  font-weight: bold;
  color: #fff;
  background: #f26681 url(../img/rank_arrow.png) no-repeat right 2vw center;
  background-size: 3.5vw;
  text-align: center;
  border-radius: 1.5vw;
  text-decoration: none;
  -webkit-transition: .2s;
  transition: .2s;
  box-sizing: border-box;
}
#faircontent #rank ul li a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #rank > a {
  display: block;
  margin: 3vw 6vw 0 auto;
  text-align: right;
  font-size: 3vw;
  color: #323232;
}
#faircontent #rank > a:hover {
  text-decoration: none;
}
#faircontent #gelande {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #gelande > .dsc {
  display: block;
  width: 92vw;
  font-size: 3.5vw;
  color: #000;
  text-align: center;
  margin: 5vw auto 3vw;
}
#faircontent #gelande .nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
#faircontent #gelande .nav li {
  width: 24%;
  position: relative;
}
#faircontent #gelande .nav li:nth-child(1) {
  left: -1vw;
}
#faircontent #gelande .nav li:nth-child(2) {
  left: -.5vw;
}
#faircontent #gelande .nav li:nth-child(3) {
  right: -.5vw;
}
#faircontent #gelande .nav li:nth-child(4) {
  right: -1vw;
}
#faircontent #gelande .nav li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 2.6vw;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: url(../img/sp/gelande_nav_bg.png) no-repeat;
  background-size: 100%;
  padding-top: 2vw;
  height: 15.5vw;
  -webkit-transition: .2s;
  transition: .2s;
}
#faircontent #gelande .nav li a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #gelande .area > .ttl {
  display: block;
  font-size: 4vw;
  font-weight: bold;
  text-align: center;
  color: #000;
  margin: 7.5vw 0 4vw;
  position: relative;
}
#faircontent #gelande .area > .ttl::before, #faircontent #gelande .area > .ttl::after {
  display: block;
  content: "";
  width: 32vw;
  height: 2vw;
  position: absolute;
  top: calc(50% - 1vw);
  background: 100% 100%;
}
#faircontent #gelande .area > .ttl::before {
  background: url(../img/gelande_ttl_bg.png) no-repeat;
  left: 0;
}
#faircontent #gelande .area > .ttl::after {
  background: url(../img/gelande_ttl_bg.png) no-repeat;
  right: 0;
}
#faircontent #gelande .area ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 92vw;
  margin: 0 auto;
}
#faircontent #gelande .area ul li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 3vw;
  border: 1vw solid #d3d1cb;
  border-radius: 2vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #gelande .area ul li:nth-child(1) {
  width: 100%;
}
#faircontent #gelande .area ul li:nth-child(1) .ttl {
  font-size: 4.5vw;
}
#faircontent #gelande .area ul li:nth-child(1) img, #faircontent #gelande .area ul li:nth-child(1) dl {
  width: 92%;
  margin: 0 auto;
}
#faircontent #gelande .area ul li:nth-child(1) img {
  width: 85%;
  margin: 2vw auto 0;
}
#faircontent #gelande .area ul li:nth-child(1) dl {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-top: 2vw;
}
#faircontent #gelande .area ul li:nth-child(1) div {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 92%;
}
#faircontent #gelande .area ul li:nth-child(1) div .here br {
  display: none;
}
#faircontent #gelande .area ul li:nth-child(1) div .price {
  margin-top: 0;
  font-size: 9vw;
}
#faircontent #gelande .area ul li:nth-child(2n-1) {
  margin-right: 0;
}
#faircontent #gelande .area ul li:nth-child(n+2) dt:nth-of-type(-n+2), #faircontent #gelande .area ul li:nth-child(n+2) dd:nth-of-type(-n+2) {
  border-bottom: 0;
}
#faircontent #gelande .area ul li:nth-child(n+2) dd:nth-of-type(2) {
  border-right: .3vw solid #b7b3a8;
}
#faircontent #gelande .area ul .ttl {
  font-size: 4.5vw;
  font-weight: bold;
  color: #324888;
  text-align: center;
  padding: 1.5vw;
  border-top: 3vw solid #324888;
  border-top-left-radius: 1.2vw;
  border-top-right-radius: 1.2vw;
}
#faircontent #gelande .area ul .dsc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 3vw;
  line-height: 1.4;
  color: #222;
  background: #b9e8eb;
  padding: 2vw 3vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #gelande .area ul img, #faircontent #gelande .area ul dl {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #gelande .area ul img {
  display: block;
  width: 100%;
}
#faircontent #gelande .area ul dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#faircontent #gelande .area ul dl dt, #faircontent #gelande .area ul dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 2;
  -ms-flex-positive: 2;
  flex-grow: 2;
  font-size: 2.7vw;
  color: #222;
  padding: 1.5vw 0;
  border: .3vw solid #b7b3a8;
  border-right: 0;
}
#faircontent #gelande .area ul dl dt {
  background: #eae7df;
}
#faircontent #gelande .area ul dl dd:nth-of-type(1)::after {
  content: "コース";
}
#faircontent #gelande .area ul dl dd:nth-of-type(2)::after {
  content: "本";
}
#faircontent #gelande .area ul dl dd:nth-of-type(3)::after {
  content: "m";
}
#faircontent #gelande .area ul dl dd:last-child {
  border-right: .3vw solid #b7b3a8;
}
#faircontent #gelande .area ul div {
  margin: 2vw auto;
}
#faircontent #gelande .area ul div .here {
  font-size: 2.5vw;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  color: #324888;
}
#faircontent #gelande .area ul div .price {
  font-family: 'Anton', sans-serif;
  letter-spacing: .3vw;
  font-size: 8vw;
  font-weight: bold;
  text-align: center;
  margin-top: 1vw;
  color: #ea0000;
}
#faircontent #gelande .area ul div .price::after {
  content: "円～";
  font-size: 3vw;
  font-weight: bold;
}
#faircontent #gelande .area ul a {
  display: block;
  width: 95%;
  margin: 1.5vw auto;
  font-size: 3.5vw;
  font-weight: bold;
  color: #fff;
  background: #f26681 url(../img/rank_arrow.png) no-repeat right 2vw center;
  background-size: 4vw;
  text-align: center;
  padding: 4.5vw 0;
  border-radius: 1vw;
  text-decoration: none;
  -webkit-transition: .2s;
  transition: .2s;
}
#faircontent #gelande .area ul a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #hotel > a {
  display: block;
  margin: 3vw 6vw 0 auto;
  text-align: right;
  font-size: 3vw;
  color: #323232;
}
#faircontent #hotel > a:hover {
  text-decoration: none;
}
#faircontent #hotel > .dsc {
  display: block;
  width: 92vw;
  font-size: 3.5vw;
  line-height: 1.4;
  color: #000;
  text-align: center;
  margin: 5vw auto 3vw;
}
#faircontent #hotel .hotels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 92vw;
  margin: 0 auto;
}
#faircontent #hotel .hotels li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 3vw;
  border: .6vw solid #d3d1cb;
  border-radius: 2vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #hotel .hotels li:nth-child(1) {
  width: 100%;
}
#faircontent #hotel .hotels li:nth-child(1) img {
  width: 85%;
  margin: 2vw auto 0;
}
#faircontent #hotel .hotels li:nth-child(2n-1) {
  margin-right: 0;
}
#faircontent #hotel .hotels li:nth-child(n+2) a {
  font-size: 2.5vw;
  background-size: 3vw;
}
#faircontent #hotel .hotels .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 4.5vw;
  font-weight: bold;
  color: #066d7c;
  text-align: center;
  padding: 1.5vw;
  border-top: 3vw solid #17a49f;
  border-top-left-radius: 1.2vw;
  border-top-right-radius: 1.2vw;
}
#faircontent #hotel .hotels .place {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 3vw;
  line-height: 1.4;
  color: #222;
  background: #d7fed0;
  padding: 2vw 3vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#faircontent #hotel .hotels .dsc {
  display: block;
  width: 90%;
  margin: 2vw auto;
  font-size: 3vw;
  line-height: 1.4;
  color: #323232;
}
#faircontent #hotel .hotels img {
  display: block;
  width: 100%;
}
#faircontent #hotel .hotels a {
  display: block;
  width: 95%;
  margin: 1.5vw auto;
  font-size: 3.5vw;
  font-weight: bold;
  color: #fff;
  background: #f26681 url(../img/rank_arrow.png) no-repeat right 2vw center;
  background-size: 4vw;
  text-align: center;
  padding: 4.5vw 0;
  border-radius: 1vw;
  text-decoration: none;
  -webkit-transition: .2s;
  transition: .2s;
}
#faircontent #hotel .hotels a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #hotel .area_btns {
  display: block;
  width: 92vw;
  margin: 0 auto;
}
#faircontent #hotel .area_btns li {
  display: block;
  width: 100%;
  margin-bottom: 2vw;
}
#faircontent #hotel .area_btns li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 4.5vw;
  font-weight: bold;
  width: 100%;
  height: 12vw;
  padding-right: 12vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: url(../img/sp/hotel_area_bg.png) no-repeat;
  background-size: 100% 100%;
  color: #fff;
  text-decoration: none;
  -webkit-transition: .2s;
  transition: .2s;
}
#faircontent #hotel .area_btns li a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #special > ul {
  /* display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;*/
  width: 92vw;
  margin: 5vw auto;
}
#faircontent #special > ul li {
  /*width: 49%;*/
  margin-right: 0;
  margin: 2vw auto 0;
}
/*#faircontent #special > ul li:first-child {
  margin-right: 2%;
}
#faircontent #special > ul li:last-child {
  margin: 2vw auto 0;
}*/
#faircontent #special > ul li img {
  width: 100%;
}
#faircontent #special div {
  display: block;
  width: 92vw;
  margin: 0 auto;
}
#faircontent #special div ul {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2vw 0;
}
#faircontent #special div ul li a {
  font-size: 3vw;
  color: #373737;
  margin-right: 3vw;
  padding: 5vw 0;
  text-decoration: none;
}
#faircontent #special div ul li a:hover {
  text-decoration: underline;
}
#faircontent #special div ul li a::before {
  content: "◆";
  color: #a49817;
}
#faircontent #special div.bnr {}
#faircontent #special .ttl {
  display: block;
  font-size: 3.5vw;
  font-weight: bold;
  color: #a49817;
  padding: 2vw 0;
  border-bottom: .6vw solid #a49817;
}
/*******************
バナーテキスト追加

********************/
#faircontent #special .feature__link {
  display: block;
  text-decoration: none;
}
#faircontent #special .feature__link:hover {
  opacity: .8;
}
#faircontent #special p.feature__txt {
  padding: 0;
  line-height: 1.4;
  color: #555;
  font-size: 4vw;
}
#faircontent #recommend h2 p {
  font-size: 4.5vw;
}
#faircontent #recommend ul {
  width: 92vw;
  margin: 5vw auto 0;
}
#faircontent #recommend ul li a {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 3vw;
  text-decoration: none;
  -webkit-transition: .2s;
  transition: .2s;
}
#faircontent #recommend ul li a:hover {
  -webkit-filter: brightness(1.2);
  filter: brightness(1.2);
}
#faircontent #recommend ul li a img {
  width: 33%;
  height: 100%;
}
#faircontent #recommend ul li div {
  width: 64%;
}
#faircontent #recommend ul .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 3vw;
  font-weight: bold;
  line-height: 1.3;
  color: #a49817;
  padding: 0 0 1vw;
}
#faircontent #recommend ul .dsc {
  display: block;
  font-size: 3vw;
  line-height: 1.3;
  color: #373737;
  padding: 0 0 1vw;
}
/*--------------------
condition
-----------------------*/
#faircontent #condition {
  padding-top: 0;
}
#condition {
  margin-top: 10vw;
  background: #e7ddd;
  padding: 4vw 0 10vw;
  position: relative;
  line-height: 1.5;
}
#condition .in_bdy {
  width: 94%;
  margin: 0 auto;
}
#condition h3 {
  font-size: 4vw;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 6vw 0 0 0;
}
#condition .tBox {
  background: #fff;
  margin: 20px auto 0;
  padding: 10px;
}
#condition .tBox .heading {
  padding-bottom: 0.35em;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
}
#condition .list_box {
  position: relative;
  /*text-indent: -1em;*/
  margin-bottom: 40px;
}
#condition .list_box > li {
  text-align: left;
  margin-top: 0.5rem;
  position: relative;
  /* padding-left: 1em;*/
  line-height: 1.8;
}
/*bnr*/
#faircontent #other {
  padding-top: 5vw;
}
#faircontent #other > ul {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 92vw;
  margin: 5vw auto;
}
#faircontent #other > ul li {
  width: 49%;
  margin-right: 0;
}
#faircontent #other > ul li:first-child {
  margin-right: 2%;
}
#faircontent #other > ul li:last-child {
  margin: 2vw auto 0;
}
#faircontent #other > ul li img {
  width: 100%;
}
#faircontent #other div {
  display: block;
  width: 92vw;
  margin: 0 auto;
}
#faircontent #other div ul {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2vw 0;
}
#faircontent #other div ul li a {
  font-size: 3vw;
  color: #373737;
  margin-right: 3vw;
  padding: 5vw 0;
  text-decoration: none;
}
#faircontent #other div ul li a:hover {
  text-decoration: underline;
}
#faircontent #special div ul li a::before {
  content: "◆";
  color: #a49817;
}
/*--------------------
news
-----------------------*/
#faircontent #news {
  padding-top: 0;
  padding: 0;
}
#faircontent #news {
  background: #FFFFFF;
  position: relative;
  line-height: 1.5;
  padding-bottom: 20vw;
}
#news .in_bdy {
  width: 94%;
  margin: 0 auto;
}
#news h3 {
  text-align: center;
  font-size: 4vw;
  line-height: 33.6px;
  font-weight: 600;
  display: flex;
  align-items: center; /* 垂直中心 */
  justify-content: center; /* 水平中心 */
  letter-spacing: 0.1em;
  padding: 6vw 0 0 0;
}
#news h3:before, #news h3:after {
  border-top: 1px solid;
  content: "";
  width: 3em;
}
#news h3:before {
  margin-right: 1em;
}
#news h3:after {
  margin-left: 1em;
}
#news .newsbox > p {
  line-height: 1.7;
  margin-top: 2rem;
}
#news .tBox {
  background: #FFFFFF;
  padding: 0 10px;
  font-size: 14px;
}
#news .tBox .heading {
  padding-bottom: 0.35em;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
  text-align: center;
}
#news .list_box {
  position: relative;
  /*text-indent: -1em;*/
  margin-bottom: 40px;
}
#news .list_box > li {
  text-align: left;
  margin-top: 0.5rem;
  position: relative;
  /* padding-left: 1em;*/
  line-height: 1.8;
}
#news b {
  font-weight: bolder;
}
#news p a {
  color: #007bff;
}


#faircontent #FAQ {
  padding-top: 0;
}
 #FAQ {
   /* padding: 4vw 0 7vw;*/
    position: relative;
    line-height: 1.5;
	
  }
  #FAQ .in_bdy {
    width: 94%;
    margin: 0 auto;
  }
  #FAQ .faq_title {
    font-size: 1.8rem;
    text-align: center;
    letter-spacing: 0.1em;
    padding: 6vw 0;
  }
  #FAQ .qa_wrap {
    margin-top: 5vw;
	 font-size: 14px;
  }
  #FAQ .qa_wrap .question {
    background-color: #f6f6f3;
    padding: 0.5em;
    font-weight: bold;
  }
  #FAQ .qa_wrap .question {
    padding-left: 3rem;
    position: relative;
  }
  #FAQ .qa_wrap .question::after {
    content: '';
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background-image: url(../img/icon_q.svg);
    background-repeat: no-repeat;
    position: absolute;
    left: 12px;
    top: 5px;
  }
  #FAQ .qa_wrap .question::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    /*top: 0;
    left: 0;*/
    width: 1.428571429rem;
    height: 1.428571429rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: translateY(25%);
  }
  #FAQ .qa_wrap .answer {
    padding: 1.8em;
  }
  #FAQ .qa_wrap .answer {
    padding-left: 3rem;
    position: relative;
  }
  #FAQ .qa_wrap .answer::after {
    content: '';
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background-image: url(../img/icon_a.svg);
    background-repeat: no-repeat;
    position: absolute;
    left: 12px;
    top: 25px;
  }
  #FAQ .qa_wrap .answer::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    /*top: 0;
    left: 0;*/
    width: 1.428571429rem;
    height: 1.428571429rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: translateY(25%);
  }

t/*追記*/
#menu ul{
    margin-bottom:30px;
}
#menu li{
 text-align: center; 
    height:44px;
    line-height:44px;
}
#menu a{
    display:block;
    color:#000;
    background-color:#fff;
}
/*最初のliのa*/
#menu li:first-child a{
    border-left:none;
}
#menu a:hover{
    background-color:#fdbbb2;
    color:#fff;
}

#faircontent #nav{
	padding:30px;
}
#faircontent #nav .sp-only{
	width:150px;
	height:auto;
	margin: 0 auto;
	margin-bottom: 20px;
} 
#faircontent #nav h1 {
  color: #ce0002;
  box-sizing: border-box;
/*	 background: url(../img/coupon_icon02.png) no-repeat left 17px top 8px;*/
	background-size: 15%;
	text-align:center;
	font-size:30px;
	font-weight: 600;
	line-height: 40px;	
}
#hand{
	display: block;
	width: 300px;
	height:auto;
	margin: 0 auto;
}
#faircontent #nav .points p{
  font-size: 15px;
	font-weight:600;
  line-height: 30px;
}
#faircontent #nav .points span{
color:#ce0002;	
	font-size:20px;
}

/*▼追記*/
#faircontent #use{
padding: 30px;	
}
#faircontent #use .sp-only{
	display: block;
	width:150px;
	height:auto;
	margin: 0 auto;
	margin-bottom: 20px;
} 
#faircontent #use h1 {
  color: #ce0002;
  box-sizing: border-box;
/*	 background: url(../img/coupon_icon02.png) no-repeat center top -30px;*/
	background-size: 25%;
	text-align:center;
	font-size:30px;
	font-weight: 600;
	line-height: 40px;	
}

#faircontent #use .usebox{
	display: block;
	height:1350px;
background: url(../img/use_bg_sp.jpg) no-repeat center top -20vw;
  background-size: 110%;
} 






