@charset "UTF-8";
/*scss Document */
html, body {
  width: 100%; }
html {
    scroll-behavior: smooth;
}
body {
  position: relative;
  color: #231815;
  font-size: 16px;
  margin: 0 auto;
  font-family: 'Jost', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased; }

.mb0 {
  margin-bottom: 0 !important; }

@media (min-width: 1001px) {
  .mb5 {
    margin-bottom: 5px !important; } }
@media (max-width: 1000px) {
  .mb5 {
    margin-bottom: 0.6vw !important; } }

@media (min-width: 1001px) {
  .mb10 {
    margin-bottom: 10px !important; } }
@media (max-width: 1000px) {
  .mb10 {
    margin-bottom: 1.3vw !important; } }

@media (min-width: 1001px) {
  .mb15 {
    margin-bottom: 15px !important; } }
@media (max-width: 1000px) {
  .mb15 {
    margin-bottom: 2vw !important; } }

@media (min-width: 1001px) {
  .mb20 {
    margin-bottom: 20px !important; } }
@media (max-width: 1000px) {
  .mb20 {
    margin-bottom: 2.6vw !important; } }

@media (min-width: 1001px) {
  .mb25 {
    margin-bottom: 25px !important; } }
@media (max-width: 1000px) {
  .mb25 {
    margin-bottom: 3.3vw !important; } }

@media (min-width: 1001px) {
  .mb30 {
    margin-bottom: 30px !important; } }
@media (max-width: 1000px) {
  .mb30 {
    margin-bottom: 3.3vw !important; } }

@media (min-width: 1001px) {
  .mb40 {
    margin-bottom: 40px !important; } }
@media (max-width: 1000px) {
  .mb40 {
    margin-bottom: 5.3vw !important; } }

@media (min-width: 1001px) {
  .mb50 {
    margin-bottom: 50px !important; } }
@media (max-width: 1000px) {
  .mb50 {
    margin-bottom: 6.6vw !important; } }

@media (min-width: 1001px) {
  .mb60 {
    margin-bottom: 60px !important; } }
@media (max-width: 1000px) {
  .mb60 {
    margin-bottom: 8vw !important; } }

@media (min-width: 1001px) {
  .mb70 {
    margin-bottom: 70px !important; } }
@media (max-width: 1000px) {
  .mb70 {
    margin-bottom: 9.3vw !important; } }

@media (min-width: 1001px) {
  .mb80 {
    margin-bottom: 80px !important; } }
@media (max-width: 1000px) {
  .mb80 {
    margin-bottom: 10.6vw !important; } }

@media (min-width: 1001px) {
  .mb90 {
    margin-bottom: 90px !important; } }
@media (max-width: 1000px) {
  .mb90 {
    margin-bottom: 12vw !important; } }

@media (min-width: 1001px) {
  .mb100 {
    margin-bottom: 100px !important; } }
@media (max-width: 1000px) {
  .mb100 {
    margin-bottom: 13.3vw !important; } }

@media (min-width: 1001px) {
  .mb110 {
    margin-bottom: 110px !important; } }
@media (max-width: 1000px) {
  .mb110 {
    margin-bottom: 14.6vw !important; } }

@media (min-width: 1001px) {
  .mb120 {
    margin-bottom: 120px !important; } }
@media (max-width: 1000px) {
  .mb120 {
    margin-bottom: 16vw !important; } }

@media (min-width: 1001px) {
  .mb130 {
    margin-bottom: 130px !important; } }
@media (max-width: 1000px) {
  .mb130 {
    margin-bottom: 17.3vw !important; } }

@media (min-width: 1001px) {
  .mb140 {
    margin-bottom: 140px !important; } }
@media (max-width: 1000px) {
  .mb140 {
    margin-bottom: 18.6vw !important; } }

@media (min-width: 1001px) {
  .mb150 {
    margin-bottom: 150px !important; } }
@media (max-width: 1000px) {
  .mb150 {
    margin-bottom: 20vw !important; } }

.pb0 {
  padding-bottom: 0 !important; }

@media (min-width: 1001px) {
  .pb10 {
    padding-bottom: 10px !important; } }
@media (max-width: 1000px) {
  .pb10 {
    padding-bottom: 1.3vw !important; } }

@media (min-width: 1001px) {
  .p15 {
    padding: 0 15px !important; } }
@media (max-width: 1000px) {
  .p15 {
    padding: 0 2vw !important; } }

@media (min-width: 1001px) {
  .pt10 {
    padding-top: 10px !important; } }
@media (max-width: 1000px) {
  .pt10 {
    padding-top: 1.3vw !important; } }

@media (min-width: 1001px) {
  .pt15 {
    padding-top: 15px !important; } }
@media (max-width: 1000px) {
  .pt15 {
    padding-top: 2vw !important; } }

@media (min-width: 1001px) {
  .pt20 {
    padding-top: 20px !important; } }
@media (max-width: 1000px) {
  .pt20 {
    padding-top: 2.6vw !important; } }

@media (min-width: 1001px) {
  .pt30 {
    padding-top: 30px !important; } }
@media (max-width: 1000px) {
  .pt30 {
    padding-top: 3.3vw !important; } }

@media (min-width: 1001px) {
  .pt40 {
    padding-top: 40px !important; } }
@media (max-width: 1000px) {
  .pt40 {
    padding-top: 5.3vw !important; } }

@media (min-width: 1001px) {
  .ls-1 {
    letter-spacing: -1px; } }

@media (min-width: 1001px) {
  .ls-2 {
    letter-spacing: -2px; } }

