body .root-container{
  line-height: 1;
}

.root-container video,.root-container iframe {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  font-family: sans-serif;
  vertical-align: baseline;
}
.root-container ul {
  list-style: none;
  margin:0;
  padding: 0;
}


.root-container table {
  border-collapse: collapse;
  border-spacing: 0;
}

.root-container a:not(.nav a):hover {
  transition: opacity 0.5s ease-in-out;
  opacity: 0.65;
}

.root-container img {
  width: 100%;
}
.root-container strong {
  font-weight: bold;
}

/************************************
  共通
************************************/
.root-container {
  margin-bottom: 80px;
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 1190px;
  text-align: center;
}
@media (max-width: 1128px) {
  #top.root-container {
    min-width: inherit;
  }
}

.pc {
  display: block;
}
.sp {
  display: none;
}
@media (max-width: 767px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}

.root-container img {
  vertical-align: bottom;
}

.sec {
  margin-top: 10%;
}

.containerS {
  width: 100%;
  max-width: 950px;
}
@media (max-width: 950px) {
  .containerS {
    width: 98vw;
  }
}

.mt1 {
  margin-top: 1%;
}
.mt2 {
  margin-top: 2%;
}
/*メインビジュアル*/
.mv h3 {
  position: relative;
}
.mv__label {
position: absolute;
top: 35%;
left: 0;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 100px;
}
.mv__labelImg {
position: absolute;
z-index: 3;
display: flex;
}
.mv__labelImg svg {text-shadow: 0 0 6px #260b02, 0 0 15px #260b02;}
.mv__labelBg {
width: 100%;
height: 100%;
background: rgba(63,34,16,0.45);
mix-blend-mode: multiply;
z-index: 2;
}
@media (max-width: 767px) {
  .mv__label,.mv__labelImg svg,.mv__label img {
    height: 8.4vw;
  }
}

/*セクション*/
.sec__title__image {
  width: auto !important;
  height: 100%;
  max-width: 100%;
  max-height: 100px;
  }
  @media (max-width: 767px) {
    .sec__title__image {
      max-width: 90%;
      height: auto;
    max-height: 10vw;
    }
  }

.sec__title__border {
  margin-bottom: 2%;
  width: 100%;
  border-bottom: 8px solid transparent;
  border-image: linear-gradient(to right, #eadada 0%, #990000 25%, #990000 75%, #eadada 100%);
  border-image-slice: 1;
}
@media (max-width: 767px) {
  .sec__title__border {
    border-bottom: 4px solid transparent;
    border-image: linear-gradient(to right, #eadada 0%, #990000 25%, #990000 75%, #eadada 100%);
    border-image-slice: 1;
  }
}

.sec__contents__txt {
  margin: 3% auto;
  font-size: 1.4rem;
  letter-spacing: 0.07em;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .sec__contents__txt {
    width: 90%;
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    box-sizing: border-box;
  }
}

.sec__contents__txtBg {
  margin: 0 auto;
  padding: 1rem 0;
  width: 70%;
  box-sizing: border-box;
  text-align: center;
  background: #f7f2e5;
}
.sec__contents__txtBg div {
  display: inline-block;
  font-size: 110%;
  font-weight: bold;
  letter-spacing: 0.075em;
  line-height: 1.8;
  text-align: left;
}
@media (max-width: 767px) {
  .sec__contents__txtBg {
    padding: 0.5rem;
    width: 95%;
    box-sizing: border-box;
  }
  .sec__contents__txtBg div {
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}

.col img {
  display: block;
}

.col2,
.col3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.col2 > * {
  width: 49.5%;
}
.col3 > * {
  width: 32.7%;
}

.sec__button {
  margin-top: 7%;
}

.sec__button img {
  width: 85%;
  max-width: 650px;
}
@media (max-width: 767px) {
  .sec__button img {
    width: 70%;
  }
}

/************************************
  ヘッダー
************************************/
.header {
  margin-top: 2%;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.header_logo {
  /* 松阪 */
  width: 35%;
}
.header_tel {
  margin-top: 0.5%;
  width: 22%;
}

/************************************
  ナビ
************************************/
.nav {
  display: flex;
  align-items: flex-end;
  width: 100%;
}
.nav a {
  position: relative;
}
.nav a:nth-child(n + 2):nth-child(-n + 6)::before {
  content: '';
  position: absolute;
  top: 12.5%;
  left: 0;
  width: 2px;
  height: 75%;
  background: #333333;
}
@media (max-width: 767px) {
  .nav a:nth-child(n + 2):nth-child(-n + 6)::before {
    width: 1px;
  }
}

.nav a::after {
  content: '';
  position: absolute;
  bottom: 12%;
  left: 22.5%;
  width: 55%;
  height: 6.5px;
  background: #1e86ff;
  opacity: 0;
  transition: all 0.35s ease-in-out;
}
@media (max-width: 767px) {
  .nav a::after {
    height: 3.2px;
  }
}

.nav a:hover::after,
.nav a.current::after {
  opacity: 1;
}

/************************************
  スライダー
************************************/
/* .mvslide {
  margin: 0 auto;
  width: 100%;
  max-width: 1190px;
}

.c-slider__listImage img {
  width: 100%;
} */

/* .mvslider {
  width: 1190px;
  height: 560px;
  border: none;
} */

/*メインビジュアル*/
.mvslider {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 47%;
}

.mvslider iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mvslider img {
  width: 100%;
}
.c-slider__listImage {
  position: relative;
}
.c-slider__listLabel {
position: absolute;
bottom: 5%;
left: 0;
width: 17%;
max-width: 200px;
}

/*セクション*/
.secslider {
  position: relative;
  overflow: hidden;
  width: 950px;
  max-width: 100%;
  height: 0;
  padding-top: 46%;
}
@media (max-width: 767px) {
  .secslider {
    width: 100%;
  }
}

.secslider iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* ドット全体の位置とレイアウト */
.slick-dots {
  position: absolute;
  bottom: 15px;
  left: calc(50% + 20px);
  transform: translateX(-50%);
  display: flex !important;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 767px) {
  .slick-dots {
    bottom: 10px;
    left: calc(50% + 7px);
  }
}

/* ドットの見た目 */
.slick-dots li button {
  margin-right: 20px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #fff;
  border: none;
  padding: 0;
  font-size: 0;
  cursor: pointer;
  transition: background-color 0.3s;
  opacity: 0.5;
}
@media (max-width: 767px) {
  .slick-dots li button {
    width: 7px;
    height: 7px;
  }
}

/* アクティブなドット */
.slick-dots li.slick-active button {
  background-color: #7B0304;
  opacity: 1;
}

/************************************
  トップページ
************************************/

.tiktok {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 83%;
}
@media (max-width: 950px) {
  .tiktok {
    padding-top: 790px;
  }
}

.tiktok iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map {
  position: relative;
  overflow: hidden;
  width: 950px;
  max-width: 100%;
  height: 0;
  padding-top: 50%;
}
@media (max-width: 767px) {
  .map {
    width: 100%;
  }
}

.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/******/
/* .sec_plan .sec__contents a {
  display: block;
  width: 33%;
} */

.sec_plan .sec__contents a div {
  padding: 0.3rem 0;
  box-sizing: border-box;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.5;
  color: #1D86FF;
  text-decoration: underline;
  text-decoration-color: #1D86FF;
  text-align: left;
}
@media (max-width: 767px) {
  .sec_plan .sec__contents a div {
    font-size: 0.65rem;
    line-height: 1.2;
  }
}

/************************************
  ホテル案内
************************************/
.sec_other .sec__contents > * {
  margin-bottom: 1%;
}
.otherList {
  position: relative;
}
.otherList__label {
position: absolute;
bottom: 0;
left: 0;
display: flex;
align-items: center;
width: 100%;
height: 35px;
}
.otherList__labelTxt {
position: absolute;
z-index: 3;
padding-left: 0.8rem;
font-size: 19px;
letter-spacing: 0.15rem;
color:#fff;
}
.otherList__labelBg {
width: 100%;
height: 100%;
background: rgba(63,34,16,0.45);
mix-blend-mode: multiply;
z-index: 2;
}
@media (max-width: 767px) {
  .otherList__label {
    height: 3.2vw;
  }
  .otherList__labelTxt {
  padding-left: 0.3rem;
  font-size: 9px;
  letter-spacing: 0.05rem;
  }
}

/************************************
  客室
************************************/
.sec_room .col {
  margin-top: 1%;
}

@media (max-width: 767px) {
  .sec_room .sec {
    margin-top: 12%;
  }
}
@media (max-width: 950px) {
  #room .sec_room .sec__title__image {
  height: 9.5vw;
  }
}

.sec__contents__txtRoom {
  margin: 3% auto -2%;
  font-size: 1.15rem;
  letter-spacing: 0.05em;
  line-height: 1.8;
  text-align: left;
}
@media (max-width: 767px) {
  .sec__contents__txtRoom {
    padding: 0 0.25rem;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    box-sizing: border-box;
  }
}

/************************************
  大浴場
************************************/
.sec_spa .sec__contents img:not(:first-child) {
  margin-top: 1%;
}

/************************************
  アクセス
************************************/
#access .map {
  width: 99.5vw;
}
#access .tiktok {
  margin-top: 3%;
}
@media (max-width: 767px) {
  #access .tiktok {
    padding-top: 1500px;
  }
}
.sec__contents__txtAccess {
  margin: 2% auto 0;
  width: 100%;
  font-size: 1.15rem;
  letter-spacing: 0.075em;
  line-height: 1.8;
  text-align: left;
}
@media (max-width: 767px) {
  .sec__contents__txtAccess {
    padding: 0 0.25rem;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
.sec__contents__txtAccess p:not(:last-child) {
  margin-bottom: 3%;
}
.sec_areainfo {
  width: 100%;
}
.sec_areainfo .containerS {
  margin: 0 auto;
  padding: 5%;
  font-size: 75%;
  background: #F9F5EF;
  box-sizing: border-box;
}
.sec_areainfo dt {
  margin: 4% 0 0.8%;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2;
  border-bottom: solid 4px #3F2210;
}
.sec_areainfo dd {
  line-height: 1.8;
}
@media (max-width: 767px) {
  .sec_areainfo .containerS {
    padding: 8% 5%;
  }
  .sec_areainfo dt {
    font-size: 1rem;
    border-bottom: solid 2px #3F2210;
  }
  .sec_areainfo dd {
    letter-spacing: 0.05em;
    line-height: 1.6;
  }
}

