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

file name	: common.css
author		 : Abilive
style info : 基本・共通設定
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
.container {
  width: 90%;
  max-width: 1200px;
  margin: auto;
}
@media only screen and (max-width: 1199px) {
  .container {
    width: 92.30769%;
  }
}

#ban_header, #ban_footer, .con_pagetitle, .topicpath {
  color: #3d2319;
  font-size: 16px;
  -webkit-text-size-adjust: none;
  line-height: 1.8;
  letter-spacing: 0.08em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 700;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_header, #ban_footer, .con_pagetitle, .topicpath {
    font-size: 15px;
  }
}
#ban_header *, #ban_footer *, .con_pagetitle *, .topicpath * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#ban_header img, #ban_footer img {
  -webkit-touch-callout: none;
  line-height: 1;
  max-width: 100%;
}

@media only screen and (min-width: 1200px) {
  body .view_tab-sp,
  body .view_tab {
    display: none !important;
  }
}
@media print {
  body .view_tab-sp,
  body .view_tab {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  body .view_sp {
    display: none !important;
  }
}
@media only screen and (max-width: 1199px) {
  body .view_pc {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body .view_pc-tab,
  body .view_tab {
    display: none !important;
  }
}

.over {
  -moz-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  -webkit-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.over:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

#ban_header {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 50;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #ban_header {
    width: 95.83333%;
  }
}
#ban_header .logo {
  width: 8.90625%;
  margin: 1.92708% 1.04167% 0 1.92708%;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_header .logo {
    width: 14.25%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_header .logo {
    width: 30.25641%;
    margin: 3.58974% 0 0 4.48718%;
  }
}
#ban_header h1 {
  max-width: 340px;
  font-weight: normal;
  font-size: 75%;
  line-height: 1.6;
  color: #ffffff;
  margin: 10px 0 0 1.92708%;
}
@media only screen and (max-width: 767px) {
  #ban_header h1 {
    width: 40.25641%;
    margin: 0.5em 0 0 4.48718%;
    font-size: 63%;
    line-height: 1.25;
  }
}
#ban_header nav {
  max-width: 1090px;
  margin-left: auto;
  width: 76.08696%;
  position: absolute;
  top: 0;
  right: 0;
  display: -webkit-flex;
  display: flex;
}
@media only screen and (min-width: 984px) and (max-width: 1199px) {
  #ban_header nav {
    width: 25%;
    max-width: 260px;
  }
}
@media only screen and (max-width: 983px) {
  #ban_header nav {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 36.15385%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 983px) {
  #ban_header nav {
    width: 220px;
  }
}
#ban_header nav .gnav {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  width: 76.14679%;
  padding-right: 3.66972%;
}
#ban_header nav .gnav li a {
  color: #fff;
  display: block;
  text-decoration: none;
  text-align: center;
  padding-top: 1.4em;
  font-size: 113%;
  position: relative;
  line-height: 1;
}
#ban_header nav .gnav li a:before {
  content: '';
  width: 1px;
  height: 0;
  display: block;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 0;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -moz-transition: height 0.6s ease-out;
  -o-transition: height 0.6s ease-out;
  -webkit-transition: height 0.6s ease-out;
  transition: height 0.6s ease-out;
}
#ban_header nav .gnav li.active a:before, #ban_header nav .gnav li:hover a:before {
  height: 1.6em;
}
#ban_header nav .btn_plan {
  width: 23.85321%;
  -moz-border-radius: 0 0 0 10px;
  -webkit-border-radius: 0;
  border-radius: 0 0 0 10px;
  overflow: hidden;
}
@media only screen and (max-width: 1199px) {
  #ban_header nav .btn_plan {
    width: 100%;
  }
}
#ban_header nav .btn_plan a {
  display: block;
  text-decoration: none;
  padding: .8em 0 1.6em;
  text-align: center;
  background: #8a9959;
}
@media only screen and (max-width: 767px) {
  #ban_header nav .btn_plan a {
    padding: .4em 0 0.8em;
  }
}
#ban_header nav .btn_plan a .en {
  display: block;
  color: rgba(255, 255, 255, 0.5);
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  letter-spacing: 0.08em;
  line-height: 1;
  font-weight: 700;
  font-size: 113%;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_header nav .btn_plan a .en {
    font-size: 107%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_header nav .btn_plan a .en {
    font-size: 100%;
  }
}
#ban_header nav .btn_plan a .jp {
  display: block;
  color: #fff;
  font-size: 169%;
  letter-spacing: 0.08em;
  position: relative;
  line-height: 1.3;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_header nav .btn_plan a .jp {
    font-size: 150%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_header nav .btn_plan a .jp {
    font-size: 115%;
  }
}
#ban_header nav .btn_plan a .jp:after {
  content: '';
  width: 22.30769%;
  height: 0.2em;
  background: url(../images/footer/line_res-sp.png) no-repeat center/100% auto;
  display: block;
  margin: 0.5em auto 0;
}
#ban_header nav .obj_langlist {
  background: rgba(255, 255, 255, 0.9);
}
@media only screen and (min-width: 984px) {
  #ban_header nav .obj_langlist {
    position: absolute;
    right: 26.6055%;
    bottom: 0.2em;
  }
}
@media only screen and (min-width: 984px) and (max-width: 1199px) {
  #ban_header nav .obj_langlist {
    right: 105%;
    bottom: 1em;
  }
}
@media only screen and (max-width: 983px) {
  #ban_header nav .obj_langlist {
    position: relative;
    margin: 0.5em auto 0;
  }
}
@media only screen and (max-width: 767px) {
  #ban_header nav .obj_langlist {
    font-size: 86%;
  }
}
#ban_header .txt_tel {
  line-height: 1;
  margin: 10px 0 0 1.92708%;
  color: #fff;
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  font-size: 119%;
}
@media only screen and (max-width: 767px) {
  #ban_header .txt_tel {
    font-size: 100%;
  }
}
#ban_header .txt_tel a, #ban_header .txt_tel span.tel {
  font-size: 169%;
  color: #fff;
}