@media (min-width: 1001px) {
  .ls-3 {
    letter-spacing: -3px; } }

@media (min-width: 1001px) {
  .ls-4 {
    letter-spacing: -4px; } }

@media (min-width: 1001px) {
  .fs10 {
    font-size: 10px; } }

@media (min-width: 1001px) {
  .fs14 {
    font-size: 14px; } }

@media (min-width: 1001px) {
  .fs15 {
    font-size: 15px; } }

@media (min-width: 1001px) {
  .fs16 {
    font-size: 16px; } }

@media (min-width: 1001px) {
  .fs24 {
    font-size: 24px; } }

@media (min-width: 1001px) {
  .fs26 {
    font-size: 26px; } }

.mb05em {
  margin-bottom: 0.5em !important; }

.mb1em {
  margin-bottom: 1em !important; }

.mb2em {
  margin-bottom: 2em !important; }

.mb3em {
  margin-bottom: 3em !important; }

.mb4em {
  margin-bottom: 4em !important; }

.pb05em {
  padding-bottom: 0.5em !important; }

.mr0 {
  margin-right: 0 !important; }

li {
  list-style: none; }

p {
  text-align: justify;
  -ms-text-justify: auto;
  text-justify: auto;
  text-justify: inter-ideograph; }

h1, h2, h3, h4, h5, h6, strong {
  font-weight: normal; }

img {
  vertical-align: bottom;
  max-width: 100%; }

.noborder {
  border: none !important; }

.nomargin {
  margin: 0 0 !important; }

.ta_r {
  text-align: right; }

.ta_c {
  text-align: center; }

.ta_l {
  text-align: left; }

.cf:before, .cf:after {
  content: "";
  display: table; }

.cf:after {
  clear: both; }

.cf {
  zoom: 1; }

.enfont ,
.enfont * {
  font-family: 'Libre Baskerville', serif !important;
  letter-spacing: 0.05em;
  font-weight: 400; }

a {
  color: #2D281D;
  text-decoration: none; }

/* ---------------------------------------------------------------------- */
@media (min-width: 1001px) {
  a {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

  img {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

  a:active,
  a:hover,
  a:hover img {
    opacity: 0.5; }

  .img_hidden {
    opacity: 0;
    transition: 1s; }

  .img_open {
    -moz-animation: imgfade 1s linear 0s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0s 1 normal forwards;
    -o-animation: imgfade 1s linear 0s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0s 1 normal forwards; }

  .img_open.ih2 {
    -moz-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.3s 1 normal forwards; }

  .img_open.ih3 {
    -moz-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.6s 1 normal forwards; }

  .img_open.ih4 {
    -moz-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.9s 1 normal forwards; }

  .img_open.ih5 {
    -moz-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -o-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -ms-animation: imgfade 1s linear 1.2s 1 normal forwards; }

  .showup {
    opacity: 0;
    transition: 1s;
    transform: translateY(20px);
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px); }

  .upview {
    -moz-animation: showup 0.6s linear 0s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0s 1 normal forwards;
    -o-animation: showup 0.6s linear 0s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0s 1 normal forwards; }

  .upview.uv2 {
    -moz-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.3s 1 normal forwards; }

  .upview.uv3 {
    -moz-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.6s 1 normal forwards; }

  .upview.uv4 {
    -moz-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.9s 1 normal forwards; }

  .upview.uv5 {
    -moz-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -o-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -ms-animation: showup 0.6s linear 1.2s 1 normal forwards; }

  .showdown {
    opacity: 0;
    transition: 1s;
    transform: translateY(-20px);
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -o-transform: translateY(-20px); }

  .downview {
    -moz-animation: showdown 0.6s linear 0s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0s 1 normal forwards; }

  .downview.dv2 {
    -moz-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.3s 1 normal forwards; }

  .downview.dv3 {
    -moz-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.6s 1 normal forwards; }

  .downview.dv4 {
    -moz-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.9s 1 normal forwards; }

  .showleft {
    opacity: 0;
    transition: 1s;
    transform: translateX(-20px);
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px); }

  .leftview {
    -moz-animation: showleft 1s linear 0s 1 normal forwards;
    -webkit-animation: showleft 1s linear 0s 1 normal forwards;
    -o-animation: showleft 1s linear 0s 1 normal forwards;
    -ms-animation: showleft 1s linear 0s 1 normal forwards; }

  .showright {
    opacity: 0;
    transition: 1s;
    transform: translateX(20px);
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px); }

  .rightview {
    -moz-animation: showright 1s linear 0s 1 normal forwards;
    -webkit-animation: showright 1s linear 0s 1 normal forwards;
    -o-animation: showright 1s linear 0s 1 normal forwards;
    -ms-animation: showright 1s linear 0s 1 normal forwards; }

  .for_sp {
    display: none !important; }

  .for_tab {
    display: none !important; }

  .for_nw {
    display: none !important; }

  .tab .for_pcnotab {
    display: none !important; }

  .tab .for_tab {
    display: inline !important; }

  body {
    font-size: 16px;
    line-height: 24px; }

  .wrap,
  #page {
    width: 100%;
    overflow: hidden;
    position: relative; }


  /* fnav , header
  ---------------------------------------------------------------------- */
    #pc_header {
        width: 100%;
