@charset "UTF-8";
/*
* 適用するCSSのプロパティ
* アニメーションの時間
* 変化のパターンを選択 ease / linear / ease-in / ease-out / ease-in-out / cubic-bezier(数値, 数値, 数値, 数値)
* 変化がはじまるまでの時間を設定
*/
/*
* タイトル等で両端にボーダーを指定する
* タイトル部分を中央寄せにする場合はCenter寄せを指定したdivでラッピングする
*/
/*
* タイトル
* 左にアイコンを設置する
*/
/*
* タイトル
* 上下にボーダーを引く
*/
/*
* 番号
* ナンバリングを行うスタイル
*/
/*
* ホバーしたときにアンダーラインがアニメーション表示
* mode : center 時は中央からラインが表示
*/
/* アニメーション
*/
.side-contact__link { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

.footer-contact__inner { display: table; height: 100%; width: 100%; }

.footer-contact__link { display: table-cell; height: 100%; width: 100%; text-align: center; vertical-align: middle; }

/*共通*/
/*header*/
.header-bar { background: #333; color: #fff; }

body { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

p { font-size: 16px; line-height: 1.6; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; margin-bottom: 2rem; }

h1, h2, h3, h4, h5, h6, .header-text { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; color: #333; }

h1 { font-size: 3.2rem; margin-bottom: 90px; text-align: center; }

h1::after { content: ''; display: block; border-bottom: 2px solid #8e2940; width: 4em; margin: 5px auto 0 auto; }

.archive-h1 { text-align: left !important; font-size: 2.4rem !important; margin-bottom: 30px !important; padding: 5px 0  !important; line-height: 1.2 !important; border: none !important; position: relative !important; border-bottom: 2px solid #ccc !important; }

.archive-h1::after { position: absolute !important; content: " " !important; display: block !important; bottom: -2px !important; width: 20% !important; border-bottom: 2px solid #8e2940 !important; }

.archive-h1:first-letter { font-size: 1.2em !important; color: #8e2940 !important; }

h2 { font-size: 2.4rem; margin-bottom: 30px; padding: 5px 0; line-height: 1.2; border: none; position: relative; border-bottom: 2px solid #ccc; }

h2::after { position: absolute; content: " "; display: block; bottom: -2px; width: 20%; border-bottom: 2px solid #8e2940; }

h2:first-letter { font-size: 1.2em; color: #8e2940; }

h3 { font-size: 2.2rem; }

h4 { font-size: 2rem; }

ul, ol { list-style-type: none; }

@media (max-width: 991px) { h2 { font-size: 2.4rem; } }
@media (max-width: 575px) { h1, .archive-h1 { font-size: 2rem !important; line-height: 1.2 !important; margin-bottom: 30px !important; }
  h2 { font-size: 1.8rem; padding: 0 0 5px 0; }
  h3 { font-size: 1.6rem; }
  p { font-size: 1.4rem; } }
.header { border-bottom: 1px solid #ccc; }

@media (min-width: 992px) { .header-logo-under { display: block; text-align: center; font-size: 11px; margin-top: 3px; } }
@media (max-width: 991px) { .header-logo-under { display: block; margin-top: -10px; margin-bottom: 5px; font-size: 11px; } }
@media (min-width: 992px) { .search-placeholder { position: absolute; top: 0; left: 0; }
  .header-inner { position: relative; display: table; width: 100%; }
  /* h1 */
  .header-bar { padding: 10px 0; }
  .header-text { font-size: 12px !important; line-height: 1 !important; margin: 0 !important; text-align: left !important; color: #fff !important; }
  .header-text::after { display: none !important; }
  /* logo */
  .header-logo { padding: 15px 0; text-align: left; width: 15%; display: table-cell; }
  .header-logo img { width: 100%; height: auto; } }
/* header / max-width: 991px スマホ----*/
@media (max-width: 991px) { .header { /* empty */ min-height: 90px; }
  /* h1 */
  .header-bar { padding: 5px 0; }
  .header-text { font-size: 11px !important; line-height: 1.2 !important; text-align: center !important; color: #fff !important; margin-bottom: 0 !important; }
  .header-text::after { display: none !important; }
  /* logo */
  .header-logo { text-align: center; }
  .header-logo img { -webkit-transform: scale(0.75) translateY(-5px); transform: scale(0.75) translateY(-5px); max-width: 200px; margin-top: 5px; }
  /* tel & contact */
  .header-contacts { line-height: 0; position: fixed; z-index: 10000; top: 30px; left: 5px; -webkit-transition: top 500ms; transition: top 500ms; }
  .header-contacts.scrolled { top: 5px; }
  /* tel && contact */
  .header-tel { display: block; width: 36px; height: 36px; background-color: #8e2940; }
  .header-tel-icon-color { display: none; }
  .header-tel-icon-white, .header-mail-icon-white { position: absolute; top: 0; right: 0; bottom: 0; left: 0; height: 24px; margin: auto; }
  .header-tel-text .number { display: none; }
  .header-tel-text > i { padding-top: 7px; text-align: center; display: block; color: #fff; font-size: 22px; position: relative; }
  .header-mail { position: absolute; display: block; width: 36px; text-align: center; padding: 8px 5px; display: none; background-color: #333; }
  .ua-nontouch .header-mail:hover { opacity: .75; }
  .mailtext { color: #fff; display: block; line-height: 1; letter-spacing: 1px; font-weight: bold; font-size: 13px; position: relative; }
  .header-mail-text i { display: none; }
  .nav-doc-link { display: block; margin: 30px auto; width: 8em; border: 1px solid; text-align: center; padding: 5px; font-size: 1.8rem; } }
@media (min-width: 992px) and (max-width: 1199px) { .nav-parent-title { padding: 10px 12px; font-size: 1.5rem; } }
/*nav pc*/
@media (min-width: 992px) { .nav { width: 85%; display: table-cell; vertical-align: middle; z-index: 9999; padding: 5px 0 0 0; }
  .nav.nav-fixed { position: fixed; left: 0; top: 0; width: 100%; background: #fff2f2; box-shadow: 0 0 5px #ccc; }
  /* 親 */
  .nav-parent { display: table; float: right; }
  .nav-fixed .nav-parent { float: none; margin: 0 auto 10px auto; }
  .nav-parent-item { display: table-cell; vertical-align: middle; }
  .nav-parent-title { color: #555; line-height: 1.2; display: block; text-align: center; }
  .nav-parent-title-text { position: relative; }
  .nav-parent-title-text::after { position: absolute; bottom: -3px; left: 0; width: 0; margin: 0 auto; content: ''; -webkit-transition: width 500ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: width 500ms cubic-bezier(0.165, 0.84, 0.44, 1); border-bottom: 2px solid #8e2940; }
  .nav-parent-item-current .nav-parent-title-text::after, .nav-parent-title[href]:hover .nav-parent-title-text::after { width: 100%; }
  .nav-parent-item-current > .nav-child .nav-parent-title-text::after { border: none; }
  .nav-parent-item-haschild { position: relative; }
  /* 子 */
  .nav-child { position: absolute; z-index: 10000; top: 90%; visibility: hidden; width: 100%; -webkit-transition: 250ms; transition: 250ms; opacity: 0; box-shadow: 0 0 3px #ccc; }
  .nav-parent-item-haschild:hover .nav-child { top: 100%; visibility: visible; opacity: 1; }
  .nav-child-title { display: block; padding: 10px 0; -webkit-transition: background-color 250ms; transition: background-color 250ms; text-align: center; border-top: 1px solid #f3f3f3; background-color: #fff; color: #333; }
  .nav-child-title[href]:hover { color: #8e2940; background-color: #fff2f2; }
  .nav-child-item-hasgrandchild { position: relative; }
  /* 孫 */
  .nav-grandchild { position: absolute; top: -10%; left: 100%; visibility: hidden; width: 100%; -webkit-transition: 250ms; transition: 250ms; opacity: 0; }
  .nav-child-item-hasgrandchild:hover .nav-grandchild { top: 0; visibility: visible; opacity: 1; }
  .nav-grandchild-title { display: block; padding: 10px 0; -webkit-transition: background-color 250ms; transition: background-color 250ms; text-align: center; border-top: 1px solid #ddd; background-color: rgba(255, 255, 255, 0.8); }
  .nav-grandchild-title:hover { background-color: white; }
  /* current */
  .nav-parent-item-current { color: #659b66; }
  /* hamburger */
  .nav-hamburger { display: none; } }
@media (min-width: 1199px) { .nav-parent-title { padding: 10px 20px; font-size: 1.6rem; } }
/* nav sp*/
@media (max-width: 991px) { .nav .container-fluid { padding: 0; }
  .nav-container { position: fixed; z-index: 10000; top: 0; opacity: 0; right: 0; overflow-y: auto; width: 100%; height: 100%; padding: 80px 0; -webkit-transition: 500ms; transition: 500ms; color: white; background-color: rgba(51, 51, 51, 0.95); -webkit-overflow-scrolling: touch; display: none; }
  .nav-container._active { opacity: 1; display: block; }
  /* 親 */
  .nav-parent-title { display: block; padding: 10px; border-top-width: 1px; }
  .nav-parent-item:last-child .nav-parent-title { border-bottom-width: 1px; }
  .nav-overlay { position: fixed; z-index: 9999; /* over .bx-wrapper .bx-controls-direction a */ top: 0; left: 100%; width: 100%; height: 100%; }
  .nav-container._active + .nav-overlay { left: 0; }
  .nav-parent-item-haschild .nav-parent-title { display: table; width: 100%; table-layout: fixed; }
  .nav-parent-item-haschild .nav-parent-title::after { font-family: 'fontello'; font-size: 14px; line-height: 1; display: table-cell; width: 1em; content: '\e804'; -webkit-transition: -webkit-transform 500ms; transition: transform 500ms; text-align: center; vertical-align: middle; }
  .nav-parent-item-haschild._active .nav-parent-title::after { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
  /* 子 */
  .nav-child { display: none; }
  .nav-child-title { display: block; padding: 10px; padding-left: 25px; }
  .nav-child-item-hasgrandchild > .nav-child-title { display: table; width: 100%; table-layout: fixed; }
  .nav-child-item-hasgrandchild > .nav-child-title::after { font-family: 'fontello'; font-size: 14px; line-height: 1; display: table-cell; width: 1em; content: '\e804'; -webkit-transition: -webkit-transform 500ms; transition: transform 500ms; text-align: center; vertical-align: middle; }
  .nav-child-item-hasgrandchild._active .nav-child-title::after { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
  /* 孫 */
  .nav-grandchild { display: none; }
  .nav-grandchild-title { display: block; padding: 10px; padding-left: 40px; border-top: 1px dotted white; }
  /* hamburger */
  .nav-hamburger { line-height: 1; position: fixed; z-index: 10001; /* over .nav-parent */ top: 40px; right: 5px; width: 40px; height: 40px; padding: 7px 5px 5px; -webkit-transition: top 500ms; transition: top 500ms; text-align: center; background: #fff; }
  .nav-hamburger.scrolled { top: 5px; }
  .nav-hamburger-text { font-family: arial; font-size: 10px; display: inline-block; margin-top: 5px; color: #333; } }
/* hamburger --------------------------------------*/
@media (max-width: 991px) { /* * Hamburgers * @description Tasty CSS-animated hamburgers * @author Jonathan Suh @jonsuh * @site https://jonsuh.com/hamburgers * @link https://github.com/jonsuh/hamburgers * * Arranged by Jun Takahashi with OS. CO., LTD. */
  .hamburger { font: inherit; display: inline-block; overflow: visible; margin: 0; padding: 0; cursor: pointer; -webkit-transition-timing-function: ease; transition-timing-function: ease; -webkit-transition-duration: .15s; transition-duration: .15s; -webkit-transition-property: opacity, -webkit-filter, opacity, filter; transition-property: opacity, filter; text-transform: none; color: inherit; border: 0; background-color: transparent; }
  .hamburger-box { position: relative; display: inline-block; width: 25px; height: 15px; }
  .hamburger-box-inner { top: 50%; display: block; margin-top: 3px; }
  .hamburger-box-inner, .hamburger-box-inner::before, .hamburger-box-inner::after { position: absolute; width: 25px; height: 3px; -webkit-transition-timing-function: ease; transition-timing-function: ease; -webkit-transition-duration: .15s; transition-duration: .15s; -webkit-transition-property: -webkit-transform; transition-property: transform; }
  .hamburger-box-inner::before, .hamburger-box-inner::after { display: block; content: ''; }
  .hamburger-box-inner::before { top: -8px; }
  .hamburger-box-inner::after { bottom: -8px; }
  ._active > .nav-hamburger { background: transparent; }
  /* spin */
  .hamburger-spin .hamburger-box-inner { -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); -webkit-transition-duration: .3s; transition-duration: .3s; background-color: #333; }
  .hamburger-spin .hamburger-box-inner::before { -webkit-transition: top .1s .34s ease-in, opacity .1s ease-in; transition: top .1s .34s ease-in, opacity .1s ease-in; background-color: #333; }
  .hamburger-spin .hamburger-box-inner::after { -webkit-transition: bottom 0.1s 0.34s ease-in, -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: bottom 0.1s 0.34s ease-in, transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); background-color: #333; }
  .hamburger-spin._active .hamburger-box-inner { -webkit-transition-delay: .14s; transition-delay: .14s; -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); -webkit-transform: rotate(225deg); transform: rotate(225deg); }
  .hamburger-spin._active .hamburger-box-inner::before { top: 0; -webkit-transition: top .1s ease-out, opacity .1s .14s ease-out; transition: top .1s ease-out, opacity .1s .14s ease-out; opacity: 0; }
  .hamburger-spin._active .hamburger-box-inner::after { bottom: 0; -webkit-transition: bottom 0.1s ease-out, -webkit-transform 0.3s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); transition: bottom 0.1s ease-out, transform 0.3s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); -webkit-transform: rotate(-90deg); transform: rotate(-90deg); } }
/* news blog*/
/*--------------------------------------------------*/
.category-badge-list { display: inline-block; line-height: 1; margin-bottom: 10px; }

.blog-subttl { border-bottom: 1px solid #ccc; padding-bottom: 5px; margin-bottom: 15px; font-size: 18px; }

.blog-text-li { border-bottom: 1px dotted #ccc; padding-bottom: 15px; margin-bottom: 15px; }

.blog-list-link { margin: 30px auto 0 auto; text-align: center; width: 10em; }

.blog-list-link a { font-size: 12px; border-radius: 0; padding: 8px 0; display: block; background: #fff; color: #333; border: 1px solid #333; -webkit-transition: .5s ease; transition: .5s ease; }

.blog-list-link a:hover { background: #333; color: #fff; }

.blog-date2 { font-size: 1.2rem; margin-bottom: 0; }

.blog-date, .blog-demo-url, .blog-explain { color: #fff; font-size: 9px; line-height: 1; display: inline-block; margin-bottom: 3px; }

.blog-title { display: block; font-size: 2rem; line-height: 1.4; color: #333; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

.blog-title:hover { color: #8e2940; }

.blog-explain .badge-primary { background-color: #8e2940; padding: 2px; color: #fff; }

.blog-explain .badge-default { background-color: #aaa; padding: 2px; }

.tab-content2 .blog-explain { background-color: #8e2940; }

.author-avatar { text-align: right; font-size: 12px; }

.author-avatar img { margin-left: 5px; border-radius: 50%; }

/* 768～∞（md）*/
.tabs { display: table; border-bottom: 1px solid transparent; width: 100%; }

.tab-li { display: table-cell; line-height: 1; width: 33.33%; text-align: center; height: 40px; background-color: #8e2940; color: #fff; font-size: 16px; cursor: pointer; vertical-align: middle; border-radius: 5px 5px 0 0; }

.tab-li:not(:last-child) { border-right: 2px solid #fff; }

.tab-li.active { color: #fff; background: #333; }

.tab-li.active .tabs { border-bottom: 1px solid red; }

.tab-content { display: none; }

.tab-content1 { display: inherit; }

.blog-imgbox { position: relative; overflow: hidden; }

.blog-img img { -webkit-transition: -webkit-transform 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: transform; transition-duration: 1000ms; transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-delay: 0s; }

.blog-img:hover img { -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }

.blog-overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; -webkit-transition: background-color 500ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: background-color 500ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.youtube { position: relative; width: 100%; padding-top: 56.25%; }

.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

@media (max-width: 991px) { .category-badge-list { display: none; }
  .blog-title { line-height: 1.2; font-size: 1.6rem; }
  .tab-li { font-size: 1.4rem; } }
@media (max-width: 767px) { .tab-li { font-size: 1.3rem; line-height: 1; }
  .blog-title { display: block; font-size: 1.8rem; } }
@media (max-width: 575px) { .blog-date2 { margin-bottom: 3px; font-size: 1.1rem; }
  .kotei .blog-date2 { margin-top: 5px; }
  .blog-title { font-size: 1.4rem; } }
/* pagetop */
/*--------------------------------------------------*/
.pagetop { font-size: 24px; position: fixed; z-index: 2147483647; right: 25px; bottom: 25px; display: none; width: 1.75em; height: 1.75em; padding: 0; color: #f3f3f3; border: none; background-color: #333; border-radius: 0; }

@media (max-width: 575px) { .pagetop { right: 10px; bottom: 40px; } }
.pagetop i { line-height: 1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 1em; height: 1em; margin: auto; }

.pagetop i::before { margin: 0; -webkit-transform: translateY(-2px); transform: translateY(-2px); }

.ua-ie .pagetop i::before { animation: pagetop-fix-ie 10ms infinite; animation-fill-mode: both; }

@keyframes pagetop-fix-ie { 0% { margin: .1px; }
  100% { margin: 0; } }
.pagetop:hover i { -webkit-animation: pagetop 1000ms; animation: pagetop 1000ms; }

.pagetop-text { position: absolute; overflow: hidden; clip: rect(0, 0, 0, 0); width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; }

@-webkit-keyframes pagetop { 15% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); }
  40% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); }
  60% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); }
  80% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); } }
@keyframes pagetop { 15% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); transform: perspective(400px) rotate3d(0, 1, 0, 90deg); }
  40% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); transform: perspective(400px) rotate3d(0, 1, 0, -20deg); }
  60% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); transform: perspective(400px) rotate3d(0, 1, 0, 10deg); }
  80% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); transform: perspective(400px) rotate3d(0, 1, 0, -5deg); } }
/* breadcrumbs168 */
/*--------------------------------------------------*/
#breadcrumbs { margin-bottom: 0; }

#breadcrumbs, .breadcrumbs-inner { line-height: 1.3; margin: 5px 0 5px 0; font-size: 12px; }

.breadcrumbs { background: #f3f3f3; padding: 5px 0; margin-bottom: 60px; }

.breadcrumbs-inner > span { margin: 0 5px; vertical-align: middle; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; font-size: 12px; }

.breadcrumbs-inner a, .breadcrumb_last { font-weight: normal; font-size: 12px; -webkit-transition: color 100ms; transition: color 100ms; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

.ua-nontouch .breadcrumbs-inner a:hover { color: #8e2940; }

@media (max-width: 575px) { .breadcrumbs { margin-bottom: 20px; } }
/* subvisual */
.subvisual { width: 100%; position: relative; top: 0; background-position: center; background-size: cover; }

.subvisual p { position: absolute; top: 50%; left: 10%; }

.subvisual-inner { position: relative; }

.subvisual-innerspan { display: block; position: absolute; top: 50%; left: 0; }

.subvisual img { width: 100%; height: auto; }

/* title204 */
/*--------------------------------------------------*/
.title204-text { font-size: 26px; line-height: 1.3; padding: 10px 0; text-align: center; }

.title204-text > span { position: relative; display: inline-block; padding: 0 .5em; }

.title204-text > span::before, .title204-text > span::after { position: absolute; top: 50%; width: 2500%; content: ''; }

.title204-text > span::before { right: 100%; }

.title204-text > span::after { left: 100%; }

@media (max-width: 767px) { .title204-text { font-size: 22px; } }
.title204-text { overflow: hidden; }

.title204-text > span::before, .title204-text > span::after { border-top: 1px solid #aaa; }

@media (max-width: 767px) { .title204 .container-fluid { padding: 0; }
  .title204-text { padding: 10px; } }
/* sidebar */
/*--------------------------------------------------*/
.widget { margin-bottom: 15px; }

.widget-title { text-align: center; border-bottom: 1px solid #ccc; font-weight: bold; }

.widget h3 { font-size: 18px; padding: 0; font-weight: bold; border-bottom: 1px solid #333; }

.widget_media_image a img { width: 100%; }

.cat-item a { display: block; padding: 10px; overflow: hidden; text-overflow: ellipsis; position: relative; -webkit-transition: all .5s ease; transition: all .5s ease; }

.cat-item a:hover { background-color: #fff2f2; }

.cat-item a:after { font-family: 'fontello'; content: '\e802'; position: absolute; right: 15px; }

.cat-item a:hover > a:after { right: 10px; -webkit-transition: all .5s ease; transition: all .5s ease; }

.widget > ul > li:not(:last-child), .widget > ol > li:not(:last-child) { border-bottom: 1px dotted #ccc; }

.widget select { margin: 10px 5%; width: 90%; }

.widget_categories select { margin-top: 0px; }

.screen-reader-text { text-indent: 100%; overflow: hidden; white-space: nowrap; position: relative; pointer-events: none; }

.screen-reader-text::before { content: ""; width: 6em; height: 1em; background: white; position: absolute; top: 2px; }

.widget_categories form { margin-top: -1em; }

.widget .related-list { display: block; }

.widget .related-list a { font-size: 1.4rem; line-height: 1.2; margin-bottom: 0; display: block; overflow: hidden; padding: 10px 5px; }

.widget .related-list a:hover { background: #fff2f2; }

.widget .related-list img { width: 25%; padding: 0; max-width: 80px; float: left; margin: 0 5px 5px 0; }

.related_event-list { padding: 5px 0; border-bottom: none !important; }

.related_event-list-inner { padding: 10px 5px; background: #f3f3f3; }

.related_event-list-inner a { text-decoration: underline; line-height: 1.2; color: #8e2940; font-size: 1.6rem; font-weight: bold; }

.related_event-list-inner a:hover { text-decoration: none; }

/*LINE@*/
.lineat { border: 1px solid #00BB00; margin-bottom: 30px; }

.lineat h3 { font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; width: 100%; background: #00BB00; color: #fff; display: block; margin-bottom: 0; padding: 10px 5px; line-height: 1; font-weight: bold; font-size: 2rem; text-align: center; }

.lineat-inner { display: flex; width: 95%; align-items: center; margin: 0 auto; }

.lineat-text { margin: 10px 10px 0 10px; font-size: 1.5rem; line-height: 1.4; }

.line-qr-side { width: 30%; padding-bottom: 5px; }

.line-right-side { width: 70%; }

.line-right-side img, .line-right-side p { display: block; }

.line-right-side p { line-height: 1; padding-left: 5px; margin-bottom: 5px; font-weight: bold; color: #00BB00; }

.lineat-friend { font-size: 2rem; }

.lineat-id { font-size: 2.2rem; }

@media (max-width: 1199px) { .lineat h3 { font-size: 1.8rem; }
  .lineat-id { font-size: 1.8rem; }
  .lineat-friend { font-size: 2rem; }
  .lineat-text { font-size: 1.3rem; text-align: center; } }
@media (max-width: 767px) { .lineat { width: 95%; max-width: 500px; margin-left: auto; margin-right: auto; }
  .lineat-inner { justify-content: center; }
  .line-qr-side, .line-right-side { width: auto; }
  .line-qr-side img { max-width: 120px; }
  .lineat-text { font-size: 1.4rem; } }
@media (max-width: 575px) { .lineat, .line-qr-side, .line-right-side, .line-right-side a { width: 100%; }
  .lineat-inner { display: block; }
  .line-right-side { display: block; margin: 10px auto 10px auto; max-width: 150px; }
  .lineat-id { font-size: 2.2rem; text-align: center; margin-bottom: 15px !important; } }
/*人気記事ランキング*/
.popular-posts ul li, .popular-posts ol li { padding: 10px 0; display: block; }
.popular-posts ul li a, .popular-posts ol li a { display: block; float: left; padding: 0; }
.popular-posts ul li a::after, .popular-posts ol li a::after { display: none; }
.popular-posts ul li a:not(.wpp-post-title), .popular-posts ol li a:not(.wpp-post-title) { width: 25%; padding: 0; max-width: 80px; -webkit-transition: all .5s ease; transition: all .5s ease; }
.popular-posts ul li a:not(.wpp-post-title):after, .popular-posts ol li a:not(.wpp-post-title):after { display: none; }
.popular-posts ul li a:not(.wpp-post-title):hover, .popular-posts ol li a:not(.wpp-post-title):hover { opacity: 0.6; }
.popular-posts ul li .wpp-post-title, .popular-posts ol li .wpp-post-title { width: 75%; max-width: 100%; line-height: 1.2; padding-left: 5px; }
.popular-posts ul li .wpp-post-title:hover, .popular-posts ol li .wpp-post-title:hover { background: none; color: #8e2940; }

.wpp-meta { display: block; clear: both; }

.wpp-views { display: none; }

@media (min-width: 578px) and (max-width: 767px) { .popular-posts li .wpp-post-title { font-size: 1.8rem; width: 85% !important; } }
@media (max-width: 575px) { .popular-posts li .wpp-post-title { width: 75% !important; } }
/* カレンダー */
.widget_calendar table { width: 100%; }

.widget_calendar td, .widget_calendar th { text-align: center; padding: 3px 7px; }

.widget_calendar thead { border-top: 1px solid #ccc; }

.widget_calendar thead th, .widget_calendar tbody td { border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; }

.widget_calendar caption { text-align: center; font-size: 16px; padding: 7px 0; }

.widget_calendar a { color: blue; text-decoration: underline; }

.widget_calendar tfoot td { padding: 7px 0; }

.widget ul.children { border-top: 1px dotted #ccc; }

.widget ul.children li { -webkit-transition: all .5s ease; transition: all .5s ease; }

.widget ul.children li a:before { content: '├ '; }

.widget ul.children li:last-child a:before { content: '└ '; }

.widget ul.children li a { display: block; padding: 13px 15px 7px 10px; }

.widget ul.children li:hover > a { background-color: #EFEFEF; }

.widget ul.children li > a:after { font-family: 'fontello'; content: '\e802'; position: absolute; right: 30px; }

.widget ul.children li:hover > a:after { right: 25px; -webkit-transition: all .5s ease; transition: all .5s ease; }

/*検索フォーム*/
.searchform { position: relative; }

.searchform input[type="search"] { width: 100%; }

.searchfield { font-size: 14px; padding: 7px; }

.searchsubmit { font-size: 20px; width: 35px; height: 30px; background: transparent; padding: 0; border: none; cursor: pointer; position: absolute; right: 10px; top: 5px; }

/*seach サイドバーの検索フォーム　ボタン・モーダル*/
.widget_search { border: none; }

.widget_search .widget-title { border: 1px solid #ccc; border-bottom: none; }

.search-modal-btn { background: #333; border: 1px solid #333; color: #fff; padding: 10px; display: block; margin-bottom: 30px; border-radius: 0; -webkit-transition: all .5s ease; transition: all .5s ease; }

.search-modal-btn:hover { background-color: #fff; color: #333; }

#tribe-events .tribe-events-mobile, .card { position: relative; display: flex; flex-direction: column; background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.125); }

#tribe-events .tribe-events-mobile, .card-block { flex: 1 1 auto; padding: 2rem; }

#tribe-events .tribe-events-mobile small, .card-block small { padding-bottom: 5px; display: block; }

.drop-shadow p { margin-bottom: 0; }

.how-order { color: #fff; padding: 8px 10px; background: #333; font-weight: bold; font-size: 1.8rem; margin: 20px 0; border: 1px solid transparent; transition: .5s ease; -webkit-transition: .5s ease; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

.how-order:hover { border: 1px solid #8e2940; background: #8e2940; }

.order-inner li a { color: #333; padding: 5px 10px; font-weight: bold; display: inline-block; font-size: 1.6rem; margin: 10px 0; border: 1px solid #333; transition: .5s ease; -webkit-transition: .5s ease; }

.order-inner li a:hover { border: 1px solid transparent; background: #333; color: #fff; }

@media (max-width: 991px) { .search-modal-btn { background: #fff; overflow: hidden; top: 38px; left: 5px; font-size: 1.6rem; width: 40px; height: 40px; padding: 7px 8px 8px 9px; border: none; position: fixed; z-index: 9999; }
  .search-modal-btn small { color: #333; }
  .search-btn .search-fixed { left: 5px; top: 5px; } }
@media (max-width: 575px) { .how-order { font-size: 1.6rem; } }
.contact-sidebox { margin-bottom: 30px; border: 1px solid #8e2940; }

.contact-sidebox h3 { line-height: 1.4; font-weight: bold; padding: 10px 0 10px 0; background: #fff2f2; text-align: center; font-size: 1.6rem; }

.telbox { border-bottom: 1px dotted #555; }

.telbox a { color: #8e2940; display: block; text-align: center; font-size: 3rem; margin-top: 10px; margin-bottom: 0; line-height: 1.4; font-weight: bold; }

.telbox p { display: block; font-size: 1.4rem; text-align: center; margin-bottom: 10px; }

.contactbox { width: 90%; margin: 15px auto 10px auto; text-align: center; }

.contactbox a { position: relative; left: 0; top: 0; display: block; padding: 10px 0; font-weight: bold; color: #fff; font-size: 1.8rem; background: #333; box-shadow: 3px 3px 0 #555; border-radius: 5px; -webkit-transition: all .5s ease; transition: all .5s ease; }

.contactbox a:hover { left: 3px; top: 3px; background: #8e2940; box-shadow: 0 0 0 #333; }

@media (max-width: 1199px) { .telbox a { font-size: 2.4rem; }
  .contactbox a { line-height: 1.2; font-size: 1.6rem; } }
@media (max-width: 991px) { .telbox a { padding: 0; font-size: 2.4rem; } }
@media (max-width: 767px) { .contact-sidebox { width: 95%; max-width: 500px; margin-left: auto; margin-right: auto; }
  .contact-sidebox h3 { padding: 10px 0; font-size: 2rem; }
  .telbox a { font-size: 2.8rem; }
  .contactbox a { margin-bottom: 15px; font-size: 2rem; } }
@media (max-width: 575px) { .contact-sidebox { width: 100%; }
  .telbox a { font-size: 2.6rem; }
  .contactbox a { font-size: 1.8rem; } }
/* タグクラウド */
.widget_tag_cloud { margin-bottom: 30px; }

/* 最近の投稿 */
.widget_recent_entries li a { padding: 10px 0; display: block; -webkit-transition: all .5s ease; transition: all .5s ease; line-height: 1.2; }

.widget_recent_entries li a:hover { background: #fff2f2; }

/* カテゴリー名 */
.news-cat-label { display: inline-block; padding: 1px 10px; margin-right: 3px; font-size: 11px; background-color: #8e2940; color: #fff; }

/* カテゴリー名 */
.news-tag-label { display: inline-block; padding: 1px 10px; margin-right: 3px; font-size: 11px; background-color: #555; color: #fff; }

/* アーカイブのページネーション */
.pagenation { margin: 60px 0; text-align: center; }

.page-numbers { background-color: #333; color: #fff; padding: 5px 10px; }

.page-numbers.current { background-color: #fff; border: 1px solid #333; color: #333; }

.page-numbers.dots { background-color: #FFF; color: #000; padding: 0 1px; }

/* 最近のコメント */
.widget_recent_comments .recentcomments { padding: 10px 15px; }

.widget_recent_comments .recentcomments a { text-decoration: underline; }

.widget_recent_comments .recentcomments a:after { content: none; }

.widget_recent_comments .recentcomments:hover > a { background: none; }

/* oEmbedをレスポンシブ化 */
.wp-embedded-content { max-width: 100%; }

/*footer*/
.footer-inner { background: #fafafa; padding: 30px 0; }

.flogo { text-align: center; max-width: 200px; margin: 0 auto; }

.faddress li { text-align: center; }

.faddress .shopname { font-size: 16px; }

.footer-sns-box ul { text-align: center; }

.footer-sns-box ul li { display: inline-block; margin: 0 15px 0 0; }

.footer-sns-box ul li:last-child { margin: 0; }

.footer-sns-box li img { height: 30px; width: 30px; }

.copyright { background: #333; color: #fff; }

.copyright-box { display: block; text-align: center; font-size: 11px; line-height: 1; }

.copyright-mark { font-family: Arial; }

.copyright-body { padding: 10px 0; }

.footer-parent { display: block; float: left; }

.footer-parent-item { display: inline-block; vertical-align: top; font-size: 1.2rem; }

.footer-parent-title { line-height: 1.3; display: block; padding: 0 15px; }


/*footer-bnr*/
.footer-bnr {
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 999;
  text-align: center;
  margin: 0;
}
.footer-bnr a {
  display: inline-block;
  max-width: 600px;
}

li:last-child .footer-parent-title { border-right-width: 1px; }

.ua-nontouch .footer-parent-title.footer-link:hover { text-decoration: underline; color: #777777; }

@media (max-width: 1199px) { .footer-body { display: block; }
  .footer-parent { display: block; text-align: center; }
  .footer-links { display: block; margin-top: 25px; text-align: center; } }
@media (max-width: 767px) { .footer-parent { float: none; }
  .footer-parent-title { padding: 0 5px; font-size: 1.2rem; margin-bottom: 20px; }
  .footer-links { text-align: center; }
  .copyright { text-align: center; font-size: 10px; }
  .footer-body { margin: 10px 0 5px 0; } }
.fnav { padding: 40px 0; background: #555; }

.fnav-title { font-weight: bold; font-size: 1.8rem; margin-bottom: 5px; border-bottom: 1px solid #ccc; }

.fnav-list { color: #eee; }

.fnav-list a:hover { text-decoration: underline; }

@media (max-width: 767px) { .fnav-list > li:not(:last-child) { margin-bottom: 30px; } }
@media (max-width: 575px) { .fnav-title { font-size: 1.4rem; margin-bottom: 20px; }
  .fnav-list a { font-size: 1.4rem; }
  .fnav-list > li:not(:last-child) { margin-bottom: 40px; }
  .fnav-list > li ul li:not(:last-child) { margin-bottom: 10px; }
  .flow-content { display: none; } }
.card-title { font-weight: bold; margin-bottom: 0.75rem; font-size: 20px; }

.card-subtitle { margin-top: -.375rem; }

.card-subtitle, .card-text:last-child { margin-bottom: 0; }

.card-link:hover { text-decoration: none; }

.card-link + .card-link { margin-left: 1.25rem; }

.card-header { margin-bottom: 0; border-bottom: 1px solid rgba(0, 0, 0, 0.125); }

.card-footer, .card-header { padding: 0.75rem 1.25rem; background-color: #f7f7f9; }

.card-footer { border-top: 1px solid rgba(0, 0, 0, 0.125); }

.card-header-tabs { margin-bottom: -.75rem; border-bottom: 0; }

.card-header-pills, .card-header-tabs { margin-right: -.625rem; margin-left: -.625rem; }

.card-primary { background-color: #333; border-color: #333; }

.card-primary .card-footer, .card-primary .card-header { background-color: transparent; }

.card-success { background-color: #5cb85c; border-color: #5cb85c; }

.card-success .card-footer, .card-success .card-header { background-color: transparent; }

.card-info { background-color: #5bc0de; border-color: #5bc0de; }

.card-info .card-footer, .card-info .card-header { background-color: transparent; }

.card-warning { background-color: #f0ad4e; border-color: #f0ad4e; }

.card-warning .card-footer, .card-warning .card-header { background-color: transparent; }

.card-danger { background-color: #d9534f; border-color: #d9534f; }

.card-danger .card-footer, .card-danger .card-header, .card-outline-primary { background-color: transparent; }

.card-outline-primary { border-color: #333; }

.card-outline-secondary { background-color: transparent; border-color: #ccc; }

.card-outline-info { background-color: transparent; border-color: #5bc0de; }

.card-outline-success { background-color: transparent; border-color: #5cb85c; }

.card-outline-warning { background-color: transparent; border-color: #f0ad4e; }

.card-outline-danger { background-color: transparent; border-color: #d9534f; }

.card-inverse { color: rgba(255, 255, 255, 0.65); }

.card-inverse .card-footer, .card-inverse .card-header { background-color: transparent; border-color: rgba(255, 255, 255, 0.2); }

.card-inverse .card-blockquote, .card-inverse .card-footer, .card-inverse .card-header, .card-inverse .card-title { color: #fff; }

.card-inverse .card-blockquote .blockquote-footer, .card-inverse .card-link, .card-inverse .card-subtitle, .card-inverse .card-text { color: rgba(255, 255, 255, 0.65); }

.card-inverse .card-link:focus, .card-inverse .card-link:hover { color: #fff; }

.card-blockquote { padding: 0; margin-bottom: 0; border-left: 0; }

.card-img-overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; padding: 1.25rem; }

.card .widget.widget_tag_cloud a { color: #fff !important; border-radius: 0; }

.form-control { padding-top: .75em; padding-bottom: .75em; width: 100%; font-size: 16px; }

hr { box-sizing: content-box; height: 0; overflow: visible; }

.text-uppercase { text-transform: uppercase !important; }

#tribe-events .tribe-events-read-more { float: right; color: #fff; }

.close { float: right; font-size: 1.5rem; font-weight: 700; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: 0.5; }

.close:focus, .close:hover { color: #000; text-decoration: none; cursor: pointer; opacity: 0.75; }

button.close { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; }

.modal, .modal-open { overflow: hidden; }

.modal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1050; display: none; outline: 0; }

.modal.fade .modal-dialog { transition: -webkit-transform 0.3s ease-out; transition: transform 0.3s ease-out; transition: transform 0.3s ease-out,-webkit-transform 0.3s ease-out; -webkit-transform: translateY(-25%); transform: translateY(-25%); }

.modal.show .modal-dialog { -webkit-transform: translate(0); transform: translate(0); }

.modal-open .modal { overflow-x: hidden; overflow-y: auto; }

.modal-dialog { position: relative; width: auto; margin: 10px; }

.modal-content { position: relative; display: flex; -ms-flex-direction: column; flex-direction: column; background-color: #fff; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, 0.2); outline: 0; }

.modal-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; background-color: #000; }

.modal-backdrop.fade { opacity: 0; }

.modal-backdrop.show { opacity: 0.5; }

.modal-header { display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: justify; justify-content: space-between; padding: 15px; border-bottom: 1px solid #eceeef; }

.modal-title { margin-bottom: 0; line-height: 1.5; }

.modal-body { position: relative; -ms-flex: 1 1 auto; flex: 1 1 auto; padding: 15px; }

html { margin-right: 0px !important; overflow: auto !important; }

.modal-footer { display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: end; justify-content: flex-end; padding: 15px; border-top: 1px solid #eceeef; }

.modal-footer > :not(:first-child) { margin-left: 0.25rem; }

.modal-footer > :not(:last-child) { margin-right: 0.25rem; }

.modal-scrollbar-measure { position: absolute; top: -9999px; width: 50px; height: 50px; overflow: scroll; }

.tooltip { position: absolute; z-index: 1070; display: block; font-family: Oswald, -apple-system, system-ui, BlinkMacSystemFont, Segoe UI, Roboto, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; font-style: normal; font-weight: 400; letter-spacing: normal; line-height: 1.5; text-align: left; text-align: start; text-decoration: none; text-shadow: none; text-transform: none; white-space: normal; word-break: normal; word-spacing: normal; font-size: 0.875rem; word-wrap: break-word; opacity: 0; }

.mfp-bg { z-index: 99998; overflow: hidden; background: #0b0b0b; opacity: 0.8; }

.mfp-fade.mfp-bg { transition: all .15s ease-out; opacity: 0; }

.mfp-fade.mfp-bg.mfp-ready { opacity: .8; }

.mfp-fade.mfp-bg.mfp-removing { opacity: 0; }

.mfp-bg, .mfp-wrap { top: 0; left: 0; width: 100%; height: 100%; position: fixed; }

.mfp-wrap { z-index: 999999; outline: none !important; -webkit-backface-visibility: hidden; }

.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; padding: 0 8px; box-sizing: border-box; }

.mfp-container:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }

.mfp-align-top .mfp-container:before { display: none; }

.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 99999; }

.mfp-ajax-holder .mfp-content, .mfp-inline-holder .mfp-content { width: 100%; cursor: auto; }

.mfp-ajax-cur { cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: zoom-out; }

.mfp-zoom { cursor: pointer; cursor: zoom-in; }

.mfp-auto-cursor .mfp-content { cursor: auto; }

.mfp-arrow, .mfp-close, .mfp-counter, .mfp-preloader { -webkit-user-select: none; user-select: none; }

.mfp-loading.mfp-figure { display: none; }

.mfp-hide { display: none !important; }

.mfp-preloader { color: #ccc; position: absolute; top: 50%; width: auto; text-align: center; margin-top: -.8em; left: 8px; right: 8px; z-index: 1044; }

.mfp-preloader a { color: #ccc; }

.mfp-preloader a:hover { color: #fff; }

.mfp-s-error .mfp-content, .mfp-s-ready .mfp-preloader { display: none; }

button.mfp-arrow, button.mfp-close { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; display: block; outline: none; padding: 0; z-index: 1046; box-shadow: none; -ms-touch-action: manipulation; touch-action: manipulation; }

button::-moz-focus-inner { padding: 0; border: 0; }

.mfp-close { width: 44px; height: 44px; line-height: 44px; position: absolute; right: 0; top: 0; text-decoration: none; text-align: center; opacity: 0.65; padding: 0 0 18px 10px; color: #fff; font-style: normal; font-size: 28px; font-family: Arial,Baskerville,monospace; }

.mfp-close:focus, .mfp-close:hover { opacity: 1; }

.mfp-close:active { top: 1px; }

.mfp-close-btn-in .mfp-close { color: #333; }

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close { color: #fff; right: -6px; text-align: right; padding-right: 6px; width: 100%; }

.mfp-counter { position: absolute; top: 0; right: 0; color: #ccc; font-size: 12px; line-height: 18px; white-space: nowrap; }

.mfp-arrow { position: absolute; opacity: 0.65; margin: 0; top: 50%; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }

.mfp-arrow:active { margin-top: -54px; }

.mfp-arrow:focus, .mfp-arrow:hover { opacity: 1; }

.mfp-arrow:after, .mfp-arrow:before { content: ''; display: block; width: 0; height: 0; position: absolute; left: 0; top: 0; margin-top: 35px; margin-left: 35px; border: medium inset transparent; }

.mfp-arrow:after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }

.mfp-arrow:before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }

.mfp-arrow-left { left: 0; }

.mfp-arrow-left:after { border-right: 17px solid #fff; margin-left: 31px; }

.mfp-arrow-left:before { margin-left: 25px; border-right: 27px solid #3f3f3f; }

.mfp-arrow-right { right: 0; }

.mfp-arrow-right:after { border-left: 17px solid #fff; margin-left: 39px; }

.mfp-arrow-right:before { border-left: 27px solid #3f3f3f; }

.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }

.mfp-iframe-holder .mfp-close { top: -40px; }

.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }

.mfp-iframe-scaler iframe { position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000; }

img.mfp-img { width: auto; max-width: 100%; height: auto; display: block; box-sizing: border-box; padding: 40px 0; margin: 0 auto; }

.mfp-figure, img.mfp-img { line-height: 0; }

.mfp-figure:after { content: ''; position: absolute; left: 0; top: 40px; bottom: 40px; display: block; right: 0; width: auto; height: auto; z-index: -1; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444; }

.mfp-figure small { color: #bdbdbd; display: block; font-size: 12px; line-height: 14px; }

.mfp-figure figure { margin: 0; }

.mfp-bottom-bar { margin-top: -36px; position: absolute; top: 100%; left: 0; width: 100%; cursor: auto; }

.mfp-title { text-align: left; line-height: 18px; color: #f3f3f3; word-wrap: break-word; padding-right: 36px; }

.mfp-image-holder .mfp-content { max-width: 1000px; width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

.white-popup { position: relative; width: auto; max-width: 960px; margin: 20px auto; padding: 20px; color: #333; background: #fff; }

#search-form-modal { border-width: 0; position: relative; margin-left: auto; margin-right: auto; padding-right: 15px; padding-left: 15px; }

#search-form-modal .mfp-close { right: 1.25rem; }

#search-form-modal #tribe-events .tribe-events-mobile, #search-form-modal .card, #tribe-events #search-form-modal .tribe-events-mobile { border-width: 0; }

.tribe-bar-views-select { display: none; }

#search-form-modal .searchform { border-color: #333; -webkit-appearance: none; appearance: none; border-radius: 0; }

#search-form-modal .widget { padding: 2rem 0 0; }

#search-form-modal .widget h3 { font-weight: bold; background: transparent; padding: 0; border-bottom: none; }

#search-form-modal .widget h3:before { border: none; }

.sidebar .search-modal-btn { border-color: #fff; color: #fff; }

.sidebar .search-modal-btn:hover { background-color: #fff; color: #333; }

#search-form-modal .widget { padding: 2rem 0 0; }

.widget { margin-bottom: 30px; }

.widget h3 { margin-bottom: 20px; }

.widget.widget_tag_cloud a { margin-bottom: 5px; padding: .45rem .6rem .4rem; color: #fff; background: #333; border-radius: 0; border: 1px solid #333; font-size: 11px !important; display: inline-block; transition: all .2s ease-in-out; }

.widget.widget_tag_cloud a:hover { background: #fff; color: #333; }

.widget.widget_tag_cloud a:hover { color: #333 !important; }

.widget.widget_tag_cloud a::before { padding-right: .5em; color: #989191; font-family: 'fontello'; content: '\e8bb'; font-size: 14px; font-size: 1em; text-rendering: auto; -webkit-font-smoothing: antialiased; }

.btn-search { height: 100%; width: 100%; color: #fff; background: #333; display: block; padding-top: .75em; padding-bottom: .75em; font-size: 1.6rem; transition: all .2s ease-in-out; border: 1px solid transparent; }

.btn-search:hover { background: #8e2940; border: 1px solid #8e2940; }

#search-form-modal .searchform { border-color: #333; }

#search-form-modal .widget { padding: 2rem 0 0; }

#search-form-modal .widget .tagcloud a { color: #333; }

#search-form-modal .widget .tagcloud a:hover { color: #f5f6f7; }

[class*=" icon-"], [class^=icon-] { text-transform: none; font-family: icomoon !important; font-weight: 400; font-style: normal; font-variant: normal; line-height: 1; speak: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.result-area { display: none; }

@media (max-width: 575px) { .form-control { margin-bottom: 10px; }
  .form-control, .btn-search { padding: 5px 0; }
  .widget_tag_cloud { display: none; } }
/* Facebook sns */
/*--------------------------------------------------*/
.facebook { overflow: hidden; margin-bottom: 30px; }

.sns-timeline { margin: 0 auto; max-width: 500px; width: 100%; }

.sns-timeline .fb-page { display: block; margin: 0 auto; max-width: 500px; width: 100%; }

@media (max-width: 767px) { .facebook { margin-bottom: 60px; } }
/*イベント一覧ページ*/
#tribe-events-content-wrapper { margin-bottom: 90px; }

.tribe-events-page-title { text-align: left !important; }

.tribe-events-list-event-title { color: #8e2940; font-weight: bold; text-decoration: underline; }

.tribe-events-list-event-title:hover { text-decoration: none; }

.tribe-events-list-event-title::after { display: none !important; }

.tribe-events-list-event-title::first-letter { font-size: 1em; color: #8e2940; }

.event-list { padding-bottom: 30px !important; }

.events-list #tribe-events-footer, .single-tribe_events #tribe-events-footer, .tribe-events-day #tribe-events-footer, .tribe-events-map #tribe-events-footer, .tribe-events-photo #tribe-events-footer { border: none !important; }

.tribe-events-sub-nav { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }

#tribe-events-footer .tribe-events-sub-nav .tribe-events-nav-next, #tribe-events-footer .tribe-events-sub-nav .tribe-events-nav-previous, #tribe-events-header .tribe-events-sub-nav .tribe-events-nav-next, #tribe-events-header .tribe-events-sub-nav .tribe-events-nav-previous { box-sizing: border-box; display: block; margin: 0; width: 50%; }

.tribe-events-loop .tribe-events-event-meta { background: #fafafa !important; border: 1px solid #eee; margin-top: 12px; padding: 12px 0 0; }

.tribe-event-schedule-details, .tribe-events-venue-details { padding: 0 12px; }

.tribe-events-day .tribe-events-day-time-slot h5 { background: #fff2f2; color: #8e2940; padding: 10px 5px; display: block; border: 1px solid #8e2940; }

.tribe-events-list .tribe-events-loop .tribe-event-featured { background: transparent; color: #333; }

.tribe-event-url { color: #8e2940 !important; }

.tribe-events-content { padding: 0 0 0 0 !important; }

.tribe-events-event-meta, .tribe-events-content { color: #333 !important; }

#tribe-events .tribe-events-read-more { color: #fff !important; background: #333; padding: 5px 15px; }

#tribe-events-content table.tribe-events-calendar .type-tribe_events.tribe-event-featured { background: transparent !important; }

.tribe-events-month-event-title a { color: #8e2940 !important; }

.seminar-flow { margin-top: 30px; }

.seminar-flow ul { text-align: center; margin-bottom: 30px; }

.seminar-flow li { padding: 0 15px; display: inline-block; }

.seminar-flow a { background: #333; color: #fff; font-size: 1.8rem; text-align: center; padding: 8px 10px; width: 17em; display: block; transition: 0.3s ease; -webkit-transition: 0.3s ease; border: 1px solid #333; font-weight: bold; }

.seminar-flow a:hover { background: #8e2940; color: #fff; border: 1px solid #8e2940; }

@media (max-width: 991px) { .seminar-flow a { font-size: 1.6rem; }
  .seminar-flow li { margin-bottom: 20px; } }
@media (max-width: 767px) { .tribe-events-venue-details { display: none !important; }
  .tribe-events-event-meta { padding-bottom: 10px !important; } }
@media (max-width: 575px) { h2.tribe-events-page-title { font-size: 1.6rem; }
  .tribe-events-list-separator-month span { font-size: 2rem; }
  .tribe-events-list .type-tribe_events:first-of-type { margin-top: 0; }
  .tribe-events-list-separator-month { margin-bottom: 0; }
  .tribe-events-list .type-tribe_events h2 { font-size: 1.8rem !important; line-height: 1.3; }
  .tribe-events-list .tribe-events-loop .tribe-events-event-image { width: 100%; height: auto; float: none; }
  .tribe-events-list .tribe-events-event-image img { width: 100%; height: auto; }
  .tribe-events-list-event-description p { margin-bottom: 5px !important; }
  .seminar-flow > a { font-size: 1.4rem; } }
/*カレンダー*/
.tribe-events-calendar th { background: #333 !important; }

/*イベント詳細ページ*/
.tribe-events-notices { color: #8e2940; background: #fff2f2; border: 1px solid #8e2940; border-radius: 0; font-size: 1.6rem; font-weight: bold; }

.tribe-events-cost { float: right; font-weight: bold; font-size: 2rem !important; line-height: 1; margin-top: 10px; border-bottom: 2px solid #8e2940; }

.single-tribe_events .tribe-events-event-meta { padding: 0 15px; }

.primary .tribe-events-meta-group { width: 33%; display: block; float: left; padding: 5px; }

.single-tribe_events .tribe-events-schedule { background: #fafafa; border: 1px solid #eee; margin: 20px 0; padding: 10px; }

.single-tribe_events .tribe-events-single-event-title { border-bottom: 2px solid #ccc; padding-bottom: 10px; text-align: left; position: relative; top: 0; }

.single-tribe_events .tribe-events-single-event-title::after { position: absolute; content: " "; display: block; bottom: -2px; width: 20%; border-bottom: 2px solid #8e2940; }

.single-tribe_events .tribe-events-single-event-title:first-letter { font-size: 1.2em; color: #8e2940; }

.single-tribe_events #tribe-events-content .tribe-events-event-meta dt, .single-tribe_events #tribe-events-content .tribe-events-event-meta dd { line-height: 1; }

.single-tribe_events #tribe-events-content .tribe-events-event-meta dt { margin-right: 5px; }

.tribe-events-schedule h2 { border: none; }

.tribe-events-schedule h2::after { display: none; }

.tribe-events-schedule h2:first-letter { font-size: 1em; color: #333; }

#tribe-events-content .tribe-events-back a { padding: 5px; background: #333; color: #fff; }

.tribe-events-content h2 { border-bottom: 2px solid #ccc; padding-bottom: 5px; font-size: 24px; margin: 30px 0 10px 0; }

.tribe-events-content strong { font-size: 18px; font-weight: bold; }

.tribe-events-sub-nav li a { transition: 0.3s ease; -webkit-transition: 0.3s ease; background: #fff; border-radius: 0; display: block; color: #333; line-height: 1.4; padding: 10px; }

.tribe-events-sub-nav li a:hover { background: #333; color: #fff; }

.tribe-events-nav-previous { border-right: 1px solid #ccc; }

.tribe-events-sub-nav li a { text-align: center; padding: 20px 0; }

.tribe-events-footer2 .tribe-events-sub-nav li a { padding: 15px 10px; }

.tribe-events-sub-nav .tribe-events-nav-right a span, .tribe-events-sub-nav .tribe-events-nav-left a span { top: 5px; }

#tribe-events .tribe-events-read-more { color: #8e2940; }

.tribe-events-event-image img { width: 100%; margin: 0 auto; }

.no-logo { border: 1px solid #ccc; }

.lec_link { color: #3366ff; font-weight: bold; font-size: 1.8rem; text-decoration: underline !important; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

.seminar_capacity { font-size: 1.6rem; font-weight: bold; }

.map_link { color: #3366ff; font-weight: bold; font-size: 1.4rem; text-decoration: underline !important; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

@media (max-width: 991px) { .primary .tribe-events-meta-group, .primary .tribe-events-meta-group { width: 100%; float: none; display: block; overflow: hidden; }
  .primary .tribe-events-meta-group:nth-child(1), .primary .tribe-events-meta-group:nth-child(2) { margin-bottom: 20px; }
  .tribe-events-list .type-tribe_events h2 { font-size: 1.8rem; }
  .tribe-bar-mini .tribe-bar-views-inner { padding: 0; }
  #tribe-events .tribe-events-content p, .tribe-events-after-html p, .tribe-events-before-html p { line-height: 1.4; font-size: 1.4rem; }
  #tribe-geo-results h2.tribe-events-page-title, h2.tribe-events-page-title { font-size: 2.3rem; }
  .tribe-events-sub-nav .tribe-events-nav-right a span, .tribe-events-sub-nav .tribe-events-nav-left a span { top: 1.3em; }
  .tribe-events-single-event-title { font-size: 1.8rem !important; } }
@media (max-width: 767px) { #tribe-events-content-wrapper { margin-bottom: 30px; }
  .tribe-events-content h2 { font-size: 20px; }
  .tribe-events-sub-nav li a { color: #333 !important; font-size: 14px; }
  .tribe-events-sub-nav li a:hover { color: #fff !important; }
  .tribe-events-cost { margin: 10px 0 !important; font-weight: bold !important; }
  .tribe-events-schedule h2 { margin-top: 5px; }
  #tribe-events-footer:after, #tribe-events-footer:before, #tribe-events-header:after, #tribe-events-header:before { background-color: transparent; } }
@media (max-width: 575px) { .tribe-events-cost { margin: 0 !important; }
  .tribe-events-schedule h2 { font-size: 1.8rem !important; line-height: 1.2; } }
.tribe-events-day .tribe-events-day-time-slot .type-tribe_events { padding: 0 !important; }

.events-list .tribe-events-loop, .single-tribe_organizer .tribe-events-loop, .single-tribe_venue .tribe-events-loop, .tribe-events-day .tribe-events-loop { max-width: 100%; }

.tribe-events-read-blog { padding: 5px !important; border-radius: 0; background: #333; }

.tribe-events-read-blog:hover { background: #333; }

.single-tribe_events .tribe-events-event-meta { margin: 10px 0 30px 0; }

.tribe-events-cal-links { margin-bottom: 10px !important; }

.tribe-events-ical, .tribe-events-gcal { -webkit-transition: .5s ease; transition: .5s ease; border: 1px solid transparent !important; background: #fff !important; color: #333 !important; padding: 0 0 3px 0 !important; border-radius: 0 !important; }

.tribe-events-ical:hover, .tribe-events-gcal:hover { color: #8e2940 !important; border-bottom: 1px solid #8e2940 !important; }

#tribe-events .tribe-events-list .tribe-events-event-cost { float: right; border: none; border-bottom: 2px solid #8e2940; margin: 5px 0 15px 0; }

#tribe-events .tribe-events-list .tribe-events-event-cost span { color: #333; padding: 5px; font-size: 2rem; border: none; }

.tribe-events-list-separator-month { border-bottom: none; }

.tribe-events-list-separator-month span { background-color: #fff; padding: 0 1em; }

.tribe-events-list .type-tribe_events { padding: 10px 0; }

#tribe-bar-form .tribe-bar-submit input[type="submit"] { background: #333; }

#tribe-bar-form .tribe-bar-views-inner label { padding: 0 10px; }

#tribe-events .tribe-events-button, #tribe-events .tribe-events-button:hover, #tribe_events_filters_wrapper input[type="submit"], .tribe-events-button, .tribe-events-button.tribe-active:hover, .tribe-events-button.tribe-inactive, .tribe-events-button:hover, .tribe-events-calendar td.tribe-events-present div[id*="tribe-events-daynum-"], .tribe-events-calendar td.tribe-events-present div[id*="tribe-events-daynum-"] > a { background: #555; }

.tribe-events-calendar div[id*="tribe-events-daynum-"], .tribe-events-calendar div[id*="tribe-events-daynum-"] a { background: #8e2940; }

.tribe-events-month-event-title { color: #8e2940 !important; }

@media (max-width: 767px) { .tribe-events-calendar td div[id*="tribe-events-daynum-"], .tribe-events-calendar div[id*="tribe-events-daynum-"], .tribe-events-calendar div[id*="tribe-events-daynum-"] a, #tribe-events-content .tribe-events-calendar .mobile-active:hover, #tribe-events-content .tribe-events-calendar td.tribe-events-othermonth.mobile-active, #tribe-events-content .tribe-events-calendar td.tribe-events-othermonth.mobile-active div[id*="tribe-events-daynum-"], #tribe-events-content .tribe-events-calendar td.tribe-events-othermonth.mobile-active div[id*="tribe-events-daynum-"] a, .tribe-events-calendar .mobile-active div[id*="tribe-events-daynum-"], .tribe-events-calendar .mobile-active div[id*="tribe-events-daynum-"] a, .tribe-events-calendar td.mobile-active, #tribe-events-content .tribe-events-calendar td.tribe-events-present.mobile-active:hover, .tribe-events-calendar td.tribe-events-present.mobile-active, .tribe-events-calendar td.tribe-events-present.mobile-active div[id*="tribe-events-daynum-"], .tribe-events-calendar td.tribe-events-present.mobile-active div[id*="tribe-events-daynum-"] a { background: #8e2940; } }
/*ウィジェット*/
.side-bnr-img { max-width: 500px !important; display: block; margin-left: auto; margin-right: auto; }

.tribe-events-widget-link { overflow: hidden; }

.tribe-events-widget-link a { font-size: 1.2rem !important; text-decoration: underline; }

.tribe-events-widget-link a::after { padding-left: 5px; content: '\e826'; font-family: 'fontello'; }

.tribe-events-list-widget .tribe-events-list-widget-events { background: #f3f3f3; padding: 10px !important; }

.tribe-events-list-widget .tribe-events-list-widget-events .tribe-event-title a { display: block; text-decoration: underline; color: #8e2940; font-size: 1.6rem; font-weight: bold; }

.tribe-events-list-widget .tribe-events-list-widget-events .tribe-event-title a:hover { text-decoration: none; }

.tribe-event-duration { color: #333 !important; }

.btn-outline-secondary { float: right; font-size: 12px !important; }

.btn-outline-secondary:hover { color: #8e2940; }

/*service*/
.service { background: #f3f3f3; padding: 60px 0; }

.service h2 { font-size: 3.2rem; text-align: center; border: none; letter-spacing: 1px; margin-bottom: 20px; }

.service h2::after { display: none; }

.service-title-text { text-align: center; margin-bottom: 30px; }

.service-list { margin-bottom: 30px; }

.service a { display: block; background: #fff; padding: 20px; box-shadow: 0 0 5px #ccc; border-radius: 0; border: 3px solid transparent; -webkit-transition: .5s ease; transition: .5s ease; }

.service a:hover { border: 3px solid #8e2940; }

.service-title { font-size: 2.4rem; font-weight: bold; margin: 20px 0 10px 0; line-height: 1.2; }

.service-title span { font-size: 1.1rem; display: block; font-weight: normal; }

.service-title:first-letter { font-size: 1.2em; color: #8e2940; }

.service-text { line-height: 1.2; margin-bottom: 10px; font-size: 1.6rem; border-top: 1px solid #ccc; padding-top: 15px; }

.service-list-img { position: relative; overflow: hidden; }

.service-overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; -webkit-transition: background-color 500ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: background-color 500ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.ua-nontouch .service-list img { -webkit-transition: -webkit-transform 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: transform; transition-duration: 1000ms; transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-delay: 0s; }

.ua-nontouch .service-list:hover img { -webkit-transform: scale(1.1); transform: scale(1.1); }

.slick-next { right: -15px; }

.slick-prev { left: -15px; }

@media (max-width: 1199px) { .service-title { font-size: 2rem; } }
@media (max-width: 991px) { .service a { padding: 15px; }
  .service-title { font-size: 1.7rem; } }
@media (max-width: 767px) { .service { padding-bottom: 0; margin-bottom: 0; }
  .service-list { margin-bottom: 30px; }
  .service-title { font-size: 2rem; }
  .service ul { max-width: 500px; margin-left: auto !important; margin-right: auto !important; display: block; } }
@media (max-width: 575px) { .service { padding-bottom: 0; padding-top: 40px; }
  .service-list { margin-bottom: 20px; }
  .service h2 { font-size: 2.4rem; }
  .service-title { margin: 10px 0; }
  .service-title-text { text-align: left; }
  .service-text { margin-bottom: 0; font-size: 1.4rem; }
  .tribe-events-list-widget .tribe-events-list-widget-events .tribe-event-title a { font-size: 1.4rem; }
  .tribe-event-duration { font-size: 1.2rem; } }
/*service-bnr*/
.service-bnr { margin: 0 auto; padding: 0 0 90px 0; background: #f3f3f3; }

.service-bnr h2 { font-size: 3.2rem; text-align: center; border: none; letter-spacing: 1px; margin-bottom: 20px; }

.service-bnr h2::after { display: none; }

.service-bnr hr { border-bottom: 1px solid #ddd; margin-bottom: 90px; box-shadow: 0px 1px 0px #fff; }

.bnr-box a { font-size: 16px; display: block; text-align: center; }

.bnr-box .bnr-list { padding: 0 10px; }

@media (max-width: 767px) { .service-bnr { padding-bottom: 60px; }
  .service-bnr hr { margin-bottom: 60px; }
  .fnav-list li ul li { margin-bottom: 10px; } }
@media (max-width: 575px) { .service-bnr h2 { font-size: 2.4rem; }
  .bnr-box { margin: 0 auto; width: 90%; }
  .bnr-box a { font-size: 14px; }
  .service-bnr hr { margin-bottom: 30px; } }
.contact-btn h3 { text-align: center; margin-bottom: 10px; font-weight: bold; }

.contact-btn-box { padding: 30px 0; border: 2px solid #555; margin-bottom: 60px; }

.contact-btn-link { text-align: center; }

.contact-btn-link a { -webkit-transition: all .5s ease; -moz-transition: all .5s ease; -ms-transition: all .5s ease; -o-transition: all .5s ease; transition: all .5s ease; color: #fff; border: 1px solid #8e2940; background: #8e2940; font-weight: bold; padding: 8px 40px; display: inline-block; font-size: 2.4rem; border-radius: 5px; position: relative; top: 0; left: 0; box-shadow: 3px 3px 0 #333; }

.contact-btn-link a:hover { border: 1px solid #333; top: 3px; left: 3px; box-shadow: 0 0 0 #333; background: #333; color: #fff; }

@media (max-width: 575px) { .contact-btn-link a { padding: 5px 10px; font-size: 1.8rem; } }
.f-desc { font-weight: bold; color: #fff; margin-bottom: 5px; }

.f-logo { max-width: 300px; display: block; margin-bottom: 30px; }

.f-logo img { width: 100%; }

.f-address { color: #fff; }

@media (max-width: 991px) { .f-logo { margin: 0 auto 30px auto; }
  .f-desc { text-align: center; }
  .f-address { text-align: center; margin-bottom: 60px; } }
/*ページネーションに付くh2のスタイルを非表示*/
.screen-reader-text { clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); position: absolute; }

.side-contact { position: fixed; top: calc(50% - 100px); right: 0; height: 250px; opacity: 0; }
.side-contact__inner { height: 250px; width: 45px; }
.side-contact__link { padding: 30px 10px; font-size: 16px; background-color: #8E2940; color: #FFF; display: inline !important; }
.side-contact__link:hover { opacity: 0.7; }
.side-contact.__fadein { -webkit-animation: fadeIn 0.25s ease 0s; -moz-animation: fadeIn 0.25s ease 0s; animation: fadeIn 0.25s ease 0s; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; animation-fill-mode: both; }
.side-contact.__fadeout { -webkit-animation: fadeOut 0.25s ease 0s; -moz-animation: fadeOut 0.25s ease 0s; animation: fadeOut 0.25s ease 0s; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; animation-fill-mode: both; }
@media only screen and (max-width: 575px) { .side-contact { display: none; } }

@-webkit-keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@-moz-keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@-webkit-keyframes fadeOut { 0% { opacity: 1; }
  100% { opacity: 0; } }
@-moz-keyframes fadeOut { 0% { opacity: 1; }
  100% { opacity: 0; } }
@keyframes fadeOut { 0% { opacity: 1; }
  100% { opacity: 0; } }
@media only screen and (max-width: 575px) { body { padding-bottom: 50px; } }

.footer-contact { position: fixed; bottom: -50px; left: 0; width: 100%; text-align: center; height: 50px; }
@media only screen and (min-width: 576px) { .footer-contact { display: none; } }
.footer-contact__link { font-size: 20px; background-color: #8E2940; color: #FFF; }
.footer-contact__link:hover { opacity: 0.7; }
.footer-contact.__slideup { -webkit-animation: mySlideUp 0.25s ease 0s; -moz-animation: mySlideUp 0.25s ease 0s; animation: mySlideUp 0.25s ease 0s; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; animation-fill-mode: both; }
.footer-contact.__slidedown { -webkit-animation: mySlideDown 0.25s ease 0s; -moz-animation: mySlideDown 0.25s ease 0s; animation: mySlideDown 0.25s ease 0s; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; animation-fill-mode: both; }

@-webkit-keyframes mySlideUp { 0% { bottom: -50px; }
  100% { bottom: 0; } }
@-moz-keyframes mySlideUp { 0% { bottom: -50px; }
  100% { bottom: 0; } }
@keyframes mySlideUp { 0% { bottom: -50px; }
  100% { bottom: 0; } }
@-webkit-keyframes mySlideDown { 0% { bottom: 0; }
  100% { bottom: -50px; } }
@-moz-keyframes mySlideDown { 0% { bottom: 0; }
  100% { bottom: -50px; } }
@keyframes mySlideDown { 0% { bottom: 0; }
  100% { bottom: -50px; } }
.other-posts2 { border: 1px solid #CCCCCC; }
.other-posts2__mainarea { padding: 15px; }
.other-posts2__ttl { border-bottom: 1px solid #CCCCCC; text-align: center; padding: 15px 0; margin: 0 15px; font-weight: bold; position: relative; }
@media only screen and (max-width: 575px) { .other-posts2__ttl { font-size: 18px; } }
.other-posts2__ttl--strong { color: #8E2940; }
.other-posts2__ttl::after { position: absolute; content: " "; display: block; bottom: -2px; width: 20%; border-bottom: 2px solid #8e2940; }
.other-posts2__subttl { font-weight: bold; }
@media only screen and (max-width: 767px) { .other-posts2__subttl { font-size: 16px; } }
@media only screen and (max-width: 575px) { .other-posts2__subttl { font-size: 14px; } }
.other-posts2__list-item:not(:last-child) { border-bottom: 1px dotted #CCCCCC; }
.other-posts2__box { display: block; padding: 20px; }
@media only screen and (max-width: 575px) { .other-posts2__box { padding: 15px 10px; } }
.other-posts2__box:hover { background-color: #f3f3f3; }
.other-posts2__box-inner::after { content: ""; display: block; clear: both; }
.other-posts2__thumb { float: left; width: 120px; }
@media only screen and (max-width: 575px) { .other-posts2__thumb { width: 100px; } }
@media only screen and (max-width: 319px) { .other-posts2__thumb { width: 75px; } }
.other-posts2__main { float: left; width: calc(100% - 120px); padding-left: 20px; }
@media only screen and (max-width: 575px) { .other-posts2__main { width: calc(100% - 100px); padding-left: 15px; } }
@media only screen and (max-width: 319px) { .other-posts2__main { width: calc(100% - 75px); } }
.other-posts2__text { font-size: 13px; margin-top: 5px; margin-bottom: 0; }
@media only screen and (max-width: 575px) { .other-posts2__text { display: none; } }
.other-posts2__catlist { display: inline-block; margin-top: 10px; }
.other-posts2__catlist::after { content: ""; display: block; clear: both; }
.other-posts2__catlist-item { float: left; margin-right: 3px; background-color: #8E2940; color: #FFF; padding: 1px 7px; font-size: 12px; margin-bottom: 5px; }

.prev-link, .next-link { height: 100%; }

.pgntn__ttl { font-size: 13px; text-align: left; }
.pgntn__text { text-align: left; }
.pgntn__bottom { font-size: 16px; margin-bottom: 5px; color: #8E2940; }
.pgntn--next, .pgntn--prev { position: relative; }
.pgntn--next::after, .pgntn--prev::after { font-family: fontello; position: absolute; top: -39px; background-color: #333333; color: #FFF; padding: 5px 10px; border: 1px solid #CCC; }
@media only screen and (max-width: 575px) { .pgntn--next::after, .pgntn--prev::after { top: -27px; } }
.pgntn--next { position: relative; }
.pgntn--next::after { content: 'NEXT　\e826'; right: 0px; }
.pgntn--prev { position: relative; }
.pgntn--prev::after { content: '\e825　PREV'; left: 0px; }
@media only screen and (min-width: 576px) { .pgntn__inner::after { content: ""; display: block; clear: both; }
  .pgntn__thumb { float: left; width: 85px; }
  .pgntn__text { float: left; width: calc(100% - 85px); padding-left: 10px; }
  .pgntn__text--next { padding-left: 0; padding-right: 10px; } }
@media only screen and (max-width: 575px) { .pgntn__thumb { text-align: center; padding: 15px 0 10px 0; } }

.single-arrow-next:hover .pgntn__bottom, .single-arrow-prev:hover .pgntn__bottom { color: #FFF; }

.widget__twocol-box::after { content: ""; display: block; clear: both; }
.widget__twocol-thumb { float: left; width: 65px; }
@media only screen and (max-width: 767px) { .widget__twocol-thumb { width: 75px; } }
.widget__twocol-main { float: left; width: calc(100% - 65px); padding-left: 5px; }
@media only screen and (max-width: 767px) { .widget__twocol-main { width: calc(100% - 75px); font-size: 1.8rem; } }
@media only screen and (max-width: 575px) { .widget__twocol-main { font-size: 14px; } }

.instashow__ttl { font-size: 3.2rem; text-align: center; border: none; letter-spacing: 1px; margin-bottom: 20px; }
.instashow__ttl::after { display: none; }

@media (max-width: 480px) { #sb_instagram.sbi_col_10 #sbi_images .sbi_item, #sb_instagram.sbi_col_3 #sbi_images .sbi_item, #sb_instagram.sbi_col_4 #sbi_images .sbi_item, #sb_instagram.sbi_col_5 #sbi_images .sbi_item, #sb_instagram.sbi_col_6 #sbi_images .sbi_item, #sb_instagram.sbi_col_7 #sbi_images .sbi_item, #sb_instagram.sbi_col_8 #sbi_images .sbi_item, #sb_instagram.sbi_col_9 #sbi_images .sbi_item { width: 50%; } }

/*# sourceMappingURL=common.css.map */


.widget__twocol-thumb-main {
  width: inherit;
  height: auto;
}