.topicpath {
  width: 91.66667%;
  margin: 10px auto 100px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  margin: 10px auto 100px;
}
@media only screen and (max-width: 767px) {
  .topicpath {
    margin: 10px auto 3em;
  }
}
.topicpath li:before {
  content: '';
  width: 1.125em;
  height: 2px;
  display: inline-block;
  margin: 0 0 0 0.5em;
  vertical-align: middle;
  background: #8a9959;
}
@media only screen and (max-width: 767px) {
  .topicpath li:before {
    width: 0.9em;
    margin-right: 0.2em;
  }
}
.topicpath li:last-child {
  white-space: nowrap;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
}
.topicpath li:first-child:before {
  content: none;
}
@media only screen and (max-width: 983px) {
  .topicpath li:nth-child(3) {
    flex: 1;
  }
}
.topicpath li a {
  display: inline;
  color: #3d2319;
}

.con_pagetitle {
  position: relative;
  width: 100%;
}
.con_pagetitle .photo {
  width: 95.83333%;
  margin-left: auto;
  overflow: hidden;
  -moz-border-radius: 0 0 0 10px;
  -webkit-border-radius: 0;
  border-radius: 0 0 0 10px;
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .con_pagetitle .photo {
    height: 380px;
  }
}
@media print {
  .con_pagetitle .photo {
    height: 380px;
  }
}
@media only screen and (min-width: 984px) and (max-width: 1199px) {
  .con_pagetitle .photo {
    overflow: hidden;
  }
  .con_pagetitle .photo img {
    position: relative;
    width: 120%;
    max-width: none;
    margin-left: -10%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 983px) {
  .con_pagetitle .photo {
    overflow: hidden;
  }
  .con_pagetitle .photo img {
    position: relative;
    width: 140%;
    max-width: none;
    margin-left: -20%;
  }
}
@media only screen and (max-width: 767px) {
  .con_pagetitle .photo {
    overflow: hidden;
    width: 100%;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
  }
  .con_pagetitle .photo img {
    position: relative;
    width: 150%;
    max-width: none;
    margin-left: -25%;
  }
}
.con_pagetitle .photo:before {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url(../images/header/bg_filter.png) repeat 0 0;
  z-index: 1;
}
.con_pagetitle .photo:after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: black;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.2) 100%);
  z-index: 2;
}
@media only screen and (min-width: 1200px) {
  .con_pagetitle .photo img {
    position: absolute;
    right: 0;
    left: 0;
    top: -100px;
  }
}
@media print {
  .con_pagetitle .photo img {
    position: absolute;
    right: 0;
    left: 0;
    top: -100px;
  }
}
.con_pagetitle h2 {
  padding: 1.5625% 8.33333%;
  background: #fff;
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 48.27586%;
  z-index: 3;
  -moz-border-radius: 0 10px 10px 0;
  -webkit-border-radius: 0;
  border-radius: 0 10px 10px 0;
  -moz-box-shadow: 0 0 30px rgba(214, 217, 187, 0.4);
  -webkit-box-shadow: 0 0 30px rgba(214, 217, 187, 0.4);
  box-shadow: 0 0 30px rgba(214, 217, 187, 0.4);
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_pagetitle h2 {
    padding: 2.86458% 8.33333%;
  }
}
@media only screen and (max-width: 767px) {
  .con_pagetitle h2 {
    width: 100%;
    position: relative;
    top: auto;
    left: 0;
    padding: 1em;
  }
}
.con_pagetitle h2:before {
  content: "";
  width: 5.4em;
  height: 7.6em;
  display: block;
  position: absolute;
  top: 42.5%;
  right: 1.5em;
  background: url(../images/common/bg_dec04.png) no-repeat center/contain;
}
@media only screen and (max-width: 1199px) {
  .con_pagetitle h2:before {
    width: 4.32em;
    height: 6.08em;
  }
}
@media only screen and (max-width: 767px) {
  .con_pagetitle h2:before {
    width: 3.456em;
    height: 4.864em;
    right: 1em;
    top: 35%;
  }
}
.con_pagetitle h2 .jp {
  display: block;
  font-size: 263%;
  letter-spacing: 0.2em;
  line-height: 1.3;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_pagetitle h2 .jp {
    font-size: 213%;
  }
}
@media only screen and (max-width: 767px) {
  .con_pagetitle h2 .jp {
    font-size: 179%;
  }
}
.con_pagetitle h2 .jp:before {
  content: '';
  width: 0.9em;
  height: 0.8em;
  display: inline-block;
  margin-right: 0.5em;
  background: url(../images/common/bg_dec02.png) no-repeat center/contain;
}
.con_pagetitle h2 .en {
  display: block;
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  letter-spacing: 0.28em;
  font-size: 125%;
  line-height: 2;
  color: #8a9959;
  padding-left: 3em;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .con_pagetitle h2 .en {
    font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_pagetitle h2 .en {
    font-size: 93%;
  }
}

#ban_footer {
  padding-bottom: 4em;
  margin-top: 150px;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_footer {
    margin-top: 12.5%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_footer {
    margin-top: 5em;
  }
}
@media only screen and (min-width: 768px) {
  #ban_footer {
    padding-bottom: 0;
  }
}
#ban_footer .con_foo {
  background: #fff;
  padding: 80px 0 60px;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_footer .con_foo {
    padding: 6.66667% 0 5%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo {
    padding: 2.5em 0 3em;
  }
}
#ban_footer .con_foo .box_outro {
  width: 576px;
  position: relative;
  margin: auto;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #ban_footer .con_foo .box_outro {
    width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_outro {
    width: 73.58974%;
  }
}
#ban_footer .con_foo .box_outro .img {
  width: 74.47917%;
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_outro .img {
    width: 74.73868%;
  }
}
#ban_footer .con_foo .box_outro .st {
  width: 26.21528%;
  position: absolute;
  z-index: 1;
  left: 36.45833%;
  bottom: 4.70914%;
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_outro .st {
    width: 36.58537%;
    left: 32.05575%;
    bottom: -10.55556%;
  }
}
#ban_footer .con_foo .box_foo {
  max-width: 1570px;
  width: 92.30769%;
  margin: 70px auto 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media only screen and (max-width: 1199px) {
  #ban_footer .con_foo .box_foo {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_foo {
    margin-top: 6em;
  }
}
@media only screen and (min-width: 1600px) {
  #ban_footer .con_foo .box_foo .hotel_infomation {
    margin-left: 4.14013%;
  }
}
@media only screen and (max-width: 1199px) {
  #ban_footer .con_foo .box_foo .hotel_infomation {
    text-align: center;
  }
}
#ban_footer .con_foo .box_foo .hotel_infomation .logo {
  width: 182px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1199px) {
  #ban_footer .con_foo .box_foo .hotel_infomation .logo {
    margin: 0 auto 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_foo .hotel_infomation .logo {
    width: 46.38889%;
  }
}
#ban_footer .con_foo .box_foo .hotel_infomation address {
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_foo .hotel_infomation address {
    letter-spacing: 0;
  }
}
#ban_footer .con_foo .box_foo .hotel_infomation .txt_tel {
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  font-size: 119%;
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_foo .hotel_infomation .txt_tel {
    font-size: 100%;
  }
}
#ban_footer .con_foo .box_foo .hotel_infomation .txt_tel a, #ban_footer .con_foo .box_foo .hotel_infomation .txt_tel span.tel {
  font-size: 169%;
  color: #3d2319;
}
#ban_footer .con_foo .box_foo .hotel_infomation .txt_fax {
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  font-size: 125%;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  #ban_footer .con_foo .box_foo .hotel_infomation .txt_fax {
    font-size: 108%;
  }
}
#ban_footer .con_foo .box_foo .sitemap {
  width: 885px;
}
@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  #ban_footer .con_foo .box_foo .sitemap {
    width: 710px;
  }
}
@media only screen and (max-width: 1199px) {
  #ban_footer .con_foo .box_foo .sitemap {
    margin: 2em auto 0;
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  #ban_footer .con_foo .box_foo .sitemap ul:nth-child(1) {
    width: 27.68362%;
  }
  #ban_footer .con_foo .box_foo .sitemap ul:nth-child(2) {
    width: 32.31638%;
  }
  #ban_footer .con_foo .box_foo .sitemap ul:nth-child(3) {
    width: 40%;
    padding-right: 0;
  }
}
#ban_footer .con_foo .box_foo .sitemap ul li a {
  color: #3d2319;
}
#ban_footer .con_foo .box_foo .sitemap ul li a:hover {
  color: #8a9959;
}
#ban_footer .con_foo .box_foo .sitemap ul li.sub {
  line-height: 1.4;
  margin-top: 0;
}
#ban_footer #copyright {
  margin: 1.5em auto;
  text-align: center;
  color: #8a9959;
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
}