/*        position: absolute;
        top: 0;
        left: 0;
        z-index: 1000;*/
        background: url("../images/index/bg_mv.jpg") 0 0;
    }
    #pc_header .inner {
        width: 1350px;
        margin-right: auto;
        margin-left: auto;
        display: flex;
        /*flex-wrap: wrap;*/
        justify-content: space-between;
        align-items: center;
        padding: 20px 20px;
    }
    #pc_header .inner .logo {
        width: 279px;
    }
    #pc_header .inner .g_nav1 {
        display: flex;
        /*flex-wrap: wrap;*/
        align-items: center;
    }
    #pc_header .inner .g_nav1 .list1 {
        display: flex;
        /*flex-wrap: wrap;*/
        align-items: center;  
    }
    #pc_header .inner .g_nav1 .list1 li {
        margin: 0 10px;
    }
    #pc_header .inner .g_nav1 .list1 li a {
      position: relative;
      display: inline-block;
        line-height: 1.3;
      text-decoration: none;
    }
    #pc_header .inner .g_nav1 .list1 li a::after {
      position: absolute;
      bottom: 0px;
      left: 0;
      content: '';
      width: 100%;
      height: 1px;
      background: #A5855D;
      transform: scale(0, 1);
      transform-origin: center top;
      transition: transform .3s;
    }
    #pc_header .inner .g_nav1 .list1 li a:hover {
        color: #A5855D;
        opacity: 1.0;
    }
    #pc_header .inner .g_nav1 .list1 a:hover::after {
      transform: scale(1, 1);
    }
    
    #fnav {
        width: 100%;
        position: fixed;
        top: -100%;
        z-index: 1000;
        background-color: #fff;
        transition: 1.0s;
        border-bottom: 1px solid #211815;
    }
    #fnav .for_pc {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }
    #fnav.scroll {
          top: 0;
      }
    #fnav .menu1 {
        width: 100%;
        display: flex;
    flex-wrap: wrap;
        justify-content: space-between;
        padding: 15px 35px;
        background: url("../images/index/bg_mv.jpg") 0 0;
        border-bottom: 1px solid #211815;
    }
    @media (max-width: 1430px){

    #fnav .menu1 { justify-content: center; }

  }

    #fnav .menu1 .logo {
        width: 279px;
    }
    #fnav .menu1 .g_nav1 {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
    @media (max-width: 1430px){

    #fnav .menu1 .g_nav1 { justify-content: center; }

  }

    #fnav .menu1 .g_nav1 .list1 {
        display: flex;
        flex-wrap: wrap;
        align-items: center;  
    }
    #fnav .menu1 .g_nav1 .list1 li {
        margin: 0 10px;
    }
    #fnav .menu1 .g_nav1 .list1 li a {
      position: relative;
      display: inline-block;
        line-height: 1.3;
      text-decoration: none;
    }
    #fnav .menu1 .g_nav1 .list1 li a::after {
      position: absolute;
      bottom: 0px;
      left: 0;
      content: '';
      width: 100%;
      height: 1px;
      background: #A5855D;
      transform: scale(0, 1);
      transform-origin: center top;
      transition: transform .3s;
    }
    #fnav .menu1 .g_nav1 .list1 li a:hover {
        color: #A5855D;
        opacity: 1.0;
    }
    #fnav .menu1 .g_nav1 .list1 a:hover::after {
      transform: scale(1, 1);
    }
    #fnav .menu1 .g_nav1 .contact {
        display: flex;
        flex-wrap: wrap;
        align-items: center;  
        border: 1px solid #000;
        font-weight: 500;
        margin-left: 20px;
        padding: 0.2em 1em;
    }
    #fnav .menu1 .g_nav1 .contact img {
        width: 14px;
        margin-right: 2px;
        margin-left: 5px;
    }
    
    @media screen and (max-width:1800px){
    #pc_header .inner {
        /*margin-right: inherit;*/
        /*margin-left: inherit;*/
    }
}
        /*@media screen and (max-width:1520px){*/
          @media screen and (max-width:1400px){
            #pc_header .inner {
                /*width: calc(100% - 300px);*/
                width: 100%;
                /*justify-content: flex-start;*/
                flex-wrap: wrap;
                justify-content: center;
            }
            #pc_header .inner .g_nav1 {
                /*width: calc(100% - 320px);*/
                width: 100%;
                /*margin-left: 30px;*/
                justify-content: center;
            }
    }
        @media screen and (max-width:1230px){
    #pc_header .inner {
        /*padding: 5px 30px;*/
    }
    }

  /* language_menu
  ---------------------------------------------------------------------- */
  .language_menu {
    width: 130px;
    /*position: absolute;*/
      top: 10px;
      right: 20px;
      z-index: 500;
      margin-left: 10px;
    }

  .language_menu > li {
    width: 100%;
    position: relative;
    cursor: pointer; 
    /*border-bottom: 1px solid #2D281D;*/
    border: 1px solid #2D281D;
    }
    .language_menu > li::after {
        content: '';
        border-bottom: solid 1px #2D281D;
        border-left: solid 1px #2D281D;
        transform: rotate( -45deg );
        width: 5px;
        height: 5px;
        position: absolute;
        top: calc(50% - 4px);
        right: 1em;
    }
  .language_menu > li a {
    display: block;
    width: 100%;
    height: 30px;
    /*color: #FFF;*/
    font-size: 13px;
    line-height: 30px;
    position: relative;
 }
  .language_menu > li>a {
    text-align: center;
    color: #2D281D;
 }

  .language_menu > li:hover a {
    opacity: 1; }

  .language_menu > li ul {
    position: absolute;
    z-index: 30;
    left: 0; 
    width: 100%;
  }

  .language_menu > li ul li {
    overflow: hidden;
    height: 0;
    transition: 0.2s;
    position: relative;
    background-color: #2D281D;}

  .language_menu > li ul li:before {
    content: "";
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
    position: absolute;
    top: 0;
    left: 0; }

  .language_menu > li:hover > ul > li {
    width: 100%;
    height: 30px;
    line-height: 30px;
    overflow: visible; }

  .language_menu > li ul li a {
    display: block;
    position: relative;
    height: 30px;
    line-height: 30px;
    text-align: center;
    /*width: 90px; */
    color: #FFF;
  }

  .language_menu > li:hover ul li a:hover {
    background: #FFF;
    color: #2D281D; }

  /* search 
  ---------------------------------------------------------------------- */
    #searcharea {
        width:1350px;
        margin-right: auto;
        margin-left: auto;
        background-color: #fff;
        position: relative;
    }
    #searcharea .inner {
        display: flex;
        flex-wrap: wrap;
        align-items: center;

    }
    #searcharea .inner .title {
        width: 135px;
        text-align: center;
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing:0.25em;
    }
    #searcharea .inner .searchbox {
