@charset "UTF-8";
/*//////////////////////////////////////////////////////

STYLE

//////////////////////////////////////////////////////*/
@import url(icofont.min.css);
@import "https://use.fontawesome.com/releases/v5.10.2/css/all.css";
/*------------------------------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Cormorant+SC:300,400,500,600,700&display=swap");
@import url("https://fonts.googleapis.com/css?family=Cormorant+Garamond:300,400,500,600,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,600,700&display=swap");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700");
@import url("https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900&display=swap");
a:hover, a:focus, #p-menu-wrap .sf-menu li, #p-primary-menu .p-sub-menu a, #gallery, #gallery div, .banquet-feature .inner-box a .caption, .accordion-container .accordion-title:hover, .accordion-container .accordion-title:active, .accordion-title.open { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -ms-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }

#p-menu-wrap .sf-menu li, #p-menu-wrap .sf-menu li::before { -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }

.feature-wrap .feature--block a, .pickup-item .thumbnail img, .layer-overlay .btn-detail { -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }

/*////////////////////////////////////////////////////////////////////////////

base scss

////////////////////////////////////////////////////////////////////////////*/
html.wrap-overflow, body.wrap-overflow { overflow-x: auto; }

html.wrap-overflow #header-section, html.wrap-overflow #project-main, html.wrap-overflow #mobile-menu, html.wrap-overflow #footer-section, body.wrap-overflow #header-section, body.wrap-overflow #project-main, body.wrap-overflow #mobile-menu, body.wrap-overflow #footer-section { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -ms-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; -webkit-overflow-scrolling: touch; }

