@import url(normalize.css);
@import url(reset.css);
@import url(hack.css);

.clearfix {
    clear: both;
    overflow: hidden;
    zoom: 1;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }

img[class*="wp-image-"],
img[class*="attachment-"] {
    max-width: 100%;
    height: auto;
}

.Header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 999
}

@media screen and (max-width: 768px) {
  .SP--NavOpen .Header {
    height: 100%;
    overflow: auto
  }
}

.Header--Box {
  background: #231815;
  color: #ffffff
}

@media screen and (max-width: 1180px) {
  .Header--Box {
    padding: 0 1rem
  }
}

@media screen and (max-width: 768px) {
  .Header--Box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 1rem
  }
}

.Header--Box > .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  /*.Header--Box > .Wrap {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }*/
}

.Header--Logo {
  width: 240px;
  height: 18px
}

.Header--Logo a {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  width: 240px;
  height: 18px;
  background: url("../Images/All/Nav/Logo.png") no-repeat center;
  background-size: cover
}

.Header--Sns {
  margin-left: auto;
}

.Header--Sns a {
  position: relative;
  color: #fff;
  margin-right: 20px;
  padding-left: 30px;
}

.Header--Sns a:hover {
  opacity: 0.7;
}

.Header--Sns a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: #fff;
  border-radius: 50%;
  margin-right: 5px;
  transform: translateY(-50%);
}

.Header--Sns a.Grandeco {
  padding-left: 60px;
}

.Header--Sns a.Grandeco:before {
  width: 50px;
  border-radius: 14px;
}

.Header--Sns a.Grandeco:after {
  content: '';
  position: absolute;
  top: 45%;
  left: 25px;
  width: 35px;
  height: 14px;
  background: url(../Images/All/Icon/grandeco.png) center center / contain no-repeat;
  transform: translate(-50%,-50%);
}

.Header--Sns a.Facebook:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 10px;
  width: 14px;
  height: 14px;
  background: url(../Images/All/Icon/facebook.png) center center / contain no-repeat;
  transform: translate(-50%,-50%);
}

.Header--Sns a.Instagram:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 10px;
  width: 14px;
  height: 14px;
  background: url(../Images/All/Icon/instagram.png) center center / contain no-repeat;
  transform: translate(-50%,-50%);
}

@media screen and (max-width: 768px) {
  .Header--Sns {
    display: none;
  }
}

.Header--Right {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .Header--Right {
    margin-top: 1rem
  }
}

.Header--Reservation {
  margin-left: 1rem;
  border-right: solid 1px rgba(255, 255, 255, 0.15);
  border-left: solid 1px rgba(255, 255, 255, 0.15)
}

.Header--Reservation a {
  color: #231815;
  display: block;
  padding: 0.5rem 1.5rem;
  margin: 1rem;
  line-height: 1;
  background: #ffffff
}

@media screen and (max-width: 768px) {
  .Header--Reservation {
    display: none
  }
}

.Header--Tokyu {
  margin-left: 1rem;
  border-right: solid 1px rgba(255, 255, 255, 0.15);
  border-left: solid 1px rgba(255, 255, 255, 0.15)
}

.Header--Tokyu a {
  display: block;
  padding: 0.5rem;
  margin: 1rem;
  line-height: 1
}

@media screen and (max-width: 768px) {
  .Header--Tokyu {
    display: none
  }
}

.Header--Language {
  display: -webkit-flex;
  display: flex
}

@media screen and (max-width: 768px) {
  .Header--Language {
    display: none
  }
}

.Header--Language .Item {
  margin-left: 0.5rem
}

@media screen and (max-width: 768px) {
  .Header--Language .Item {
    margin: 0.25rem
  }
}

.Header--Language a {
  font-size: 0.95rem;
  text-align: center;
  display: block;
  color: #ffffff;
  border: solid 1px rgba(255, 255, 255, 0.35);
  padding: 0.5rem;
  line-height: 1
}

.Header--SPNav {
  display: none;
  background: #534838
}

.Header--SPNav a {
  color: #fff !important;
  padding: 1rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Header--SPNav a:after {
  display: none
}

@media screen and (max-width: 768px) {
  .Header--SPNav {
    display: block
  }
}

.Header--SPNav__Language {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Header--SPNav__Language .Item {
  width: 50%;
  border-bottom: solid 1px rgba(255, 255, 255, 0.7);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Header--SPNav__Language .Item:nth-child(2n) {
  border-left: solid 1px rgba(255, 255, 255, 0.7)
}

.Header--SPNav__Language .Item:last-child {
  border-bottom: solid 1px rgba(255, 255, 255, 0.7)
}

.Header--SPNav__Reservation a {
  display: block;
  padding: 1rem
}

.Header--SPNav__Tel {
  padding: 0 1rem 1rem
}

.Header--SPNav__Tel a {
  display: block;
  padding: 1rem;
  background: #252019;
  font-size: 1.2rem
}

.SP--Nav {
  display: none;
  width: 30px;
  height: 25px;
  margin: 0 auto;
  position: relative;
  cursor: pointer
}

@media screen and (max-width: 768px) {
  .SP--Nav {
    display: block
  }
}

.SP--Nav .bar {
  display: inline-block;
  width: 30px;
  height: 3px;
  background-color: #ffffff;
  position: absolute;
  left: 0;
  transition: .15s ease-in-out
}

.SP--Nav #bar01 {
  top: 0
}

.SP--Nav #bar02 {
  top: 10px
}

.SP--Nav #bar03 {
  top: 20px
}

.SP--Nav.Active #bar01 {
  top: 10px;
  transform: rotate(45deg)
}

.SP--Nav.Active #bar02 {
  width: 0
}

.SP--Nav.Active #bar03 {
  top: 10px;
  transform: rotate(-45deg)
}

.Nav {
  position: relative;
  background: rgba(243, 243, 233, 0.9)
}

.Nav ul {
  width: 1180px;
  display: -webkit-flex;
  display: flex;
  margin: auto
}

.Nav ul li {
  -webkit-flex-grow: 1;
  flex-grow: 1
}

.Nav ul li a {
  display: block;
  color: #534838;
  text-align: center;
  font-size: 1.05rem;
  line-height: 1.2;
  padding: 2rem 1rem;
  font-weight: 700 !important
}

.Nav ul li a span {
  color: #ae7a17;
  font-size: 0.8rem;
  display: block;
  margin-top: 0.5rem;
  font-weight: 300 !important
}

.Nav ul li a:hover {
  color: #ae7a17
}

.Nav ul li.Nav3 {
  display: none
}

@media screen and (max-width: 1180px) {
  .Nav ul {
    width: 100%
  }

  .Nav ul li a {
    padding: 2rem 0.25rem;
    font-size: 1rem
  }
}