width: calc(100% - 135px);
    }
    #searcharea .inner .searchbox .rsvmain {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }
    #searcharea .inner .searchbox .rsv_ul {
        display: flex;
    flex-wrap: wrap;
    }
    #searcharea .inner .searchbox .rsv_ul li {
        width: 114px;
        padding: 1em;
        position: relative;
    }
    #searcharea .inner .searchbox .rsv_ul li:not(:last-of-type) {
        border-right: 1px solid #211815;
    }
    #searcharea .inner .searchbox .rsv_ul li.dateli {
        width: 305px !important;
        display: flex;
    flex-wrap: wrap;
        align-items: center;
    }
    #searcharea .inner .searchbox .rsv_ul li.dateli input#date_i {
        width: 140px;
    }
    #searcharea .inner .searchbox input[type="text"] ,
    #searcharea .inner .searchbox select {
        border:0;
        font-size: calc(23em / 16);
        font-weight: 500;
    }
    #searcharea .inner .searchbox input[type="text"] {

      background: url(../images/icon_cal_b.svg) right 40px center no-repeat;
          background-size: 25px;
      }

    #searcharea .inner .searchbox .dateli input#date_i {
        width: 180px;
    }
    #searcharea .inner .searchbox select {
        width: 80px;
    }
    #searcharea .inner .searchbox .rsv_ul li::before {
        position: absolute;
        top: 18px;
        right: 2.3em;
    }
    #searcharea .inner .searchbox .rsv_ul li.stay::before {
        content:  '泊';
    }
    #searcharea .inner .searchbox .rsv_ul li.otona::before {
        content:  '名';
    }   
    #searcharea .inner .searchbox .rsv_ul li.room::before {
        content:  '部屋';
    }      
    #searcharea .inner .searchbox .rsv_ul li.searchbtn {
        width: 160px;
        position: relative;
        padding: 0;
    }
    #searcharea .inner .searchbox .rsv_ul li.searchbtn::before,
    #searcharea .inner .searchbox .plan a::before {
    content: '';
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate( 45deg );
    width: 8px;
    height: 8px;
    position: absolute;
    top: calc(50% - 5px);
    right: 20px;
    }
    #searcharea .inner .searchbox input[type="submit"] {
        width: 100%;
        height: 100%;
        background-color: #A43840;
        color: #fff;
        border: 0;
        cursor: pointer;
    }
    #searcharea .inner .searchbox input[type="submit"]:hover {
        opacity: .7;
    }
    #searcharea .inner .searchbox .plan {
        width: 160px !important;
        position: relative;
        padding: 0 !important;
    }
    #searcharea .inner .searchbox .plan a {
        width: 100%;
        height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
        text-align: center;
        background-color: #A5855D;
        color: #fff;
    }
    #searcharea .inner .searchbox .cancel {
        width: 165px !important;
        padding: 0.5em 1em !important;
    }
    #searcharea .inner .searchbox .cancel a {
        position: relative;
    }
    #searcharea .inner .searchbox .cancel a::before {
    content: '';
    border-top: solid 1px #211815;
    border-right: solid 1px #211815;
    transform: rotate( 45deg );
    width: 8px;
    height: 8px;
    position: absolute;
    top: calc(50% - 5px);
    right: -5px;
    }
    


  /* footer
  ---------------------------------------------------------------------- */
  footer {
      background: #231815;
      padding-top: 120px;
      padding-bottom: 120px;
     }
    footer * {
        color: #fff;
    }
    footer .main {
        display: flex;
        flex-wrap: wrap;
        /*justify-content: space-between;*/
        justify-content: center;
    }
    footer .main .menuarea {
        /*width: 580px;*/
        width: 640px;
    }
    footer .main .menuarea .nav {
        border-bottom: 1px solid #fff;
        margin-bottom: 60px;
        text-align: center;
    }
    footer .main .menuarea .nav a {
        display: inline-block;
        font-size: calc(15em / 16);
        line-height: 1.2;
        letter-spacing: 0.05em;
        padding-right: 1em;
        margin-right: 1em;
        margin-bottom: 0.7em;
        border-right: 1px solid #fff;
    }
    footer .main .menuarea .nav a:last-of-type {
      margin-right: 0;
      padding-right: 0;
      border-right: none;
    }
    footer .main .menuarea .telarea {
        display: flex;
        justify-content: center;
    }
    footer .main .menuarea .telarea .tel {
        font-size: calc(34em / 16);
        font-weight: 300;
        letter-spacing: 0.025em;
        margin-right: 25px;
        margin-bottom: 30px;
    }
    footer .main .menuarea .telarea .tel a {
        font-size: calc(52em / 34);
        pointer-events: none;
    }
    footer .main .menuarea .telarea .sns a {
        display: inline-block;
        width: 40px;
        margin: 0 3px;
    }
    footer .main .menuarea .contact {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 90px;
        padding-left: 100px;
    }
    footer .main .menuarea .contact dt ,
    footer .main .menuarea .contact dd {
        line-height: 1.0;
        margin: 10px 0;
    }
    footer .main .menuarea .contact dt {
        font-size: calc(13em / 16);
        color: #231815;
        background-color: #fff;
        padding: 0.2em 1em;
        margin-right: 10px;
    }
    footer .main .menuarea .contact dd {
        padding-right: 30px;
    }
    footer .main .menuarea .contact dd:nth-of-type(1) {
        width: calc(100% - 100px);
    }
    footer .main .menuarea .link {
        display: block;
        width: 340px;
        font-size: calc(20em / 16);
        letter-spacing: 0.1em; 
        font-weight: 700;
        color: #fff;
        text-align: center;
        padding: 1em 0;
        position: relative;
        background: #A5855D url("../images/link_arrow01.svg") no-repeat right 10px bottom 10px;
        -webkit-background-size: 450px auto;
        background-size: 450px auto;
        transition: all 0.3s ease;
        margin: auto;
    }
    footer .main .menuarea .link:hover {
        background: #A5855D url("../images/link_arrow01.svg") no-repeat right 5px bottom 10px;
        -webkit-background-size: 450px auto;
        background-size: 450px auto;
    }
    
    footer .main .hotelarea {
        width: 572px;
    }
    footer .main .hotelarea h5 {
      font-size: 22px;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 10px;
    }
    footer .main .hotelarea ul li {
        margin-bottom: 20px;
        border: 1px solid #fff;
    }
    footer .main .hotelarea ul li a {
        display: flex;
    flex-wrap: wrap;
        justify-content: space-between;
        padding: 15px 30px; 
    }
    footer .main .hotelarea ul li .address {
        width: 305px;
    }
    footer .main .hotelarea ul li:nth-of-type(1) dt {
        width: 270px;
    }
    footer .main .hotelarea ul li:nth-of-type(2) dt {
        width: 254px;
    }
    footer .main .hotelarea ul li .image {
        width: 187px;
    }
     .copyright {
        width: 100%;
        background-color: #fff;
        padding: 40px 0;
        text-align: center;
    }
    .copyright small {
        font-size: calc(14em / 16);
        font-weight: 700;
        color: #231815;
    }

  /* pagetop
  ---------------------------------------------------------------------- */
  #page-top {
    width: 25px;
    position: fixed;
    bottom: 10px;
    right: 30px;
    z-index: 1000; 
    }

  /* common
  ---------------------------------------------------------------------- */
  .mainw,
  .mainw_pc {
    width: 1100px;
    margin: 0 auto; }

  .w1200 {
    width: 1200px;
    margin: 0 auto; }

  .w1100 {
    width: 1100px;
    margin: 0 auto; }

  .w1000 {
    width: 1000px;
    margin: 0 auto; }

  .w950 {
    width: 950px;
    margin: 0 auto; }

  .w900 {
    width: 900px;
    margin: 0 auto; }

  .w920 {
    width: 920px;
    margin: 0 auto; }

  .w800 {
    width: 800px;
    margin: 0 auto; }

  .w700 {
    width: 700px;
    margin: 0 auto; }

  .anchor {
    margin-top: -100px;
    padding-top: 100px; }

  .cflex {
    display: flex; }

  p {
    font-size: 16px;
    line-height: 28px; }

  .img100 {
    width: 100%; }

  .img100 img {
    width: 100%; }

