@charset "utf-8";

/* スマホ縦 */
@media screen and (max-width: 430px) {
  h3 { letter-spacing: .08em; }
  /* .expansion > dd */
  .expansion > dd .inner { align-items: baseline; }
  .expansion > dd .inner2 { padding: 80px 0 40px 0; }
  
  /* header */
  header .left {
    width: 40%;
    display: flex;
  }
  header .right { width: 60%; }
  header .logo { margin: 0 0 0 6.25vw; }
  header h1{ top: 25%; }

  /* hnav */
  #hnav > dd .inner2 > div { display: block; }
  #hnav > dd nav:nth-of-type(2) {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }
  #hnav > dd nav:nth-of-type(2) li:nth-child(3){
    border-top: 1px solid rgba(219, 203, 186, .5);
    padding: 1em 0 0 0;
    margin: 1em 0 0 0;
  }
  #hnav > dd nav:nth-of-type(3) {
    margin: 1em 0 0 0;
    padding: 1em 0 0 0;
    border-top: 1px solid #efddca;
    display: grid;
    place-content: center;
  }
  #hnav .logo {
    height: 70px;
    margin-bottom: 30px;
  }

  /* sakura */
  .sakura > li:last-child { display: block; max-width: 200px; }
  .sakura > li:first-child { display:block; max-width: 200px; }

  .mv .carousel.slide .add-animation > div {
    -webkit-animation-name: slide;
    animation-name: slide;
    -webkit-animation-fill-mode: none;
    animation-fill-mode: none;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-duration: 5.5s;
    animation-duration: 5.5s;
  }

  /* footer */
  footer .text_wrap {
    display: block;
    padding: 40px 6.25vw 200px 6.25vw;
    height: auto;
  }
  footer > .inner:after { background-position: 55%; }
  footer nav ul { line-height: 1.75; }
  footer .right nav { display: none; }
  footer > .inner.lazyloaded::before {
    background: linear-gradient(to bottom, rgba(0,0,0,.5) 0%, rgba(0,0,0,.5) 25%, rgba(0,0,0,0) 75%, rgba(0,0,0,.5) 100%);
  }
  footer .logo { margin: 0 0 40px 0;}
  footer .logo img { margin: 0 auto;}
  footer address { text-align: center;}
  footer .sns{ justify-content: center; }
  footer > .inner::after { background-attachment: scroll; }

  /* slideshow */
  .slideshow .slick-slide { padding: 0 6.25vw; }

  /* slideshow2 */
  .slideshow2 .slick-list { padding: 0 6.25% 0 0; }

  /* slideshow3 */
  .slideshow3 .slick-slide { padding: 0 3.125vw; }

  /* mv */
  .mv .scroll {
    display: none;
    bottom: 60px;
    width: 40px;
    height: 40px;
  }

  /*スマホ高さ調整用追加*/
  .mv.home { height: 60vh; }
  .mv.home .carousel .slick-slide { height: 60vh; }
  .mv.home .slick-slide:nth-of-type(2) > div { background-position: 50%;}
  .mv.home .slick-slide:nth-of-type(3) > div { background-position: 50%;}
  .mv.home .slick-slide:nth-of-type(5) > div { background-position: 2%}
  .mv.home .slick-slide:nth-of-type(6) > div { background-position: 70%;}
  .mv.home .slick-slide:nth-of-type(7) > div { background-position: 60%;}
  .mv.guestroom .slick-slide:nth-of-type(1) > div { background-position: 60%;}
  /*高さ100％
  .mv.home .slick-slide:nth-of-type(1) > div { background-position: 70%;}
  .mv.home .slick-slide:nth-of-type(2) > div { background-position: 40%;}
  .mv.home .slick-slide:nth-of-type(3) > div { background-position: 50%;}
  .mv.home .slick-slide:nth-of-type(4) > div { background-position: 30%;}
  .mv.home .slick-slide:nth-of-type(5) > div { background-position: 9%}
  .mv.home .slick-slide:nth-of-type(6) > div { background-position: 60%;}
  .mv.home .slick-slide:nth-of-type(7) > div { background-position: 60%;}
  .mv.home .slick-slide:nth-of-type(8) > div { background-position: 70%;}
  .mv.home .slick-slide:nth-of-type(9) > div { background-position: center;}
  .mv.home .slick-slide:nth-of-type(10) > div { background-position: 70%;}
  */
  /* layout_common */
  .layout_common > .inner { padding: 80px 6.25% 0; }
  .layout_common .img_wrap img { max-width: 62.5vw; }
  .layout_common .alignc { text-align: left!important; }

  .contact{ margin: 0 0 75px 0; }
  .contact span.tel{
    margin: 40px .5em 0 0;
    display: block;
  }
  .layout_common h3 { padding: 0 0 40px 0; }
  .spec dl { width: calc(6.25vw* 14); }

  /* ---------------------------------------------- 
      layout_plan
  ---------------------------------------------- */
  .layout_plan { margin: 75px auto; }

  /* layout_bnr */
  .layout_bnr .inner { padding: 40px 0 0 0; }
  .layout_bnr > .inner > ul { padding: 0 3.125vw 40px 3.125vw; }
  .layout_bnr .text_wrap .text_of { font-size: 12rem; }

  /* layout_access */
  .layout_access .title {
    margin: 0;
    padding: 40px 6.25vw;
    min-width: 300px;
  }
  .layout_access .access_detail {
    width: 100%;
    padding: 0 0 20px 3.125vw;
  }
  .layout_access .access_detail ul { margin: 0 6.25vw; }
  .layout_access .access_detail li:nth-of-type(even),
  .layout_access .access_detail li:nth-of-type(even).x2,
  .layout_access .access_detail li:nth-of-type(even).x3 {
    height: auto;
    min-height: 75px;
    padding: 1em 0 1em 32px;
    font-size: 14rem;
  }
  .layout_access .access_detail.train li.x2:nth-of-type(even):before,
  .layout_access .access_detail.train li.x2:nth-of-type(even):after,
  .layout_access .access_detail.train li.x3:nth-of-type(even):before,
  .layout_access .access_detail.train li.x3:nth-of-type(even):after {
    height: auto;
    min-height: 75px;
  }
  .layout_access .accordion { pointer-events: auto; }

  /* ---------------------------------------------- 
      layout_outline
  ---------------------------------------------- */

  .layout_outline .txt_big img{ height: 60vh; }
  .layout_outline .txt_big { top: 70px; }
  .layout_outline .text_wrap { padding: 170px 0 125px 25vw; }
  .layout_outline > .inner::before,
  .layout_main > .inner::before {
    top: 100px;
    right: -500px;
  }
  .layout_outline .text_wrap h2 { font-size: 26rem; }
  .layout_outline .img_wrap { height: calc(100vh / 2.5); }
  
  /* ---------------------------------------------- 
      layout_experience
  ---------------------------------------------- */
  /*.layout_experience > .inner { padding: 75px 0 20px 0; }*/
  .layout_experience > .inner { padding: 75px 0 75px 0; }
  #double-slider{ width: calc(6.25vw* 13); }
  #double-slider .slick-arrow {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .layout_experience .txt{
    font-size: 20rem;
    padding: 40px 20px;
  }
  
  /*画像正方形*/
  .loop_slider img {
    display: block;
    width: 150px;
    height: 150px;
    -o-object-fit: cover;
    object-fit: cover;
  }  
  /* button */
  .btn_gradient{
    width: calc(6.25vw* 12);
    padding: 10px 30px;  
  }
  /* ---------------------------------------------- 
      layout_main
  ---------------------------------------------- */
  .layout_main .img_wrap { height: calc(100vh / 3); }
  /*フォント縦飾り*/
  .layout_main .txt_big { top: 5vh;}
  /* 左レイアウト */
  .layout_main .text_wrap > div {
    width: 50%;
    padding: 50px 0 14vh 25vw;
  }
   .layout_main .text_wrap > div > p { padding:0 0 30px 0; }


  /* 右レイアウト */
  .layout_main .text_wrap .sub { width: 50%; }
  .layout_main .text_wrap .sub li:first-child { top: -2.5vh; }
  .layout_main .text_wrap .sub li:last-child { top: 14vh; }

  .btn_txt span { letter-spacing: 0; }
  .btn_txt span::after {
    position: relative;
    display: inline-block;
    content: "";
    background-image: url(../images/i_arrow_right_black.svg);
    background-repeat: no-repeat;
    width: 1.2em;
    height: 1.2em;
    margin: -0.2em 0 0 0.1em;
    vertical-align: middle;
    letter-spacing: 0;
  }
  .layout_main > .inner ul > li { padding-bottom: 75px; }
  
  /* ---------------------------------------------- 
      layout_illustmap
  ---------------------------------------------- */
  .layout_illustmap h3 span {
    font-size: 16rem;
    padding-top: 20px;
  }
  .layout_illustmap .illustmap img { width: calc(6.25vw* 14); }
  /* ---------------------------------------------- 
      layout_detail
  ---------------------------------------------- */
  span.free {
    padding: 3px 8px;
    /*margin: -0.6em 10px 10px 0;*/
    margin: .4em 10px 10px 0;
    font-size: 12px;
  }
  .layout_detail .slider_side { margin: 0 0 75px 0; }
  .layout_detail .text_wrap {
    display: block;
    width: calc(6.25vw* 14);
  }
  
  .layout_detail .text_wrap .spec_wrap{ width: 100%; }
  .layout_anchor .inner > ul > li { width: calc(100% / 1); }

  ul.icon li,
  #rotenburo.layout_anchor ul.icon li {
    width: 70px;
    height: 70px;
    margin: 0 0.2em 0.8em 0.2em;
  }
  ul.icon i {
    width: 30px;
    height: 30px;
  }
  ul.icon { font-size: 11.5rem; }
  .guestroom01 h3 span.en { font-size: 18rem;}
  .guestroom01 .spec_wrap .spec { margin: 0em 0 0 0;}
  .layout_colum span.title { font-size: 18rem;}
  #amenity.layout_colum span.title {  padding: 0 0 0 0; }
  .layout_anchor .inner .room_nav_bottom > li { width: calc(100% / 2);}
  .colum_side {
    margin: 0 auto 75px;
    width: calc(6.25vw* 12);
  }
  .layout_detail.guestroom01 .text_wrap .spec_wrap {  margin: 0 0 75px 0; }
  #rotenburo.layout_anchor .slider_wrap .text_wrap { margin: 0 auto 75px; }
  /*.layout_detail .text_wrap {
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 100px;
  }
  .layout_detail .maccha .text_wrap  { background-image: url(../images/img_illust_maccha.svg);}
  .layout_detail .dango .text_wrap  { background-image: url(../images/img_illust_dango.svg);}
  .layout_detail .jizake .text_wrap  { background-image: url(../images/img_illust_jizake.svg);}
  .layout_detail .manga .text_wrap  { background-image: url(../images/img_illust_manga.svg);}
  .layout_detail .takkyu .text_wrap  { background-image: url(../images/img_illust_takkyu.svg);}
  .layout_detail .sauna .text_wrap  { background-image: url(../images/img_illust_sauna.svg);}*/
  .spec dt { width: 35%; }
  .spec dd { width: 65% }
  .layout_detail p span { font-size: 16rem; }
  .layout_detail .text_wrap .img img {
    /*width: calc(6.25vw* 8);
    margin: 30px auto;*/
    display: none;
  }
  .layout_detail p span.title {  font-size: 18rem; }
  .layout_detail p span.title::before {
    height: 2.5em;
    margin-top: -0.6em;
  }
  .slider_side .slick-arrow  {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    top: 45%;
  }
  .slider_side .slick-prev { left:  6.25vw!important; }
  .slider_side .slick-next { right: 6.25vw!important; }
  
  span.pc{ display: none;}

