@charset "UTF-8";
/*@mixin nav-on{ background:    -moz-linear-gradient(left,#433f29,#787048); background: -webkit-linear-gradient(left,#433f29,#787048); background:         linear-gradient(to right,#433f29,#787048);
}*/
/*
@mixin reserve-off{ background: #9d1720;
}
@mixin reserve-on{ background: #bf5e65;
}
@mixin sp-reserve-off{ background: #9d1720;
}
@mixin sp-reserve-on{ background: #bf5e65;
}*/
@import url(reset.css);
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond&display=swap");
*, *:before, *:after { -webkit-box-sizing: borfer-box; box-sizing: border-box; }

body, html { font-size: 16px; line-height: 1.5; }

section { /*  @media screen and (max-width:$bp01){ width:96%; margin: 0 auto;
}*/ }

a { color: inherit; text-decoration: none; }

select, input, button, textarea { font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; }

p { line-height: 1.8; color: #212121; }

table { font-size: inherit; font: 100%; }

pre, code, kbd, samp, tt { font-family: monospace; *font-size: 108%; line-height: 100%; }

@media screen and (max-width: 600px) { .pc { display: none; } }

.sp { display: none; }
@media screen and (max-width: 600px) { .sp { display: block; } }

.aw { display: inline-block; }

body { position: relative; color: #212121; }
@media screen and (max-width: 768px) { body { padding-bottom: 72px; } }

sup { vertical-align: text-top; font-size: small; }

/*.nomv{ padding-top:7rem; @media screen and (max-width:$bp01){ padding-top:5rem; }
} */
.main { width: 100%; height: auto; position: relative; padding: 0; overflow: hidden; }
.main img { width: 100%; height: auto; vertical-align: bottom; }
@media screen and (max-width: 1024px) { .main { width: 100%; } }
.main .cap { position: absolute; bottom: 0.6rem; right: 0.5rem; color: #fff; font-size: 0.625rem; line-height: 1; font-family: "Noto Sans JP" , "Helvetica Neue", YuGothic, 'Yu Gothic medium', 'Hiragino Sans', Meiryo, 'sans-serif'; -webkit-font-smoothing: antialiased; font-weight: normal; font-weight: 700; }
.main .t-shadow { text-shadow: 0 0 4px black, 0 0 3px black, 0 0 2px black, 0 0 1px black; }

.note { font-size: 0.625rem; line-height: 1.6; font-family: "Noto Sans JP" , "Helvetica Neue", YuGothic, 'Yu Gothic medium', 'Hiragino Sans', Meiryo, 'sans-serif'; -webkit-font-smoothing: antialiased; font-weight: normal; }
.note.larger { font-size: 12px; }

#pagetop { position: fixed; right: 2rem; bottom: 20px; z-index: 10; transition: 0.2s; }
#pagetop:hover { opacity: 0.6; }
#pagetop img { width: 50px; height: 50px; }
@media screen and (max-width: 1400px) { #pagetop { right: 1.25rem; } }
@media screen and (max-width: 768px) { #pagetop a { display: none; } }

.page-note { width: 100%; margin: 0 auto; padding: 2rem 0; background-color: #fff; overflow-wrap: break-word; font-family: "Noto Sans JP" , "Helvetica Neue", YuGothic, 'Yu Gothic medium', 'Hiragino Sans', Meiryo, 'sans-serif'; -webkit-font-smoothing: antialiased; font-weight: normal; }
.page-note .note { width: 96%; max-width: 1024px; margin: auto; font-size: 12px; line-height: 1.8; }
@media screen and (max-width: 834px) { .page-note .note { width: 88%; } }

.hidden { background: none; transition: 0.5s; }

.conv-container { margin: 30px auto 0; }
.conv-container ul { width: 100%; max-width: 900px; margin: 0 auto 0; text-align: center; /*display: block;*/ display: flex; }
.conv-container ul li { position: relative; width: 50%; }
.conv-container ul li a { font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; color: #FFF; text-align: center; text-decoration: none; width: 100%; display: block; padding: 1.25rem 0 1.25rem 1.5rem; position: relative; line-height: 1; letter-spacing: 0.2em; text-align: center; vertical-align: middle; display: block; position: relative; }
.conv-container ul li a::before { content: ""; display: inline-block; width: 1em; height: 1em; background-image: url("../img/common/h-icon-arrow2.png"); background-position: center center; background-size: contain; background-repeat: no-repeat; vertical-align: middle; position: absolute; top: 50%; left: 2rem; transform: translateY(-50%); }
.conv-container .request, .conv-container .reserve, .conv-container .online { display: flex; justify-content: center; margin: 0px auto 0; /*width:100%;*/ width: 48%; max-width: 400px; }
.conv-container .request a, .conv-container .reserve a, .conv-container .online a { font-size: 22px; }
.conv-container .request a { border-color: #d8d27b; background-color: #cdad4a; background-image: -moz-linear-gradient(0deg, #d8d27b 0%, #cdad4a 100%); background-image: -webkit-linear-gradient(0deg, #d8d27b 0%, #cdad4a 100%); background-image: -ms-linear-gradient(0deg, #d8d27b 0%, #cdad4a 100%); }
.conv-container .request a:hover { border-color: #f0d135; background-color: #f0d135; background-image: -moz-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); background-image: -webkit-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); background-image: -ms-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); }
.conv-container .reserve a { border-color: #92003c; background-color: #92003c; background-image: -moz-linear-gradient(0deg, #bf5e65 0%, #bb1c27 100%); background-image: -webkit-linear-gradient(0deg, #bf5e65 0%, #bb1c27 100%); background-image: -ms-linear-gradient(0deg, #bf5e65 0%, #bb1c27 100%); }
.conv-container .reserve a:hover { border-color: #b4004a; background-color: #b4004a; background-image: -moz-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); background-image: -webkit-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); background-image: -ms-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); }
.conv-container .online a { border-color: #616161; background-color: #616161; background-image: -moz-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -webkit-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -ms-linear-gradient(0deg, #868686 0%, #505050 100%); }
.conv-container .online a:hover { border-color: #616161; background-color: #616161; background-image: -moz-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -webkit-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -ms-linear-gradient(0deg, #868686 0%, #505050 100%); }
@media screen and (max-width: 768px) { .conv-container { margin-top: 5%; }
  .conv-container .request a, .conv-container .reserve a, .conv-container .online a { font-size: 16px; max-width: 320px; } }
@media screen and (max-width: 600px) { .conv-container ul { flex-direction: column; }
  .conv-container ul li { /*padding-left: 0.5rem;*/ }
  .conv-container ul li a::before { left: 1rem; }
  .conv-container .request, .conv-container .reserve, .conv-container .online { width: 100%; }
  .conv-container .request, .conv-container .online { margin-bottom: 1rem; } }

.cv_wrap .contents-inner { padding: 2.5rem 0; }
.cv_wrap .contents-inner .conv-container { margin-top: 0; padding-bottom: 0; }

#HumMenu { margin-left: 1.5rem; display: block; position: relative; z-index: 999; color: #fff; }
#HumMenu .menu-trigger { display: flex; flex-flow: column wrap; align-items: stretch; padding: 0.25rem; border: none; background: none; cursor: pointer; }
#HumMenu .menu-trigger .line-box { position: relative; aspect-ratio: 1/0.64; width: 3rem; background: none; border: none; appearance: none; }
#HumMenu .menu-trigger .line { position: absolute; left: 0; width: 100%; height: 2px; background-color: #fff; border-radius: 4px; transition: all 0.4s ease; }
#HumMenu .menu-trigger .line:nth-of-type(1) { top: 0; }
#HumMenu .menu-trigger .line:nth-of-type(2) { top: 50%; transform: translateY(-50%); }
#HumMenu .menu-trigger .line:nth-of-type(3) { bottom: 0; }
#HumMenu .menu-trigger .txt { font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; text-align: center; line-height: 1; font-size: min(10px, 12px); color: #fff; margin-top: 0.5rem; transition: all 0.4s ease; }
#HumMenu .menu-trigger .txt.cl { display: none; }
#HumMenu.close .menu-trigger .line { background-color: #242424; }
#HumMenu.close .menu-trigger .line:nth-of-type(1) { top: calc(50% - 1px); transform: rotate(-45deg); }
#HumMenu.close .menu-trigger .line:nth-of-type(2) { opacity: 0; }
#HumMenu.close .menu-trigger .line:nth-of-type(3) { bottom: calc(50% - 1px); transform: rotate(45deg); }
#HumMenu.close .menu-trigger .txt { color: #242424; }
#HumMenu.close .menu-trigger .txt.op { display: none; }
#HumMenu.close .menu-trigger .txt.cl { display: block; }
@media screen and (max-width: 1024px) { #HumMenu .menu-trigger .line-box { width: 2.5rem; } }
@media screen and (max-width: 768px) { #HumMenu { display: none; } }

.g_nav { width: 40%; background-color: rgba(255, 255, 255, 0.8); position: fixed; top: 0; right: 0; z-index: 990; transform: translate(200%, 0); transition: .5s ease-out; padding-top: 80px; height: 100vh; }
@media screen and (max-width: 768px) { .g_nav { margin: 0 auto; display: none; width: 100%; height: auto; border-bottom: none; padding-top: 0; z-index: 1000; transform: none; top: auto; right: auto; left: 0; bottom: 70px; background: #fff; transition: none; } }
.g_nav ul { font-size: 0px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; /*justify-content: space-around;*/ justify-content: center; border: thin solid #ccc; border-bottom: none;     /*padding-left: 1.5%;
		padding-right: 1.5%;*/ }
.g_nav ul div, .g_nav ul li { min-height: 0; }
.g_nav ul li { width: auto; position: relative;       /*	&.top {
				width: calc(80 / 1255 * 100%);
			}
			&.concept {
				width: calc(127 / 1255 * 100%);
			}
			&.location {
				width: calc(139 / 1255 * 100%);
			}
			&.landplan {
				width: calc(144 / 1255 * 100%);
			} */ /*.update { color: #e3b8b8; } a { padding: 0 1rem; color: #fff; background: #306a64; &:hover, &.current { filter: brightness(120%); } }*/       /*&.plan {
				width: calc(82 / 1255 * 100%);
			}
			&.equipment {
				width: calc(161 / 1255 * 100%);
			}
			&.safety {
				width: calc(105 / 1255 * 100%);
			}
			&.modelroom {
				width: calc(175 / 1255 * 100%);
			}
			&.brand {
				width: calc(110 / 1255 * 100%);
			} */       /*@media screen and (max-width: $bp02) {
				a,.soon{
					.txt1{
						font-size: 0.875rem;
						letter-spacing: 0.005rem;
					}
				}
			}*/ }
.g_nav ul li:first-child::after, .g_nav ul li.brand::after { content: ""; width: 1px; height: 100%; position: absolute; top: 0; }
.g_nav ul li:first-child::after { left: 0; }
.g_nav ul li.brand::after { right: 0; }
.g_nav ul li a, .g_nav ul li .soon { height: 56px; width: 100%; display: inline-block; position: relative; color: #bdc0c2; font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-transition: all 0.2s linear; }
.g_nav ul li a div, .g_nav ul li a li, .g_nav ul li .soon div, .g_nav ul li .soon li { min-height: 0; }
.g_nav ul li a .gnav-txt, .g_nav ul li .soon .gnav-txt { display: block; width: 100%; text-align: center; line-height: 1; }
.g_nav ul li a .txt1, .g_nav ul li .soon .txt1 { display: block; font-size: 0.9375rem; letter-spacing: .1rem; }
.g_nav ul li a .txt2, .g_nav ul li .soon .txt2 { display: block; font-size: .625rem; margin-top: 5px; letter-spacing: .1rem; }
.g_nav ul li .new, .g_nav ul li .update { position: absolute; top: 0; left: 50%; transform: translateX(-50%); font-size: 10px; font-weight: bold; padding-top: 1px; line-height: 1; font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; }
.g_nav ul li .new { color: #A31414; }
.g_nav ul li .update { /*color: #1565C0;*/ color: #A31414; }
.g_nav ul li a { color: #212121; }
.g_nav ul li a:hover, .g_nav ul li a.current { /*color: $c01;*/ color: #fff; background: #306a64; filter: brightness(120%); }
.g_nav ul li a:hover + .new, .g_nav ul li a:hover + .update, .g_nav ul li a.current + .new, .g_nav ul li a.current + .update { color: #e3b8b8; }
.g_nav ul li .soon { opacity: 0.6; }
.g_nav ul li.outline { display: none; }
@media screen and (max-width: 1024px) { .g_nav ul li { /*&.floorplan { a { padding: 0 0.5rem; }
}*/ }
  .g_nav ul li a, .g_nav ul li .soon { /*padding: 0 0.5rem;*/ }
  .g_nav ul li a .txt1, .g_nav ul li .soon .txt1 { font-size: 0.875rem; letter-spacing: 0.005rem; }
  .g_nav ul li a .txt2, .g_nav ul li .soon .txt2 { font-size: .6rem; } }
@media screen and (max-width: 768px) { .g_nav ul li { width: 50%; -webkit-box-sizing: border-box; box-sizing: border-box; border-top: none; box-shadow: 1px 1px 0 0 #eee; }
  .g_nav ul li a .txt1, .g_nav ul li .soon .txt1 { font-size: 1rem; letter-spacing: 0.1rem; }
  .g_nav ul li a .txt2, .g_nav ul li .soon .txt2 { font-size: .625rem; }
  .g_nav ul li a { background-color: transparent; }
  .g_nav ul li a:hover::before, .g_nav ul li a.current::before { border-top-width: 2px; }
  .g_nav ul li:first-child::after, .g_nav ul li.brand::after { display: none; }
  .g_nav ul li:nth-of-type(odd)::after { content: none; }
  .g_nav ul li.top { width: 100%; }
  .g_nav ul li.concept, .g_nav ul li.location, .g_nav ul li.landplan, .g_nav ul li.floorplan, .g_nav ul li.plan, .g_nav ul li.equipment, .g_nav ul li.safety, .g_nav ul li.modelroom { width: 50%; }
  .g_nav ul li.outline { display: inline-block; width: 100%; } }
@media screen and (max-width: 600px) { .g_nav ul li a .txt1, .g_nav ul li .soon .txt1 { font-size: 0.875rem; }
  .g_nav ul li a .txt2, .g_nav ul li .soon .txt2 { font-size: .625rem; } }
@media screen and (max-width: 834px) { .g_nav ul {       /*padding-left: 1%;
			padding-right: 1%;*/ } }
@media screen and (max-width: 768px) { .g_nav ul { padding-left: 0; padding-right: 0; } }
.g_nav.gnavshow { transform: translateZ(0); }
.g_nav.gnavshow ul { border: none; }
.g_nav.gnavshow ul li { width: 100%; border-bottom: thin solid #ccc; }
.g_nav.gnavshow ul li a::after { content: none; }
.g_nav.gnavshow ul li.brand { border-bottom: none; }

header { position: fixed; top: 0px; left: 0; width: 100%; z-index: 999; background: black; }
header.change-color { background-color: rgba(255, 255, 255, 0.64); }
@media screen and (max-width: 768px) { header { top: 0px; position: absolute; } }

#headBody { font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; display: flex; justify-content: space-between; align-items: center; width: 96%; max-width: 1296px; height: auto; max-height: 80px; margin: auto; position: relative; padding: 0.5rem 0 0.5rem; }
#headBody h1 { display: inline-block; width: calc((320/1296)*100%); min-width: 256px; filter: brightness(0) saturate(100%) invert(100%) sepia(88%) saturate(2%) hue-rotate(278deg) brightness(104%) contrast(101%); }
#headBody h1 img { width: 100%; height: auto; vertical-align: middle; }
#headBody .hnav { /* position: absolute;
right:0px; */ display: contents; justify-content: flex-end; align-items: center; margin-left: auto; margin-right: 0; }
#headBody .hnav .sub_nav, #headBody .hnav .conv-container { flex-grow: 1; }
#headBody .hnav .sub_nav ul, #headBody .hnav .conv-container ul { display: flex; color: #fff; justify-content: right; }
#headBody .hnav .sub_nav ul li a, #headBody .hnav .conv-container ul li a { line-height: 1.2; transition: opacity 0.2s; position: relative; }
#headBody .hnav .sub_nav ul li a::before, #headBody .hnav .conv-container ul li a::before { content: ""; display: inline-block; margin-right: 0.5em; width: 1em; height: 1em; background-image: url("../img/common/h-icon-arrow2.png"); background-position: center center; background-size: contain; background-repeat: no-repeat; }
#headBody .hnav .sub_nav ul li { flex-grow: 0; margin-right: 0.75em; }
#headBody .hnav .sub_nav ul li a { font-size: 0.875rem; padding: 0.5rem 0; }
#headBody .hnav .sub_nav ul li a:hover { opacity: 0.6; }
#headBody .hnav .sub_nav ul li.map { min-width: 6em; }
#headBody .hnav .sub_nav ul li.outline { min-width: 5em; }
#headBody .hnav .conv-container { margin: 0 0 0 auto; padding: 0; }
#headBody .hnav .conv-container ul li { flex-grow: 1; padding: 0; margin: 0; }
#headBody .hnav .conv-container ul li a { font-size: 0.9rem; padding: 0.875rem 0.5rem 0.875rem 1.75rem; }
#headBody .hnav .conv-container ul li a::before { position: absolute; top: 50%; left: 0.625rem; transform: translateY(-50%); }
#headBody .hnav .conv-container ul li a .aw { display: none; }
#headBody .hnav .conv-container ul li.request, #headBody .hnav .conv-container ul li.reserve { margin-right: 10px; }
@media screen and (max-width: 1024px) { #headBody .hnav .sub_nav ul li a { font-size: 0.8125rem; }
  #headBody .hnav .conv-container ul li a { font-size: 0.875rem; }
  #headBody .hnav .conv-container ul li a::before { left: 6px; } }
@media screen and (max-width: 1024px) { #headBody { height: 80px; }
  #headBody h1 { width: 40%; margin: auto; }
  #headBody .hnav { display: none; } }

.indark #headBody h2 { filter: brightness(0) saturate(100%) invert(97%) sepia(100%) saturate(0%) hue-rotate(20deg) brightness(103%) contrast(105%); }
.indark #headBody .hnav .map a, .indark #headBody .hnav .outline a { color: #fff; }
.indark #headBody .hnav .map a::before, .indark #headBody .hnav .outline a::before { filter: brightness(0) saturate(100%) invert(97%) sepia(100%) saturate(0%) hue-rotate(20deg) brightness(103%) contrast(105%); }
.indark #headBody .hnav .request a, .indark #headBody .hnav .reserve a, .indark #headBody .hnav .online a { border-color: #fff; color: #fff; }
.indark #headBody .hnav .request a::before, .indark #headBody .hnav .reserve a::before, .indark #headBody .hnav .online a::before { filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(273deg) brightness(106%) contrast(105%); }
.indark #headBody #HumMenu .menu-trigger .line { background-color: #fff; }
.indark #headBody #HumMenu .menu-trigger .txt { color: #fff; }
.indark.change-color { background-color: rgba(0, 0, 0, 0.56); }

footer .txtlink { width: 100%; display: block; background: #305251; padding: 1rem 0; }
footer .txtlink .inner { width: 96%; max-width: 1296px; margin-right: auto; margin-left: auto; text-align: center; }
footer .txtlink .g_nav, footer .txtlink .sub_nav, footer .txtlink .conv-container { background: none; }
footer .txtlink .g_nav ul, footer .txtlink .sub_nav ul, footer .txtlink .conv-container ul { display: inline-block; text-align: center; vertical-align: top; }
footer .txtlink .g_nav li, footer .txtlink .sub_nav li, footer .txtlink .conv-container li { display: inline-block; vertical-align: top; margin-right: 1.5rem; }
footer .txtlink .g_nav li a, footer .txtlink .g_nav li .soon, footer .txtlink .sub_nav li a, footer .txtlink .sub_nav li .soon, footer .txtlink .conv-container li a, footer .txtlink .conv-container li .soon { display: block; width: 100%; height: auto; font-family: "Noto Sans JP" , "Helvetica Neue", YuGothic, 'Yu Gothic medium', 'Hiragino Sans', Meiryo, 'sans-serif'; -webkit-font-smoothing: antialiased; font-weight: normal; font-size: 0.875rem; letter-spacing: .1rem; line-height: 1.1; text-align: center; padding: 0.5rem 0; }
footer .txtlink .g_nav li a, footer .txtlink .sub_nav li a, footer .txtlink .conv-container li a { text-decoration: none; color: #fff; transition: color .2s; }
footer .txtlink .g_nav li a:hover, footer .txtlink .sub_nav li a:hover, footer .txtlink .conv-container li a:hover { color: #fff; }
footer .txtlink .g_nav li a.current, footer .txtlink .sub_nav li a.current, footer .txtlink .conv-container li a.current { color: #fff; }
footer .txtlink .g_nav li .soon, footer .txtlink .sub_nav li .soon, footer .txtlink .conv-container li .soon { color: #9e9e9e; }
footer .g_nav { width: 100%; display: block; position: static; z-index: 1; padding-top: 0; transform: none; height: auto; }
footer .g_nav ul { border: none; }
footer .g_nav ul li:first-child::after { content: none; }
footer .g_nav ul li:last-of-type { margin-right: 0; }
footer .g_nav ul li a .gnav-txt .txt1 { display: none; }
footer .g_nav ul li a .gnav-txt .txt2 { font-size: 0.875rem; margin-top: 0; }
footer .g_nav ul li a.current { background: none; }
footer .sub_nav, footer .conv-container { margin: 0; display: inline-block; }
footer .conv-container { width: auto; padding-bottom: 0; }
footer .conv-container ul li { width: auto; min-width: 4em; padding-top: 0; }
footer .conv-container ul li a { position: static; }
footer .conv-container ul li a::before { content: none; }
footer .conv-container ul li a .aw { display: none; }
footer .conv-container ul li.request, footer .conv-container ul li.reserve, footer .conv-container ul li.online { display: inline-block; width: auto; max-width: none; margin: 0  1.5rem 0 0; }
footer .conv-container ul li.request a, footer .conv-container ul li.reserve a, footer .conv-container ul li.online a { border: none; background: none; }
footer .conv-container ul li.request a:hover, footer .conv-container ul li.reserve a:hover, footer .conv-container ul li.online a:hover { border: none; background: none; }
@media screen and (max-width: 768px) { footer .txtlink { padding: 0; }
  footer .txtlink .inner { width: 100%; }
  footer .txtlink .g_nav, footer .txtlink .sub_nav, footer .txtlink .conv-container { display: block; width: 100%; }
  footer .txtlink .g_nav ul, footer .txtlink .sub_nav ul, footer .txtlink .conv-container ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
  footer .txtlink .g_nav ul div, footer .txtlink .g_nav ul li, footer .txtlink .sub_nav ul div, footer .txtlink .sub_nav ul li, footer .txtlink .conv-container ul div, footer .txtlink .conv-container ul li { min-height: 0; }
  footer .txtlink .g_nav ul li, footer .txtlink .sub_nav ul li, footer .txtlink .conv-container ul li { width: 50%; margin-right: 0; box-shadow: none; border-bottom: thin solid #eee; border-right: thin solid #eee; }
  footer .txtlink .g_nav ul li a:hover, footer .txtlink .sub_nav ul li a:hover, footer .txtlink .conv-container ul li a:hover { background: #306a64; }
  footer .txtlink .g_nav ul li:nth-of-type(2n+1) { border-right: none; }
  footer .txtlink .g_nav ul li.top { width: 100%; border-right: none; }
  footer .txtlink .sub_nav ul li:nth-of-type(2n), footer .txtlink .conv-container ul li:nth-of-type(2n) { border-right: none; }
  footer .txtlink .conv-container ul { flex-direction: row; }
  footer .txtlink .conv-container ul li a { max-width: none; } }

.flexBanner { display: flex; justify-content: center; flex-wrap: wrap; padding: 1rem 5% 0.75rem; }
.flexBanner li { max-width: 186px; margin: 0.5rem; }
.flexBanner li a { display: block; }
.flexBanner li img { width: 100%; height: auto; }

.freedial-bg { background: #e4e4e4; }
.freedial-bg .freedial { padding: 2.5rem 5%; text-align: center; }
.freedial-bg .freedial .tel-img { text-align: center; display: block; margin: 2rem 0; }
.freedial-bg .freedial .tel-img img { width: 90%; height: auto; max-width: 394px; }
.freedial-bg .freedial p { font-size: 0.875rem; line-height: 1.6; }
.freedial-bg .freedial .text-l { font-size: 1.125rem; }
.freedial-bg .freedial .telnum { font-size: 112%; }
.freedial-bg .freedial a { display: block; width: 100%; }
@media screen and (max-width: 600px) { .freedial-bg .freedial .text-l { font-size: 1rem; }
  .freedial-bg .freedial .night { margin-top: 10px; } }

.copyright { text-align: center; padding: 1rem 5%; box-sizing: border-box; font-size: 0.75rem; line-height: 1.4; }

.bnr-mutual { width: 100%; max-width: 648px; margin: 0 auto; padding: 3rem 0 0; text-align: center; }
.bnr-mutual h6 { color: #212121; font-size: 0.9em; font-weight: normal; text-align: center; margin: 0 auto 1rem; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.bnr-mutual h6 div, .bnr-mutual h6 li { min-height: 0; }
.bnr-mutual h6:before, .bnr-mutual h6:after { content: '';       /*			position: absolute;
			top: 50%;
			display: inline-block; 
			//width: 24%;
			  width: 32%;*/ height: 1px; flex-grow: 1; background-color: black; }
.bnr-mutual h6:before { margin-right: 1rem; }
.bnr-mutual h6:after { margin-left: 1rem; }
.bnr-mutual .mutual-list { width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; justify-content: center; }
.bnr-mutual .mutual-list div, .bnr-mutual .mutual-list li { min-height: 0; }
.bnr-mutual .mutual-list li { width: 49.3827160494%; max-width: 320px; }
.bnr-mutual .mutual-list li.img img { width: 100%; height: auto; }
@media screen and (max-width: 600px) { .bnr-mutual { margin-top: 2rem; padding: 0 0.5rem; }
  .bnr-mutual h6 { font-size: 0.875em;       /*	&:before, &:after{
				width: 8%;
			} */ }
  .bnr-mutual h6:before { margin-right: 1%; }
  .bnr-mutual h6:after { margin-left: 1%; }
  .bnr-mutual .mutual-list li { width: 100%; margin: 0 auto 1rem; } }
@media screen and (max-width: 320px) { .bnr-mutual h6 { font-size: 0.75em; } }

.bnr { width: 100%; background: #fff; border-top: medium solid #eceff1; margin: auto; text-align: center; }
.bnr ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.bnr ul div, .bnr ul li { min-height: 0; }
.bnr ul li { width: 80%; margin-bottom: 1.25rem; text-align: center; line-height: 1; }
.bnr ul li.to-areaguide { max-width: 640px; margin-bottom: 0; }
.bnr ul li img { width: 100%; height: auto; line-height: 0; }
.bnr ul li a { display: block; width: 100%; height: 100%; line-height: 0; }
.bnr ul li a:hover { opacity: 0.6; }
.bnr ul li a + .note { text-align: left; margin-top: 0.25rem; }
@media screen and (max-width: 834px) { .bnr ul li { width: 96%; } }

@media screen and (max-width: 768px) { .spnav { display: block; position: fixed; z-index: 1000; left: 0; bottom: 70px; background: #fff; }
  .spnav ul li.outline { display: inline-block; } }

#sp-footNav { display: none; width: 100%; height: 70px; position: fixed; bottom: 0px; z-index: 1500; background-color: #fff; }
#sp-footNav ul { border-top: 1px solid #cacaca; font-size: 0px; }
#sp-footNav ul li { display: inline-block; /*width: 25%;*/ /*width: 16.5%;*/ width: calc(100% / 7); height: 70px; position: relative; }
#sp-footNav ul li::after { content: ""; height: 100%; width: 1px; position: absolute; top: 0; right: 0; background-color: #cacaca; }
#sp-footNav ul li:last-child::after { display: none; }
#sp-footNav ul li.req { -webkit-transition: all 0.2s linear; }
#sp-footNav ul li.req img { /*filter: brightness(0) saturate(100%) invert(73%) sepia(49%) saturate(511%) hue-rotate(4deg) brightness(89%) contrast(85%);*/ filter: brightness(0) saturate(100%) invert(49%) sepia(93%) saturate(430%) hue-rotate(13deg) brightness(90%) contrast(91%); }
#sp-footNav ul li.req:hover { border-color: #f0d135; background-color: #b28700; background-image: -moz-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); background-image: -webkit-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); background-image: -ms-linear-gradient(0deg, #f0d135 0%, #a38a0c 100%); }
#sp-footNav ul li.req:hover img { filter: none; }
#sp-footNav ul li.res { -webkit-transition: all 0.2s linear; }
#sp-footNav ul li.res img { filter: brightness(0) saturate(100%) invert(12%) sepia(86%) saturate(3516%) hue-rotate(345deg) brightness(117%) contrast(93%); }
#sp-footNav ul li.res:hover { border-color: #b4004a; background-color: #b4004a; background-image: -moz-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); background-image: -webkit-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); background-image: -ms-linear-gradient(0deg, #b4004a 0%, #5f0027 100%); }
#sp-footNav ul li.res:hover img { filter: none; }
#sp-footNav ul li.online { -webkit-transition: all 0.2s linear; }
#sp-footNav ul li.online img { filter: brightness(0) saturate(0%) invert(60%) sepia(100%) saturate(80%) hue-rotate(0deg) brightness(50%) contrast(80%); }
#sp-footNav ul li.online:hover { border-color: #616161; background-color: #616161; background-image: -moz-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -webkit-linear-gradient(0deg, #868686 0%, #505050 100%); background-image: -ms-linear-gradient(0deg, #868686 0%, #505050 100%); }
#sp-footNav ul li.online:hover img { filter: none; }
#sp-footNav ul li span, #sp-footNav ul li a { display: block; width: 100%; height: 70px; /*border-right: 1px solid #333;*/ }
#sp-footNav ul li span img, #sp-footNav ul li a img { position: absolute; left: 50%; top: 50%; margin-left: -25px; margin-top: -25px; width: 50px; height: 50px; }
#sp-footNav ul li.sp-menu.on span { background-color: #FFFFFF; }
@media screen and (max-width: 1024px) { #sp-footNav { display: block; } }

.container { background: #fff; }

.contents-inner { width: 96%; max-width: 1024px; margin: auto; padding: 5rem 0; }

@media screen and (max-width: 834px) { .contents-inner { padding: 2.5rem 0; } }
.img { position: relative; line-height: 1; }
.img img { width: 100%; height: auto; line-height: 1; }
.img .cap { font-family: "Noto Sans JP" , "Helvetica Neue", YuGothic, 'Yu Gothic medium', 'Hiragino Sans', Meiryo, 'sans-serif'; -webkit-font-smoothing: antialiased; font-weight: normal; font-size: .625rem; line-height: 1; position: absolute; bottom: 0.5rem; right: 0.25rem; width: auto; max-width: 100%; margin: 0; padding: 0; color: #222; line-height: 1.2; text-align: right; }
.img .cap.out { display: block; position: static; margin-top: 0.25rem; text-align: right; }
.img .cap.cap-l { text-align: left; right: auto; left: 0.25rem; }
.img .fff { color: #fff; text-shadow: 0 0 1px #000, 0 0 2px #000, 0 0 3px #000; }
.img .fff.no-shadow { text-shadow: none; }

.page-tag { font-family: 'EB Garamond', serif; font-size: 1em; color: #fff; text-align: center; line-height: 1; letter-spacing: 0.05em; padding: 0.25rem; width: 32%; max-width: 10rem; border: solid thin #fff; border-left: none; filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.4)); position: absolute; top: 4.25rem; left: 0; }
@media screen and (max-width: 1024px) { .page-tag { top: 2.25rem; } }
@media screen and (max-width: 600px) { .page-tag { top: 1.25rem; } }
@media screen and (max-width: 320px) { .page-tag { font-size: 0.875em; top: 0.75rem; } }

.main-copy { text-align: center; font-size: 2em; line-height: 1.44; font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; }

.sub-copy { text-align: center; font-size: 1.5em; line-height: 1.44; font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; }

.lead { text-align: center; font-size: 1em; line-height: 2; font-family: "游明朝","Noto Serif JP" ,   YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; font-weight: normal; }

.main-copy + .lead { margin-top: 3.5rem; }

@media screen and (max-width: 834px) { .main-copy { font-size: 1.5em; }
  .sub-copy { font-size: 1.25em; }
  .lead { font-size: 0.9375em; }
  .main-copy + .lead { margin-top: 3rem; } }
@media screen and (max-width: 600px) { .main-copy { font-size: 1.25em; }
  .sub-copy { font-size: 1.125em; }
  .lead { font-size: 0.875em; }
  .main-copy + .lead { margin-top: 2.5rem; } }
@media screen and (max-width: 320px) { .main-copy { font-size: 1.125em; }
  .sub-copy { font-size: 1em; }
  .lead { font-size: 0.8125em; } }
.scroll img { width: 100%; height: auto; line-height: 1; }
.scroll .line { width: 1px; height: 80px; background-color: #316b5c; margin: 0 auto 8px; animation: scrollDown 2s ease infinite; position: relative; }
.scroll .line::before { content: ""; display: block; aspect-ratio: 1/1; width: 1rem; border-bottom: thin solid #316b5c; position: absolute; bottom: 12%; left: 50%; transform: rotate(-45deg) translateX(-72%); }
@keyframes scrollDown { 0% { transform-origin: top; transform: scaleY(0); }
  45% { transform-origin: top; transform: scaleY(1); }
  55% { transform-origin: bottom; transform: scaleY(1); }
  100% { transform-origin: bottom; transform: scaleY(0); } }
.scroll .icon { margin: auto; font-family: 'EB Garamond', serif; font-size: 1.125rem; letter-spacing: 0.1em; color: #316b5c; text-align: center; line-height: 1; animation: fluffy 2s ease infinite; }
@keyframes fluffy { 0% { transform: translateY(-4px); opacity: 0; }
  455% { transform: translateY(6px); opacity: 0.5; }
  55% { transform: translateY(6px); opacity: 1; }
  100% { transform: translateY(-4px); opacity: 0; } }
@media screen and (max-width: 464px) { .scroll .line { height: 64px; }
  .scroll .line::before { width: 12px; }
  .scroll .icon { font-size: 1rem; } }

/* print */
@media print { body { width: 540px; margin: 0 auto; }
  #head { position: relative; }
  #head { width: 200px; height: 40px; }
  footer { width: 300px; margin: 0 auto; }
  .note { padding: 0 !important; }
  .ftel { text-align: left; }
  .page-container, .contents-inner { margin-top: 0px !important; }
  #head .g_nav, #head .hnav, footer .txtlink, .flexBanner, #pagetop, .subbtn-container, .conv-container { display: none; } }