.ui-state-default:hover, 
.ui-widget-content .ui-state-default:hover, 
.ui-widget-header .ui-state-default:hover {
  background: #000;
  color: #FFF;
}



/* End @media (min-width: 1001px) and  (max-width:1055px) */
/* ---------------------------------------------------------------------- */
@-moz-keyframes imgfade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes imgfade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-o-keyframes imgfade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-ms-keyframes imgfade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-moz-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-webkit-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-o-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-ms-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-moz-keyframes showdown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-webkit-keyframes showdown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-o-keyframes showdown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-ms-keyframes showdown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-moz-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-webkit-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-o-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-ms-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-moz-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-webkit-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-o-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-ms-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
}
    }
}

/* ---------------------------------------------------------------------- */
@media (max-width: 1000px) {

@media (max-width: 750px) {
  body {
    font-size: calc(100vw / 28);
    line-height: 1.5; }
    }
@media screen and (max-width:320px){
	body{font-size: 16px;}
}
  .mb20 {
    margin-bottom: 2.6vw !important; }

  .mb25 {
    margin-bottom: 3.3vw !important; }

  .mb30 {
    margin-bottom: 4vw !important; }

  .mb40 {
    margin-bottom: 5.3vw !important; }

  .mb50 {
    margin-bottom: 6.6vw !important; }

  .mb60 {
    margin-bottom: 8vw !important; }

  .mb70 {
    margin-bottom: 9.3vw !important; }

  .mb80 {
    margin-bottom: 10.6vw !important; }

  .mb90 {
    margin-bottom: 12vw; }

  .mb100 {
    margin-bottom: 13.3vw !important; }

  .mb120 {
    margin-bottom: 16vw !important; }

  .pt50 {
    padding-top: 6.6vw !important; }

  .ls-1 {
    letter-spacing: -1px; }

  .ls-2 {
    letter-spacing: -2px; }

  .ls-3 {
    letter-spacing: -3px; }

  .ls-4 {
    letter-spacing: -4px; }

  .fs10 {
    font-size: 3vw; }

  .fs14, .fs15 {
    font-size: 3.4vw; }

  .fs16 {
    font-size: 3.7vw; }

  .fs24 {
    font-size: 4vw; }

  .fs26 {
    font-size: 5vw; }

  .wrap,
  #page {
    width: 100%;
    overflow: hidden;
    position: relative; }

  .for_pc {
    display: none !important; }

  .for_tab {
    display: none; }

  .for_pcnotab {
    display: none !important; }

  .for_nw {
    display: none !important; }

  .cf_s:before, .cf_s:after {
    content: "";
    display: table; }

  .cf_s:after {
    clear: both; }

  .cf_s {
    zoom: 1; }

  .showup {
    opacity: 0;
    transition: 1s;
    transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw); }

  .upview {
    -moz-animation: showup 1s linear 0s 1 normal forwards;
    -webkit-animation: showup 1s linear 0s 1 normal forwards;
    -o-animation: showup 1s linear 0s 1 normal forwards;
    -ms-animation: showup 1s linear 0s 1 normal forwards; }

  .showdown {
    opacity: 0;
    transition: 1s;
    transform: translateY(-4vw);
    -webkit-transform: translateY(-4vw);
    -moz-transform: translateY(-4vw);
    -ms-transform: translateY(-4vw);
    -o-transform: translateY(-4vw); }

  .downview {
    -moz-animation: showup 1s linear 0s 1 normal forwards;
    -webkit-animation: showup 1s linear 0s 1 normal forwards;
    -o-animation: showup 1s linear 0s 1 normal forwards;
    -ms-animation: showup 1s linear 0s 1 normal forwards; }

  .showleft {
    opacity: 0;
    transition: 1s;
    transform: translateX(-4vw);
    -webkit-transform: translateX(-4vw);
    -moz-transform: translateX(-4vw);
    -ms-transform: translateX(-4vw);
    -o-transform: translateX(-4vw); }

  .leftview {
    -moz-animation: showleft 1s linear 0s 1 normal forwards;
    -webkit-animation: showleft 1s linear 0s 1 normal forwards;
    -o-animation: showleft 1s linear 0s 1 normal forwards;
    -ms-animation: showleft 1s linear 0s 1 normal forwards; }

  .showright {
    opacity: 0;
    transition: 1s;
    transform: translateX(4vw);
    -webkit-transform: translateX(4vw);
    -moz-transform: translateX(4vw);
    -ms-transform: translateX(4vw);
    -o-transform: translateX(4vw); }

  .rightview {
    -moz-animation: showright 1s linear 0s 1 normal forwards;
    -webkit-animation: showright 1s linear 0s 1 normal forwards;
    -o-animation: showright 1s linear 0s 1 normal forwards;
    -ms-animation: showright 1s linear 0s 1 normal forwards; }

  /* fnav , header 
  ---------------------------------------------------------------------- */
  #fnav {
    width: 100%;
    position: fixed;
    right: 0;
    left: 0;
    z-index: 2000; }

  #sp_header {
    width: 100%;
    background-color: #FAF9F3;  
    padding: calc(20 / 750 * 100vw) 0;
    transition: 0.3s; 
    display: flex;
    flex-wrap: wrap;}

    #sp_header a {
        display: block;
        width: calc(100% / 4);
            display: flex;
    justify-content: center;
    align-items: center;
        color: #281613;
        font-size: calc(32em / 26);
        padding: 0.5em 0;
        background-repeat: no-repeat;
        background-position: center center;

    }
    #sp_header a:hover {
        text-decoration: underline;
    }
    #sp_header a:not(:last-of-type) {
        border-right: 1px solid #281613;
        color: #A5855D;
    }
    #sp_header a:nth-of-type(1) {
        -webkit-background-size: calc(75 / 750 * 100vw) auto;
        background-size: calc(75 / 750 * 100vw) auto;
        background-image: url("../images/icon_menu01.svg");   
    }
    #sp_header a:nth-of-type(2) {
        -webkit-background-size: calc(60 / 750 * 100vw) auto;
        background-size: calc(60 / 750 * 100vw) auto;
        background-image: url("../images/icon_menu02.svg");   
    }
    #sp_header a:nth-of-type(3) {
        -webkit-background-size: calc(57 / 750 * 100vw) auto;
        background-size: calc(57 / 750 * 100vw) auto;
        background-image: url("../images/icon_menu03.svg");   
    }
    #sp_header a:nth-of-type(4) {
        -webkit-background-size: calc(52 / 750 * 100vw) auto;
        background-size: calc(52 / 750 * 100vw) auto;
        background-image: url("../images/icon_menu04.svg");   
    }
    #sp_header #menu_sp {
        z-index: 10000;
    }


  #fnav_in {
    display: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 100vw;
    z-index: 4000;
    text-align: center;
    height: 100vh;
    overflow: auto;
    background: #A43840;
      padding: calc(30 / 750 * 100vw) calc(35 / 750 * 100vw);
 }
    #fnav_in * {
        color: #fff;
    }    
  #fnav_in nav {
    width: 100%;
    height: 100%;
      overflow: auto;}
