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

 file name  : homepage.css
 author     : Ability Consultant
 style info : トップページ
=================================================================== */

.con_plan .box_plan {
  max-width: 1260px;
  margin: auto;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plan {
    width: 95%;
  }
}

/* -----------------------------------------------------------
	共通
----------------------------------------------------------- */
.bwidth {
  max-width: 1260px;
  margin: 0 auto;
}

.view_sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .view_sp {
    display: block;
  }
}

@media only screen and (max-width: 767px) {
  .view_pc {
    display: none;
  }
}

.clear:after {
  content: "";
  display: table;
  clear: both;
}

.scale1320 {
  -moz-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  overflow: hidden;
}
@media only screen and (max-width: 1280px) {
  .scale1320 {
    font-size: 120%;
  }
}
@media print {
  .scale1320 {
    font-size: 120%;
  }
}
.ie8 .scale1320 {
  font-size: 120%;
}
@media only screen and (max-width: 767px) {
  .scale1320 {
    font-size: 100%;
  }
}

.scale1360 {
  -moz-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  overflow: hidden;
}
@media only screen and (max-width: 1360px) {
  .scale1360 {
    padding: 0 2%;
  }
}
@media print {
  .scale1360 {
    padding: 0 2%;
  }
}
.ie8 .scale1360 {
  padding: 0 2%;
}
@media only screen and (max-width: 1280px) {
  .scale1360 {
    font-size: 120%;
  }
}
@media print {
  .scale1360 {
    font-size: 120%;
  }
}
.ie8 .scale1360 {
  font-size: 120%;
}
@media only screen and (max-width: 767px) {
  .scale1360 {
    font-size: 100%;
  }
}

.scale1500 {
  min-width: 1500px;
  -moz-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  overflow: hidden;
}
@media only screen and (max-width: 1280px) {
  .scale1500 {
    font-size: 120%;
  }
}
@media print {
  .scale1500 {
    font-size: 120%;
  }
}
.ie8 .scale1500 {
  font-size: 120%;
}
@media only screen and (max-width: 767px) {
  .scale1500 {
    font-size: 100%;
    min-width: 0;
  }
}

.st_md {
  text-align: center;
  margin: 0 0 35px;
  font-weight: normal;
  font-size: 278%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
}
@media only screen and (max-width: 767px) {
  .st_md {
    font-size: 189%;
    margin-bottom: 15px;
  }
}
.st_md span {
  display: inline-block;
  font-weight: normal;
  position: relative;
}
.st_md span:before {
  content: '';
  position: absolute;
  top: -10px;
  left: -70px;
  width: 165px;
  height: 164px;
  background-size: contain;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .st_md span:before {
    top: -25%;
    width: 40%;
    left: -15%;
  }
}

@media only screen and (max-width: 767px) {
  .st_md.st_plan span:before {
    top: -25%;
    width: 100%;
    left: -45%;
    background: transparent url(../images/ic_flower.png) no-repeat center center;
  }
}

@media only screen and (max-width: 767px) {
  .st_md.st_onsen .main:before {
    top: -135%;
    width: 100%;
    left: -25%;
    background: transparent url(../images/ic_flower.png) no-repeat center center;
  }
}

.st_md span em {
  display: inline-block;
  line-height: 100%;
  padding: 0 10px;
}
.st_md span em.small {
  margin: 0 0 10px;
  font-size: 40%;
  position: relative;
  margin-bottom: -1em;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.st_md span em.small:after {
  content: '';
  position: absolute;
  width: 70px;
  height: 1px;
  background: #aba0a0;
  top: 50%;
  right: -70px;
}

.tategaki {
  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;
}
@media only screen and (max-width: 767px) {
  .tategaki {
    writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    -moz-writing-mode: horizontal-tb;
    -o-writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    -webkit-text-orientation: upright;
    -moz-text-orientation: upright;
    -ms-text-orientation: upright;
    text-orientation: upright;
    text-align: left;
    display: block;
  }
}

#header {
  position: fixed;
  bottom: 1em;
  right: 3%;
  z-index: 200;
}