/* ---------------------------------------------- 
      layout_link
  ---------------------------------------------- */
  
  .layout_link .inner > ul > li { width: calc(100% / 2); }
  .title_s{ font-size: 16rem; }

  /* ---------------------------------------------- 
      layout_anchor　ページ内アンカーリンク
  ---------------------------------------------- */
  .layout_anchor .text_wrap { width: calc(6.25vw* 14); }
  .layout_anchor .inner .onsen_nav > li{ width: calc(100% / 1);}
  .layout_anchor.guestroom .inner .room_nav > li { width: calc(100% / 2); }
  .layout_anchor.guestroom p span.title,
  .facilities_nav p span.title  { font-size: 16rem; }
  #rotenburo.layout_anchor .room_nav p span.title { font-size: 20rem; }
  #lobby.layout_anchor .room_nav p span.title { font-size: 16rem; }
  #rotenburo.layout_anchor .room_nav p span.en { display: none; }
  .layout_anchor .inner .room_nav > li { width: calc(100% / 2);}
  #rotenburo.layout_anchor p,
  #lobby.layout_anchor .room_nav p { padding-top: 20px; }
  #rotenburo.layout_anchor .slider_wrap p span.title { font-size: 18rem; }
  #rotenburo.layout_anchor .spec_wrap .spec { margin: 0em 0 0 0; }
  .layout_anchor .inner .cuisine_nav > li:last-child { padding: 0 10px 0 10px; }
  .layout_anchor .inner .facilities_nav > li { width: calc(100% / 2);}
  #lobby.layout_anchor > div:first-of-type { padding: 60px 0 0 0; } 
  .layout_anchor .inner .cuisine_nav.question{ text-align: left; }
  
  /* ---------------------------------------------- 
        layout_colum　
  ---------------------------------------------- */
  .layout_colum img { width: calc(6.25vw* 10);}
  .layout_colum .text_wrap { width: calc(6.25vw* 14);  }
  /*260126朝食削除.layout_colum.morning .inner { padding: 75px 0 0 0; }*/

  /* ---------------------------------------------- 
      layout_2column　
  ---------------------------------------------- */
  .layout_2column .inner > ul > li > ul { display: block;}
  .layout_2column .inner > ul > li > ul > li {
    width: calc(100% / 1);
  }
  .layout_2column .img_wrap {
    width: calc(6.25vw* 12);
    height: auto;
    min-height: 260px;
    margin: 0 auto;
  }
  .layout_2column h4 span.en { padding-top: 20px; }
  .layout_2column h4 span:nth-child(2) { display: block;}
  .layout_2column h4 { padding: 0 0 40px 0; }
  .layout_2column p span.title { font-size: 18rem; }
  .layout_2column .inner > ul > li > ul > li:nth-child(2) { margin: 0 0 75px 0; }
  .layout_2column.onsen .inner { padding: 75px 0 0 0;  }
  .layout_2column.restrant .inner { padding: 75px 0 0 0;  }

  /* ---------------------------------------------- 
      layout_list
  ---------------------------------------------- */
  .layout_list .inner > ul { width: calc(6.25vw* 15); }
  .layout_illustmap .illustmap img.yamanaka { width: calc(6.25vw* 15); }
  .layout_illustmap .illustmap img.hokuriku {  width: calc(6.25vw* 15); }
  .layout_list .inner > ul > li { padding: 0 10px 40px 10px; }
  ul.icon_mini { font-size: 11rem; }
  ul.icon_mini li {
    width: 80px;
    height: 30px;
  }
  ul.icon_mini i {
    width: 15px;
    height: 15px;
  }

  /* ---------------------------------------------- 
      layout_timeline
  ---------------------------------------------- */

  .layout_timeline_list {
    width: calc(6.25vw* 14);
    padding: 30px;
    margin-top: 75px;
  }
  .flow > li dl { padding-left: 40px;}
  .flow > li dl::after { width: 30px; }
  .flow > li dl dt { font-size: 1.2em;}
  .layout_timeline_detail .text_wrap { width: calc(6.25vw* 14);}
  .layout_timeline_detail .colum_side {
    margin: 0 auto 0;
    width: calc(6.25vw* 12);
  }
  .layout_timeline_detail .icon_wrap { width: calc(6.25vw* 14); }
  .layout_timeline_detail .text_wrap > div:last-child { background: rgba(239, 221, 202, 1); }

  /* ====================================================
  
  poten_bnr
  
  ====================================================*/
  
  .bnr_poten img{ width: calc(6.25vw* 14); }

  /* ====================================================

  260126 cuisine追加

  ====================================================*/
  .dinner_title h3 {
    padding: 0 0 50px 0;
    /*writing-mode: vertical-rl;*/
    }
  .dinner_title h3 span.free {
    /*padding: 8px 8px;
    margin: 0 0 20px -10px;*/
  }
  .dinner_title h3 span:nth-child(2) { display: block; }
  .dinner_title {
    width: 100%;
    /*align-items: flex-start;
    justify-content: center;
    width: 100%;
    display: block;*/
  }
  .dinner_title .text_wrap {
    /*width: 20%;
    display: flex;
    justify-content:center;
    align-items:center;*/
  }
  .dinner_img01 { margin-left: auto; margin-bottom: 40px; }
  .dinner_pair { width: auto; }
  .dinner_img02 { margin:0 0 40px 0; }
  .dinner_text{ padding: 0 20px 40px 20px; }
  .dinner_img03 { margin-left: auto; }

  .cuisine01 .title_sub,
  .cuisine02 .title_sub{ font-size: 18rem; }
  .cuisine01 .img_wrap { margin: 80px 0 0 0; }
  .cuisine01 .img_wrap img{ width: calc(6.25vw* 12); }
  .cuisine01 .table_wrap { padding: 40px 6.25% 40px; }


}