#fnav_in .logo {
    margin-bottom: calc(15 / 750 * 100vw);
}
    #fnav_in .language_menu {
        width: calc(200 / 750 * 100vw);
        margin-right: inherit;
    margin-left: auto;
        margin-bottom: calc(5 / 750 * 100vw);
    }
#fnav_in .list1 {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #fff;
    margin-bottom: calc(20 / 750 * 100vw);
}
#fnav_in .list1 li {
    width: 50%;
    border-bottom: 1px solid #fff;
}
#fnav_in .list1 li:nth-of-type(2n + 1) {
    border-right: 1px solid #fff;
}
#fnav_in .list1 li a {
    display: flex;
    align-items: center;
    width: 100%;
    height: calc(95 / 750 * 100vw);
    padding-left: calc(30 / 750 * 100vw);
    font-size: calc(30em / 26);
    line-height: 1.2;
    text-align: left;
}
#fnav_in .list2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: calc(25  / 750 * 100vw);
}
#fnav_in .list2 li {
    
}
#fnav_in .list2 li a {
    position: relative;
    padding: 0.5em calc(25 / 750 * 100vw);
}
#fnav_in .list2 li a::before {
    content: '';
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate( 45deg );
    width: calc(15 / 750 * 100vw);
    height: calc(15 / 750 * 100vw);
    position: absolute;
    top: calc(50% - calc(10 / 750 * 100vw));
    left: 0;
}
    #fnav_in .contact {
        display: flex;
        flex-wrap: wrap;
        align-items: center;  
        border: 1px solid #fff;
        font-size: calc(28em / 26);
        font-weight: 500;
        padding: 0.2em 0.5em;
        margin-bottom: calc(25 / 750 * 100vw);
        letter-spacing: -0.05em;
    }
    #fnav_in .contact img {
        width: calc(28 / 750 * 100vw);
        margin-right: calc(5 / 750 * 100vw);
        margin-left: calc(10 / 750 * 100vw);
    }    