#fix_sns {
  position: fixed;
  left: 0;
  bottom: 30px;
  width: 80px;
  display: block;
  z-index: 20;
}
#fix_sns .follow_us_list {
  display: block;
  text-align: center;
  padding-top: 56.25%;
}
#fix_sns .follow_us_list .st {
  width: 1em;
  margin: auto;
  writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  -moz-text-orientation: upright;
  -ms-text-orientation: upright;
  text-orientation: upright;
  text-align: left;
  display: inline-block;
  font-feature-settings: normal;
  -webkit-text-orientation: mixed;
  -moz-text-orientation: mixed;
  -ms-text-orientation: mixed;
  text-orientation: mixed;
  line-height: 1;
  text-shadow: 1px 1px 0 #fff;
  font-size: 113%;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #fix_sns .follow_us_list .st {
    font-size: 100%;
  }
}
#fix_sns .follow_us_list .st:after {
  width: 1px;
  height: 2em;
  margin: .8em auto 0;
  -moz-transform: translateX(-0.4em);
  -ms-transform: translateX(-0.4em);
  -webkit-transform: translateX(-0.4em);
  transform: translateX(-0.4em);
}
.firefox #fix_sns .follow_us_list .st:after {
  -moz-transform: translateX(-0.1em);
  -ms-transform: translateX(-0.1em);
  -webkit-transform: translateX(-0.1em);
  transform: translateX(-0.1em);
}
#fix_sns .follow_us_list p:not(.st) {
  margin: 1em auto 0;
}
#fix_sns .follow_us_list p a:before {
  font-size: 132%;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  #fix_sns .follow_us_list p a:before {
    font-size: 107%;
  }
}