* { margin: 0; padding: 0; }
*::after, *::before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { font-family: "Noto Sans JP", sans-serif; color: #333; background: #fff; margin: 0; font-size: 15px; line-height: 1.8; width: 100%; -webkit-text-size-adjust: 100%; word-wrap: break-word; overflow-wrap: break-word; }
@media screen and (max-width: 479px) { body { font-size: 13px; line-height: 1.6; } }

html { -webkit-overflow-scrolling: touch; }

.clearfix { display: inline-block; zoom: 100%; }
.clearfix::after { content: "."; display: block !important; height: 0 !important; clear: both; visibility: hidden; }

::selection, ::-webkit-selection, ::-moz-selection { color: #fff; text-shadow: none; background: #03A9F4; }

a { color: #2355a5; text-decoration: none; padding: 0; margin: 0; -webkit-transition: background-color .3s linear, color .4s linear; -moz-transition: background-color .3s linear, color .4s linear; -o-transition: background-color .3s linear, color .4s linear; -ms-transition: background-color .3s linear, color .4s linear; transition: background-color .3s linear, color .4s linear; }
a:hover, a:focus { color: #66c3c6; text-decoration: none; outline: none; }

img { height: auto; max-width: 100%; }

img[src$=".svg"] { width: 100%; height: auto; }

a img { -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }
a img:hover { filter: brightness(60%) saturate(1); -webkit-filter: brightness(60%) saturate(1); -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }

a.bright:hover img { filter: brightness(60%) saturate(1); -webkit-filter: brightness(60%) saturate(1); }

.col img { -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }

a.image-popup img { background: #FFF; }
a.image-popup img:hover { filter: none; }

img.slickHoverZoom { display: block; }

_:-ms-lang(x)::-ms-backdrop, a:hover img { opacity: .7; }

a[href^="tel:"] { cursor: default; }
a[href^="tel:"] img:hover { filter: none; }

blockquote p { font-size: 14px; }

ul, ol, li { margin: 0; padding: 0; list-style: none; }

.alignleft { float: left; }

.alignright { float: right; }

.aligncenter { margin-left: auto; margin-right: auto; display: block; clear: both; }

.centered { text-align: center; }

div#preloader { overflow: hidden; background-color: #66c3c6; background-image: url(../img/svg/oval.svg); background-repeat: no-repeat; background-position: center center; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 9999999999; display: none; }

#preloader2 { overflow: hidden; background-color: #66c3c6; background-image: url("../img/svg/oval.svg"); background-repeat: no-repeat; background-position: center center; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 9999999999; }

.fade-in { animation-name: fade-in1; animation-duration: 4s; animation-timing-function: ease-out; animation-delay: 1s; animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; }

@keyframes fade-in { 0% { opacity: 0; }
  100% { opacity: 1; } }
/*////////////////////////////////////////////////////////////////////////////

typography scss

////////////////////////////////////////////////////////////////////////////*/
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { margin: 0; padding: 0; font-weight: 300; line-height: 1; color: inherit; font-family: "Noto Sans JP", sans-serif; }

h1, .h1 { font-size: 30px; line-height: 42px; }
@media screen and (max-width: 479px) { h1, .h1 { font-size: 24px; } }

h2 { font-size: 24px; }
@media screen and (max-width: 479px) { h2 { font-size: 20px; } }

h3, .h3 { font-size: 20px; line-height: 32px; }
@media screen and (max-width: 479px) { h3, .h3 { font-size: 18px; } }

h4, .h4 { font-size: 16px; line-height: 28px; }

h5, .h5 { font-size: 16px; line-height: 24px; color: #333; font-weight: bold; }

h6, .h6 { font-size: 12px; line-height: 24px; }

.p-serif { font-family: 'Noto Serif JP', serif !important; }

.p-serif-noto { font-family: 'Noto Sans JP', sans-serif !important; }

.p-lato { font-family: 'Lato', sans-serif !important; }

.p-lead { font-size: 16px; font-weight: 300; }

@media screen and (max-width: 479px) { .p-left { text-align: left !important; } }

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

.p-letter-no-spacing { letter-spacing: 0 !important; }

.p-no-margin-bottom { margin-bottom: 0 !important; }

.p-first-color:first-letter { color: #66c3c6; }

.p-first:first-letter { margin-right: 0; font-size: 1.3em; font-weight: 400; }
@media screen and (max-width: 479px) { .p-first:first-letter { font-size: 1.4em; } }

.p-white { color: #FFF !important; }

.p-mid-blue { color: #278CAC !important; }

.p-marine { color: #434da2 !important; }

.p-red { color: #e8383d !important; }

.p-yellow { color: #ffdc00 !important; }

.p-black { color: #000 !important; }

.p-green { color: #016A6B !important; }

.p-pink { color: #eb6ea0 !important; }

.p-blue { color: #00afcc !important; }

.p-gray { color: #444 !important; }

.p-red-warning { color: #e8383d !important; }
.p-red-warning::before { font-family: 'FontAwesome'; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\f071"; margin-right: 5px; }

.p-price { font-family: "Lato", sans-serif; font-size: 1.7em; color: #e8383d; font-weight: 400; }
.p-price::before { content: "￥"; font-size: 16px; }

.p-w100 { font-weight: 100 !important; }

.p-w300 { font-weight: 300 !important; }

.p-w400 { font-weight: 400 !important; }

.p-w500 { font-weight: 500 !important; }

.p-w600 { font-weight: 600 !important; }

.p-w700 { font-weight: 700 !important; }

.text-85 { font-size: 85% !important; }

.text-90 { font-size: 90% !important; }

.text-110 { font-size: 110% !important; }

.text-120 { font-size: 120% !important; }

.text-130 { font-size: 130% !important; }

.text-140 { font-size: 140% !important; }

.text-150 { font-size: 150% !important; }

.text-p20 { font-size: 20px !important; }

.text-p24 { font-size: 24px !important; }

.text-p30 { font-size: 30px !important; }

.text-p40 { font-size: 40px !important; }

.text-shadow { text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }

.text-shadow-w { text-shadow: 0px 0px 1px #FFF; }

.page-heading { margin-top: 15px; margin-bottom: 25px; text-align: center; }
@media screen and (max-width: 479px) { .page-heading { margin-bottom: 15px; } }
.page-heading h2 { color: #222; font: 400 36px/1.5 "Cormorant SC", serif; letter-spacing: 2px; text-align: center; }
@media screen and (max-width: 479px) { .page-heading h2 { font-size: 26px; letter-spacing: 0; } }
.page-heading h2 span { font-size: .8em; padding-left: .2em; color: #666; }
.page-heading h2 em { font-style: normal !important; }
.page-heading h3 { color: #222; font: 400 26px/1.5 "Cormorant SC", serif; text-align: center; }
@media screen and (max-width: 479px) { .page-heading h3 { font-size: 20px; letter-spacing: 0; } }

.page-heading .h3-label::before { font-family: "Noto Sans JP", sans-serif; content: attr(data-content); display: inline-block; font-size: 65%; background-color: #D00; color: #FFF; padding: 0 .5em; }
@media screen and (max-width: 479px) { .page-heading .h3-label::before { display: block; width: 6em; } }

.page-heading p { font: 400 13px/1.5 "Lato", sans-serif; letter-spacing: 1px; }
.page-heading p.p-title { color: rgba(0, 0, 0, 0.7); font-size: 15px !important; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .page-heading p.p-title { font-size: 14px !important; letter-spacing: 0; } }
.page-heading p.p-title::before, .page-heading p.p-title::after { content: '─'; display: inline-block; padding: 0 .5em; }
.page-heading p.p-lead { color: rgba(0, 0, 0, 0.8); font-size: 15px !important; line-height: 1.8; letter-spacing: 1px; }
@media screen and (max-width: 479px) { .page-heading p.p-lead { font-size: 14px !important; letter-spacing: 0; } }
.page-heading p.p-normal { letter-spacing: 0px; }

.page-heading .p-lead { font-size: 16px; }
@media screen and (max-width: 479px) { .page-heading .p-lead { font-size: 14px; } }

.color-border { background-color: #66c3c6; height: 2px; width: 50px; position: relative; z-index: 1; margin: 0px auto 10px; }

.color-border-mono { background-color: rgba(0, 0, 0, 0.3); height: 2px; width: 50px; position: relative; z-index: 1; margin: 0px auto 10px; }

.page-heading-left { margin-top: 15px; margin-bottom: 20px; }
@media screen and (max-width: 479px) { .page-heading-left { margin-bottom: 15px; } }
.page-heading-left h2 { color: rgba(0, 0, 0, 0.7); font: 300 30px/1.5 "Cormorant SC", serif; letter-spacing: 1px; border-bottom: 4px solid #DDD; margin-bottom: 15px; position: relative; }
@media screen and (max-width: 479px) { .page-heading-left h2 { font-size: 24px !important; letter-spacing: 0; padding-bottom: .1em; line-height: 1.2; } }
.page-heading-left h2::after { position: absolute; bottom: -4px; left: 0; z-index: 2; content: ''; width: 10%; height: 4px; background-color: #333; }
.page-heading-left h2 span { font-family: "Noto Sans JP", sans-serif; opacity: .8; font-size: .45em; letter-spacing: 0; padding-left: 1em; display: inline-block; }
.page-heading-left h2 span::before, .page-heading-left h2 span::after { content: "─"; display: inline-block; padding: 0 .2em; }

h2.h2-title::before { content: attr(data-content); font-size: 85%; display: inline-block; padding: 3px 5px; margin-right: .5em; }

.page-heading-bar { overflow: hidden; }
.page-heading-bar .h2-title { font-size: 20px; color: #333; font-weight: 400; text-align: center; display: inline-block; position: relative; }
@media screen and (max-width: 479px) { .page-heading-bar .h2-title { font-size: 16px; } }
.page-heading-bar .h2-title::before, .page-heading-bar .h2-title::after { content: ""; border-bottom: 2px solid rgba(0, 0, 0, 0.3); width: 45px; margin: 0 10px; position: absolute; bottom: 13px; }
.page-heading-bar .h2-title::before { right: 100%; }
.page-heading-bar .h2-title::after { left: 100%; }

ul.ul-reset { margin: 0; padding: 0; list-style: none; }
ul.ul-reset li { list-style: none; }

ul.list-disc { margin-bottom: 15px; }
ul.list-disc li { margin-left: 1.5em; line-height: 1.6; list-style: disc; margin-bottom: .8em; }
ul.list-disc.sml li { line-height: 1.5; margin-bottom: .1em; }

ul.list-inline { padding-left: 0; list-style: none; margin-left: -5px; margin-bottom: 15px; }
ul.list-inline li { list-style: none; }

ul.list-inline > li { display: inline-block; padding-left: 5px; padding-right: 5px; }

ul.list-inline.center { display: block; margin: 0 auto 15px; text-align: center; }

ul.list-inline-block { padding-left: 0; list-style: none; margin-left: 1.5em; margin-bottom: 15px; display: inline-block; }
@media screen and (max-width: 479px) { ul.list-inline-block { margin-bottom: 0; display: block; } }
ul.list-inline-block li { list-style: disc; margin-right: 1em; }

ol.list-num li, ol.list-alpha li { margin-left: 1.5em; margin-bottom: 1em; line-height: 1.8; }

ol.list-num li { list-style: decimal; }

ol.list-alpha li { list-style: lower-alpha; }

@media screen and (max-width: 479px) { ul.list-disc li, ol.list-num li, ol.list-alpha li { line-height: 1.6; } }
ol.list-decimal { margin-left: 20px; }
ol.list-decimal li { list-style: decimal; margin-left: 0; margin-bottom: 10px; }

.col-border { border: solid 1px rgba(0, 0, 0, 0.2); }

h2.h2-title { font-size: 26px; font-weight: 400; color: #444; letter-spacing: 2px; }

@media screen and (max-width: 479px) { h2.h2-title { font-size: 22px; letter-spacing: 0px; } }
.h2-line { font-size: 24px; position: relative; border-bottom: 4px solid #ccc; letter-spacing: 1px; font-weight: bold; padding: 0; margin-bottom: 20px; }
.h2-line::after { position: absolute; bottom: -4px; left: 0; z-index: 2; content: ''; width: 20%; height: 4px; background-color: #ED6F1F; }
.h2-line span { font-size: 75%; font-weight: normal; margin-left: 10px; color: rgba(0, 0, 0, 0.6); letter-spacing: 0; }

.h-line { font: 20px/1.5 "Noto Sans JP", sans-serif; position: relative; border-bottom: 4px solid #DDD; color: #111; margin-bottom: 20px; }
@media screen and (max-width: 479px) { .h-line { font-size: 18px !important; letter-spacing: 0px; padding-bottom: .1em; line-height: 1.2; } }
.h-line::after { position: absolute; bottom: -4px; left: 0; z-index: 2; content: ''; width: 10%; height: 4px; background-color: #66c3c6; }

.h-line span { display: inline-block; font-family: "Noto Sans JP", sans-serif; font-size: 14px; font-weight: 300; position: absolute; right: 0; bottom: 5px; }
@media screen and (max-width: 479px) { .h-line span { position: relative; display: block; font-size: 12px; } }

.h-border-both { position: relative; display: inline-block; padding: 0 55px; margin-bottom: 15px; }
@media screen and (max-width: 479px) { .h-border-both { padding: 0 25px; margin-bottom: 1px; } }
.h-border-both::before, .h-border-both::after { content: ''; position: absolute; top: 50%; display: inline-block; width: 45px; height: 1px; background-color: #333; }
@media screen and (max-width: 479px) { .h-border-both::before, .h-border-both::after { width: 20px; } }
.h-border-both::before { left: 0; }
.h-border-both::after { right: 0; }

.h-under { position: relative; display: block; margin-bottom: 1.5em; text-align: center; }
.h-under::before { content: ''; position: absolute; bottom: -15px; display: inline-block; width: 60px; height: 2px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); background-color: rgba(0, 0, 0, 0.3); }

.h3-first:first-letter { margin-right: 0em; font-size: 1.5em; }
@media screen and (max-width: 479px) { .h3-first:first-letter { font-size: 1.4em; } }

.has-lines { font-weight: 400; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 25px; }

.has-lines::before, .has-lines::after { content: ''; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 1px; background: #aaaab0; min-width: 20px; display: inline-block; vertical-align: middle; }

.has-lines::before { margin-right: 10px; }

.has-lines::after { margin-left: 10px; }

@media screen and (max-width: 479px) { .has-lines::before, .has-lines::after { margin-right: 0px; margin-left: 0px; } }
.has-oblic { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 15px; }

.has-oblic::before, .has-oblic::after { content: ''; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 6px; min-width: 20px; display: inline-block; vertical-align: middle; background: url(../img/core/hr-oblic.png) repeat-x 0 0; }

.has-oblic::before { margin-right: 10px; }

.has-oblic::after { margin-left: 10px; }

/*////////////////////////////////////////////////////////////////////////////

property scss

////////////////////////////////////////////////////////////////////////////*/
.clr, .clear { clear: both; display: block; font-size: 0; height: 0; line-height: 0; width: 100%; }

.media > .pull-left { padding-right: 10px; }

.pull-left { float: left !important; }

@media (max-width: 767px) { .hidden-xs { display: none !important; } }
@media (min-width: 768px) and (max-width: 991px) { .hidden-sm { display: none !important; } }
@media (min-width: 992px) and (max-width: 1199px) { .hidden-md { display: none !important; } }
@media (min-width: 1200px) { .hidden-lg { display: none !important; } }
.p-spacer { clear: both; position: relative; border: none; padding: 0; margin: 0; }

.p-spacer-xlg { height: 150px; }

.p-spacer-lg { height: 100px; }

.p-spacer-md { height: 80px; }

.p-spacer-sm { height: 50px; }

.p-spacer-xs { height: 30px; }

.p-spacer-xxs { height: 15px; }

.spacer-s { height: 10px; }

@media screen and (max-width: 479px) { .p-spacer-xlg { height: 70px; }
  .p-spacer-lg { height: 60px; }
  .p-spacer-md { height: 50px; }
  .p-spacer-sm { height: 30px; }
  .p-spacer-xs { height: 20px; }
  .p-spacer-xxs { height: 10px; }
  .spacer-s { height: 5px; } }
.flexiblebox { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }

hr { margin-top: 20px; margin-bottom: 20px; border: 0; border-top: 1px solid rgba(0, 0, 0, 0.3); }
hr.hr-white { border-top: 1px solid rgba(255, 255, 255, 0.5); }
hr.hr-dot { border: 0; border-top: thick dotted #5DABBF; margin: 25px 0; display: block; float: none; clear: both; }
@media screen and (max-width: 479px) { hr.hr-dot { margin: 20px; } }

hr.space10, hr.space15, hr.space20, hr.space30 { border-left: 0; border-right: 0; border-bottom: 0; border-top: 1px dotted #ccc !important; }
hr.space10 { margin-top: 10px; margin-bottom: 10px; }
hr.space15 { margin-top: 15px; margin-bottom: 15px; }
hr.space20 { margin-top: 20px; margin-bottom: 20px; }
hr.space30 { margin-top: 30px; margin-bottom: 30px; }

.gray-scale { -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); }

.well-amber { margin-bottom: 20px; background: #FFF9F5; border: 1px solid #E6C0C0; padding: 12px 20px 5px; border-radius: 4px; }

@media screen and (max-width: 479px) { .well-amber { padding: 10px 5px 5px; } }
.well-amber h4 { font-weight: 500; margin-top: 15px; margin-bottom: 20px; }

.nopadding { padding: 0px !important; margin: 0px !important; }

.row--nopadding { margin-left: 0; margin-right: 0; }

.row--nopadding > [class*="col"] { padding-left: 0 !Important; padding-right: 0 !Important; }

.row--padding { padding-left: 5px !Important; padding-right: 5px !Important; }
@media screen and (max-width: 479px) { .row--padding { padding-left: 5px !Important; padding-right: 5px !Important; } }

.row--padding > [class*="col"] { padding-left: 5px !Important; padding-right: 5px !Important; }

.row--m05 { margin-left: 0; margin-right: 0; }
.row--m05 > [class*="col-"] { padding-left: 5px; padding-right: 5px; padding-bottom: 10px; }

.row--m10 { margin-left: 0; margin-right: 0; }
@media screen and (max-width: 479px) { .row--m10 { margin-left: 0; margin-right: 0; } }
.row--m10 > [class*="col-"] { padding-left: 10px; padding-right: 10px; padding-bottom: 15px; }
@media screen and (max-width: 479px) { .row--m10 > [class*="col-"] { padding-left: 5px; padding-right: 5px; padding-bottom: 5px; } }

.md-nopadding { padding: 0px !important; }
@media screen and (max-width: 479px) { .md-nopadding { padding-left: 10px !important; padding-right: 10px !important; } }

.md-padding { padding-left: 5px !important; padding-right: 5px !important; padding-bottom: 10px; }
@media screen and (max-width: 479px) { .md-padding { padding: 2px !important; } }

.sm-padding { padding-left: 5px !important; padding-right: 5px !important; padding-bottom: 10px; }
@media screen and (max-width: 479px) { .sm-padding { padding: 5px !important; } }

@media screen and (max-width: 479px) { .xs-nopadding { padding-left: 0px !important; padding-right: 0px !important; } }

.mt { margin-top: 50px; }

.mb { margin-bottom: 50px; }

.mtb { margin-top: 50px; margin-bottom: 50px; }

.mtb20 { margin-top: 20px; margin-bottom: 20px; }

.mtb30 { margin-top: 30px; margin-bottom: 30px; }

.mtb50 { margin-top: 50px; margin-bottom: 50px; }

.mA10 { margin: 10px; }

.mT0 { margin-top: 0px !important; }

.mT10 { margin-top: 10px; }

.mT20 { margin-top: 20px; }

.mT30 { margin-top: 30px; }

.mT40 { margin-top: 40px; }

.mT50 { margin-top: 50px; }

.mB0 { margin-bottom: 0px !important; }

.mB10 { margin-bottom: 10px !important; }

.mB15 { margin-bottom: 15px !important; }

.mB20 { margin-bottom: 20px; }

.mR10 { margin-right: 10px; }

.mR15 { margin-right: 15px; }

.mR20 { margin-right: 20px; }

.mL10 { margin-left: 10px; }

.mL15 { margin-left: 15px; }

.mL20 { margin-left: 20px; }

.mL30 { margin-left: 30px; }

.mL40 { margin-left: 40px; }

.mL50 { margin-left: 50px; }

.float-left { float: left; }

.float-right { float: right; }

.shadow-box { -webkit-box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.3); -ms-box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.3); -o-box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.3); box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.3); -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }

.hide, .hidden { display: none !important; }

.sp-hide { display: block !important; }
@media only screen and (min-width: 320px) { .sp-hide { display: none !important; } }
@media only screen and (min-width: 480px) { .sp-hide { display: none !important; } }
@media only screen and (min-width: 768px) { .sp-hide { display: block !important; } }

.sm-hide { display: block !important; }
@media only screen and (min-width: 991px) { .sm-hide { display: none !important; } }

@media only screen and (min-width: 768px) { .pc-hide { display: none !important; } }
@media only screen and (min-width: 1024px) { .hide-1024 { display: none !important; } }

/*////////////////////////////////////////////////////////////////////////////

main_menu scss

////////////////////////////////////////////////////////////////////////////*/
#header-section, #header-section.p-scrolled { backdrop-filter: blur(5px) saturate(180%); -webkit-backdrop-filter: blur(5px) saturate(180%); background-color: rgba(255, 255, 255, 0.8); z-index: 2; }

body.mobile-menu-visible #project-main, body.mobile-menu-visible #main-logo-mobile-wrap { -moz-transform: translateX(275px); -webkit-transform: translateX(275px); -ms-transform: translateX(275px); transform: translateX(275px); }
body.mobile-menu-visible #mobile-menu { -moz-transform: translateX(0); -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

#header-section { width: 100%; padding: 0; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; position: fixed; top: 0; left: 0 !important; right: 0; z-index: 103; background-color: rgba(255, 255, 255, 0.5); }

#main-logo { margin: 10px auto 0; padding: 0; text-align: center; width: 130px; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; position: relative; }

#header-section.p-scrolled #main-logo { width: 110px; margin-top: 5px; }
#header-section.p-scrolled #main-logo img { width: 100%; height: auto; }

#main-logo .logo-secondary { visibility: hidden; position: absolute; top: 0px; left: 0px; opacity: 0; }

#header-section.p-scrolled #main-logo .logo-primary { visibility: hidden; opacity: 0; }

#header-section.p-scrolled #main-logo .logo-secondary { visibility: visible; opacity: 1; }

#main-logo-mobile-wrap .logo-primary { display: none; }

#main-logo-mobile-wrap { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -ms-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; display: block; height: 44px; left: 0; position: fixed; text-align: center; top: 0; width: 100%; z-index: 10001; background: white; color: #2e2e2e; -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); }

#main-logo-mobile-wrap h1 img { padding-top: 2px; height: 42px; }

#header-section.p-scrolled #main-logo img { -webkit-filter: invert(0%); -moz-filter: invert(0%); -o-filter: invert(0%); -ms-filter: invert(0%); filter: invert(0%); }
@media all and (-ms-high-contrast: none) { #header-section.p-scrolled #main-logo img { background: rgba(255, 255, 255, 0); } }

#header-section.p-scrolled { padding: 0; -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); position: fixed; top: 0; }

#header-section #p-menu-wrap .sf-menu a { color: #2e2e2e; font-size: 13px; font-weight: 500; padding: 1.5em 2em 1.5em; letter-spacing: 0; text-decoration: none; zoom: 1; border-left: none; border-top: none; border-bottom: none; }

#header-section #p-menu-wrap .sf-menu li ul li { text-shadow: none; }

#header-section.p-scrolled #p-menu-wrap .sf-menu a { color: #2e2e2e; font-weight: 400; text-shadow: 0px 0px 0px #FFF; }

#header-section #p-menu-wrap .sf-menu li a:hover, #header-section.p-scrolled #p-menu-wrap .sf-menu li a:hover { color: #66c3c6; background-color: inherit; }

#header-section.p-scrolled #p-menu-wrap .sf-menu li.active > a { color: #66c3c6; }

#header-section.p-scrolled #p-menu-wrap > .sf-menu > li > a { padding-top: 1em; padding-bottom: 1em; }

#header-section #p-menu-wrap .sf-menu a.active, #header-section.p-scrolled #p-menu-wrap .sf-menu a.active { color: #66c3c6; }
#header-section #p-menu-wrap .sf-menu a.active::after, #header-section.p-scrolled #p-menu-wrap .sf-menu a.active::after { content: '━'; display: block; position: absolute; left: 40%; margin-top: 5px; font-weight: 700; }

#p-menu-wrap .sf-menu li::before { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: #66c3c6; }
#p-menu-wrap .sf-menu li:hover::before { width: 100%; margin: auto; left: 0; }
#p-menu-wrap .sf-menu li:hover a.active::after { content: ''; }

.sf-menu { display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0; margin: 0 auto; width: 100%; align-items: center; }
.sf-menu ul { border: transparent; min-width: 14em; }
.sf-menu li { text-transform: uppercase; list-style: none; box-sizing: border-box; white-space: nowrap; line-height: 1; }

#p-menu-wrap .sf-menu li, #p-menu-wrap .sf-menu ul li, #p-menu-wrap .sf-menu ul ul li, #p-menu-wrap .sf-menu li:hover, #p-menu-wrap .sf-menu li.sfHover { background: transparent; }

#p-menu-wrap .sf-menu ul ul li a { text-transform: none; padding: 0.75em 1em; letter-spacing: 0; }
#p-menu-wrap .sf-menu li:hover a, #p-menu-wrap .sf-menu li.sfHover a, #p-menu-wrap .sf-menu ul li:hover a, #p-menu-wrap .sf-menu ul li.sfHover a, #p-menu-wrap .sf-menu li.active a { color: #28bbf8; }

.sf-arrows .sf-with-ul { padding-right: 2.5em; }
.sf-arrows .sf-with-ul::after { content: ''; position: absolute; top: 50%; right: 1.8em; margin-top: -2px; height: 0; width: 0; border: 5px solid transparent; border-top-color: #ccc; }

#p-primary-menu > li > ul li.active > a { color: #28bbf8 !important; }
#p-primary-menu > li > .sf-with-ul::after { border: none !important; font-family: 'icofont'; content: "\eab2"; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; float: right; margin-right: 0px; top: 50%; margin-top: -5px; color: inherit; }
#p-primary-menu > li > ul li > .sf-with-ul::after { border: none !important; font-family: 'icofont'; content: "\eab2"; font-variant: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; float: right; margin-right: 10px; top: 13px; color: rgba(255, 255, 255, 0.3); }

#p-primary-menu .p-sub-menu { -webkit-border-radius: 2px; -moz-border-radius: 2px; -ms-border-radius: 2px; border-radius: 2px; left: 0; margin-top: 10px; }
#p-primary-menu .p-sub-menu::before { position: absolute; top: -9px; width: 0; height: 0; content: ''; background-color: inherit; }
#p-primary-menu .p-sub-menu::after { position: absolute; top: -8px; left: 31px; width: 0; height: 0; border-right: 8px solid transparent; border-bottom: 8px solid white; border-left: 8px solid transparent; content: ''; }

#p-primary-menu .p-sub-menu a { letter-spacing: 0; padding: 6px 15px !important; line-height: 30px; color: #2c3e50 !important; background: white; margin-bottom: 2px; box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.2); }
#p-primary-menu .p-sub-menu a:hover { color: #FFFFFF !important; background: #66c3c6 !important; }

#p-primary-menu .p-sub-menu .p-sub-menu::before { top: 6px; right: 100%; }
#p-primary-menu .p-sub-menu .p-sub-menu::after { top: 7px; right: 100%; border: none !important; }

#p-primary-menu .p-sub-menu li::before { background: none; }

.site-header.has-image #primary-menu .sub-menu { border-color: #ebebeb; }
.site-header.has-image #primary-menu .sub-menu::before { display: none; }

#mobile-menu-btn { padding: 0 10px; z-index: 1001; position: absolute; top: 0; left: 0; background: white; height: 44px; display: table; }

#mobile-menu-btn i { line-height: 25px; display: table-cell; vertical-align: middle; font-size: 22px; color: #000; }

#mobile-menu { -moz-transform: translateX(-275px); -webkit-transform: translateX(-275px); -ms-transform: translateX(-275px); transform: translateX(-275px); display: block; height: 100%; left: 0; overflow-y: auto; position: fixed; top: 0; width: 275px; z-index: 10002; background: #181920; padding: 0.75em 1.25em; }

#mobile-menu #mobile-menu-ul { padding: 0; margin: 0; }

#mobile-menu #mobile-menu-ul li { font-size: 13px; text-align: left !important; list-style: none; text-transform: uppercase; }

#mobile-menu #mobile-menu-ul li.active > a { color: white; }

#mobile-menu #mobile-menu-ul a { padding: 12px 0; display: block; color: rgba(255, 255, 255, 0.8); border-bottom: 1px dotted rgba(255, 255, 255, 0.3); }

#mobile-menu #mobile-menu-ul a:hover { color: #FFF; }

#mobile-menu #mobile-menu-ul .p-sub-ddown { position: relative; }

#mobile-menu #mobile-menu-ul .p-sub-ddown::after { font-family: 'icofont'; content: "\eab2"; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; right: 0; margin-top: 2px; }

#mobile-menu #mobile-menu-ul .p-sub-menu { display: none; padding-left: 10px; }

#mobile-menu #mobile-menu-ul .p-sub-menu li { list-style: none; }
#mobile-menu #mobile-menu-ul .p-sub-menu li a::before { font-family: 'icofont'; content: "\eaca"; line-height: 1; padding-right: 5px; display: inline-block; }

/*////////////////////////////////////////////////////////////////////////////

header scss

////////////////////////////////////////////////////////////////////////////*/
.header-vsl { height: 400px; width: 100%; background-size: cover; position: relative; background-position: center bottom; z-index: 1; }
@media screen and (max-width: 479px) { .header-vsl { height: 120px; } }
.header-vsl::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: -1; background-color: rgba(35, 41, 57, 0.3); }

.header-vsl.type--01 { background-image: url(../img/bg/bg_404.jpg); }
.header-vsl.vsl--info-news { background-image: url(../img/bg/hd_info.jpg); background-position: center top; }
.header-vsl.vsl--info-pickup { background-image: url(../img/bg/hd_pickup.jpg); background-position: center center; }
.header-vsl.vsl--stay { background-image: url(../img/bg/hd_stay.jpg); background-position: center top; }
.header-vsl.vsl--rest01 { background-image: url(../img/bg/hd_rest01.jpg); background-position: center top; }
.header-vsl.vsl--bar { background-image: url(../img/bg/hd_bar.jpg); background-position: center top; }
.header-vsl.vsl--lounge { background-image: url(../img/bg/hd_lounge.jpg); background-position: center top; }
.header-vsl.vsl--mice { background-image: url(../img/bg/hd_mice.jpg); background-position: center top; }
.header-vsl.vsl--mice-banquet { background-image: url(../img/bg/hd_mice_banquet.jpg); background-position: center top; }
.header-vsl.vsl--meeting { background-image: url(../img/bg/hd_meeting_center.jpg); background-position: center top; }
.header-vsl.vsl--outdoor { background-image: url(../img/bg/hd_outdoor.jpg); background-position: center top; }
.header-vsl.vsl--meeting-plan { background-image: url(../img/bg/hd_mice_plan.jpg); background-position: center top; }
.header-vsl.vsl--banquet { background-image: url("../img/bg/hd_banquet_main.jpg"); background-position: center top; }
.header-vsl.vsl--party { background-image: url("../img/bg/hd_party.jpg"); background-position: center top; }
.header-vsl.vsl--wedding { background-position: center center; }
.header-vsl.vsl--pool { background-image: url("../img/bg/hd_pool.jpg"); background-position: center center; }
.header-vsl.vsl--overview01 { background-image: url("../img/bg/hd_overview1.jpg"); background-position: center center; }
.header-vsl.vsl--overview02 { background-image: url("../img/bg/hd_overview2.jpg"); background-position: center center; }
.header-vsl.vsl--spa { background-image: url("../img/bg/hd_spa.jpg"); background-position: center center; }
.header-vsl.vsl--gym { background-image: url("../img/bg/hd_gym.jpg"); background-position: center center; }
.header-vsl.vsl--kids { background-image: url("../img/bg/hd_kids.jpg"); background-position: center center; }
.header-vsl.vsl--relax { background-image: url("../img/bg/hd_relax.jpg"); background-position: center center; }
.header-vsl.vsl--golf { background-image: url("../img/bg/hd_golf.jpg"); background-position: center center; }
.header-vsl.vsl--airplane { background-image: url("../img/bg/hd_airplane.jpg"); background-position: center center; }
.header-vsl.type--access { background-image: url(../img/bg/hd_access.jpg); background-position: center top; }
.header-vsl.type--contact { background-image: url(../img/bg/hd_contact.jpg); background-position: center top; }
.header-vsl.type--sitemap { background-image: url(../img/bg/hd_sitemap.jpg); background-position: center top; }
.header-vsl.type--bbq { background-image: url(../img/bg/hd_bbq.jpg); background-position: center top; }
.header-vsl.type--school { background-image: url(../img/bg/hd_school.jpg); }
.header-vsl.vsl--year-end { background-image: url(../img/bg/hd_year_end.jpg); }
.header-vsl.vsl--xmas { background-image: url(../img/bg/hd_xmas.jpg); background-position: center top; }
.header-vsl.vsl--spring-party { background-image: url(../img/bg/hd_spring_party.jpg); background-position: center top; }
.header-vsl.vsl--summer-party { background-image: url(../img/bg/hd_summer_party.jpg); background-position: center top; }
.header-vsl.vsl--autumn-party { background-image: url(../img/bg/hd_autumn_party.jpg); background-position: center top; }
.header-vsl.type--test-ride { background-image: url(../img/bg/hd_test_ride.jpg); background-position: center top; }
.header-vsl.type--gw { background-image: url("../img/bg/hd_gw2021.jpg"); background-position: center top; }
.header-vsl.type--753 { background-image: url("../img/bg/hd_753.jpg"); background-position: center top; }
.header-vsl.type--hotel { background-image: url(../img/bg/hd_hotel.jpg); background-position: center top; }

.header-vsl-section { position: relative; padding-top: 250px; width: 100%; }
@media screen and (max-width: 479px) { .header-vsl-section { height: 100px; margin-top: 0; padding-top: 0; } }

.page-title { display: block; margin: auto; position: relative; z-index: 99; }
@media screen and (max-width: 479px) { .page-title { top: 60px; } }
.page-title > h1 { color: #FFF; font-family: "Cormorant SC", serif; font-size: 40px; font-weight: 300; letter-spacing: 3px; line-height: 1.5; text-align: center; text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }
.page-title > h1::after { font-family: "Noto Sans JP", sans-serif; content: attr(data-content); display: block; font-size: .4em; color: inherit; letter-spacing: 1px; }
@media screen and (max-width: 479px) { .page-title > h1 { font-size: 26px; letter-spacing: 1px; line-height: 1; } }
.page-title > h1.h1-about { color: #333; text-shadow: 0px 0px 1px rgba(255, 255, 255, 0.3); }

.page-title > h1.h1-mind { font: 300 36px/1.8 "Lato", sans-serif; }
.page-title > h1.h1-mind::after { content: ''; }
@media screen and (max-width: 479px) { .page-title > h1.h1-mind { font-size: 16px; font-weight: 300; } }

.page-nav { width: 100%; -webkit-background-size: 100% cover; -moz-background-size: 100% cover; -o-background-size: 100% cover; background-size: 100% cover; overflow: hidden; background-color: inherit; }
@media screen and (max-width: 479px) { .page-nav { padding: 0; } }

.page-pagination { font-size: 12px; display: inline-block; padding: 8px 0; margin-left: 15px; }
@media screen and (max-width: 768px) { .page-pagination { margin-left: 0px; } }
@media screen and (max-width: 479px) { .page-pagination { font-size: 10px; margin-left: 0px; } }
.page-pagination ul > li { margin: 0; padding: 0; display: inline-block; text-transform: capitalize; list-style: none; }
.page-pagination ul > li a { color: #888; letter-spacing: 0; display: inline-block; }
.page-pagination ul > li a:hover { color: #000; text-decoration: underline; }
.page-pagination .active { color: #66c3c6; }

.page-pagination ul > li::after { font-family: 'icofont'; display: inline-block; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\eab8"; margin-left: 5px; color: #888; }

.page-pagination ul > li:last-child::after { content: ""; }

/*////////////////////////////////////////////////////////////////////////////

footer scss

////////////////////////////////////////////////////////////////////////////*/
.contact-block { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 20px; }
.contact-block ul, .contact-block li { list-style: none; }
.contact-block li { font-size: 16px; display: inline-block; width: 30%; line-height: 0; text-align: center; margin: 15px 10px; }
@media screen and (max-width: 479px) { .contact-block li { width: 70%; margin: 5px auto; } }

.contact-block .btn { padding: 15px; text-align: center; width: 100%; border: 1px solid #333; }
.contact-block .btn:hover { background: #222; }
.contact-block .icon-mobile { color: #000; }
.contact-block .icon-mobile:hover { color: inherit; background: #FFF; border: 1px solid #333; }

#scrollUp { background-color: rgba(0, 0, 0, 0.7); border-radius: 0px; color: #fff; font-size: 22px; line-height: 1; padding: 10px 12px; bottom: 20px; right: 5px; opacity: 0.9; }
#scrollUp:hover { background-color: #66c3c6; }
@media only screen and (min-width: 320px) and (max-width: 767px) { #scrollUp { bottom: 0; padding: 5px 12px; right: 0; opacity: 0.8; } }
@media print { #scrollUp { display: none; } }

#footer-section { background-color: #68c3c5; position: relative; padding: 0; text-align: center; }

#footer-section a { color: white; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
#footer-section a:hover, #footer-section a:focus, #footer-section a:active { outline: none; text-decoration: underline; color: #000; }

.flex-fnav { display: flex; width: 100%; justify-content: center; flex-wrap: wrap; padding: 30px 0 50px; }
@media only screen and (max-width: 990px) { .flex-fnav { padding: 20px 0 30px; } }
.flex-fnav li { list-style: none; font-size: 13px; display: inline-block; position: relative; text-align: center; line-height: 1; text-transform: uppercase; border-right: 1px dotted #CCC; }
.flex-fnav li:last-child { border-right: none; }
@media only screen and (max-width: 990px) { .flex-fnav li { font-size: 12px; display: inline-block; float: left; width: 33.333%; text-align: left; border-right: none; } }
@media screen and (max-width: 767px) { .flex-fnav li { width: 50%; } }
.flex-fnav li a { display: block; padding: .3em 1.5em; }
@media only screen and (max-width: 990px) { .flex-fnav li a { margin: 5px 10px; }
  .flex-fnav li a::before { font-family: 'icofont'; content: "\eaa0"; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } }
@media screen and (max-width: 767px) { .flex-fnav li a { padding: .5em .5em; } }

#footer-section .footer-section-logo { color: white; margin-bottom: 20px; line-height: 1; }
#footer-section .footer-section-logo img { width: 200px; height: auto; filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.2)); }
#footer-section .footer-section-logo a { opacity: 1.0; }
#footer-section .footer-section-logo a:hover { opacity: .6; filter: none !important; }

#footer-section p { font-size: 13px; font-weight: 400; line-height: normal; margin-bottom: 5px; }
#footer-section .p-name { font-size: 15px; font-weight: 600; letter-spacing: 0; }
#footer-section .p-phone { font-size: 20px; letter-spacing: 1px; }
#footer-section .p-phone::before { font-family: 'icofont'; content: "\efbb"; font-size: .8em; color: #333; background: white; padding: 2px 3px; margin-right: 5px; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; border-radius: 2px; display: inline-block; }

.bg-foot-end { background-color: rgba(104, 195, 197, 0.9); margin-top: 15px; padding: 10px; }
.bg-foot-end .copyright { color: #F9F9F9; font: 300 14px/20px "Lato", sans-serif; text-align: center; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .bg-foot-end .copyright { font-size: 10px; padding-top: 10px; letter-spacing: 0; } }

.ul-sns { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 10px 0; }
.ul-sns li { text-align: center; list-style: none; display: table; line-height: none; overflow: hidden; margin: 5px; padding: 0; }
.ul-sns li img { width: 30px; }

#flink { text-align: center; padding: 50px 0 50px; position: relative; overflow: hidden; }
#flink .flink-nav { margin: 10px; padding: 0; position: relative; left: 50%; float: left; font-size: 14px; }
#flink .flink-nav li { text-transform: uppercase; float: left; position: relative; left: -50%; box-sizing: border-box; list-style-type: none; }
#flink .flink-nav li a { padding: .2em 1.5em; }

@media only screen and (max-width: 990px) { .flink-nav { left: auto; float: none; }
  .flink-nav li { font-size: 12px; display: inline-block; float: left; width: 33.333%; left: 0; list-style-type: none; border-left: none; margin-bottom: 10px; white-space: nowrap; }
  .flink-nav li a { margin: 0 5px; padding: 10px 5px; display: block; } }
@media screen and (max-width: 767px) { #flink { padding-top: 0px; border-top: 1px dotted #CCC; }
  .flink-nav { margin: 0; left: 0; }
  .flink-nav li { font-size: 12px; display: inline-block; float: left; width: 50%; text-align: left; padding: 0; margin: 0; }
  .flink-nav li a .flink-nav li a { margin: 5px 0; padding: 20px 5px; background: #CCC; }
  .flink-nav li a .flink-nav li a::before { font-family: 'icofont'; content: "\eaa0"; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } }
/* ////////////////////////////////////////////////////////////////////////////

section scss

//////////////////////////////////////////////////////////////////////////// */
.section-main { margin-top: 225px; }
@media screen and (max-width: 1024px) { .section-main { margin-top: 50px; } }

_:-ms-fullscreen .section-main, :root .section-main { margin-top: 200px; }

.section-divider { z-index: 999; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; padding-top: 25px; padding-bottom: 25px; background-position: center center; -webkit-background-size: 100% cover; -moz-background-size: 100% cover; -o-background-size: 100% cover; background-size: 100% cover; }
@media screen and (max-width: 479px) { .section-divider { padding-top: 20px; padding-bottom: 20px; } }
.section-divider.padding-sm { padding-bottom: 30px; padding-top: 30px; }
.section-divider.padding-xs { padding-bottom: 15px; padding-top: 15px; }
.section-divider.padding-title { padding-bottom: 0; }
@media screen and (max-width: 479px) { .section-divider.padding-title { margin-top: 40px; } }

.section-divider-50 { padding-top: 50px; padding-bottom: 50px; }
@media screen and (max-width: 479px) { .section-divider-50 { padding-top: 30px; padding-bottom: 30px; } }

.section-divider-0 { padding: 0; }

.section-bottom-0 { padding-bottom: 0; }

@media screen and (max-width: 479px) { .section-divider.padding-sm { padding-bottom: 20px; padding-top: 30px; } }
.section-divider-head { z-index: 999; width: 100%; display: block; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; padding-top: 0px; padding-bottom: 30px; background-position: center center; -webkit-background-size: 100% cover; -moz-background-size: 100% cover; -o-background-size: 100% cover; background-size: 100% cover; background-attachment: relative; overflow: hidden; }

.bg { width: 100%; -webkit-background-size: 100% cover; -moz-background-size: 100% cover; -o-background-size: 100% cover; background-size: 100% cover; overflow: hidden; }

.bg-white { background: #FFFFFF; }

.bg-gray { background-color: #f7f6fb; }

.bg-dark-gray { background-color: #77777B; }

.bg-black { background-color: #000; }

.bg-green { background-color: #66c3c6; }

.bg-green-alpha { background-color: rgba(104, 195, 197, 0.7); }

.bg-green-alpha4 { background-color: rgba(104, 195, 197, 0.4); }

.bg-pink-grade { background: #ffeaf6; background: linear-gradient(180deg, rgba(255, 234, 246, 0.6) 0%, rgba(255, 198, 255, 0.5) 100%); }

.bg-green-grade { background: #66c3c6; background: -moz-linear-gradient(top, #66c3c6 0%, #c3eff0 100%); background: -webkit-gradient(left top, left bottom, color-stop(0%, #66c3c6), color-stop(100%, #c3eff0)); background: -webkit-linear-gradient(top, #66c3c6 0%, #c3eff0 100%); background: -o-linear-gradient(top, #66c3c6 0%, #c3eff0 100%); background: -ms-linear-gradient(top, #66c3c6 0%, #c3eff0 100%); background: linear-gradient(to bottom, #66c3c6 0%, #c3eff0 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#66c3c6', endColorstr='#c3eff0', GradientType=0 ); }

.bg-green-light { background-color: rgba(85, 158, 170, 0.8); }

.bg-green-light2 { background-color: rgba(190, 224, 194, 0.4); }

.bg-gw-green { background-image: linear-gradient(to top, #c1dfc4 0%, #deecdd 100%); }

.bg-b-gray { background: #f6f9fc; }

.bg-beige-gray { background: #b4ada9; }

.bg-overlay-white { background: rgba(255, 255, 255, 0.8); color: #000; }

.bg-autumn-buffet { background-image: url("../img/bg/bg_autumn.jpg"); background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; }
.bg-autumn-buffet::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: -1; background-color: rgba(255, 255, 255, 0.3); }

.bg-yellow { background-image: url("../img/bg/bg_yellow.jpg"); background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; }
.bg-yellow::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: -1; background-color: rgba(255, 255, 255, 0.5); }

.bg-h-blue { background: #e0efff; }

.bg-amber { background-color: rgba(246, 229, 204, 0.5); }

.border-top { border-top: 1px dotted #CCC; }

.border-end { border-bottom: 1px dotted #CCC; }

.notes { padding: 1em 1.5em; margin: 10px auto; }

.notes-border { border: 1px solid #CCC; }

.notes-gray { background: #f7f6fb; }

.notes-border-dot { border: 1px dotted #CCC; }

.notes-purple { background-color: #f9f4ff; }

.notes-pink { background-color: #ffefef; }

.notes-amber { background-color: rgba(246, 229, 204, 0.5); border: 1px solid #f6e5cc; }

.notes-green { background-color: rgba(190, 224, 194, 0.4); border: 1px solid #bee0c2; }

.notes-black { background-color: rgba(0, 0, 0, 0.8); color: #FFF; }

.border-radius { border-radius: 5px; }

.notes-white-border { background: rgba(255, 255, 255, 0.2); padding: .5em; border: 1px solid #FFF; }
.notes-white-border p { margin-bottom: 0; }

.notes-white { background: #FFF; }

.notes-padding { padding: 1em; }
.notes-padding p { margin-bottom: 0; }

.notes-cyan { background-color: rgba(0, 161, 233, 0.2); }

.border-double-cyan { border: 4px double #00a1e9; }

.notes-red-border { position: relative; background: #fff9fc; border: 2px solid #ea5550; margin: auto; border-radius: 5px; }

.notes-gray-border { position: relative; background: rgba(253, 237, 228, 0.3); border: 2px solid #fbdac8; margin: auto; border-radius: 5px; }

.bg-cover { color: #FFF; background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; padding: 70px 0; text-align: center; }
@media screen and (max-width: 479px) { .bg-cover { padding: 30px 0; } }
.bg-cover .overlay::after { background-color: rgba(255, 255, 255, 0.3); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.bg-cover.bg-cover-100 { padding: 50px 0 100px; }

.bg-cover.bg-m-plan1 { background-image: url("../../conference/img/bg/bg_m_plan1.jpg"); }

.bg-cover.bg-m-plan2 { background-image: url("../../conference/img/bg/bg_m_plan2.jpg"); }

.bg-cover.bg-wedding { background-image: url("../../banquet/img/bg/bg_wedding.jpg"); background-position: center top; }

.bg-cover.bg-raide-venue { background-image: url("../img/bg/bg_ride_venue.jpg"); background-position: center bottom; }

.bg-cover.bg-m-plan1::before, .bg-cover.bg-m-plan2::before, .bg-cover.bg-raide-venue::before { content: ''; background: inherit; -webkit-filter: blur(4px); -moz-filter: blur(4px); -o-filter: blur(4px); -ms-filter: blur(4px); filter: blur(4px); position: absolute; top: -5px; left: 0px; right: 0px; bottom: -5px; z-index: -99; }

.bg-cover .h2-cover { font: 500 36px/1.5 "Cormorant SC", serif; color: #FFF; letter-spacing: 2px; margin-bottom: 0; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); }
@media screen and (max-width: 479px) { .bg-cover .h2-cover { font-size: 30px; } }

.bg-cover .p-cover { font-size: 20px; letter-spacing: 2px; color: white; text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.4); }
@media screen and (max-width: 479px) { .bg-cover .p-cover { font-size: 20px; letter-spacing: 0; } }

.bg-white-grd { background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%); background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%); background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 ); }

@media screen and (max-width: 768px) { .order1 { order: 0; }
  .order2 { order: 1; }
  .order3 { order: 2; }
  .order4 { order: 3; }
  .order5 { order: 4; }
  .order6 { order: 5; }
  .order7 { order: 6; }
  .order8 { order: 7; }
  .order9 { order: 8; }
  .orde10 { order: 9; } }
/*////////////////////////////////////////////////////////////////////////////

btn scss

////////////////////////////////////////////////////////////////////////////*/
.btn--section { padding-top: 20px; text-align: center; }

.btn { font-family: "Lato", sans-serif; border-radius: 0px; padding: 1em 2.5em; letter-spacing: 1px; display: inline-block; margin-bottom: .5em; line-height: 1; transition: border-color 0.25s, background-color 0.25s, color 0.25s; background: inherit; color: inherit; text-align: left; }
@media screen and (max-width: 768px) { .btn { padding: 1em 1.5em; } }
@media screen and (max-width: 479px) { .btn { padding: 1em 1.5em; letter-spacing: 0; font-size: 1em; } }
.btn:hover, .btn:focus, .btn:active { box-shadow: none; outline: none !important; border-color: transparent; }

.radius-4 { -webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; }

.btn-detail { color: #333; border: 1px solid #888; background: rgba(255, 255, 255, 0.5); }
.btn-detail span { color: #333; }
.btn-detail:hover, .btn-detail:active, .btn-detail:focus { background-color: #232939; color: #FFF; }

.btn-alpha { color: #FFF; border: 1px solid #FFF; background: rgba(255, 255, 255, 0.2); }
.btn-alpha:hover, .btn-alpha:active, .btn-alpha:focus { background-color: #FFF; color: #333; }

.btn-rsv { color: #FFF; background: #28bbf8; border: 1px solid #28bbf8; font-weight: 500; }
.btn-rsv:hover, .btn-rsv:active, .btn-rsv:focus { background-color: #232939; color: #FFF; }

.btn-red { color: #FFF; border: 1px solid #ea5550; background: #ea5550; }
.btn-red:hover, .btn-red:active, .btn-red:focus { background-color: #232939; color: #FFF; }

.btn-goto, .btn-cyan { color: #FFF; border: 1px solid #FFF; background: #66c3c6; }
@media screen and (max-width: 479px) { .btn-goto, .btn-cyan { font-size: .9em; } }
.btn-goto:hover, .btn-goto:active, .btn-goto:focus, .btn-cyan:hover, .btn-cyan:active, .btn-cyan:focus { background-color: #232939; color: #FFF; }

.btn-cyan { background: #00a1e9; }

.btn-corona { background-color: #ed6d46; color: #FFF !important; }
.btn-corona:hover { background-color: #232939; color: #FFF; }

.btn-block { width: 100%; text-align: center; }

.btn-i-cal, .btn-i-ext { letter-spacing: 0; }
.btn-i-cal::before, .btn-i-ext::before { font-family: 'icofont'; content: "\eecd"; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: inherit; padding-right: 5px; }

.btn-i-ext::before { content: "\ef1f"; }

.btn-next::after, .btn-down::after, .btn-down-under::after { font-family: 'icofont'; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding-left: .5em; color: inherit; }

.btn-next::after { content: "\eaa0"; }

.btn-down::after { content: "\eab2"; }

.btn-down-under::after { content: "\eab2"; display: block; padding: .2em 0 0; }

.btn-back { transition: all 0.3s ease 0s; margin-left: 5px; margin-right: 5px; text-align: center; }
.btn-back::before { font-family: 'icofont'; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\eab5"; margin-right: 1em; margin-left: -1em; }

.btn-pdf::before { font-family: 'icofont'; content: "\eb1e"; font-size: 120%; color: inherit; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding-right: .5em; }

.btn-youtube::before { font-family: 'icofont'; content: "\e95f"; font-size: 130%; color: inherit; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding-right: .5em; }

.label { display: inline-block; font-size: .85em; font-weight: normal; border-radius: 2px; margin-right: .5em; padding: .2em .5em; }

.label-red { background-color: #e8383d; color: white; }

.label-gray { background-color: darkgray; border: 1px solid #FFF; color: white; }

/*////////////////////////////////////////////////////////////////////////////

icon scss

////////////////////////////////////////////////////////////////////////////*/
.sns-wrap { display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: center; margin: 0 15px; }
@media screen and (max-width: 479px) { .sns-wrap { margin: 5px; } }
.sns-wrap .sns-box { width: 20%; display: inline-block; line-height: 0; position: relative; }
@media screen and (max-width: 479px) { .sns-wrap .sns-box { width: 20%; } }
.sns-wrap a { margin: 5px; display: block; background: #484849; padding: 25px 15px; color: #FFF; }
@media screen and (max-width: 479px) { .sns-wrap a { margin: 2px; padding: 15px 5px; } }
.sns-wrap a:hover { background: white; color: #484849; text-decoration: none !important; }

.sns-box .sns-item { position: relative; text-align: center; }
.sns-box .sns-item h5 { font-family: "Lato", sans-serif; color: inherit; font-size: 14px; font-weight: 300; margin-top: 10px; letter-spacing: 1px; }
@media screen and (max-width: 479px) { .sns-box .sns-item h5 { font-size: 9px; letter-spacing: 0; margin-top: 0; } }
.sns-box .sns-item p { font-size: 11px; color: inherit; margin: 0; line-height: 1; }
.sns-box .sns-item.sns--twitter::before, .sns-box .sns-item.sns--facebook::before, .sns-box .sns-item.sns--insta::before, .sns-box .sns-item.sns--line::before, .sns-box .sns-item.sns--youtube::before, .sns-box .sns-item.sns--trip::before { font-size: 26px; }

.sns--twitter::before, .sns--facebook::before, .sns--insta::before, .sns--line::before, .sns--youtube::before, .sns--trip::before { font-family: "Font Awesome 5 Brands"; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.sns--twitter::before { content: "X"; font-weight: 700; }

.sns--facebook::before { content: "\f39e"; }

.sns--insta::before { content: "\f16d"; }

.sns--youtube::before { content: "\f167"; }

.sns--trip::before { content: "\f262"; }

.sns--line::before { font-family: 'icofont'; content: "\ed4c"; }

.icon-map, .icon-map-pin, .icon-access, .icon-bus, .icon-facebook, .icon-insta { font-family: "Lato", sans-serif; }
.icon-map::before, .icon-map-pin::before, .icon-access::before, .icon-bus::before, .icon-facebook::before, .icon-insta::before { font-family: 'icofont'; font-size: 1.2em; line-height: 1; padding-right: 5px; }

.icon-map::before { content: "\ed42" !important; }

.icon-map-pin::before { content: "\ef8a"; }

.icon-access::before { content: "\ee1e"; }

.icon-bus::before { content: "\ee18"; }

.icon-facebook::before { content: "\ed37"; }

.icon-insta::before { content: "\ed46"; }

.icon-youtube::before { content: "\e95f"; }

.icon-line::before { content: "\ed4c"; }

.icon-sp-phone { font-family: "Lato", sans-serif; }
.icon-sp-phone::before { font-family: 'icofont'; content: "\efec"; font-size: 1.3em; color: inherit; line-height: 1; padding-right: 5px; }

.icon-line, .icon-mobile, .icon-mail, .icon-alert { transition: all 0.3s ease 0s; font-family: "Lato", sans-serif; }
.icon-line::before, .icon-mobile::before, .icon-mail::before, .icon-alert::before { font-family: 'icofont'; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1.0em; margin-right: 5px; display: inline-block; }

.icon-mobile::before { content: "\ea3b"; }

.icon-mail::before { content: "\ef14"; }

.icon-alert::before { content: "\ef1b"; }

.icon-line::before { content: "\ed4b"; }

.icon-exp::after { font-family: 'icofont'; content: "\ef1f"; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; padding-left: 5px; }

.icon-wifi::before { content: "\eeb7"; }

.icon-cube::before { content: "\eef7"; }

.icon-layout::before { content: "\ef5d"; }

.icon-rest::before { content: "\eb5e"; }

.icon-rest2::before { content: "\eb69"; }

.icon-lunch::before { content: "\ef82"; }

.icon-wifi::before { content: "\f02a"; }

.icon-wifi2::before { content: "\f02b"; }

.icon-board::before { content: "\ead0"; }

.icon-notepad::before { content: "\efab"; }

.icon-yen::before { content: "\ea28"; }

.icon-coffee::before { content: "\eb57"; }

.icon-flip::before { content: "\e965"; }

.cars-time { border: 1px solid #CCC; background: #EEE; padding: 0 .5em; margin: 0 .5em; }
.cars-time::before { font-family: "icofont"; content: "\ee1e"; display: inline-block; }

.ul-footer-social { margin-top: 15px; display: flex; flex-wrap: wrap; justify-content: center; list-style: none; }
.ul-footer-social li { color: #FFF; list-style: none; }
.ul-footer-social li img { width: 30px; height: 30px; border-radius: 3px; }
.ul-footer-social a { font-size: 24px; margin: 5px; color: #FFF; }
.ul-footer-social a:hover { color: aqua; }

/*////////////////////////////////////////////////////////////////////////////

Languages scss

////////////////////////////////////////////////////////////////////////////*/
.top-header-area { background-color: #66c3c6; height: 15px; width: 100%; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; display: block; text-align: right; }
.top-header-area::after { content: "."; display: block !important; height: 0 !important; clear: both; visibility: hidden; }

#header-section.p-scrolled .top-header-area { margin-top: -15px; }

.top-reg-log-area { display: flex; justify-content: flex-end; }

.top-copy { padding: 5px 0 0 30px; font-size: 1px; color: #FFF; left: 0; position: absolute; }
.top-copy a { color: #FFF; }
.top-copy a:before { font-family: 'icofont'; content: "\ef47"; font-size: 15px; color: inherit; margin-right: 3px; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.top-copy a:hover { color: #000; }

.hd-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; position: relative; margin: 0 20px 0; }
.hd-nav ul, .hd-nav li { margin: 0; padding: 0; list-style: none; }
.hd-nav li { font-size: 13px; display: inline-block; margin-right: 5px; line-height: 0; }

.hd-nav .p-phone-data { color: #FFF; line-height: 1; margin: 10px 5px 0; }
.hd-nav .p-phone-data::before { font-size: 85%; display: inline-block; padding: 3px; margin-right: .5em; }
.hd-nav .p-phone-data span.p-phone { font-size: 17px; font-family: "Lato", sans-serif; font-weight: 400; letter-spacing: 1px; }
.hd-nav .p-phone-data span.p-phone::before { font-family: 'icofont'; content: "\efbb"; font-size: 15px; color: inherit; border: 1px solid #FFF; padding: 3px 4px; margin-right: 5px; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.hd-nav .p-contact, .hd-nav .p-hotel { line-height: 1; }
.hd-nav .p-contact a, .hd-nav .p-hotel a { color: #FFF; padding: 2px 6px; border-radius: 2px; }
.hd-nav .p-contact a::before, .hd-nav .p-hotel a::before { font-family: 'icofont'; color: inherit; font-size: 13px; padding: 3px 4px; margin-right: 5px; line-height: 1; border: 1px solid #FFF; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.hd-nav .p-contact a:hover::before, .hd-nav .p-hotel a:hover::before { background: #333; border: 1px solid #333; color: #FFF; }
.hd-nav .p-contact a:hover, .hd-nav .p-hotel a:hover { color: #333; }

.hd-nav .p-contact a::before { content: "\ef14"; }
.hd-nav .p-hotel a::before { font-family: "Font Awesome 5 Free"; content: "\f1ad"; font-weight: 900; }

.top-copy { display: none; }

.hd-nav { display: none; }

#lang { display: none; }
#lang.dsp-home { display: none; }

#lang { top: 3px; position: relative; padding: 8px 10px 0 0; margin-right: 50px; }

#lang .dropdown { display: flex; }

#lang .menu { text-align: left; font-size: 13px; text-transform: uppercase; letter-spacing: 1px; }

#lang .menu-title { color: #FFFFFF; font-size: 0; }
#lang .menu-title::before, #lang .menu-title::after { font-family: 'icofont'; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
#lang .menu-title::before { content: "LANGUAGE"; padding-right: 2px; font-size: 13px; font-weight: 700; }
#lang .menu-title::after { content: "\ea99"; padding-left: 5px; font-size: 13px; }
#lang .menu-title:hover { color: #333; }

#lang .p-sub-menu { font-size: 13px; list-style: none; display: none; color: #FFF; background: rgba(0, 0, 0, 0.6); right: 0; left: auto; position: absolute; z-index: 1000; box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125); min-width: 150px; }
#lang .p-sub-menu li { list-style: none; }

#lang .p-sub-menu > li > a { text-decoration: none; color: #ffffff; display: block; padding: .3em 1.5em; }
#lang .p-sub-menu > li > a:hover { background: #000; }

#lang .menu:hover .p-sub-menu { display: inline-block; }

.navbar-right { float: right !important; margin-right: -15px; }

#lang-mobile { display: none; }

body.mobile-menu-visible #lang-mobile { display: block; }
body.mobile-menu-visible #lang-mobile .lang::before { font-family: 'icofont'; content: "\ef0e"; padding-right: 2px; font-size: 14px; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.top-phone { position: relative; }

.top-phone > p { color: #FFF; line-height: 1; margin: 11px 25px 10px 0; letter-spacing: 1px; }
.top-phone > p span.p-phone { font-size: 17px; font-family: "Lato", sans-serif; font-weight: 300; }
.top-phone > p span.p-phone::before { font-family: 'icofont'; content: "\efbb"; font-size: .9em; color: #66c3c6; background: white; padding: 2px 3px; margin-right: 5px; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; border-radius: 2px; }
.top-phone > p.p-phone-data::before { content: attr(data-content); font-size: 85%; display: inline-block; padding: 3px 5px; margin-right: .5em; }

/*////////////////////////////////////////////////////////////////////////////International Resort Hotel Yurakujo SLIDE

////////////////////////////////////////////////////////////////////////////*/
#v-head-slider { text-align: center; position: relative; background-size: cover; background-repeat: no-repeat; background-position: center center; overflow: hidden; margin-top: 0px auto; }
@media screen and (max-width: 1024px) { #v-head-slider { margin-top: 44px; } }
#v-head-slider .v-head-wrap { width: 100%; text-align: center; }
@media screen and (max-width: 768px) { #v-head-slider { margin-top: 44px; } }

.slider { margin: 0 auto; width: 100%; opacity: 0; transition: 3s; text-align: center; }

.slick-initialized { opacity: 1; }

.slider--v, .topic-slider, .single-fade { display: none; }

.slider--v.slick-initialized, .topic-slider.slick-initialized, .single-fade.slick-initialized { display: block; }

.slider--v { position: relative; max-width: 100%; margin: 0 auto; }
.slider--v.mask::after { background-color: rgba(0, 0, 0, 0.25); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: 1; }
.slider--v img { width: 100%; margin: auto; }

.sld--text, .sld--sub, .sld--button { position: absolute; width: 100%; left: 0; text-align: center; color: white; z-index: 2; }
.sld--text img, .sld--sub img, .sld--button img { width: 20%; }

.sld--text { top: 40%; font-family: "Cormorant SC", serif; font-size: 44px; letter-spacing: 1px; text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.4); }
@media screen and (max-width: 991px) { .sld--text { font-size: 40px; top: 30%; } }
@media screen and (max-width: 479px) { .sld--text { font-size: 24px; top: 30%; } }

.sld--sub { font-family: "Noto Serif JP", serif; font-size: 32px; font-weight: 600; bottom: 8%; line-height: 1.5 !important; text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.6), 0px 0px 10px rgba(0, 0, 0, 0.6); }
@media screen and (max-width: 991px) { .sld--sub { top: 50%; } }
@media screen and (max-width: 479px) { .sld--sub { font-size: 18px; top: 40%; } }

.slick-current .sld--sub { animation: slideUpBlur 2.0s ease 0s 1 normal; }

@keyframes slideUpBlur { 0%, 25% { transform: translateY(5px); filter: blur(15px); opacity: 0; }
  100% { transform: translateY(0px); opacity: 1; } }
/*.sld--button {
	top: 70%;
	//bottom: 20vh;	
	left: calc( 50% - 100px );
	display: block;
	width: 200px;
	padding: 5px 15px;
	box-sizing: border-box;
	//background: rgba(104, 195, 197, 1.0);
	background: #ffdc00;
	//border: 1px solid #FFF;
	color: #000;
	//text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6); 	text-align: center; 	text-decoration: none; 	transition: all .25s ease;
	//white-space: nowrap;
	
	&:hover{
		color: #FFF;
		background: #007c92;
		
		//text-shadow: 0px 0px 0px rgba(255, 255, 255, .6);
	}
	
	@media screen and (max-width: 991px) {
		top: 70%;
	}
	
	@media screen and (max-width: 479px) {
		top: 70%;
	}
	
	&.btn-cyan{
		background: #00a1e9;
		color: #FFF;
		border: 1px solid #00a1e9;
		
		&:hover{
			color: #FFF;
			background: #222;
			border: 1px solid #222;
		}
	}
}*/
.slick-current .sld--text { animation: slideFromRight 1.5s ease 0s 1 normal; }

.slick-current .sld--button { animation: slideFromRightBtn 2.5s ease 0s 1 normal; }

@keyframes slideFromRight { 0%, 25% { transform: translateX(50px); opacity: 0; }
  100% { transform: translateX(0px); opacity: 1; } }
@keyframes slideFromRight { 0%, 25% { transform: translateX(50px); opacity: 0; }
  100% { transform: translateX(0px); opacity: 1; } }
@keyframes slideFromRightSub { 0%, 45% { transform: translateX(50px); opacity: 0; }
  100% { transform: translateX(0px); opacity: 1; } }
@keyframes slideFromRightBtn { 0%, 65% { transform: translateY(50px); opacity: 0; }
  100% { transform: translateY(0px); opacity: 1; } }
.sld--img { top: 30%; position: absolute; width: 100%; left: 0; text-align: center; z-index: 2; }
@media screen and (max-width: 991px) { .sld--img { top: 20%; } }
@media screen and (max-width: 479px) { .sld--img { top: 20%; } }
.sld--img img { width: 40%; }
@media screen and (max-width: 991px) { .sld--img img { width: 50%; } }
@media screen and (max-width: 479px) { .sld--img img { width: 60%; } }

.slick-current .sld--img { animation: slideFromRight 1.5s ease 0s 1 normal; }

.topic-slider { margin: 5px auto 0; padding: 0 10px; position: relative; opacity: 0; transition: 3s; }
@media screen and (max-width: 479px) { .topic-slider { padding: 0; margin: 0; } }
.topic-slider div .topic-bnr { text-align: center; font-size: 14px; margin: 0 10px; }
@media screen and (max-width: 479px) { .topic-slider div .topic-bnr { font-size: 11px; margin: 0 5px; } }
.topic-slider div .topic-bnr img { width: auto; display: block; margin: 5px; }
.topic-slider div .topic-bnr a { color: rgba(0, 0, 0, 0.6); }
.topic-slider div .topic-bnr a:hover { color: #222; text-decoration: underline; }

.topic-slider .slick-next { right: 0; z-index: 100; top: 45%; }
.topic-slider .slick-prev { left: 0; z-index: 100; top: 45%; }
.topic-slider .slick-prev::before, .topic-slider .slick-next::before { color: white; font-family: 'icofont'; font-size: 25px; line-height: 1; opacity: .75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.topic-slider .slick-prev:before { content: '\ea9d'; }
.topic-slider .slick-next:before { content: '\eaa0'; }
.topic-slider .slick-prev:hover:before, .topic-slider .slick-prev:focus:before, .topic-slider .slick-next:hover:before, .topic-slider .slick-next:focus:before { opacity: 1; }
.topic-slider .slick-slide { transition: .3s ease; }

.slick-initialized { opacity: 1; }

.slick-dots li button::before { font-family: 'slick'; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '•'; text-align: center; opacity: .7; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button::before { opacity: .8; color: deepskyblue; }

/*////////////////////////////////////////////////////////////////////////////

map scss

////////////////////////////////////////////////////////////////////////////*/
.map-area { margin-top: 0; display: flex; flex-wrap: wrap; justify-content: flex-start; list-style: none; padding: 15px; }
.map-area .map--block { width: 100%; }
@media screen and (max-width: 970px) { .map-area .map--block { width: 100%; } }

.gmap-wrap { width: 100%; overflow: hidden; height: 350px; z-index: -1; }
@media screen and (max-width: 479px) { .gmap-wrap { height: 250px; } }
.gmap-wrap > iframe { width: 100%; border: 0; height: 700px; margin-top: -150px; }
.gmap-wrap > iframe.grayscale { -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); }
@media screen and (max-width: 479px) { .gmap-wrap > iframe { height: 500px; } }
.gmap-wrap > iframe:hover { -webkit-filter: grayscale(0%); -moz-filter: grayscale(0%); -ms-filter: grayscale(0%); -o-filter: grayscale(0%); filter: grayscale(0%); }

.facebook-wrap { max-width: 500px; min-height: 400px; margin: 0 auto; }
.facebook-wrap iframe { height: 400px; }
@media screen and (max-width: 479px) { .facebook-wrap iframe { width: 90%; } }

.Google-Map { width: 100%; overflow: hidden; height: 300px; }

.Google-Map > iframe { width: 100%; height: 640px; border: 0; margin-top: -170px; }

.my-Map { width: 100%; overflow: hidden; height: 600px; margin-bottom: 15px; }

.my-Map > iframe { width: 100%; height: 600px; border: 0; }

.guide-Map { width: 100%; overflow: hidden; height: 600px; margin-bottom: 15px; }
@media screen and (max-width: 479px) { .guide-Map { height: 300px; } }

.guide-Map > iframe { width: 100%; height: 600px; border: 0; }
@media screen and (max-width: 479px) { .guide-Map > iframe { height: 300px; } }

.gmap iframe { margin: 0; padding: 0; width: 100%; height: 300px; }
@media screen and (max-width: 479px) { .gmap iframe { height: 200px; } }

/*////////////////////////////////////////////////////////////////////////////

rsv scss

////////////////////////////////////////////////////////////////////////////*/
.bg-rsv-iframe { background: #FFF; }

.rsv-form-wrap { font-family: "Lato", sans-serif; font-size: 13px; display: flex; flex-wrap: wrap; justify-content: center; width: 100%; }
.rsv-form-wrap .p-title { font-size: .9em; color: #CCC; display: inline-block; border: 1px solid #666; padding: 0 5px; }
.rsv-form-wrap.end-bar { padding-bottom: 15px; }

.flex-rsv { display: flex; flex-wrap: wrap; justify-content: flex-start; color: #333; padding: 5px 0 15px; align-items: center; }
.flex-rsv .rsv-item-text { display: inline-block; }
.flex-rsv .rsv-item-text::before { font-size: .8em; line-height: 1; text-align: left; display: block; padding-bottom: 3px; color: #333; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
@media screen and (max-width: 479px) { .flex-rsv .rsv-item-text { width: 100%; display: inline-block; } }

.rsv-item input, .flex-rsv select { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

.flex-rsv .rsv-item { margin: 0; display: inline-block; white-space: nowrap; overflow: hidden; padding-right: .5em; }

.rsv-item { display: inline-block; vertical-align: middle; margin: 5px 0; position: relative; }
.rsv-item input { font-size: 13px; padding: .6em; margin: 0; line-height: normal; text-align: center; vertical-align: middle; position: relative; border: 1px solid #d3d6dd; background: #eff7ff; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
.rsv-item label { position: relative; padding: 3px; }
.rsv-item input[type="radio"] { display: inline-block; margin: 0 5px 0 0; vertical-align: middle; position: relative; top: -1px; cursor: pointer; }
.rsv-item span { font-size: 12px; display: inline-block; margin: .3em .3em 0; line-height: normal; }

.flex-rsv select { text-align: center; color: #2f374d; background-color: #eff7ff; border: 1px solid #d3d6dd; display: inline-block; font: inherit; line-height: 1.5; padding: .4em 3.5em .4em .8em; margin: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; }
@media all and (-ms-high-contrast: none) { .flex-rsv select { padding-right: 1em; } }
.flex-rsv select.minimal { background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%), linear-gradient(to right, #ccc, #ccc); background-position: calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) 0.5em; background-size: 5px 5px, 5px 5px, 1px 1.5em; background-repeat: no-repeat; }
@media all and (-ms-high-contrast: none) { .flex-rsv select.minimal { background-image: none; } }
.flex-rsv select.minimal:focus { background-image: linear-gradient(45deg, green 50%, transparent 50%), linear-gradient(135deg, transparent 50%, green 50%), linear-gradient(to right, #ccc, #ccc); background-position: calc(100% - 15px) 1em, calc(100% - 20px) 1em, calc(100% - 2.5em) 0.5em; background-size: 5px 5px, 5px 5px, 1px 1.5em; background-repeat: no-repeat; outline: 0; }
@media all and (-ms-high-contrast: none) { .flex-rsv select.minimal:focus { background-image: none; } }

select:-moz-focusring { color: transparent; text-shadow: 0 0 0 #000; }

.rsv-item.btn-group { vertical-align: middle; padding: 5px 0 0; }

.flex-rsv .btn { border: none; transition: all 0.3s ease 0s; }

.rsv-item .btn-search { color: #FFF; font-size: 14px; font-weight: 500; padding: .8em 2em; box-shadow: inset 0px 1px 0px 0px #54a3f7; background: linear-gradient(to bottom, #007dc1 5%, #0061a7 100%); background-color: #007dc1; border-radius: 2px; border: 1px solid #124d77; display: inline-block; cursor: pointer; text-decoration: none; text-shadow: 0px 1px 0px #154682; }
.rsv-item .btn-search:hover { background: linear-gradient(to bottom, #0061a7 5%, #007dc1 100%); background-color: #0061a7; }
.rsv-item .btn-search:active { position: relative; top: 1px; }

.btn-search::after { font-family: 'icofont'; content: "\eab8"; color: inherit; font-style: normal; font-weight: normal; line-height: 1; padding-left: 5px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1.2em; }

.usr-link { display: flex; flex-wrap: wrap; justify-content: center; overflow: hidden; position: relative; padding: 15px 0 50px; }

.usr-link ul { list-style: none; font-size: 13px; margin: 0; padding: 0; position: relative; }

.usr-link ul li { list-style: none; display: inline-block; margin-right: 5px; position: relative; }
.usr-link ul li a { text-decoration: none; border: 1px solid #d3d6dd; background: white; padding: .3em 2.5em; border-radius: 20px; }
.usr-link ul li a::after { font-family: 'icofont'; content: "\eaa0"; display: inline-block; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-left: 3px; }
.usr-link ul li a:hover { color: #FFF; background: #232939; border: 1px solid #232939; }

.radio-group { clear: both; margin: .5em; }

.list-inline { display: block; margin: 0 auto; list-style: none; }

.list-inline > li { display: inline-block; padding-right: 5px; padding-left: 5px; }
.list-inline > li label { display: inline-block; }

/*////////////////////////////////////////////////////////////////////////////

for SP scss

////////////////////////////////////////////////////////////////////////////*/
#rsv-fix { position: fixed; top: 25vh; right: 0px; font-size: 12px; z-index: 1; display: none; }
@media only screen and (max-width: 990px) { #rsv-fix { font-size: 10px; top: 0; z-index: 10005; height: 44px; display: table; } }

#rsv-fix a { color: white; background: #66c3c6; text-align: center; line-height: 3; display: table-cell; zoom: 1; padding: 12px 15px; transition: all 0.5s ease; }
@media only screen and (max-width: 1024px) { #rsv-fix a { padding: 5px 10px !important; } }

#rsv-fix .icon-bed { line-height: 1; }
#rsv-fix .icon-bed::before { font-family: 'icofont'; display: block; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\eeb7"; font-size: 30px; }
@media only screen and (max-width: 1024px) { #rsv-fix .icon-bed::before { font-size: 20px; } }

/*////////////////////////////////////////////////////////////////////////////
International Resort Hotel Yurakujo home scss

////////////////////////////////////////////////////////////////////////////*/
.renewal-copy { width: 80%; margin: auto; }
@media screen and (max-width: 768px) { .renewal-copy { width: 100%; } }

#splash { position: fixed; z-index: 999; width: 100%; height: 100%; background: #333; text-align: center; color: #fff; }

#splash_text { position: absolute; top: 50%; left: 50%; z-index: 999; transform: translate(-50%, -50%); color: #fff; width: 100%; }

#splash_text svg { height: 2px; }

/*割れる画面のアニメーション*/
.loader_cover { width: 100%; height: 50%; background-color: #333; transition: all 0.2s cubic-bezier(0.04, 0.435, 0.315, 0.9); transform: scaleY(1); }

.loader_cover-up { transform-origin: center top; }

.loader_cover-down { position: absolute; bottom: 0; transform-origin: center bottom; }

.coveranime { transform: scaleY(0); }

.top-mov { margin: 40px auto 0; width: 100%; transition: 3s; text-align: center; }
@media screen and (max-width: 768px) { .top-mov { margin-top: 0; } }
.top-mov video { max-width: 100%; }

.p-main-copy { font: 400 22px/1.8 "Noto Serif JP", serif; text-align: center; color: #333; padding: 30px 0 0; }
@media screen and (max-width: 479px) { .p-main-copy { font-size: 15px; font-weight: 400; line-height: 1.4; color: #333; } }

.page-heading-home { padding: 15px 0 0; }
.page-heading-home p { text-align: center; padding-top: 1em; }
@media screen and (max-width: 479px) { .page-heading-home p { text-align: left; } }
.page-heading-home .head-square { position: relative; font-weight: normal; text-align: center; margin: 20px 0 25px; background-color: #fff; }
@media screen and (max-width: 479px) { .page-heading-home .head-square { font-size: 22px; } }
.page-heading-home .head-square::before { content: ''; height: 110px; width: 110px; border: solid 3px #00afcc; display: block; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; z-index: -1; }
@media screen and (max-width: 479px) { .page-heading-home .head-square::before { height: 100px; width: 100px; } }
.page-heading-home .head-square h2 { font-family: 'Noto Serif', serif; font-size: 30px; line-height: 1; color: #222; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .page-heading-home .head-square h2 { font-size: 22px; letter-spacing: 0; } }
.page-heading-home .head-square h2::before { content: attr(data-content); font-size: .8em; font-weight: 300; line-height: 1.3; display: block; }

.feature-wrap { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 0 10px; }
@media screen and (max-width: 768px) { .feature-wrap { margin: 0 5px; } }
.feature-wrap .feature--block { margin: 0; padding: 1px; width: 20%; display: inline-block; overflow: hidden; position: relative; line-height: 0; }
@media screen and (max-width: 1024px) { .feature-wrap .feature--block { width: 33.3333%; } }
@media screen and (max-width: 479px) { .feature-wrap .feature--block { width: 50%; } }

.feature-wrap .feature--block .media { display: block; position: relative; overflow: hidden; }
.feature-wrap .feature--block .media .lower-box { position: absolute; bottom: 0; width: 100%; color: #FFF; vertical-align: middle; height: 22%; background-color: rgba(0, 0, 0, 0.5); box-sizing: border-box; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.feature-wrap .feature--block .media .lower-box h4 { font: 300 18px/1.2 "Cormorant SC", serif; letter-spacing: 1px; text-align: center; }
.feature-wrap .feature--block .media .lower-box h4 span { font-family: "Noto Sans JP", sans-serif; font-size: .6em; display: block; }
@media screen and (max-width: 479px) { .feature-wrap .feature--block .media .lower-box h4 { font-size: 16px; } }

.feature-wrap .feature--block .caption { position: relative; padding: 5px; }
.feature-wrap .feature--block .caption p { font-size: 13px; line-height: 1.4; margin-bottom: 0; }
@media screen and (max-width: 479px) { .feature-wrap .feature--block .caption p { font-size: 12px; } }

.feature-wrap .feature--block a { color: #707070; position: relative; display: block; }
.feature-wrap .feature--block a:hover { color: #333; text-decoration: underline; filter: brightness(60%) saturate(1); -webkit-filter: brightness(60%) saturate(1); }
.feature-wrap .feature--block a img:hover { filter: brightness(100%); -webkit-filter: brightness(100%); }

.bg-brown { background-color: #e8d3ca; }

.bnr-wrap { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 0 10px; }
.bnr-wrap .bnr-yurakujo { width: 60%; }

.nav-flex-map { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 10px 0 0; }

.nav-flex-map li { width: 25%; text-align: center; list-style: none; display: inline-block; line-height: none; overflow: hidden; padding: 0; }
@media screen and (max-width: 479px) { .nav-flex-map li { width: 50%; } }
@media screen and (max-width: 479px) { .nav-flex-map li:last-child { width: 100%; } }
.nav-flex-map li a { font-size: 13px; color: #333; display: block; padding: .8em 2.5em; margin: 5px; transition: all 0.5s ease 0s; border-radius: 0; border: 1px solid rgba(35, 41, 57, 0.7); }
@media screen and (max-width: 479px) { .nav-flex-map li a { font-size: 12px; overflow: hidden; text-overflow: ellipsis; padding: .8em 1em; } }
.nav-flex-map li a:hover, .nav-flex-map li a.active { color: white; background-color: #232939; border: 1px solid #232939; text-decoration: none; }

@media screen and (max-width: 479px) { .facebook-wrap .nav-flex li { width: 50%; margin-bottom: 20px; } }

.rsv-iframe iframe { width: 100%; height: 120px; }
@media screen and (max-width: 1024px) { .rsv-iframe { display: none; } }

.sm-search { display: block !important; padding: 0 10px; text-align: center; }
@media only screen and (min-width: 991px) { .sm-search { display: none !important; } }
.sm-search .btn { font-weight: 600 !important; }

ul.ul-search-link { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; }

ul.ul-search-link li { list-style: none; margin: 0; padding: 10px; width: 33.3333%; display: inline-block; text-align: center; line-height: none; overflow: hidden; text-overflow: ellipsis; }
ul.ul-search-link li .btn { margin-bottom: 0; }
@media screen and (max-width: 1024px) { ul.ul-search-link li { width: 50%; }
  ul.ul-search-link li:first-child { display: none; } }
@media screen and (max-width: 479px) { ul.ul-search-link li { width: 100%; } }
ul.ul-search-link li .btn, ul.ul-search-link li button { display: block; }

.close-time-bnr { margin: 0 auto 20px; }
.close-time-bnr ul, .close-time-bnr li { margin: 0; padding: 0; list-style: none; }
.close-time-bnr .ul-bnr3 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
.close-time-bnr .ul-bnr3 li { width: 33%; }
@media screen and (max-width: 640px) { .close-time-bnr .ul-bnr3 li { width: 100%; margin-bottom: 5px; } }

.pickup-bnr-flex { margin: 0 auto 20px; }
.pickup-bnr-flex ul, .pickup-bnr-flex li { margin: 0; padding: 0; list-style: none; }
.pickup-bnr-flex .ul-pickup { display: flex; flex-direction: row; flex-wrap: wrap; }
.pickup-bnr-flex .ul-pickup li { width: 25%; padding: 5px; }
.pickup-bnr-flex .ul-pickup li img { vertical-align: top; }
.pickup-bnr-flex .ul-pickup li a { display: block; }
@media screen and (max-width: 640px) { .pickup-bnr-flex .ul-pickup li { width: 50%; padding: 3px; margin-bottom: 1px; } }

.pickup4-bnr { margin: 0 auto 20px; }
.pickup4-bnr ul, .pickup4-bnr li { margin: 0; padding: 0; list-style: none; }
.pickup4-bnr .ul-bnr4 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; column-gap: 2px; }
.pickup4-bnr .ul-bnr4 li { width: 24.5%; text-align: center; }
@media screen and (max-width: 640px) { .pickup4-bnr .ul-bnr4 li { width: 49.5%; margin-bottom: 5px; } }
.pickup4-bnr .ul-bnr4 li img { vertical-align: top; }
.pickup4-bnr .ul-bnr4 li a { display: block; color: #333; }
.pickup4-bnr .ul-bnr4 li a:hover { text-decoration: underline; }
.pickup4-bnr .ul-bnr3 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
.pickup4-bnr .ul-bnr3 li { flex-basis: 33%; }
@media screen and (max-width: 640px) { .pickup4-bnr .ul-bnr3 li { flex-basis: 49.5%; margin-bottom: 1px; } }

/*////////////////////////////////////////////////////////////////////////////

NEWS style scss

////////////////////////////////////////////////////////////////////////////*/
.info-block { padding: 0 10px 20px; }
@media screen and (max-width: 768px) { .info-block { padding: 0; } }
.info-block ul, .info-block li { margin: 0; list-style: none; }
.info-block li { font-size: 14px; line-height: 1.6; border-bottom: 1px dotted #CCC; text-align: left; }
.info-block li span.p-date { font-family: "Lato", sans-serif; font-weight: 500; display: inline-block; width: 8em; }
@media screen and (max-width: 479px) { .info-block li span.p-date { display: block; } }
.info-block li:first-child { border-top: 1px dotted #CCC; }
.info-block a { color: #606060; display: block; padding: 1em .5em; }
@media screen and (max-width: 479px) { .info-block a { padding: .5em 0; } }
.info-block a:hover { color: #66c3c6; text-decoration: underline; }

.news-btn-block { text-align: center; }
.news-btn-block .btn { padding: .7em 2.5em; }
@media screen and (max-width: 768px) { .news-btn-block { margin-top: 15px; text-align: center; } }

.pickup-wrap { display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-around; padding: 0; margin-bottom: 5px; }
@media screen and (max-width: 768px) { .pickup-wrap { padding-top: 15px; border-top: 1px dotted #CCC; } }
.pickup-wrap a { display: block; overflow: hidden; transition: all 0.5s ease 0s; }

@media screen and (max-width: 1024px) { _::-webkit-full-page-media, _:future, :root .pickup-wrap { height: auto; } }

.pickup-wrap .pickup-item { margin: 0; width: 33.3333%; padding: 8px; text-overflow: ellipsis; position: relative; margin-bottom: 25px; line-height: 0; }
@media screen and (max-width: 1024px) { .pickup-wrap .pickup-item { width: 50%; border-bottom: 1px dotted #CCC; } }
@media screen and (max-width: 768px) { .pickup-wrap .pickup-item { width: 100%; padding: 0 0 10px 0; margin-bottom: 10px; display: table; align-items: center; border: none; border-bottom: 1px dotted #CCC; } }

.pickup-item .thumbnail { overflow: hidden; width: 100%; display: inline-block; margin-bottom: 0; }
@media screen and (max-width: 768px) { .pickup-item .thumbnail { width: 30%; display: table-cell; padding: 0; border: none; } }
.pickup-item .thumbnail img { width: 100%; height: 220px; object-position: 50% 50%; display: block; object-fit: cover; font-family: 'object-fit: cover;'; }
@media screen and (max-width: 1024px) { .pickup-item .thumbnail img { height: 200px; object-position: 50% 40%; } }
@media screen and (max-width: 768px) { .pickup-item .thumbnail img { height: auto; } }

.pickup-item .caption { text-align: center; display: block; padding: .4em 0; }
@media screen and (max-width: 768px) { .pickup-item .caption { padding: 0 10px; margin-bottom: 0px; width: 70%; display: table-cell; vertical-align: middle; } }
.pickup-item .caption p.lead { font: 400 15px/1.5 "Noto Sans JP", sans-serif; color: #333; overflow: hidden; margin-bottom: 0; }
@media screen and (max-width: 768px) { .pickup-item .caption p.lead { font-size: 13px; text-align: left; } }

.info-page-block { display: flex; flex-wrap: wrap; align-items: flex-start; padding: 20px 15px 30px; border-bottom: 1px dotted #CCC; }
.info-page-block h3 { font: 500 20px/1.5 "Noto Sans JP", sans-serif; border-bottom: 3px solid #DDD; color: #111; margin-bottom: 20px; }
@media screen and (max-width: 479px) { .info-page-block h3 { font-size: 16px !important; padding-bottom: .1em; line-height: 1.2; } }
.info-page-block .info-date { font-family: "Lato", sans-serif; width: 15%; background: #333; text-align: center; color: white; display: inline-block; padding: .5em 1em; margin-right: 5%; }
.info-page-block .info-date span { font-size: 1.2em; }
@media screen and (max-width: 768px) { .info-page-block .info-date { width: auto; padding: .2em 1em; margin-bottom: .5em; font-size: 80%; } }
.info-page-block .info-detail { width: 80%; display: inline-block; }
@media screen and (max-width: 768px) { .info-page-block .info-detail { width: 100%; } }

.pickup-list-block, .pickup-page-block { display: flex; flex-wrap: wrap; align-items: flex-start; margin: 20px 15px; padding-bottom: 15px; border-bottom: 1px dotted #CCC; }
@media screen and (max-width: 768px) { .pickup-list-block, .pickup-page-block { margin: 10px; padding-bottom: 0; } }
.pickup-list-block h3, .pickup-page-block h3 { font: 500 20px/1.5 "Noto Sans JP", sans-serif; border-bottom: 3px solid #DDD; color: #111; margin-bottom: 10px; }
@media screen and (max-width: 768px) { .pickup-list-block h3, .pickup-page-block h3 { font-size: 15px !important; padding: 0; margin-bottom: 5px; line-height: 1.2; border-bottom: none; } }
.pickup-list-block .label, .pickup-page-block .label { background: #666; color: white; line-height: 1; padding: .2em .5em; }
.pickup-list-block .thumbnail, .pickup-page-block .thumbnail { width: 25%; display: inline-block; padding: 0; }
@media screen and (max-width: 768px) { .pickup-list-block .thumbnail, .pickup-page-block .thumbnail { width: 30%; } }
.pickup-list-block .pickup-lead, .pickup-page-block .pickup-lead { width: 70%; padding: 0 1em 0 2em; display: inline-block; }
@media screen and (max-width: 768px) { .pickup-list-block .pickup-lead, .pickup-page-block .pickup-lead { width: 70%; padding: 0 0 0 1em; }
  .pickup-list-block .pickup-lead .caption p, .pickup-page-block .pickup-lead .caption p { font-size: 12px; line-height: 1.4 !important; } }
.pickup-list-block a .caption, .pickup-page-block a .caption { color: #555; }
.pickup-list-block a .caption:hover, .pickup-page-block a .caption:hover { color: #333; text-decoration: underline; }

@media screen and (max-width: 478px) { .pickup-list-block .pickup-lead .caption p { height: 2.8em; overflow: hidden; text-overflow: ellipsis; } }
@media screen and (max-width: 768px) { .pickup-page-block { margin: 15px; } }
.pickup-page-block .thumbnail { width: 35%; display: inline-block; padding: 0; }
@media screen and (max-width: 768px) { .pickup-page-block .thumbnail { order: 2; width: 100%; margin-bottom: 10px; } }
.pickup-page-block .pickup-lead { width: 65%; padding: 0 1em 0 2em; display: inline-block; }
@media screen and (max-width: 768px) { .pickup-page-block .pickup-lead { order: 1; width: 100%; padding: 0; } }

.editor-wrap { padding: 15px 0 30px; }
@media screen and (max-width: 768px) { .editor-wrap { word-break: break-all; } }
.editor-wrap img { width: 100%; height: auto; }
@media screen and (max-width: 768px) { .editor-wrap img { max-width: 100% !important; height: auto !important; } }
.editor-wrap ol, .editor-wrap ul { margin-bottom: 1em; }
.editor-wrap ol { margin-left: 2em; }
.editor-wrap h3 { margin-bottom: 15px; font-weight: 400; }

.editor-wrap table { margin-bottom: 15px; border: 1px solid #CCC; }
.editor-wrap th, .editor-wrap td { padding: .6em 1em; border-bottom: 1px solid #CCC; }
.editor-wrap th { background: #F0F0F0; white-space: nowrap; }
.editor-wrap ul { margin-left: 1.5em; }
.editor-wrap .slick-dots { bottom: -35px; }

.dl-topic { padding: 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; border-top: 1px solid #ffcccc; margin-bottom: 20px; }
.dl-topic dt, .dl-topic dd { padding: 0.5em; border-bottom: 1px solid #ffcccc; }
@media only screen and (max-width: 479px) { .dl-topic dt, .dl-topic dd { font-size: 13px; } }
.dl-topic dt { width: 20%; color: #333; text-align: center; font-weight: 500; position: relative; background: #ffefef; }
@media only screen and (max-width: 479px) { .dl-topic dt { width: 100%; text-align: left; margin-bottom: .5em; } }
.dl-topic dd { width: 80%; color: #333; padding-left: 2em; }
@media only screen and (max-width: 479px) { .dl-topic dd { width: 100%; padding-left: .5em; } }

/*////////////////////////////////////////////////////////////////////////////

pase scss

////////////////////////////////////////////////////////////////////////////*/
#overview .table-profile tbody > tr > th { padding-right: 2em; padding-left: 2em; text-align: right; font-weight: 400; background: #F9F9F9; }
@media screen and (max-width: 479px) { #overview .table-profile tbody > tr > th { text-align: left; padding-left: .5em; background: #F0F0F0; } }
#overview .table-profile tbody > tr > td { font-weight: 400; padding-left: 2em; }
@media screen and (max-width: 479px) { #overview .table-profile tbody > tr > td { padding-left: 1em; } }

#overview ul { margin-left: 2em; }
#overview ul li { line-height: 1.8; }
#overview ul.list-flex { display: flex; flex-wrap: wrap; padding-left: 0; margin-left: 0; list-style: none; line-height: 1.8; }
#overview ul.list-flex li { width: 50%; list-style: none; }
#overview ul.list-flex li::before { content: "・"; }

/*////////////////////////////////////////////////////////////////////////////

stay pase scss

////////////////////////////////////////////////////////////////////////////*/
.plan-grid { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; }
.plan-grid .plan--block { margin: 0; padding: 5px; width: 25%; display: inline-block; position: relative; overflow: hidden; align-items: center; line-height: 0; }
@media screen and (max-width: 768px) { .plan-grid .plan--block { width: 50%; padding: 2px 2px 10px; } }
.plan-grid .plan--block a { color: #333; display: block; }
.plan-grid .plan--block a:hover { color: #333; text-decoration: underline; filter: brightness(60%) saturate(1); -webkit-filter: brightness(60%) saturate(1); }
.plan-grid .plan--block a img:hover { filter: brightness(100%); -webkit-filter: brightness(100%); }

.plan-grid .plan--block .item { position: relative; overflow: hidden; }
.plan-grid .plan--block .item img { width: 100%; height: 160px; object-position: 50% 50%; display: block; margin: auto; object-fit: cover; font-family: 'object-fit: cover;'; }
@media screen and (max-width: 768px) { .plan-grid .plan--block .item img { height: 120px; } }
.plan-grid .plan--block .caption { text-align: center; }
.plan-grid .plan--block .caption p { font-size: 14px; padding-top: .5em; line-height: 1.3; }
@media screen and (max-width: 768px) { .plan-grid .plan--block .caption p { font-size: 13px; font-weight: 500; } }

.bg-cover.bg-cover-100 { padding: 50px 0 100px; }

.bg-cover.bg-room { background-image: url("../../stay/img/bg/bg_room01.jpg"); }
.bg-cover.bg-room::before { content: ''; background: inherit; -webkit-filter: blur(4px); -moz-filter: blur(4px); -o-filter: blur(4px); -ms-filter: blur(4px); filter: blur(4px); position: absolute; top: -5px; left: 0px; right: 0px; bottom: -5px; z-index: -99; }

.bg-cover .h2-cover { font: 400 36px/1.5 "Cormorant SC", serif; color: #FFF; letter-spacing: 2px; margin-bottom: 0; }
@media screen and (max-width: 479px) { .bg-cover .h2-cover { font-size: 30px; } }

.bg-cover .p-cover { font-size: 20px; letter-spacing: 2px; color: white; text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }
@media screen and (max-width: 479px) { .bg-cover .p-cover { font-size: 20px; letter-spacing: 0; } }

ul.stay-goto { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; list-style: none; }
ul.stay-goto li { width: 50%; font: 500 18px/1.5 "Open Sans", sans-serif; list-style: none; padding: 10px; text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2); }
@media screen and (max-width: 768px) { ul.stay-goto li { width: 100%; } }
ul.stay-goto li i { padding-left: 1em; font-size: 2em; display: inline-block; }
ul.stay-goto li a { display: block; text-align: center; color: #FFF; padding: 1em 1em; background: rgba(0, 0, 0, 0.2); border: 1px solid rgba(255, 255, 255, 0.6); position: relative; }
ul.stay-goto li a::after { font-family: 'icofont'; content: "\eaca"; font-size: 2em; position: absolute; right: 15px; margin-top: -12px; color: inherit; }
ul.stay-goto li a span { display: block; font-size: .65em; font-weight: 300; }
ul.stay-goto li a:hover { color: #FFF; background: rgba(3, 169, 244, 0.6); border: 1px solid rgba(3, 169, 244, 0.6); }

.room-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 40px 0; }
.room-wrap .room--visual { width: 50%; padding: 0; display: inline-block; }
@media screen and (max-width: 768px) { .room-wrap .room--visual { width: 100%; padding: 0 10px; order: 1; } }
.room-wrap .room--block { width: 50%; padding: 0 3em; display: inline-block; }
@media screen and (max-width: 768px) { .room-wrap .room--block { width: 100%; padding: 0 2em; order: 0; } }
.room-wrap .room--block .page-heading { margin: 0 0 15px; }
.room-wrap .room--block .page-heading h3 { font-size: 30px; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .room-wrap .room--block .page-heading h3 { font-size: 24px; letter-spacing: 0; } }
.room-wrap .room--block .caption > p { font-size: 14px; font-weight: 300; line-height: 1.6; }
@media screen and (max-width: 768px) { .room-wrap .room--block .caption > p { line-height: 1.6; } }

.room-spec-item { margin: 20px auto 20px; position: relative; }

.room-spec-item li { position: relative; }
.room-spec-item li::before { content: ""; width: 1px; height: 100%; background-color: #CCC; position: absolute; right: 0; top: 0; }
.room-spec-item li:first-child { padding-right: 10px; }
.room-spec-item li:last-child:before { display: none; }

.list-inline-item { display: block; }

.room-spec-item li + li { padding-left: 15px; padding-right: 20px; }
@media screen and (max-width: 479px) { .room-spec-item li + li { padding-left: 5px; padding-right: 10px; } }

.room-spec-item li span { font-weight: 500; text-align: center; display: block; font-family: 'Noto Serif', serif; }
.room-spec-item li span.text { color: #777; font-size: 12px; }
.room-spec-item li span.number { font-size: 1.2em; }
@media screen and (max-width: 479px) { .room-spec-item li span.number { font-size: 1em; } }
.room-spec-item li span.number span { font-size: .8em; }

.layout { text-align: center; }
.layout a.popup-btn { border: 1px solid #CCC; padding: 5px 45px; text-align: center; position: relative; }
.layout a.popup-btn::after { content: "ルームレイアウト"; display: block; font-size: 13px; }
@media screen and (max-width: 479px) { .layout a.popup-btn::after { font-size: 11px; } }
.layout a.popup-btn img { height: 50px; width: auto; }

.stay-info { margin: 25px 0; }
.stay-info h3 { font-family: "Noto Serif JP", serif; font-size: 24px; width: 100%; font-weight: 500; }
@media screen and (max-width: 479px) { .stay-info h3 { font-size: 18px; } }
.stay-info h4 { font-weight: 500; margin-bottom: .5em; }
.stay-info h4::before { content: "■"; color: #999; }
@media screen and (max-width: 479px) { .stay-info h4 { font-size: 14px; } }

.stay-info-block { display: flex; flex-wrap: wrap; justify-content: flex-start; padding: 0; margin: 15px 0 10px; }
.stay-info-block .block--50 { width: 50%; }
@media screen and (max-width: 768px) { .stay-info-block .block--50 { width: 100%; } }
.stay-info-block .block--100 { display: block; width: 100%; }

.stay-info-block ul, .stay-info-block li { list-style: none; }
.stay-info-block ul { margin-bottom: 1em; margin-left: 2em; }
.stay-info-block li { list-style: disc; }
.stay-info-block li ul { margin-top: .5em; }
.stay-info-block li li { list-style: circle; }

.stay-info-block .table-info { margin-bottom: 10px; width: auto; }
@media screen and (max-width: 479px) { .stay-info-block .table-info { width: 100%; } }
.stay-info-block .table-info > tbody > tr { border-bottom: 1px dotted #DDD; }
.stay-info-block .table-info > tbody > tr:first-child { border-top: 1px dotted #DDD; }
@media screen and (max-width: 479px) { .stay-info-block .table-info > tbody > tr { border-bottom: none; } }
.stay-info-block .table-info > tbody > tr > th, .stay-info-block .table-info > tbody > tr > td { padding: .5em 2em; }
@media screen and (max-width: 479px) { .stay-info-block .table-info > tbody > tr > th, .stay-info-block .table-info > tbody > tr > td { empty-cells: hide !important; } }

.stay-info-block .table-info > tbody > tr > th { width: auto; font-weight: 400; white-space: nowrap; background: #F9F9F9; }
@media screen and (max-width: 479px) { .stay-info-block .table-info > tbody > tr > th { width: 100%; float: left; clear: left; background: #F5F5F5; padding: 5px 8px; } }

.stay-info-block .table-info > tbody > tr > td { font-weight: 300; }
@media screen and (max-width: 479px) { .stay-info-block .table-info > tbody > tr > td { width: 100%; float: left; clear: left; background: #FFF; padding: 5px 8px; } }

.faq h3 { font-family: "Noto Serif JP", serif; font-size: 24px; width: 100%; font-weight: 500; }
@media screen and (max-width: 479px) { .faq h3 { font-size: 18px; } }

.bnr-goto { text-align: center; margin: 20px auto; }
.bnr-goto a { color: #FFF; display: block; padding: .5em 1em; background-color: #66c3c6; }
.bnr-goto a:hover { color: #FFF; background-color: #232939; }
.bnr-goto h4 { font-weight: 400; }
.bnr-goto h4::after { font-family: 'icofont'; content: "\ea67"; line-height: 1; display: block; color: inherit; padding: 5px; font-size: 1.4em; }
@media screen and (max-width: 479px) { .bnr-goto h4 { font-size: 15px; } }

/*////////////////////////////////////////////////////////////////////////////

Restaurant pase scss

////////////////////////////////////////////////////////////////////////////*/
.rest-index { display: flex; flex-wrap: wrap; justify-content: flex-start; position: relative; padding: 0; margin-bottom: 20px; }
.rest-index .rest { width: 33.3333%; display: inline-block; padding: 10px; }
@media screen and (max-width: 768px) { .rest-index .rest { width: 100%; padding: 10px 0; } }
.rest-index .rest .media { display: block; position: relative; overflow: hidden; line-height: 0; }

.rest-index .rest a img, .rest-index .rest a:hover img, .hall-index .hall a img, .hall-index .hall a:hover .lower-box, .hall-index .hall a:hover img { -webkit-transition: all 1.2s; transition: all 1.2s; }

.rest-index .rest a { color: #333; position: relative; display: block; }
.rest-index .rest a img { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.rest-index .rest a:hover h4 { text-decoration: underline; }
.rest-index .rest a:hover img { filter: brightness(70%) saturate(1); -webkit-filter: brightness(70%) saturate(1); -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }
.rest-index .rest .caption { margin-top: 10px; }
.rest-index .rest .caption h4 { font: 400 20px/1.5 "Noto Serif JP", serif; text-align: center; }
.rest-index .rest .caption p { font-size: 13px; color: #666; }

.rest-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; }
.rest-wrap.item-center { align-items: center; }
.rest-wrap.single { justify-content: flex-start; }
.rest-wrap .rest--visual { width: 50%; padding: 0; display: inline-block; }
@media screen and (max-width: 768px) { .rest-wrap .rest--visual { width: 100%; padding: 10px; order: 1; } }
@media screen and (max-width: 768px) { .rest-wrap .rest--visual.order0 { order: 0 !important; } }
.rest-wrap .rest--block { width: 50%; padding: 0 3em; display: inline-block; }
@media screen and (max-width: 768px) { .rest-wrap .rest--block { width: 100%; padding: 0 1em; order: 0; } }
.rest-wrap .rest--block.padding-xs { padding: 0 1em; }
@media screen and (max-width: 768px) { .rest-wrap .rest--block.padding-xs { padding: 0 .5em; } }
.rest-wrap .rest--block .page-heading { margin: 0 0 15px; }
.rest-wrap .rest--block .page-heading h3 { font-size: 24px; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .rest-wrap .rest--block .page-heading h3 { font-size: 20px; letter-spacing: 0; } }
.rest-wrap .rest--block .caption > p { font-size: 14px; line-height: 1.8; }
@media screen and (max-width: 768px) { .rest-wrap .rest--block .caption > p { line-height: 1.6; } }
.rest-wrap .rest--calender { width: 50%; padding: 0 1em; display: inline-block; }
@media screen and (max-width: 768px) { .rest-wrap .rest--calender { width: 100%; padding: 0 1em; order: 2; } }

.rest-wrap .notes { width: 100%; margin: 0 3em 1em; padding: 1em; border-top: 1px dotted #CCC; border-bottom: 1px dotted #CCC; }
@media screen and (max-width: 768px) { .rest-wrap .notes { margin: 0 .5em .5em; } }
.rest-wrap .notes p { font-size: 13px; }

.rest-wrap .rest--block.abreast { padding: 0 1em; }

.rest-wrap .list-inline.gw-lunch li::before { content: "●"; color: #00a3a7; }
.rest-wrap .list-inline.gw-dinner li::before { content: "●"; color: #4d4398; }
.rest-wrap .list-inline.summer-lunch li::before { content: "●"; color: #00a1e9; }
.rest-wrap .list-inline.winter-lunch li::before { content: "●"; color: #8d93c8; }
.rest-wrap .list-inline.white-lunch li::before { content: "●"; color: #ef857d; max-height: .5em; }
.rest-wrap .list-inline.autumn li::before { content: "●"; color: #ee7800; max-height: .5em; }

.rest-wrap .rest--gw-block { width: 33.33333%; padding: 15px; display: inline-block; text-align: center; }
@media screen and (max-width: 768px) { .rest-wrap .rest--gw-block { width: 100%; padding: 5px; order: 1; }
  .rest-wrap .rest--gw-block br { display: none; } }
.rest-wrap .rest--gw-block h4 { font-size: 20px; font-weight: 500; }
.rest-wrap .rest--gw-block p { font-weight: 300; }

.rest-wrap.world { display: flex; margin: 15px; }
.rest-wrap.world div { margin-bottom: 5px; }
@media screen and (max-width: 768px) { .rest-wrap.world { margin: 10px; } }
.rest-wrap.world .world-thums { width: 15%; padding: 0 5px; }
@media screen and (max-width: 768px) { .rest-wrap.world .world-thums { width: 30%; } }
.rest-wrap.world .world-menu { width: 35%; padding: 0 1em; }
@media screen and (max-width: 768px) { .rest-wrap.world .world-menu { width: 70%; } }

.rest-wrap.autumn-menu { display: flex; flex-direction: row; margin: 15px; }
.rest-wrap.autumn-menu div { margin-bottom: 5px; }
@media screen and (max-width: 768px) { .rest-wrap.autumn-menu { margin: 10px; } }
.rest-wrap.autumn-menu .world-menu { width: 50%; padding: 0 1em; }
@media screen and (max-width: 768px) { .rest-wrap.autumn-menu .world-menu { width: 100%; } }
.rest-wrap.autumn-menu .world-menu .list-inline li::before { content: "■"; color: #6b3f31; }
.rest-wrap.autumn-menu .world-menu .h-line { border-bottom: 4px solid #e6bfab; }
.rest-wrap.autumn-menu .world-menu .h-line::after { background-color: #6b3f31; }

.rest-wrap.winter { display: flex; margin: 15px; }
.rest-wrap.winter div { margin-bottom: 5px; }
@media screen and (max-width: 768px) { .rest-wrap.winter { margin: 10px; } }
.rest-wrap.winter .winter-menu { width: 50%; padding: 0 1em; }
@media screen and (max-width: 768px) { .rest-wrap.winter .winter-menu { width: 100%; } }
.rest-wrap.winter .winter-menu .list-inline li::before { font-family: "icofont"; content: "\effe"; color: #4d4398; font-size: 1.2em; }
.rest-wrap.winter .winter-menu .h-line { border-bottom: 4px solid #a4a8d4; }
.rest-wrap.winter .winter-menu .h-line::after { background-color: #4d4398; }
.rest-wrap.winter .xmas-menu { width: 50%; padding: 0 1em; }
@media screen and (max-width: 768px) { .rest-wrap.winter .xmas-menu { width: 100%; } }
.rest-wrap.winter .xmas-menu .list-inline li::before { font-family: "icofont"; content: "\effe"; color: #6b3f31; font-size: 1.2em; }
.rest-wrap.winter .xmas-menu .h-line { border-bottom: 4px solid #e6bfab; }
.rest-wrap.winter .xmas-menu .h-line::after { background-color: #6b3f31; }
.rest-wrap.winter .single-menu { width: 100%; }
@media screen and (max-width: 768px) { .rest-wrap.winter .single-menu { width: 100%; } }
.rest-wrap.winter .single-menu .list-inline li::before { font-family: "icofont"; content: "\effe"; color: #6b3f31; font-size: 1.2em; }
.rest-wrap.winter .single-menu .h-line { border-bottom: 4px solid #e6bfab; }
.rest-wrap.winter .single-menu .h-line::after { background-color: #6b3f31; }

.rest-wrap ul.ul-data { display: block; position: relative; list-style: none; }
.rest-wrap ul.ul-data li { font-family: "Lato", sans-serif; text-align: left; list-style: none; letter-spacing: 1px; }
.rest-wrap ul.ul-data li::before { content: attr(data-content); font-size: 12px !important; line-height: 1; width: 6em; text-align: center; color: #FFF; background-color: #aaaab0; display: inline-block; padding: .3em; margin-right: 1em; }

#gallery { text-align: center; margin: auto; }

.menu-wrap { display: flex; flex-wrap: wrap; justify-content: flex-start; position: relative; padding: 0; }
.menu-wrap .menu--block { width: 50%; padding: 1em; }
@media screen and (max-width: 768px) { .menu-wrap .menu--block { width: 100%; padding: 1em .5em; } }
.menu-wrap h4 { font-weight: 500; line-height: 1; margin-bottom: 10px; }
.menu-wrap h4::before { content: "■"; color: #66c3c6; }
.menu-wrap h4 span { font-family: "Lato", sans-serif; font-size: .8em; font-weight: 300; color: #999; margin-left: 1em; font-style: normal; }
.menu-wrap h4.vista::before { color: #56256e; }
.menu-wrap .p-notes { font-size: .9em; color: #666; }

.menu-wrap .menu--block .table-menu { width: 100%; margin-bottom: 10px; }
.menu-wrap .menu--block .table-menu tbody tr { border-bottom: 1px dotted #CCC; font-size: 14px; }
@media screen and (max-width: 768px) { .menu-wrap .menu--block .table-menu tbody tr { font-size: 13px; } }
.menu-wrap .menu--block .table-menu tbody th { font-weight: normal; text-align: left; padding: .3em 1em .3em 0; }
.menu-wrap .menu--block .table-menu tbody td { font-family: "Lato", sans-serif; text-align: right; }

.menu-wrap .table-menu-bar { width: 100%; margin-bottom: 15px; }
.menu-wrap .table-menu-bar tbody tr { border-bottom: 1px dotted #CCC; font-size: 14px; }
.menu-wrap .table-menu-bar tbody tr:first-child { border-top: 1px dotted #CCC; }
@media screen and (max-width: 768px) { .menu-wrap .table-menu-bar tbody tr { font-size: 13px; } }
.menu-wrap .table-menu-bar tbody th { font-weight: normal; text-align: left; padding: .3em 2em .3em 1em; }
@media screen and (max-width: 768px) { .menu-wrap .table-menu-bar tbody th { padding: .3em 1em .3em .5em; } }
.menu-wrap .table-menu-bar tbody td { font-family: "Lato", sans-serif; white-space: nowrap; text-align: right; }
.menu-wrap .table-menu-bar ul li { list-style: disc; margin-left: 1em; }
.menu-wrap .table-menu-bar span { font-size: .85em; opacity: .7; }

.bg-sepia { background-color: #622d18; }
.bg-sepia * { color: #FFF; }
.bg-sepia .notes-block { background: rgba(255, 255, 255, 0.2); padding: 0.5em 1em; margin-bottom: 10px; }
.bg-sepia .price { font-family: "Lato", sans-serif; font-size: 1.2em; }

.bg-brown { background: #6b3f31; }
.bg-brown * { color: #FFF; }
.bg-brown .notes-block { background: rgba(255, 255, 255, 0); padding: 0.5em 1em; margin-bottom: 10px; }
.bg-brown .price { font-family: "Lato", sans-serif; font-size: 1.2em; }

.bg-cover.bg-xmas { background-image: url("../img/bg/bg_xmas.jpg"); background-position: center top; text-align: inherit; }
.bg-cover.bg-xmas::before { content: ''; background: inherit; -webkit-filter: blur(2px); -moz-filter: blur(2px); -o-filter: blur(2px); -ms-filter: blur(2px); filter: blur(2px); position: absolute; left: 0px; right: 0px; z-index: -99; }
.bg-cover.bg-xmas * { color: #333; }

.bg-cover.bg-winter { background-image: url("../img/bg/bg_winter.jpg"); background-position: center top; text-align: inherit; /*&::before{ content: ''; background: inherit; -webkit-filter: blur(2px); -moz-filter: blur(2px); -o-filter: blur(2px); -ms-filter: blur(2px); filter: blur(2px); position: absolute; top: -5px; left: 0px; right: 0px; bottom: -5px; z-index: -99;
}*/ }
.bg-cover.bg-winter * { color: #333; }

.bg-cover.bg-newyear { background-image: url("../img/bg/bg_newyear.jpg"); background-position: center top; text-align: inherit; }
.bg-cover.bg-newyear::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: -1; background-color: rgba(255, 255, 255, 0.5); }
.bg-cover.bg-newyear * { color: #333; }

.bg-cover.bg-newyear02 { background-image: url("../img/bg/bg_newyear02.jpg"); background-position: center top; text-align: inherit; }
.bg-cover.bg-newyear02::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: -1; }
.bg-cover.bg-newyear02 * { color: #333; }

.chisan-price { border: 1px solid rgba(255, 255, 255, 0.6); margin: 0; }
.chisan-price tbody > tr > th { text-align: center; vertical-align: middle !important; border-bottom: 1px dotted rgba(255, 255, 255, 0.6); }
.chisan-price tbody > tr > td { font-family: "Lato", sans-serif; text-align: center; border-bottom: 1px dotted rgba(255, 255, 255, 0.6); }

.chisan.table-white { background: rgba(255, 255, 255, 0.5); }

.xmas-price { border: 1px solid rgba(0, 0, 0, 0.5); margin: 0; }
.xmas-price tbody > tr > th { text-align: center; vertical-align: middle !important; border-bottom: 1px dotted rgba(0, 0, 0, 0.5); background: #FFF; }
.xmas-price tbody > tr > td { font-family: "Lato", sans-serif; text-align: center; border-bottom: 1px dotted rgba(0, 0, 0, 0.5); background: #FFF; }

.green-price { border: 1px solid rgba(65, 139, 137, 0.3); margin: 0; background-color: rgba(255, 255, 255, 0.2); }
.green-price tbody > tr > th { text-align: center; vertical-align: middle !important; border-bottom: 1px dotted rgba(65, 139, 137, 0.3); }
.green-price tbody > tr > td { font-family: "Lato", sans-serif; text-align: center; border-bottom: 1px dotted rgba(65, 139, 137, 0.3); }

.halloween-block { width: 60%; margin: 15px auto; }
@media screen and (max-width: 768px) { .halloween-block { width: 100%; } }

.line-promotion { background-color: #3cb37a; text-align: center; padding: 1em; color: #FFF; }
.line-promotion .btn-line { border: 1px solid #FFF; margin: 10px auto; background-color: #06c755; }
.line-promotion .btn-line::before { font-family: "icofont"; content: "\ed4c"; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.line-promotion .btn-line:hover { background: #111; }

.sake3-wrap { display: flex; flex-flow: wrap; flex-direction: row; justify-content: center; }
.sake3-wrap .item-block { width: 33%; display: flex; }
@media screen and (max-width: 768px) { .sake3-wrap .item-block { width: 100%; } }
.sake3-wrap .item-block .sake { width: 30%; }
.sake3-wrap .item-block .caption { width: 70%; padding: 0 1em; }
.sake3-wrap .item-block .caption h3 { margin-bottom: .5em; }
.sake3-wrap .item-block .caption h3 span { font-size: .8em; }

/*////////////////////////////////////////////////////////////////////////////

Meeting pase scss

////////////////////////////////////////////////////////////////////////////*/
.meeting-feature { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; }
.meeting-feature .feature--block { width: 33.3333%; padding: 0 5px; position: relative; border-right: 1px dotted #CCC; }
.meeting-feature .feature--block.order3 { border-right: none; }
@media screen and (max-width: 768px) { .meeting-feature .feature--block { width: 100%; border-right: none; } }

.meeting-feature .feature--block .inner-box { padding: 0 10px; }
@media screen and (max-width: 768px) { .meeting-feature .feature--block .inner-box { padding: 0; } }
.meeting-feature .feature--block .inner-box h3 { font-family: "Noto Serif JP", serif; font-size: 18px; font-weight: 500; line-height: 1.4; display: block; margin-bottom: .3em; }
.meeting-feature .feature--block .inner-box h3::before { font-family: "Lato", sans-serif; content: attr(data-content); font-size: 1.4em; font-weight: 300; color: #FFF; background: #66c3c6; padding: 0 .35em; margin-right: 3px; }
.meeting-feature .feature--block .inner-box .caption { font-size: 13px; color: #555; margin-bottom: 15px; }
.meeting-feature .feature--block .inner-box .btn { display: block; text-align: center; padding: 1em 0 1em; }

.h-meeting::before { font-family: "Lato", sans-serif; content: attr(data-content); font-size: .8em; font-weight: 300; color: #FFF; background: #66c3c6; padding: 0 .35em; margin-right: .2em; }

ul.plan-meeting { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; list-style: none; }
ul.plan-meeting li { width: 33.3333%; font: 700 18px/1.5 "Open Sans", sans-serif; list-style: none; padding: 5px; }
@media screen and (max-width: 991px) { ul.plan-meeting li { width: 50%; } }
@media screen and (max-width: 768px) { ul.plan-meeting li { width: 100%; } }
ul.plan-meeting li i { padding-left: .5em; }
ul.plan-meeting li a { display: block; text-align: center; color: #FFF; padding: 1em; background: #28bbf8; border: 5px double #FFF; }
ul.plan-meeting li a span { display: block; font-size: .65em; font-weight: 300; }
ul.plan-meeting li a:hover { background: #232939; }

ul.plan-goto { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; list-style: none; }
ul.plan-goto li { width: 50%; font: 700 20px/1.5 "Open Sans", sans-serif; list-style: none; padding: 10px; }
@media screen and (max-width: 768px) { ul.plan-goto li { width: 100%; } }
ul.plan-goto li i { padding-left: .5em; }
ul.plan-goto li a { display: block; text-align: center; color: #FFF; padding: 1em; background: #28bbf8; border: 5px double #FFF; }
ul.plan-goto li a span { display: block; font-size: .65em; font-weight: 300; }
ul.plan-goto li a:hover { background: #232939; }

.meeting-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 30px 0; }
.meeting-wrap.item-center { align-items: center; }
.meeting-wrap .meeting--visual { width: 50%; padding: 0; display: inline-block; }
@media screen and (max-width: 768px) { .meeting-wrap .meeting--visual { width: 100%; padding: 10px; order: 1; } }
.meeting-wrap .meeting--block { width: 50%; padding: 0 3em; display: inline-block; }
@media screen and (max-width: 768px) { .meeting-wrap .meeting--block { width: 100%; padding: 0 2em; order: 0; } }
.meeting-wrap .meeting--block .page-heading { margin: 0 0 15px; }
.meeting-wrap .meeting--block .page-heading h3 { font-size: 30px; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .meeting-wrap .meeting--block .page-heading h3 { font-size: 24px; letter-spacing: 0; } }
.meeting-wrap .meeting--block .caption > p { font-size: 14px; line-height: 1.8; }
@media screen and (max-width: 768px) { .meeting-wrap .meeting--block .caption > p { line-height: 1.6; } }

.meeting-wrap .meeting--visual ul, .meeting-wrap .meeting--visual li { margin: 0; padding: 0; list-style: none; line-height: 0; }
.meeting-wrap .meeting--visual ul.thums { display: flex; flex-wrap: wrap; justify-content: flex-start; }
@media screen and (max-width: 479px) { .meeting-wrap .meeting--visual ul.thums { justify-content: center; } }
.meeting-wrap .meeting--visual ul.thums li { width: 33%; margin-left: 1px; margin-bottom: 1px; }

.point-block .caption { padding: 1em 2em; }
.point-block .caption p { line-height: 1.8; }
@media screen and (max-width: 768px) { .point-block .caption { padding: 1em 0; } }

.single-fade { text-align: center; }

ul.ul-rental { display: flex; flex-wrap: wrap; justify-content: flex-start; }
ul.ul-rental li { display: inline-block; margin-right: 1.5em; }
ul.ul-rental li::before { content: "●"; color: #999; }

ul.ul-merit { display: flex; flex-wrap: wrap; flex-direction: column; list-style: none; margin-left: 1em; }
ul.ul-merit li { display: inline-block; line-height: 1.4; list-style: none; margin-bottom: .8em; }
ul.ul-merit li::before { font-family: 'icofont'; content: "\ea69"; font-size: 140%; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #009b9f; margin-left: -1em; }

ul.ul-data-time { display: block; position: relative; list-style: none; }
ul.ul-data-time li { text-align: left; list-style: none; font-size: 15px; letter-spacing: 1px; margin-bottom: .3em; }
ul.ul-data-time li::before { content: attr(data-content); font-size: 12px !important; line-height: 1; width: 6em; text-align: center; color: #FFF; background-color: cadetblue; display: inline-block; padding: .3em; margin-right: .8em; }

.table-m-plan { width: 100%; margin-bottom: 10px; }
.table-m-plan tbody tr { border-bottom: 1px dotted #CCC; }
.table-m-plan th.td { text-align: left; }
.table-m-plan th { padding-left: 0; }
.table-m-plan th::before { content: "■"; color: cadetblue; }
.table-m-plan td { padding-left: 1em; }
.table-m-plan td span { font-size: 1.2em; padding-right: 2px; }

.plan-inc { display: flex; flex-wrap: wrap; justify-content: flex-start; list-style: none; margin: 0; }
.plan-inc li { width: 100%; list-style: none; margin-bottom: .8em; }
.plan-inc li i { font-size: 1.4em; color: white; background-color: cadetblue; padding: 4px; margin-right: 5px; border-radius: 2px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.table-cancel { font-size: 14px; margin-bottom: 10px; width: 100%; }
@media screen and (max-width: 479px) { .table-cancel { width: 100%; } }
.table-cancel > thead > tr > th { font-weight: 400; border-bottom: 1px solid #CCC; }
@media screen and (max-width: 479px) { .table-cancel > thead > tr > th { display: none; } }
.table-cancel > tbody > tr { border-bottom: 1px dotted #DDD; }
@media screen and (max-width: 479px) { .table-cancel > tbody > tr { border-bottom: none; } }
.table-cancel > tbody > tr > th { width: auto; font-weight: 400; white-space: nowrap; padding: .5em 2em; }
@media screen and (max-width: 479px) { .table-cancel > tbody > tr > th { width: 100%; float: left; clear: left; white-space: normal; background: #F5F5F5; padding: 5px 8px; } }
.table-cancel > tbody > tr > td { font-weight: 300; padding: .5em 2em; }
@media screen and (max-width: 479px) { .table-cancel > tbody > tr > td { width: 100%; float: left; clear: left; background: #FFF; padding: 5px 8px; empty-cells: hide !important; } }

.shool-trip-point { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0 5px; margin-top: 0; }
.shool-trip-point .point--block { width: 33.3333%; padding: 0 5px; position: relative; }
@media screen and (max-width: 768px) { .shool-trip-point .point--block { width: 50%; } }
@media screen and (max-width: 479px) { .shool-trip-point .point--block { width: 100%; } }
.shool-trip-point .point--block figure, .shool-trip-point .point--block img { line-height: 0; margin: 0; padding: 0; }
.shool-trip-point .point--block .caption { line-height: 1.5; font-size: 14px; padding: 0 .5em 0 0; margin-bottom: 15px; color: #007c92; }
.shool-trip-point .point--block .caption::before { content: attr(data-content); color: #FFF; background: #007c92; display: inline-block; padding: 0 .5em; margin-right: .3em; position: absolute; top: 0; font-size: 14px; }

.ul-school-trip { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; margin: 15px auto; }
.ul-school-trip li { width: 32%; padding: 1%; list-style: none; }
.ul-school-trip li .btn { width: 100%; text-align: center; }
@media screen and (max-width: 479px) { .ul-school-trip li { width: 100%; } }
.ul-school-trip li.auto { width: auto !important; letter-spacing: 0; }
@media screen and (max-width: 479px) { .ul-school-trip li.auto { width: 100% !important; } }

.ul-ride-point { list-style: none; margin: 0; position: relative; }
.ul-ride-point li { list-style: none; margin-bottom: .5em; }
.ul-ride-point li::before { content: attr(data-content); color: #FFF; background: #007c92; display: inline-block; padding: 0 .5em; margin-right: .5em; }
.ul-ride-point li .btn-sm { margin: 0; }
@media screen and (max-width: 479px) { .ul-ride-point li .btn-sm { margin: .2em auto; } }

.flex-union-plan { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; }
@media screen and (max-width: 640px) { .flex-union-plan { flex-direction: column; align-items: center; } }
.flex-union-plan .item { flex-basis: 18%; font-weight: 700; text-align: center; list-style: none; padding: 10px; margin: 0 .5em; color: #FFF; background: #00ac97; border-radius: 50px; }
@media screen and (max-width: 640px) { .flex-union-plan .item { width: 60%; margin: 0; } }
.flex-union-plan .plus { padding: 10px 5px; text-align: center; }
.flex-union-plan .plus::before { content: "＋"; font-weight: 700; }
@media screen and (max-width: 640px) { .flex-union-plan .plus { width: 2em; padding: 2px; } }

.union-slide-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 20px 0; }
.union-slide-wrap .slide--block { width: 100%; padding: 0; position: relative; }
@media screen and (max-width: 768px) { .union-slide-wrap .slide--block { width: 100%; padding: 0 10px; order: 1; } }

.table-union-plan { width: 100%; }
.table-union-plan thead tr th { font-size: 14px; padding: 10px; background: #006a6c; color: #FFF; text-align: center; vertical-align: middle !important; font-weight: 300; border-right: 1px dotted #CCC; }
.table-union-plan tbody tr { border-bottom: 1px dotted #CCC; }
.table-union-plan tbody th, .table-union-plan tbody td { font-size: 14px; padding: 10px !important; font-weight: 300; line-height: 1; vertical-align: top; border-top: none; text-align: center; border-right: 1px dotted #CCC; }
.table-union-plan tbody th:first-child, .table-union-plan tbody td:first-child { border-left: 1px dotted #CCC; font-weight: 400; }
.table-union-plan tbody th small { display: block; }
.table-union-plan tbody tr:last-child td { border-bottom: 1px dotted #CCC; }

/*////////////////////////////////////////////////////////////////////////////

Banquet pase scss

////////////////////////////////////////////////////////////////////////////*/
.banquet-feature { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; }
.banquet-feature .feature--block { width: 33.3333%; padding: 0 5px; position: relative; }
@media screen and (max-width: 768px) { .banquet-feature .feature--block { width: 100%; border-right: none; } }
.banquet-feature .feature--block figure, .banquet-feature .feature--block img { line-height: 0; margin: 0; padding: 0; }
.banquet-feature .feature--block .inner-box { padding: 0 10px; }
@media screen and (max-width: 768px) { .banquet-feature .feature--block .inner-box { padding: 0; } }
.banquet-feature .feature--block .inner-box .caption { display: flex; text-align: center; justify-content: center; align-items: center; padding: .3em .5em; margin-bottom: 15px; }
.banquet-feature .feature--block .inner-box h3 { font-family: "Noto Serif JP", serif; font-size: 16px; font-weight: 400; line-height: 1.4; letter-spacing: 1px; }
.banquet-feature .feature--block .inner-box h3 span { display: block; font-family: "Lato", sans-serif; font-size: .8em; font-weight: 300; letter-spacing: 1px; }

.banquet-feature .inner-box a .caption { display: block; color: white; background: #6a1917; }
.banquet-feature .inner-box a:hover .caption { background: #232939; }

.filter-gray { filter: grayscale(1); }

.hall-index { display: flex; flex-wrap: wrap; justify-content: flex-start; position: relative; padding: 0 5px; margin-bottom: 20px; }
.hall-index .hall { width: 33.3333%; display: inline-block; padding: 5px; }
@media screen and (max-width: 768px) { .hall-index .hall { width: 50%; } }

.hall .media { display: block; position: relative; overflow: hidden; line-height: 0; }
.hall .media .lower-box { position: absolute; bottom: 0; width: 100%; height: 2.5em; color: #FFF; vertical-align: middle; background-color: rgba(0, 0, 0, 0.5); box-sizing: border-box; overflow: hidden; display: flex; align-items: center; justify-content: center; }
@media screen and (max-width: 768px) { .hall .media .lower-box { height: 3em; } }
.hall .media .lower-box h4 { font: 300 16px/1 "Noto Serif JP", serif; letter-spacing: 1px; text-align: center; }
@media screen and (max-width: 479px) { .hall .media .lower-box h4 { font-size: 14px; letter-spacing: 0; } }
.hall .media .lower-box h4 span { font-family: "Noto Sans JP", sans-serif; font-size: .8em; padding-left: .5em; display: inline-block; }
@media screen and (max-width: 479px) { .hall .media .lower-box h4 span { display: block; padding: 3px 0 0; } }

.rest-index .rest a img, .rest-index .rest a:hover img, .hall-index .hall a img, .hall-index .hall a:hover .lower-box, .hall-index .hall a:hover img { -webkit-transition: all 1.2s; transition: all 1.2s; }

.hall-index .hall a { color: #707070; position: relative; display: block; }
.hall-index .hall a img { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.hall-index .hall a:hover .lower-box { color: #000; background: rgba(255, 255, 255, 0.7); }
.hall-index .hall a:hover img { filter: brightness(70%) saturate(1); -webkit-filter: brightness(70%) saturate(1); -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }

/*////////////////////////////////////////////////////////////////////////////

Wedding pase scss

////////////////////////////////////////////////////////////////////////////*/
.wedding-area { padding: 60px 30px; }
@media screen and (max-width: 479px) { .wedding-area { padding: 25px 15px; } }
.wedding-area::before { content: ""; display: block; position: fixed; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; background: url(../../banquet/img/bg/bg_wedding.jpg) center no-repeat; background-size: cover; }

.layer-overlay { background-color: rgba(255, 255, 255, 0.5); color: #FFF !important; }
@media screen and (max-width: 768px) { .layer-overlay { background-color: rgba(255, 255, 255, 0.6); } }
.layer-overlay .layer-future { text-align: center; padding: 80px 10px 80px; }
.layer-overlay .layer-future.right { padding: 100px 10px 60px; }
@media screen and (max-width: 768px) { .layer-overlay .layer-future { padding: 10px 5px 5px !important; }
  .layer-overlay .layer-future .page-heading { margin: 0; } }
.layer-overlay h2, .layer-overlay p { color: #000; }
.layer-overlay .btn-detail { color: #FFF; border: 1px solid rgba(216, 52, 115, 0.5); background: rgba(216, 52, 115, 0.5); text-shadow: 0 0 1px #942343; }
.layer-overlay .btn-detail:hover { background: rgba(216, 52, 115, 0.8); border: 1px solid rgba(216, 52, 115, 0.8); padding-left: 3em; padding-right: 2em; }

.header-vsl.wedding-vegas { height: 60vh !important; background-size: contain; }
@media screen and (max-width: 479px) { .header-vsl.wedding-vegas { height: 50vh !important; } }
.header-vsl.wedding-vegas::after { content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 1; background-color: rgba(35, 41, 57, 0.2); }

.header-vsl-section.wedding-head { padding-top: 35vh; }
@media screen and (max-width: 479px) { .header-vsl-section.wedding-head { padding-top: 50px; }
  .header-vsl-section.wedding-head .page-title { top: 15vh; } }

.wedding-pr { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; position: relative; margin-bottom: 20px; }
.wedding-pr .pr-item { font-weight: 400; padding: 1.5em 2em; margin: 1%; border-radius: 5px; width: 22%; position: relative; background-color: rgba(255, 224, 224, 0.8); }
@media screen and (max-width: 768px) { .wedding-pr .pr-item { width: 100%; padding: 1em; text-align: left; } }
.wedding-pr .pr-item:nth-child(even) { background-color: rgba(255, 237, 219, 0.8); }

@media screen and (max-width: 768px) { .wedding-pr .pr-item { display: flex; justify-content: flex-start; align-items: center; } }
.wedding-pr .pr-item img { display: block; margin: auto; width: 60px; opacity: .9; filter: contrast(80%); }
@media screen and (max-width: 768px) { .wedding-pr .pr-item img { width: 15%; } }
.wedding-pr .pr-item p { margin-bottom: 0; }
@media screen and (max-width: 768px) { .wedding-pr .pr-item p { width: 85%; padding-left: 1em; } }

.bg-color-pink { background: rgba(255, 224, 224, 0.5); }

.wedding-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; align-items: center; }
.wedding-wrap .w-visual-block { width: 50%; padding: 0; display: inline-block; }
@media screen and (max-width: 768px) { .wedding-wrap .w-visual-block { width: 100%; } }
.wedding-wrap .w-content-block { width: 50%; padding: 1em 3em; display: inline-block; }
@media screen and (max-width: 768px) { .wedding-wrap .w-content-block { width: 100%; padding: 0 1em; } }
.wedding-wrap .w-content-block .caption > p { font-size: 15px; font-weight: 300; line-height: 2; }
@media screen and (max-width: 768px) { .wedding-wrap .w-content-block .caption > p { line-height: 1.6; } }

/*////////////////////////////////////////////////////////////////////////////

Party Plan scss

////////////////////////////////////////////////////////////////////////////*/
.party-plan { margin-top: 0; display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
.party-plan .course { width: 32.6%; padding: 15px; margin-bottom: 5px; }
@media screen and (max-width: 768px) { .party-plan .course { width: 100%; padding: 0; border: none; } }
.party-plan .course:nth-child(1) { background: #fff1cf; }
.party-plan .course:nth-child(2) { background: #ffe4e1; }
.party-plan .course:nth-child(3) { background: #eaffea; }
.party-plan .course .caption { padding: 0 1em 1em; }
.party-plan .course .caption h3 { font-family: "Noto Serif JP", serif; text-align: center; line-height: 1.5; margin-bottom: .5em; }
.party-plan .course .caption h3 span { font-size: .7em; display: block; }
.party-plan .course .caption ul li { font-size: 14px; margin-bottom: .3em; }
.party-plan .drink { width: 100%; border: 5px solid #FFF; }

.course-winter .caption { padding: 1em; margin-bottom: 10px; }
.course-winter .caption:nth-child(1) { background: rgba(77, 67, 152, 0.2); }
.course-winter .caption:nth-child(2) { background: rgba(77, 67, 152, 0.28); }
.course-winter .caption:nth-child(3) { background: rgba(77, 67, 152, 0.35); }
.course-winter .caption h3 { font-family: "Noto Serif JP", serif; text-align: left; line-height: 1.5; }
.course-winter .caption h3 span { font-size: 1.3em; }
.course-winter .caption ul { margin-bottom: 0; }
.course-winter .caption ul li { font-size: 13px; line-height: 1; margin: 0 .5em 0 0; display: inline-block; }
.course-winter .caption ul li::before { content: "○"; }

.course-spring .caption { padding: 1em; margin-bottom: 10px; }
.course-spring .caption:nth-child(1) { background: rgba(163, 214, 204, 0.3); }
.course-spring .caption:nth-child(2) { background: rgba(163, 214, 204, 0.4); }
.course-spring .caption:nth-child(3) { background: rgba(163, 214, 204, 0.5); }
.course-spring .caption h3 { font-family: "Noto Serif JP", serif; text-align: left; line-height: 1.5; }
.course-spring .caption h3 span { font-size: 1.3em; }
.course-spring .caption ul { margin-bottom: 0; }
.course-spring .caption ul li { font-size: 13px; line-height: 1; margin: 0 .5em 0 0; display: inline-block; }
.course-spring .caption ul li::before { content: "○"; }

.course-summer .caption { padding: 1em; margin-bottom: 10px; border: 1px solid #FFF; }
.course-summer .caption:nth-child(1) { background: rgba(255, 255, 255, 0.65); }
.course-summer .caption:nth-child(2) { background: rgba(255, 255, 255, 0.65); }
.course-summer .caption:nth-child(3) { background: rgba(255, 255, 255, 0.65); }
.course-summer .caption h3 { font-family: "Noto Serif JP", serif; text-align: left; line-height: 1.5; font-weight: 600; }
.course-summer .caption h3 span { font-size: .7em; display: block; }
.course-summer .caption ul { margin-bottom: 0; }
.course-summer .caption ul li { font-size: 13px; line-height: 1; margin: 0 .5em 0 0; display: inline-block; }
.course-summer .caption ul li::before { content: "○"; }

dl.dl-menu { padding: .5em 1em; }
dl.dl-menu dt, dl.dl-menu dd { padding: 0; margin-bottom: 1em; }
@media only screen and (max-width: 479px) { dl.dl-menu dt, dl.dl-menu dd { font-size: 13px; } }
dl.dl-menu dt { color: #333; font-weight: 500; width: 5em; float: left; clear: left; position: relative; }
@media only screen and (max-width: 479px) { dl.dl-menu dt { float: none; margin-bottom: .5em; } }
dl.dl-menu dd { color: #666; margin-left: 5em; }
@media only screen and (max-width: 640px) { dl.dl-menu dd { margin-left: .5em; } }
dl.dl-menu dd ul { margin-bottom: 0; }
dl.dl-menu dd ul li { font-size: 13px; line-height: 1; margin: 0 .5em; display: inline-block; }
dl.dl-menu dd ul li::before { content: "○"; }

ul.ul-drink { margin: 5px 15%; }
@media only screen and (max-width: 640px) { ul.ul-drink { margin: 5px 0; } }
ul.ul-drink li { line-height: 1; margin: 0 .5em 0 0; display: inline-block; }
ul.ul-drink li::before { content: "●"; color: #999; }

ul.ul-tokuten-flex { display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-around; align-content: center; margin-bottom: 20px; }
ul.ul-tokuten-flex li { list-style: none; width: 30%; text-align: center; vertical-align: middle; padding: 1em; background: #fff3b8; border: 1px solid #fdd35c; border-radius: 5px; }
@media only screen and (max-width: 640px) { ul.ul-tokuten-flex li { width: 49%; margin-bottom: 5px; } }
ul.ul-tokuten-flex li.w25 { width: 24.5%; padding: 1em .5em; }
@media only screen and (max-width: 640px) { ul.ul-tokuten-flex li.w25 { width: 49%; margin-bottom: 5px; } }
ul.ul-tokuten-flex li.plan753 { width: 49%; }
@media only screen and (max-width: 640px) { ul.ul-tokuten-flex li.plan753 { width: 100%; text-align: left; } }

.takeout-block { display: flex; flex-direction: row; align-items: center; }
.takeout-block .visual { width: 35%; }
.takeout-block .caption { width: 65%; text-align: center; }

ul.ul-tokuten { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 20px; }
ul.ul-tokuten li { display: inline-block; margin-right: 1.5em; }
ul.ul-tokuten li::before { content: "●"; color: #9999ff; }

.bg-summer { background: #b3dced; background: -moz-linear-gradient(top, #b3dced 0%, white 100%); background: -webkit-gradient(left top, left bottom, color-stop(0%, #b3dced), color-stop(100%, white)); background: -webkit-linear-gradient(top, #b3dced 0%, white 100%); background: -o-linear-gradient(top, #b3dced 0%, white 100%); background: -ms-linear-gradient(top, #b3dced 0%, white 100%); background: linear-gradient(to bottom, #b3dced 0%, white 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3dced', endColorstr='#ffffff', GradientType=0 ); }

.bg-purple { background: #4d4398; background: -moz-linear-gradient(top, rgba(77, 67, 152, 0.5) 0%, white 100%); background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(77, 67, 152, 0.5)), color-stop(100%, white)); background: -webkit-linear-gradient(top, rgba(77, 67, 152, 0.5) 0%, white 100%); background: -o-linear-gradient(top, rgba(77, 67, 152, 0.5) 0%, white 100%); background: -ms-linear-gradient(top, rgba(77, 67, 152, 0.5) 0%, white 100%); background: linear-gradient(to bottom, rgba(77, 67, 152, 0.5) 0%, white 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d4398', endColorstr='#ffffff', GradientType=0 ); }

.bg-cover-winter { background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; background-image: url("../img/bg/25101.jpg"); }
@media screen and (max-width: 479px) { .bg-cover-winter { padding: 30px 0; } }
.bg-cover-winter .overlay::after { background-color: rgba(255, 255, 255, 0.8); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.bg-cover-spring { background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; background-image: url("../img/bg/bg_spring_party.jpg"); }
@media screen and (max-width: 479px) { .bg-cover-spring { padding: 30px 0; } }
.bg-cover-spring .overlay::after { background-color: rgba(255, 255, 255, 0.3); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.bg-cover-summer { background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; background-image: url("../img/bg/bg_summer_party.jpg"); }
@media screen and (max-width: 479px) { .bg-cover-summer { padding: 30px 0; } }
.bg-cover-summer .overlay::after { background-color: rgba(255, 255, 255, 0.4); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.bg-cover-autumn { background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; background-image: url("../img/bg/bg_autumn_party.jpg"); }
@media screen and (max-width: 479px) { .bg-cover-autumn { padding: 30px 0; } }
.bg-cover-autumn .overlay::after { background-color: rgba(255, 255, 255, 0.4); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

/*////////////////////////////////////////////////////////////////////////////

facility pase scss

////////////////////////////////////////////////////////////////////////////*/
.facility-wrap { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 30px 0; }
.facility-wrap.item-center { align-items: center; }
.facility-wrap .facility--visual { width: 50%; padding: 0; display: inline-block; }
@media screen and (max-width: 768px) { .facility-wrap .facility--visual { width: 100%; padding: 10px; order: 1; } }
.facility-wrap .facility--block { width: 50%; padding: 0 3em; display: inline-block; }
@media screen and (max-width: 768px) { .facility-wrap .facility--block { width: 100%; padding: 0 2em; order: 0; } }
.facility-wrap .facility--block .page-heading { margin: 0 0 15px; }
.facility-wrap .facility--block .page-heading h3 { font-size: 30px; letter-spacing: 2px; }
@media screen and (max-width: 479px) { .facility-wrap .facility--block .page-heading h3 { font-size: 24px; letter-spacing: 0; } }
.facility-wrap .facility--block .caption > p { font-size: 14px; line-height: 1.8; }
@media screen and (max-width: 768px) { .facility-wrap .facility--block .caption > p { line-height: 1.6; } }

.facility-wrap .notes { width: 100%; margin: 0 3em 1em; padding: 1em; border-top: 1px dotted #CCC; border-bottom: 1px dotted #CCC; }
@media screen and (max-width: 768px) { .facility-wrap .notes { margin: 0 .5em .5em; } }
.facility-wrap .notes p { font-size: 13px; }

.goto-coupon img { width: 30%; display: block; margin: auto; }

.mov-feature { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; }
.mov-feature .mov--block { width: 33.3333%; padding: 0 5px; position: relative; }
@media screen and (max-width: 768px) { .mov-feature .mov--block { width: 100%; border-right: none; } }

.mov-feature .mov--block .inner-box { padding: 0 10px; }
@media screen and (max-width: 768px) { .mov-feature .mov--block .inner-box { padding: 0; } }
.mov-feature .mov--block .inner-box .caption { font-size: 13px; color: #555; text-align: center; margin-bottom: 15px; }

.facility-wrap ul.ul-data { display: block; position: relative; list-style: none; }
.facility-wrap ul.ul-data li { text-align: left; list-style: none; font-size: 14px; margin-bottom: .3em; }
.facility-wrap ul.ul-data li::before { content: attr(data-content); font-size: 12px !important; line-height: 1; width: 7em; text-align: center; color: #FFF; background-color: #aaaab0; display: inline-block; padding: .3em; margin-right: .8em; }

.bg-cover-area { color: #FFF; background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; z-index: 1; padding: 70px 0; text-align: center; }
@media screen and (max-width: 479px) { .bg-cover-area { padding: 30px 0; } }
.bg-cover-area .overlay::after { background-color: rgba(44, 79, 84, 0.5); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.bg-cover-area.bg-golf { background-image: url("../../facility/img/bg/bg_golf02.jpg"); }
.bg-cover-area.bg-golf::before { content: ''; background: inherit; -webkit-filter: blur(5px); -moz-filter: blur(5px); -o-filter: blur(5px); -ms-filter: blur(5px); filter: blur(5px); position: absolute; top: -5px; left: 0px; right: 0px; bottom: -5px; z-index: -99; }

.bg-cover-area .h2-cover { font: 400 36px/1.5 "Cormorant SC", serif; color: #FFF; letter-spacing: 2px; margin-bottom: 0; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); }
@media screen and (max-width: 479px) { .bg-cover-area .h2-cover { font-size: 30px; } }

.bg-cover-area .p-title { letter-spacing: 2px; color: white; text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }
@media screen and (max-width: 479px) { .bg-cover-area .p-title { letter-spacing: 0; } }

ul.area-goto { display: flex; flex-wrap: wrap; justify-content: center; position: relative; padding: 0; margin-top: 0; list-style: none; }
ul.area-goto li { width: 45%; font: 500 18px/1.5 "Open Sans", sans-serif; list-style: none; padding: 10px; text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2); }
@media screen and (max-width: 768px) { ul.area-goto li { width: 50%; font-size: 14px; padding: 0 3px; } }
ul.area-goto li a { display: block; text-align: center; color: #FFF; padding: 1em 1em; background: rgba(0, 0, 0, 0.2); border: 1px solid rgba(255, 255, 255, 0.6); position: relative; }
ul.area-goto li a:hover { color: #FFF; background: rgba(0, 0, 0, 0.5); }
ul.area-goto li a.spot::before, ul.area-goto li a.golf::before { font-size: 2em; font-family: 'icofont'; font-style: normal; font-weight: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; display: block; }
ul.area-goto li a.spot::before { content: "\ef8a"; }
ul.area-goto li a.golf::before { content: "\eda7"; }

.ul-area-guide { margin-left: 0; padding-left: 0; display: flex; flex-wrap: wrap; position: relative; }

.ul-area-guide li { line-height: 30px; width: 33.3333%; list-style: none; }
@media screen and (max-width: 768px) { .ul-area-guide li { width: 50%; } }
@media screen and (max-width: 479px) { .ul-area-guide li { width: 100%; } }
.ul-area-guide li a { font-size: 13px; color: #555; background: #FFF; display: block; padding: .5em 1em; margin: 0 .3em .3em 0; border: 1px solid #dddddd; border-radius: 4px; }
.ul-area-guide li a:hover { color: #FFF; background-color: #000; }
.ul-area-guide li a::after { font-family: 'icofont'; content: "\ef1f"; font-style: normal; font-weight: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 8px; float: right; }
@media screen and (max-width: 479px) { .ul-area-guide li a { font-size: 12px; } }

/*////////////////////////////////////////////////////////////////////////////

recrui scss

////////////////////////////////////////////////////////////////////////////*/
.stff-wrap { display: flex; flex-direction: row; flex-wrap: wrap; }
@media screen and (max-width: 640px) { .stff-wrap { flex-direction: column; } }
.stff-wrap .staff-view { flex-basis: 25%; }
@media screen and (max-width: 640px) { .stff-wrap .staff-view { width: 50%; order: 0; } }
.stff-wrap .staff-caption { flex-basis: 75%; padding: 0 2em; }
@media screen and (max-width: 640px) { .stff-wrap .staff-caption { width: 100%; padding: 1em 0; order: 1; } }
.stff-wrap .staff-caption h4 { font-size: 20px; font-weight: 700; margin-bottom: 1em; }
@media screen and (max-width: 640px) { .stff-wrap .staff-caption h4 { font-size: 18px; } }
.stff-wrap .staff-caption p { line-height: 1.8; }

.table-recruit { margin-bottom: 20px; border: solid 1px #CCC; }
.table-recruit > tbody > tr { border-bottom: 1px dotted #DDD; font-size: 14px; }
.table-recruit > tbody > tr:first-child { border-top: 1px dotted #DDD; }
@media screen and (max-width: 640px) { .table-recruit > tbody > tr { border-bottom: none; font-size: 13px; } }
.table-recruit > tbody > tr > th { padding: .8em 2em !important; width: 20%; font-weight: 500; white-space: nowrap; background: #F5F5F5; border-right: solid 1px #CCC; }
@media screen and (max-width: 640px) { .table-recruit > tbody > tr > th { padding: .5em 1em !important; width: 100%; float: left; clear: left; text-align: left; border-right: none; } }
.table-recruit > tbody > tr > td { font-weight: 300; padding: .8em 2em !important; }
@media screen and (max-width: 640px) { .table-recruit > tbody > tr > td { padding: .5em 1em !important; width: 100%; float: left; clear: left; background: #FFF; empty-cells: hide !important; } }

.ul-for-staff { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; margin: 0; }
.ul-for-staff li { flex-basis: 30%; list-style: none; text-align: center; font-size: .8em; }
.ul-for-staff li img { display: block; }

/*////////////////////////////////////////////////////////////////////////////

recrui scss

////////////////////////////////////////////////////////////////////////////*/
.event-wrap { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
@media screen and (max-width: 640px) { .event-wrap { flex-direction: column; } }
.event-wrap .event-view { width: 25%; display: block; }
.event-wrap .event-view a:hover img { opacity: .7; }
@media screen and (max-width: 640px) { .event-wrap .event-view { width: 100%; margin: auto; }
  .event-wrap .event-view a { pointer-events: none; } }
.event-wrap .event-caption { width: 70%; padding: 0; }
@media screen and (max-width: 640px) { .event-wrap .event-caption { width: 100%; padding: 1em 0; } }
.event-wrap .event-caption h3 { font-size: 22px; font-weight: 700; margin-bottom: 1em; }
@media screen and (max-width: 640px) { .event-wrap .event-caption h3 { font-size: 18px; } }
.event-wrap .event-caption h3 span { font-size: .8em; }
.event-wrap .event-caption p { line-height: 1.8; }

.item-wine { display: flex; flex-direction: row; flex-wrap: wrap; padding: 15px 10px; }
@media screen and (max-width: 640px) { .item-wine { padding-left: 0; padding-right: 0; } }
.item-wine .wine-v { width: 20%; }
@media screen and (max-width: 640px) { .item-wine .wine-v { width: 30%; margin: auto; } }
.item-wine .wine-caption { width: 80%; display: block; }
@media screen and (max-width: 640px) { .item-wine .wine-caption { width: 100%; } }

.wine-caption .p-region { margin-bottom: 0; }
.wine-caption h3 { font-family: "Noto Serif JP", serif; font-weight: 500; margin-bottom: .5em; }
.wine-caption h3 span { font-family: "Open Sans", sans-serif; font-size: .7em; font-weight: 600; line-height: 1; display: block; }
.wine-caption .ul-item-inline { padding-bottom: .5em; }
.wine-caption .ul-item-inline li { display: inline-block; padding-right: 2em; }

.hr-oblique-s { border: 0; border-bottom: none; height: 3px; background-image: repeating-linear-gradient(-45deg, #CCC 0, #CCC 1px, transparent 0, transparent 50%); background-size: 3px 3px; }

/*//////////////////////////////////////////////////////

GoTo

//////////////////////////////////////////////////////*/
.bg-goto { width: 100%; background: #e0efff; padding: 1em 2em; margin: 10px 15px; border: 2px solid #b7dbff; border-radius: 3px; }
@media screen and (max-width: 479px) { .bg-goto { margin: 10px; padding: 1em; } }
.bg-goto .page-heading h3.p-day { position: relative; font-weight: 600; color: #D00; }
.bg-goto .page-heading h3.p-day::before { content: "【日帰り】"; font-size: .8em; }
.bg-goto .p-lead { text-align: center; font-size: 15px !important; font-weight: 500; }
@media screen and (max-width: 479px) { .bg-goto .p-lead { text-align: left; font-size: 14px; } }
@media screen and (max-width: 479px) { .bg-goto .p-lead br { display: none; } }
.bg-goto .p-date { font-size: 16px; }
@media screen and (max-width: 479px) { .bg-goto .p-date { font-size: 14px; } }

.bg-goto .goto-price { text-align: center; width: 640px; margin: auto; }
.bg-goto .goto-price img { width: 100%; }
@media screen and (max-width: 479px) { .bg-goto .goto-price { width: 100%; } }

.bg-goto-grade { background: #bcdeff; background: -moz-linear-gradient(top, #bcdeff 0%, #f4f9ff 100%); background: -webkit-gradient(left top, left bottom, color-stop(0%, #bcdeff), color-stop(100%, #f4f9ff)); background: -webkit-linear-gradient(top, #bcdeff 0%, #f4f9ff 100%); background: -o-linear-gradient(top, #bcdeff 0%, #f4f9ff 100%); background: -ms-linear-gradient(top, #bcdeff 0%, #f4f9ff 100%); background: linear-gradient(to bottom, #bcdeff 0%, #f4f9ff 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bcdeff', endColorstr='#f4f9ff', GradientType=0 ); }

/*////////////////////////////////////////////////////////////////////////////

BBQ scss

////////////////////////////////////////////////////////////////////////////*/
.page-heading .h-bbq { font-size: 36px; font-weight: 500; font-family: "Noto Sans JP", sans-serif; color: #28bbf8; }
@media screen and (max-width: 768px) { .page-heading .h-bbq { font-size: 28px; } }

.h2-bbq { font-size: 26px; text-align: center; }
@media screen and (max-width: 768px) { .h2-bbq { font-size: 20px; } }

.bbq-plan-wrap { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; }
.bbq-plan-wrap .block-bbq-plan { width: 32%; }
@media screen and (max-width: 768px) { .bbq-plan-wrap .block-bbq-plan { width: 100%; } }
.bbq-plan-wrap .block-bbq-plan h3 { text-align: center; font-weight: 600; }
.bbq-plan-wrap .block-bbq-plan h3::before { content: attr(data-content); color: #ea5532; font-family: "Lato", sans-serif; font-size: 1.4em; }
.bbq-plan-wrap .block-bbq-plan .caption { padding: .5em; border: solid 2px rgba(251, 218, 200, 0.8); }

.bbq-plan-wrap .dl-bbq dt { float: left; width: 10em; }
.bbq-plan-wrap .dl-bbq dd { width: auto; color: #e8383d; }
.bbq-plan-wrap .dl-bbq dd .price { font-family: "Lato", sans-serif; font-size: 1.4em; }

.bbq-wrap { margin-top: 0; display: flex; flex-wrap: wrap; justify-content: flex-start; }
.bbq-wrap .bbq--item { width: 25%; border: 5px solid #FFF; background: rgba(255, 241, 207, 0.4); }
.bbq-wrap .bbq--item:nth-child(even) { background: rgba(160, 216, 239, 0.4); }
@media screen and (max-width: 768px) { .bbq-wrap .bbq--item { width: 50%; padding: 0; border: 2px solid #FFF; } }
.bbq-wrap .bbq--item .caption { padding: 0 1em 1em; }
.bbq-wrap .bbq--item .caption h3 { font-family: "Noto Serif JP", serif; text-align: center; line-height: 1.5; margin-bottom: .5em; }
.bbq-wrap .bbq--item .caption h3 span { font-size: .7em; display: block; }
.bbq-wrap .bbq--item .caption ul, .bbq-wrap .bbq--item .caption li { font-size: 13px; }
.bbq-wrap .bbq--item.drink { width: 100%; background: rgba(164, 213, 189, 0.4); }
.bbq-wrap .bbq--item.drink .caption { padding-top: 1em; }

.bbq-price { border: 1px solid #333; }
.bbq-price thead th { background: #EEE; text-align: center; font-weight: normal; border-bottom: 1px solid #333; }
.bbq-price tbody > tr > th { text-align: center; vertical-align: middle !important; border-bottom: 1px solid #333; border-right: 1px solid #333; }
.bbq-price tbody > tr > td { text-align: center; border-bottom: 1px solid #333; }
.bbq-price tbody > tr > td.td-a { background-color: #c1e0ff; }
.bbq-price tbody > tr > td.td-b { background-color: #ffddbc; }

.ul-bbq-month { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; }
.ul-bbq-month li { width: 32%; list-style: none; margin: 0; padding: 5px; }
@media screen and (max-width: 768px) { .ul-bbq-month li { width: 90%; padding: 0; } }

/*////////////////////////////////////////////////////////////////////////////
 access pase scss

////////////////////////////////////////////////////////////////////////////*/
.nav-access { display: flex; justify-content: center; position: relative; padding: 0; margin-top: 0; list-style: none; }
@media screen and (max-width: 768px) { .nav-access { flex-wrap: wrap; justify-content: flex-start; } }
.nav-access li { width: 20%; list-style: none; display: inline-block; }
@media screen and (max-width: 768px) { .nav-access li { width: 50%; font-size: 12px; } }
.nav-access li a { color: #FFF; text-align: center; background: #00afcc; display: block; width: 100%; padding: .5em; border: 3px solid #FFF; }
@media screen and (max-width: 768px) { .nav-access li a { text-align: left; padding: .8em .5em; border: 1px solid #FFF; } }
.nav-access li a:hover, .nav-access li a.active { background: #232939; }
.nav-access li a.ic-car::before, .nav-access li a.ic-train::before, .nav-access li a.ic-bus:before { display: block; font-size: 24px; }
@media screen and (max-width: 768px) { .nav-access li a.ic-car::before, .nav-access li a.ic-train::before, .nav-access li a.ic-bus:before { font-size: 16px; display: inline-block; } }

.ic-car::before, .ic-train::before, .ic-bus::before { font-family: 'icofont'; color: inherit; display: inline-block; line-height: 1; padding-right: 5px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.ic-car::before { content: "\ee1f"; }

.ic-train::before { content: "\ee38"; }

.ic-bus::before { content: "\ee17"; }

ul.ul-guide { display: flex; flex-wrap: wrap; flex-direction: column; margin: 5px 0 15px 15px; }
ul.ul-guide li { margin-right: 1.5em; margin-bottom: .5em; list-style: none; }
ul.ul-guide li::before { content: "■"; color: #00afcc; margin-left: -1em; }

ul.ul-guide li ul { list-style: disc !important; margin-left: 1.5em; }
ul.ul-guide li ul li { list-style: circle !important; font-size: .9em; margin-bottom: 0; }
ul.ul-guide li ul li::before { content: ""; margin-left: 0; }

.shuttle-bus, .tokyo-bus { display: flex; flex-wrap: wrap; justify-content: flex-start; position: relative; }
.shuttle-bus .bus-block, .tokyo-bus .bus-block { width: 33.3333%; padding: 5px 10px; }
@media screen and (max-width: 479px) { .shuttle-bus .bus-block, .tokyo-bus .bus-block { padding: 0 !important; } }
.shuttle-bus .bus-block .bus--title, .tokyo-bus .bus-block .bus--title { align-items: center; text-align: center; display: block; vertical-align: middle; color: #FFF; background: #00608d; padding: .5em .3em; margin-right: 5px; }
@media screen and (max-width: 640px) { .shuttle-bus .bus-block .bus--title, .tokyo-bus .bus-block .bus--title { margin-right: 1px; } }
.shuttle-bus .bus-block .bus--title h4, .tokyo-bus .bus-block .bus--title h4 { font-size: 14px; font-weight: 500; line-height: 1.4; padding-bottom: .5em; }
@media screen and (max-width: 479px) { .shuttle-bus .bus-block .bus--title h4, .tokyo-bus .bus-block .bus--title h4 { font-size: 10px; } }
.shuttle-bus .bus-block .bus--title span, .tokyo-bus .bus-block .bus--title span { display: block; font-size: .8em; font-weight: 300; line-height: 1; }
.shuttle-bus .bus-block .bus--title i, .tokyo-bus .bus-block .bus--title i { padding: 0 .1em; }
.shuttle-bus .bus-block .table, .tokyo-bus .bus-block .table { overflow-x: scroll; }
.shuttle-bus .bus-block table, .tokyo-bus .bus-block table { font-family: "Lato", sans-serif; width: 100%; float: left; border-right: 2px solid #FFF; }
@media screen and (max-width: 640px) { .shuttle-bus .bus-block table, .tokyo-bus .bus-block table { border-right: 1px solid #FFF; } }
.shuttle-bus .bus-block table tbody td, .tokyo-bus .bus-block table tbody td { width: 100%; text-align: center; border-collapse: collapse; white-space: nowrap; }
@media screen and (max-width: 640px) { .shuttle-bus .bus-block table tbody td, .tokyo-bus .bus-block table tbody td { font-size: .9em; } }
.shuttle-bus .bus-block table tr:nth-child(odd) > td, .tokyo-bus .bus-block table tr:nth-child(odd) > td { background-color: #f7f6fb; }
.shuttle-bus .bus-block table tr:last-child, .tokyo-bus .bus-block table tr:last-child { border-bottom: 1px solid #f7f6fb; }

@media screen and (max-width: 479px) { .shuttle-bus .bus--title { font-size: .9em; } }
.shuttle-bus table { position: relative; }
.shuttle-bus table .period { color: #D00; }
.shuttle-bus table .period::before { content: attr(data-label); color: #D00; padding-right: .5em; }
@media screen and (max-width: 640px) { .shuttle-bus table .period { padding-right: .3em; font-size: .55em; } }
.shuttle-bus table del { color: #999; }

.city-bus thead > tr > th, .tokyo-bus thead > tr > th { background: #00608d; color: #FFF; text-align: center; font-size: 13px; font-weight: 500; }
@media screen and (max-width: 479px) { .city-bus thead > tr > th, .tokyo-bus thead > tr > th { font-size: 10px; } }
.city-bus tbody > tr > td, .tokyo-bus tbody > tr > td { font-family: "Lato", sans-serif; text-align: center; background: #FFF; padding: 1em !important; }
@media screen and (max-width: 479px) { .city-bus tbody > tr > td, .tokyo-bus tbody > tr > td { padding: .3em !important; } }
.city-bus tbody tr:nth-child(odd) > td, .tokyo-bus tbody tr:nth-child(odd) > td { background-color: #f7f6fb; }
.city-bus tbody > tr.stop > td, .tokyo-bus tbody > tr.stop > td { text-decoration: line-through; color: #999; }
.city-bus tbody > tr.stop > td::before, .tokyo-bus tbody > tr.stop > td::before { font-family: "icofont"; content: "\eee3"; color: #D00; text-decoration: none !important; }

.city-bus tbody td::before { font-family: 'icofont'; content: "\ea69"; color: #999; float: left; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.city-bus tbody td:first-child::before { content: ""; }
.city-bus tbody td.no-arrow::before { content: ""; }

.city-bus thead th span { display: block; font-family: "Lato", sans-serif; font-weight: 300; }

.tokyo-bus .bus-block .table { width: 100%; }
.tokyo-bus .bus-block .table tbody td { width: 50%; text-align: center; padding: .5em 1em !important; }
.tokyo-bus .bus-block .table tbody td:nth-child(2)::before { font-family: 'icofont'; content: "\ea69"; color: #999; float: left; margin-left: -1em; }
.tokyo-bus .bus-block .table thead th span { display: block; }

@media screen and (max-width: 479px) { .tokyo-bus .bus-block { width: 100%; } }
.stop { text-decoration: line-through; opacity: .7; }

dl.dl-bus { padding: .5em 0; }
dl.dl-bus dt, dl.dl-bus dd { padding: 0; margin-bottom: 1em; }
@media only screen and (max-width: 479px) { dl.dl-bus dt, dl.dl-bus dd { font-size: 13px; } }
dl.dl-bus dt { color: #333; font-weight: 500; background: #F0F0F0; text-align: center; width: 5em; float: left; clear: both; position: relative; }
@media only screen and (max-width: 479px) { dl.dl-bus dt { margin-bottom: .5em; } }
dl.dl-bus dd { color: #333; margin-left: 6em; }

.platform a.image-popup img { background: #FFF; border: 1px dotted #00AFCC; }

/*////////////////////////////////////////////////////////////////////////////

Member LOGIN CONFIGURATION PAGE

////////////////////////////////////////////////////////////////////////////*/
.form-login { max-width: 400px; margin: 200px auto 0; background: #fff; border-radius: 5px; -webkit-border-radius: 5px; }
@media screen and (max-width: 768px) { .form-login { margin-top: 80px; } }

.form-login h2.form-login-heading { font-family: "Cormorant SC", serif; font-size: 20px; font-weight: 300; margin: 0; padding: 25px 20px; text-align: center; background: #00bfff; border-radius: 5px 5px 0 0; -webkit-border-radius: 5px 5px 0 0; color: #FFF; }

.login-wrap { padding: 20px; }
.login-wrap .form-control { display: block; height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #ccc; border-radius: 4px; }
.login-wrap .form-control::-moz-placeholder { color: #aaaab0; opacity: 1; }
.login-wrap .form-control::-ms-input-placeholder { color: #aaaab0; }
.login-wrap .form-control::-webkit-input-placeholder { color: #aaaab0; }
.login-wrap .btn { color: #FFF; background-color: #00bfff; border-color: #48bcb4; border-radius: 5px; -webkit-border-radius: 5px; }
.login-wrap .btn:hover, .login-wrap .btn:focus, .login-wrap .btn:active { color: #FFF; background-color: #202f55; border-color: #202f55; }

/*////////////////////////////////////////////////////////////////////////////

Sitemap scss

////////////////////////////////////////////////////////////////////////////*/
.sitemap { display: flex; flex-wrap: wrap; justify-content: flex-start; }
.sitemap ul, .sitemap li { list-style: none; margin: 0; padding: 0; }
.sitemap .site-block { width: 50%; padding-right: 20px; display: inline-block; }
.sitemap .site-block:nth-child(2) { padding-top: 2.8em; }
@media only screen and (max-width: 479px) { .sitemap .site-block { width: 100%; padding-top: 0 !important; } }

.sitemap ul a { display: block; padding: .2em .5em; }
.sitemap ul a::before { content: "■"; padding-right: 2px; color: darkgray; display: inline-block; }
.sitemap ul ul a::before { content: ""; }
.sitemap ul a:hover { background: #232939; color: white; }

.sitemap ul li ul { margin-top: .5em; margin-bottom: .75em; margin-left: 4em; }
.sitemap ul li ul li { margin-bottom: .25em; position: relative; }
.sitemap ul li ul li::before { content: ""; position: absolute; top: -0.5em; left: -16px; width: 10px; height: calc(100% + 1em); border-left: 1px solid #999; }
.sitemap ul li ul li:last-child::before { height: calc(1em + .5em); }
.sitemap ul li ul li::after { content: ""; position: absolute; top: 1em; left: -16px; width: 15px; border-bottom: 1px solid #999; }

/*////////////////////////////////////////////////////////////////////////////

Error 404

////////////////////////////////////////////////////////////////////////////*/
.error-page { padding-top: 25vh; padding-bottom: 30vh; overflow: hidden; text-align: center; width: 100%; background-size: cover; position: relative; background-position: center top; z-index: 1; background-image: url(../img/bg/bg_404.jpg); }
@media screen and (max-width: 479px) { .error-page { padding-top: 20vh; padding-bottom: 50px; } }
.error-page::after { background-color: rgba(0, 0, 0, 0.4); position: absolute; width: 100%; height: 100%; content: ""; top: 0; left: 0; z-index: -1; }

.error-page .not-found-text h2 { color: rgba(104, 195, 197, 0.6); font-size: 130px; font-weight: 700; letter-spacing: 3px; font-family: 'Open Sans', sans-serif; }
@media screen and (max-width: 479px) { .error-page .not-found-text h2 { font-size: 60px; } }

.error-page .not-found-text h3 { color: #FFF; font-size: 40px; font-weight: 500; letter-spacing: 5px; margin-top: 15px; margin-bottom: 15px; font-family: "Cormorant SC", serif; }
@media screen and (max-width: 479px) { .error-page .not-found-text h3 { font-size: 24px; } }

.error-page p { color: #FFF; line-height: 2; letter-spacing: 2px; margin-bottom: 2em; }

.not-found-text > a { background-color: rgba(255, 255, 255, 0); display: inline-block; margin-top: 15px; padding: 15px 30px; border-radius: 0; }

.not-found-text > a:hover, .not-found-text > a:focus { background-color: rgba(255, 255, 255, 0.3); color: #2c3e50; }

.error-page .btn-detail { color: #fff; border: 1px solid rgba(255, 255, 255, 0.4); background-color: rgba(0, 0, 0, 0.3); }
.error-page .btn-detail:hover, .error-page .btn-detail:focus, .error-page .btn-detail:active { background-color: #66c3c6; }

.btn:hover, .btn:focus, .btn:active { box-shadow: none; outline: none !important; border-color: transparent; }

#footer-section-404 #footer-section { background-image: none !important; }

/*////////////////////////////////////////////////////////////////////////////

nav scss

////////////////////////////////////////////////////////////////////////////*/
.anchorlink { position: relative; top: -100px; display: block; z-index: -9999; }
@media screen and (max-width: 479px) { .anchorlink { top: -50px; } }

.pager .pagination { text-align: center; }
.pager .pagination li { margin: 0 2px; padding: 0; display: inline-block; background: #0073a8; width: 40px; height: 40px; text-align: center; position: relative; border-radius: 5px; }
.pager .pagination li a { vertical-align: middle; position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-align: center; display: table; color: #fff; text-decoration: none; }
.pager .pagination li a span { display: table-cell; vertical-align: middle; }
.pager .pagination li a:hover, .pager .pagination li a.active { color: #000; background: #d3d6dd; border-radius: 5px; }

@media only screen and (max-width: 767px) { .pager .pagination li { display: none; }
  .pager .pagination li.pre, .pager .pagination li.next { display: inline-block; width: 40%; height: 50px; text-align: center; }
  .pager .pagination li.pre a, .pager .pagination li.next a { width: 100%; text-align: center; }
  .pager .pagination li.pre span::after { content: "　前の10件へ"; }
  .pager .pagination li.next span::before { content: "次の10件へ　"; } }
.sp-event a { pointer-events: auto; }
@media only screen and (max-width: 767px) { .sp-event a { pointer-events: none; } }

.nav-flex-hall { display: flex; flex-wrap: nowrap; justify-content: center; padding: 0; margin: 0; }
@media screen and (max-width: 1024px) { .nav-flex-hall { flex-wrap: wrap; } }

.nav-flex-hall li { text-align: center; list-style: none; display: table; line-height: none; overflow: hidden; margin: 0; padding: 0; }
@media screen and (max-width: 899px) { .nav-flex-hall li { width: 33.3333%; } }
@media screen and (max-width: 479px) { .nav-flex-hall li { width: 50%; } }
.nav-flex-hall li a { font-size: 13px; color: #333; background: rgba(255, 255, 255, 0.5); display: block; margin: 2px; padding: 6px 15px; border: 1px solid rgba(35, 41, 57, 0.3); }
@media screen and (max-width: 479px) { .nav-flex-hall li a { font-size: 12px; padding: 5px; overflow: hidden; text-overflow: ellipsis; } }
.nav-flex-hall li a:hover, .nav-flex-hall li a.active { color: white; background-color: #232939; border: 1px solid #232939; text-decoration: none; }

.nav-flex-facility, .nav-flex-rest { display: flex; flex-wrap: wrap; justify-content: flex-start; padding: 0; margin: 0; }
@media screen and (max-width: 1024px) { .nav-flex-facility, .nav-flex-rest { flex-wrap: wrap; } }
.nav-flex-facility li, .nav-flex-rest li { width: 20%; text-align: center; list-style: none; display: table; line-height: none; overflow: hidden; margin: 0; padding: 0; }
@media screen and (max-width: 899px) { .nav-flex-facility li, .nav-flex-rest li { width: 33.3333%; } }
@media screen and (max-width: 479px) { .nav-flex-facility li, .nav-flex-rest li { width: 50%; } }
.nav-flex-facility li a, .nav-flex-rest li a { font-size: 13px; color: #333; background: rgba(255, 255, 255, 0.5); display: block; margin: 2px; padding: 6px 15px; border: 1px solid rgba(35, 41, 57, 0.3); }
@media screen and (max-width: 479px) { .nav-flex-facility li a, .nav-flex-rest li a { font-size: 12px; padding: 5px; overflow: hidden; text-overflow: ellipsis; } }
.nav-flex-facility li a:hover, .nav-flex-facility li a.active, .nav-flex-rest li a:hover, .nav-flex-rest li a.active { color: white; background-color: #232939; border: 1px solid #232939; text-decoration: none; }

.nav-flex-rest { justify-content: center; }
.nav-flex-rest li { width: 25%; }
@media screen and (max-width: 899px) { .nav-flex-rest li { width: 50%; } }

/*////////////////////////////////////////////////////////////////////////////

table scss

////////////////////////////////////////////////////////////////////////////*/
.table-rest { width: 100%; border: 1px solid #66c3c6; }
.table-rest thead tr th { font-size: 14px; padding: .3em; background: #66c3c6; color: #FFF; text-align: center; vertical-align: middle; font-weight: 400; }
.table-rest tbody tr td { font-family: "Lato", sans-serif; font-size: 14px; padding: .5em !important; text-align: center; border-bottom: 1px dotted #66c3c6; }
.table-rest tbody tr td:first-child { text-align: left; padding-left: 2em; }
.table-rest tbody tr:last-child td { border-bottom: none; }

@media screen and (max-width: 640px) { .table-rest { width: 100%; }
  .table-rest thead { display: none; }
  .table-rest thead tr { width: 100%; text-align: left; }
  .table-rest thead tr th { padding: 5px; }
  .table-rest tbody td { display: block; text-align: left; width: 100%; background: #FFF; padding: 2px 5px; border-bottom: 1px dotted #66c3c6; }
  .table-rest tbody td:first-child, .table-rest tbody td:last-child { border-bottom: none; }
  .table-rest tbody td:first-child { background: #66c3c6; color: #fff; text-align: left; padding-left: 0; }
  .table-rest tbody td::before { content: attr(data-label); float: left; width: 8em; margin-left: 10px; text-align: left; } }
.buffet-price { border: 1px solid #00608d; margin: 0; }
.buffet-price tbody > tr > th { text-align: center; vertical-align: middle !important; border-bottom: 1px dotted #00608d; }
.buffet-price tbody > tr > td { font-family: "Lato", sans-serif; text-align: center; border-bottom: 1px dotted #00608d; }

.buffet-price.table-white { background: rgba(255, 255, 255, 0.5); }

.table-block15 { margin: 0 15px; }
@media screen and (max-width: 640px) { .table-block15 { margin: 0; } }

.table-meeting { width: 100%; }
.table-meeting thead tr th { font-size: 14px; padding: 10px; background: #006a6c; color: #FFF; text-align: center; vertical-align: middle !important; font-weight: 300; border-right: 1px dotted #CCC; }
.table-meeting tbody th, .table-meeting tbody td { font-size: 14px; padding: 10px !important; font-weight: 300; line-height: 1; vertical-align: top; border-top: none; text-align: center; border-right: 1px dotted #CCC; }
.table-meeting tbody th:first-child, .table-meeting tbody td:first-child { border-left: 1px dotted #CCC; font-weight: 400; }
.table-meeting tbody tr:last-child td { border-bottom: 1px dotted #CCC; }

.table-meeting.table-hall { margin-bottom: 20px; }
.table-meeting.table-hall thead tr th { background: #be8f68; }
@media screen and (max-width: 640px) { .table-meeting.table-hall tbody td:first-child { background: #be8f68; } }

.table-meeting tr:nth-child(odd) > td { background-color: #FFF; }

.table-meeting tr:nth-child(even) > td { background-color: #f7f6fb; }

@media screen and (max-width: 640px) { .table-meeting { width: 100%; }
  .table-meeting thead { display: none; }
  .table-meeting thead tr { width: 100%; text-align: left; }
  .table-meeting tbody td { display: block; text-align: left; width: 100%; background: #FFF; padding: 2px 5px; border-bottom: 1px dotted #CCC; }
  .table-meeting tbody td:first-child, .table-meeting tbody td:last-child { border-bottom: none; }
  .table-meeting tbody td:first-child { background: #006a6c; color: #fff; text-align: left; }
  .table-meeting td::before { content: attr(data-label); float: left; width: 10em; margin-left: 10px; text-align: left; } }
.table-meeting .btn-pdf { font-size: 12px; display: inline-block; color: #fff; background-color: #428bca; text-align: center; padding: 4px 8px; margin: auto; border-radius: 2px; }
.table-meeting .btn-pdf::before { font-family: 'icofont'; content: "\eb1e"; font-size: 15px; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #FFF; margin-right: 3px; }
.table-meeting .btn-pdf::after { content: ""; }
.table-meeting .btn-pdf:hover { color: #FFF; background-color: #2c3e50 !important; text-decoration: none !important; }

.table-auto { width: auto; }
@media screen and (max-width: 479px) { .table-auto { width: 100%; } }

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td { padding: 8px; line-height: 1.42857143; vertical-align: top; border-top: none; }

.table-default > tbody > tr { border-bottom: 1px dotted #CCC; }
.table-default > tbody > tr:first-child { border-top: 1px dotted #CCC; }
@media screen and (max-width: 479px) { .table-default > tbody > tr { border-bottom: none; } }
.table-default > tbody > tr > th, .table-default > tbody > tr > td { padding: .8em 1em .8em !important; }
@media screen and (max-width: 479px) { .table-default > tbody > tr > th, .table-default > tbody > tr > td { empty-cells: hide !important; } }
.table-default > tbody > tr > th { width: auto; }
@media screen and (max-width: 479px) { .table-default .border { border-bottom: 1px dotted #DDD; } }
@media screen and (max-width: 479px) { .table-default .hide-cell { display: none; } }

.table-default > tbody > tr > th { width: auto; font-weight: 400; white-space: nowrap; }
.table-default > tbody > tr > th::before { content: ""; ine-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
@media screen and (max-width: 479px) { .table-default > tbody > tr > th { width: 100%; float: left; clear: left; background: #F5F5F5; padding: 5px 8px; } }

.table-default > tbody > tr > td { font-weight: 300; }
@media screen and (max-width: 479px) { .table-default > tbody > tr > td { width: 100%; float: left; clear: left; background: #FFF; padding: 5px 8px; } }

.table-xs > tbody > tr > th, .table-xs > tbody > tr > td { font-size: .9em; padding: .4em; }

.table-profile { margin: 15px 0 20px; }
.table-profile > tbody > tr { border-bottom: 1px dotted #DDD; font-size: 14px; }
.table-profile > tbody > tr:first-child { border-top: 1px dotted #DDD; }
@media screen and (max-width: 479px) { .table-profile > tbody > tr { border-bottom: none; font-size: 13px; } }
.table-profile > tbody > tr > th, .table-profile > tbody > tr > td { padding: 10px 6px; }
@media screen and (max-width: 479px) { .table-profile > tbody > tr > th, .table-profile > tbody > tr > td { empty-cells: hide !important; } }

.table-profile > tbody > tr > th { font-weight: 400; white-space: nowrap; }
@media screen and (max-width: 479px) { .table-profile > tbody > tr > th { width: 100%; float: left; clear: left; background: #F5F5F5; padding: 5px 8px; } }

.table-profile > tbody > tr > td { font-weight: 300; }
@media screen and (max-width: 479px) { .table-profile > tbody > tr > td { width: 100%; float: left; clear: left; background: #FFF; padding: 5px 8px; } }

.table-profile2 { margin: 15px 0 20px; }
.table-profile2 tr { border-bottom: 1px dotted #DDD; font-size: 14px; }
.table-profile2 tr:first-child { border-top: 1px dotted #DDD; }
@media screen and (max-width: 479px) { .table-profile2 tr { border-bottom: none; font-size: 13px; } }
.table-profile2 th, .table-profile2 td { padding: 10px 6px; }
@media screen and (max-width: 479px) { .table-profile2 th, .table-profile2 td { empty-cells: hide !important; } }

.table-profile2 th { width: 20%; font-weight: 400; white-space: nowrap; }
@media screen and (max-width: 479px) { .table-profile2 th { width: 100%; float: left; clear: left; background: #F5F5F5; padding: 5px 8px; } }

.table-profile2 td { font-weight: 600; }
@media screen and (max-width: 479px) { .table-profile2 td { width: 100%; float: left; clear: left; background: #FFF; padding: 5px 8px; } }

.table-price { width: 100%; }
.table-price thead tr th { font-size: 14px; padding: 10px; background: #007c92; color: #FFF; text-align: center; vertical-align: middle !important; font-weight: 300; border-right: 1px dotted #CCC; }
.table-price thead tr th span { display: block; }
.table-price tbody th, .table-price tbody td { font-size: 14px; padding: 10px !important; font-weight: 300; line-height: 1; vertical-align: middle !important; border-top: none; text-align: center; border-right: 1px dotted #CCC; }
.table-price tbody th:first-child, .table-price tbody td:first-child { border-left: 1px dotted #CCC; font-weight: 400; }
.table-price tbody th span, .table-price tbody td span { display: block; }
.table-price tbody tr:last-child td { border-bottom: 1px dotted #CCC; }

.table-price tr:nth-child(odd) > td { background-color: #FFF; }

.table-price tr:nth-child(even) > td { background-color: #f7f6fb; }
@media screen and (max-width: 640px) { .table-price tr:nth-child(even) > td { background-color: #FFF; } }

@media screen and (max-width: 640px) { .table-price { width: 100%; }
  .table-price thead { display: none; }
  .table-price thead tr { width: 100%; text-align: left; }
  .table-price tbody td { display: block; text-align: right; width: 100%; background: #FFF; padding: 2px 5px; border-bottom: 1px dotted #CCC; border-right: none; }
  .table-price tbody td:first-child, .table-price tbody td:last-child { border-bottom: none; }
  .table-price tbody td span { display: inline-block; padding-left: .5em; }
  .table-price tbody td:first-child { background: #007c92; color: #fff; text-align: left; border-left: none; }
  .table-price td::before { content: attr(data-label); float: left; width: 10em; text-align: left; } }
/*////////////////////////////////////////////////////////////////////////////

accordion scss

////////////////////////////////////////////////////////////////////////////*/
.accordion-container { margin: 0 auto; }

.accordion-container .accordion-title { position: relative; margin: 0; padding: .6em 4em .6em 1em; background-color: #FFF; font-size: 16px; font-weight: 400; color: #333; border: 1px solid #CCC; border-radius: 4px; margin-bottom: 4px; cursor: pointer; }
@media screen and (max-width: 479px) { .accordion-container .accordion-title { font-size: 14px; line-height: 1.5; padding: .6em 3em .6em .6em; } }

.accordion-content { padding: .6em 1em .6em 1em; border: 1px solid #CCC; background: #fffff9; border-radius: 4px; margin-bottom: 4px; position: relative; }
.accordion-content ul, .accordion-content ol { margin-left: 2em; margin-bottom: .5em; }

.accordion-container .accordion-title:hover, .accordion-container .accordion-title:active, .accordion-title.open { color: #FFF; background-color: #222; }

.accordion-container .accordion-title::before, .accordion-container .accordion-content::before { font-family: "Cormorant SC", serif; font-weight: 600; font-size: 16px; padding: .1em .4em; margin-right: .5em; border-radius: 4px; }
@media screen and (max-width: 479px) { .accordion-container .accordion-title::before, .accordion-container .accordion-content::before { font-size: 14px; } }

.accordion-container .accordion-title::before { content: "Q"; color: #FFF; background: #ef857d; }

.accordion-container .accordion-content::before { content: "A"; color: #FFF; background: #00a1e9; }

/*縦線に*/
.accordion-container .accordion-title::after { font-family: 'icofont'; content: "\eac8"; position: absolute; top: 50%; right: 15px; margin-top: -12px; transition: all .2s ease-in-out; }

.accordion-container .accordion-title.open::after { font-family: 'icofont'; content: "\eacb"; }

/*////////////////////////////////////////////////////////////////////////////

calender style scss

////////////////////////////////////////////////////////////////////////////*/
.rest-cal h3 { font-family: "Cormorant SC", serif; font-size: 20px; font-weight: 500; letter-spacing: 1px; margin-bottom: 0; margin-left: 5px; text-align: center; position: relative; }
@media screen and (max-width: 479px) { .rest-cal h3 { font-size: 18px; text-align: right; } }
.rest-cal h3 .point-m { font-size: 1.8em; }
.rest-cal h3 em { color: #888; font-style: normal; margin-left: 5px; }

.h3-rest::before, .h3-bar::before { font-size: 80%; color: #888; position: absolute; left: 0; top: 50%; margin-top: -12px; }

.h3-rest::before { content: "California Restaurant"; letter-spacing: 0; }

.h3-bar::before { content: "Super Stars"; }

.table-cal { background: #f7f6fb; background: linear-gradient(48deg, #f7f6fb 0%, white 100%); }

.table-cal { position: relative; text-align: left; border: 0; border-collapse: collapse; border-spacing: 0px; empty-cells: hide; font-size: 14px; width: 100%; table-layout: fixed; margin: 5px 0 10px; }
@media screen and (max-width: 479px) { .table-cal thead { display: none; } }
.table-cal thead th { font-family: "Lato", sans-serif; text-align: center; font-weight: 400; padding: .4em .5em .2em; border-width: 0px; background: #FFF; color: #555; }
.table-cal thead th:first-child { color: #b33e5c; }
.table-cal thead th:last-child { color: #0073a8; }

.table-cal tbody { font-family: "Lato", sans-serif; }
.table-cal tbody td { position: relative; padding: .5em .5em 1em; line-height: 1.4; border: 1px solid #E0E0E0; empty-cells: hide; vertical-align: top; background-color: inherit; }
.table-cal tbody td:first-child { color: #b33e5c; }
.table-cal tbody td:last-child { color: #0073a8; }
.table-cal tbody em { display: none; }
@media screen and (max-width: 479px) { .table-cal tbody .emp { display: none; } }
.table-cal tbody td.close { background: #ffe5e5; }

.table-cal td.morning { background: #a0d8ef; }

.p-close { font-size: .9em; color: #900; background: #ffe5e5; padding: .1em .3em; display: inline-block; }

@media screen and (max-width: 479px) { .table-cal { border-spacing: 0; }
  .table-cal tbody > tr:first-child > td:first-child { margin-top: 0; }
  .table-cal tbody > tr td { width: 100%; float: left; clear: left; padding: 0.4em 0.5em; margin-bottom: -1px; empty-cells: hide; }
  .table-cal tbody > tr td:first-child { margin-top: -1px; border-top: 1px solid #FFF; }
  .table-cal tbody > tr td:last-child { margin-bottom: -1px; }
  .table-cal tbody > tr span.sp { display: inline-block; padding-left: .5em; width: 1em; font-size: .8em; }
  .table-cal tbody > tr em { display: inline-block; font-style: normal; padding-left: .5em; width: 1em; font-size: .8em; } }
.day-text, .day-data, .i-sweets, .i-star, .i-bbq, .i-terrace { color: inherit; }

.day-text::after, .data-red::after, .data-gray::after, .data-blue::after, .data-blue2::after, .data-brown::after, .data-green::after, .data-hall::after { content: 'Event'; display: block; text-align: center; padding: .3em; font-size: 10px; font-weight: normal; line-height: 1; margin-top: 1em; color: #FFF; border-radius: 2px; background-color: #999; }
@media screen and (max-width: 479px) { .day-text::after, .data-red::after, .data-gray::after, .data-blue::after, .data-blue2::after, .data-brown::after, .data-green::after, .data-hall::after { display: inline-block; margin: 0 0 0 20px; } }

.data-red::after { content: attr(data-label); background-color: #ea5550; }

.data-gray::after { content: attr(data-label); background-color: #999; }

.data-blue::after { content: attr(data-label); background-color: #008DB7; }

.data-brown::after { content: attr(data-label); background-color: #6A1917; }

.data-blue2::after { content: attr(data-label); background-color: #82cddd; }

.data-green::after { content: attr(data-label); background-color: #00947a; }

.data-hall::after { content: attr(data-label); background-color: #ee7800; }

.i-dinner::before { font-family: 'icofont'; content: "\eb5e"; font-size: 28px; text-align: center; display: block; color: #00afcc; line-height: 1; margin-left: 5px; }
@media screen and (max-width: 479px) { .i-dinner::before { font-size: 20px; display: inline-block; margin-left: 20px; vertical-align: middle; } }

.i-close::before { font-family: 'icofont'; content: "\eee1"; font-size: 20px; text-align: center; display: block; color: #999; line-height: 1; margin-left: 5px; }
@media screen and (max-width: 479px) { .i-close::before { font-size: 20px; display: inline-block; margin-left: 20px; vertical-align: middle; } }

.rest-cal-exp li { margin: 0 0 .5em .5em; list-style: circle; font-size: 90%; }
.rest-cal-exp li.i-dinner::before { font-family: 'icofont'; content: "\eb5e"; display: inline-block; font-size: 25px; margin-right: 5px; margin-top: -5px; vertical-align: middle; }
.rest-cal-exp li.data-bbq::before { content: attr(data-label); background-color: #6A1917; display: inline-block; font-size: .9em; color: #FFF; }
.rest-cal-exp li.data-bon::before { content: attr(data-label); background-color: #008DB7; }
.rest-cal-exp li.data-orange::before { content: attr(data-label); background-color: #ee7800; display: inline-block; font-size: .9em; color: #FFF; }

.rest-cal-exp .ul-inline { margin-left: 0; }
.rest-cal-exp li.data-bbq::before, .rest-cal-exp li.data-bon::before, .rest-cal-exp li.data-asa::before, .rest-cal-exp li.data-li-red::before, .rest-cal-exp li.data-li-green::before, .rest-cal-exp li.data-orange::before, .rest-cal-exp li.data-blue::before { content: attr(data-label); color: #FFF; display: inline-block; font-size: .8em; padding: 0 .5em; border-radius: 2px; }
.rest-cal-exp li.data-bbq::before { background-color: #6A1917; }
.rest-cal-exp li.data-bon::before { background-color: #008DB7; }
.rest-cal-exp li.data-asa::before { background-color: #82cddd; }
.rest-cal-exp li.data-li-red::before { background-color: #ea5550; }
.rest-cal-exp li.data-li-green::before { background-color: #00947a; }
.rest-cal-exp li.data-orange::before { background-color: #ee7800; }
.rest-cal-exp li.data-blue::before { background-color: #008DB7; }
.rest-cal-exp p { margin-left: .5em; }

.i-sweets::after { content: ""; display: block; width: 25px; height: 25px; margin: 5px auto; vertical-align: top; }
@media screen and (max-width: 479px) { .i-sweets::after { display: inline-block; width: 15px; height: 15px; margin: 0 0 0 20px; vertical-align: middle; } }

.i-sweets::after { background: url("../img/svg/i_sweets.svg") no-repeat; background-size: contain; background-position: center; }

.i-bbq::after, .i-terrace::after { content: ""; display: block; width: 40px; height: 25px; margin: 5px auto; vertical-align: top; }
@media screen and (max-width: 479px) { .i-bbq::after, .i-terrace::after { display: inline-block; width: 30px; height: 15px; margin: 0 0 0 20px; vertical-align: middle; } }

.i-bbq::after { background: url("../../restaurant/img/svg/i_bbq.svg") no-repeat; background-size: contain; }

.i-terrace::after { background: url("../../restaurant/img/svg/i_terrace.svg") no-repeat; background-size: contain; }

.rest-cal-exp ul.ul-inline { margin: 0; padding: 0; }
.rest-cal-exp ul.ul-inline li { display: inline-block; padding-right: 1em; }
.rest-cal-exp p { font-size: .9em; font-weight: 300; }

.rest-cal-exp .ul-inline li.sweets::before, .rest-cal-exp .ul-inline li.bbq::before, .rest-cal-exp .ul-inline li.terrace::before { content: ""; display: inline-block; width: 20px; height: 20px; margin-right: 5px; margin-top: -5px; vertical-align: middle; }
.rest-cal-exp .ul-inline li.sweets::before { background: url("../img/svg/i_sweets.svg") no-repeat; background-size: contain; }
.rest-cal-exp .ul-inline li.bbq::before { background: url("../../restaurant/img/svg/i_bbq.svg") no-repeat; background-size: contain; }
.rest-cal-exp .ul-inline li.terrace::before { background: url("../../restaurant/img/svg/i_terrace.svg") no-repeat; background-size: contain; }

/*////////////////////////////////////////////////////////////////////////////

tab scss

////////////////////////////////////////////////////////////////////////////*/
.cal-tabs { width: 100%; position: relative; }
.cal-tabs .tab-buttons span { font: 400 15px "Cormorant SC", serif; color: #333; cursor: pointer; border-bottom: 2px solid #ddd; display: block; width: 50%; float: left; text-align: center; height: 40px; line-height: 40px; }
.cal-tabs .tab-buttons span em { font-size: 1.4em; font-style: normal; }
.cal-tabs .tab-buttons span:hover { opacity: .6; }

.tab-content { padding-top: 10px; display: inline-block; }

#lamp { width: 50%; height: 2px; background: #333; display: block; position: absolute; top: 38px; transition: all .3s ease-in; -o-transition: all .3s ease-in; -webkit-transition: all .3s ease-in; -moz-transition: all .3s ease-in; }
#lamp.month2, #lamp.month3, #lamp.month1 { transition: all .3s ease-in; -o-transition: all .3s ease-in; -webkit-transition: all .3s ease-in; -moz-transition: all .3s ease-in; }
#lamp.month2 { left: 50%; }
#lamp.month1 { left: 0; }

.bar-tabs { width: 100%; margin-top: 20px; position: relative; }
.bar-tabs .tab-buttons span { font: 400 16px "Lato", sans-serif; color: #333; cursor: pointer; border-bottom: 2px solid #ddd; display: block; width: 50%; float: left; text-align: center; height: 40px; line-height: 40px; }
.bar-tabs .tab-buttons span em { font-size: .9em; font-style: normal; margin-left: 1em; }
.bar-tabs .tab-buttons span:hover { opacity: .6; }

.tab-content { padding-top: 10px; display: inline-block; }

#bar { width: 50%; height: 2px; background: #333; display: block; position: absolute; top: 38px; transition: all .3s ease-in; -o-transition: all .3s ease-in; -webkit-transition: all .3s ease-in; -moz-transition: all .3s ease-in; }
#bar.foods, #bar.drink { transition: all .3s ease-in; -o-transition: all .3s ease-in; -webkit-transition: all .3s ease-in; -moz-transition: all .3s ease-in; }
#bar.foods { left: 50%; }
#bar.drink { left: 0; }

/*////////////////////////////////////////////////////////////////////////////

form scss

////////////////////////////////////////////////////////////////////////////*/
.destination { width: 100%; margin: 20px 0 20px; }
.destination .msg, .destination .choose { color: #333; padding: 5px 0 10px; display: inherit; }
.destination .msg { margin-top: 15px; font-size: 16px; }
.destination .icon-alert::before { color: #D00; }

.destination select { background-color: white; border: thin solid skyblue; border-radius: 4px; display: inline-block; font: inherit; line-height: 1.5em; padding: 0.5em 4em 0.5em 1em; margin: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; }
.destination select.subject { background-image: linear-gradient(45deg, transparent 50%, black 50%), linear-gradient(135deg, blue 50%, transparent 50%), linear-gradient(to right, skyblue, skyblue); background-position: calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), 100% 0; background-size: 5px 5px, 5px 5px, 2.5em 2.5em; background-repeat: no-repeat; }
.destination select.subject:focus { background-image: linear-gradient(45deg, white 50%, transparent 50%), linear-gradient(135deg, transparent 50%, white 50%), linear-gradient(to right, gray, gray); background-position: calc(100% - 15px) 1em, calc(100% - 20px) 1em, 100% 0; background-size: 5px 5px, 5px 5px, 2.5em 2.5em; background-repeat: no-repeat; border-color: grey; outline: 0; }

#form-val { position: relative; width: 100%; margin-bottom: 15px; }

.form-group { padding-right: 20px; margin-top: 20px; position: relative; }
.form-group.range50 { width: 50%; float: left; }
.form-group.range30 { width: 30%; float: left; }
.form-group.range20 { width: 20%; float: left; }
@media screen and (max-width: 479px) { .form-group { width: 100% !important; padding-right: 0; } }

.form-group .control-label { color: #555; font-weight: 300; margin-bottom: .3em; }

.label-required::before { content: '必須'; padding: 4px .5em; font-size: 12px; font-weight: normal; line-height: 1; margin-right: .5em; display: inline-block; color: #FFF; border-radius: 2px; background-color: #e95464; }
@media screen and (max-width: 479px) { .label-required::before { font-size: 11px; margin-top: 0; } }

.form-group lebel > input { margin-right: 2em !important; }
.form-group input { position: relative; vertical-align: middle; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
@media screen and (max-width: 479px) { .form-group input { top: 0; } }
.form-group input[type="radio"] { display: inline-block; margin: 0 5px 0 2px; vertical-align: middle; position: relative; top: -1px; cursor: pointer; }

.radio-inline li { display: inline-block; list-style: none; padding-right: 20px; }

input[type="text"].form-control, input[type="email"].form-control, select.form-control, textarea.form-control { margin-bottom: 0; }

.form-control { box-shadow: none !important; display: inline-block; }
.form-control:hover, .form-control:focus, .form-control:active { outline: none; }

#form-val.confirm .label-required::before { display: none; }
#form-val.confirm .control-label { color: #666; }

.p-confirm { font-size: 16px; }

.form-control-static { border-bottom: 1px dotted #CCC; color: #000; }

.btn-confirm { border: 1px solid #888; padding: 1em 3em; }
.btn-confirm::after { font-family: 'icofont'; content: "\eab8"; line-height: 1; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.btn-back { border: 1px solid #888; padding: 1em 3em; }

.help-block { display: block; margin: 5px 20px 10px 0; color: #737373; }

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label { color: #a94442; }

.has-error .form-control { border-color: #a94442 !important; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }

.has-error .form-control:focus { border-color: #843534; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .form-control-feedback { color: #a94442; }

.thanks { text-align: center; line-height: 2; padding: 10px 50px 50px; }
@media screen and (max-width: 479px) { .thanks { text-align: left; padding: 15px; } }
.thanks h3 { font-weight: 500; font-size: 24px; letter-spacing: 1px; }
.thanks h4 { margin: 15px 0; font-size: 18px; }
.thanks h4::before, .thanks h4::after { content: "─"; padding: 0 .5em; }
.thanks .btn { font-size: 20px; pointer-events: none; }
@media screen and (max-width: 479px) { .thanks .btn { pointer-events: auto; } }

.float-side-bnr { position: fixed !important; bottom: 20vh; right: -10px; z-index: 99; }
@media screen and (max-width: 640px) { .float-side-bnr { bottom: 20vh; right: -10px; } }
.float-side-bnr img { display: block; width: 140px; height: auto; }
@media screen and (max-width: 640px) { .float-side-bnr img { width: 100px; } }
.float-side-bnr a { display: block; transition: all 0.3s ease; margin-bottom: 2px; }
.float-side-bnr a img:hover { filter: brightness(120%); transform: scale(1.1, 1.1); }