#fnav_in .contact a {
    font-size: calc(45em / 28);
    letter-spacing: 0;
}
#fnav_in .sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#fnav_in .sns a {
    width: calc(90 / 750 * 100vw);
    margin: 0 calc(15 / 750 * 100vw);
}
#fnav_in .menu_close {
    width: calc(65 / 750 * 100vw);
    position: absolute;
    right: calc(30 / 750 * 100vw);
    bottom: calc(30 / 750 * 100vw);
}


  /* language_menu
  ---------------------------------------------------------------------- */
  #fnav_in .language_menu > li {
    width: 100%;
    position: relative;
      padding-bottom: calc(15 / 750 * 100vw);
      text-align: center;
    }
    #fnav_in .language_menu > li::after {
        content: '';
        border-bottom: solid 1px #908068;
        border-left: solid 1px #908068;
        transform: rotate( -45deg );
        width: calc(15 / 750 * 100vw);
        height: calc(15 / 750 * 100vw);
        position: absolute;
        top: calc(10 / 750 * 100vw);
        right: 0;
    }
  #fnav_in .language_menu li a {
    display: block;
    text-align: center;
    position: relative; }

  #fnav_in .language_menu li ul {
    display: none;
  }

  /* footer
  ---------------------------------------------------------------------- */
  footer {
      background: #231815;
      padding-top: calc(90 / 750 * 100vw);
      padding-bottom: calc(90 / 750 * 100vw);
     }
    footer * {
        color: #fff;
    }
    footer .main {
        width: calc(645 / 750 * 100vw);
        margin: auto;
    }
    footer .main .menuarea .nav {
        border-bottom: 1px solid #fff;
        margin-bottom: calc(20 / 750 * 100vw);
    }
    footer .main .menuarea .nav a {
        display: inline-block;
        font-size: calc(23em / 26);
        line-height: 1.2;
        letter-spacing: 0.05em;
        padding-right: 0.5em;
        margin-right: 0.5em;
        margin-bottom: 0.7em;
        border-right: 1px solid #fff;
    }
    footer .main .menuarea .telarea {
        margin-bottom: calc(60 / 750 * 100vw);
    }
    footer .main .menuarea .telarea .tel {
        font-size: calc(40em / 26);
        font-weight: 300;
        letter-spacing: 0.025em;
        margin-bottom: calc(10 / 750 * 100vw);
    }
    footer .main .menuarea .telarea .tel a {
        font-size: calc(62em / 40);
    }
    footer .main .menuarea .telarea .sns a {
        display: inline-block;
        width: calc(80 / 750 * 100vw);
        margin: 0 calc(5 / 750 * 100vw);
    }
    footer .main .menuarea .contact {
        display: flex;
    flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: calc(30 / 750 * 100vw);
    }
    footer .main .menuarea .contact dt ,
    footer .main .menuarea .contact dd {
        line-height: 1.0;
        margin-bottom: calc(20 / 750 * 100vw);
    }
    footer .main .menuarea .contact dt {
        width: calc(142 / 750 * 100vw);
        color: #231815;
        background-color: #fff;
        padding: 0.1em 0;
        text-align: center;
    }
    footer .main .menuarea .contact dd {
        width: calc(100% - calc(155 / 750 * 100vw));
        padding-top: 0.1em;
    }
    footer .main .menuarea .link {
        display: block;
        width: calc(530 / 750 * 100vw);
        margin: 0 auto calc(80 / 750 * 100vw);
        font-size: calc(30em / 26);
        letter-spacing: 0.1em; 
        font-weight: 700;
        color: #fff;
        text-align: center;
        padding: 0.7em 0;
        position: relative;
        background: #A5855D url("../images/link_arrow01_sp.svg") no-repeat right calc(20 / 750 * 100vw) bottom calc(15 / 750 * 100vw);
        -webkit-background-size: 100% auto;
        background-size: 100% auto;
        transition: all 0.3s ease;
    }
    footer .main .menuarea .link:hover {
        background: #A5855D url("../images/link_arrow01_sp.svg") no-repeat right calc(15 / 750 * 100vw) bottom calc(15 / 750 * 100vw);
        -webkit-background-size: 100% auto;
        background-size: 100% auto;
    }
    footer .main .hotelarea ul li {
        margin-bottom: calc(20 / 750 * 100vw);
        border: 1px solid #fff;
    }
    footer .main .hotelarea h5 {
        font-size: calc(26em / 26);
        text-align: center;
        margin-top: calc( 20 / 750 * 100vw );
        margin-bottom: calc( 10 / 750 * 100vw );;
    }
    footer .main .hotelarea ul li a {
        display: flex;
    flex-wrap: wrap;
        justify-content: space-between;
        /*border: 1px solid #fff;*/
        padding: calc(15 / 750 * 100vw) calc(30 / 750 * 100vw);
    }
    footer .main .hotelarea ul li .address {
        width: calc(310 / 750 * 100vw);
    }
    footer .main .hotelarea ul li:nth-of-type(2) dt {
        width: calc(292 / 750 * 100vw);
    }
    footer .main .hotelarea ul li .address dd {
        font-size: calc(23em / 26);
        line-height: 1.3;
        padding-left: calc(20 / 750 * 100vw);
    }
    footer .main .hotelarea ul li .image {
        width: calc(253 / 750 * 100vw);
    }