.sitemap {
  display: -webkit-flex;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .sitemap {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.sitemap ul {
  border-left: 1px solid #cecece;
  padding: 0 1.5em;
}
@media only screen and (max-width: 767px) {
  .sitemap ul {
    width: 50%;
    padding: 0 0.5em;
    margin-bottom: 1em;
  }
  .sitemap ul:nth-child(3) {
    width: 100%;
  }
}
.sitemap ul li {
  margin-top: 0.5em;
}
.sitemap ul li:nth-child(1) {
  margin-top: 0;
}
.sitemap ul li a {
  display: inline-block;
  text-decoration: none;
  line-height: 1.25;
  -moz-transition: color 0.8s ease-out;
  -o-transition: color 0.8s ease-out;
  -webkit-transition: color 0.8s ease-out;
  transition: color 0.8s ease-out;
}
@media only screen and (min-width: 1200px) and (max-width: 1439px) {
  .sitemap ul li a {
    font-size: 88%;
  }
}
@media only screen and (max-width: 767px) {
  .sitemap ul li a {
    font-size: 93%;
  }
}
.sitemap ul li a:hover {
  color: #8a9959;
}
.sitemap ul li.sub:before {
  content: '…';
  color: #8a9959;
  margin-right: 0.5em;
  vertical-align: -0.25em;
  display: inline-block;
  line-height: 1;
}
.sitemap ul li.sub a {
  vertical-align: middle;
  width: calc(100% - 2em);
}
.sitemap ul li.sub2:before {
  vertical-align: 0.25em;
}
.sitemap ul li.res a {
  color: #8a9959;
}
.sitemap ul li.bl:after {
  content: "";
  margin-left: .3em;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  color: #8a9959;
  font-size: 88%;
  margin-left: .5em;
}

#fixnav-sp {
  position: fixed;
  top: -100%;
  left: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
  -moz-transition: top 0.8s ease-out;
  -o-transition: top 0.8s ease-out;
  -webkit-transition: top 0.8s ease-out;
  transition: top 0.8s ease-out;
}
.fix #fixnav-sp {
  top: 0;
}
#fixnav-sp .logo {
  margin: 0.6em auto 0.6em 4.48718%;
  width: 29.87179%;
}
#fixnav-sp .logo a {
  display: block;
}
#fixnav-sp .btn_tel {
  margin-right: 6.15385%;
}
#fixnav-sp .btn_tel a {
  display: block;
  text-decoration: none;
}
#fixnav-sp .btn_tel a:before {
  content: "";
  margin-right: .3em;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 174%;
  line-height: 1;
  color: #8a9959;
}
#fixnav-sp .obj_menubtn {
  margin-right: 5.64103%;
  width: 9.61538%;
}
#fixnav-sp .obj_menubtn .inner {
  width: 100%;
  height: 1.6em;
  display: block;
  margin: auto;
  position: relative;
  line-height: 1;
}
#fixnav-sp .obj_menubtn .inner span {
  position: absolute;
  width: 100%;
  height: 3px;
  background: #8a9959;
  left: 0;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -webkit-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