.item_rsv a {
  display: block;
}
.item_rsv a:hover {
  transition: all 1.0s;
  opacity: 0.7;
}
@media only screen and (max-width: 767px) {
  .item_rsv {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .con_header {
    display: none;
  }
}
.con_header li {
  display: block;
  line-height: 0;
  margin: 0 0 30px;
}
@media only screen and (max-width: 1280px) {
  .con_header li {
    margin-bottom: 20px;
  }
}
@media print {
  .con_header li {
    margin-bottom: 20px;
  }
}
.ie8 .con_header li {
  margin-bottom: 20px;
}
.con_header li a {
  width: 20px;
  height: 20px;
  border: 2px solid #690033;
  border-radius: 50%;
  text-decoration: none;
  margin: auto;
}
.con_header li a:hover, .con_header li a.active {
  background: #690033;
}
.con_header li a:hover i, .con_header li a.active i {
  display: block;
  border: none;
  font-size: 45px;
  transform: rotate(-40deg);
  top: -7px;
  left: -14px;
}
.con_header li a i {
  display: none;
  font-size: 20px;
  color: #690033;
  position: relative;
  border: 2px solid #690033;
}
@media only screen and (max-width: 1280px) {
  .con_header li a img {
    width: 100%;
  }
}
@media print {
  .con_header li a img {
    width: 100%;
  }
}
.ie8 .con_header li a img {
  width: 100%;
}
.con_header .item_rsv {
  background: url(../images/bg_red_flower.png);
  font-weight: normal;
  font-size: 139%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  line-height: 1;
  width: 128px;
  height: 122px;
  text-align: center;
  color: #fff;
  padding-top: 36%;
  margin-top: 6em;
}
.con_header .item_rsv a {
  color: #fff;
  text-decoration: none;
}
.con_header .item_rsv a:hover {
  color: #fff;
}

@media print {
  .con_header li {
    margin-bottom: 20px;
  }
}
.ie8 .con_header li {
  margin-bottom: 20px;
}

.con_header li a {
  display: block;
}

.con_header li a:hover {
  opacity: .7;
}

/*----------------------------------------------------
	.con_mainslide
----------------------------------------------------*/
.con_mainslide {
  overflow: hidden;
  position: relative;
}
.con_mainslide .slick-dots {
  position: absolute;
  width: 100%;
  bottom: 30%;
  left: 0;
  text-align: center;
  line-height: 0;
}
@media only screen and (max-width: 767px) {
  .con_mainslide .slick-dots {
    bottom: 10%;
  }
}
.con_mainslide .slick-dots li {
  display: inline-block;
  line-height: 0;
  margin: 0 5px !important;
  width: 28px;
  height: 2px;
}
.con_mainslide .slick-dots li button {
  cursor: pointer;
  width: 28px;
  height: 2px;
  font-size: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.6);
}
.con_mainslide .slick-dots li:hover button, .con_mainslide .slick-dots li.slick-active button {
  background: #690033;
}
.con_mainslide .slick-dots li span {
  background-image: none !important;
}
.con_mainslide .box_wrap .logo {
  position: absolute;
  padding-top: 3.5%;
  left: 0;
  top: 0;
  text-align: center;
  z-index: 2;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_wrap .logo {
    padding-top: 10px;
  }
  .con_mainslide .box_wrap .logo img {
    width: 60px;
  }
}
.con_mainslide .box_wrap h2 {
  width: 100%;
  position: absolute;
  z-index: 2;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  overflow: hidden;
  text-align: center;
}
.con_mainslide .box_wrap h2 img {
  max-width: 80%;
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_wrap h2 img {
    max-width: 90%;
  }
}
.con_mainslide .box_wrap h2 span {
  display: inline-block;
}
.con_mainslide .box_slide .slide {
  background-size: cover !important;
  background-position: center;
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide {
    height: 500px !important;
  }
}
.con_mainslide .box_slide .slide.img_01 {
  background: url(../images/img_sld_1.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_01 {
    background: url(../images/img_sld_1-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_01 {
    background: url(../images/img_sld_1-sp.jpg) no-repeat;
  }
}
.con_mainslide .box_slide .slide.img_02 {
  background: url(../images/img_sld_2.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_02 {
    background: url(../images/img_sld_2-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_02 {
    background: url(../images/img_sld_2-sp.jpg) no-repeat;
  }
}
.con_mainslide .box_slide .slide.img_03 {
  background: url(../images/img_sld_3.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_03 {
    background: url(../images/img_sld_3-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_03 {
    background: url(../images/img_sld_3-sp.jpg) no-repeat;
  }
}
.con_mainslide .box_slide .slide.img_04 {
  background: url(../images/img_sld_4.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_04 {
    background: url(../images/img_sld_4-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_04 {
    background: url(../images/img_sld_4-sp.jpg) no-repeat;
  }
}
.con_mainslide .box_slide .slide.img_05 {
  background: url(../images/img_sld_5.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_05 {
    background: url(../images/img_sld_5-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_05 {
    background: url(../images/img_sld_5-sp.jpg) no-repeat;
  }
}
.con_mainslide .box_slide .slide.img_06 {
  background: url(../images/img_sld_6.jpg) no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_mainslide .box_slide .slide.img_06 {
    background: url(../images/img_sld_6-sp.jpg) no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  .con_mainslide .box_slide .slide.img_06 {
    background: url(../images/img_sld_6-sp.jpg) no-repeat;
  }
}
.con_mainslide p.btn_scroll {
  position: absolute;
  z-index: 3;
  bottom: 50px;
  left: 0;
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .con_mainslide p.btn_scroll {
    display: none;
  }
}

/*----------------------------------------------------
	.con_intro
----------------------------------------------------*/
.con_intro .box_intro1 {
  background: #fff7df;
  padding: 2.8% 0 4.2%;
  position: relative;
  overflow: hidden;
}
.con_intro .box_intro1::before {
  content: '';
  position: absolute;
  top: -8.4em;
  left: 0;
  width: 731px;
  height: 538px;
  background: url(../images/bg_intro1.png) top left no-repeat;
}
.con_intro .box_intro1::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: .5em;
  width: 404px;
  height: 354px;
  background: url(../images/bg_intro2.png) top left no-repeat;
  z-index: 0;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro1 {
    padding-top: 30px;
    padding-bottom: 40px;
    background-image: none;
  }
  .con_intro .box_intro1::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: .5em;
    width: 404px;
    height: 354px;
    background: none;
  }
}
.con_intro .box_intro1 .box_intro {
  text-align: center;
  position: relative;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro1 .box_intro {
    padding: 0 2.5%;
  }
}
.con_intro .box_intro1 .box_intro .st_md {
  font-size: 334%;
  color: #690033;
  margin: 0 0 .4em;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro1 .box_intro .st_md {
    font-size: 189%;
  }
}
.con_intro .box_intro1 .box_intro .txt {
  text-align: left;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro1 .box_intro .txt {
    line-height: 1.8;
  }
}
.con_intro .box_intro2 {
  background: url(../images/bg_intro.png) top left repeat;
  padding-bottom: 6em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_intro2 {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 {
    padding: 30px 0;
  }
}
.con_intro .box_intro2 .con_hamo::before {
  content: '';
  position: absolute;
  width: 40%;
  padding-top: 60%;
  background: transparent url(../images/ic_water.png) repeat-x top left;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .con_hamo::before {
    content: none;
  }
}
.con_intro .box_intro2 .con_tai::before {
  content: '';
  position: absolute;
  width: 40%;
  padding-top: 60%;
  background: transparent url(../images/ic_water.png) no-repeat top right;
  z-index: -1;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .con_tai::before {
    content: none;
  }
}
.con_intro .box_intro2 .box_intro {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  max-width: 1580px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro {
    flex-wrap: wrap;
  }
}
.con_intro .box_intro2 .box_intro:before {
  top: -50px;
  left: -235px;
}
.con_intro .box_intro2 .box_intro:after {
  bottom: 15px;
  right: -250px;
}
.con_intro .box_intro2 .box_intro .photo {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro .photo {
    width: 100%;
  }
}
.con_intro .box_intro2 .box_intro .photo img {
  width: 100%;
}
.con_intro .box_intro2 .box_intro .box_info {
  max-width: 1360px;
  width: 50%;
}
@media only screen and (max-width: 1280px) {
  .con_intro .box_intro2 .box_intro .box_info {
    width: 50%;
    margin: 0 auto;
  }
}
@media print {
  .con_intro .box_intro2 .box_intro .box_info {
    width: 50%;
    margin: 0 auto;
  }
}
.ie8 .con_intro .box_intro2 .box_intro .box_info {
  width: 50%;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .con_intro .box_intro2 .box_intro .box_info {
    padding-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro .box_info {
    width: 100%;
    margin-top: -15%;
  }
}
.con_intro .box_intro2 .box_intro .box_info .box_txt {
  width: 80%;
  overflow: hidden;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt {
    margin-top: 4.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt {
    height: auto;
    width: 90%;
    margin: 0 auto;
    float: none;
    margin-top: 3%;
    padding: 0;
  }
}
.con_intro .box_intro2 .box_intro .box_info .box_txt h3, .con_intro .box_intro2 .box_intro .box_info .box_txt h4, .con_intro .box_intro2 .box_intro .box_info .box_txt h5 {
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  font-weight: normal;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt h3, .con_intro .box_intro2 .box_intro .box_info .box_txt h5 {
  color: #950048;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt h3 {
  font-size: 223%;
  font-weight: bold;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt h3 {
    font-size: 212%;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt h3 {
    font-size: 156%;
    margin-left: 0;
    margin-bottom: 10px;
    margin-top: 10px;
    text-align: center;
  }
}
.con_intro .box_intro2 .box_intro .box_info .box_txt h4 {
  font-size: 145%;
  border-bottom: 1px solid #595959;
  line-height: 1.6;
  margin-bottom: .5em;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt h5 {
  font-size: 156%;
  line-height: 1.2;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt .txt {
  margin-bottom: 1.5em;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt .txt.first {
  margin-bottom: 3.2em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt .txt {
    margin-bottom: 0.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro .box_info .box_txt .txt {
    min-height: 0;
    margin-bottom: 5%;
  }
}
.con_intro .box_intro2 .box_intro .box_info .box_txt .txt .more {
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.5), #ffffff);
  /* 上から下へ：[白色半透明]から[白色]へグラデーション */
  padding-top: 50px;
  /* ボタンの上側でグラデーションを見せる距離(長さ) */
  margin-top: -44px;
  /* ボックスを上側に重ねる距離(長さ) */
  position: relative;
  /* ボックス全体を上に重ねるために必要 */
}
.con_intro .box_intro2 .box_intro .box_info .box_txt .txt .more.active {
  background: transparent;
}
.con_intro .box_intro2 .box_intro .box_info .box_txt .txt .more .open {
  margin-top: -6px;
}
.con_intro .box_intro2 .box_intro.last .photo {
  right: 0;
  left: auto;
}
.con_intro .box_intro2 .box_intro.last .box_info {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro.last .box_info {
    margin-left: 0;
    width: 100%;
    margin: 0 auto;
    margin-top: -15%;
  }
}
.con_intro .box_intro2 .box_intro.last .box_txt {
  padding-left: 0;
  padding-right: 2%;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .box_intro.last .box_txt {
    padding-right: 0;
  }
}
.con_intro .box_intro2 .list {
  max-width: 1260px;
  width: 100%;
  margin: 6em auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.con_intro .box_intro2 .list .item {
  width: 42.5%;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .list .item {
    width: 100%;
  }
}
.con_intro .box_intro2 .list .item h3 {
  font-size: 178%;
  font-weight: normal;
  color: #950048;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .list .item h3 {
    font-size: 123%;
  }
}
.con_intro .box_intro2 .list .item .box_txt {
  position: relative;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .list .item .box_txt {
    width: 100%;
    position: relative;
    padding: 1em 1.5em;
  }
}
.con_intro .box_intro2 .list .item:first-child {
  margin-right: 1.5%;
  width: 55.5%;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .list .item:first-child {
    width: 100%;
  }
}
.con_intro .box_intro2 .list .item:first-child .box_txt {
  width: 77%;
  position: relative;
  left: 23%;
  bottom: 21%;
}
@media only screen and (max-width: 767px) {
  .con_intro .box_intro2 .list .item:first-child .box_txt {
    width: 100%;
    position: relative;
    bottom: 1em;
    padding: 1em 1.5em;
    left: 0;
  }
}

/*----------------------------------------------------
	.con_taste
----------------------------------------------------*/
.con_taste {
  padding: 4em 0 0;
  background: #fff7df url(../images/bg_intro1.png) top -10em left no-repeat;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .con_taste {
    padding-top: 40px;
  }
}
.con_taste .st_md {
  font-size: 334%;
  color: #690033;
}
@media only screen and (max-width: 767px) {
  .con_taste .st_md {
    font-size: 189%;
  }
}
.con_taste .txt_tab_sp {
  font-size: 67%;
  margin: 5px 0 5px 0;
  text-align: center;
}
.con_taste ul li {
  float: left;
  position: relative;
}
.con_taste ul li .photo {
  line-height: 0;
}
@media only screen and (max-width: 767px) {
  .con_taste ul li .photo {
    height: 0;
    padding-top: 100%;
    overflow: hidden;
    position: relative;
  }
}
.con_taste ul li .photo img {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .con_taste ul li .photo img {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}
.con_taste ul li .box_txt {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  height: 80px;
  line-height: 1.4;
  padding: 3.5em 0.5em;
  color: #000;
  overflow: hidden;
  -webkit-transition: .5s;
  -moz-transition: .5s;
  -ms-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
@media only screen and (max-width: 1024px) {
  .con_taste ul li .box_txt {
    padding: 18% 3%;
  }
}
@media only screen and (max-width: 767px) {
  .con_taste ul li .box_txt {
    display: none;
  }
}
.con_taste ul li .box_txt p.title {
  margin-left: 3%;
  margin-bottom: 22px;
  font-size: 167%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  text-shadow: 0px 0px 40px #fff, 0px 0px 40px #fff, 0px 0px 40px #fff, 0px 0px 40px #fff, 0px 0px 40px #fff;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul li .box_txt p.title {
    font-size: 155%;
  }
}
@media print {
  .con_taste ul li .box_txt p.title {
    font-size: 155%;
  }
}
.ie8 .con_taste ul li .box_txt p.title {
  font-size: 155%;
}
@media only screen and (max-width: 1024px) {
  .con_taste ul li .box_txt p.title {
    font-size: 145%;
    margin-bottom: 10%;
  }
}
@media only screen and (max-width: 767px) {
  .con_taste ul li .box_txt p.title {
    margin-bottom: 2em;
  }
}
.con_taste ul li .box_txt p.title span {
  line-height: 1;
  display: inline-block;
  background-size: auto 100%;
}
.con_taste ul li .box_txt p.title em {
  font-size: 54%;
}
@media only screen and (min-width: 320px) and (max-width: 1280px) {
  .con_taste ul li .box_txt p.img_tab img {
    width: 305px;
  }
}
@media print {
  .con_taste ul li .box_txt p.img_tab img {
    width: 305px;
  }
}
.ie8 .con_taste ul li .box_txt p.img_tab img {
  width: 305px;
}
.con_taste ul li .box_txt p.txt {
  width: 94%;
  margin: 0 auto;
}
@media only screen and (min-width: 320px) and (max-width: 1280px) {
  .con_taste ul li .box_txt p.txt {
    font-size: 100%;
  }
}
@media print {
  .con_taste ul li .box_txt p.txt {
    font-size: 100%;
  }
}
.ie8 .con_taste ul li .box_txt p.txt {
  font-size: 100%;
}
@media only screen and (max-width: 1024px) {
  .con_taste ul li .box_txt p.txt {
    font-size: 84%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_taste ul li:hover .box_txt {
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    height: 100%;
  }
  .con_taste ul li:hover .box_txt .title {
    text-shadow: none;
  }
  .con_taste ul li:hover .box_txt .tai:before {
    content: url(../images/ic_tai.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .hamo:before {
    content: url(../images/ic_hamo.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .ushi:before {
    content: url(../images/ic_beef.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .ebi:before {
    content: url(../images/ic_ebi.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
}
@media print {
  .con_taste ul li:hover .box_txt {
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    height: 100%;
  }
  .con_taste ul li:hover .box_txt .title {
    text-shadow: none;
  }
  .con_taste ul li:hover .box_txt .tai:before {
    content: url(../images/ic_tai.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .hamo:before {
    content: url(../images/ic_hamo.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .ushi:before {
    content: url(../images/ic_beef.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
  .con_taste ul li:hover .box_txt .ebi:before {
    content: url(../images/ic_ebi.png);
    opacity: .75;
    margin-right: .35em;
    position: relative;
    top: .35em;
  }
}
.ie8 .con_taste ul li:hover .box_txt {
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  height: 100%;
}
.ie8 .con_taste ul li:hover .box_txt .title {
  text-shadow: none;
}
.ie8 .con_taste ul li:hover .box_txt .tai:before {
  content: url(../images/ic_tai.png);
  opacity: .75;
  margin-right: .35em;
  position: relative;
  top: .35em;
}
.ie8 .con_taste ul li:hover .box_txt .hamo:before {
  content: url(../images/ic_hamo.png);
  opacity: .75;
  margin-right: .35em;
  position: relative;
  top: .35em;
}
.ie8 .con_taste ul li:hover .box_txt .ushi:before {
  content: url(../images/ic_beef.png);
  opacity: .75;
  margin-right: .35em;
  position: relative;
  top: .35em;
}
.ie8 .con_taste ul li:hover .box_txt .ebi:before {
  content: url(../images/ic_ebi.png);
  opacity: .75;
  margin-right: .35em;
  position: relative;
  top: .35em;
}
.con_taste ul li.active .box_txt {
  background: rgba(0, 0, 0, 0.6);
  height: 100%;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .con_taste ul li.active .box_txt {
    padding: 2%;
  }
}
.con_taste ul li.active .box_txt .title {
  text-shadow: none;
}
@media only screen and (max-width: 767px) {
  .con_taste ul li.active .box_txt .title {
    margin-bottom: 0.8em;
  }
}
.con_taste ul li.active .box_txt .tai:before {
  content: '';
  display: inline-block;
  width: 12%;
  background-image: url(../images/ic_tai.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  padding-top: 10%;
  margin-right: 2%;
  opacity: 0.7;
}
.con_taste ul li.active .box_txt .hamo:before {
  content: '';
  display: inline-block;
  width: 12%;
  background-image: url(../images/ic_hamo.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: top;
  padding-top: 10%;
  margin-right: 2%;
  opacity: 0.7;
  margin-top: 1%;
}
.con_taste ul li.active .box_txt .ushi:before {
  content: '';
  display: inline-block;
  width: 12%;
  background-image: url(../images/ic_beef.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  padding-top: 10%;
  margin-right: 2%;
  opacity: 0.7;
}
.con_taste ul li.active .box_txt .ebi:before {
  content: '';
  display: inline-block;
  width: 12%;
  background-image: url(../images/ic_ebi.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  padding-top: 10%;
  margin-right: 2%;
  opacity: 0.7;
}
.con_taste ul li:last-child {
  margin-right: 0 !important;
}
.con_taste ul.box_3 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .con_taste ul.box_3 li {
    width: 33.22917%;
    margin-right: 0.15625%;
    margin-bottom: 0.15625%;
  }
}
@media print {
  .con_taste ul.box_3 li {
    width: 33.22917%;
    margin-right: 0.15625%;
    margin-bottom: 0.15625%;
  }
}
.ie8 .con_taste ul.box_3 li {
  width: 33.22917%;
  margin-right: 0.15625%;
  margin-bottom: 0.15625%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_taste ul.box_3 li {
    width: 32.8%;
    margin-bottom: 0.5%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_taste ul.box_3 .box_txt span {
    font-size: 18px;
  }
}
.con_taste ul.box_4 li {
  width: 24.88287%;
  margin-right: 0.15617%;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_4 li .box_txt .title {
    font-size: 134%;
    margin-bottom: 8%;
  }
}
@media print {
  .con_taste ul.box_4 li .box_txt .title {
    font-size: 134%;
    margin-bottom: 8%;
  }
}
.ie8 .con_taste ul.box_4 li .box_txt .title {
  font-size: 134%;
  margin-bottom: 8%;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_4 li .box_txt .txt {
    padding: 0;
    font-size: 84%;
  }
}
@media print {
  .con_taste ul.box_4 li .box_txt .txt {
    padding: 0;
    font-size: 84%;
  }
}
.ie8 .con_taste ul.box_4 li .box_txt .txt {
  padding: 0;
  font-size: 84%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_taste ul.box_4 li .box_txt .txt {
    padding: 0;
    font-size: 89%;
  }
}
.con_taste ul.box_5 li {
  width: 19.78136%;
  margin-right: 0.15617%;
}
.con_taste ul.box_5 li .box_txt {
  padding: 1.5em 1em 2em 1em;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_5 li .box_txt {
    padding: 2.0em 0.5em 1em 0.5em;
  }
}
@media print {
  .con_taste ul.box_5 li .box_txt {
    padding: 2.0em 0.5em 1em 0.5em;
  }
}
.ie8 .con_taste ul.box_5 li .box_txt {
  padding: 2.0em 0.5em 1em 0.5em;
}
.con_taste ul.box_5 li .box_txt .title {
  font-size: 145%;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_5 li .box_txt .title {
    font-size: 106%;
    margin-bottom: 15.5%;
  }
}
@media print {
  .con_taste ul.box_5 li .box_txt .title {
    font-size: 106%;
    margin-bottom: 15.5%;
  }
}
.ie8 .con_taste ul.box_5 li .box_txt .title {
  font-size: 106%;
  margin-bottom: 15.5%;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_5 li .box_txt .title span {
    line-height: 1.2;
  }
}
@media print {
  .con_taste ul.box_5 li .box_txt .title span {
    line-height: 1.2;
  }
}
.ie8 .con_taste ul.box_5 li .box_txt .title span {
  line-height: 1.2;
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_5 li .box_txt .txt {
    font-size: 78%;
  }
}
@media print {
  .con_taste ul.box_5 li .box_txt .txt {
    font-size: 78%;
  }
}
.ie8 .con_taste ul.box_5 li .box_txt .txt {
  font-size: 78%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_taste ul.box_5 li .box_txt .txt {
    padding: 0;
  }
}
@media only screen and (max-width: 1500px) {
  .con_taste ul.box_5 li:hover .title {
    margin-bottom: 3%;
  }
}
@media print {
  .con_taste ul.box_5 li:hover .title {
    margin-bottom: 3%;
  }
}
.ie8 .con_taste ul.box_5 li:hover .title {
  margin-bottom: 3%;
}

/*----------------------------------------------------
	.con_cheft
----------------------------------------------------*/
.con_cheft {
  margin: 130px auto 100px;
}
@media only screen and (max-width: 1024px) {
  .con_cheft {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
.con_cheft .box_cheft {
  margin: 0 auto;
  padding-bottom: 85px;
  background: transparent url(../images/bg_intro2.png) no-repeat bottom left;
  z-index: 0;
  max-width: 1240px;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft {
    width: 100%;
    padding-bottom: 40px;
  }
}
.con_cheft .box_cheft .photo {
  width: 35%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cheft .box_cheft .photo {
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .photo {
    width: 100%;
  }
}
.con_cheft .box_cheft .photo img {
  width: 100%;
}
.con_cheft .box_cheft .box_txt {
  width: 50%;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .box_txt {
    width: 100%;
    margin-top: 20px;
    padding: 0 2.5%;
  }
}
.con_cheft .box_cheft .box_txt p.sign {
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .box_txt p.sign {
    margin-top: 10px;
    line-height: 1.5;
  }
}
.con_cheft .box_cheft .box_txt p.sign em {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.con_cheft .box_cheft .box_txt p.sign em.txt1 {
  font-size: 78%;
}
.con_cheft .box_cheft .box_txt p.sign em.txt2 {
  font-size: 89%;
}
.con_cheft .box_cheft .box_txt p.sign em.txt3 {
  font-size: 123%;
}
.con_cheft .box_cheft .box_txt p.txt_chef {
  vertical-align: top;
  margin: 0 15px;
  height: 423px;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .box_txt p.txt_chef {
    height: auto;
    margin: 0;
  }
}
.con_cheft .box_cheft .box_txt h3 {
  vertical-align: top;
  font-weight: normal;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  font-size: 212%;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .box_txt h3 {
    text-align: center;
    margin-bottom: 15px;
    font-size: 156%;
  }
}
.con_cheft .box_cheft .photo2 {
  float: right;
  width: 315px;
}
@media only screen and (max-width: 767px) {
  .con_cheft .box_cheft .photo2 {
    width: 51.3%;
  }
}
.con_cheft .box_cheft .photo2 img {
  width: 100%;
}
.con_cheft .last {
  background: transparent url(../images/bg_intro2.png) no-repeat bottom right;
  z-index: 0;
}

/*----------------------------------------------------
	.con_facilities
----------------------------------------------------*/
.con_facilities {
  margin-bottom: 8.5em;
}
.con_facilities .box_banner {
  height: 830px;
  background: url(../images/bg_fac_banner.jpg) center no-repeat;
  background-size: cover;
}
@media only screen and (max-width: 1024px) {
  .con_facilities .box_banner {
    padding: 0 2%;
  }
}
.con_facilities .box_banner .bwidth {
  padding-top: 4em;
}
.con_facilities .box_banner .bwidth h3 {
  font-size: 334%;
  width: 53%;
  font-weight: normal;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  color: #000;
  line-height: 1.5;
  float: left;
}
@media only screen and (min-width: 1025px) {
  .con_facilities .box_banner .bwidth h3 {
    padding-left: 15px;
  }
}
@media print {
  .con_facilities .box_banner .bwidth h3 {
    padding-left: 15px;
  }
}
.ie8 .con_facilities .box_banner .bwidth h3 {
  padding-left: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_facilities .box_banner .bwidth h3 {
    font-size: 250%;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_banner .bwidth h3 {
    font-size: 184%;
    width: 100%;
  }
}
.con_facilities .box_banner .bwidth .img {
  width: 47%;
  float: left;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_banner .bwidth .img {
    width: 100%;
  }
}
.con_facilities .box {
  margin-top: 8em;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box {
    margin-top: 10%;
  }
}
.con_facilities .box .slider {
  top: 0;
  bottom: 0;
  width: 50%;
  float: left;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .slider {
    width: 100%;
  }
}
.con_facilities .box .slider .slick-dots {
  bottom: 1em;
}
.con_facilities .box .slider .slick-dots li button {
  width: 16px;
  height: 16px;
  background: #a19999;
  border-radius: 50%;
}
.con_facilities .box .slider .slick-dots li button:before {
  display: none;
}
.con_facilities .box .slider .slick-dots li.slick-active button {
  background: #690033;
}
.con_facilities .box .bwidth {
  width: 50%;
  float: left;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .bwidth {
    width: 100%;
  }
}
.con_facilities .box .box_txt {
  width: 70%;
  padding-left: 2em;
  min-width: 600px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_facilities .box .box_txt {
    width: 95%;
    min-width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .box_txt {
    width: 100%;
    padding-left: 0;
    min-width: auto;
  }
}
.con_facilities .box .box_txt h4 {
  font-size: 278%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  font-weight: normal;
  border-bottom: 1px solid #030000;
  padding-bottom: .3em;
  margin-bottom: .4em;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .box_txt h4 {
    font-size: 195%;
    padding-top: 5%;
    padding-left: 8px;
  }
}
.con_facilities .box .box_txt h4 span {
  font-size: 120%;
}
.con_facilities .box .box_txt h4 span.txt_red {
  color: #690033;
}
.con_facilities .box .box_txt h4 span.txt_yellow {
  color: #edba00;
}
.con_facilities .box .box_txt .box_icon {
  margin-bottom: 2.5em;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .box_txt .box_icon {
    margin-bottom: 0;
    padding-left: 12px;
  }
}
.con_facilities .box .box_txt .box_icon li {
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box .box_txt .txt {
    padding: 0 2%;
  }
}
.con_facilities .box.last .slider {
  float: right;
}
.con_facilities .box.last .bwidth {
  justify-content: flex-start;
}
.con_facilities .box.last .box_txt {
  padding-right: 2em;
  padding-left: 0;
  float: right;
}
@media only screen and (min-width: 768px) {
  .con_facilities .box.last .box_txt {
    margin-left: 10px;
    margin-right: -15px;
  }
}
@media print {
  .con_facilities .box.last .box_txt {
    margin-left: 10px;
    margin-right: -15px;
  }
}
.ie8 .con_facilities .box.last .box_txt {
  margin-left: 10px;
  margin-right: -15px;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box.last .box_txt {
    padding-right: 0;
  }
}
.con_facilities .box.last .box_txt .img {
  display: flex;
  justify-content: flex-end;
  margin-top: 7em;
}
@media only screen and (max-width: 1280px) {
  .con_facilities .box.last .box_txt .img {
    display: block;
    text-align: right;
    margin-top: 2em;
  }
  .con_facilities .box.last .box_txt .img img {
    width: 55%;
  }
}
@media print {
  .con_facilities .box.last .box_txt .img {
    display: block;
    text-align: right;
    margin-top: 2em;
  }
  .con_facilities .box.last .box_txt .img img {
    width: 55%;
  }
}
.ie8 .con_facilities .box.last .box_txt .img {
  display: block;
  text-align: right;
  margin-top: 2em;
}
.ie8 .con_facilities .box.last .box_txt .img img {
  width: 55%;
}
.con_facilities .box_large {
  overflow: hidden;
}
.con_facilities .box_large > .img {
  float: right;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_large > .img {
    width: 100%;
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_large {
    height: auto;
  }
}
.con_facilities .box_small {
  overflow: hidden;
}
.con_facilities .box_small .bwidth {
  width: 100%;
  min-width: 1260px;
  float: none;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_facilities .box_small .bwidth {
    min-width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_small .bwidth {
    min-width: auto;
  }
}
.con_facilities .box_small .bwidth .img {
  float: left;
  display: block;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_facilities .box_small .bwidth .img {
    width: 50%;
  }
}
.con_facilities .box_small .bwidth .box_txt {
  float: left;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .con_facilities .box_small .bwidth .box_txt {
    width: 100%;
  }
}

/*----------------------------------------------------
	.con_plan
----------------------------------------------------*/
.con_plan .box_head {
  text-align: center;
  margin: 0 0 80px;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_head {
    margin-bottom: 30px;
  }
}
.con_plan .box_head .photo img {
  width: 100%;
}
.con_plan .box_head h3 {
  font-weight: normal;
  color: #690033;
  line-height: 100%;
  margin: 0 0 25px;
  margin-top: -45px;
  font-size: 334%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_head h3 {
    font-size: 189%;
    margin-top: -0.5em;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_head .sub {
    text-align: left;
    padding: 0 2.5%;
    font-size: 90%;
  }
}
.con_plan .box_head .sub span {
  font-size: 89%;
}
.con_plan .box_plans {
  max-width: 1730px;
  margin: 0 auto;
}
.con_plan .box_plans * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .bp {
    background-color: #FEEBDD;
    padding-top: 10%;
    margin-bottom: 10%;
  }
}
.con_plan .box_plans .plan {
  margin: 0 50px 85px 20px;
}
@media only screen and (max-width: 1260px) {
  .con_plan .box_plans .plan {
    margin-right: 20px;
  }
}
@media print {
  .con_plan .box_plans .plan {
    margin-right: 20px;
  }
}
.ie8 .con_plan .box_plans .plan {
  margin-right: 20px;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plans .plan {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan {
    margin: 0;
    padding: 0 2.5%;
  }
}
.con_plan .box_plans .plan img {
  width: 100%;
}
.con_plan .box_plans .plan .hotel {
  float: left;
  width: 22.54335%;
  margin: 0 0 20px;
  text-align: center;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel {
    width: 100%;
    float: none;
    margin: 20px 0 0px 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #666;
  }
}
.con_plan .box_plans .plan .hotel .photo {
  margin: 0 0 15px;
  line-height: 0;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel .photo {
    width: 37%;
    float: left;
  }
}
.con_plan .box_plans .plan .hotel .btn a {
  width: 100%;
  display: inline-block;
  text-decoration: none;
  border: 1px solid #595959;
  padding: 1em 7px;
  margin-bottom: 10px;
  font-size: 89%;
}
@media only screen and (max-width: 1730px) {
  .con_plan .box_plans .plan .hotel .btn a {
    width: 100%;
  }
}
@media print {
  .con_plan .box_plans .plan .hotel .btn a {
    width: 100%;
  }
}
.ie8 .con_plan .box_plans .plan .hotel .btn a {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel .btn a {
    font-size: 73%;
    padding: 0.5em 7px;
  }
}
.con_plan .box_plans .plan .hotel .btn a:hover {
  color: #fff;
  background: #595959;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel .btn {
    width: 60%;
    float: right;
  }
}
.con_plan .box_plans .plan .hotel .logo {
  margin-top: 15px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel .logo {
    width: 60%;
    text-align: center;
    margin: 10px auto;
  }
}
.con_plan .box_plans .plan .hotel .logo img {
  max-width: 100%;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .hotel .logo img {
    width: 90%;
  }
}
.con_plan .box_plans .plan .wrp {
  overflow: hidden;
  float: right;
  width: 77.4%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .wrp {
    width: 100%;
    float: none;
  }
}
.con_plan .box_plans .plan .food {
  float: left;
  width: 49%;
  border-left: 1px solid #bfbfbf;
  margin-left: 2.31214%;
  padding-left: 2.31214%;
  line-height: 0;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .food {
    width: 100%;
    float: none;
    margin-left: 0;
    border-left: none;
    padding-left: 0;
  }
}
.con_plan .box_plans .plan .slider .slick-dots {
  position: absolute;
  width: 100%;
  bottom: 20px;
  left: 0;
  text-align: center;
  line-height: 0;
}
.con_plan .box_plans .plan .slider .slick-dots li {
  display: inline-block;
  line-height: 0;
  margin: 0 5px !important;
}
.con_plan .box_plans .plan .slider .slick-dots li button {
  cursor: pointer;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  font-size: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.6);
}
.con_plan .box_plans .plan .slider .slick-dots li:hover button, .con_plan .box_plans .plan .slider .slick-dots li.slick-active button {
  background: #690033;
}
.con_plan .box_plans .plan .slider .slick-dots li span {
  background-image: none !important;
}
.con_plan .box_plans .plan .info {
  float: right;
  width: 45%;
  margin-right: 0.86705%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info {
    width: 100%;
    float: none;
    margin-right: 0;
    margin-top: 15px;
  }
}
.con_plan .box_plans .plan .info h4 {
  margin: 0 0 20px;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  font-size: 167%;
  font-weight: normal;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info h4 {
    margin-bottom: 8px;
    font-size: 112%;
  }
}
.con_plan .box_plans .plan .info .txt {
  background: transparent url(../images/bg_plan2.jpg) no-repeat bottom right;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plans .plan .info .txt {
    font-size: 84%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info .txt {
    font-size: 73%;
    background: none;
  }
}
.con_plan .box_plans .plan .info .control {
  margin: 55px auto 25px;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plans .plan .info .control {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info .control {
    margin-top: 7px;
    margin-bottom: 10px;
  }
}
.con_plan .box_plans .plan .info .control p {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plans .plan .info .control p {
    display: block;
  }
}
.con_plan .box_plans .plan .info .control p.time {
  border-left: 5px solid #ccc;
  padding: 10px 20px;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info .control p.time {
    font-size: 78%;
    padding: 5px 10px;
  }
}
.con_plan .box_plans .plan .info .control p.time span {
  line-height: 100%;
}
.con_plan .box_plans .plan .info .control p.btn a {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 1.1em 2em;
  background: #690033;
  border: 1px solid #690033;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plans .plan .info .control p.btn a {
    padding: 1em;
    text-align: center;
  }
}
.con_plan .box_plans .plan .info .control p.btn a:hover {
  background: #fff;
  color: #690033;
}
.con_plan .box_plans .plan .info .control p.txt_plan {
  font-size: 78%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plans .plan .info .control p.txt_plan {
    font-size: 67%;
  }
}
.con_plan .box_plans .plan .info .txt2 {
  font-size: 67%;
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}

#footer #copy a {
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .con_taste ul.box_3.gallery_lbox {
    align-items: flex-start;
    margin: 0 -1px;
  }
  .con_taste ul.box_3.gallery_lbox li {
    width: 33.33333%;
    padding: 1px;
    margin-right: 0;
    width: 50%;
    cursor: pointer;
  }
  .con_taste ul.box_3.gallery_lbox .box_txt {
    position: absolute;
    left: 5%;
    width: 95%;
    bottom: 5%;
  }
}

#gallery_popup {
  opacity: 0;
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  #gallery_popup {
    display: none !important;
  }
}
@media print {
  #gallery_popup {
    display: none !important;
  }
}
.ie8 #gallery_popup {
  display: none !important;
}
#gallery_popup .gallery_close {
  width: 2em;
  height: 2em;
  position: absolute;
  top: 1%;
  right: 3%;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 2em;
}
#gallery_popup .gallery_close span {
  width: 60%;
  height: 2px;
  background: #000;
  position: absolute;
  bottom: 50%;
  left: 20%;
  margin-top: -1px;
}
#gallery_popup .gallery_close .line_01 {
  transform: rotate(-45deg);
}
#gallery_popup .gallery_close .line_02 {
  transform: rotate(45deg);
}
#gallery_popup.at {
  top: 0;
  left: 0;
  opacity: 1;
  z-index: 9999;
  -webkit-transition: all 1.5s;
  -moz-transition: all 1.5s;
  -ms-transition: all 1.5s;
  -o-transition: all 1.5s;
  transition: all 1.5s;
}
#gallery_popup .gallery_bpopup {
  width: 100%;
  height: 100vh;
  background: #fff;
  overflow: auto;
}
#gallery_popup .gallery_bpopup .photo {
  width: 100%;
  margin: 0 auto;
}
#gallery_popup .gallery_bpopup .photo img {
  width: 100%;
}
#gallery_popup .gallery_bpopup .box_txt {
  padding: 2em;
}
@media only screen and (max-width: 767px) {
  #gallery_popup .gallery_bpopup .box_txt {
    padding: 1em;
  }
}
#gallery_popup .gallery_bpopup .box_txt .title {
  font-size: 200%;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", serif;
  margin-bottom: 3%;
  display: flex;
  align-items: flex-start;
  line-height: normal;
}
@media only screen and (max-width: 767px) {
  #gallery_popup .gallery_bpopup .box_txt .title {
    font-size: 156%;
  }
}
#gallery_popup .gallery_bpopup .box_txt .title:before {
  opacity: 0.75;
  margin-right: 0.35em;
}
#gallery_popup .gallery_bpopup .box_txt .hamo:before {
  content: url(../images/ic_hamo_t_g.png);
}
#gallery_popup .gallery_bpopup .box_txt .ushi:before {
  content: url(../images/ic_ushi_t_g.png);
}
#gallery_popup .gallery_bpopup .box_txt .ebi:before {
  content: url(../images/ic_ebi_t_g.png);
}
#gallery_popup .gallery_bpopup .box_txt .tai:before {
  content: url(../images/ic_fish_t_g.png);
}
#gallery_popup .gallery_bpopup .box_txt .masu:before {
  content: url(../images/ic_fish_s_g.png);
}

/*----------------------------------------------------
	.con_plan
----------------------------------------------------*/
.con_plan {
  margin-top: 5.72917%;
  padding-top: 7.08333%;
  position: relative;
  margin: 0 0 130px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan {
    margin-top: 66px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan {
    padding-top: 81.6px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan {
    padding-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan {
    margin-bottom: 40px;
  }
}
.con_plan .logo_sp img {
  margin: 0 auto 10px;
}
.con_plan .box_plan {
  max-width: 1720px;
  width: 97%;
  /*タブ切り替え無しのラベル表示*/
  /*タブ切り替え*/
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan {
    float: none;
    width: 91.66667%;
    margin: auto;
    margin-top: 20px;
  }
}
.con_plan .box_plan .box_thum {
  float: left;
  width: 27.5%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_thum {
    width: 100%;
  }
}
.con_plan .box_plan .box_thum .txt {
  text-align: center;
  margin-bottom: 0.5em;
  font-size: 84%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_thum .txt {
    font-size: 78%;
  }
}
.con_plan .box_plan .box_thum .txt .icon-inner {
  margin-top: 2px;
}
.con_plan .box_plan .box_thum ul#o_bx-page {
  margin-left: -2%;
}
.con_plan .box_plan .box_thum ul#o_bx-page li {
  float: left;
  width: 48%;
  margin: 0 0 10px;
  margin-left: 2%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_thum ul#o_bx-page li {
    margin-bottom: 15px;
  }
}
.con_plan .box_plan .box_thum ul#o_bx-page li:nth-child(odd) {
  clear: both;
}
.con_plan .box_plan .box_thum ul#o_bx-page li a {
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_thum ul#o_bx-page li a img {
    width: 100%;
  }
}
.con_plan .box_plan .box_thum ul#o_bx-page li a span {
  display: block;
  padding: 10px 0;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_thum ul#o_bx-page li a span {
    padding-bottom: 0;
  }
}
.con_plan .box_plan .box_thum ul#o_bx-page li a.active {
  opacity: 0.6;
  border: 2px solid #690033;
}
.con_plan .box_plan .box_slide {
  float: right;
  width: 68.60465%;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide {
    width: 100%;
    float: none;
  }
}
.con_plan .box_plan .box_slide > p {
  font-size: 1.067em;
  line-height: 30px;
}
.con_plan .box_plan .box_slide > p.photo {
  margin: 0 0 35px;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide > p.photo {
    margin-bottom: 20px;
  }
}
.con_plan .box_plan .box_slide .box_detail {
  clear: both;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail > img {
    position: relative;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    margin: 0.5em auto 1em;
    text-align: center;
  }
  .con_plan .box_plan .box_slide .box_detail > img.scl07 {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
}
.con_plan .box_plan .box_slide .box_detail .box_txt {
  width: 66%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt {
    width: 66%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt {
    width: 100%;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_txt .title {
  margin: 0 0 18px;
  font-size: 145%;
  font-weight: normal;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt .title {
    font-size: 134%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt .title {
    font-size: 115%;
    margin-bottom: 10px;
    line-height: 1.4;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_txt .title a {
  color: #690033;
  text-decoration: none;
}
@media only screen and (min-width: 1025px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt .title:hover a {
    text-decoration: underline;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_detail .box_txt .title:hover a {
    text-decoration: underline;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_detail .box_txt .title:hover a {
  text-decoration: underline;
}
.con_plan .box_plan .box_slide .box_detail .box_txt .txt {
  line-height: 1.8;
  letter-spacing: 0.07em;
  margin: 0 0 32px;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt .txt {
    margin-bottom: 10px;
    line-height: 1.4;
    font-size: 90%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_1 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_2 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_3 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_4 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_5 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_6 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_7 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_8 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_9 > .caption,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_10 > .caption {
    width: 100%;
    margin: 10px auto 20px;
    position: relative;
  }
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_1 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_2 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_3 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_4 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_5 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_6 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_7 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_8 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_9 > .caption:before,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_10 > .caption:before {
    content: "";
    width: 5px;
    height: 100%;
    background: #ccc;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_1 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_2 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_3 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_4 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_5 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_6 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_7 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_8 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_9 > .caption span,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_10 > .caption span {
    display: block;
    font-size: 78%;
    text-indent: 1em;
    margin-bottom: 5px;
  }
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_1 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_2 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_3 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_4 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_5 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_6 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_7 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_8 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_9 > .caption span:last-child,
  .con_plan .box_plan .box_slide .box_detail .box_txt #move_caption_10 > .caption span:last-child {
    margin-bottom: 0;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_txt .caution {
  line-height: 2.1;
  letter-spacing: 0.07em;
}
.con_plan .box_plan .box_slide .box_detail .box_fac {
  width: 29%;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac {
    width: 29%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac {
    width: 100%;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_fac:before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  max-height: 125px;
  left: -wCon(40, 1920);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac:before {
    left: -wCon(200, 1920);
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac:before {
    display: none;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_fac > img {
  margin-bottom: 24px;
}
@media only screen and (min-width: 1025px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac > img {
    padding-right: 0.5em;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_detail .box_fac > img {
    padding-right: 0.5em;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_detail .box_fac > img {
  padding-right: 0.5em;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac > img {
    width: 90%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption {
    border-left: 5px solid #ccc;
    padding: 10px 0px;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption {
    border-left: 5px solid #ccc;
    padding: 10px 0px;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_detail .box_fac .caption {
  border-left: 5px solid #ccc;
  padding: 10px 0px;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption {
    width: 100%;
    margin-top: 10px;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_fac .caption span {
  display: block;
  text-indent: 2em;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption span {
    text-indent: 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption span {
    margin-right: 1em;
    display: inline-block;
  }
}
.con_plan .box_plan .box_slide .box_detail .box_fac .caption span:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .box_detail .box_fac .caption span:last-child {
    margin-right: 0;
  }
}
.con_plan .box_plan .box_slide .box_btn {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 4em;
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_btn {
    display: flex;
  }
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn {
    display: flex;
  }
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn {
    justify-content: space-between;
    margin-bottom: .5em;
    margin-top: .5em;
  }
}
.con_plan .box_plan .box_slide .box_btn .btn {
  margin-right: 30px;
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    margin-right: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1399px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    margin-bottom: 1em;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_btn .btn {
    margin-bottom: 1em;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_btn .btn {
  margin-bottom: 1em;
}
@media only screen and (min-width: 1025px) and (max-width: 1399px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    max-width: 300px;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_btn .btn {
    max-width: 300px;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_btn .btn {
  max-width: 300px;
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    max-width: 220px;
  }
  .con_plan .box_plan .box_slide .box_btn .btn a:before, .con_plan .box_plan .box_slide .box_btn .btn a:after {
    content: "";
    position: absolute;
    width: 5%;
  }
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn .btn {
    margin-bottom: .5em;
    width: 48%;
    margin-right: 1px;
  }
  .con_plan .box_plan .box_slide .box_btn .btn:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn .btn.btn--cv a, .con_plan .box_plan .box_slide .box_btn .btn.btn--ghost a {
    line-height: 60px !important;
  }
}
.con_plan .box_plan .box_slide .box_btn .btn a {
  width: 100%;
  display: inline-block;
  text-decoration: none;
  color: #690033;
  border: 1px solid #690033;
  padding: 1em 4em;
  margin-bottom: 10px;
  font-size: 89%;
}
@media only screen and (max-width: 1730px) {
  .con_plan .box_plan .box_slide .box_btn .btn a {
    width: 100%;
  }
}
@media print {
  .con_plan .box_plan .box_slide .box_btn .btn a {
    width: 100%;
  }
}
.ie8 .con_plan .box_plan .box_slide .box_btn .btn a {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .con_plan .box_plan .box_slide .box_btn .btn a {
    text-align: center;
    padding: 0em 7px;
  }
}
.con_plan .box_plan .box_slide .box_btn .btn a:hover {
  color: #fff;
  background: #690033;
}
.con_plan .box_plan .box_slide .box_btn .btn_rsv a {
  color: #fff;
  background: #690033;
  border: none;
}
.con_plan .box_plan .box_slide .box_btn .btn_rsv a:hover {
  border: 1px solid #690033;
  color: #690033;
  background: #fff;
}
.con_plan .box_plan .box_slide .bx-wrapper .bx-controls-direction {
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.con_plan .box_plan .box_slide .bx-wrapper .bx-controls-direction a {
  background: none;
  color: #fff;
  font-size: 2.1875em;
  text-indent: 0;
  text-decoration: none;
  top: 50%;
  margin-top: 26%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .box_slide .bx-wrapper .bx-controls-direction a {
    margin-top: 50%;
  }
}
.con_plan .box_plan .tab-wrap_one {
  margin-top: 1.5em;
  width: 240px;
  background: #690033;
  border: 2px solid #690033;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap_one {
    width: 100%;
  }
}
.con_plan .box_plan .tab-wrap_one .tab-label_one {
  color: #fff;
  font-size: 110%;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap_one .tab-label_one {
    font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap_one {
    margin: 1em auto 0;
  }
}
.con_plan .box_plan .tab-wrap {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.con_plan .box_plan .tab-wrap .photo {
  margin-bottom: 5em;
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap .photo02 {
    margin-bottom: 6em;
  }
}
.con_plan .box_plan .tab-wrap .tab-label {
  cursor: pointer;
  color: #690033;
  border: 2px solid #690033;
  width: 245px;
  font-size: 110%;
  text-align: center;
  order: -1;
  top: 0;
  position: absolute;
  margin-top: 55%;
}
@media only screen and (min-width: 1473.5px) {
  .con_plan .box_plan .tab-wrap .tab-label {
    width: 270px;
  }
}
@media print {
  .con_plan .box_plan .tab-wrap .tab-label {
    width: 270px;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap .tab-label {
    font-size: 100%;
    padding: 0;
    width: calc(100% / 1);
    margin-top: 75%;
  }
}
.con_plan .box_plan .tab-wrap .tab-label:hover {
  color: #fff;
  background: #690033;
}
.con_plan .box_plan .tab-wrap .tab_item_01 {
  left: 0;
}
.con_plan .box_plan .tab-wrap .tab_item_02 {
  left: 13.5em;
}
@media only screen and (min-width: 1025px) and (max-width: 1472.5px) {
  .con_plan .box_plan .tab-wrap .tab_item_02 {
    left: 15em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_plan .box_plan .tab-wrap .tab_item_02 {
    left: 14.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_plan .box_plan .tab-wrap .tab_item_02 {
    left: 0;
    right: 0;
    top: 1.8em;
  }
}
.con_plan .box_plan .tab-content {
  width: 100%;
  display: none;
}
.con_plan .box_plan .tab-switch:checked + .tab-label {
  background: #690033;
  color: #fff;
}
.con_plan .box_plan .tab-switch:checked + .tab-label + .tab-content {
  display: block;
}
.con_plan .box_plan .tab-switch {
  display: none;
}

@media screen and (min-width: 1281px) and (max-width: 1473px) {
  .con_plan .box_plan .tab-wrap .tab_item_02 {
    left: 13.3em;
  }

  .con_plan .box_plan .tab-wrap .tab-label {
    width: 270px;
  }
}

.bx-wrapper .bx-controls-auto {
  display: none;
}

.scroll_txt {
  width: 90%;
  margin: 10px auto;
  padding: 0.5em 0;
  display: flex;
  justify-content: center;
  border: 1px solid #ccc;
  font-size: 80%;
}
.scroll_txt .ic {
  margin-left: 10px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  .scroll_txt {
    padding: 0.5em 0 0.2em!important;
  }
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    _::-webkit-full-page-media, _:future, :root .scroll_txt  {
       padding: 0.5em 0 0.2em!important;
    }
}

@media only screen and (max-width: 1024px) {
  .scroll {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
  }
}

.scroll_txt {
  width: 90%;
  margin: 10px auto;
  padding: 0.5em 0;
  display: flex;
  justify-content: center;
  border: 1px solid #690033;
  color: #690033;
  font-size: 80%;
}
.scroll_txt .ic {
  background-color: #690033;
  color: #fff;
  border-radius: 100%;
  font-size: 15px;
  margin-right: 8px;
  padding: 3px 13px;
  vertical-align: middle;
  display: inline-block;
  animation: swipe 2.5s ease 0.5s infinite normal both running;
}

@media only screen and (max-width: 1024px) {
  .scroll {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
  }
}
@keyframes swipe {
  0% {
    transform: translateX(25px);
  }
  100% {
    transform: translateX(0);
  }
}
@media only screen and (max-width: 768px) {
  .con_intro .box_intro_1 .box_intro .txt {
    text-align: justify;
  }
}