footer .main .hotelarea ul li .image img {
    width: 100%;
}
     .copyright {
        width: 100%;
        background-color: #fff;
        padding: calc(20 / 750 * 100vw) 0;
        text-align: center;
    }
    .copyright small {
        font-size: calc(20em / 26);
        line-height: 1.0;
        font-weight: 700;
        color: #231815;
    }

  /* pagetop
  ---------------------------------------------------------------------- */
  #page-top {
      display: block;
    width: calc(28 / 750 * 100vw);
    position: fixed;
      right: calc(20 / 750 * 100vw);
    bottom: calc(10 / 750 * 100vw);
    z-index: 1000; 
    }
    
  /* common
  ---------------------------------------------------------------------- */
  .mainw,
  .w1200,
  .w1100,
  .w1000,
  .w900,
  .w920,
  .w800,
  .w700 {
    width: 82vw;
    max-width: 100%;
    margin: 0 auto;
    padding: 0; }

  .w950 {
    width: 80%;
    margin-left: auto;
    margin-right: auto; }

  .anchor {
    margin-top: -20vw;
    padding-top: 20vw; }





  /* keyframe
  ---------------------------------------------------------------------- */
@-moz-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(4vw); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-webkit-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(4vw); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-o-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(4vw); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@-ms-keyframes showup {
  0% {
    opacity: 0;
    transform: translateY(4vw); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
  @-moz-keyframes txtfade {
    0% {
      opacity: 0;
      transform: translateY(4vw); }
    100% {
      opacity: 1;
      transform: translateY(0); } }
  @-webkit-keyframes txtfade {
    0% {
      opacity: 0;
      transform: translateY(4vw); }
    100% {
      opacity: 1;
      transform: translateY(0); } }
  @-o-keyframes txtfade {
    0% {
      opacity: 0;
      transform: translateY(4vw); }
    100% {
      opacity: 1;
      transform: translateY(0); } }
  @-ms-keyframes txtfade {
    0% {
      opacity: 0;
      transform: translateY(4vw); }
    100% {
      opacity: 1;
      transform: translateY(0); } }
@-moz-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-webkit-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-o-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-ms-keyframes showleft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-moz-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-webkit-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-o-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@-ms-keyframes showright {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
}
/* End @media (max-width:1000px) */

/* ======================================================
MV
====================================================== */
@media (min-width: 1001px) {
  #mainvisual {
    width: 100%;
    height: 593px;
    position: relative;
    /*margin-top: 80px;*/
    /*margin-top: 95px;*/
  }
  #mainvisual .mv {
    width: 100%;
    height: 593px;
  }
  #mainvisual .mv picture {
    width: 100%;
    height: 593px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  #mainvisual .mv picture img {
    min-width: 100%;
    height: 593px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual .mv .catch {
    width: 100%;
    height: 593px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (max-width: 1000px) {
  #mainvisual {
    width: 100%;
    height: calc(430 / 750 * 100vw);
    margin-top: calc(64 / 750 * 100vw);
    position: relative;
    overflow: hidden;
    z-index: 0;
  }
  #mainvisual .mv picture {
    width: 100%;
    height: calc(430 / 750 * 100vw);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  #mainvisual .mv picture img {
    min-width: 100%;
    height: calc(430 / 750 * 100vw);
    -o-object-fit: cover;
       object-fit: cover;
  }
}

/* c-btn
---------------------------------------------------------------------- */
.c-link__box{
  display: flex;
}
.--center{
  justify-content: center;
}
.--between{
  justify-content: space-between;
}
.c-link{
  min-height: 85px;
  width: 462px;
  padding: 10px;
  max-width: 100%;
  color: #fff;
  background-color: #943F43;
  border: 1px solid #943F43;
  font-size: 20px;
  cursor: pointer;
  font-weight: bold;
  transition: 0.3s;
}
.c-link:hover{
  opacity: 0.8;
  background-color: #fff;
  color: #943F43;
}