@media screen and (max-width: 768px) {
  .Nav {
    display: none;
    background: #f3f3e9
  }

  .Nav ul {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .Nav ul li {
    width: 100%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    text-align: left;
    border-bottom: solid 1px #534838
  }

  .Nav ul li:last-child {
    border-bottom: none
  }

  .Nav ul li a {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 1rem
  }

  .Nav ul li a span {
    display: none
  }

  .Nav ul li a:after {
    font-family: 'FontAwesome';
    content: '\f105';
    font-size: 1.5rem
  }

  .Nav ul li a.Active:after {
    content: '\f146'
  }
}

.Nav .SP--SubNav {
  background: #ffffff;
  display: none
}

.Nav .SP--SubNav a:after {
  font-family: 'FontAwesome';
  content: '\f105';
  font-size: 1.15rem
}

.SubNav {
  position: relative
}

.SubNav--Overlay {
  background: #f3f3e9;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: none
}

.SubNav--Box {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 100%;
  background: rgba(243, 243, 233, 0.85)
}

.SubNav ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.SubNav ul li {
  border-left: 1px solid #bfbeae;
  margin: 1rem 0;
  width: 33%;
  min-width: 33%
}

.SubNav ul li:nth-child(3n),
.SubNav ul li:last-child {
  border-right: 1px solid #bfbeae
}

.SubNav ul li a {
  display: block;
  padding: 0 2rem
}

.Footer {
  background: #000000;
  padding: 3rem 0
}

.Footer .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .Footer .Wrap {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

@media screen and (max-width: 1180px) {
  .Footer {
    padding: 3rem 1rem
  }
}

.Footer--Reservation {
  background: #231815;
  color: #ffffff;
  width: 100%;
  margin: auto;
  text-align: left;
  position: relative;
  z-index: 1;
  margin-top: 5rem
}

.Footer--Reservation .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center
}

@media screen and (max-width: 1180px) {
  .Footer--Reservation .Wrap {
    width: 100%
  }
}

@media screen and (max-width: 768px) {
  .Footer--Reservation .Wrap {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Footer--Reservation__Box {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 2rem 2rem 2rem 1rem
}

@media screen and (max-width: 640px) {
  .Footer--Reservation__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Footer--Reservation__Title {
  padding: 1rem 2rem 1rem 1rem;
  font-size: 1.1rem
}

@media screen and (max-width: 640px) {
  .Footer--Reservation__Title {
    padding: 1rem 0
  }
}

.Footer--Reservation__Form {
  font-size: 0.95rem
}

.Footer--Reservation__Form .Item {
  margin: 0.25rem 0
}

.Footer--Reservation .Button {
  margin-left: 2rem;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JlOTU0NSIvPjxzdG9wIG9mZnNldD0iNTAlIiBzdG9wLWNvbG9yPSIjYjk4YjM1Ii8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYjM4MjI1Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #be9545), color-stop(50%, #b98b35), color-stop(100%, #b38225));
  background: -moz-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: -webkit-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: linear-gradient(to bottom, #be9545, #b98b35 50%, #b38225);
  padding: 1rem 3rem;
  color: #ffffff;
  border: none;
  font-size: 1.2rem;
  line-height: 1
}

.Footer--Address {
  font-size: 0.95rem;
  line-height: 1.2;
  color: #b38225
}

.Footer--Address .Logo {
  width: 200px;
  height: 15px;
  background: url("../Images/All/Footer/Logo.png") no-repeat center;
  background-size: cover;
  margin-bottom: 1rem
}

.Footer--Address a {
  color: #b38225;
  text-decoration: underline
}

.Footer .Copyright {
  color: rgba(255, 255, 255, 0.3);
  font-size: 0.9rem
}

@media screen and (max-width: 768px) {
  .Footer .Copyright {
    margin-top: 1rem
  }
}

.Footer--Map {
  display: -webkit-flex;
  display: flex;
  width: 100%
}

.Footer--MapArea {
  width: 75%
}

@media screen and (max-width: 768px) {
  .Footer--Map {
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .Footer--MapArea {
    width: 100%;
    height: 300px
  }
}

.Footer--Access {
  width: 25%;
  background: #f3f3e9;
  padding: 3rem;
  color: #534838;
  text-align: center;
  position: relative;
  z-index: 9;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Footer--Access .Title {
  font-size: 1.2rem
}

.Footer--Access .Comment {
  padding: 2rem 0
}

@media screen and (max-width: 768px) {
  .Footer--Access {
    width: 100%
  }
}

.Footer--Nav {
  width: 1180px;
  margin: auto;
  padding: 1rem 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  font-size: 0.95rem
}

@media screen and (max-width: 1060px) {
  .Footer--Nav {
    width: 100%;
    padding: 2rem 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

@media screen and (max-width: 768px) {
  .Footer--Nav {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Footer--Nav__List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Footer--Nav__List .Item {
  border-right: solid 1px #e5e5e5;
  margin: 0.5rem 0
}

.Footer--Nav__List .Item:last-child {
  border-right: none
}

.Footer--Nav__List .Item a {
  display: block;
  padding: 0 0.75rem
}

.Footer--Nav .English {
  display: none;
  border-left: solid 1px #e5e5e5
}

.Footer--Nav .English a {
  display: block;
  padding: 0 0.75rem
}

@media screen and (max-width: 768px) {
  .Footer--Nav .English {
    width: 100%;
    border-top: solid 1px #e5e5e5;
    border-left: none
  }

  .Footer--Nav .English a {
    padding: 0.75rem
  }
}

.Footer--Foot {
  border-top: solid 1px rgba(255, 255, 255, 0.5);
  margin-top: 1rem;
}

.Footer--Tokyu {
  padding-top: 1rem
}

.Footer--Tokyu.Wrap {
  -webkit-justify-content: flex-end;
  justify-content: flex-end
}

.TopPage--MainImage {
  width: 100%;
  padding: 0 5%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto;
  height: 850px;
  position: relative;
  z-index: 0
}

.TopPage--MainImage__Slide {
  width: 100%;
  min-height: 100%;
  background: #eeeeee
}

@media screen and (max-width: 768px) {
  .TopPage--MainImage {
    height: 550px
  }
}

@media screen and (max-width: 425px) {
  .TopPage--MainImage {
    width: 100%;
    height: 350px
  }
}

.TopPage--MainImage__Logo {
  width: 118px;
  height: 139px;
  background: url("../Images/TopPage/Logo.png");
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -59px;
  margin-top: -69.5px
}

.TopPage--MainImage:before {
  content: ' ';
  position: absolute;
  left: 0;
  bottom: -165px;
  z-index: -1;
  width: 249px;
  height: 265px;
  background: url("../Images/TopPage/Background/Left.png");
  background-size: cover;
  z-index: -1
}

@media screen and (max-width: 425px) {
  .TopPage--MainImage:before {
    width: 124.5px;
    height: 132.5px;
    bottom: -82.5px
  }
}

.TopPage--MainImage:after {
  content: ' ';
  position: absolute;
  right: 0;
  bottom: -165px;
  z-index: -1;
  width: 249px;
  height: 265px;
  background: url("../Images/TopPage/Background/Right.png");
  background-size: cover;
  z-index: -1
}

@media screen and (max-width: 425px) {
  .TopPage--MainImage:after {
    width: 124.5px;
    height: 132.5px;
    bottom: -82.5px
  }
}

.TopPage--Banner {
  display: flex;
  flex-flow: column;
  align-items: center;
  width: 100%;
  text-align: center;
  margin-bottom: 80px;
}

.TopPage--Banner a {
  margin-bottom: 20px;
}

.TopPage--Banner a:last-child {
  margin-bottom: 0;
}

.TopPage--Banner img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.TopPage--Banner img.sp {
  display: none;
}

.TopPage--Banner a:hover img {
  opacity: 0.8;
}

.TopPage--Banner__read {
  font-size: 1.45rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #b38225;
  margin-top: -10px;
  margin-bottom: 30px;
}

.TopPage--Banner__row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.TopPage--Banner__row a {
  margin: 20px 20px 0;
}

@media screen and (max-width: 768px) {
  .TopPage--Banner {
    margin-bottom: 40px;
  }
  .TopPage--Banner img.sp {
    display: block;
  }
  .TopPage--Banner img.pc {
    display: none;
  }
  .TopPage--Banner__row {
    display: block;
  }
  .TopPage--Banner__row a {
    display: block;
    margin: 20px 0 0;
  }
}

.TopPage--Movie {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto;
}

.TopPage--Movie .Item {
  position: relative;
  width: 49%;
}

.TopPage--Movie .Item::after {
  content: '';
  display: block;
  padding-top: 56.25%;
}

.TopPage--Movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .TopPage--Movie .Item {
    width: 100%;
    margin-bottom: 30px;
  }
}

.TopPage--Reservation {
  background: #231815;
  display: -webkit-flex;
  display: flex;
  color: #ffffff;
  width: 1180px;
  margin: auto;
  text-align: left;
  margin-top: -5rem;
  position: relative;
  z-index: 1
}

@media screen and (max-width: 1180px) {
  .TopPage--Reservation {
    width: 100%
  }
}

@media screen and (max-width: 768px) {
  .TopPage--Reservation {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Reservation__Box {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 2rem 2rem 2rem 1rem
}

@media screen and (max-width: 640px) {
  .TopPage--Reservation__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Reservation__Title {
  padding: 1rem 2rem 1rem 1rem;
  font-size: 1.1rem
}

@media screen and (max-width: 640px) {
  .TopPage--Reservation__Title {
    padding: 1rem 0
  }
}

.TopPage--Reservation__Form {
  font-size: 0.95rem
}

.TopPage--Reservation__Form .Item {
  margin: 0.25rem 0
}

.TopPage--Reservation .Button {
  margin-left: 2rem;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JlOTU0NSIvPjxzdG9wIG9mZnNldD0iNTAlIiBzdG9wLWNvbG9yPSIjYjk4YjM1Ii8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYjM4MjI1Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #be9545), color-stop(50%, #b98b35), color-stop(100%, #b38225));
  background: -moz-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: -webkit-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: linear-gradient(to bottom, #be9545, #b98b35 50%, #b38225);
  padding: 1rem 3rem;
  color: #ffffff;
  border: none;
  font-size: 1.2rem;
  line-height: 1
}

.TopPage--ReservationType2 {
  background: #231815;
  color: #ffffff;
  position: fixed;
  right: -280px;
  top: 25%;
  z-index: 99
}

.TopPage--ReservationType2__Tab {
  background: #231815;
  color: #ffffff;
  -webkit-font-feature-settings: 'pkna';
  font-feature-settings: 'pkna';
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding: 2rem 0;
  width: 3rem;
  line-height: 3rem;
  position: absolute;
  left: -3rem;
  top: 3rem;
  cursor: pointer
}

.TopPage--ReservationType2__Box {
  padding: 2rem 0
}

.TopPage--ReservationType2__Title {
  border-bottom: solid 1px #423935;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  line-height: 1;
  font-size: 1.1rem
}

.TopPage--ReservationType2__Form {
  font-size: 0.95rem;
  padding: 0 1rem
}

.TopPage--ReservationType2__Form .Item {
  margin: 0 0 1rem;
  text-align: left;
  display: -webkit-flex;
  display: flex
}

.TopPage--ReservationType2__Form .Item span {
  color: rgba(243, 243, 233, 0.35);
  font-size: 0.9rem;
  min-width: 3.5rem
}

.TopPage--ReservationType2 .Button {
  margin-left: 2rem;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JlOTU0NSIvPjxzdG9wIG9mZnNldD0iNTAlIiBzdG9wLWNvbG9yPSIjYjk4YjM1Ii8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYjM4MjI1Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #be9545), color-stop(50%, #b98b35), color-stop(100%, #b38225));
  background: -moz-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: -webkit-linear-gradient(top, #be9545, #b98b35 50%, #b38225);
  background: linear-gradient(to bottom, #be9545, #b98b35 50%, #b38225);
  padding: 1rem 3rem;
  color: #ffffff;
  border: none;
  font-size: 1.2rem;
  line-height: 1
}

.TopPage--Service {
  background: #443a2d;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  padding: 1rem;
  text-align: center;
  min-width: 40%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.TopPage--Service:before {
  content: ' ';
  width: 23px;
  height: 84px;
  background: url("../Images/TopPage/Service/Left.png")
}

.TopPage--Service:after {
  content: ' ';
  width: 23px;
  height: 84px;
  background: url("../Images/TopPage/Service/Right.png")
}

.TopPage--Service__Title {
  width: 200px;
  height: 15px;
  background: url("../Images/TopPage/Service/Title.png");
  margin: auto
}

.TopPage--Service .Service {
  font-size: 1.2rem;
  padding: 0.5rem 0
}

.TopPage--Service .Service span {
  font-size: 1.5rem
}

.TopPage--ServiceType2 {
  display: none;
  background: #443a2d;
  padding: 1rem;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.TopPage--ServiceType2:before {
  content: ' ';
  display: block;
  width: 140px;
  height: 16px;
  background: url("../Images/TopPage/Service/Type2/Top.png");
  margin: 0 auto 1rem
}

.TopPage--ServiceType2:after {
  content: ' ';
  display: block;
  width: 140px;
  height: 16px;
  background: url("../Images/TopPage/Service/Type2/Bottom.png");
  margin: 1rem auto 0
}

.TopPage--ServiceType2__Title {
  width: 140px;
  height: 30px;
  background: url("../Images/TopPage/Service/Type2/Title.png");
  margin: auto
}

.TopPage--ServiceType2 .Service {
  font-size: 1.2rem;
  padding: 0.5rem 0
}

.TopPage--ServiceType2 .Service span {
  font-size: 1.5rem
}

.TopPage--Title {
  font-size: 1.75rem;
  color: #534838;
  text-align: center;
  line-height: 1.1
}

.TopPage--Title span {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #b38225;
  display: block
}

.TopPage--Btn {
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.TopPage--Btn a {
  display: block;
  -webkit-align-self: center;
  align-self: center;
  padding: 1rem 2rem;
  line-height: 1;
  color: #ffffff;
  background: #534838;
  margin: 0 4px;
  border: solid 1px #534838;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all
}

.TopPage--Btn a:before {
  font-family: 'FontAwesome';
  content: '\f105';
  font-size: 1.25rem;
  margin-right: 0.75rem
}

.TopPage--Btn a:hover {
  color: #534838;
  background: #ffffff;
  border: solid 1px #534838
}

.TopPage--Btn a.Facebook,
.TopPage--Btn a.Instagram {
  color: #534838;
  background: #ffffff;
  border: solid 1px #534838
}

.TopPage--Btn--large a {
  font-size: 1.25rem;
  padding: 1rem 5rem;
}

.TopPage--Btn--large a:before {
  font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
  .TopPage--Btn a.Facebook,
  .TopPage--Btn a.Instagram {
    margin-top: 12px;
  }
}

.TopPage--Btn a.Facebook:hover,
.TopPage--Btn a.Instagram:hover {
  color: #ffffff;
  background: #534838
}

.TopPage--Btn a.Facebook:before {
  content: '\f09a'
}

.TopPage--Btn a.Instagram:before {
  content: '\f16d'
}

.TopPage--Line {
  width: 100%;
  border: none;
  height: 5px;
  background: url(../Images/All/Background/Line.png) repeat-x center
}

.TopPage--Plan {
  overflow: hidden;
  padding: 5rem 0
}

.TopPage--Plan .TopPage--Title {
  margin-bottom: 2rem;
}

.TopPage--Plan__category {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.TopPage--Plan__category-item {
  display: block;
  height: 28px;
  line-height: 26px;
  text-align: center;
  color: #534838;
  border: 1px solid #534838;
  margin: 0 10px 10px;
  padding: 6px 20px;
  cursor: pointer;
}

.TopPage--Plan__category-item.is-active {
  color: #fff;
  background: #534838;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .TopPage--Plan__category {
    justify-content: flex-start;
    padding: 0 1rem;
  }
  .TopPage--Plan__category-item {
    margin: 0 5px 8px;
  }
}

.TopPage--Plan__List {
  position: relative;
  width: 1060px;
  margin: 2rem auto;
  text-align: left;
  margin-bottom: 30px;
}

.TopPage--Plan .swiper-container {
  padding-bottom: 40px;
}

.TopPage--Plan .swiper-wrapper.is-none-slide {
  display: flex;
  justify-content: center;
}

.TopPage--Plan .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background:rgba(127,127,127, 0.5);
  opacity: 1;
}

.TopPage--Plan .swiper-pagination-bullet-active {
  background: #b38225;
}

.TopPage--Plan__arrow-prev {
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  left: -65px;
  display: block;
  background: url(../Images/TopPage/Pickup/left.png) !important;
  cursor: pointer;
}

.TopPage--Plan__arrow-next {
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  right: -65px;
  display: block;
  background: url(../Images/TopPage/Pickup/right.png) !important;
  cursor: pointer;
}

@media screen and (max-width: 1060px) {
  .TopPage--Plan__List {
    width: 100%;
    padding: 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--Plan__List .is-none-slide .Item {
  margin: 0 20px;
}

.TopPage--Plan__List .Item {
  width: 30.8175%;
  margin-right: 40px;
  border-top: solid 1px #d5d5d5
}

@media screen and (max-width: 768px) {
  .TopPage--Plan__List {
    margin: 0 0 1rem;
  }
  .TopPage--Plan .swiper-container {
    padding-bottom: 30px;
  }
  .TopPage--Plan .swiper-wrapper.is-none-slide {
    justify-content: flex-start;
  }
  .TopPage--Plan__List .Item {
    width: 100%;
    margin: 0;
  }

  .TopPage--Plan__List .Item:nth-last-child(2) {
    border-bottom: none
  }
}

.TopPage--Plan__List .Item a {
  padding: 1rem 0;
  display: block;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all
}

.TopPage--Plan__List .Item a * {
  font-family: "Helvetica Neue", Helvetica, Arial, Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.TopPage--Plan__List .Item a:hover {
  background: rgba(243, 243, 233, 0.85)
}

.TopPage--Plan__List .Item .Photo {
  width: 100%;
  min-width: 100%;
  text-align: center
}

.TopPage--Plan__List .Item .Photo img {
  max-width: 100%
}

.TopPage--Plan__List .Item .Body {
  width: 100%;
  min-width: 100%;
  margin-top: 1rem;
  color: #231815
}

.TopPage--Plan__List .Item .Body h3 {
  color: #b38225;
  font-size: 1.3rem;
  margin-bottom: 1rem;
  font-weight: 700
}

.TopPage--Cuisine {
  padding-top: 5rem
}

.TopPage--Cuisine__Box {
  position: relative;
  display: -webkit-flex;
  display: flex
}

@media screen and (max-width: 768px) {
  .TopPage--Cuisine__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Cuisine__Box .Photo {
  width: 70%;
  height: 550px;
  background: url(../Images/TopPage/Cuisine/Photo.jpg) no-repeat center;
  background-size: cover;
  z-index: 0
}

@media screen and (max-width: 768px) {
  .TopPage--Cuisine__Box .Photo {
    width: 100%;
    height: 300px
  }
}

.TopPage--Cuisine__Box .Body {
  width: 30%;
  padding: 5rem 3rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .TopPage--Cuisine__Box .Body {
    width: 100%;
    padding: 2rem 1rem
  }
}

.TopPage--Cuisine__Box .Comment {
  font-size: 1.1rem;
  padding: 2rem 0
}

.TopPage--Cuisine__List {
  background: #231815;
  margin-top: -3rem;
  padding: 6rem 0 3rem
}

@media screen and (max-width: 768px) {
  .TopPage--Cuisine__List {
    margin-top: 0;
    padding-top: 3rem
  }
}

.TopPage--Cuisine__List .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1060px
}

@media screen and (max-width: 1060px) {
  .TopPage--Cuisine__List .Wrap {
    width: 100%;
    padding: 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--Cuisine__List .Item {
  width: 48%
}

@media screen and (min-width: 426px) and (max-width: 768px) {
  .TopPage--Cuisine__List .Item {
    width: 100%
  }
}

.TopPage--Cuisine__List .Item a {
  padding: 1rem 0;
  display: block;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  color: #ffffff
}

@media screen and (max-width: 425px) {
  .TopPage--Cuisine__List .Item a {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Cuisine__List .Item .Photo {
  width: 25%;
  min-width: 25%;
  text-align: center
}

@media screen and (max-width: 425px) {
  .TopPage--Cuisine__List .Item .Photo {
    text-align: center;
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Cuisine__List .Item .Photo img {
  max-width: 100%
}

.TopPage--Cuisine__List .Item .Body {
  width: 70%;
  min-width: 70%
}

@media screen and (max-width: 425px) {
  .TopPage--Cuisine__List .Item .Body {
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Cuisine__List .Item .Body h3 {
  font-size: 1.1rem;
  margin-bottom: 1rem
}

.TopPage--Natural {
  padding-top: 5rem
}

.TopPage--Natural__Box {
  position: relative;
  display: -webkit-flex;
  display: flex
}

@media screen and (max-width: 768px) {
  .TopPage--Natural__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Natural__Box .Photo {
  width: 70%;
  height: 550px;
  background: url(../Images/TopPage/Natural/Photo_winter.jpg) no-repeat center;
  background-size: cover;
  z-index: 0
}

@media screen and (max-width: 768px) {
  .TopPage--Natural__Box .Photo {
    width: 100%;
    height: 300px
  }
}

.TopPage--Natural__Box .Body {
  width: 30%;
  padding: 5rem 3rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .TopPage--Natural__Box .Body {
    width: 100%;
    padding: 2rem 1rem
  }
}

.TopPage--Natural__Box .Comment {
  font-size: 1.1rem;
  padding: 2rem 0
}

.TopPage--Natural__List {
  background: #f3f3e9;
  margin-top: -3rem;
  padding: 6rem 0 3rem
}

@media screen and (max-width: 768px) {
  .TopPage--Natural__List {
    margin-top: 0;
    padding-top: 3rem
  }
}

.TopPage--Natural__List .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1060px
}

@media screen and (max-width: 1060px) {
  .TopPage--Natural__List .Wrap {
    width: 100%;
    padding: 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--Natural__List .Item {
  width: 48%
}

@media screen and (min-width: 426px) and (max-width: 768px) {
  .TopPage--Natural__List .Item {
    width: 100%
  }
}

.TopPage--Natural__List .Item a {
  padding: 1rem 0;
  display: block;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  color: #231815
}

@media screen and (max-width: 425px) {
  .TopPage--Natural__List .Item a {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Natural__List .Item .Photo {
  width: 25%;
  min-width: 25%;
  text-align: center
}

@media screen and (max-width: 425px) {
  .TopPage--Natural__List .Item .Photo {
    text-align: center;
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Natural__List .Item .Photo img {
  max-width: 100%
}

.TopPage--Natural__List .Item .Body {
  width: 70%;
  min-width: 70%
}

@media screen and (max-width: 425px) {
  .TopPage--Natural__List .Item .Body {
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Natural__List .Item .Body h3 {
  font-size: 1.1rem;
  margin-bottom: 1rem
}

.TopPage--Factory {
  padding-top: 5rem
}

.TopPage--Factory__Box {
  position: relative;
  display: -webkit-flex;
  display: flex
}

@media screen and (max-width: 768px) {
  .TopPage--Factory__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Factory__Box .Photo {
  width: 70%;
  height: 550px;
  background: url(../Images/TopPage/Factory/Photo.jpg) no-repeat center;
  background-size: cover;
  z-index: 0
}

@media screen and (max-width: 768px) {
  .TopPage--Factory__Box .Photo {
    width: 100%;
    height: 300px
  }
}

.TopPage--Factory__Box .Body {
  width: 30%;
  padding: 5rem 3rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .TopPage--Factory__Box .Body {
    width: 100%;
    padding: 2rem 1rem
  }
}

.TopPage--Factory__Box .Comment {
  font-size: 1.1rem;
  padding: 2rem 0
}

.TopPage--Factory__List {
  background: #231815;
  margin-top: -3rem;
  padding: 6rem 0 3rem
}

@media screen and (max-width: 768px) {
  .TopPage--Factory__List {
    margin-top: 0;
    padding-top: 3rem
  }
}

.TopPage--Factory__List .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1060px
}

@media screen and (max-width: 1060px) {
  .TopPage--Factory__List .Wrap {
    width: 100%;
    padding: 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--Factory__List .Item {
  width: 48%
}

@media screen and (min-width: 426px) and (max-width: 768px) {
  .TopPage--Factory__List .Item {
    width: 100%
  }
}

.TopPage--Factory__List .Item a {
  padding: 1rem 0;
  display: block;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  color: #ffffff
}

@media screen and (max-width: 425px) {
  .TopPage--Factory__List .Item a {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Factory__List .Item .Photo {
  width: 25%;
  min-width: 25%;
  text-align: center
}

@media screen and (max-width: 425px) {
  .TopPage--Factory__List .Item .Photo {
    text-align: center;
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Factory__List .Item .Photo img {
  max-width: 100%
}

.TopPage--Factory__List .Item .Body {
  width: 70%;
  min-width: 70%
}

@media screen and (max-width: 425px) {
  .TopPage--Factory__List .Item .Body {
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Factory__List .Item .Body h3 {
  font-size: 1.1rem;
  margin-bottom: 1rem
}

.TopPage--Relaxation {
  padding-top: 5rem;
  padding-bottom: 5rem
}

.TopPage--Relaxation__Box {
  position: relative;
  display: -webkit-flex;
  display: flex
}

@media screen and (max-width: 768px) {
  .TopPage--Relaxation__Box {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Relaxation__Box .Photo {
  width: 70%;
  height: 550px;
  background: url(../Images/TopPage/Relaxation/Photo_winter.jpg) no-repeat center;
  background-size: cover;
  z-index: 0
}

@media screen and (max-width: 768px) {
  .TopPage--Relaxation__Box .Photo {
    width: 100%;
    height: 300px
  }
}

.TopPage--Relaxation__Box .Body {
  width: 30%;
  padding: 5rem 3rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .TopPage--Relaxation__Box .Body {
    width: 100%;
    padding: 2rem 1rem
  }
}

.TopPage--Relaxation__Box .Comment {
  font-size: 1.1rem;
  padding: 2rem 0
}

.TopPage--Relaxation__List {
  background: #f3f3e9;
  margin-top: -3rem;
  padding: 6rem 0 3rem
}

@media screen and (max-width: 768px) {
  .TopPage--Relaxation__List {
    margin-top: 0;
    padding-top: 3rem
  }
}

.TopPage--Relaxation__List .Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1060px
}

@media screen and (max-width: 1060px) {
  .TopPage--Relaxation__List .Wrap {
    width: 100%;
    padding: 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--Relaxation__List .Item {
  width: 48%
}

@media screen and (min-width: 426px) and (max-width: 768px) {
  .TopPage--Relaxation__List .Item {
    width: 100%
  }
}

.TopPage--Relaxation__List .Item a {
  padding: 1rem 0;
  display: block;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  color: #231815
}

@media screen and (max-width: 425px) {
  .TopPage--Relaxation__List .Item a {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.TopPage--Relaxation__List .Item .Photo {
  width: 25%;
  min-width: 25%;
  text-align: center
}

@media screen and (max-width: 425px) {
  .TopPage--Relaxation__List .Item .Photo {
    text-align: center;
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Relaxation__List .Item .Photo img {
  max-width: 100%
}

.TopPage--Relaxation__List .Item .Body {
  width: 70%;
  min-width: 70%
}

@media screen and (max-width: 425px) {
  .TopPage--Relaxation__List .Item .Body {
    width: 100%;
    min-width: 100%
  }
}

.TopPage--Relaxation__List .Item .Body h3 {
  font-size: 1.1rem;
  margin-bottom: 1rem
}

.TopPage--Content {
  width: 1060px;
  margin: 0 auto 5rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 5rem;
  text-align: left
}

@media screen and (max-width: 1060px) {
  .TopPage--Content {
    width: 100%;
    margin-bottom: 0;
    padding: 5rem 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.TopPage--snow-resort {
  width: 100%;
}

.TopPage--snow-resort__read {
  font-size: 1.45rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #b38225;
  margin-top: 30px;
}

.TopPage--snow-resort__content {
  font-size: 1.3rem;
  margin-top: 30px;
}

.TopPage--snow-resort__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  line-height: 1;
  max-width: 560px;
  min-height: 44px;
  text-align: center;
  color: #fff;
  background: #b38225;
  margin: 0 auto;
  padding: 2rem 2rem;
  box-sizing: border-box;
}

.TopPage--snow-resort__btn:hover {
  color: #fff;
  opacity: 0.8;
}

.TopPage--snow-resort__btn-2 {
  position: relative;
  display: block;
  width: 100%;
  max-width: 560px;
  line-height: 1;
  text-align: center;
  border: 1px solid #534838;
  margin: 20px auto 0;
  padding: 2rem 2rem;
  box-sizing: border-box;
}

.TopPage--snow-resort__btn-2:hover {
  opacity: 0.8;
}

.TopPage--snow-resort__btn-2::before {
  font-family: 'FontAwesome';
  content: '\f105';
  font-size: 1.25rem;
  margin-right: 0.75rem;
}

.TopPage--snow-resort__row {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.TopPage--snow-resort__row .TopPage--Btn a {
  padding: 2rem;
}

@media screen and (max-width: 768px) {
  .TopPage--snow-resort__btn, .TopPage--snow-resort__btn-2 {
    line-height: 1.4;
    font-size: 1.2rem;
    padding: 1.4rem 1.8rem;
  }
  .TopPage--snow-resort__row {
    display: block;
  }
  .TopPage--snow-resort__row .TopPage--Btn a {
    width: 180px;
    font-size: 1rem;
    padding: 1.4rem 2rem;
  }
  .TopPage--snow-resort__row .TopPage--Btn + .TopPage--Btn {
    margin-top: 10px;
  }
}

.TopPage--Pickup {
  width: 100%
}

@media screen and (max-width: 768px) {
  .TopPage--Pickup {
    overflow: hidden;
  }
}

.TopPage--Pickup .owl-item {
  opacity: 0;
  transition: opacity 0.35s;
}

.TopPage--Pickup .owl-item.active {
  opacity: 1;
}

.TopPage--Pickup .owl-prev {
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  left: -65px;
  display: block
}

.TopPage--Pickup .owl-prev span {
  width: 45px;
  height: 45px;
  background: url("../Images/TopPage/Pickup/left.png") !important;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block
}

.TopPage--Pickup .owl-next {
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  right: -65px;
  display: block
}

.TopPage--Pickup .owl-next span {
  width: 45px;
  height: 45px;
  background: url("../Images/TopPage/Pickup/right.png") !important;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block
}

.TopPage--Pickup .TopPage--Title {
  margin-bottom: 1rem
}

.TopPage--Pickup__List {
  position: relative
}

.TopPage--Pickup__Item {
  border: solid 1px #d5d5d5;
  padding: 1rem;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 1rem
}

.TopPage--Pickup__Item a {
  display: block;
  height: 100%;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all
}

.TopPage--Pickup__Item a * {
  font-family: "Helvetica Neue", Helvetica, Arial, Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.TopPage--Pickup__Item .Photo {
  width: 100%;
  min-height: 150px;
  background: url(../Images/TopPage/NoImage.jpg) center;
  background-size: cover;
  line-height: 0
}

.TopPage--Pickup__Item .Photo img {
  max-width: 100%
}

.TopPage--Pickup__Item .Body {
  color: #999999
}

.TopPage--Pickup__Item .Body h3 {
  color: #534838;
  font-size: 1.3rem;
  margin-bottom: 1rem;
  font-weight: 700;
  margin-top: 1rem
}

.TopPage--Pickup__Item .Body p {
  color: #888888
}

.TopPage--Facebook {
  width: 48%
}

@media screen and (max-width: 768px) {
  .TopPage--Facebook {
    width: 100%
  }
}

.TopPage--Facebook .TopPage--Title {
  margin-bottom: 1rem
}

.TopPage--Members {
  margin: 2rem 1rem 0;
  border-top: solid 1px #ffffff
}

.TopPage--Members a {
  color: #ffffff;
  text-align: center;
  display: block;
  padding: 2rem 1rem 0;
  text-decoration: underline
}

.SubTitle--Type1 {
  font-size: 1.923rem;
  color: #534839;
  margin-bottom: 3rem;
  line-height: 1.2;
  letter-spacing: 0.075em;
  text-align: center;
}

.SubTitle--Type1 span {
  color: #bf8a28;
  font-size: 0.8rem;
  display: block;
  margin-top: 0.5rem
}

.SubTitle--Type1 .New {
  position: relative;
  display: block;
  width: 60px;
  height: 30px;
  line-height: 30px;
  font-size: 1rem;
  text-align: center;
  color: #fff;
  background: #ca0813;
  margin: 0 auto 15px;
  border-radius: 15px;
}

.SubTitle--Type1 .New::before {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4.5px 0 4.5px;
  border-color: #ca0813 transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.SubTitle--Type2 {
  border-bottom: 1px solid #ae7a17;
  position: relative;
  padding: 10px;
  color: #ae7a17;
  font-weight: bold;
  font-size: 124%;
  margin-bottom: 20px;
  text-align: left
}

.SubTitle--Type2:before {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 200px;
  height: 3px;
  content: ' ';
  background: #ae7a17
}

.PageBack {
  text-align: center;
  margin-top: 20px;
  padding-top: 19px;
  border-top: solid 1px #CCCCCC
}

.PageBack a {
  color: #449900;
  text-decoration: underline
}

.PageBack a:hover {
  color: #ff3333
}

.ButtonType01 a {
  color: #ffffff;
  padding: 5px 15px;
  border: 1px solid #3e8dc9;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzNlOGRjOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzAwNjhiNyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3e8dc9), color-stop(100%, #0068b7));
  background: -moz-linear-gradient(top, #3e8dc9, #0068b7);
  background: -webkit-linear-gradient(top, #3e8dc9, #0068b7);
  background: linear-gradient(to bottom, #3e8dc9, #0068b7);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-box-shadow: 0 0 5px #999;
  -webkit-box-shadow: 0 0 5px #999;
  box-shadow: 0 0 5px #999;
  font-size: 0.9em;
  position: relative
}

.ButtonType01 a:hover {
  border: 1px solid #c9833e;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2M5ODMzZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I4NWMwMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c9833e), color-stop(100%, #b85c00));
  background: -moz-linear-gradient(top, #c9833e, #b85c00);
  background: -webkit-linear-gradient(top, #c9833e, #b85c00);
  background: linear-gradient(to bottom, #c9833e, #b85c00)
}

.def_button3 {
  display: inline-block;
  border: 1px solid #b38225;
  background: #b38225;
  padding: 10px 15px 10px 25px;
  color: #fff !important;
  font-size: 124%
}

.def_button3:hover {
  opacity: 0.8;
}

.InPage--Header {
  height: 450px;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 640px) {
  .InPage--Header, #IN #images {
    height: 300px;
  }
}

.InPage--Header.Restaurant {
  background: url(../Images/InPage/Restaurant/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Restaurant:before {
  content: ' ';
  position: absolute;
  left: 0;
  bottom: -220px;
  z-index: -1;
  width: 248px;
  height: 270px;
  background: url("../Images/All/Background/Left.png")
}

.InPage--Header.Restaurant:after {
  content: ' ';
  position: absolute;
  right: 0;
  bottom: -220px;
  z-index: -1;
  width: 248px;
  height: 270px;
  background: url("../Images/All/Background/Right.png")
}

.InPage--Header.Restaurant-Event {
  background: url(../Images/InPage/Restaurant/event/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Restaurant-Event:before {
  content: ' ';
  position: absolute;
  left: 0;
  bottom: -220px;
  z-index: -1;
  width: 248px;
  height: 270px;
  background: url("../Images/All/Background/Left.png")
}

.InPage--Header.Restaurant-Event:after {
  content: ' ';
  position: absolute;
  right: 0;
  bottom: -220px;
  z-index: -1;
  width: 248px;
  height: 270px;
  background: url("../Images/All/Background/Right.png")
}

.InPage--Header.Pickup {
  background: url(../Images/InPage/Spend/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Spend {
  background: url(../Images/InPage/Spend/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Sightseeing {
  background: url(../Images/InPage/Sightseeing/Header_winter.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Ski {
  background: url(../Images/InPage/Ski/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Gallery {
  height: 360px;
}

.InPage--Header.Questions {
  background: url(../Images/InPage/Questions/Header.jpg) no-repeat center;
  background-size: cover
}

.InPage--Header.Blog {
  background: url(../Images/InPage/Blog/Header.jpg) no-repeat center;
  background-size: cover
}


@media screen and (max-width: 640px) {
  .InPage--Header.Gallery {
    height: 240px;
  }
}

.InPage--Header__Title {
  font-size: 3rem;
  line-height: 1;
  text-shadow: 0 0 8px #ffffff, 0 0 8px #ffffff;
  min-width: 25%
}

.InPage--Header__Title--White {
  color: #fff;
  text-shadow: 0 0 8px #888, 0 0 8px #888
}

@media screen and (max-width: 640px) {
  .InPage--Header__Title {
    font-size: 2.6rem;
  }
}

.InPage--Header__Title span {
  text-shadow: 0 0 8px #ffffff, 0 0 8px #ffffff;
  padding: 1rem 5rem 0;
  margin-top: 2rem;
  border-top: solid 1px rgba(30, 30, 30, 0.5);
  display: block;
  font-size: 1.1rem
}

.InPage--Header__Title--White span {
  border-color: #fff;
  text-shadow: 0 0 8px #888, 0 0 8px #888;
}

.InPage--Content {
  width: 1060px;
  margin: 5rem auto
}

@media screen and (max-width: 1060px) {
  .InPage--Content {
    width: 100%;
    padding: 0 1rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
  }
}

.InPage--category {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 10px;
}

.InPage--category-item {
  position: relative;
  display: block;
  height: 28px;
  line-height: 26px;
  text-align: center;
  color: #534838;
  border: 1px solid #534838;
  margin: 0 10px 10px;
  padding: 6px 20px;
  cursor: pointer;
}

.InPage--category-item.is-active {
  color: #fff;
  background: #534838;
  pointer-events: none;
}

.InPage--category-item a::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .InPage--category {
    justify-content: flex-start;
    padding: 0 1rem;
  }
  .InPage--category-item {
    margin: 0 5px 8px;
  }
}

.Restaurant--MainImage {
  display: -webkit-flex;
  display: flex;
  height: 360px;
  background: #f6f6ef;
  margin-bottom: 4rem
}

.Restaurant--MainImage .Photo {
  width: 55%;
  background: url(../Images/InPage/Restaurant/index/Photo.jpg) no-repeat center;
  background-size: cover !important;
  position: relative
}

.Restaurant--MainImage .Photo:before {
  content: ' ';
  width: 27px;
  height: 342px;
  background: url("../Images/InPage/Restaurant/index/Background/Left.png");
  position: absolute;
  top: 50%;
  margin-top: -171px;
  right: -27px
}

.Restaurant--MainImage .Copy {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 45%;
  min-width: 377px;
  position: relative;
  overflow: hidden
}

.Restaurant--MainImage .Copy:before {
  content: ' ';
  width: 438px;
  height: 24px;
  background: url("../Images/InPage/Restaurant/index/Background/Top.png");
  background-size: cover;
  position: absolute;
  left: 50%;
  margin-left: -219px;
  top: 0
}

.Restaurant--MainImage .Copy:after {
  content: ' ';
  width: 438px;
  height: 24px;
  background: url("../Images/InPage/Restaurant/index/Background/Bottom.png");
  background-size: cover;
  position: absolute;
  left: 50%;
  margin-left: -219px;
  bottom: 0
}

.Restaurant--MainImage .Copy p {
  width: 377px;
  height: 128px;
  background: url("../Images/InPage/Restaurant/index/Copy.png");
  background-size: cover;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block
}

@media screen and (max-width: 768px) {
  .Restaurant--MainImage {
    height: auto;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .Restaurant--MainImage .Photo {
    height: 300px;
    width: 100%
  }

  .Restaurant--MainImage .Photo:before {
    display: none
  }

  .Restaurant--MainImage .Copy {
    min-width: 100%;
    width: 100%;
    padding: 2rem 0
  }
}

@media screen and (max-width: 425px) {
  .Restaurant--MainImage .Copy:before {
    width: 100%;
    left: 0;
    margin-left: 0
  }

  .Restaurant--MainImage .Copy:after {
    width: 100%;
    left: 0;
    margin-left: 0
  }

  .Restaurant--MainImage .Copy p {
    width: 251.33333px;
    height: 85.33333px
  }
}

.Restaurant--List {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Restaurant--List .Item {
  min-width: 30%;
  width: 30%;
  min-height: 300px;
  margin-bottom: 2rem
}

.Restaurant--List .Item a {
  display: block;
  position: relative;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  color: #1e1e1e;
  height: 100%
}

.Restaurant--List .Item a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: .75
}

.Restaurant--List .Item a:before {
  content: ' ';
  width: 100%;
  height: 250px;
  display: block;
  background-size: cover !important
}

.Restaurant--List .Item .Box {
  display: block;
  position: relative;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  color: #1e1e1e
}

.Restaurant--List .Item .Box:before {
  content: ' ';
  width: 100%;
  height: 250px;
  display: block;
  background-size: cover !important
}

@media screen and (max-width: 768px) {

  .Restaurant--List .Item a:before,
  .Restaurant--List .Item .Box:before {
    height: 200px
  }
}

@media screen and (max-width: 640px) {
  .Restaurant--List .Item {
    width: 48%
  }
}

.Restaurant--List .Nav1 a:before,
.Restaurant--List .Nav1 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav1.jpg) no-repeat center
}

.Restaurant--List .Nav2 a:before,
.Restaurant--List .Nav2 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav2.jpg) no-repeat center
}

.Restaurant--List .Nav3 a:before,
.Restaurant--List .Nav3 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav3.jpg) no-repeat center
}

.Restaurant--List .Nav4 a:before,
.Restaurant--List .Nav4 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav4.jpg) no-repeat center
}

.Restaurant--List .Nav5 a:before,
.Restaurant--List .Nav5 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav5.jpg) no-repeat center
}

.Restaurant--List .Nav6 a:before,
.Restaurant--List .Nav6 .Box:before {
  background: url(../Images/InPage/Restaurant/index/Nav/Nav6.jpg) no-repeat center
}

.Restaurant--List .Name {
  width: 100%;
  background: #f3f3e9;
  padding: 0.75rem 1rem;
  font-size: 1.25rem;
  text-align: center;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--List .Name span {
  font-size: 0.85rem;
  color: #b48420;
  display: block;
  margin-top: 0.5rem;
  font-weight: 700
}

.Restaurant--Nav {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 5rem
}

.Restaurant--Nav .Item {
  width: 22%;
  height: 75px;
  position: relative
}

@media screen and (max-width: 640px) {
  .Restaurant--Nav .Item {
    width: 48%;
    margin: 1rem 0
  }
}

.Restaurant--Nav .Item a {
  height: 75px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  color: #ffffff;
  font-size: 1.25rem;
  background: rgba(0, 0, 0, 0.7);
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  letter-spacing: 0.15em
}

.Restaurant--Nav .Item a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0
}

.Restaurant--Nav .Active a {
  text-shadow: 0 0 6px #000;
  background: rgba(0, 0, 0, 0);
}

.Restaurant--Nav .Active:before {
  border: 5px solid transparent;
  border-top-color: #ffb836;
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -5px
}

.Restaurant--Nav .Nav1 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav1.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav .Nav2 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav2.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav .Nav3 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav3.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav .Nav4 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav4.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav2 {
  margin: 3rem 0
}

.Restaurant--Nav2 .Item {
  width: 100%;
  height: 75px;
  position: relative;
  margin: 0 0 1rem
}

.Restaurant--Nav2 .Item a {
  height: 75px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  color: #ffffff;
  font-size: 1.25rem;
  background: rgba(0, 0, 0, 0.7);
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  letter-spacing: 0.15em
}

.Restaurant--Nav2 .Item a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0
}

.Restaurant--Nav2 .Active a {
  display: none
}

.Restaurant--Nav2 .Active:before {
  border: 5px solid transparent;
  border-top-color: #ffb836;
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -5px
}

.Restaurant--Nav2 .Nav1 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav1.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav2 .Nav2 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav2.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav2 .Nav3 {
  background: url(../Images/InPage/Restaurant/single/Nav/Nav3.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav--Event {
  -webkit-justify-content: center;
  justify-content: center;
}

@media screen and (max-width: 640px) {
  .Restaurant--Nav--Event {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}

.Restaurant--Nav--Event .Item {
  margin: 0 10px;
}

@media screen and (max-width: 640px) {
  .Restaurant--Nav--Event .Item {
    margin: 1rem 0;
  }
}

.Restaurant--Nav--Event .Nav1 {
  background: url(../Images/InPage/Restaurant/event/Nav1.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav--Event .Nav2 {
  background: url(../Images/InPage/Restaurant/event/Nav2.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Nav--Event .Nav3 {
  background: url(../Images/InPage/Restaurant/event/Nav3.jpg) no-repeat center;
  background-size: cover
}

.Restaurant--Date {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 3rem
}

.Restaurant--Date .Item {
  width: 47%;
  margin-right: 1rem;
  text-align: center;
  padding: 0.5rem;
  cursor: pointer;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #999999;
  color: #cccccc
}

.Restaurant--Date .Item:last-child {
  margin-right: 0
}

.Restaurant--Date .Active {
  background: #f6b135;
  color: #000000
}

.Restaurant--Date .Active:after {
  content: ' ';
  width: 100%;
  height: 10px;
  position: absolute;
  left: 0;
  bottom: -10px;
  background: #f6b135
}

@media screen and (max-width: 640px) {
  .Restaurant--Date {
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .Restaurant--Date .Item {
    width: 100%
  }
}

.Restaurant--CorseList {
  border: solid 1px #f6b135;
  padding: 0.5rem;
  margin-top: 10px;
  margin-bottom: 2rem
}

.Restaurant--CorseList .List {
  background: #eeeeee;
  line-height: 2rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center
}

.Restaurant--CorseList .Item {
  margin: 0 1rem;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  font-weight: 300;
  cursor: pointer;
  color: #888888
}

.Restaurant--CorseList .Item:before {
  content: '\f138';
  font-family: 'FontAwesome';
  font-size: 1.4rem;
  margin-right: 0.5rem
}

.Restaurant--CorseList .Item.Active {
  color: #1e1e1e;
  font-weight: 700
}

.Restaurant--CorseList .Item.Active:before {
  color: #f6b135
}

.Restaurant--Photos {
  margin-bottom: 2rem
}

.Restaurant--Photos .PhotoList {
  width: 100%;
  background: #eeeeee;
  position: relative;
  margin-bottom: 0.5rem
}

.Restaurant--Photos .PhotoList:before {
  content: ' ';
  width: 100%;
  padding-top: 56%;
  display: block
}

.Restaurant--Photos .PhotoList .Photo {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover !important
}

.Restaurant--Photos .Caption {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.65);
  padding: 0.75rem;
  line-height: 1.2;
  text-align: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--Photos .ThumbnailList {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-content: flex-start;
  align-content: flex-start
}

.Restaurant--Photos .Item {
  width: 25%;
  line-height: 0;
  padding: 1px;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--Photos .Item img {
  width: 100%
}

.Restaurant--Photos .Breakfast .Item {
  width: 20%
}

.Restaurant--Photos .Active {
  position: relative
}

.Restaurant--Photos .Active:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: solid 5px rgba(255, 255, 255, 0.5);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .Restaurant--Photos {
    min-height: auto;
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .Restaurant--Photos .PhotoList {
    height: 400px
  }

  .Restaurant--Photos .PhotoList,
  .Restaurant--Photos .ThumbnailList {
    width: 100%
  }

  .Restaurant--Photos .Item {
    width: 25%
  }
}

@media screen and (max-width: 425px) {
  .Restaurant--Photos .PhotoList {
    height: 270px
  }

  .Restaurant--Photos .Item {
    width: 50%
  }
}

.Restaurant .ContentBox {
  display: none
}

.Restaurant .ContentBox.Show {
  display: block
}

.Restaurant .CorseBox {
  display: none
}

.Restaurant .CorseBox.Show {
  display: block
}

.Restaurant--Content {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

@media screen and (max-width: 768px) {
  .Restaurant--Content {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Restaurant--Menu {
  background: url(../Images/InPage/Restaurant/single/Background.png);
  position: relative
}

.Restaurant--MenuArea {
  width: 49%
}

@media screen and (max-width: 768px) {
  .Restaurant--MenuArea {
    width: 100%
  }
}

.Restaurant--Menu:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 101px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame4.png");
  z-index: 0
}

.Restaurant--Menu:after {
  content: ' ';
  position: absolute;
  right: 0;
  top: 0;
  width: 101px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame5.png");
  z-index: 0
}

.Restaurant--Menu.azuma {
  background: url(../Images/InPage/Restaurant/single/Background2.png)
}

.Restaurant--Menu.azuma:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 67px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame4.png");
  z-index: 0
}

.Restaurant--Menu.azuma:after {
  content: ' ';
  position: absolute;
  right: 0;
  top: 0;
  width: 66px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame5.png");
  z-index: 0
}

.Restaurant--Menu.karamatsu {
  background: url(../Images/InPage/Restaurant/single/Background3.png)
}

.Restaurant--Menu.karamatsu:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 65px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame4.png");
  z-index: 0
}

.Restaurant--Menu.karamatsu:after {
  content: ' ';
  position: absolute;
  right: 0;
  top: 0;
  width: 64px;
  height: 100%;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame5.png");
  z-index: 0
}

.Restaurant--Menu__Content {
  position: relative;
  z-index: 10;
  padding: 4rem
}

.Restaurant--Menu__Content .Title {
  font-size: 2rem;
  text-shadow: 0 1px 0 #222222;
  line-height: 1.4;
  margin-bottom: 0.5rem
}

.Restaurant--Menu__Content .Title span {
  font-size: 1.1rem;
  display: block
}

.Restaurant--Menu__Content .Corse {
  font-size: 2rem
}

.Restaurant--Menu__Content .Price {
  font-size: 1.75rem;
  background: url(../Images/InPage/Restaurant/single/Frame/Line.png) repeat-x bottom;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
  line-height: 1
}

.Restaurant--Menu__Content .Price span {
  font-size: 2rem
}

.azuma .Restaurant--Menu__Content .Price {
  background: url(../Images/InPage/Restaurant/single/Frame2/Line.png) repeat-x bottom
}

.karamatsu .Restaurant--Menu__Content .Price {
  background: url(../Images/InPage/Restaurant/single/Frame3/Line.png) repeat-x bottom
}

.Restaurant--Menu__Content .CorseTitle {
  color: #646464
}

.Restaurant--Menu__Content .CorseTitle + p {
  margin-bottom: 1.25rem
}

.Restaurant--Menu__BackgroundType1 {
  position: relative;
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  min-height: 105px;
  width: 100%;
  background: url(../Images/InPage/Restaurant/single/Frame/Frame2.png) repeat-x
}

.Restaurant--Menu__BackgroundType1:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 101px;
  height: 105px;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame1.png")
}

.Restaurant--Menu__BackgroundType1:after {
  content: ' ';
  position: absolute;
  right: 0;
  top: 0;
  width: 101px;
  height: 105px;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame3.png")
}

.azuma .Restaurant--Menu__BackgroundType1 {
  min-height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame2.png") repeat-x center
}

.azuma .Restaurant--Menu__BackgroundType1:before {
  width: 67px;
  height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame1.png")
}

.azuma .Restaurant--Menu__BackgroundType1:after {
  width: 66px;
  height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame3.png")
}

.karamatsu .Restaurant--Menu__BackgroundType1 {
  min-height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame2.png") repeat-x center
}

.karamatsu .Restaurant--Menu__BackgroundType1:before {
  width: 65px;
  height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame1.png")
}

.karamatsu .Restaurant--Menu__BackgroundType1:after {
  width: 64px;
  height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame3.png")
}

.Restaurant--Menu__BackgroundType2 {
  position: relative;
  z-index: 1;
  position: absolute;
  left: 0;
  bottom: 0;
  min-height: 105px;
  width: 100%;
  background: url(../Images/InPage/Restaurant/single/Frame/Frame7.png) repeat-x
}

.Restaurant--Menu__BackgroundType2:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 101px;
  height: 105px;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame6.png")
}

.Restaurant--Menu__BackgroundType2:after {
  content: ' ';
  position: absolute;
  right: 0;
  top: 0;
  width: 101px;
  height: 105px;
  background: url("../Images/InPage/Restaurant/single/Frame/Frame8.png")
}

.azuma .Restaurant--Menu__BackgroundType2 {
  min-height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame7.png") repeat-x center
}

.azuma .Restaurant--Menu__BackgroundType2:before {
  width: 64px;
  height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame6.png")
}

.azuma .Restaurant--Menu__BackgroundType2:after {
  width: 69px;
  height: 61px;
  background: url("../Images/InPage/Restaurant/single/Frame2/Frame8.png")
}

.karamatsu .Restaurant--Menu__BackgroundType2 {
  min-height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame7.png") repeat-x center
}

.karamatsu .Restaurant--Menu__BackgroundType2:before {
  width: 65px;
  height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame6.png")
}

.karamatsu .Restaurant--Menu__BackgroundType2:after {
  width: 64px;
  height: 58px;
  background: url("../Images/InPage/Restaurant/single/Frame3/Frame8.png")
}

.Restaurant--Side {
  width: 49%
}

@media screen and (max-width: 768px) {
  .Restaurant--Side {
    width: 100%
  }
}

.Restaurant--Plan {
  width: 100%
}

.Restaurant--Plan__List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.Restaurant--Plan__Item {
  width: 48%
}

.Restaurant--Plan .Title {
  background: url(../Images/InPage/Restaurant/single/Plan.png) repeat-x center;
  font-size: 1.2rem;
  font-weight: 700
}

.Restaurant--Plan .Title span {
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline;
  background: #ffffff;
  padding: 1rem
}

.Restaurant--Plan__Item {
  text-align: left
}

.Restaurant--Plan__Item a {
  padding: 1rem 0;
  border-top: solid 1px #dcdcdc;
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.Restaurant--Plan__Item:last-child a {
  border-bottom: solid 1px #dcdcdc
}

.Restaurant--Plan__Item .Photo {
  min-width: 35%;
  width: 35%
}

.Restaurant--Plan__Item .Photo img {
  max-width: 100%
}

.Restaurant--Plan__Item .Comment {
  min-width: 60%;
  width: 60%
}

@media screen and (max-width: 425px) {
  .Restaurant--Plan__Item {
    width: 100%
  }
}

.Restaurant--SpecialLunch {
  text-align: left;
  display: -webkit-flex;
  display: flex
}

.Restaurant--SpecialLunch .Item {
  width: 50%;
  padding: 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--SpecialLunch .Photo {
  width: 100%;
  background-position: center;
  background-size: cover !important
}

.Restaurant--SpecialLunch .Photo:before {
  content: ' ';
  display: block;
  padding-top: 56.25%
}

.Restaurant--SpecialLunch .Body {
  padding: 2rem
}

.Restaurant--SpecialLunch .Title {
  font-size: 1.5rem;
  margin-bottom: 2rem
}

.Restaurant--SpecialLunch .Price {
  margin-bottom: 1rem
}

.Restaurant--Sec {
  border-top: 3px double #a9a39b;
  padding-top: 50px;
}

.Restaurant--Lunch {
  display: -webkit-flex;
  display: flex;
  min-height: 300px;
  text-align: left;
  border-top: solid 1px #dcdcdc
}

.Restaurant--Lunch:nth-child(odd) {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.Restaurant--Lunch:last-child {
  border-bottom: solid 1px #dcdcdc
}

@media screen and (max-width: 425px) {
  .Restaurant--Lunch {
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .Restaurant--Lunch:nth-child(odd) {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Restaurant--Lunch .Photo {
  width: 400px;
  min-width: 400px;
  height: 300px;
  background-position: center;
  background-size: cover !important
}

@media screen and (max-width: 768px) {
  .Restaurant--Lunch {
    min-height: inherit;
  }
  .Restaurant--Lunch .Photo {
    min-width: 40%;
    width: 40%;
    height: auto
  }

  .Restaurant--Lunch .Photo:before {
    content: ' ';
    padding-top: 75%;
    display: block
  }
}

@media screen and (max-width: 425px) {
  .Restaurant--Lunch .Photo {
    min-width: 100%;
    width: 100%
  }
  .Restaurant--Lunch .Body {
    width: 100%;
  }
}

.Restaurant--Lunch .Body {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  padding: 2rem;
  -webkit-align-self: center;
  align-self: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--Lunch .Title {
  font-size: 1.5rem;
  margin-bottom: 2rem
}

.Restaurant--Lunch .Price {
  margin-bottom: 1rem
}

.Restaurant--Event {
  display: -webkit-flex;
  display: flex;
  text-align: left;
  border-top: solid 1px #dcdcdc
}

.Restaurant--Event:nth-child(2n) {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.Restaurant--Event:last-child {
  border-bottom: solid 1px #dcdcdc
}

@media screen and (max-width: 425px) {
  .Restaurant--Event {
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .Restaurant--Event:nth-child(2n) {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.Restaurant--Event .Photo {
  width: 400px;
  min-width: 400px;
  height: 300px;
  background-position: center;
  background-size: cover !important
}

@media screen and (max-width: 768px) {
  .Restaurant--Event .Photo {
    min-width: 40%;
    width: 40%;
    height: auto
  }

  .Restaurant--Event .Photo:before {
    content: ' ';
    padding-top: 75%;
    display: block
  }
}

@media screen and (max-width: 425px) {
  .Restaurant--Event .Photo {
    min-width: 100%;
    width: 100%
  }
}

.Restaurant--Event .Body {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  padding: 2rem;
  -webkit-align-self: center;
  align-self: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Restaurant--Event .Title {
  font-size: 1.5rem;
  margin-bottom: 2rem
}

.Restaurant--Event .Comment {
  margin-bottom: 1rem
}

.Restaurant--Event .Price {
  border-top: solid 1px #eeeeee;
  padding-top: 16px;
  margin-top: 16px;
}

.Restaurant--Topix__List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.Restaurant--Topix__List .Item {
  width: 48%;
  color: #1e1e1e;
  text-align: left;
  margin-bottom: 40px
}

@media screen and (max-width: 425px) {
  .Restaurant--Topix__List .Item {
    width: 100%
  }
}

.Restaurant--Topix__List .Title {
  font-size: 1.5rem;
  margin-bottom: 8px
}

.Restaurant--Topix__List .TitleArea {
  background: #f3f1e5;
  line-height: 1.2;
  padding: 16px;
  text-align: center;
  font-weight: 700
}

.Restaurant--Topix__List .Price {
  font-size: 1.2rem
}

.Restaurant--Topix__List .Photo {
  margin-bottom: 8px;
  background-position: center;
  background-size: cover !important
}

.Restaurant--Topix__List .Photo:before {
  content: ' ';
  width: 100%;
  padding-top: 56.25%;
  display: block
}

.Restaurant--Topix__List .Date {
  font-size: 1.35rem;
  margin-bottom: 8px
}

.Restaurant--Topix__List .Date span {
  font-size: 1.2rem
}

.print-btn {
  width: 7rem;
  padding: 1rem 0;
  background: #333333;
  color: #ffffff;
  margin: 1rem auto;
  cursor: pointer;
  line-height: 1
}

@media screen and (max-width: 768px) {
  .print-btn {
    display: none
  }
}

.pdf-btn a {
  width: 10rem;
  padding: 1rem 0;
  background: #333333;
  color: #ffffff;
  margin: 1rem auto;
  cursor: pointer;
  line-height: 1;
  display: block
}

#print {
  margin: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  left: -100%;
  top: 0;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: absolute
}

#print .Restaurant--Side {
  display: none
}

#print .Restaurant--Menu {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

#print .Restaurant--MenuArea {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

#print .print-btn,
#print .print-all {
  display: none
}

@media print {
  #print {
    left: 0;
    z-index: 0
  }

  .print-off,
  .print-btn {
    display: none
  }
}

.Spend--List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Spend--List .Item {
  width: 33%;
  padding: 16px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .Spend--List .Item {
    width: 50%
  }
}

@media screen and (max-width: 425px) {
  .Spend--List .Item {
    width: 100%
  }
}

.Spend--List .Box {
  display: block;
  text-align: left;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Spend--List a {
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  color: #231815
}

.Spend--List a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: .75
}

.Spend--List .Photo {
  width: 100%;
  margin-bottom: 24px;
  background-size: cover !important;
  background-position: center
}

.Spend--List .Photo:before {
  content: ' ';
  width: 100%;
  display: block;
  padding-top: 75%
}

.Spend--List .Title {
  font-size: 1.5rem;
  margin-bottom: 24px;
  font-weight: 700
}

.Spend--List .Details {
  border-top: solid 1px #eeeeee;
  padding-top: 16px;
  margin-top: 16px;
  color: #888888;
  font-size: 0.9rem
}

.Spend--List .Details p {
  font-size: 0.9rem;
  margin-top: 8px
}

.Ski--Box {
  background: #f6f6ef;
  padding: 72px 110px;
  overflow: hidden;
  position: relative;
  margin-bottom: 36px
}
@media screen and (max-width: 768px) {
  .Ski--Box {
    padding: 1rem;
  }
}

.Ski--Box:before {
  content: ' ';
  width: 100%;
  height: 18px;
  background: url("../Images/InPage/Ski/Top.png");
  position: absolute;
  left: 100%;
  top: 0
}

.Ski--Box:after {
  content: ' ';
  width: 100%;
  height: 19px;
  background: url("../Images/InPage/Ski/Bottom.png");
  position: absolute;
  left: 100%;
  bottom: 0
}

.Ski--Box .Title {
  width: 516px;
  height: 126px;
  background: url("../Images/InPage/Ski/Title.png");
  margin: auto
}
@media screen and (max-width: 768px) {
  .Ski--Box .Title {
    width: 100%;
    height: auto;
    background-size: contain;
  }
  .Ski--Box .Title:before {
    content: '';
    display: block;
    padding-top: 24.4%;
  }
}

.Ski--Box .List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 40px
}

@media screen and (max-width: 768px) {
  .Ski--Box .List {
    padding: 0;
  }
}

.Ski--Box .List .Item {
  width: 47%;
  border-bottom: solid 1px #b38225;
  padding: 24px;
  font-weight: 700;
  font-size: 1.1rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Ski--Box .List .Item:last-child {
  -webkit-flex-grow: 1;
  flex-grow: 1
}

.Ski--Btn {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center
}

.Ski--Btn .Item {
  margin: 15px;
  min-width: 40%
}

.Ski--Btn .Item a {
  line-height: 1;
  display: block;
  padding: 15px 40px;
  position: relative;
  background: #534838;
  color: #ffffff;
  border: solid 1px #534838
}

.Ski--Btn .Item a i {
  position: absolute;
  left: 10px;
  top: 50%;
  line-height: 1;
  margin-top: -0.5rem
}

.Ski--Btn .Item a:hover {
  color: #534838;
  background: #ffffff
}

.Ski--Btn .Item.Type2 a {
  color: #534838;
  background: #ffffff
}

.Ski--Btn .Item.Type2 a:hover {
  color: #ffffff;
  background: #534838
}

.Ski--Btn .Item.Type3 a {
  color: #ffffff;
  background: #b38225
}

.Ski--Btn .Item.Type3 a:hover {
  color: #b38225;
  background: #ffffff
}

.GuestRoom--Renewal {
  border-bottom: 3px double #a9a39b;
  margin-bottom: 70px;
  padding-bottom: 60px
}

.GuestRoom--Renewal .Title {
  overflow: hidden;
  color: #b38225;
  text-shadow: 1px 1px 0 rgba(83, 72, 56, 0.1);
  font-size: 1.75rem;
  text-align: center;
  margin-bottom: 40px
}

.GuestRoom--Renewal .Title:before {
  content: ' ';
  width: 864px;
  height: 1px;
  background: url("../Images/InPage/GuestRoom/Line.png");
  margin: 0 auto 24px;
  display: block
}

.GuestRoom--Renewal .List {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .GuestRoom--Renewal .List {
    padding: 0 1rem;
  }
}

.GuestRoom--Renewal .Item {
  width: 30%;
  border: solid 1px #cccccc;
  padding: 16px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width: 768px) {
  .GuestRoom--Renewal .Item {
    width: 100%;
    margin-bottom: 32px;
  }
  .GuestRoom--Renewal .Item:last-child {
    margin-bottom: 0;
  }
}

.GuestRoom--Renewal .Photo {
  position: relative;
  line-height: 0
}

.GuestRoom--Renewal .Photo:before {
  content: ' ';
  width: 60px;
  height: 60px;
  background: url("../Images/InPage/GuestRoom/New.png");
  position: absolute;
  left: -30px;
  top: -30px
}

.GuestRoom--Renewal .Photo img {
  width: 100%
}

.GuestRoom--Renewal .Name {
  font-size: 1.1rem;
  font-weight: 700;
  padding: 24px 0;
  background: url(../Images/InPage/GuestRoom/ItemLine.png) repeat-x bottom;
  text-align: center
}

.GuestRoom--Renewal .Body {
  padding: 24px 0;
  background: url(../Images/InPage/GuestRoom/ItemLine.png) repeat-x bottom
}

.GuestRoom--Renewal .Copy {
  padding: 32px;
  background: #f6f6ef;
  text-align: center;
  margin-top: 48px
}

.GuestRoom--Renewal .Btn {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  margin-top: 16px
}

.GuestRoom--Renewal .Btn a {
  display: block;
  padding: 16px 40px;
  position: relative;
  background: #534838;
  color: #ffffff;
  border: solid 1px #534838;
  min-width: 40%;
  text-align: center
}

.GuestRoom--Renewal .Btn a i {
  position: absolute;
  left: 24px;
  top: 50%;
  line-height: 1;
  margin-top: -0.5rem
}

.GuestRoom--Renewal .Btn.Type2 a {
  background: #b48315;
  border: solid 1px #b48315
}

.GuestRoom--Renewal__Popup {
  display: none;
  width: 1040px;
  position: absolute;
  background: #ffffff;
  padding: 24px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  left: 50%;
  margin-left: -520px;
  z-index: 999
}

.GuestRoom--Renewal__Popup .Box {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.GuestRoom--Renewal__Popup .Box.hidden {
  display: none
}

.GuestRoom--Renewal__Popup .Photo {
  width: 65%;
  background: #eeeeee;
  background-position: center;
  background-size: cover !important
}

.GuestRoom--Renewal__Popup .Photo:before {
  content: ' ';
  width: 100%;
  padding-top: 56.25%;
  display: block
}

.GuestRoom--Renewal__Popup .Close {
  width: 25px;
  height: 25px;
  position: absolute;
  right: 24px;
  top: 24px;
  cursor: pointer
}

.GuestRoom--Renewal__Popup .Close:before {
  content: '';
  width: 100%;
  height: 2px;
  background: #534838;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  display: block;
  position: absolute;
  left: 0;
  top: 50%
}

.GuestRoom--Renewal__Popup .Close:after {
  content: '';
  width: 100%;
  height: 2px;
  background: #534838;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  display: block;
  position: absolute;
  left: 0;
  top: 50%
}

.GuestRoom--Renewal__Popup .Body {
  width: 33%;
  text-align: left;
  position: relative
}

.GuestRoom--Renewal__Popup .Body h3 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.7
}

.GuestRoom--Renewal__Popup .Body h3 span {
  font-size: 1.25rem;
  display: block
}

.GuestRoom--Renewal__Popup .Body h3:after {
  content: ' ';
  display: block;
  margin: 24px 0;
  height: 2px;
  width: 30px;
  background: #b48315
}

.Overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 999;
  display: none
}



.Gallery--Nav {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 3rem
}

.Gallery--Nav::after {
  content: '';
  display: block;
  width: 22%;
}

.Gallery--Nav .Item {
  width: 22%;
  height: 40px;
  position: relative;
  margin-bottom: 20px;
}

@media screen and (max-width: 640px) {
  .Gallery--Nav .Item {
    width: 48%;
    margin: 1rem 0
  }
}

.Gallery--Nav .Item a {
  height: 40px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  color: #534838;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
  transition: 0.5s all;
  -pie-transition: 0.5s all;
  letter-spacing: 0.15em;
  border: solid 1px #534838;
}

.Gallery--Nav .Item a:hover {
  color: #fff;
  background: #534838;
  opacity: 0.8;
}

.Gallery--Nav .Active a {
  color: #fff;
  background: #534838;
  pointer-events: none;
}

.Gallery--List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Gallery--List .Item {
  overflow: hidden;
  position: relative;
  width: 25%;
  background: #ccc;
  border-right: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 1px;
}

.Gallery--List .Item:nth-child(4n) {
  border-right: none;
}

.Gallery--List .Item::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 75%;
}

.Gallery--List .Item img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%,-50%);
}

@media screen and (max-width: 640px) {
  .Gallery--List .Item {
    width: 33.333%;
  }
}

.mfp-gallery.mfp-bg {
  opacity: .9;
}

.mfp-gallery .mfp-content {
  max-width: 1000px;
  margin: auto;
}
.mfp-gallery .mfp-title {
  color: #fff;
  text-align: center;
  padding: 8px 0 0;
}

.LessonPrice {
  font-size: 1.2307rem;
  color: #534838;
}

.LessonPrice p {
  margin-bottom: 20px;
}

.LessonPrice .txt {
  letter-spacing: 0.075em;
}

.LessonPrice .price {
  position: relative;
  display: inline-block;
  font-size: 2.307rem;
  letter-spacing: 0.05em;
  padding-bottom: 8px;
}

.LessonPrice .price::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #534838;
}

.LessonPrice .price::after {
  content: '';
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #534838;
}

.LessonPrice .price span {
  font-size: 1.2307rem;
}

.LessonPrice .price small {
  font-size: 0.923rem;
}

.LessonPoint {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

.LessonPoint li {
  width: 32%;
  height: 80px;
  line-height: 80px;
  font-size: 1.2307rem;
  color: #534838;
  text-align: center;
  border: 3px double #534838;
}

.LessonBtn {
  display: block;
  max-width: 360px;
  padding: 15px 40px;
  position: relative;
  background: #534838;
  color: #ffffff!important;
  border: solid 1px #534838;
  font-size: 1.2307rem;
  text-align: center;
  margin: auto;
}

.LessonBtn:hover {
  opacity: 0.8;
  text-decoration: none!important;
}

.LessonBtn i {
  display: inline-block;
  line-height: 1;
  margin-top: -0.5rem;
  margin-right: 20px;
}

@media screen and (max-width: 640px) {
  .LessonPoint li {
    width: 100%;
    height: 60px;
    line-height: 60px;
    margin-bottom: 20px;
  }
  
}


.InfoBox {
  display: inline-flex;
  flex-flow: column;
  max-width: 1000px;
  text-align: left;
  background: #fff;
  border: 1px solid #bf8a28;
  padding: 30px 20px;
  margin: 0 auto 40px;
}

.InfoBox::after {
  content: '';
  display: block;
  clear: both;
}

.InfoBox--title {
  max-width: 560px;
  width: 100%;
  font-size: 1.2307rem;
  font-weight: 700;
  text-align: center;
  color: #c00;
  background: #FDF2F2;
  margin: 0 auto 30px;
  padding: 8px 10px;
  box-sizing: border-box;
}

.InfoBox--txt {
  margin-bottom: 0;
}

.InfoBox--center {
  text-align: center;
}


.InfoBox--txt span {
  float: right;
}

.InfoBox a {
  text-decoration: underline;
}

.InfoBox a:hover {
  opacity: 0.8;
}

.InfoBox .F-Red a {
  color: #c00;
}

.InfoBox--hr {
  position: relative;
  display: block;
  width: 100%;
  height: 1px;
  border: none;
  margin: 1rem 0px;
}

.InfoBox--hr::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #bf8a28;
}

@media screen and (max-width: 640px) {
  .InfoBox {
    padding: 20px 10px;
  }
  .InfoBox--title {
    font-size: 1rem;
  }
}

.order_link {
  margin-top: -60px;
  margin-bottom: 60px;
}

.order_link .base_width {
  text-align: center;
  background: #f5f5ec;
  padding: 30px;
  box-sizing: border-box;
}

.order_link--btn {
  display: block;
  max-width: 400px;
  height: 55px;
  line-height: 53px;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff!important;
  background: #b38225;
  border: 1px solid #b38225;
  margin: 0 auto 10px;
  transition: all 0.35s ease;
}

.order_link--btn:hover {
  color: #b38225!important;
  background: transparent;
  text-decoration: none!important;
}

.order_link p {
  font-size: 1rem;
}

.order-row {
  clear: both;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
}

.order-row__col {
  width: 48%;
  letter-spacing: 0.025em;
}

.order-row__ttl {
  font-weight: 700;
  border-bottom: 1px solid #ddd;
  margin-bottom: 10px;
}

.order-row a {
  font-size: 12px;
  letter-spacing: 0;
  word-break: break-all;
  text-decoration: underline;
}

.order-row a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 640px) {
  .order-row {
    padding: 2rem 1rem 0;
  }
  .order-row__col {
    width: 100%;
    margin-bottom: 30px;
  }
  .order-row__col:last-child {
    margin-bottom: 0;
  }
}

.Questions-Cat {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1140px;
  margin: 20px auto;
  padding: 0 40px;
}

@media screen and (max-width: 640px) {
  .Questions-Cat {
    padding: 0 1rem;
  }
}

.Questions-Cat li {
  width: 16%;
}

@media screen and (max-width: 640px) {
  .Questions-Cat li {
    width: 48%;
    margin-bottom: 10px;
  }
}

.Questions-Cat a {
  display: block;
  height: 45px;
  line-height: 45px;
  text-align: center;
  border: 1px solid #534838;
  transition: background 0.35s ease, color 0.35s ease;
}

.Questions-Cat a:hover {
  color: #fff;
  background: #534838;
}

.Question-Sec {
  text-align: left;
  border-bottom: 3px double #a9a39b;
  margin-bottom: 1px;
  padding: 60px 0;
}

@media screen and (max-width: 640px) {
  .Question-Sec {
    padding: 40px 0;
  }
}

.Question-Sec .inner {
  max-width: 1040px;
  width: 100%;
  margin: auto;
  padding: 0 40px;
  box-sizing: border-box;
}

@media screen and (max-width: 640px) {
  .Question-Sec .inner {
    padding: 0 1rem;
  }
}

.Question-Item__question {
  position: relative;
  border-bottom: 1px solid #ae7a17;
  position: relative;
  padding: 10px 30px 10px 0;
  color: #ae7a17;
  font-weight: bold;
  font-size: 124%;
  text-indent: -1.8em;
  padding-left: 2em;
  margin-bottom: 0;
  cursor: pointer;
}

.Question-Item__question:first-letter {
  font-size: 130%;
}

.Question-Item__question::before {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 200px;
  height: 3px;
  content: "";
  background: #ae7a17;
}

.Question-Item__question::after {
  content: '';
  width: 8px;
  height: 8px;
  border: 0px;
  border-bottom: solid 1px #ae7a17;
  border-right: solid 1px #ae7a17;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 28px;
  right: 10px;
  margin-top: -6px;
}

.is-active .Question-Item__question::after {
  transform: rotate(-135deg);
  margin-top: 0;
}

.Question-Item__answer {
  border-bottom: 1px solid #e5e5e5;
  padding: 20px 0;
}

.Relaxation-Banner:hover {
  opacity: 0.8;
}

.Popup-Box {
  display: none;
  width: 90%;
  max-width: 800px;
  position: absolute;
  background: #ffffff;
  padding: 24px 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999
}

.Popup-Box--l {
  max-width: 1100px;
  padding: 100px 50px 24px;
}

.Popup-Box .hidden {
  display: none
}

.Popup-Box .Close {
  width: 25px;
  height: 25px;
  position: absolute;
  right: 24px;
  top: 24px;
  cursor: pointer
}

.Popup-Box .Close:before {
  content: '';
  width: 100%;
  height: 2px;
  background: #534838;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  display: block;
  position: absolute;
  left: 0;
  top: 50%
}

.Popup-Box .Close:after {
  content: '';
  width: 100%;
  height: 2px;
  background: #534838;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  display: block;
  position: absolute;
  left: 0;
  top: 50%
}

.Popup-Box h2 {
  font-size: 200%;
  color: #534839;
  margin-bottom: 30px;
}

.Popup-Box h3 {
  background: url(../../Templates/Images/All/li4.png) left center no-repeat;
  border-bottom: 1px solid #ae7a17;
  position: relative;
  padding: 10px 10px 10px 28px;
  color: #ae7a17;
  font-weight: bold;
  font-size: 124%;
  margin-bottom: 20px;
  clear: both;
  text-align: left;
}

.Popup-Box h3::after {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 200px;
  height: 3px;
  content: "";
  background: #ae7a17;
}

.Popup-Box ul {
  text-align: left;
  margin-bottom: 30px;
}

.Popup-Box li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 10px;
}

.Popup-Box .Box {
  background: #f5f5ec;
  padding: 30px;
}

@media screen and (max-width: 640px) {
  .Popup-Box {
    padding: 70px 20px 20px;
  }
  .Popup-Box h2 {
    font-size: 138%;
  }
}

/* BLOG */

.l-wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1110px;
  width: 100%;
  margin: 0 auto;
  padding: 65px 50px 0;
  box-sizing: border-box;
}

.l-main {
  width: calc(100% - 220px);
  margin-bottom: 85px;
  padding-right: 60px;
  box-sizing: border-box;
}

.l-sub {
  width: 220px;
  margin-bottom: 85px;
  padding-top: 18px;
  box-sizing: border-box;
}

@media screen and (max-width: 960px) and (min-width: 641px) {
  .l-main {
    width: 100%;
    margin-bottom: 30px;
    padding-right: 0;
  }
  .l-sub {
    display: flex;
    width: 100%;
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 640px) {
  .l-wrapper {
    padding: 40px 1rem;
  }
  .l-main {
    width: 100%;
    margin-bottom: 30px;
    padding-right: 0;
  }
  .l-sub {
    display: block;
    width: 100%;
    margin-bottom: 0;
    padding-top: 0;
  }
}

.Blog--Title {
  font-size: 26px;
  font-weight: 700;
  text-align: left;
  letter-spacing: 0.05em;
  color: #534838;
  border-bottom: 3px double #a9a39b;
  padding-bottom: 20px;
}

.Blog--List {
  margin-bottom: 35px;
}

.Blog--Article {
  text-align: left;
  letter-spacing: 0.025em;
  border-bottom: 1px solid #ddd;
}

.Blog--Article a {
  display: flex;
  align-items: flex-start;
  padding: 26px 0 30px;
}

.Blog--Article:hover .Thumb img {
  transform: translate(-50%,-50%) scale(1.1);
}

.Blog--Article:hover .Body {
  opacity: 0.7;
}

.Blog--Article .Thumb {
  overflow: hidden;
  position: relative;
  width: 160px;
  border: 1px solid #ddd;
  box-sizing: border-box;
}

.Blog--Article .Thumb::before {
  content: '';
  display: block;
  padding-top: 100%;
}

.Blog--Article .Thumb img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%,-50%);
  transition: transform 0.5s;
}

.Blog--Article .Body {
  width: calc(100% - 160px);
  padding-left: 45px;
  box-sizing: border-box;
}

.Blog--Article .Date {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #ae7a17;
  margin-bottom: 8px;
}

.Blog--Article .Title {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #ae7a17;
  margin-bottom: 18px;
}

.Blog--Article .Excerpt {
  line-height: 1.9;
  font-size: 13px;
  color: #534838;
}

.Blog--Date {
  text-align: left;
  color: #ae7a17;
  padding: 10px 0;
}

.Blog--Content {
  text-align: left;
  letter-spacing: 0.025em;
  border-bottom: 1px solid #ccc;
  margin-bottom: 50px;
  padding: 20px 0 50px;
}

.Blog--Content p {
  margin-bottom: 20px;
}

.Blog--Content a {
  text-decoration: underline;
}

.Blog--Content .youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  margin-bottom: 20px;
}

.Blog--Content .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.Blog--Back {
  text-align: left;
  color: #ae7a17;
}

.Blog--Back a {
  color: #ae7a17;
}

.Blog--Back a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 640px) {
  .Blog--Title {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .Blog--Article .Thumb {
    width: 80px;
  }
  .Blog--Article .Body {
    width: calc(100% - 80px);
    padding-left: 20px;
  }
  .Blog--Article .Title {
    font-size: 16px;
    margin-bottom: 10px;
  }
}

.Pagination {
  text-align: center;
  margin: 1em 0;
}

.Pagination:after,
.Pagination ul:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

.Pagination ul {
  display: inline-block;
  margin: 0;
}

.Pagination li {
  float: left;
  list-style: none outside none;
  margin-left: 3px;
}

.Pagination li:first-child {
  margin-left: 0;
}

.Pagination li.active {
  border: 1px solid #524636;
  background-color: #524636;
  color: #fff;
  cursor: auto;
  padding: 10px 18px;
}

.Pagination li a {
  border: 1px solid #ddd;
  color: #524636;
  display: block;
  padding: 10px 18px;
  text-decoration: none;
}

.Pagination li a:hover {
  background-color: #524636;
  color: #fff;
  opacity: 0.8;
  -webkit-transition-duration: 500ms;
  transition-duration: 500ms;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}

@media screen and (max-width: 640px) {
  .Pagination {
    margin: 0;
  }
  .Pagination li.active, .Pagination li a {
    font-size: 12px;
    padding: 8px 14px;
  }
}

.Side--Title {
  border-bottom: 1px solid #ae7a17;
  position: relative;
  padding: 10px 10px 10px 0;
  color: #ae7a17;
  font-weight: bold;
  font-size: 124%;
  margin-bottom: 0;
  text-align: left;
}

.Side--Title::after {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100px;
  height: 3px;
  content: "";
  background: #ae7a17;
}

.Side--Box {
  margin-bottom: 40px;
}

.Side--List {
  text-align: left;
}

.Side--List .toggle {
  cursor: pointer
}

.Side--List .Item {
  position: relative;
  font-weight: 700;
  color: #ae7a17;
  border-bottom: 3px double #ddd;
  padding: 10px 0 10px 14px;
}

.Side--List .Item::before {
  content: '';
  position: absolute;
  top: 18px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5.2px;
  border-color: transparent transparent transparent #ae7917;
}

.Side--List a {
  color: #ae7a17;
}

.Side--List a:hover {
  opacity: 0.8;
}

.Archive {
  padding: 4px 0.8em;
}

.Archive li {
  position: relative;
  font-size: 13px;
  margin-bottom: 2px;
  padding-left: 14px;
}

.Archive li::before {
  content: '';
  position: absolute;
  top: 0.8em;
  left: 0;
  width: 5px;
  height: 5px;
  border: 0px;
  border-top: solid 1px #ae7a17;
  border-right: solid 1px #ae7a17;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -2px;
}

@media screen and (max-width: 960px) and (min-width: 641px) {
  .Side--Box {
    width: 220px;
    margin-right: 20px;
  }
}

@media screen and (max-width: 640px) {
  .Side--Box {
    margin-bottom: 20px;
  }
  .Side--Title {
    font-size: 100%;
  }
}


.bus-schedule {
  position: relative;
  background: #fff;
  padding: 5rem 0 7rem;
}

.bus-schedule__calendar-txt {
  font-size: 93% !important;
  margin-bottom: 2rem;
}

.bus-schedule__calendar-txt-color {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #ae7a17;
}

.ticket-calendar {
  width: 100%;
  max-width: 1000px;
  overflow-x: scroll;
  margin-bottom: 1.4rem;
}

.ticket-calendar::-webkit-scrollbar {
  display: none;
}

.ticket-calendar--nov {
  overflow: inherit;
}

.ticket-calendar__table {
  width: 1000px;
  text-align: center;
  table-layout: fixed;
}

.ticket-calendar--nov .ticket-calendar__table {
  width: auto;
}

.ticket-calendar__month {
  position: sticky;
  left: 0;
  width: 79px;
  font-size: 124% !important;
  font-weight: 700;
  color: #534838;
  background: #fff;
  z-index: 10;
}

.ticket-calendar__month span {
  font-size: 124% !important;
  margin-right: 0.2rem;
}

.ticket-calendar tr {
  background: #fff;
}

.ticket-calendar th {
  font-size: 11px;
  font-size: 1.1rem;
  padding: 0.4rem;
  text-align: center;
}

.ticket-calendar th:nth-child(2) {
  border-left: 1px solid #534838;
}

.ticket-calendar td {
  width: 31px;
  position: relative;
  font-size: 93% !important;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  vertical-align: top;
  text-align: center;
  padding: 0;
}

.ticket-calendar td:last-child {
  border-right: none;
}

.ticket-calendar td[data-visibility="hidden"] {
  visibility: hidden;
  border: none;
}

.ticket-calendar .num {
  position: absolute;
  top: 6px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

.ticket-calendar .plan {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1.4rem;
  color: #333!important;
  padding: 40px 0 10px;
}

.ticket-calendar .plan:hover {
  text-decoration: none!important;
  opacity: 0.7;
}

.ticket-calendar .plan-a {
  background: #fed;
}

.ticket-calendar .plan-b {
  background: #def;
}

.ticket-calendar .plan-c {
  background: #dee;
}

.ticket-calendar .plan-d {
  background: #edf;
}

.Pickup--Content p {
  margin-bottom: 20px;
}