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

          基本要素

*****************************************/
html {box-sizing: border-box;} 
*{margin:0;padding: 0;min-height: 0vw;}
*, *:before, *:after {box-sizing: border-box;}

.template {position: fixed;bottom: 0;left:0;z-index: 100}
.grecaptcha-badge {visibility: hidden;}

/* スマホを横向きにした際に、意に反してフォントが大きくなるのを防ぐ */
body {text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}

img  {display: block;max-width: 100%;height: auto;}
html,body{height: 100%}
figure {margin-bottom: 0}

/* リンク基本 */
a {outline:none;text-decoration:none;transition: all 0.1s linear;}
a img   {border-style:none;}
a:focus {outline:none;} 
a:hover {cursor:pointer;transition: all 0.1s linear;}
a.bright picture {transition: all 0.2s linear;}
a.bright:hover picture {filter: brightness(0.67);transition: all 0.2s linear;}
a.boxshadow {box-shadow: 0 0 20px 0 rgba(119, 119, 119, 0.47)}
a.boxshadow:hover {box-shadow: 0 0 50px 0 rgba(119, 119, 119, 0.47);}

.no-links {pointer-events: none;cursor: default;text-decoration:none;}

a.arrow:after {padding-left: 12px;content: "\e037";font-family: Material Icons Round;margin-left: auto;transition: all 0.2s linear;font-size: 1.4rem;line-height: 1;}
a.arrow:hover:after {color: #C93935;transition: all 0.2s linear;}

a.bar {border-bottom:1px solid #ccc;position: relative;}
a.bar:before {content: "";display: block;position: absolute;bottom: -1px;width:100%;background:#996c6b;left: 0;transform-origin: left;transform: scale(0, 1);height:1px;transition: 0.2s ease-in;}
a.bar:hover:before {transform: scale(1);} 

svg {vertical-align: bottom;}


/* 文字基本 */
html { font-size: 62.5%;background:#fff;} /* 1emが10px */
body {font-size:16px;font-size: 1.6rem;}

/* #5c5a5a */
body {color:#232f26;text-align:left;line-height: 2;overflow-wrap: break-word;word-break: normal;-webkit-text-size-adjust: 100%;}
body a {color:#232f26;}
body {font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
main .page_post {font-family: "Klee One", cursive;}
.mincho {font-family: "Zen Old Mincho", serif;font-weight: 400;font-style: normal;}
.gothic {font-family:-apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
.yugothic {font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
.noll_font {font-family: "Alexandria", sans-serif;}

/* ::: 小技 ::: */
.view_more  {display: flex;justify-content: flex-end;}

.view_more a {transition: all 0.2s linear;letter-spacing: .05em;font-family: "Alexandria", sans-serif;;align-items: center;font-size: 1.3rem;padding-right: 4px;border-bottom:none;display: flex;}
.view_more a:after {position: relative;content: "";margin-left: 6px;width: 20px;height: 20px;background:#C93935 url(../../i/basic/icon/arrow.svg) no-repeat center;background-size: 40%;border-radius: 50%;}
.view_more a:hover {transition: all 0.2s linear;position: relative;transform: translate(5px,0);}
.text_rotate {transform: scale(-1, 1);display: inline-block;}

.puls_icon {color:#666;display: inline-block;vertical-align: middle;line-height: 1;width: 10px;height: 2px;background: currentColor;border-radius: 1px;position: relative;}
.puls_icon::before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: inherit;border-radius: inherit;transform: rotate(90deg);}


/* : 画像下の説明を画像サイズで折り返す（.sizefit付与） : */
.txt figure.wp-block-image.sizefit {width: auto;}

img.aligncenter {margin: 0 auto;}

/* ノーテキスト処理 */
.no-text {display: block;text-indent:110%;white-space:nowrap;overflow:hidden;}

/* フロート */
.clearfix:after {display: block;visibility: hidden;clear: both;height: 0;content: " ";font-size: 0;}
.palt{font-feature-settings: "palt";}
.non-letter-spacing {letter-spacing: 0 !important}

/* FOOTER最下部固定 */
html {height: 100%;}
body {margin: 0;padding: 0;height: 100%;}
header {width: 100%;}
footer {position: sticky;top: 100vh;width: 100%;}

/* -- input,select,textarea -- */
input,select,textarea,label {-webkit-appearance: none;-moz-appearance: none;appearance: none;-webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0;outline:0;border: none;}
textarea {display: block;}

iframe {vertical-align: bottom;}
img {vertical-align: bottom;}
*:focus {outline: none;}

.animation-bg {
  background:#1c4a4c;
  display: block;
  content: "";
  position: fixed;
  z-index:2;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  animation-fill-mode:forwards;
  animation-duration: .5s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

.animation-bg {
  animation-name: PageAnime-ttb;
}
@keyframes PageAnime-ttb {
  0% {
    transform-origin: top;
    transform: scaleY(0);
  }
  100% {
    transform-origin: top;
    transform: scaleY(1);
  }
 
}

/* -- ボタン類の体裁 -- */
input[type="text"],input[type="password"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],textarea {padding: 1em;width: 100%;}
input[type="button"],input[type="submit"],input[type="reset"]  {display: inline-block;padding: 0 1.5em;background-color:#C93935;border: none;transition: .2s ease all;letter-spacing: 1px;text-align: center;width: auto;height: 40px;line-height: 40px;min-width: 200px;top: 0;position: relative;font-weight: bold;box-shadow: 0 4px 0 rgba(0, 0, 0, 0.25);color: #fff;margin-right: 9px;}
input[name="upButton"] ,input#search_zipcode {padding: 1px .7em 0 1em;letter-spacing: 3px;background-color:#474759;height: 26px;}
input[type="button"]:hover,input[type="submit"]:hover,input[type="reset"]:hover {background-color:#474759 !important;cursor: pointer;box-shadow: 0 4px 0 rgba(0, 0, 0, 0);top:4px;}
input.delButton{}
input.delButton:hover {}
input[type="checkbox"] {border: 1px solid #ccc;-webkit-appearance: checkbox;-moz-appearance: checkbox;appearance: checkbox;}
input[type="radio"] { border: 1px solid #bbb;-webkit-appearance: radio;-moz-appearance: radio;appearance: radio;}
input[type="file"] {border: none;}

/* 基本のセレクトボックスのカスタマイズ */
select {width: 100%;outline:none;border-radius: 0;position: relative;z-index: 1;border: 1px solid #bdbdbd;transition: all .2s ease-in;padding: 9px 32px 9px 9px;
background: url(../../i/basic/icon/select.svg) no-repeat right center;}
select:hover {border: 1px solid #C93935;transition: all .2s ease-in;cursor: pointer;}






/* ::: テキストエリアの基本 ::: */
.txt {font-family: "Klee One", cursive;font-weight: 400;word-break: break-word;}
.txt b,.txt strong {font-weight: 600;}
.txt a {color:#995656;border-bottom: 1px solid #995656;padding: 0 0 1px 0;}
.txt a:hover {color:#C93935;border-color:#C93935;}

.txt strong {font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-style: normal;}
.txt .underline {background: linear-gradient(transparent 0%, transparent 50%, #f5ff95 50%, #f5ff95 100%);}
.txt p {margin-bottom: 0;}
.txt p+*,.txt ul+p,.txt ol+p,.txt p+ol,.txt p+ul,.txt blockquote+p,.txt blockquote+blockquote {margin-top:1.75em;}
.txt .wp-block-image+p,.txt div+p,.txt ol+figure,.txt ul+figure,.txt figure+figure,.txt figure+p  {margin-top: 2.5em;}

/* 引用 */
.txt blockquote {border: 1px solid #ddd;padding: 32px .5em .5em 1em;margin-top: 1.5em;background: #f6f6f6;position: relative;line-height: 1.8;}
.txt blockquote:before{position:absolute;content:'';top: 14px;background:  url(../../i/basic/icon/inyou.svg);height: 18px;width: 18px;background-repeat: no-repeat;background-size: contain;}
.txt p.has-small-font-size {font-size: .84em !important;line-height: 1.6}
.txt p.has-large-font-size {font-size: 1.1em !important;line-height: 1.7;}
.txt p.has-x-large-font-size {font-size: 1.24em !important;line-height: 1.7;}

/* 見出しの基本 */
.txt h2,.txt h3,.txt h4,.txt h5 {display: block;width: 100%;line-height: 1.5}
.txt h2 {font-size: 1.6em;padding: 0 0 .33em 0px;margin-bottom: .25em;font-weight: bold;border-bottom: 2px solid #93a59f;position: relative;}
.txt h2:after {position: absolute;bottom: -2px;left: 0;width: 10%;height: 2px;content: "";background:#005B3D;}
.txt h3 {font-size: 1.35em;margin-bottom: .5em;font-weight: bold;}
.txt h4 {font-size: 1.1em;font-weight: bold;display: flex;align-items: center;margin-bottom: .33em;}
.txt h5 {font-size: 1.1em;font-weight: bold;display: flex;align-items: center;margin-bottom: .3em;}
.txt h6 {font-size: 1.00em;font-weight: bold;display: flex;align-items: center;margin-bottom: .3em;}
.txt h6:before {content: "◎";padding-right: .2em;}
.txt h3,.txt h4  {padding: 0.2em 0 .1em .5em;border-left: 5px solid #93a59f;}


/* 見出しの上スペース */
.txt h2 {margin-top:2.8em;}
.txt h3,.txt h4 {margin-top:2.2em;}
.txt h5,.txt h6 {margin-top:2em;}
.txt h2:first-child,.txt h3:first-child,.txt h4:first-child,.txt h5:first-child,.txt h6:first-child {margin-top: 0;}
.txt .wp-block-image:first-child,.txt figure:first-child{margin-top: .5em;}
.txt p .wp-block-image:first-child,.txt p figure:first-child{margin-top: 0;}
.txt h2+.wp-block-image,.txt h3+.wp-block-image,.txt h4+.wp-block-image {margin-top:.8em}
.wp-block-image+h2,.wp-block-image+h3 {margin-top:4em}

.txt ul {list-style: none;padding: 0;text-indent: -14px;padding-left: 3em;word-break: break-word;}
.txt ul li:before {font-family: 'Material Icons';content: '\e061';font-size: 8px;padding: 0 6px 0 0px;position: relative;top: -1px;}
.txt ol {}
.txt ol li {}
.txt ul li ,.txt ol li {line-height: 1.8;padding-bottom: .2em;}
.txt ol.wp-block-footnotes {font-size: .84em;margin-top: 0;}
.txt ol ol {margin-top: .33em;}
.txt ol {list-style: none;counter-reset: number;}
.txt ol li {position: relative;padding-left: 3.3em;}
.txt ol ol li {padding-left: 3em;}
.txt ol li::before {counter-increment: number;content: '＜' counter(number) '＞';position: absolute;left: 0;}
.txt ol ol li::before  {counter-increment: number;content: '（' counter(number) '）';position: absolute;left: 0;}


/* nohead */
.txt p.nohead {margin-top: 0em}
.txt h2.nohead,.txt h3.nohead,.txt h4.nohead,.txt h5.nohead,.txt h6.nohead {margin-top:1em;}
.txt ul.nohead,.txt ol.nohead,.txt figure.nohead {margin-top: .5em;}

/* figcaption */
.txt .wp-block-image {display:table;width: 100%;}

.txt figure figcaption,.txt .wp-block-image+p.wp-caption-text {margin-top: .5em;font-size: .8em;margin-bottom: 0;display:block;caption-side: bottom;line-height: 1.6;}
.txt figure.wp-block-image figcaption,.txt .wp-block-image figure figcaption {display: table-caption;}

.txt figure figcaption::before,.txt .wp-block-image+p.wp-caption-text::before {content: "";display: inline-block;width: 0;height: 0;border-style: solid;border-right: 5px solid transparent;border-left: 5px solid transparent;border-bottom: 16px solid;border-top: 0;position: relative;top: 1px;margin-right: 4px;margin-left: 6px;}
.txt .wp-block-gallery figure figcaption::before {content: none;}

/* image */
.txt .wp-block-image>a,.txt .wp-block-image>figure>a {border: none;padding:0px;vertical-align:top;position: relative;overflow: hidden;}
.txt .wp-block-image>a::before,.txt .wp-block-image>a::after,.txt .wp-block-image>figure>a::before ,.txt .wp-block-image>figure>a::after  {content: "";display: block;position: absolute;}
.txt .wp-block-image a img {transition: all .2s ease-in;}
.txt .wp-block-image a:hover img {filter: brightness(0.67);transition: all .2s ease-in;transform: scale(1.02, 1.02);}
.txt .wp-block-image>a::before,.txt .wp-block-image>figure>a::before {background: url(../../i/basic/icon/pagelink.svg);height: 18px;width: 18px;background-repeat: no-repeat;background-size: cover;bottom: 12px;right: 12px;z-index: 12;}
.txt .wp-block-image>a::after,.txt .wp-block-image>figure>a::after {height: 100%;width: 100%;left: 0;bottom: 0;background:linear-gradient(to bottom,rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0) 50%,rgba(0, 0, 0, .5) 100%);background-position: left bottom;opacity: .66;max-height: 160px;}
.txt .wp-block-image>a.colorbox::before,.txt .wp-block-image>figure>a.colorbox::before {background: url(../../i/basic/icon/colorbox.svg);height: 18px;width: 18px;background-repeat: no-repeat;background-size: cover;bottom: 12px;right: 12px;z-index: 12;}


.txt .wp-block-image:after {display: block;visibility: hidden;clear: both;height: 0;content: " ";font-size: 0;}
.txt .wp-block-image,.txt .wp-block-cover,.txt .wp-block-gallery,.txt .wp-block-table {margin-top: 2.3em;}
.txt .wp-block-image+.wp-block-image{margin-top:2.3em;}
.txt .wp-block-image figure {margin-top:0 !important;}


/* table */
.txt table td,.txt table th {padding: .5em .75em;line-height: 1.6;border-color: #888;}
.txt table tbody tr td.th {background: #f5f5f5;white-space: nowrap;vertical-align: top;width:24%;}
.txt table thead th {border-bottom:3px double;background: #f5f5f5;text-align: center;}
.txt table tfoot td  {border-top:3px double;background: #f5f5f5;text-align: center;}
.txt table thead+tbody tr td.th {background: none;white-space:normal;}
.txt table table a {display: inline;}
.txt table {width: 100%;padding-bottom: 10px;overflow: auto;}
.txt table {min-width:540px}

/* ::: レイアウト ::: */
/* 横幅 */
body main article,footer>article {padding: 0;padding-left: 90px;padding-right: 90px;} 
body main article.block {padding-top: min(calc(30px + 8vw),130px);padding-bottom: min(calc(50px + 8vw),150px);overflow: hidden;}
body main article.full {padding: 0;}
body main article.page_post {padding-left: 48px;padding-right: 48px;}
.content.wide {max-width: 1440px;margin-left: auto;margin-right: auto;} 
.content.wide2 {max-width: 1200px;margin-left: auto;margin-right: auto;}
.content.middle2 {max-width: 1180px;margin-left: auto;margin-right: auto;} /* facility, */
.content.middle {max-width: 1020px;margin-left: auto;margin-right: auto;} /* newsroom */
.content.narrow {max-width: 920px;margin-left: auto;margin-right: auto;} /* search,area_map */
.content.page_style {max-width: 840px;margin-left: auto;margin-right: auto;} /* 固定ページ １カラム */
.content.page_column {max-width: 1180px;margin-left: auto;margin-right: auto;} /* 2カラム（施設） */
.content.narrow2 {max-width: 780px;margin-left: auto;margin-right: auto}

/* ::: フレックスボックス ::: */
/* フレックス */
.flexbox {display: flex;justify-content:space-between;flex-wrap:wrap;}
.flexbox>.item {width:calc(50% - 20px);margin-bottom: 40px;width: 47%;}
.flexbox.flex3>.item {width:calc(33.33% - 20px);margin-bottom: 30px}
.flexbox.flex4>.item {width:calc(25% - 20px);margin-bottom: 26px}
.flexbox.flex5>.item {width:calc(20% - 20px);margin-bottom: 25px}
.flexbox>.item.dammy {border: none !important;padding: 0px !important;margin-bottom: 0 !important;}

/* フレックス書式 */
.flexbox>.item h3 small {font-size: 12px}

/* ::: 画像リンク ::: */
figure.item a {display: block;position: relative;}
figure picture {position: relative;display: block;}

figure picture.dammy:before {content:"";display: block;padding-top: 66.6%;background:#bbb;width: 100%;}
figure picture.dammy {display: flex;align-items: center;justify-content:center;flex-flow: column;}
figure picture.soon {color: #fff;font-family: 'Poppins','Noto Sans JP', sans-serif;font-weight: 400;letter-spacing: .15em;}
figure a.preparation picture.soon p {position: absolute;top: 0;left: 0;width: 100%;height: 100%;justify-content: center;display: flex;align-items: center;flex-flow: column;-webkit-backdrop-filter: brightness(.5)grayscale(90%);backdrop-filter: brightness(.5)grayscale(90%);background: #ffffff75;}
figure a.preparation picture.soon p:before {content: "";display: block;width: 24%;height: 24%;background: url(../../i/basic/icon/corn.svg);background-size: contain;background-repeat: no-repeat;background-position: center;max-width: 60px;}
figure picture.dammy.soon.no_thumbnail p:before {background: url(../../i/basic/icon/camera.svg) no-repeat top center;background-size: 32px;font-size: 1.6rem;font-weight: bold;}
#megamenu figure picture.dammy.soon p {font-size: 1.3rem;}
figure picture.dammy.soon.no_thumbnail::before {background: url(../../i/basic/thumbnail/dammy.jpg) no-repeat center;background-size:cover;filter: brightness(0.5);}
figure a.scallup picture {overflow: hidden;display: block;transition: all 0.2s linear;}
figure a.scallup picture img {transition: all 0.2s linear;}
figure a.scallup:hover picture img {transition: all 0.2s linear;}
figure a.scallup:hover picture img {transform: scale(1.02, 1.02);transition: all 0.2s linear;}

.facility_item a.preparation picture p {width: 100%;}

.button_border a {position: relative;padding: 6px 20px;border-bottom: none;text-align: center;}
.button_border a:after {content: "";height: 1px;width: 100%;bottom: -5px;position: absolute;left: 0;background: #000;}
.button_border a:hover {box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.15);position: relative;top: -1px;}

/* ::: ページ推移 ::: */
.opening  {width: 100%;height: 100%;position: fixed;z-index: 800;left: 0;top: 0;background:#fff;padding:8vh;}
.opening .loading {width: 100%;height: 100%;position: relative;background-repeat: no-repeat;display: flex;align-items: center;justify-content:center}

/* スキップボタン */
.opening #skip {position: fixed;bottom: 32px;right: 16px;z-index: 602;font-size: 1.2rem;}
.opening #skip a {display: flex;align-items: center;font-family:sans-serif;font-weight: 700;}
.opening #skip figure {height: 20px;margin-left: 5px;}
.opening #skip figure img {height: 100%;width: auto}

/* オープニング画像 */
.opening .loading picture .wrap {display:none;}
.opening .loading .pulse {}
div.loading svg.copy {width: 50%;margin-bottom:10vh;max-width: 260px;}
div.loading .wrap {}
div.loading picture.logo {width: 20%;max-width: 100px;min-width: 80px;z-index: 10;}
div.loading picture.logo img {animation: pulse .5s;}

@keyframes poyoyon {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(5deg, 5deg);
  }
  10% {
    transform: skew(-4deg, -4deg);
  }
  15% {
    transform: skew(3deg, 3deg);
  }
  20% {
    transform: skew(-2deg, -2deg);
  }
  25% {
    transform: skew(1deg, 1deg);
  }
  30% {
    transform: skew(-0.6deg, -0.6deg);
  }
  35% {
    transform: skew(0.3deg, 0.3deg);
  }
}

/* 画像アニメ（鼓動） */
@keyframes pulse {
0% {transform: scale(1);-webkit-transform: scale( 1 );  /* Chrome,Safari */}
50% {transform: scale(1.05); -webkit-transform: scale( 1.05 );  /* Chrome,Safari */}
100% {transform: scale(1);-webkit-transform: scale( 1 );  /* Chrome,Safari */}
}

/* プログレスバー */
.progbar{width:100%;height:4px;background-color:#ececec;position:fixed;bottom: 0px;;overflow: hidden;}
.progbar .bar{position:absolute;height:100%;background-color:#666;animation: progress 2.0s normal;animation-fill-mode: forwards;}
@keyframes progress {
	0% {width: 0}
	100% {width: 100%}
}

.breadcrumbs{}

/****************************************
Swiper（トップページ）
*****************************************/
.swiper-wrapper {position: relative;}
.swiper-pagination.swiper-pagination-bullets {bottom:30px;display: flex;justify-content: center;align-items: center;z-index: 20;}
.swiper-pagination-bullet {opacity: 1;background:#fff;display: flex;width: 8px;height: 8px;justify-content: center;align-items: center;color: #fff;transition: all 0.2s linear;margin: 0 5px !important}
.swiper-pagination-bullet-active {animation: rotate-anime 6s linear infinite;background:#fff;cursor:default;width: 8px;height: 8px;position: relative;transition: all 0.2s linear;border-radius: 0;}
@keyframes rotate-anime {
0%  {transform: rotate(0);}
100%  {transform: rotate(360deg);}
}

.swiper-pagination-bullet .num {display: none;letter-spacing: 0;font-weight: 700;font-size: 1.3rem;font-family: arial black;}
.swiper-pagination-bullet-active .num {display: none;}
.swiper-slide {overflow: hidden;-webkit-backface-visibility: hidden;backface-visibility: hidden;background: #fff !important;position: relative;}
.swiper-slide>img {width: 100%}

/* スライド上のロゴ */
body.home #topslide .swiper-slide::before {content:"";display: block;position: absolute;display: flex;justify-content: center;align-items: center;top: 0;width: 100%;height: 100%;background-size:clamp(110px, 13vw, 150px);z-index: 20;background-image:url(../../i/logo_f.svg);background-repeat: no-repeat;background-position: center;}
body.home #swiper_smart_area .swiper-slide::before {background-size:clamp(130px, 15vw, 160px);}

.swiper-pagination-bullet:hover {background: #C93935;transition: all 0.2s linear;}
.swiper-pagination-fraction {font-family: 'Zen Maru Gothic', sans-serif;font-size: 1.3rem;font-weight: 700;position: absolute;z-index: 100;top: 8px;bottom: auto;width: auto;left: 6px;color: #fff;background:#404040;padding: 0 12px;height: 24px;line-height: 24px;border-radius: 12px;}
.swiper-pagination-fraction .swiper-pagination-current {}

#topslide {position: relative;}

/* PC版 */
#swiper_pc_area{overflow: hidden;}
#swiper.bg_img {width: 100%;height:auto;overflow: visible;position: relative;}
#swiper .swiper-wrapper {overflow: hidden;}
#swiper_pc_area .swiper-slide img {filter: brightness(0.9);}
#swiper_smart_area {display: none;}

/* スマート版は背景画像（背景だと拡大がうまくいかない） */
.bg_slide {position: relative;z-index: 5;}
.bg_slide .swiper {width: 100%;z-index:5;padding: 0;height: 100%;}
.bg_slide .swiper .slide-img {background-size: cover;background-position: center center; height:100%;}
.bg_slide .swiper .slide-img.top {background-position: top center;}
.bg_slide .swiper .slide-img.bottom {background-position: bottom center;}

#swiper_smart_area.bg_slide {padding: 0;min-height: 320px;height: calc(100vh - 80px);}

.swiper-logo {position: absolute;display: flex;justify-content: center;align-items: center;top: 0;width: 100%;height: 100%;background-size: 100%;z-index: 20;}
.swiper-logo svg {width: 14vw;min-width: 120px;max-width: 180px}
.swiper-logo svg.svg path,.swiper-logo svg.svg polygon {fill: #fff;}
.swiper-logo.fff svg.svg path,.swiper-logo.fff  svg.svg polygon {fill: #fff;}

/* :::: スライド下の動く波 :::: */

/*
Copyright (c) 2025 Goodkatz
Released under the MIT license
URL：https://codepen.io/goodkatz/pen/LYPGxQz
*/

.shape_ark .waves {
  position:relative;
  width: 100%;
  height:7vw;
  margin-bottom:-7px; /*Fix for safari gap*/
  min-height:50px;
  max-height:120px;
}

/* Animation */
.parallax > use {
  animation: wave 50s cubic-bezier(.55,.5,.45,.5)infinite;
}
.parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 14s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 20s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 26s;
}
.parallax > use:nth-child(4) {
  animation-delay: -1s;
  animation-duration: 32s;
}
@keyframes wave {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}


/* :::: スクロールを促すバー :::: */



.scroll_bar_area {height: 90px;    position: relative;}

.scroll_bar::after {
 content: "";
    position: absolute;
    width: 1px;
    height: 90px;
    background: #949494;
    animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
    left: 50%;
    z-index: 20;
    bottom: -32px;
}

@keyframes liner {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}



@keyframes zoomUp {
  0% {
    transform: scale(1);
    -webkit-transform: scale( 1 );  /* Chrome,Safari */
  }

  100% {
    transform: scale(1.1);
     -webkit-transform: scale( 1.1 );  /* Chrome,Safari */
  }
}
.swiper-slide-active .swiper-img.zoom,
.swiper-slide-duplicate-active .swiper-img.zoom,
.swiper-slide-prev .swiper-img {-webkit-animation: zoomUp 12s ;animation: zoomUp 12s;-webkit-animation-fill-mode: both;animation-fill-mode: both;}

.swiper-caption {position: absolute;z-index: 12;top: 10px;right: 10px;font-size: 1.1rem;color: #fff;background:#47475959;padding: 4px 9px 6px 11px;text-align: center;line-height: 1.3;transition: all 0.2s linear;min-width: 120px;letter-spacing: .1em;}
a .swiper-caption {background:#C93935;}
#swiper a {flex-direction: column;align-items: center;display: flex;}
#swiper a .swiper-caption:after {content: "";height: 1px;position: absolute;bottom: -4px;width: 100%;background:#C93935;transition: all 0.1s linear;}
#swiper a .swiper-caption{flex-direction: column;align-items: center;display: flex;}
#swiper a .swiper-caption small {margin-bottom: 2px;font-size: 1rem;}
#swiper a:hover .swiper-caption {transition: all 0.1s linear;margin-top: 5px;}
#swiper a:hover .swiper-caption:after {width: 0;transition: all 0.2s linear;}


.swiper-slide-active .swiper-caption {animation-name: fade-in;animation-duration: 2s;animation-delay: .1s;animation-fill-mode: both;}
@keyframes fade-in {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.swiper-button-prev::after,.swiper-button-next::after {content: "";}
.swiper-button-prev,.swiper-button-next {background-image: none;}
.swiper .arrow  {width: 22px;height: 20px;}
.swiper .arrow svg {width: 13px;height: 20px;position: absolute;display: block;transition: all 0.1s linear;}
.swiper .arrow svg.left { transform: scale(-1, 1);}
.swiper .arrow svg path {fill:#cfcfcf;transition: all 0.1s linear;;}
.swiper .swiper-button-prev.arrow {left: -30px;}
.swiper .swiper-button-next.arrow {right:-30px;}
.swiper .arrow:hover svg path {fill:#C93935;transition: all 0.1s linear}
.swiper .arrow:hover svg {transition: all 0.1s linear;}
.swiper .arrow svg.left  {left: 8px;}
.swiper .arrow svg.right {right:8px}  
.swiper .arrow:hover svg.left  {left: 3px;}
.swiper .arrow:hover svg.right {right: 3px;}
.swiper .arrow::after {content: none;}
#swiper_news_area {margin-bottom: 32px;}
#swiper_news_area .swiper-slide {padding: 12px;border: 1px solid}
/****************************************

ヘッダー

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

/* ::: ヘッダーロゴ部分 ::: */
header {z-index: 100;height: 170px;margin-bottom: 20px;overflow: hidden;}
header section#headline {display: flex;width: 100%;height: 100%;padding-right:100px; }
header #title {margin-left: 38px;display: flex;align-items: center;}/* :: 高さは絵柄で調整  :: */
header #title a.normal {display:block;}
header #title a.smart {display: none; }
header #title a svg {height:104px;display: block;}
header #title a svg {}
body.has_mega-picture header #title a svg path {fill:#fff;}
body.has_mega-picture header #title a svg path.text {display: none;}
body.has_mega-picture header #title a svg .change {fill: #fff;}/* :: メガ画像にロゴが重なるページでは色変更  :: */

/* :: ハンバーガーメニューボタン  :: */
header .menubutton_wrap {position:fixed;z-index: 20;top: 73px;right: 28px;display: flex;align-items: center;}
header div.bar {width: 40px;height: 2px;margin: 9px auto;background-color:#93a59f;transition: all 0.2s linear;}
header.color div.bar {background-color:#fff;} /* スクロールで色変化 */
header div.bar:first-child {margin-top: 0;}
header div.bar:last-child {margin-bottom: 0;}
header a#menubutton.button {position: relative;}
header a#menubutton.button:hover div.bar {background-color:#34554a;transition: all 0.2s linear;position: relative;top: 0;}
header a#menubutton.button:hover div.bar:first-child {transform: translateY(3px);}
header a#menubutton.button:hover div.bar:last-child {transform: translateY(-3px);}
/* :: グローバルメニュー  :: */
#global_menu {margin-left: auto;display: flex;align-items: center;}
#global_menu .wrap {display: flex;align-items: center;font-family: "Klee One", cursive;   }
body.has_mega-picture header #global_menu a {color: #fff;}
#global_menu .wrap.buttons { padding-right: 12px;}
#global_menu .sns_icon {margin-left: 4px;}
#global_menu .text_menu {display: flex;align-items: center;position: relative;top: -1px;}

#global_menu ul {display: flex;align-items: center;}
#global_menu ul li {padding: 0 12px;line-height: 2;}
#global_menu .buttons ul li {}
#global_menu ul li a {font-weight: normal;font-size: 1.3rem;letter-spacing: .05em;font-family: "Alexandria", sans-serif;display: block;}
#global_menu .underbar ul li a:after {position: relative;content: '';display: block;background-color: #996c6b;height: 2px;width: 0%;transition: all .1s ease-in;font-family: "Zen Old Mincho", serif;}
#global_menu .underbar ul li.current-menu-item a:after,#global_menu .underbar ul li a:hover::after {width: 100%;}
#global_menu .underbar ul li.pulldown a:hover::after {width: 0% !important; }

body.single-post #global_menu ul li.newspage a:after {width: 100%;}/* ニュースシングル対応 */
body.newsroom #global_menu ul li.newspage a:after {width: 100%;}

/* :: ホットニュース点滅  :: */
#global_menu .hotnews a {position: relative;}
#global_menu .hotnews a:before {content: "";display: block;width: 6px;height: 6px;border-radius: 50%;top: -12px;background-color:#ffc721;left: 50%;margin-left: -3px;position:absolute;animation:blink 1.5s ease-in-out infinite alternate;}

/* :: ボタン（グローバルメニュー）  :: */
#global_menu .buttons ul li a {height:26px;width: 26px;display: flex;justify-content: center;align-items: center;letter-spacing: 0;background:#93a59f;
color: #fff;border-radius: 50%;}
#global_menu .buttons ul li a:hover {background: #34554a;}
/* メールアイコン */
#global_menu .mail a {background: url(../../i/basic/email.svg);background-position: center;background-repeat: no-repeat;}


/* 検索アイコン */
header #global_menu a#search_btn {font-size: 1.4rem;}
header #global_menu a#search_btn:after {content: "\e8b6";font-family: Material Icons;}

/* //// メガメニューボタン //// */
#megabutton {}
a#open {color: #fff;width: 100px;height: 170px;font-size: 1.3rem;position: relative;display: flex;background: #fff;top: 0;flex-flow: column;justify-content: center;align-items: center;z-index: 30}
a#open .wrap {display: flex;align-items: center;justify-content: center;flex-flow: column;}
a#open {}
a#open .wrap {position: relative;z-index: 20;}
a#open::before {display: block;content: "";width: 100%;height: 100%;position: absolute;top: 0;background: url(../../i/basic/menu/bg.jpg);filter: grayscale(1)brightness(0.5);transition: all .1s ease-in;}
#megabutton.view a#open::before {filter: brightness(0.3);transition: all .1s ease-in;}

/* //// メガメニュー //// */
#megabutton #megamenu {background:#fff;top:170px;max-height:0px;position: absolute;overflow: hidden;width: calc(100% - 120px);transition: all .2s ease-in;max-width: none;opacity: 0;overflow: hidden;left: 0;z-index: 30; left: 60px;}
#megabutton.view #megamenu {max-height: 9999px;opacity: 1;transition: all .2s ease-in;}
#megabutton.view a#open {transition: all .2s ease-in;}
#megabutton #megamenu .content {padding : 60px 30px 10px;}



#megamenu .facility_item picture {width: 100%;}
#megamenu .facility_item .caption {line-height: 1.3;margin-top: 7px;}
#megamenu .facility_item .caption h4 {font-size: 1.1rem;font-weight: bold;margin-bottom: 4px;color: #221815;}
#megamenu .facility_item .caption h3 {font-size: 1.7rem;line-height: 1.1;letter-spacing: 0.05em;color: #221815;font-weight: bold;}
#megamenu .facility_item .caption .furigana {font-size: 1.2rem;font-family: "Klee One", cursive;}
#megamenu .facility_item .caption .soon{font-size: 1.1rem; color: #dc6f6f;}

.menu-item small.description {display: none;}
#megamenu .facility_item a.preparation+figcaption h3,#megamenu .facility_item a.preparation+figcaption h4 {color: #888;}


/* ::: プルダウンナビゲーション ::: */
header nav#global_menu .pulldown a span:after {font-family: Material Icons;content: "\e313";position: relative;top: 2px;padding-left: 4px;}
header nav#global_menu .pulldown_menu {position: absolute;z-index: 20;opacity: 0;max-height: 0px;overflow: hidden;transition: all 0.1s linear;}
header nav#global_menu .pulldown_menu.view {max-height: 999px;opacity: 1;overflow: visible;padding:4px 0 0;}
header nav#global_menu .pulldown_menu ul.menu {display:block !important;height: auto;background: #2c783d url();padding:5px 18px 12px 18px;box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.25);}
header nav#global_menu .pulldown_menu li a {color: #fff;display: block;margin-left: 0;padding:8px 0 6px;line-height: 1.5;}
header nav#global_menu .pulldown_menu li a h2 {font-size: 1.5rem;}
header nav#global_menu .pulldown_menu li a h3 {font-size: 1.1rem;line-height: 1.4;color: #ffc721;}
header nav#global_menu .pulldown_menu li a:hover {opacity: .5}
header nav#global_menu .pulldown a span:after {}
header nav#global_menu .pulldown.open a span:after {content: "\e5ce";}

/* ::: ツールチップ ::: */
.tooltip {position:absolute;z-index:9999;display:block;line-height:1.5;font-family: "Cardo", serif;padding-top:4px;}
.tooltip__body {position: relative;letter-spacing: 1px;font-weight: 700;font-size: 1.2rem;font-weight: normal;}
.bg .tooltip {color: #fff;}
/* ::: メールアイコン ::: */
.dli-mail {display: inline-block;vertical-align: middle;color: #fff;line-height: 1;position: relative;width: 1.06667em;height: 0.8em;border: 0.1em solid currentColor;box-sizing: content-box;overflow: hidden;}
.dli-mail::before {content: '';position: absolute;left: 50%;top: 0;width: 0.75425em;height: 0.75425em;border: 0.1em solid currentColor;border-top-color: transparent;border-right-color: transparent;box-sizing: content-box;transform: translate(-50%, -50%) rotate(-45deg) skew(10deg, 10deg);}


/* :: ページ送り :: */
.pagenavi {margin-top: 90px;display: flex;justify-content: space-between;}
.pagenavi span {width: 54px;height: 54px;display: block;}
.pagenavi a {background: #93a59f; font-size: 1.2rem;font-family:monospace, serif;text-decoration: none !important;letter-spacing: .1em;border-radius:50%;font-size: 1.1rem;line-height: 1.2;display: block;width:100%;height:100%;}
.pagenavi a:hover {background:#34554a;}
.pagenavi .old a,.pagenavi .new a  {background-image:url(../../i/basic/icon/arrow.svg);background-size: 14px;background-position: center;background-repeat: no-repeat;} 
.pagenavi .new a {transform: rotate(-180deg) }
.pagenavi .all a {background-image:url(../../i/basic/icon/list.svg);background-size: 18px;background-position: center;background-repeat: no-repeat;}

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

SNSアイコン

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

.sns_icon ul.menu {display: flex;}
.sns_icon ul.menu a {padding: 0 !important;display: block;width: 32px;height: 32px;color:#5c5c5c;text-align: center;position: relative;background-color:#888;border-radius: 50%;}
.sns_icon ul.menu li.twitter a {background-image: url(../../i/basic/sns/f/x.svg);background-size:49%;background-position: center;background-repeat: no-repeat;}
.sns_icon ul.menu li.fb a {background-image: url(../../i/basic/sns/f/facebook.svg);background-size:51%;background-position: center;background-repeat: no-repeat;}
.sns_icon ul.menu li.instagram a {background-image: url(../../i/basic/sns/f/insta.svg);background-size: 57%;background-position: center;background-repeat: no-repeat;}
.sns_icon ul.menu li.note a {background-image: url(../../i/basic/sns/f/note.svg);background-size: 45%;background-position: center;background-repeat: no-repeat;}

.sns_icon ul.menu a:hover {background-color:#777;opacity: 1;}
.sns_icon ul.menu li.facebook a:hover {background-color:#1877f2;}
.sns_icon ul.menu li+li {margin-left: 12px;}

/* 検索フォーム（隠し要素） */
div#search-box {font-size: 1.4rem;}
#searchform {position: relative;width: 100%;max-width: 600px;margin: 0 auto}
#searchform input[type="text"]:focus {outline: 0;}
#searchform input.submit{cursor: pointer;min-width: auto;padding: 0;height: 32px;line-height: 1;width: 18px;display: block;position: absolute;top: 0;right: 0;z-index: 100;margin: 0;
box-shadow: none;}
#searchform input.submit:hover {background: none !important;}
#searchform .search_button{display: block;position: absolute;top:0;right: 0;padding-top: 0;}
#searchform .search_button::after {content:"\e8b6";font-family: Material Icons;position: relative;top: 6px;color: #333}
#searchform input{border: none;vertical-align: top;padding: 6px 6px 6px 0;background: none}
#searchform input#s {width: 100%;border-bottom: 1px solid #777;padding-right: 28px;font-size: 1.5rem;line-height: 1.5;max-width: none;font-family: "Klee One", cursive;}

/* 隠し要素（検索フォーム／クリックで表示） */
#hidden .hidden {display: none;position: fixed;top:0;width: 100%;left: 0;z-index: 890;}
#hidden .hidden a {color: #4e4e4e;border-bottom: 1px solid #e1d5cd;display: block;font-size: 1.2rem;padding: 9px 32px 9px 0;position: relative;}
#hidden .hidden.open {height: auto}
#hidden .hidden .wrapper {background: #fff;padding: 20px;}
#hidden .hidden .block {width: 100%;}

/* ::: メニューサイズ ::: */
header.small #global_menu {display: none;}
header.small {height: 80px;}
header.small .menubutton_wrap {top: 27px;}
header.small #title a svg {height: 62px;}
header.small #title {margin-left: 24px;}
header.small {margin-bottom: 0;}

/* :: ニュースのタイトル :: */
.news_title .data {display: flex;align-items: center;position: relative;line-height: 1;}
.news_title .date {font-size: 1.1rem;margin-right:.5em;letter-spacing: .05em;font-family: Verdana;}
.news_title .title {line-height: 1.4;margin-top:6px;font-size: 1.8rem;letter-spacing: .025em;font-family: "Klee One", cursive;margin-bottom: 12px;}

.new_blinking .data:before {position: absolute;left: -10px;border-radius:50%;margin-right: 3px; content: "";width: 6px;height: 6px;display: block;background:#ffc721;animation:blink 1.5s ease-in-out infinite alternate;}

.news_category {display: flex;align-items: center;flex-wrap: wrap;}
.news_category .cell {align-items: center;display: inline-flex;height: 18px;line-height: 18px;padding: 0 7px 0 6px;background: #eee;border-radius: 10px;font-size: 1.1rem;margin: 4px 0;font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;box-sizing: content-box;white-space: nowrap;}
.news_category a.cell:hover {background:#34554a;color: #fff;}
.news_category .cell {margin-right:.5em;}

/* :: ニュース一覧（列） :: */
.news_list .container {padding: 0 0 22px 0;display: flex;align-items: center;margin-bottom: 22px;}
.news_list .container .wrap {flex: 1;}
.news_list picture {width: 160px;transition: all 0.2s linear;margin-right: 32px;background: red;background-size: cover;background-position: center;position: relative;}
.news_list picture:after {content: "";padding-top: 66.66%;display: block;}
.news_list .dammy picture {}
.news_list picture .sticky {width: 15%;background: #C93935 url(../../i/basic/icon/pin.svg);background-size: 50%;position: absolute;top: 0;left: 0;max-width: 32px;background-repeat: no-repeat;background-position: center;;}
.news_list picture .sticky:after {content: "";padding-top: 100%;display: block;}
.news_list picture.dammy {background:#34554a url(../../i/logo_f.svg) no-repeat center;background-size:25%;}
#results .container {flex-wrap:wrap;}

/* :: ニュース一覧（トップページ） :: */
.news_flex {display: flex;}
.news_flex .lead { padding-right: 24px;}
.news_flex .right {flex: 1;}
.news_flex .lead h3 {font-size: clamp(18px, 1.5vw,24px);font-family: "Alexandria", sans-serif;;}

/* :: 帯タイトル（お知らせ） :: */
.obi_post_type {line-height: 1.4;padding: 18px 18px;text-align: center;font-family: "Cardo", serif;font-weight: normal;}
.obi_post_type h2 {font-size: 1.9rem;letter-spacing: .05em;font-family: "Alexandria", sans-serif;}
.obi_post_type h3 {font-size: 1.1rem;letter-spacing: .2em;margin-top: 2px;}
.obi_post_type+section {;}


/* :: キーカラー :: */
.key_color {background:#34554a;color: #fff;}

/* :: ポストタイトル（固定） :: */
article.post_title {padding: 90px;position: relative;min-height: 400px;display: flex;justify-content: center;align-items: center;overflow: hidden;position: relative;margin-bottom: 0px;}
article.post_title .bg {content: "";filter: brightness(0.7);width: 100%;height: 100%;position: absolute;top: 0;left: 0;}

div.post_title_area {font-size: 1.7rem;z-index: 10;letter-spacing: .1em;padding-top: 20px;color: #fff;}
div.post_title_area h3 {font-size: clamp(5rem, 8vw, 6rem);line-height: 1.2;letter-spacing: .1em;margin-left: 0.0375em;text-align: center;font-weight:bold;font-family:Shin Go Bold,YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
div.post_title_area h4 {letter-spacing: .3em;font-size: 1.4rem;text-align: center;padding-top: 4px;font-weight: bold;font-family: "Klee One", cursive;}
div.post_title_area h5.name_head {font-size:1.5rem;font-weight: bold;text-align: center;}
body.facility-template-facility-custom div.post_title_area h3 {font-family: "Alexandria", sans-serif;font-weight: 500;font-size: clamp(5.5rem, 8vw, 7.8rem);}


/* :: スマッシュバルーン　インスタフィード :: */
/* :スペースはCSSを管理するためにプラグインでは０指定 : */
#sb_instagram #sbi_images {gap:20px;padding: 0 !important;margin-bottom: 30px;}
#sb_instagram #sbi_load {display: none;}

@media (max-width: 640px) {
#sb_instagram #sbi_images {gap:14px;}
}
/****************************************

page_post 基本

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

.page_post {padding-top:min(calc(30px + 6vw),150px);padding-bottom: min(calc(70px + 6vw),130px)}
body.single-post .page_post {padding-top: min(calc(30px + 3vw),110px);}
.page_post .single_title {width: 100%;border-bottom: 1px solid #888;padding-bottom: 12px;margin-bottom:36px;} 
.page_post .single_title h2 {font-size: 2.5rem;line-height: 1.6;margin-top:9px;font-family: "Zen Old Mincho", serif;}

/* :: カテゴリー一覧 :: */
.page_post .single_title .category {font-size: .66em;display: block;}
.page_post .single_title .archive_genre {font-size: 1.4rem;}

body.single .single_title {padding-bottom: 12px;}
body.single .single_title .news_category {margin-top: 24px;}

body.search main article.page_post,body.archive main article.page_post {padding-top:min(calc(10px + 3vw),100px);}
/****************************************

２カラム

*****************************************/
section.two_column aside {width: 220px;}
.page_post aside {font-size: 1.3rem;}
.page_post aside h2 {font-family: "Alexandria", sans-serif;letter-spacing: .025em;border-bottom: 1px solid #888;padding-bottom: 9px;margin-bottom:6px;line-height: 1;font-size: 1.8rem;}
.page_post aside div.wrap+div.wrap {margin-top: 32px;}
.page_post aside a:hover {color: #C93935;border-color: #C93935;}
.page_post aside .select_wrapper {padding-top: 5px;}


aside.column_aside.smart_aside {padding: 50px 18px;display: none;border-top: 1px solid }
aside.column_aside.smart_aside div.wrap {margin: 0 auto;}
aside.column_aside.smart_aside div.wrap.relation_tenant {max-width: 440px;}
section.two_column {display: flex;flex-wrap: wrap;}
section.two_column div.left {flex: 1;padding-right:4vw;overflow: hidden;}

aside.column_aside .archive>a {padding-bottom: 9px;border-bottom: 1px solid #bbb;padding-top: 9px;}
aside.column_aside .archive ul {display: flex;flex-wrap: wrap;}
aside.column_aside .archive li {font-size: 1.1rem;}
aside.column_aside .archive li a {font-size: 1.3rem;background: #f5f5f5;padding: 4px 6px 2px 8px;line-height: 1.5;margin-right: 8px;margin-bottom: 8px;display: block;}
aside.column_aside .archive li a .count_view {font-size: 1.1rem;}
aside.column_aside .archive li a:hover {background: #eee;}
aside.column_aside .archive figure {display: flex;margin-bottom: 0;transition: all 0.1s linear;}
aside.column_aside .archive figure>div {margin: 0;}
aside.column_aside .archive figure>div img {width: 90px;max-width: none;}
aside.column_aside .archive figure figcaption {padding-left:8px;}
aside.column_aside .archive figure figcaption h3 {font-size: 1.2rem;line-height: 1.5;font-feature-settings: "palt";}
aside.column_aside .archive figure figcaption h3.ttl small.pre {font-size: 1.1rem;display: block;line-height: 1.4;padding-bottom: 2px;display: none;}


aside.column_aside div.wrap+div.wrap {margin-top:calc(30px + 1.5vw);}
aside.column_aside div.wrap.relation_tenant+div.wrap.relation_tenant {margin-top: 14px;}
aside.column_aside .link {text-align: right;}
aside.column_aside .link a {display: inline-block !important;border-bottom: 1px solid;font-size: 1.2rem;font-family: 'Zen Maru Gothic', sans-serif;font-weight: 700;padding-bottom: 0;margin-bottom: 0;}
aside.column_aside .link a:hover {color: #C93935}



/* ＝＝＝＝ sns ＝＝＝＝＝＝ */

.sns_button {display: flex;margin-top: 5em;justify-content:flex-end;}
div.title_taxo+div.sns_button {margin-top:12px}
.sns_button a {height: 26px;width: 80px;background: pink;display: block;margin-left: 9px;padding-top: 5px;overflow: hidden;border: none;}
.sns_button a .svg {height: 16px;margin: 0 auto;display: block;}
.sns_button a.twitter {background:#0f1419;background-image: url(../../i/basic/sns/f/x.svg);background-size: 14px;background-position: center;background-repeat: no-repeat;}
.sns_button a.twitter svg {height: 12px;}
.sns_button a.facebook {background: #1877f2;background-image: url(../../i/basic/sns/f/facebook.svg);background-size: 14px;background-position: center;background-repeat: no-repeat;}
.sns_button .svg path {fill:#fff;}
.sns_button a:hover {opacity: .75}


/* ＝＝＝＝ 検索結果のページ ＝＝＝＝＝＝ */
main.search #results {}
main.search #results a {}
main.search .page_post .single_title {margin-bottom: 16px;}
main.search .page_post .news_title a h3.ttl {font-weight: 400;line-height: 1.4;letter-spacing: 0.05em;font-family: "Zen Old Mincho", serif;}
main.search .page_post .news_title a.facility .name_head {font-weight: 600;margin-right: 0.25em;font-size: 1.1rem;    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;}

main.search .page_post .news_title a.facility h3.ttl {font-family: "Alexandria", sans-serif;}

main.search .page_post .news_title a .date  {display:none;}
main.search .page_post .news_title a.post .date  {display:block;}
main.search .page_post .news_title a .news_category {padding-right: 1em;}
main.search .page_post .news_title a .ttl {padding-right: 1em;}

/* :::: パンくず :::: */
body.single-post main .breadcrumbs {padding-top:calc(10px + 2vw);padding-bottom: 0; line-height: 1.4;letter-spacing: .02em;z-index: 10;font-family:YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;font-size: 1.1rem;}
.breadcrumbs>section{font-size: 1.1rem;max-width: 100%;color: #777;display: flex;flex-wrap: wrap;justify-content: flex-end;}
.breadcrumbs span {color: #555;}
.breadcrumbs section>span:after {content:"/";padding: 0 9px;}
.breadcrumbs a {color: #555;}
.breadcrumbs span.current-item {color: #999;}
.breadcrumbs span:last-child::after {content:none;}
.breadcrumbs a:hover span {text-decoration: underline;transition: all .1s;}

/* :: ページネーション  :: */
main .pagination {margin-top:calc(20px + 4vw);}
main .pagination {text-align: center;font-size: 0px;}
main .pagination a,.pagination>span {display: inline-block;background: none;font-size: 1.2rem;text-decoration: none;margin: 0 5px;padding: 3px 9px;border: 1px solid #fff;}
main .pagination>span.current,main .pagination a:hover {border-color:#34554a;background:#34554a;color: #fff;font-weight: bold;}

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

アニメーション

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

/* 点滅 */
.blinking {animation:blink 1.5s ease-in-out infinite alternate;}
@keyframes blink{0% {opacity:0;}100% {opacity:1;}}


/* fadeUp */
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.insight {opacity: 0;display: block;} 
#megamenu .insight {opacity: 1;} 
.insight.fire {animation-duration:.75s;animation-fill-mode:forwards;}

.insight.fire.fadeup {animation-name:fadeUpAnime;}
.insight.fire.fadeleft {animation-name:fadeLeftAnime;}
body.home main #facility .flexbox .facility_item:nth-child(even) .insight.fire.fadeleft {animation-name:fadeRightAnime;}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(150px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}


@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-150px);
  }
  to {
    opacity: 1;
  transform: translateX(0);
  }
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(150px);
  }
  to {
    opacity: 1;
  transform: translateX(0);
  }
}


.insight.closeup {transform:scale(.8);}
.insight.fire.closeup  {animation-name:closeup;}
@keyframes closeup {
   from {
  opacity: 0;
  transform:scale(.8);
  }
  to {
  opacity: 1;
  transform: scale(1)
  }
}

.insight.birth {transform:scale(.1);}
.insight.fire.birth  {animation-name:birth;}
@keyframes birth {
   from {
  opacity: 0;
  transform:scale(.1);
  }
  to {
  opacity: 1;
  transform: scale(1)
  }
}
.insight.poyopoyo {opacity: 1;}
.insight.fire.poyopoyo {animation: poyopoyo 1s ease-out;}

@keyframes poyopoyo {
  20%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }

}

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

スライドメニュー（横）

*****************************************/
.more {width: 100%;height:100%;z-index: 542;display: none;position: fixed;top: 0; left: 0;overflow-y: scroll;-webkit-overflow-scrolling:touch;}
.more.moremenu {width: calc(100% - 60px);max-width: 340px;}
.mask {width: 100%;height: 100%;position: fixed;display: none;top: 0;background: rgba(0, 0, 0, 0.8);z-index: 30;cursor: pointer;left: 0;}
#megamask.mask {z-index: 25;display:block;background: rgba(0, 0, 0, 0.8); visibility: hidden;opacity: 0;transition: .3s;}
#megamask.mask.view {visibility: visible;
  opacity: 1;
  transition: .2s;}
#sidemenu .wrap  {background: #fff;width: 100%;left: 0;overflow-y: scroll;-webkit-overflow-scrolling:touch;height: 100%;color: #bbb;font-size: 1.4rem;min-width: 340px;}
#sidemenu #menu_title {display: block;width:74px;margin: 26px 24px 12px;}
#sidemenu #menu_title img {height: auto;max-width: none;}
#sidemenu div.list {font-size: 1.6rem;font-weight: bold;min-width: 340px;}/* 開く途中に文字が開業されないようにmin-width指定 */
#sidemenu li.top {display: none;}
#sidemenu li>* {display: block;padding:9px 16px 9px 24px ;line-height: 1.5;}
#sidemenu div.list a small.eng {font-size: 1.8rem;display: block;color:#9f9f9f;letter-spacing: .05em;font-weight: normal;line-height: 1.4;padding-bottom: 2px;}
#sidemenu div.list a span.mini {font-size: 1.2rem;display: block;}
#sidemenu div.list li.eng-only>a span.mini {display: none;}
#sidemenu div.list a span.no_eng {font-size: 1.2rem;}
#sidemenu div.list a:hover {background: #f5f5f5}
#sidemenu div.list li.no-link>a{pointer-events: none;padding-bottom: 0;}
#sidemenu li ul.sub-menu {margin-bottom: 6px;padding: 0;}
#sidemenu li ul.sub-menu a {padding-left: 24px;display: flex;align-items: center;}
#sidemenu li ul.sub-menu li a:before {content: "";display: block;height: 1px;width: 32px;margin-right: 6px;background: #222;}
#sidemenu li.hide a {pointer-events: none;opacity: .33}

#sidemenu .sns_icon {padding: 44px 16px 0 24px;}
#sidemenu .sns_icon a {}

#sidemenu .menu-item small.description {display: block;position: relative;top: 2px;font-size: 1.2rem;}
#sidemenu .menu-item small.description::before {content: "（"}
#sidemenu .menu-item small.description::after {content: "）"}

#sidemenu .menu-item.title>a {pointer-events: none;font-size: 1.3rem;margin-top: 12px;content: #93a59f;}

.scroll_navi,.scroll_navi.hide {transition: .5s;}
.scroll_navi_right.hide {transform: translateX(260px);}

.scroll_navi_left.hide {transform: translateX(-260px);}

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

トップページ

*****************************************/
.block_lead h3 {font-size:clamp(4.5rem, 8vw, 6rem);line-height: 1.0;letter-spacing:.025em;font-weight: 500;font-family: "Alexandria", sans-serif;margin-top:-0.12em;;position: relative;}
.block_lead.mini h3 {font-size:clamp(4.5rem, 8vw, 4.8rem);}
.block_lead h4 {line-height: 1.0;letter-spacing:.025em;font-size: 1.3rem;font-weight: 700;padding-top: 4px;    font-family: "Klee One", cursive;}
.block_lead {margin-bottom: 32px;display: flex;align-items: center;}
.block_lead .sub_head {    font-size: 1.8rem;
    letter-spacing: .025em;
    font-weight: 500;
    font-family: "Alexandria", sans-serif;
    line-height: 1.4;}
.block_lead.icon::before {content: "";display: block;width: 60px;height: 60px;} 
article#instagram .block_lead h3 {font-size:clamp(4.5rem, 8vw,4.8rem);}
article#instagram .block_lead.icon::before {background-image: url(../../i/basic/sns/f/insta.svg),linear-gradient(to right,rgba(247, 207, 0, 0.7),rgba(246, 37, 2, 0.7) 45%,rgba(182, 47, 82, 0.7) 75%,rgba(113, 58, 166, 0.7));
    background-size: 55%,100%;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: 9px;}

article#instagram .block_lead.icon .follow {margin-left: auto;display: flex;align-items: center}
article#instagram .block_lead.icon .follow a {display: block;background:#408bd1;font-family: 'Zen Maru Gothic', sans-serif;font-weight: 700;font-size: 1.1rem;color: #fff;padding: 0 9px;line-height: 24px;border-radius: 14px;background-image: linear-gradient(to right,rgba(247, 207, 0, 0.7),rgba(246, 37, 2, 0.7) 45%,rgba(182, 47, 82, 0.7) 75%,rgba(113, 58, 166, 0.7));height: 24px;}
article#instagram .block_lead.icon .follow a:before {content: "FORROW ME !";}
article#instagram .block_lead.icon .follow a:hover {background: #359dff;}



/* SNS */
.sns_wrap figure.item {}

.sns_wrap figure.item a {border: 1px solid #888;padding:9px;font-weight: 500;font-family: "Alexandria",sans-serif;}
.sns_wrap figure.item a div.wrap {display: flex;align-items: center;}
.sns_wrap figure.item a div.wrap .vertical {line-height: 1.5;display: flex;flex-flow: column;justify-content: center;flex: 1;margin-left: 6px;margin-right: auto}
.sns_wrap figure.item a div.wrap:before {content:" ";width:60px;height:60px;display: block;background: #ddd;margin-right:6px}
.sns_wrap figure.item.fb a div.wrap:before {background: #1877f2 url(../../i/basic/sns/f/facebook.svg);background-size: 50%;background-repeat: no-repeat;background-position: center;}
.sns_wrap figure.item.twitter a div.wrap:before {background: #000000 url(../../i/basic/sns/f/x.svg);background-size: 46%;background-position: center;background-repeat: no-repeat;}
.sns_wrap figure.item.instagram a div.wrap:before {background-image: url(../../i/basic/sns/f/insta.svg),linear-gradient(to right,rgba(247, 207, 0, 0.7),rgba(246, 37, 2, 0.7) 45%,rgba(182, 47, 82, 0.7) 75%,rgba(113, 58, 166, 0.7));background-size: 50%,100%;background-position: center;background-repeat: no-repeat;}
.sns_wrap figure.item.note a div.wrap:before {background: #000000 url(../../i/basic/sns/f/note.svg) ;background-size: 43%;background-position: center;background-repeat: no-repeat;}


.sns_wrap figure.item a {}
.sns_wrap figure.item a div.wrap .lead {font-size: 2.2rem;line-height: 1.2;}
.sns_wrap figure.item a div.wrap .vertical span {font-size: 1.2rem;display: block;}

.sns_wrap figure.item a:hover {background: #fff5f9;}



header.non_header_style {position: absolute;}
header.non_header_style #title svg path ,header.non_header_style #title svg polygon {fill:#fff;}




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

メイン

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

main {}


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

フッター

*****************************************/
footer .svg_wave2 {-webkit-filter:drop-shadow(0px 0 10px #00000020);filter: drop-shadow(0px 0 10px #00000020);}
#fotter_content {background:#34554a;color: #fff;font-size: 1.2rem;line-height: 1.5;padding-top: 32px;padding-top: 64px;padding-bottom: 84px;position: relative;}
#fotter_content a {color: #fff;}
#fotter_content a:hover {opacity: .75;}
#fotter_content .sns_icon ul.menu a {background-color: #00000024;}
#fotter_content .sns_icon ul.menu li+li {}


footer .footer_flex {display: flex;flex-wrap:wrap;line-height: 1.6;}
footer .credit h2 {font-weight: bold;}
/* :: ロゴ列 ::; */
footer .footer_flex1 {align-items: center;justify-content: space-between;}
footer .footer_flex1 .f_logo {margin-right: 32px;}
footer .footer_flex1 .left {display: flex;flex-wrap: wrap;align-items: center;}

/* :: メニュー列 ::; */
footer .footer_flex2 {margin-top: 9px;}
footer .footer_flex2 .f_nav {letter-spacing: .05em;font-family: "Alexandria", sans-serif;font-size: 1.3rem;}
footer .footer_flex2 .f_nav a {margin-right: 12px}
footer .f_nav ul {display: flex;flex-wrap:wrap;}
footer .f_nav ul li {}

/* :: 施設列 ::; */
footer .footer_flex.facilitys {margin-top:9px;font-family: "Alexandria", sans-serif;font-size: 1.1rem;margin-bottom: 6px}
footer .footer_flex.facilitys a {display: block;background-color: #00000024;padding: 12px;margin: 6px 12px 6px 0;}
footer .footer_flex.facilitys a h3::before {;}
footer .footer_flex.facilitys a h3 .name_head {display: inline-block;margin-right: .25em;}
footer .footer_flex.facilitys a.hide {opacity: .5;}
/* :: 最終クレジット列 ::; */
footer .footer_flex3 {border-top: 1px solid #93a59f;padding-top: 12px;margin-top: 12px;font-size: 1.1rem;color: #93a59f;justify-content: space-between;}
footer .footer_flex3 .right {display: flex;flex-wrap:wrap;}
footer #fotter_content .footer_flex3 a {color: #93a59f;text-decoration: underline;}
footer #fotter_content .footer_flex3 .left a {padding: 0 .33em}

footer .sns_icon  {padding: 20px 0;}
footer #svg_wave {max-height: 300px;vertical-align: bottom;bottom: -1px;position: relative;}
footer .f_logo {width: 90px;}
footer .f_logo .svg path,footer .f_logo .svg polygon {fill:#fff;}


#fotter_content section {}


/****************************************
固定ページ用スタイル
*****************************************/

section.page_column {display: flex;flex-wrap: wrap;justify-content: space-between;}
section.page_column>div.column {width: 50%;}

/* :: グループ化した見出し ::; */
.wp-block-group.type2 {margin-bottom: 40px;line-height: 1.2;letter-spacing: .075em;margin-left: 0.0375em;font-family: "Alexandria", sans-serif;}
.wp-block-group.type2 h2 {padding-bottom: 0;margin-bottom: 0;font-size:clamp(4.5rem, 8vw, 5.8rem);border-bottom: none;font-weight: 500;margin-left: -0.0375em;}
.wp-block-group.type2 h2+p {font-size: 1.4rem;margin-top:0;font-weight: 700;}
.wp-block-group.type2 h2::after {content: none;}
.wp-block-group.type2 h3 {font-size: 1.2rem;border: none;padding: 0;margin-top: 0;font-weight: bold;}

/* :: type2のテーブル（クラス　type2 付与） ::; */
.txt figure.type2 table td.th {background:none ;}
.txt figure.type2 table {min-width:auto !important;}
.txt figure.type2 table td,.txt figure.type2 table th {border-left: none;border-right: none;}
.txt figure.type2 table td {padding: 0.75em 0 0.75em 0;}
.txt figure.type2 table td.th {padding: 0.75em 1.5em 0.75em 0;}

/* :: プライバシーポリシー ::; */
main.privacy-policy .txt p {text-indent: 1em;}

section.mini_font .txt {font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;font-size:13px;font-size: 1.3rem;}
section.mini_font .txt p+*,section.mini_font .txt ul+p,section.mini_font .txt ol+p,section.mini_font .txt p+ol,section.mini_font .txt p+ul,section.mini_font .txt blockquote+p,section.mini_font .txt blockquote+blockquote {}


/****************************************
施設ページ用スタイル
*****************************************/

body.single-facility article.post_title {min-height: 380px;padding:clamp(100px, 10vw,150px) 50px;}

body.single-facility div.post_title_area {padding-top: 0;}


body.single-facility .txt figure.wp-block-table table {min-width:auto;}
body.single-facility section.page_column>div.column.right {padding-left: 5vw;}
body.single-facility main.has_freespace_2+footer,body.single-facility #freespace_2 {background: #f8f8f8;}
body.single-facility #page_post .freespace {margin-top:2.5em;margin-bottom: 4em;}
body.single-facility section.page_column>div.column.right .sns_wrap figure.item a {margin-bottom:9px;margin-right:9px;}
body.single-facility section.page_column>div.column.right .sns_wrap h4 {padding-bottom: 3px;font-size: 1.6rem;}
body.single-facility section.page_column>div.column.right .sns_wrap {margin-top: 2em;}
body.single-facility .area_map {margin-top: 4em;}
body.single-facility .smart_zone {display: none;}
body.single-facility section.page_column>div.column.right .sintyoku {font-size: 1.6rem;color: #C93935;    margin-bottom: 32px;}
body.single-facility .area_map h3 {font-family: "Alexandria", sans-serif;display: flex;align-items: center;font-size: 1.5rem;font-weight: 500;}
body.single-facility .area_map h3::before {content: "\f00f";font-family: Material Icons Sharp;font-size: 2.4rem;color: #93a59f;}

/****************************************
カスタム施設ページ用スタイル（イグネ）
*****************************************/
article.custom_swiper {position: relative;height:calc(100vh - 80px);min-height: 500px;max-height:980px }
#topslide .post_title_area {width: 100%;height: 100%;position: absolute;z-index: 20;display: flex;justify-content: center;align-items: center;flex-flow: column;}


/* トップページの帯型コーナータイトル */
.obi_title {background: pink;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
height: 20vw;
position: relative;
overflow: hidden;
min-height:220px;
max-height: 320px;
padding: 0 !important;
}

#topslide .bg_slide .slide-img {filter: brightness(0.8);}
#topslide #swiper_smart_area.bg_slide .slide-img {filter: brightness(0.9);}


#facility_title.obi_title {position: relative;}
#facility_title.obi_title picture {display: block;width: 100%;height: 100%;position: absolute;background: url(https://nalhodo.com/web/wp-content/uploads/2020/08/architecture-1837087_640.jpg);  background-repeat: no-repeat;background-size: cover;
    background-attachment: fixed;top: 0;left: 0; filter: brightness(0.67);}
#facility_title.obi_title>div {color: #fff;z-index: 20;display: block;width: 100%;height: 100%;position: absolute;top: 0;left: 0;justify-content: center;align-items: center;display: flex;}


/* ＝＝＝＝ ページ内スライダー（施設） ＝＝＝＝＝＝ */
.page_slider .caption {position: absolute;bottom: 0;z-index: 50;color: #fff;font-size: 1.3rem;padding:4px 6px;width: 100%;background:rgba(56, 57, 88, 0.88);}

.swiper_thumbnail .swiper-slide {margin-top: 12px;transition: all 0.0s linear;}
.swiper_thumbnail .swiper-slide:hover {transition: all 0.1s linear;filter: brightness(0.5);}
.swiper_thumbnail .swiper-slide-thumb-active {filter: brightness(0.5);}

.page_slider {max-width: 580px;}
.page_slider .swiper-slide {height: auto;border:0px solid #ebebeb;}
.page_slider .swiper-slide img {width: 100%;border: 0px solid rgba(56, 57, 88, 0.25);}
.page_slider swiper-slide-thumb-active {}


/* ＝＝＝＝ メールフォームテーブル ＝＝＝＝＝＝ */
.txt form table {font-size: 1.5rem;min-width: auto;font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
.txt form table th,.txt form table td {vertical-align: top;padding:0 0 14px 0;border-bottom: 1px solid #dadada;}
.txt form table th {padding:14px 14px 14px 0;}
.txt .txt form table th.bottom,.txt form table td.bottom {vertical-align: bottom;}
.txt form table th {vertical-align: top;white-space: nowrap;padding-right: 20px;}
.txt form table textarea {display: block;}
.txt form table .mwform-radio-field input {margin-bottom: 0;}
.txt form table th {width: 180px;font-weight: bold;}
.txt form table tr.noline th,.txt form table tr.noline td {border: none;}
.txt form table select {}
.txt form h3,*[data-class="wpcf7cf_group"] {margin-top: 80px;}
.txt form .require_caution+h3 {margin-top: 18px;}
.txt form .require_caution {font-size: 1.2rem;}

.txt form .require_caution .color ,.txt form .require_color {color: #C93935;}
.txt form th.require:after,.txt form .require:after ,.txt form .acceptance.require .wpcf7-list-item-label:after{content: "✴︎";display: inline-block;color: #C93935;margin-left: 6px;font-size: 1.3rem;}
.txt form .acceptance.require label {padding: 0;}

.txt form .wpcf7-list-item {margin-left: 0;}
.txt form .require.acceptance:after {content: none;}
.txt form table .txt p:last-child {padding-bottom: 0;}
form label {background:#f0f0f0;;font-size: .92em;font-weight: bold;display: inline-block; border-radius: 10px;padding: 12px;margin-right: 12px;}
form .wpcf7-acceptance label {margin-right: 0;}
form table input,form table textarea {border: none;width: 100%;background:#f0f0f0;color: #383958;}
form table th.require+td input,form table th.require+td textarea,form table th.require+td label ,form div.check label,form table td.require textarea {background: #ffecec;}
form table th.require_multi+td input {background:#dff0f5;}

form .wpcf7-form-control-wrap input ,form .wpcf7-form-control-wrap label ,form .wpcf7-form-control-wrap textarea ,form .wpcf7-form-control-wrap select {margin-top: 14px;}
form .wpcf7-form-control-wrap label input {margin-top: 0;}
form label,form textarea ,form input[type="text"],form input[type="file"],form input[type="email"],form input[type="tel"],form input[type="number"],form input[type="url"],form input[type="password"]{}
form table input#datepicker {padding-right: 30px;}
form table input.name {max-width: 20em;}
form table input#zip1,form table input#zip2 {max-width: 5em;}
form table input.email {max-width: 30em;}
form table input.age {max-width: 4em;}
form table input:focus,form table textarea:focus { outline: 0;}
form table input:hover,form table textarea:hover {}
form table input[type="checkbox"] ,form table input[type="radio"]{width: auto;}
form table .horizontal-item label {display:inline-block;cursor: pointer;font-size: 1.4rem;margin-right: 10px;}
form table.margin_top {margin-top: 24px;}
form table input.address {margin-top: 12px;}
form table td small {display: block;line-height: 1.6;margin-top: 6px;font-size: .92em;}
form table td small+small {padding-top: 8px;}
form table div.mailcheck {margin-top: 12px;}
span.submit-button button {border-style: none;}
form table .mwform-checkbox-field input,form table .mwform-radio-field input{margin-right: 0;}
form table .horizontal-item {margin-left: 0 !important;}
form table {margin-bottom: 6px !important;width: 100%;min-width: auto;}
form table .wpcf7-form-control-wrap {display: block;width: 100%;}
form table .wpcf7-form-control-wrap+.wpcf7-form-control-wrap {}
.txt form h4 {font-size: 1.2rem;padding-top: 12px;margin-bottom: 1em;font-weight: normal;letter-spacing: .05em;}
.txt form ::placeholder{}
.txt form div.send {margin:20px 0}
.txt form h3 small.caution {color: #C93935;font-weight: normal;}
.wpcf7-not-valid-tip {margin-top: 4px;}

.flat_form {font-size: 1.5rem;}
.flat_form form div.submit-button {}



/* ::: masonry ::: */
#photo_gallery .masonry_block {}
#photo_gallery .masonry_wrap .masonry_item {width:33.33%;padding: 0 1% 2vw;}


/* プライバシーポリシーチェック */
form div.check {padding-top: 0px;}



form .tabledescription {line-height: 1.6;font-size: 1.4rem;margin-bottom:36px;}

form .tabledescription p+p {margin-top:.5em;}
form .tabledescription+h3 {margin-top: 16px;}
div.submit-button {margin-top: 60px;display: flex;}

form div.submit-button {margin-top: 60px;display: flex;}
span.wpcf7-form-control-wrap {display: block;}
.wpcf7 .wpcf7-submit:disabled {cursor: not-allowed;}
.mw_wp_form .error {font-size: 1em;margin-top: 2px;}
.mw_wp_form .error:before {content: "！"}

.full_form form table th,.full_form form table td {border:none;display: block;}
.full_form form .wpcf7-form-control-wrap input,.full_form form .wpcf7-form-control-wrap textarea,.full_form form .wpcf7-form-control-wrap label {margin-top: 0 !important}
.full_form form div.submit-button {margin-top: 24px;}

.wpcf7 ::placeholder {color: #999;}


/* ＝＝＝＝ 沿革テーブル ＝＝＝＝＝＝ */
table.history {    line-height: 1.5;}
figure.wp-block-table table.history td, figure.wp-block-table table.history th {border:0px;padding:32px 0 16px 0;vertical-align: top;}
figure.wp-block-table table.history .column-1 {border-right:1px solid;position: relative;padding-right: 12px;width: 90px;white-space: nowrap;}
figure.wp-block-table table.history .column-1::after {content: "";border-radius: 50%;position: absolute;top: 39px;right: -6px;width: 11px;height: 11px;background:#005B3D;}

figure.wp-block-table table.history .column-1:empty::after {content: none;}
figure.wp-block-table table.history .column-2 {padding-left: 18px;padding-right: 12px;width: 114px;}
figure.wp-block-table table.history .column-1:empty,figure.wp-block-table table.history .column-1:empty+td,figure.wp-block-table table.history .column-1:empty+td+td {padding-top: 0}
figure.wp-block-table table.history tr.row-1 .column-1::before {content: "";position: absolute;height: 15px;width: 20px;background: #fff;top: 0;right: -10px;}
figure.wp-block-table table.history tr.row-1 .column-1::after {top: 8px;}
figure.wp-block-table table.history .column-1 {font-size: 1.3rem;}
figure.wp-block-table table.history .column-1::first-line {font-size: 1.6rem;}
figure.wp-block-table table.history tr.row-1 td, figure.wp-block-table table.history tr.row-1 th {padding-top:0px;}

@media only screen and (max-width: 896px) {
table.history,figure.wp-block-table table.history .column-1::first-line {font-size: 1.4rem;}
figure.wp-block-table table.history .column-1::after {top: 37px;}
figure.wp-block-table table.history tr.row-1 .column-1::after {top: 6px;}
figure.wp-block-table table.history .column-1 {width: 80px;}
figure.wp-block-table table.history .column-2 {width: 94px;}
}



#sb_instagram .sb_instagram_header, .sb_instagram_header {display: flex;}
#sb_instagram .sb_instagram_header {padding-top: 0 !important;font-family: "Klee One", cursive;}

/* :::: 隙間画像 :::: */
.separate_img {height: 30vw;max-height: 480px;min-height: 260px;overflow: hidden;padding: 0;}
.separate_img div.bg {width: 100%;height: 100%;left: 0;top: 0;filter: brightness(.5);}

/* :::: 隙間画像タイトル :::: */
.separate_title {position: relative;overflow: hidden;}
.separate_title.scroll_bar {overflow: visible;}

.separate_title .logo {width:20%;max-width:60px;background:url(../../i/logo_f.svg) no-repeat center;background-size: cover;z-index: 20;background-size: 66.66%;position: absolute;z-index: 18;top: 6px;}
.separate_title .logo::after {content: "";padding-top: 100%;display: block;}

.separate_title {padding: 0;}
.separate_title .block_lead {color: #fff;text-align: center;width: 100%;height: 100%;justify-content:center;display:flex;left: 0;top: 0;
  -webkit-backdrop-filter:brightness(.5);line-height: 1;
  backdrop-filter: brightness(.5);

  margin-bottom: 0;padding-top:calc(60px + 4vw);padding-bottom:calc(60px + 4vw);padding-right: 30px;padding-left: 30px;z-index: 12;
    position: relative;}

body.home .separate_title .block_lead {padding-top: calc(70px + 5vw);padding-bottom: calc(70px + 5vw);}

.separate_title .shape_ark .waves {max-height: 50px;}
article.delta {position: relative;}
article.delta::before,article.delta::after {background: #fff !important;width: 100%;height: 5vw;position: absolute;z-index: 10;left: 0;}
article.delta.delta_top::before {content: "";display: block;clip-path: polygon(0 0, 100% 100%, 100% 0);top:-1px}
article.delta.delta_bottom::after {content: "";display: block;clip-path:polygon( 100%  0,0 100%,100% 100%);bottom: -1px;}
body main article.delta+article {padding-top: min(calc(30px + 3vw),130px);}




body.home article.bg {background: #f8f8f8;}
body.home #area_map {padding-top: 0;}
/****************************************
アクセス
*****************************************/
.access_wrap h4 {margin-bottom: 12px;}
.access_wrap .item {width:250px;display: flex;padding-top:6px;opacity: 1;align-items: center;}
.access_wrap .item+div.item {padding-top:18px;}
.access_wrap .item.fire {width:100%;transition: all 2.4s linear;}
.access_wrap .item.ic.fire {max-width:520px;}
.access_wrap .item.station.fire {max-width:420px;}
.access_wrap .item.walker.fire {transition: all 3s linear}

.access_wrap .place {width:54px;height: 54px;}
.access_wrap .vertical {flex:1;align-items: center;display:flex;flex-flow: column;line-height: 1.5;font-size: 1.7rem;padding-top: 2px;}
.access_wrap .line {margin-bottom: 2px; height:25px; background:url(../../i/basic/icon/car.svg) no-repeat center;background-size:contain;text-align:center;border-bottom: 5px double #b7b7b7;width: 100%;margin-top: 10px;}
.access_wrap .line.walk {height:34px; background:url(../../i/basic/icon/walk.svg) no-repeat center;background-size:contain;margin-top: 2px;}
.access_wrap .place.place_ic::after{content: "IC";display: flex;align-items: center;justify-content:center;font-weight: 500;font-family: "Alexandria", sans-serif;height: 100%;color: #fff;font-size: 2rem;border: 2px solid;border-radius: 50%;}
.access_wrap .place.place_ic {background:#355fa4;border-radius: 50%;padding: 3px;}
.access_wrap .place.place_noll {background:#34554a url(../../i/logo_f.svg) no-repeat center;background-size:60% auto;}
.access_wrap .place.place_station {background:#017f3d url(../../i/basic/icon/train.svg) no-repeat center;background-size:50% auto;}
.access_wrap .place.place_station .vertical {padding: 12px 0;}

/****************************************
アバウトページ
*****************************************/
body.about article.post_title {padding: 120px 90px 150px}
body.about .message {position: relative;position: relative;}
body.about .message img {filter: brightness(.5);}
body.about .message .copy {writing-mode: vertical-rl;padding:2vw;font-size: clamp(14px, 1.5vw, 20px);width:calc(100% - 50px);color: #fff;position: absolute;top: 0;left:0;height: 100%;}
body.about .message h3 {font-size: 1.8em;font-family: "Zen Old Mincho", serif;letter-spacing: .25em;}
body.about .message .logo {background: url(../../i/logo_f.svg) no-repeat center;position: absolute;left: 12px;bottom: 12px;display: block;width:50px;height: 50px;}

body.about .message_neo {position: relative;}
body.about .message_neo .copy {writing-mode: vertical-rl;padding: 3vw 4vw 10vw 60px;
font-size: clamp(16px, 1.5vw, 20px);width:100%;color: #fff;top: 0;left:0;min-height: 380px;

  -webkit-backdrop-filter:brightness(.5);
  backdrop-filter: brightness(.5);}

body.about .message_neo h3 {font-size: 1.8em;font-family: "Zen Old Mincho", serif;letter-spacing: .25em;}
body.about .message_neo .logo {background: url(../../i/logo_f.svg) no-repeat center;position: absolute;left: 12px;bottom: 12px;display: block;width:50px;height: 50px;}

body.about .message_neo+picture.illust {max-width: 800px;margin:min(calc(30px + 6vw),150px) auto 0;display: block;} 
body.about .message_neo+picture.illust h4 {line-height: 1.3;font-family: "Zen Old Mincho", serif;letter-spacing: .25em;font-size: clamp(14px, 1.5vw, 16px);margin-bottom: 32px;}
body.about picture.illust {;display: block;}
body.about #outline>.wrap+.wrap {margin-top:min(calc(70px + 6vw),130px);}
div.person_container article.odd {background:#f2f2f2;}
div.person_container article {padding-top: 0;padding-bottom: 0;}

div.person_container .delta {clip-path: polygon(0 0, 100% 100%, 0 100%);display: block;background-color:#f2f2f2;width: 100%;height: 5vh;position: relative;top: 1px;}
div.person_container .delta.left {clip-path: polygon(0 0, 0 100%, 100% 0);display: block;background-color:#f2f2f2;width: 100%;height: 5vh;position: relative;top: -1px;} 

div.person_container .person_column {display: flex;padding:min(calc(30px + 4vw),90px) 0;}
div.person_container .person_column picture {min-width: 200px;max-width: 350px;width: 30%;}
div.person_container .person_column div.plofile {line-height: 1.6;font-size: 1.3rem;font-family: "Klee One", cursive;font-weight: 400;flex: 1;}
div.person_container .plofile .position {display: inline-block;border:1px solid;padding:4px;line-height: 1.3;margin-bottom:4px;}
div.person_container .plofile .company {font-size: 1.2rem}
div.person_container .plofile h2 {font-size: 1.6em;padding: 0 0 0.33em 0px;margin-bottom: 0.5em;font-weight: bold;border-bottom: 2px solid #93a59f;position: relative;}
div.person_container .plofile h2:after {position: absolute;bottom: -2px;left: 0;width: 10%;height: 2px;content: "";background: #005B3D;}
div.person_container .plofile p+p {margin-top: 1em;}
div.person_container .plofile {padding-left:24px;padding-right:0}

div.person_container article.even .plofile {order: 1;padding-left: 0;padding-right: 24px;}
div.person_container article.even picture {order: 2;}
div.person_container article:nth-child(even) .plofile {order: 1;padding-left: 0;padding-right: 24px;}
div.person_container article:nth-child(even) picture {order: 2;}
div.person_container article:nth-child(odd) div.wrap {background: #f2f2f2;}
div.person_container article:nth-child(odd)::before {content: "";clip-path: polygon(0 0, 100% 100%, 0 100%);display: block;background-color: #f2f2f2;width: 100%;height: 5vh;position: relative;top: 1px;}
div.person_container article:nth-child(odd)::after {content: "";    clip-path: polygon(0 0, 0 100%, 100% 0);
    display: block;
    background-color: #f2f2f2;
    width: 100%;
    height: 5vh;
    position: relative;
    top: -1px;
}
article.person_data.full>div.wrap {padding: 0;padding-left: 90px;padding-right: 90px;}

body.about #person {padding-bottom: min(calc(70px + 6vw),130px);}
body article.nohead {padding-top: 0 !important;}

body.about .about_noll {margin-top: 30px;}
body.about .about_noll h3 {margin-bottom: 1em;}

.tablepress caption {display: none;}


header.small main figure.wp-block-table table.history .column-1 {}

/* :::::::::::: メディアクエリ :::::::::::: */
@media only screen and (max-width: 1080px) {
.flexbox.flex3>.item {width:calc(50% - 16px);margin-bottom:32px;}
.flexbox.flex4>.item {width:calc(33.33% - 16px);margin-bottom: 24px;}
}

@media only screen and (max-width: 896px) {
.flexbox.flex4>.item,.flexbox.flex3>.item {width:calc(50% - 12px);margin-bottom:24px;}
.flexbox.flex5>.item {width:calc(25% - 16px);margin-bottom: 24px;}
body main article,footer>article,body main article.page_post,article.person_data.full>div.wrap {padding-left: 36px;padding-right: 36px;}

.news_list picture {width: 140px;margin-right: 24px}
.news_title .title {font-size: 1.6rem;}

/* ::: アバウトページ :::; */
div.person_container .person_column {flex-flow: column;}
div.person_container .person_column picture {order:1 !important;width: 66%}
div.person_container .person_column .plofile {order:2 !important;padding: 24px 0 0 0 !important;font-size: 1.4rem;}

/* ２カラム解除 */
section.two_column {flex-flow: column;}
section.two_column div.left {padding-right: 0;}
section.two_column aside {width: 100%;margin-top: 90px;}

body main article.block#news section {flex-flow: column;}
body main article.block#news section .block_lead {margin-right:0;}

section.page_column {flex-flow: column;}
section.page_column>div.column {width: 100%;padding-left: 0 !important;}
section.page_column>div.column#slide {margin-bottom:3em;}

body.single-facility .pc_zone {display: none;}
body.single-facility .smart_zone {display: block;}


.breadcrumbs>section {justify-content: flex-start;}


/* :: table.mailform ::  */
.txt form table th,.txt form table td {display: block;width: 100% !important;padding:0;}
.txt form table th {border-bottom: none;display: block;width: 100%;padding:14px 14px 14px 0;}
.txt form table td {padding-top: 0;display: block;width: 100%;}
.txt form table .require {}
.txt form table td {padding-bottom: 28px;    margin-bottom: 28px;}
.txt form table th:before {content: "■";padding-right: .15em}
.txt .full_form form table th:before {content: none;}
.txt .full_form form table td {padding-bottom: 14px;margin-bottom: 0;}


/* :: type2のテーブル（クラス　type2 付与） ::; */
.txt figure.type2 table td,.txt figure.type2 table th {border: none;display: block;width: 100% !important}
.txt figure.type2 table td {padding: 0.75em 0 1.5em 0;}
.txt figure.type2 table td.th {padding: 0.75em !important;background: #f5f5f5;display: block;}
#custom_fasility_outline .txt figure.type2 table td.th {background:#393939;}

}

@media only screen and (max-width: 540px) {

/* :: 改行の是正（トップページの縦書きメッセージ） ::; */
div.strait p {display: inline-block;}


/* ::: トップスライド切り替え ::: */
#swiper_smart_area {display: block;}
#swiper_pc_area {display: none;}
#topslide .scroll_bar_area {display: none;}

#sidemenu div.list {min-width:auto;}


.flexbox>.item {width: 100%;margin-bottom: 24px}
body main article,body main article.page_post,footer>article,article.person_data.full>div.wrap {padding-left: 24px;padding-right: 24px;}
}






