@charset "UTF-8";
/* Scss Document */
@media screen and (max-width: 780px) {
  html {
    font-size: calc( 10vw / 750 * 100 );
  }

  body {
    -webkit-text-size-adjust: 100%;
    font-size: 2.6rem;
  }

  * {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
  }

  iframe {
    width: 100%;
  }

  .pcmode {
    display: none;
  }

  .spmode {
    display: inherit;
  }

  .container {
    overflow: hidden;
  }

  /*PCパーツ非表示*/
  #reservation_area .btn_submit input {
    display: none;
  }

  #reservation_area .bottom_menu {
    display: none;
  }

  footer .infoPhoto, footer .fnav {
    display: none;
  }

  .right_sp {
    display: block;
  }

  /*
  --------------------------------------------------
  	header
  -------------------------------------------------- */
  .header_wrap {
    height: 8.8rem;
    z-index: 9997;
    background: none;
  }

  header {
    width: 100%;
    height: auto;
    background: #fff;
  }
  header h1 {
    font-size: 3.2rem;
    width: 100%;
    height: 8.8rem;
    margin: 0;
    padding: 0;
  }
  header h1 a#logo {
    display: block;
    width: 48.8rem;
    margin-left: 4rem;
  }
  header h1 a#logo img {
    width: 100%;
    margin: 0;
  }
  header h1.logo a {
    font-size: 3.6rem;
    padding: 1.6rem;
    height: 8rem;
    display: block;
  }
  header .hnavSP {
    display: inline;
  }
  header .hnavSP li.hnav01, header .hnavSP li.hnav02 {
    float: left;
    text-align: center;
    vertical-align: middle;
    background: #000;
    margin-right: .8rem;
    color: #fff;
    width: 10rem;
    height: 10rem;
    padding: .8rem 0;
  }
  header .hnavSP li a {
    color: #fff;
    display: block;
  }
  header .hnavSP .fa {
    font-size: 2.8rem;
  }
  header .hnavSP .text {
    display: block;
    line-height: 2.4rem;
  }
  header .langnav {
    top: 9rem;
    width: 100px;
    right: 38px;
    display: none;
    z-index: 10000;
  }
  header .langnav li {
    margin: 0;
  }
  header .langnav li a {
    display: block;
    width: 100px;
    border: 1px solid #000000;
    padding: 6px 6px 6px 4rem;
    border-top: none;
    background: #fff url(../img/langnav_arrow.png) no-repeat left 2rem center;
  }
  header .langnav li:first-child {
    border-top: 1px solid #000;
  }
  header .header-inner .spnav_plan {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 8rem;
    line-height: 8rem;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
    text-align: center;
  }
  header .header-inner .spnav_plan a {
    color: #fff;
    font-size: 3rem;
    display: block;
    background: #D98869;
  }
  header .header-inner .spnav_plan a::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    right: 3rem;
    left: auto;
    margin: auto;
    width: 3rem;
    height: .8rem;
    border-right: 2px solid;
    border-bottom: 1px solid;
    transform: skewX(50deg);
    background: none;
  }

  /*fixed*/
  header.fixed {
    position: fixed;
    background: #fff;
    top: 0;
    z-index: 1;
    box-shadow: 0px 0px 0.8rem 1px rgba(0, 0, 0, 0.18);
  }

  /*navigation*/
  nav.gnav {
    display: none;
  }

  /*ヘッダボタン*/
  .header_tel {
    display: none;
  }

  .menu_en span.name, .menu_tel span.name, .menu_btn span.name {
    font-size: 2rem;
    margin-top: -1rem;
    display: block;
  }

  .menu_en a, .menu_tel a {
    width: 8rem;
    height: 8rem;
    border: 1px solid #000;
    display: block;
    position: absolute;
    top: 1rem;
    color: #000;
    text-align: center;
  }
  .menu_en i, .menu_tel i {
    font-size: 2.6rem;
    margin-top: 1px;
  }

  .menu_en {
    right: 98px;
    cursor: pointer;
  }

  .menu_tel {
    display: none;
  }
  .menu_tel a {
    right: 10.4rem;
  }

  .menu_btn a {
    text-decoration: none;
  }
  .menu_btn i {
    font-size: 5.4rem;
    margin-top: 1px;
  }
  .menu_btn .modal-open {
    text-align: center;
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    height: 8.8rem;
    width: 10rem;
    cursor: pointer;
    text-decoration: none;
    color: #000;
  }
  .menu_btn .modal-open img {
    width: 100%;
    height: 100%;
  }

  /*navigation*/
  #headerMenu nav, #header .hnav, #header .tel {
    display: none;
  }

  /*問い合わせ・宿泊プラン・*/
  .cnav {
    display: none;
  }

  /* スマホ用モーダルメニュー */
  .nav {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background: rgba(255, 255, 255, 0.85);
  }
  .nav p {
    display: block;
  }
  .nav p a {
    display: block;
  }
  .nav .dropmenu_inner {
    margin: 0 4.8rem 11rem;
  }
  .nav ul.nav-inner {
    width: 100%;
  }
  .nav ul.nav-inner li {
    width: 100%;
    text-align: left;
    margin: 0 auto 1px;
  }
  .nav ul.nav-inner li a {
    margin: 0 auto;
    display: block;
    color: #333;
    text-decoration: none;
  }
  .nav ul.nav-inner li:last-child {
    border-bottom: none;
  }
  .nav li.nav01 a {
    cursor: default;
  }
  .nav li.nav01 a.sp_hd {
    opacity: 1;
  }
  .nav li.nav01 .sp_hd {
    background: #4c4c4c;
    color: #fff;
    font-size: 2.8rem;
  }
  .nav li ul {
    width: 100%;
    display: block;
  }
  .nav li div.dropmenu-inner {
    background: #fff;
    width: 100%;
  }
  .nav li div.dropmenu-inner li {
    width: 100% !important;
    margin: 0;
    padding: 0;
    border-top: 1px solid #333;
  }
  .nav li div.dropmenu-inner li a {
    display: block;
    margin: 0 auto;
    padding: 0 2rem;
    font-size: 2.8rem;
  }
  .nav li.li12 a {
    font-size: 2rem !important;
  }
  .nav .sp_menu {
    width: 100%;
  }
  .nav .sp_menu li {
    width: 100%;
    text-align: left;
    margin: 0 auto 1px;
    background: #fff;
    font-size: 0.875em;
  }
  .nav .sp_menu li a {
    margin: 0 2rem;
    padding-left: 3rem;
    height: 8rem;
    line-height: 8rem;
    display: block;
    font-size: 2.8rem;
    color: #333;
    background-color: #fff;
    text-decoration: none;
    background-image: url(../img/common/arr_topics.png);
    background-position: 0 center;
    background-repeat: no-repeat;
  }
  .nav .spnav_plan a, .nav .spnav_toiawase a, .nav .spnav_wedding a {
    color: #fff !important;
    text-align: center;
    height: 8rem;
    line-height: 8rem;
    border-radius: 4rem;
    position: relative;
  }
  .nav .spnav_plan a::before, .nav .spnav_toiawase a::before, .nav .spnav_wedding a::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    right: 4.5rem;
    left: auto;
    margin: auto;
    width: 3.1rem;
    height: .8rem;
    border-right: 2px solid;
    transform: skewX(50deg);
    background: none;
  }
  .nav .spnav_plan a::after, .nav .spnav_toiawase a::after, .nav .spnav_wedding a::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 4rem;
    margin: auto;
    width: 3.1rem;
    height: .8rem;
    border-bottom: 1px solid;
  }
  .nav .spnav_plan {
    margin: 3rem 0 1.6rem;
  }
  .nav .spnav_plan a {
    background: #53B9AC;
  }
  .nav .spnav_toiawase {
    margin-bottom: 4.6rem;
  }
  .nav .spnav_toiawase a {
    background: #0D004C;
  }
  .nav .spnav_wedding {
    padding-bottom: 5rem;
  }
  .nav .spnav_wedding a {
    background: #008AC7;
  }
  .nav h4 {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    font-weight: bold;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-bottom: 1rem;
  }
  .nav h4::before {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    border: 0.8rem solid;
    border-color: transparent transparent transparent #000;
  }
  .nav h4::after {
    content: "";
    flex: 1 0 0%;
    margin-left: 1em;
    height: 1px;
    background: #707070;
  }
  .nav ul.spnav_list li a {
    position: relative;
    display: flex;
    align-items: center;
    padding: 1.6rem 0;
    line-height: 1;
  }
  .nav ul.spnav_list li a::before {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    border: .8rem solid;
    border-color: transparent transparent transparent #000;
  }
  .nav ul.spnav_list li.dress a::after {
    content: "";
    display: block;
    background: url("../img/icon_newwin_b.svg") no-repeat;
    width: 1.6rem;
    height: 1em;
    margin-left: 0.8rem;
    background-size: 100%;
  }
  .nav .spnav_en {
    font-weight: bold;
    margin-left: 0.8rem;
  }
  .nav ul.spnav_sns {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 7.3rem 0 5.1rem;
  }
  .nav ul.spnav_sns li {
    display: flex;
    align-items: center;
    width: auto;
    margin: 0;
  }
  .nav ul.spnav_sns li a {
    margin: 0;
  }
  .nav ul.spnav_sns li img {
    width: 6rem;
    margin-right: 2.5rem;
  }
  .nav ul.spnav_sns li:nth-child(1) {
    margin-right: 4rem;
  }

  /* 開閉用ボタンがクリックされた時のスタイル */
  .open .nav {
    cursor: url(../images/cross.svg), auto;
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: visible;
    opacity: 1;
  }

  /*modal-menu*/
  .rightSP {
    display: initial;
  }

  .lock {
    overflow: hidden;
  }

  .modal-wrap {
    z-index: 9999;
    display: none;
    position: fixed;
    top: 8.8rem;
    left: 0;
    width: 100%;
    height: calc(100vh - 8.8rem);
  }

  .modal-overlay {
    z-index: 2;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: rgba(0, 0, 0, 0.75);
  }

  .modal-content {
    position: relative;
    display: none;
    width: 100%;
    height: 100%;
    top: 0 !important;
    padding: 0;
    z-index: 9999;
  }
  .modal-content p {
    margin: 0;
    padding: 0;
  }
  .modal-content .modal-open {
    color: #00f;
    text-decoration: underline;
  }
  .modal-content .modal-open:hover {
    cursor: pointer;
    color: #f00;
  }
  .modal-content .modal-close {
    color: #fff;
    font-size: 3rem;
    text-decoration: none;
    position: absolute;
    width: 10rem;
    text-align: right;
    background: url(../img/drop_close.png) no-repeat;
    background-size: 100%;
    top: -8.8rem;
    right: 0;
    height: 8.8rem;
  }
  .modal-content .modal-close:hover {
    cursor: pointer;
    color: #f00;
  }
  .modal-content .modal_nav_inner {
    margin: 0;
    border-bottom: 1px solid #ddd;
    overflow: scroll;
  }
  .modal-content .modal_nav_inner li a {
    display: block;
    height: 9rem;
    line-height: 9rem;
    color: #fff;
    text-decoration: none;
    font-size: 2.8rem;
    border-top: 1px solid #ddd;
    border-bottom: none;
  }

  /* ■ モーダルメニュー部分 ------------------------------------------- */
  /*　モーダルメニュー用背景　*/
  .mnav {
    margin: 0 4.8rem;
    top: 11rem;
    width: 65.4rem;
  }
  .mnav .header_nav {
    font-size: 2.8rem;
    border-radius: 2.5rem;
    line-height: 5rem;
  }
  .mnav .tab li {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.4rem;
    line-height: 1.3;
  }
  .mnav .content {
    display: flex;
  }
  .mnav .content li {
    padding: 7.2rem 4.7rem;
    width: 100%;
  }
  .mnav .content li .toiawase_btn {
    font-size: 2.6rem;
    margin-top: 4.5rem;
  }
  .mnav .content li form h4 {
    font-size: 2.6rem;
    border-left: 2px solid #53B9AC;
    line-height: 1;
    padding-left: 1.4rem;
    margin-right: 1rem;
    padding-right: 1em;
    width: auto;
  }
  .mnav .content li form input, .mnav .content li form select {
    font-size: 16px;
  }
  .mnav .content li form .dynPersons::before {
    font-size: 2.6rem;
    border-left: 2px solid #53B9AC;
    line-height: 1;
    padding-left: 1.4rem;
    margin-right: 1rem;
  }
  .mnav .content li form .dynSubmit .btn.kensaku input:hover {
    font-size: 2.8rem;
  }
  .mnav .content li form .dynSubmit .txt_cancel a {
    font-size: 2.6rem;
  }

  /*スマホ用モーダルメニューここまで*/
  /*--------------------------------------------------
  	main
  -------------------------------------------------- */
  /*MVエラー調整*/
  .main-photo {
    height: auto !important;
  }
  .main-photo .main-photo-inner img {
    width: 100% !important;
    height: calc((var(--vh, 1vh) * 100) - 8.8rem) !important;
    object-fit: cover;
    margin-top: 8.8rem;
  }

  .mv_slide::before {
    width: 100%;
    height: 12rem;
    background: url("../img/header_bg.png") repeat-y;
    background-size: auto 100%;
  }

  /*
  --------------------------------------------------
  	Page structure
  -------------------------------------------------- */
  .viewer {
    z-index: 0;
  }
  .viewer ul {
    width: 100% !important;
  }
  .viewer ul li {
    width: 100% !important;
  }

  .nav_wrap .gnav {
    display: none !important;
  }
  .nav_wrap .header_btn {
    top: 11.2rem;
  }
  .nav_wrap .header_btn .header_btn_eng {
    display: none;
  }
  .nav_wrap .header_btn .header_btn_fb img {
    width: 6rem;
  }

  .content {
    margin: 4rem 0;
  }
  .content .inner {
    width: 100%;
  }
  .content .maincol > h2.hd {
    font-size: 2.8rem;
    top: 42vh;
  }
  .content .maincol > h2.hd::before {
    font-size: 6.6rem;
    margin-bottom: 3rem;
  }
  .content .maincol > .column {
    padding: 0 3.2rem;
  }
  .content h2 {
    width: 100%;
    letter-spacing: 0;
    font-size: 3.6rem;
    margin: 6rem 0 2rem 0;
  }
  .content h5 {
    font-size: 3rem;
  }

  div#top_1column {
    width: 100%;
  }

  .breadcrumbs {
    padding: 0 3.2rem;
    margin-bottom: 4.6rem;
    font-size: 2.6rem;
  }

  /*--------------------------------------------------
  	記事
  -------------------------------------------------- */
  .column-inner h3 {
    margin: 2rem 0;
    font-size: 3.2rem;
  }
  .column-inner h4 {
    font-size: 3rem;
  }

  /*
  --------------------------------------------------
  	Page structure
  -------------------------------------------------- */
  .content-inner {
    width: 96%;
    margin: 0 auto;
    padding: 0 4rem;
  }

  .wrapper {
    word-wrap: break-word;
  }

  .plandetail {
    overflow: inherit;
  }

  .plandetail-left,
  .plandetail-right {
    float: none;
    margin: 2rem 0;
  }

  /*photo*/
  .photos-top-headline {
    width: 100% !important;
  }

  .plandetail img {
    width: 100%;
  }

  .photos-top-headline img, .photos-bottom img, .photos-left-headline img, .photos-right-headline img {
    width: 100% !important;
    height: auto !important;
  }

  .photos-conformity-left > div, .photos-conformity-right > div, .photos-bottom > div {
    width: 100% !important;
    height: auto !important;
  }

  .photos-left-headline, .photos-right-headline {
    float: none;
    margin: 0;
    width: 100% !important;
  }

  .photos-left, .photos-right, .photos-top, .photos-bottom {
    float: none;
    width: 100% !important;
    margin: 0;
  }

  .photos img,
  .photos-left img,
  .photos-right img,
  .photos-top img,
  .photos-top-headline img,
  .photos-center img,
  .photos-conformity img,
  .photos-conformity-left img,
  .photos-conformity-right img,
  .photos-conformity-center img {
    width: 100% !important;
    margin: 0 0 2rem 0;
    height: auto !important;
  }

  .photos-top ul.clearfix,
  .photos-top-headline ul.clearfix,
  .photos-right ul.clearfix,
  .photos-right-headline ul.clearfix,
  .photos-left ul.clearfix,
  .photos-left-headline ul.clearfix,
  .photos-bottom ul.clearfix {
    width: 100% !important;
  }
  .photos-top li,
  .photos-top-headline li,
  .photos-right li,
  .photos-right-headline li,
  .photos-left li,
  .photos-left-headline li,
  .photos-bottom li {
    width: auto !important;
    height: 11rem !important;
  }
  .photos-top a, .photos-top a img,
  .photos-top-headline a,
  .photos-top-headline a img,
  .photos-right a,
  .photos-right a img,
  .photos-right-headline a,
  .photos-right-headline a img,
  .photos-left a,
  .photos-left a img,
  .photos-left-headline a,
  .photos-left-headline a img,
  .photos-bottom a,
  .photos-bottom a img {
    width: auto !important;
    height: 100% !important;
  }

  .column-inner {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
  }

  /* Tab Style */
  ul.ui-tabs-nav li {
    width: 33%;
    margin-right: 1px;
  }
  ul.ui-tabs-nav li a {
    width: 100%;
    font-size: 2.8rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  ul.ui-tabs-nav li:last-child {
    margin: 0;
  }

  ul.ui-tabs-nav li#entries-tab-news.ui-tabs-selected:after, ul.ui-tabs-nav li#entries-tab-recommend.ui-tabs-selected:after, ul.ui-tabs-nav li#entries-tab-restaurant.ui-tabs-selected:after {
    content: "";
    width: 100%;
  }
  ul.ui-tabs-nav li#entries-tab-news a:hover, ul.ui-tabs-nav li#entries-tab-recommend a:hover, ul.ui-tabs-nav li#entries-tab-restaurant a:hover {
    opacity: 1;
  }

  /*ギャラリー形式*/
  .imagesurfingnormal {
    width: 100% !important;
    height: auto !important;
  }
  .imagesurfingnormal #photo {
    width: 100% !important;
    height: auto !important;
  }
  .imagesurfingnormal img {
    margin: 0 0 0.4rem 0 !important;
  }

  /* Move */
  .move {
    right: 4%;
    margin-right: 0;
    bottom: 2rem;
  }
  .move ul li a {
    width: 10rem;
    height: 10rem;
    line-height: 50%;
    padding: 0;
    background-size: contain;
    transition: all 300ms 0s ease;
  }

  .move.stop {
    right: 0%;
    width: 100%;
    height: 8rem;
  }
  .move.stop a {
    position: absolute;
    background: #0D004C url(../img/arrowtop_w.png) no-repeat center right 2rem;
    background-size: 4rem;
    width: 100%;
    height: 8rem;
    border-radius: 0;
    padding: 0;
    line-height: 8rem;
    text-indent: 1px;
    color: #fff;
    text-align: center;
  }
  .move.stop a:hover {
    background: #000 url(../img/arrowtop_w.png) no-repeat center right 2rem;
    background-size: 4rem;
  }

  p.statement_link a {
    width: 35.2rem;
    height: 5.6rem;
    line-height: 5.6rem;
    font-size: 2.6rem;
    border-radius: 2.8rem;
    margin: auto;
  }
  p.statement_link a::before {
    width: 2.8rem;
    height: 0.7rem;
  }
  p.statement_link a::after {
    width: 2.8rem;
    height: 0.7rem;
  }

  /*reservation Area */
  #reservation_area {
    width: 100%;
    height: auto;
    text-align: center;
    overflow: hidden;
    margin: 9.6rem 0 11.6rem;
  }
  #reservation_area .inner {
    width: calc(100% - 8rem);
    margin: 0 4rem;
  }
  #reservation_area .inner-inner {
    flex-wrap: wrap;
  }
  #reservation_area select {
    padding: 1.2rem;
  }
  #reservation_area input {
    padding: 1.2rem .8rem;
  }
  #reservation_area input#datepicker {
    width: 100%;
    float: left;
    margin-right: 4rem;
    font-size: 3.6rem;
  }
  #reservation_area p.reservetitle {
    font-size: 2.6rem;
    line-height: 2.6rem;
  }
  #reservation_area .btn_submit.sp input {
    display: inherit;
    margin-top: 2rem;
  }
  #reservation_area .search_btn05 li::before {
    content: none;
  }
  #reservation_area .search_btn05 li.sp::before {
    content: "";
    display: block;
    width: 1.4rem;
    height: 1.4rem;
    right: 3rem;
  }
  #reservation_area .search_btn05 .btn_submit {
    position: relative;
  }
  #reservation_area .search_btn05 .btn_submit input.button {
    width: 100%;
    height: 8rem;
    line-height: 8rem;
    font-size: 3rem;
    padding: 0;
    -webkit-appearance: none;
  }
  #reservation_area .search_btn05 .btn_submit input.button.btn_cancel {
    height: 8rem;
    font-size: 3rem;
  }
  #reservation_area .search_btn05 .btn_submit input.search {
    height: 10rem;
  }
  #reservation_area .inner {
    width: 90%;
    margin: 0 auto;
  }
  #reservation_area h3.search_title {
    width: 100%;
    font-size: 4rem;
    margin: 0;
  }
  #reservation_area .box_day {
    width: 100%;
    margin: 0;
  }
  #reservation_area .box_day input[type="checkbox"] {
    width: calc( 16vw / 375 * 100 ) !important;
    height: calc( 16vw / 375 * 100 );
  }
  #reservation_area .box_day input {
    width: 100%;
  }
  #reservation_area > li {
    width: 100%;
  }
  #reservation_area li.pulldown01, #reservation_area li.pulldown02 {
    width: 50%;
    text-align: left;
  }
  #reservation_area .search_btn01 {
    margin: 0 0 4rem 0;
  }
  #reservation_area .search_btn01 ul {
    width: 100%;
  }
  #reservation_area .search_btn01, #reservation_area .search_btn05 {
    width: 100%;
    padding: 0;
  }
  #reservation_area .search_btn02, #reservation_area .search_btn03, #reservation_area .search_btn04 {
    width: 32%;
  }
  #reservation_area .search_btn02 ul, #reservation_area .search_btn03 ul, #reservation_area .search_btn04 ul {
    width: 100%;
    display: block;
  }
  #reservation_area .search_btn02 ul li, #reservation_area .search_btn03 ul li, #reservation_area .search_btn04 ul li {
    width: 100%;
  }
  #reservation_area .search_btn02 select, #reservation_area .search_btn03 select, #reservation_area .search_btn04 select {
    width: 100%;
  }
  #reservation_area .searchBtns li {
    float: none;
    margin: .8rem 0;
  }
  #reservation_area .searchBtns li.btn_submit {
    width: 100%;
  }
  #reservation_area .searchBtns li.pulldownWrap {
    width: 100%;
  }
  #reservation_area .searchBtns li.pulldown01 {
    float: left;
    width: 48%;
    margin-right: .8rem;
  }
  #reservation_area .searchBtns li.pulldown02 {
    float: left;
  }
  #reservation_area .searchBtns li.pulldown01 select, #reservation_area .searchBtns li.pulldown02 select {
    width: 100%;
  }
  #reservation_area .btnToday {
    display: initial;
  }
  #reservation_area .btnToday input {
    width: 100%;
    border-radius: .8rem;
  }
  #reservation_area .texttop, #reservation_area .textbottom {
    display: none;
  }
  #reservation_area .bottom_menu ul {
    text-align: center;
    border-top: 1px solid #c1c1c1;
    border-left: 1px solid #c1c1c1;
  }
  #reservation_area .bottom_menu ul li {
    float: left;
    width: 50%;
    border-right: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
  }
  #reservation_area .bottom_menu ul li a {
    width: 100%;
    float: left;
    display: block;
  }

  /*予約カレンダー*/
  div#calid3 {
    width: 90% !important;
    background: pink;
  }
  div#calid3 tr {
    height: 8rem;
  }

  /*news*/
  .news {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 8rem;
  }
  .news h2 {
    font-size: 4rem;
    line-height: 10rem;
    height: 10rem;
    margin: 0 0 4rem 0;
  }
  .news .recentPost {
    float: none;
    width: 100%;
    margin-right: 6rem;
    margin: 0 0 4rem 0;
    padding: 0 0 4rem 0;
    border-bottom: 1px solid #000;
  }
  .news .recentPost img {
    float: right;
    width: 50%;
    height: auto;
    margin: 0 0 4rem 2rem;
  }
  .news .recentPost h3 {
    margin: 0 0 2rem 0;
    height: auto;
  }
  .news .articleWrap a {
    width: 100%;
  }
  .news .more {
    padding: 0;
  }
  .news .more a {
    width: 100%;
  }

  /*すべての記事を見るボタン*/
  .more a {
    width: 60.8rem;
    margin: 2rem auto;
    height: 7.2rem;
    line-height: 7.2rem;
    border-radius: 3.6rem;
    font-size: 2.8rem;
  }
  .more a::before {
    width: 2.8rem;
    height: 0.7rem;
  }
  .more a::after {
    width: 2.8rem;
    height: 0.7rem;
  }

  /*sns icons*/
  .snsIcon {
    width: 100%;
  }
  .snsIcon .inner {
    width: 100%;
    margin: 0 auto;
    padding: inherit;
  }
  .snsIcon ul li {
    margin-right: 2rem;
  }

  /*Banner Area*/
  .bannerArea {
    width: 100%;
    margin: 0 0 6rem 0;
  }
  .bannerArea ul {
    width: 100%;
    margin: 0 auto;
  }
  .bannerArea ul li {
    width: 48%;
    float: left;
    text-align: center;
    margin-right: 2rem;
    margin-bottom: 1.6rem;
  }
  .bannerArea ul li img {
    width: 100%;
    height: auto;
  }
  .bannerArea ul li:nth-of-type(even) {
    margin-right: 0px;
  }

  /*
  --------------------------------------------------
  	footer
  -------------------------------------------------- */
  footer {
    padding: 7.2rem 0 0 0;
    margin: 20rem 0 0 0;
    font-size: 2.6rem;
  }
  footer .inner {
    width: 100%;
    margin: 0 auto;
  }
  footer .infoPhoto img {
    width: 40rem;
  }
  footer .rowWrap {
    margin: 4rem 0;
  }
  footer .infoPhoto, footer .infoaddress, footer .infoText {
    float: none;
    width: auto;
  }
  footer .information {
    width: 100%;
  }
  footer .information .information-photo {
    width: 100%;
    float: none;
    text-align: center;
  }
  footer .information .information-access, footer .information .information-read {
    overflow: inherit;
    width: 90%;
    margin: 0 auto;
  }
  footer .information .information-inner .footer_logo img {
    width: 30.5rem;
  }
  footer .information .information-access h4 {
    font-size: 3rem;
  }
  footer .footer_sns {
    margin: 8.3rem 0 3.9rem;
  }
  footer .footer_sns li a img {
    width: 6rem;
  }
  footer .lang_en {
    margin-bottom: 6.4rem;
  }
  footer .lang_en a {
    display: block;
    width: 23.2rem;
    height: 5.6rem;
    line-height: 5.6rem;
    border: 1px solid;
    border-radius: 2.8rem;
    text-align: center;
    margin: auto;
  }
  footer nav#footerMenu {
    display: none;
  }
  footer .copyright {
    text-align: center;
    line-height: 6rem;
    font-size: 2rem;
  }

  .pagetop {
    right: 2rem;
    margin-right: 0;
  }
  .pagetop a {
    width: 6rem;
    height: 6rem;
    line-height: 6rem;
    border-radius: 1rem;
  }

  .pagetop.stop a {
    height: 6rem;
    line-height: 6rem;
  }

  /*--------------------------------------------------
  	下層テンプレート
  -------------------------------------------------- */
  #page-home .top_taiken {
    margin-bottom: 16.1rem;
  }
  #page-home .top_taiken .txt {
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 8.6rem;
  }
  #page-home .top_taiken .txt h3 {
    font-size: 5rem;
  }
  #page-home .top_taiken .txt .txt_en {
    font-size: 2.6rem;
    margin-bottom: 5.3rem;
  }
  #page-home .top_taiken .img1 {
    width: 66.2rem;
    margin: 0 0 0 auto;
  }
  #page-home .top_taiken .img1::after {
    width: 46.2rem;
    height: 2.4rem;
    top: -2.4rem;
    right: 0;
  }
  #page-home .top_taiken .img2 {
    width: 51.2rem;
    margin-top: -1.7rem;
  }
  #page-home .top_taiken .img2::after {
    width: 19.2rem;
    height: 19.2rem;
    right: -2.4rem;
    bottom: -2.4rem;
    left: auto;
    top: auto;
  }
  #page-home #top_1column {
    padding: 9.5rem 4.8rem;
    background: url("../img/bg_img_sp.jpg");
    background-size: 100%;
  }
  #page-home #top_1column h2 {
    font-size: 2.6rem;
    margin-bottom: 5.6rem;
  }
  #page-home #top_1column h2::before {
    font-size: 5.6rem;
  }
  #page-home #news .column {
    font-size: 2.6rem;
  }
  #page-home #news .column h3 {
    font-size: 2.8rem;
    font-family: 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-weight: bold;
    color: #806940;
  }
  #page-home #news .column .statement_link {
    margin: 4rem 0;
  }
  #page-home #news .column .statement_link a {
    border-radius: 10rem;
    padding: 1rem 6rem 1rem 3rem;
    height: auto;
    line-height: 1.2;
  }
  #page-home #news .more {
    margin-top: 5.6rem;
  }
  #page-home #recommends {
    margin-top: 21.6rem;
    font-size: 2.6rem;
  }
  #page-home #recommends .column {
    margin-bottom: 9.6rem;
  }
  #page-home #recommends .photos-left {
    text-align: center;
  }
  #page-home #recommends .photos-left img {
    width: 43.4rem !important;
    height: 33.6rem !important;
    object-fit: cover;
  }
  #page-home #recommends .plandetail-left h3 {
    font-size: 2.6rem;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  #page-home .top_concept {
    margin-top: 16.1rem;
  }
  #page-home .top_concept .box1 {
    margin-bottom: 17.6rem;
  }
  #page-home .top_concept .box1 h3 {
    display: inline-block;
    font-size: 2.6rem;
    text-align: center;
  }
  #page-home .top_concept .box1 h3 span {
    display: block;
    font-size: 5.6rem;
  }
  #page-home .top_concept .box1 h4 {
    font-size: 4rem;
    border-top: 1px dotted;
    padding-top: 4rem;
    margin: 1.6rem 0 2rem;
  }
  #page-home .top_concept .box1 .txt {
    padding: 4.8rem;
  }
  #page-home .top_concept .box1 .ph::after {
    width: 63.2rem;
    height: 23.2rem;
    left: 0;
  }
  #page-home .top_concept .top_restaurant .ph::after {
    background: rgba(217, 136, 105, 0.5);
    left: auto;
    right: 0;
  }
  #page-home .top_concept .top_spa .ph::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background: rgba(83, 185, 172, 0.2);
    right: 0;
    top: -2.4rem;
    width: 39.8rem;
    height: 23.2rem;
  }
  #page-home .top_concept .top_spa .ph::after {
    width: 24rem;
    height: 23.2rem;
    left: 0;
  }
  #page-home .top_other .box2 {
    margin-bottom: 14.3rem;
  }
  #page-home .top_other .box2 .txt {
    position: relative;
    z-index: 1;
    margin: 0 4.8rem -5.6rem;
    padding: 8rem 0 5rem;
    font-size: 2.6rem;
  }
  #page-home .top_other .box2 .txt h3 {
    font-size: 2.6rem;
    width: 45rem;
    margin: auto;
    border-bottom: 1px dotted;
    padding-bottom: 2rem;
  }
  #page-home .top_other .box2 .txt h3 span {
    font-size: 5.6rem;
    color: #fff;
    display: block;
  }
  #page-home .top_other .box2 .txt h4 {
    font-size: 3.4rem;
    margin: 4.6rem 0 2.8rem;
  }
  #page-home .top_other .box2 .txt .view_more {
    margin-left: auto;
    margin-right: auto;
  }
  #page-home .top_wedding {
    padding: 12.2rem 8.8rem 64.8rem;
    background: #d0dad8 url("../img/top_wedding_ph_sp.jpg") center bottom no-repeat;
    background-size: 100%;
  }
  #page-home .top_wedding .txt {
    text-align: center;
    background: #fff;
    padding: 15.5rem 0 6.4rem;
    font-size: 2.6rem;
    position: relative;
  }
  #page-home .top_wedding .txt h3 {
    font-size: 2.6rem;
    position: absolute;
    top: -4.1rem;
    left: 0;
    right: 0;
    margin: auto;
  }
  #page-home .top_wedding .txt h3 span {
    display: block;
    font-size: 5.6rem;
  }
  #page-home .top_wedding .txt h4 {
    font-size: 4rem;
    margin: 0 0 2.8rem;
  }
  #page-home .top_wedding .txt .view_more {
    margin-left: auto;
    margin-right: auto;
  }
  #page-home .top_bottomarea {
    background: url("../img/bg_img_sp.jpg");
    background-size: 100%;
    padding: 16.8rem 0 12rem;
  }
  #page-home .top_bottomarea .top_access .txt {
    position: relative;
    font-size: 2.6rem;
    z-index: 1;
    margin: 0 6.3rem -19.2rem;
    text-align: center;
    padding: 7.2rem 0 5.8rem;
  }
  #page-home .top_bottomarea .top_access .txt h3 span {
    display: block;
    font-size: 5.6rem;
  }
  #page-home .top_bottomarea .top_access .txt h4 {
    font-size: 3.2rem;
    margin-top: 3.8rem;
  }
  #page-home .top_bottomarea .top_access .view_more {
    margin-left: auto;
    margin-right: auto;
  }
  #page-home .top_bottomarea .top_access .map {
    height: 77.4rem;
  }
  #page-home .top_bnr.under {
    display: none;
  }

  /*下層共通*/
  .top_bnr {
    padding: 0 4.8rem;
    width: 100%;
  }
  .top_bnr ul {
    flex-direction: column;
  }
  .top_bnr ul li {
    margin-bottom: 3.2rem;
    width: 100%;
  }
  .top_bnr ul li:nth-last-child(1) {
    margin: 0;
  }
  .top_bnr ul li img {
    width: 100%;
  }

  .column-inner .pagetop_txt {
    padding: 0 3.2rem;
    margin-bottom: 8.6rem;
  }
  .column-inner .pagetop_txt h3 {
    font-size: 5rem;
  }
  .column-inner .pagetop_txt .txt_en {
    font-size: 3rem;
  }
  .column-inner .pagetop_nav {
    flex-wrap: wrap;
    justify-content: space-between;
    margin-right: 0;
    padding: 0;
    margin-bottom: 5.8rem;
  }
  .column-inner .pagetop_nav li {
    width: 33.6rem;
    font-size: 2.6rem;
    height: 7rem;
    line-height: 7rem;
    border-radius: 3.5rem;
    margin-bottom: 1.8rem;
  }
  .column-inner .pagetop_nav li::after {
    right: 1.5rem;
  }
  .column-inner .ud_mainslide .slick-next {
    right: 2rem;
  }
  .column-inner .ud_mainslide .slick-prev {
    left: 2rem;
  }
  .column-inner .ud_mainslide .slick-next, .column-inner .ud_mainslide .slick-prev {
    width: 3rem;
    height: 3rem;
    z-index: 2;
  }

  .slick-dots li {
    margin: 0;
  }

  #page-detail .column {
    margin-bottom: 4rem;
    padding-bottom: 4rem;
    border-bottom: 1px solid #ccc;
  }
  #page-detail .column .statement_link {
    margin: 4rem 0;
  }
  #page-detail .column .statement_link a {
    line-height: inherit;
    border-radius: 10rem;
    padding: 1rem 6rem 1rem 3rem;
    height: auto;
    line-height: 1.2;
  }

  #page-restaurant .column {
    padding: 0;
  }
  #page-restaurant .ud_mainslide::before {
    height: 27.2rem;
    top: -2.4rem;
  }
  #page-restaurant .ud_mainslide::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: -1.8rem;
    background: rgba(217, 136, 105, 0.2);
    width: 58.4rem;
    height: 27.2rem;
    z-index: -1;
  }
  #page-restaurant .restaurant_list {
    padding: 10.7rem 0;
    margin-top: 12.5rem;
  }
  #page-restaurant .restaurant_list .box1 {
    display: flex;
    flex-direction: column;
    margin-bottom: 6.8rem;
  }
  #page-restaurant .restaurant_list .box1:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-restaurant .restaurant_list .box1::before {
    bottom: 50rem;
  }
  #page-restaurant .restaurant_list .box1 .txt {
    padding: 5.7rem 0;
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 3.2rem;
    margin-left: 3.2rem;
  }
  #page-restaurant .restaurant_list .box1 .txt .txt_en {
    font-size: 4.2rem;
  }
  #page-restaurant .restaurant_list .box1 .txt h4 {
    font-size: 3.4rem;
    margin: 2rem 0 3.4rem;
  }
  #page-restaurant .restaurant_list .box1 .txt .view_more {
    margin: 3.2rem auto 0;
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n)::before {
    right: 0;
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n) .txt {
    margin-left: 0;
    margin-right: 3.2rem;
  }
  #page-restaurant .restaurant_list .box1 .ph {
    order: 2;
  }
  #page-restaurant .restaurant_list .box1 .ph img {
    height: 50rem !important;
    object-fit: cover;
  }

  #page-shiosai .column, #page-cafe .column, #page-bar .column {
    padding: 0;
  }
  #page-shiosai .column .pagetop_nav, #page-cafe .column .pagetop_nav, #page-bar .column .pagetop_nav {
    padding: 0 3.2rem;
  }
  #page-shiosai .cont_shiosai, #page-cafe .cont_shiosai, #page-bar .cont_shiosai {
    padding: 8.8rem 0;
    font-size: 2.6rem;
    margin-bottom: 7.2rem;
  }
  #page-shiosai .cont_shiosai .txt_en, #page-cafe .cont_shiosai .txt_en, #page-bar .cont_shiosai .txt_en {
    font-size: 5rem;
    text-align: center;
    margin-bottom: 0;
  }
  #page-shiosai .cont_shiosai h3, #page-cafe .cont_shiosai h3, #page-bar .cont_shiosai h3 {
    font-size: 3rem;
    margin-top: 0;
    margin-bottom: 4.8rem;
  }
  #page-shiosai .cont_shiosai h4, #page-cafe .cont_shiosai h4, #page-bar .cont_shiosai h4 {
    font-size: 3rem;
    margin-bottom: 4.6rem;
  }
  #page-shiosai .cont_shiosai p, #page-cafe .cont_shiosai p, #page-bar .cont_shiosai p {
    padding: 0 3.4rem;
    margin-bottom: 5.4rem;
    text-align: left;
    line-height: 1.8;
  }
  #page-shiosai .cont_shiosai .btn, #page-cafe .cont_shiosai .btn, #page-bar .cont_shiosai .btn {
    flex-direction: column;
    padding: 0 3.4rem;
  }
  #page-shiosai .cont_shiosai .btn li, #page-cafe .cont_shiosai .btn li, #page-bar .cont_shiosai .btn li {
    width: 100%;
  }
  #page-shiosai .cont_shiosai .btn li:nth-child(1), #page-cafe .cont_shiosai .btn li:nth-child(1), #page-bar .cont_shiosai .btn li:nth-child(1) {
    margin: 0 0 3.4rem;
  }
  #page-shiosai .cont_menu, #page-cafe .cont_menu, #page-bar .cont_menu {
    padding: 0 3.4rem;
    font-size: 2.6rem;
    margin-bottom: 3.4rem;
  }
  #page-shiosai .cont_menu h3, #page-cafe .cont_menu h3, #page-bar .cont_menu h3 {
    font-size: 3rem;
  }
  #page-shiosai .photos-bottom, #page-cafe .photos-bottom, #page-bar .photos-bottom {
    padding: 0 3.4rem;
    margin-bottom: 7rem;
  }
  #page-shiosai .cont_chef, #page-cafe .cont_chef, #page-bar .cont_chef {
    padding: 10.4rem 3.4rem;
    margin-bottom: 17.6rem;
  }
  #page-shiosai .cont_chef .txt, #page-cafe .cont_chef .txt, #page-bar .cont_chef .txt {
    position: relative;
    padding: 5.4rem 7.8rem;
    font-size: 2.6rem;
    margin: -15rem 3rem 0;
  }
  #page-shiosai .cont_chef .txt .txt_en, #page-cafe .cont_chef .txt .txt_en, #page-bar .cont_chef .txt .txt_en {
    font-size: 5rem;
    color: #0D004C;
  }
  #page-shiosai .cont_chef .txt h3, #page-cafe .cont_chef .txt h3, #page-bar .cont_chef .txt h3 {
    font-size: 4rem;
    font-weight: normal;
  }
  #page-shiosai .cont_chef .txt h3 span, #page-cafe .cont_chef .txt h3 span, #page-bar .cont_chef .txt h3 span {
    font-size: 2.6rem;
  }
  #page-shiosai .cont_chef .txt .keireki, #page-cafe .cont_chef .txt .keireki, #page-bar .cont_chef .txt .keireki {
    font-size: 2.4rem;
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid #9B98AB;
  }
  #page-shiosai .box1, #page-cafe .box1, #page-bar .box1 {
    padding: 0 3.4rem;
    font-size: 2.6rem;
    margin-bottom: 10rem;
  }
  #page-shiosai .box1 .txt_en, #page-cafe .box1 .txt_en, #page-bar .box1 .txt_en {
    font-size: 5rem;
    line-height: 1.5;
    margin-bottom: 1rem;
  }
  #page-shiosai .box1 h4, #page-cafe .box1 h4, #page-bar .box1 h4 {
    margin-bottom: 4rem;
  }
  #page-shiosai .box1 .list, #page-cafe .box1 .list, #page-bar .box1 .list {
    margin-bottom: 2rem;
  }
  #page-shiosai .box1 .list li, #page-cafe .box1 .list li, #page-bar .box1 .list li {
    border-bottom-width: 1px;
    margin-bottom: 1rem;
    padding: 0 2rem;
  }
  #page-shiosai .box1 p, #page-cafe .box1 p, #page-bar .box1 p {
    line-height: 1.8;
    padding: 0 2rem;
  }

  #page-spa .content .maincol > .column {
    padding: 0;
  }
  #page-spa h3 {
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  }
  #page-spa .spa_box_title {
    margin-bottom: 7.4rem;
  }
  #page-spa .spa_box_title .txt {
    padding: 0 3.2rem 4rem;
  }
  #page-spa .spa_box_title .txt h3 {
    text-align: center;
    font-size: 5rem;
  }
  #page-spa .spa_box_title .txt .txt_en {
    font-size: 3rem;
    text-align: center;
    padding: 2rem 0 4.8rem;
  }
  #page-spa .spa_box_title .ph2 {
    width: 49.6rem;
    margin: 5rem 0 0 auto;
    display: block;
  }
  #page-spa .spa_box_spa {
    height: 70rem;
    background: url("../img/spa_box2_photo01_sp.jpg");
    background-size: cover;
    padding: 3.2rem;
    margin-bottom: 8rem;
    display: flex;
    align-items: flex-end;
  }
  #page-spa .spa_box_spa .txt_en {
    font-size: 6rem;
    width: 41.6rem;
    padding-left: 6.3rem;
    margin-bottom: 2.5rem;
  }
  #page-spa .spa_box_spa p {
    font-size: 2.6rem;
  }
  #page-spa .spa_box_food {
    height: 85.4rem;
    margin-bottom: 12.9rem;
  }
  #page-spa .spa_box_food::before {
    width: 31.6rem;
    height: 21.1rem;
    top: 25.2rem;
    left: 0;
  }
  #page-spa .spa_box_food .txt {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    font-size: 2.6rem;
  }
  #page-spa .spa_box_food .txt p {
    padding: 0 3.2rem;
  }
  #page-spa .spa_box_food .txt .txt_en {
    font-size: 5rem;
  }
  #page-spa .spa_box_food img {
    display: block;
  }
  #page-spa .spa_box_food .ph1, #page-spa .spa_box_food .ph2 {
    position: absolute;
  }
  #page-spa .spa_box_food .ph1 {
    top: 11.6rem;
    left: 1.9rem;
    width: 35.3rem;
  }
  #page-spa .spa_box_food .ph2 {
    width: 35.3rem;
    right: 0;
    top: 16.6rem;
  }
  #page-spa .spa_box_table {
    display: flex;
    flex-direction: column;
    font-size: 2.6rem;
  }
  #page-spa .spa_box_table .txt {
    order: 2;
    padding: 6rem 3.2rem 11.6rem;
  }
  #page-spa .spa_box_table .txt .txt_en {
    text-align: center;
    font-size: 5rem;
  }
  #page-spa .spa_box_table .txt h3 {
    text-align: center;
    font-size: 3rem;
    margin: 2rem 0 4rem;
  }
  #page-spa .spa_box_table .txt .more a {
    width: 40rem;
    font-size: 2.6rem;
  }
  #page-spa .spa_box_table table {
    border-top: 1px solid #9B98AB;
  }
  #page-spa .spa_box_table table th, #page-spa .spa_box_table table td {
    display: block;
    padding: 2rem;
  }
  #page-spa .spa_box_table table th {
    border: none !important;
    padding-bottom: 0;
  }
  #page-spa .spa_box_table table td {
    border-width: 0 0 1px 0;
    padding-top: 0;
  }
  #page-spa .spa_box_guide {
    background: url("../img/spa_bg_img1.jpg");
    background-size: cover;
  }
  #page-spa .spa_box_terms {
    padding: 6rem 3.2rem 11.6rem;
  }
  #page-spa .spa_box_terms .txt {
    font-size: 2.6rem;
  }
  #page-spa .spa_box_terms .txt .txt_en {
    text-align: center;
    font-size: 5rem;
  }
  #page-spa .spa_box_terms .txt h3 {
    text-align: center;
    font-size: 3rem;
    margin: 2rem 0 4rem;
  }
  #page-spa .spa_box_terms .txt ul li {
    padding: 0.5em 0em 0.5em 1em;
    margin: 0;
  }
  #page-spa .spa_box_inquiry {
    padding: 11rem 0 10rem;
  }
  #page-spa .spa_box_inquiry .txt .txt_en {
    font-size: 5rem;
  }
  #page-spa .spa_box_inquiry .txt h3 {
    text-align: center;
    font-size: 3rem;
    margin: 2rem 0 4rem;
  }
  #page-spa .spa_box_inquiry .txt .more a {
    width: 53.6rem;
  }
  #page-spa .spa_box_inquiry .txt .more a::before {
    width: 4rem;
    height: 3rem;
  }

  #page-access .pagetop_nav li::after {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 2.3rem;
  }
  #page-access .txt_en {
    font-size: 5rem;
  }
  #page-access .content {
    font-size: 2.6rem;
  }
  #page-access .content h3 {
    font-size: 3rem;
    margin-bottom: 5rem;
  }
  #page-access .content h3.title {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
  }
  #page-access .content h3.title.second {
    margin-top: 20rem;
  }
  #page-access .content .map {
    margin: 0 calc(50% - 50vw) 10rem;
    width: 100vw;
  }
  #page-access .content .map iframe {
    height: 41.5rem;
  }
  #page-access .content .route li {
    margin-bottom: 11rem;
  }
  #page-access .content .route li:nth-last-child(1) {
    margin-bottom: 5rem;
  }
  #page-access .content .route li h4 {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
  #page-access .content .route li h4::before {
    width: 6rem;
    height: 6rem;
  }
  #page-access .content .box {
    margin-top: 7rem;
  }
  #page-access .content .box:nth-last-child(1) {
    margin-bottom: 21rem;
  }
  #page-access .content .box dl {
    margin-top: 3rem;
  }
  #page-access .content .btn li {
    margin-bottom: 1em;
  }
  #page-access .content .btn li:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-access .content .btn li a {
    height: 3em;
    border-radius: 1.5em;
    padding: 0 5rem;
  }
  #page-access .content .btn li a::before {
    width: 5rem;
    height: 5rem;
  }
  #page-access .content .information {
    padding-top: 15rem;
    padding-bottom: 10rem;
  }
  #page-access .content .information > p:not(.txt_en) {
    text-align: left;
  }
  #page-access .content .information .info_box {
    padding: 3.2rem;
    margin-top: 3.2rem;
  }

  #page-stay .content {
    font-size: 2.6rem;
  }
  #page-stay .txt_en {
    font-size: 5rem;
  }
  #page-stay h3 {
    font-size: 3rem;
    font-weight: bold;
  }
  #page-stay .top_area {
    margin-bottom: 20.6rem;
  }
  #page-stay .top_area h3 {
    font-size: 5rem;
    width: 8em;
    margin: 0 auto 3rem;
    line-height: 1.4;
  }
  #page-stay .top_area .txt_en {
    font-size: 3rem;
    margin-bottom: 6.1rem;
  }
  #page-stay .top_area p:not(.txt_en) {
    text-align: left;
  }
  #page-stay .top_area ul {
    text-align: left;
    margin: 3rem 0 5rem;
  }
  #page-stay .top_area ul li {
    margin-left: 1em;
    text-indent: -1em;
  }
  #page-stay .top_area .ph1, #page-stay .top_area .ph2 {
    margin: 0 calc(50% - 50vw) 5.4rem;
    width: 100vw;
  }
  #page-stay .top_area .ph1::before, #page-stay .top_area .ph2::before {
    height: 2.4rem;
    bottom: -2.4rem;
  }
  #page-stay .top_area .ph1::before {
    width: 29.6rem;
  }
  #page-stay .top_area .ph2 img {
    margin-left: 6.4rem;
  }
  #page-stay .top_area .ph2::before {
    width: 37.5rem;
    right: 0;
  }
  #page-stay .type_list {
    padding-top: 8rem;
    padding-bottom: 16rem;
  }
  #page-stay .type_list ul {
    margin-top: 6rem;
  }
  #page-stay .type_list ul li {
    width: 33.2rem;
    margin-bottom: 4rem;
  }
  #page-stay .type_list ul li .ph img {
    opacity: 0.7;
  }
  #page-stay .type_list ul li .ph span.caption {
    width: 9.4rem;
    line-height: 3.8rem;
  }
  #page-stay .type_list ul li .ph span.more {
    font-size: 3.2rem;
  }
  #page-stay .type_list ul li .txt h4 {
    font-weight: bold;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-bottom: 0.7rem;
  }
  #page-stay .type_list ul li .txt p {
    font-size: 2.4rem;
  }
  #page-stay .roomtype {
    padding-top: 12rem;
    padding-bottom: 12rem;
  }
  #page-stay .roomtype .roomtype_toptxt {
    padding: 0 3.2rem 8.6rem;
  }
  #page-stay .roomtype .roomtype_toptxt h3 {
    padding-bottom: 1rem;
    margin-bottom: 4rem;
  }
  #page-stay .roomtype .roomtype_toptxt p:nth-last-child(1) {
    text-align: left;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom {
    padding: 4rem 3.2rem 25rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt .en_caption {
    font-size: 5.2rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt h4 {
    font-size: 2.8rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt table {
    margin: 3rem 0;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt .more a {
    height: 8.8rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt .amenity {
    margin-top: 3rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .txt .amenity a {
    width: 42rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .ph {
    margin-top: 6rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .ph .caption {
    margin-bottom: 1rem;
  }
  #page-stay .roomtype .roomtype_box .roomtype_bottom .ph ul li:nth-child(1) {
    margin-right: 1.6rem;
  }
  #page-stay .roomtype .roomtype_box:nth-last-child(1) .roomtype_bottom {
    padding-bottom: 10rem;
  }
  #page-stay .roomtype.twin::before {
    height: 70rem;
  }
  #page-stay #amenity {
    padding-top: 11rem;
    padding-bottom: 15rem;
  }
  #page-stay #amenity ul {
    margin: 6.7rem 0 8.5rem;
  }
  #page-stay #amenity ul li::after {
    width: 41.6rem;
    height: 27.2rem;
    right: -0.8rem;
    bottom: -0.8rem;
  }
  #page-stay #amenity ul li:nth-child(1) {
    width: 48rem;
  }
  #page-stay #amenity ul li:nth-child(1) img {
    z-index: 10;
  }
  #page-stay #amenity ul li:nth-child(2) {
    width: 44rem;
    margin: -7.2rem 0 0 auto;
  }

  #page-banquet .column table th, #page-banquet .column table td {
    display: block;
  }
  #page-banquet .column table th {
    width: 100%;
    padding-bottom: 0;
  }

  #page-faq .column-inner .pagetop_nav li a {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #page-faq .column-inner .pagetop_nav li:nth-child(2) {
    line-height: 1;
  }
  #page-faq .column-inner h3 {
    font-size: 4rem;
  }
  #page-faq .column-inner dl dt::before, #page-faq .column-inner dl dd::before {
    font-size: 4rem;
  }

  #page-english .column {
    margin-bottom: 10rem;
  }
  #page-english .column:nth-child(5) {
    padding: 0;
  }
  #page-english .column h3 {
    font-size: 4rem;
    line-height: 1.5;
    margin-bottom: 1em;
  }
  #page-english .column .btn {
    width: 100%;
  }
  #page-english .column .btn a {
    font-size: 3rem;
  }
  #page-english .column .btn a .txt_en {
    font-size: 5rem;
  }
  #page-english .restaurant_list {
    padding: 10.7rem 0;
    margin-top: 12.5rem;
  }
  #page-english .restaurant_list .box1 {
    display: flex;
    flex-direction: column;
    margin-bottom: 6.8rem;
  }
  #page-english .restaurant_list .box1:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-english .restaurant_list .box1::before {
    bottom: 50rem;
    content: none;
  }
  #page-english .restaurant_list .box1 .txt {
    padding: 5.7rem 0;
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 3.2rem;
  }
  #page-english .restaurant_list .box1 .txt .txt_en {
    font-size: 4.2rem;
    margin-bottom: 2rem;
  }
  #page-english .restaurant_list .box1 .txt h4 {
    font-size: 3.4rem;
    margin: 2rem 0 3.4rem;
  }
  #page-english .restaurant_list .box1 .txt .view_more {
    margin: 3.2rem auto 0;
  }
  #page-english .restaurant_list .box1:nth-child(2n)::before {
    right: 0;
  }
  #page-english .restaurant_list .box1:nth-child(2n) .txt {
    margin-left: 0;
  }
  #page-english .restaurant_list .box1 .ph {
    order: 2;
  }
  #page-english .restaurant_list .box1 .ph img {
    height: 50rem !important;
    object-fit: cover;
  }

  #page-recruit .txt_en {
    font-size: 5rem;
  }
  #page-recruit .column ul {
    flex-wrap: wrap;
    margin-top: 3rem;
  }
  #page-recruit .column ul li {
    width: 49%;
    margin-bottom: 1rem;
    font-size: 2.4rem;
  }
  #page-recruit .column ul li img {
    height: 25rem;
  }

  #page-sitemap .sitemap_nemu {
    flex-wrap: wrap;
  }
  #page-sitemap .sitemap_nemu .sitemap_nemu_box {
    width: 100%;
    display: block;
    margin-bottom: 10rem;
  }
  #page-sitemap .sitemap_nemu .sitemap_nemu_box h4::before {
    border: 1rem solid;
    border-color: transparent transparent transparent #0D004C;
  }
  #page-sitemap .sitemap_nemu .sitemap_nemu_box ul li a::before {
    border: 0.8rem solid;
    border-color: transparent transparent transparent #0D004C;
  }
  #page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase .sitemap_toiawase_link a {
    height: 6rem;
    border-radius: 3rem;
  }

  #page-gallery .column {
    margin-bottom: 20rem;
  }
  #page-gallery .column .txt_en {
    font-size: 5rem;
  }
  #page-gallery .column h3 {
    font-size: 3rem;
    margin-bottom: 5rem;
  }
  #page-gallery .column .photos-bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #page-gallery .column .photos-bottom img {
    width: 34rem !important;
    height: 22.6rem !important;
  }
  #page-gallery .column .photos-bottom div {
    width: 49% !important;
    margin-bottom: 1rem;
  }
  #page-gallery .column .attention {
    font-size: 2rem;
  }
  #page-gallery #lightbox {
    margin: 0px auto 0px 5px;
  }

  #page-opening .logoarea {
    position: relative;
  }
  #page-opening .logoarea h1 img {
    width: 29rem;
  }
  #page-opening .pcmode {
    display: none;
  }
  #page-opening .movie {
    width: 100%;
    height: 100vh;
    position: fixed;
    display: flex;
    justify-content: center;
    overflow: hidden;
    left: 0;
    top: 0;
    background: url("../img/op_video_bg-sp.jpg") center center no-repeat;
    background-size: cover;
    z-index: -1;
  }
  #page-opening .movie video {
    object-fit: contain;
    max-height: initial;
    max-width: initial;
    min-width: 100vw;
    min-height: 100vh;
    height: 100vh;
  }
  #page-opening .video-btn {
    content: "";
    position: absolute;
    bottom: 40px;
    /*コントローラー分下部に余白を*/
    cursor: pointer;
  }
  #page-opening .video-btn img {
    width: 17.2rem;
  }
  #page-opening .video-btn.none {
    display: none;
  }
  #page-opening main {
    padding: 9rem 0 19.4rem;
  }
  #page-opening main h2 {
    font-size: 4.2rem;
    margin-bottom: 3rem;
  }
  #page-opening main .catch {
    font-size: 3.2rem;
    margin-bottom: 12rem;
  }
  #page-opening main article {
    padding: 0 7.5rem;
  }
  #page-opening main article:nth-of-type(1) {
    margin-bottom: 15rem;
  }
  #page-opening main article h3 {
    font-size: 4.6rem;
    margin-bottom: 5rem;
  }
  #page-opening main article h3 span {
    font-size: 2.8rem;
    margin-top: 2rem;
  }
  #page-opening main article .ph {
    margin-bottom: 5rem;
  }
  #page-opening footer {
    margin: 0;
  }
}
/*ウエディングサイト*/
@media screen and (max-width: 780px) {
  body[id^="page-wedding"] .move ul {
    margin-bottom: 3rem;
  }
  body[id^="page-wedding"] .move.stop a {
    background: #2C6D93 url(../img/arrowtop_w.png) no-repeat center right 2rem;
    background-size: 4rem;
  }
  body[id^="page-wedding"] header h1 a#logo {
    display: block;
    width: 58.7rem;
  }
  body[id^="page-wedding"] footer {
    padding-bottom: 8rem;
  }
  body[id^="page-wedding"] .content .maincol > h2.hd::before {
    margin-bottom: 0;
    font-size: 8rem;
  }
  body[id^="page-wedding"] .content .maincol > h2.hd::after {
    height: 4.6rem;
  }
  body[id^="page-wedding"] .breadcrumbs {
    margin-bottom: 9rem;
  }
  body[id^="page-wedding"] .main-photo .main-photo-inner img {
    height: calc((var(--vh, 1vh) * 100) - 16.8rem) !important;
  }
  body[id^="page-wedding"] .nav_wrap .header_btn .header_btn_insta img {
    width: 6rem;
  }
  body[id^="page-wedding"] .modal-content .modal-close {
    background: url("../img/drop_close_wedding.png") no-repeat;
    background-size: 100%;
  }
  body[id^="page-wedding"] .header-inner-inner > .spnav_plan {
    display: flex;
    justify-content: space-between;
  }
  body[id^="page-wedding"] .header-inner-inner > .spnav_plan li {
    width: 50%;
    position: relative;
  }
  body[id^="page-wedding"] .header-inner-inner > .spnav_plan li a {
    font-size: 2.8rem;
    text-align: left;
    padding-left: 2.7rem;
  }
  body[id^="page-wedding"] .header-inner-inner > .spnav_plan li:nth-last-child(1) a {
    background: #2C6D93;
  }
  body[id^="page-wedding"] .nav .spnav_plan.wedding a {
    background: #D98869;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
    padding: 0 4rem;
    text-align: left;
  }
  body[id^="page-wedding"] .nav .spnav_toiawase.wedding a {
    background: #2C6D93;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
    padding: 0 4rem;
    text-align: left;
  }
  body[id^="page-wedding"] .nav .spnav_wedding a {
    background: #0D004C;
  }
  body[id^="page-wedding"] .pagetop_txt {
    font-size: 3rem;
    padding: 0;
  }
  body[id^="page-wedding"] .pagetop_txt h3 {
    margin-bottom: 8rem;
  }
  body[id^="page-wedding"] .slick-slider .slick-prev, body[id^="page-wedding"] .slick-slider .slick-next {
    width: 5rem;
    height: 5rem;
  }

  #page-wedding .content .maincol > .column {
    padding: 0;
  }
  #page-wedding .btn_play {
    top: calc(var(--vh, 1vh) * 83);
  }
  #page-wedding .btn_play img {
    width: 17.2rem;
  }
  #page-wedding .p_modal .modalBody video {
    width: 100%;
    height: auto;
  }
  #page-wedding .txt_en {
    font-size: 5.6rem;
  }
  #page-wedding .catch {
    font-size: 3.4rem;
  }
  #page-wedding .wedding_top_catch {
    font-size: 4.2rem;
    text-shadow: 0 0 1rem #000;
    top: calc(var(--vh, 1vh) * 45);
    line-height: 1;
  }
  #page-wedding .wedding_top_catch img {
    width: 8.2rem;
    margin-bottom: 3.1rem;
  }
  #page-wedding .wedding_title {
    font-size: 4rem;
    width: 11.5em;
    margin: 14.2rem auto 19.2rem;
  }
  #page-wedding .wedding_title::after {
    width: 6em;
  }
  #page-wedding .wedding_news {
    margin: 0 4.8rem 18rem;
  }
  #page-wedding .wedding_news h3 {
    font-size: 3rem;
    margin-bottom: 5rem;
  }
  #page-wedding .wedding_news h3 span {
    font-size: 5.6rem;
  }
  #page-wedding .wedding_news dl dt {
    font-size: 2.8rem;
    font-weight: bold;
    margin-bottom: 1em;
  }
  #page-wedding .wedding_news dl dd {
    font-size: 2.6rem;
    padding-bottom: 4rem;
    margin-bottom: 5.6rem;
  }
  #page-wedding .wedding_news dl dd .statement_link {
    margin-top: 1em;
  }
  #page-wedding .top_letter {
    /*
    padding: 7rem 7rem 30rem;
    */
    padding: 30rem 7rem 7rem;
    background: url("../img/wedding_top_letter_bg_sp.jpg") center bottom no-repeat;
    background-size: cover;
  }
  #page-wedding .top_letter .txt {
    padding: 6rem 0;
  }
  #page-wedding .top_letter .txt .txt_en {
    text-align: left;
    padding: 0 3.9rem;
  }
  #page-wedding .top_letter .txt .txt_en span {
    margin-left: 8rem;
  }
  #page-wedding .top_letter .txt .catch {
    margin: 4rem 0;
  }
  #page-wedding .top_box .txt {
    margin: -4.8rem 3.9rem 0;
    padding: 9rem 0 9.2rem;
    position: relative;
  }
  #page-wedding .top_floor .view_more {
    margin-bottom: 6rem;
  }
  #page-wedding .top_floor ul li .txt {
    margin: -4.8rem 3.9rem 0;
    padding: 6rem 9.6rem 5.8rem;
    position: relative;
  }
  #page-wedding .top_floor ul li .txt::before, #page-wedding .top_floor ul li .txt::after {
    width: 14rem;
    height: 14rem;
  }
  #page-wedding .top_floor ul li .txt::before {
    left: 2rem;
    top: 2rem;
  }
  #page-wedding .top_floor ul li .txt::after {
    right: 2rem;
    bottom: 2rem;
  }
  #page-wedding .top_floor ul li .txt h4 {
    font-size: 4rem;
    padding-bottom: 10.4rem;
  }
  #page-wedding .top_floor ul li .txt h4 span {
    font-size: 3rem;
    margin-top: 2.1rem;
  }
  #page-wedding .top_floor ul li .txt h4::after {
    width: 8rem;
    height: 4.4rem;
    bottom: 4rem;
  }
  #page-wedding .top_floor ul li:nth-child(1) {
    margin-bottom: 12rem;
  }
  #page-wedding .top_cuisine {
    padding: 63rem 6rem 0;
    background: url("../img/wedding_top_cuisine_bg_sp.jpg") top center no-repeat;
    background-size: 100%;
  }
  #page-wedding .top_cuisine .txt {
    width: 100%;
    padding: 8rem 0 5.3rem;
  }
  #page-wedding .top_cuisine .txt .catch {
    margin-bottom: 4rem;
  }
  #page-wedding .top_dress {
    padding: 35rem 12rem 7rem;
    background: url("../img/wedding_top_dress_sp.jpg") center bottom no-repeat;
    background-size: cover;
  }
  #page-wedding .top_dress .txt {
    width: 100%;
    padding: 8rem 0 5.3rem;
  }
  #page-wedding .top_dress .txt .catch {
    margin-bottom: 4rem;
  }
  #page-wedding .top_access {
    display: flex;
    flex-direction: column;
  }
  #page-wedding .top_access .txt {
    order: -1;
    position: relative;
    z-index: 1;
    padding: 5.8rem 0 5rem;
    margin: 0 6.2rem 0 6.4rem;
    box-shadow: -1.5rem 1.5rem 0 rgba(44, 109, 147, 0.2);
    font-size: 2.6rem;
  }
  #page-wedding .top_access .txt .hotelname {
    font-size: 3.2rem;
  }
  #page-wedding .top_access .txt p:nth-child(4) {
    margin-bottom: 1em;
  }
  #page-wedding .top_access .gmap {
    margin-top: -9rem;
    height: 77.4rem;
  }
  #page-wedding .top_access .gmap iframe {
    height: 160%;
    margin-top: -25%;
  }
  #page-wedding .insta_list {
    margin-top: 5rem;
  }
  #page-wedding .insta_list iframe {
    height: 57rem;
  }

  #page-wedding_floorguide .pagetop_txt {
    margin-bottom: 12rem;
  }
  #page-wedding_floorguide .column {
    padding: 0;
  }
  #page-wedding_floorguide .column h3 {
    font-size: 4.6rem;
    padding: 0 3rem;
    text-align: center;
  }
  #page-wedding_floorguide .column h3 span {
    font-size: 2.6rem;
  }
  #page-wedding_floorguide .column p {
    padding: 0 3rem;
  }
  #page-wedding_floorguide .catch {
    font-size: 3.2rem;
    text-align: center;
  }
  #page-wedding_floorguide .map {
    margin: 0 0 16rem;
  }
  #page-wedding_floorguide .map .nav_link li {
    height: 6rem;
  }
  #page-wedding_floorguide .map .nav_link li.honkanhotel {
    width: 11.5rem;
    left: 5.9rem;
    top: 19.3rem;
  }
  #page-wedding_floorguide .map .nav_link li.skychapel {
    left: 22.3rem;
    top: 26.4rem;
    width: 20rem;
  }
  #page-wedding_floorguide .map .nav_link li.shiosai {
    width: 14rem;
    left: 16.7rem;
    top: 11.6rem;
  }
  #page-wedding_floorguide .map .nav_link li.chapel {
    width: 15rem;
    left: 57.4rem;
    top: 27.2rem;
  }
  #page-wedding_floorguide .map .nav_link li.banquet {
    width: 16.5rem;
    top: 19.3rem;
    left: 46.6rem;
  }
  #page-wedding_floorguide .map .nav_link li.skyterrace {
    width: 22.5rem;
    top: 11.6rem;
    left: 51.1rem;
  }
  #page-wedding_floorguide .map .nav_link li.entrance {
    width: 18rem;
    top: 3.7rem;
    left: 36.3rem;
  }
  #page-wedding_floorguide .title {
    margin-bottom: 8rem;
    padding-bottom: 1.5rem;
  }
  #page-wedding_floorguide .title h3 {
    font-size: 4.6rem;
  }
  #page-wedding_floorguide .title p {
    font-size: 3rem;
  }
  #page-wedding_floorguide .slick-slider .slick-prev, #page-wedding_floorguide .slick-slider .slick-next {
    width: 5rem;
    height: 5rem;
  }
  #page-wedding_floorguide .guide_box {
    margin-bottom: 15rem;
  }
  #page-wedding_floorguide .guide_box h3 {
    margin: 9.2rem 0 5rem;
  }
  #page-wedding_floorguide .honkan {
    margin-bottom: 22rem;
  }

  #page-wedding_cuisine .column {
    padding: 0;
  }
  #page-wedding_cuisine .pagetop_txt {
    margin-bottom: 18rem;
  }
  #page-wedding_cuisine .cuisine_box {
    margin-bottom: 10rem;
  }
  #page-wedding_cuisine .cuisine_box img {
    width: 100%;
  }
  #page-wedding_cuisine .cuisine_box .main_ph {
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
  }
  #page-wedding_cuisine .cuisine_box .main_ph img {
    order: 2;
  }
  #page-wedding_cuisine .cuisine_box .main_ph h3 {
    padding: 0 3rem;
    font-size: 5rem;
  }
  #page-wedding_cuisine .cuisine_box .main_ph .catch {
    padding: 0 3rem;
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
  #page-wedding_cuisine .cuisine_box ul li {
    width: 36.4rem;
    margin-bottom: 2rem;
  }
  #page-wedding_cuisine .cuisine_box.beef ul li {
    width: 100%;
  }

  #page-wedding_access .txt_en {
    font-size: 5rem;
  }
  #page-wedding_access .content {
    font-size: 2.6rem;
  }
  #page-wedding_access .content h3 {
    font-size: 3rem;
    margin-bottom: 5rem;
  }
  #page-wedding_access .content h3.title {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
  }
  #page-wedding_access .content h3.title.second {
    margin-top: 20rem;
  }
  #page-wedding_access .content .map {
    margin: 0 calc(50% - 50vw) 10rem;
    width: 100vw;
  }
  #page-wedding_access .content .map iframe {
    height: 41.5rem;
  }
  #page-wedding_access .content .route li {
    margin-bottom: 11rem;
  }
  #page-wedding_access .content .route li:nth-last-child(1) {
    margin-bottom: 5rem;
  }
  #page-wedding_access .content .route li h4 {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
  #page-wedding_access .content .route li h4::before {
    width: 6rem;
    height: 6rem;
  }
  #page-wedding_access .content .box {
    margin-top: 7rem;
  }
  #page-wedding_access .content .box:nth-last-child(1) {
    margin-bottom: 21rem;
  }
  #page-wedding_access .content .box dl {
    margin-top: 3rem;
  }
  #page-wedding_access .content .btn li {
    margin-bottom: 1em;
  }
  #page-wedding_access .content .btn li:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-wedding_access .content .btn li a {
    height: 3em;
    border-radius: 1.5em;
    padding: 0 5rem;
  }
  #page-wedding_access .content .btn li a::before {
    width: 5rem;
    height: 5rem;
  }
  #page-wedding_access .content .information {
    padding-top: 15rem;
    padding-bottom: 10rem;
  }
  #page-wedding_access .content .information > p:not(.txt_en) {
    text-align: left;
  }
  #page-wedding_access .content .information .info_box {
    padding: 3.2rem;
    margin-top: 3.2rem;
  }

  #page-wedding_location .slick-slider .slick-prev, #page-wedding_location .slick-slider .slick-next {
    width: 5rem;
    height: 5rem;
  }
  #page-wedding_location .slick-slider .slick-dots {
    bottom: -2.5em;
  }
  #page-wedding_location .slick-slider .slick-dots li {
    margin: 0;
    width: auto;
  }
  #page-wedding_location .slick-slider .slick-dots li button {
    margin: 0 0.5rem;
    width: auto;
  }
  #page-wedding_location .slick-slider .slick-dots li button::before {
    width: 10px;
  }
  #page-wedding_location .column {
    padding: 0;
  }
  #page-wedding_location .column ul {
    margin-bottom: 0;
  }
  #page-wedding_location .column .location_ph_01 li img {
    height: 42rem;
  }
  #page-wedding_location .column .location_ph_02 li, #page-wedding_location .column .location_ph_05 li {
    margin-bottom: 2rem;
  }
  #page-wedding_location .column .location_ph_02 li img, #page-wedding_location .column .location_ph_05 li img {
    width: 53rem;
  }
  #page-wedding_location .column .location_ph_02 li:nth-child(1), #page-wedding_location .column .location_ph_05 li:nth-child(1) {
    width: 100%;
  }
  #page-wedding_location .column .location_ph_02 li:nth-child(1) img, #page-wedding_location .column .location_ph_05 li:nth-child(1) img {
    width: 100%;
  }
  #page-wedding_location .column .location_ph_02 li:nth-child(2n+1), #page-wedding_location .column .location_ph_05 li:nth-child(2n+1) {
    text-align: right;
  }
  #page-wedding_location .column .location_ph_03 li {
    margin-bottom: 2rem;
  }
  #page-wedding_location .column .location_ph_04 {
    display: flex;
    flex-direction: column;
  }
  #page-wedding_location .column .location_ph_04 li {
    margin-bottom: 2rem;
  }
  #page-wedding_location .column .location_ph_04 li img {
    width: 53rem;
  }
  #page-wedding_location .column .location_ph_04 li:nth-child(1), #page-wedding_location .column .location_ph_04 li:nth-last-child(1) {
    width: 100%;
  }
  #page-wedding_location .column .location_ph_04 li:nth-child(1) img, #page-wedding_location .column .location_ph_04 li:nth-last-child(1) img {
    width: 100%;
  }
  #page-wedding_location .column .location_ph_04 li:nth-child(2) {
    order: -1;
  }
  #page-wedding_location .column .location_ph_04 li:nth-child(2n) {
    text-align: right;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer {
    margin-top: 8rem;
    padding: 8rem 3.2rem;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .ph {
    width: 31.9rem;
    margin: auto;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .ph::before, #page-wedding_location .column:nth-last-child(2) .photographer .ph::after {
    width: 6rem;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .ph::before {
    left: -2rem;
    top: 1rem;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .ph::after {
    right: -2rem;
    bottom: 1rem;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .txt .txt_en {
    text-align: center;
    font-size: 5rem;
    margin-top: 7rem;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .txt h3 {
    font-size: 3.6rem;
    text-align: center;
  }
  #page-wedding_location .column:nth-last-child(2) .photographer .txt h3 span {
    font-size: 2.8rem;
  }

  #page-wedding_plan .column {
    margin-bottom: 20rem;
  }
  #page-wedding_plan .column h3 {
    font-size: 3.8rem;
    margin-top: 0;
  }
  #page-wedding_plan .column h4 {
    font-size: 3.2rem;
  }
  #page-wedding_plan .column table th {
    white-space: nowrap;
  }

  #page-wedding_concept .column {
    padding: 0;
  }
  #page-wedding_concept .pagetop_txt {
    font-size: 3rem;
    padding-bottom: 27rem;
    margin-bottom: 19rem;
    background: url("../img/weddin_concept_topbox_bg_sp.jpg") center bottom no-repeat;
    background-size: 100%;
  }
  #page-wedding_concept .pagetop_txt .txt_en {
    font-size: 5rem;
    margin-bottom: 4rem;
  }
  #page-wedding_concept .concept_box {
    display: flex;
    flex-direction: column;
  }
  #page-wedding_concept .concept_box .txt {
    font-size: 3rem;
    line-height: 1.6;
    padding: 9rem 3rem;
  }
  #page-wedding_concept .concept_box .ph {
    order: -1;
  }
  #page-wedding_concept .concept_box_bgfull .txt {
    font-size: 3rem;
    line-height: 1.6;
    padding: 9rem 3rem;
  }
  #page-wedding_concept .concept_box_bgfull.box1 {
    display: block;
  }
  #page-wedding_concept .concept_box_bgfull.box1 .ph {
    display: block;
  }
  #page-wedding_concept .concept_box_bgfull.box1 .ph img {
    height: auto;
  }
  #page-wedding_concept .concept_box_bgfull.box4 {
    height: 75rem;
    background: url("../img/concept_bgfull02_sp.jpg") no-repeat;
    background-size: cover;
  }
  #page-wedding_concept .concept_box_bgfull.box4 .txt {
    padding: 9rem 3rem;
    text-align: center;
    color: #fff;
    font-size: 3.6rem;
  }
  #page-wedding_concept .concept_box_bgfull.box4 .txt .txt_en {
    font-size: 6rem;
    margin-bottom: 2rem;
  }

  #page-wedding_partyreport .slick-slider {
    margin-bottom: 0;
  }
  #page-wedding_partyreport .column {
    margin-bottom: 10rem;
  }
  #page-wedding_partyreport .movie iframe {
    height: 39rem;
  }

  #page-wedding_form .content .inner {
    width: 100%;
  }
  #page-wedding_form .flowchart {
    width: 80%;
  }
  #page-wedding_form .flowchart ul li .number {
    margin: auto;
  }
  #page-wedding_form .column h3 {
    font-size: 4rem;
  }
  #page-wedding_form .column .attention_txt {
    text-align: left;
  }
  #page-wedding_form .column table th, #page-wedding_form .column table td {
    display: block;
    width: 100%;
  }
  #page-wedding_form .column table th select, #page-wedding_form .column table td select {
    width: 60% !important;
  }
  #page-wedding_form .column table td div {
    display: block;
  }
  #page-wedding_form .column table td div input {
    width: 80% !important;
  }
  #page-wedding_form .column table td div p {
    margin-bottom: 1rem;
  }
  #page-wedding_form .column table td div p:nth-last-child(1) {
    margin: 0;
  }
  #page-wedding_form .column table tr.denwa input, #page-wedding_form .column table tr.mail input, #page-wedding_form .column table tr.mail_kakunin input {
    width: 100%;
  }
  #page-wedding_form .column table tr.nenrei input, #page-wedding_form .column table tr.yuubin input, #page-wedding_form .column table tr.ninzu input {
    width: 40%;
  }
  #page-wedding_form .column .btn .sousin p input, #page-wedding_form .column .btn .back p input {
    font-size: 2.8rem;
  }
  #page-wedding_form .column .btn .sousin p input {
    padding-right: 3rem;
  }
}