#fixnav-sp .obj_menubtn .inner span:nth-of-type(1) {
  top: 0;
}
#fixnav-sp .obj_menubtn .inner span:nth-of-type(2) {
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
#fixnav-sp .obj_menubtn .inner span:nth-of-type(3) {
  top: 100%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.open #fixnav-sp .obj_menubtn .inner span:nth-of-type(1) {
  top: 50%;
  -moz-transform: translateY(-50%) rotate(30deg);
  -ms-transform: translateY(-50%) rotate(30deg);
  -webkit-transform: translateY(-50%) rotate(30deg);
  transform: translateY(-50%) rotate(30deg);
}
.open #fixnav-sp .obj_menubtn .inner span:nth-of-type(2) {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.open #fixnav-sp .obj_menubtn .inner span:nth-of-type(3) {
  top: 50%;
  -moz-transform: translateY(-50%) rotate(-30deg);
  -ms-transform: translateY(-50%) rotate(-30deg);
  -webkit-transform: translateY(-50%) rotate(-30deg);
  transform: translateY(-50%) rotate(-30deg);
}

#fixres-sp {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
#fixres-sp a {
  display: block;
  text-decoration: none;
  padding: 1em 0 0.5em;
  background: url(../images/footer/bg_res-sp.png) no-repeat center top/cover;
  text-align: center;
}
#fixres-sp a span {
  display: block;
  line-height: 1.5;
  text-shadow: 0 0 1em rgba(214, 217, 187, 0.4);
}
#fixres-sp a .en {
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
  font-weight: bold;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.2;
  font-size: 87%;
}
#fixres-sp a .jp {
  position: relative;
  color: #fff;
  line-height: 1.5;
  font-size: 108%;
}
#fixres-sp a .jp:after {
  content: '';
  width: 14.23077%;
  height: 0.2em;
  background: url(../images/footer/line_res-sp.png) no-repeat center/cover;
  display: block;
  margin: 0.5em auto 0;
}

.follow_us_list {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
.follow_us_list .st {
  font-size: 138%;
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .follow_us_list .st {
    font-size: 125%;
  }
}
@media only screen and (max-width: 767px) {
  .follow_us_list .st {
    font-size: 115%;
  }
}
.follow_us_list .st:after {
  content: '';
  width: 2em;
  height: 1px;
  display: inline-block;
  vertical-align: middle;
  background: #cecece;
  margin-left: 0.5em;
}
.follow_us_list p:not(.st) {
  margin-left: 0.8em;
}
.follow_us_list p a {
  line-height: 1;
  display: inline-block;
  text-decoration: none;
  color: #8a9959;
}
.mouse .follow_us_list p a {
  -moz-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  -webkit-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.mouse .follow_us_list p a:hover, .touch .follow_us_list p a.touchstart {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.touch .follow_us_list p a {
  -webkit-tap-highlight-color: transparent;
}
.touch .follow_us_list p a.touchend {
  -moz-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  -webkit-transition-delay: 200ms;
  transition-delay: 200ms;
}
.follow_us_list p a:before {
  font-size: 188%;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .follow_us_list p a:before {
    font-size: 169%;
  }
}
@media only screen and (max-width: 767px) {
  .follow_us_list p a:before {
    font-size: 143%;
  }
}
.follow_us_list .fb a:before {
  font-family: 'Font Awesome 5 Brands';
  content: "";
}
.follow_us_list .insta a:before {
  font-family: 'Font Awesome 5 Brands';
  content: "";
}
.follow_us_list .tw a:before {
  font-family: 'Font Awesome 5 Brands';
  content: "";
}
.follow_us_list .yt a:before {
  font-family: 'Font Awesome 5 Brands';
  content: "";
}
.follow_us_list .shop a:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "";
}

.obj_langlist {
  width: 165px;
  position: relative;
  font-size: 113%;
  font-family: 'Crimson Pro', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: normal;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .obj_langlist {
    font-size: 107%;
  }
}
@media only screen and (max-width: 767px) {
  .obj_langlist {
    font-size: 100%;
  }
}
@media only screen and (min-width: 1200px) {
  .obj_langlist:hover .lang_list li {
    visibility: visible;
    overflow: visible;
    height: 2em;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 767px) {
  .obj_langlist:hover .lang_list li {
    height: 2.8em;
  }
}
@media only screen and (min-width: 1200px) {
  .obj_langlist:hover .lang_list li a {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@media print {
  .obj_langlist:hover .lang_list li {
    visibility: visible;
    overflow: visible;
    height: 2em;
  }
  .obj_langlist:hover .lang_list li a {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@media only screen and (max-width: 1199px) {
  .obj_langlist.active .lang_list li {
    visibility: visible;
    overflow: visible;
    height: 2em;
  }
}
@media only screen and (max-width: 1199px) and (max-width: 767px) {
  .obj_langlist.active .lang_list li {
    height: 2.8em;
  }
}
@media only screen and (max-width: 1199px) {
  .obj_langlist.active .lang_list li a {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@media only screen and (max-width: 767px) {
  .obj_langlist {
    margin: 1.5em auto 0;
    width: 92%;
  }
}
.obj_langlist .st_lang {
  padding: .1em 1.5em .1em .5em;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .obj_langlist .st_lang {
    padding: .5em 1.5em .5em .5em;
  }
}
.obj_langlist .st_lang:after {
  content: "";
  margin-left: .3em;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  color: #8a9959;
  font-size: 78%;
  position: absolute;
  top: 50%;
  right: 0.5em;
  line-height: 1;
  margin-left: 0;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.obj_langlist .lang_list {
  font-size: 84%;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 50;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .obj_langlist .lang_list {
    font-size: 86%;
  }
}
.obj_langlist .lang_list li {
  border-top: 1px solid rgba(138, 153, 89, 0.8);
  visibility: hidden;
  overflow: hidden;
  width: 100%;
  height: 0;
  -moz-transition: height 0.4s ease-out, visibility 0.4s ease-out;
  -o-transition: height 0.4s ease-out, visibility 0.4s ease-out;
  -webkit-transition: height 0.4s ease-out, visibility 0.4s ease-out;
  transition: height 0.4s ease-out, visibility 0.4s ease-out;
}
.obj_langlist .lang_list li a {
  color: #3d2319;
  display: block;
  text-decoration: none;
  padding: .1em 0.5em;
  background: #fff;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transition: opacity 0.8s ease-out;
  -o-transition: opacity 0.8s ease-out;
  -webkit-transition: opacity 0.8s ease-out;
  transition: opacity 0.8s ease-out;
}
.mouse .obj_langlist .lang_list li a {
  -moz-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  -webkit-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.mouse .obj_langlist .lang_list li a:hover, .touch .obj_langlist .lang_list li a.touchstart {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.touch .obj_langlist .lang_list li a {
  -webkit-tap-highlight-color: transparent;
}
.touch .obj_langlist .lang_list li a.touchend {
  -moz-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  -webkit-transition-delay: 200ms;
  transition-delay: 200ms;
}
@media only screen and (max-width: 767px) {
  .obj_langlist .lang_list li a {
    padding: .5em;
  }
}
