@charset "utf-8";
/* CSS Document */



.crimson {
  font-family: "Crimson Text", serif;
}

.nsans {
  font-family: "Noto Sans", serif;
}

.sawarabi {
  font-family: "Sawarabi Mincho", serif;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  font-size: 14px;
  font-weight: 500;

/*    font-family:"游ゴシック",YuGothic,Hiragino Sans,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic Pro",Hiragino Kaku Gothic ProN,"メイリオ",Meiryo,'ＭＳ Ｐゴシック',sans-serif;*/
  /*font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;*/
  /*font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ゴシックM-PRO", "HGMaruGothicMPRO";*/
  line-height: 160%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
  word-wrap: break-word;
  color: #444;

  overflow-wrap: break-word;
}

a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*フォント系*/

[data-element-id] h1 {
  position: initial;
  text-indent: initial;
}

.fs120 {
  font-size: 120%;
}

.fs140 {
  font-size: 140%;
}

.fs160 {
  font-size: 160%;
}

.fs180 {
  font-size: 180%;
}

.fs200 {
  font-size: 200%;
}

.fs220 {
  font-size: 220%;
}

.fs240 {
  font-size: 240%;
}

.fs260 {
  font-size: 260%;
}

.fs280 {
  font-size: 280%;
}

.fs300 {
  font-size: 300%;
}

.fs12 {
  font-size: 12px;
}

.fs14 {
  font-size: 14px;
}

.fs16 {
  font-size: 16px;
}

.fs18 {
  font-size: 18px;
}

.fs20 {
  font-size: 20px;
}

.fs22 {
  font-size: 22px;
}

.fs24 {
  font-size: 24px;
}

.fs26 {
  font-size: 26px;
}

.fs28 {
  font-size: 28px;
}

.fs30 {
  font-size: 30px;
}

.fs32 {
  font-size: 32px;
}

.fs34 {
  font-size: 34px;
}

.fs36 {
  font-size: 36px;
}

.fs38 {
  font-size: 38px;
}

.fs40 {
  font-size: 40px;
}

.fs42 {
  font-size: 42px;
}

.fs44 {
  font-size: 44px;
}

.fs46 {
  font-size: 46px;
}

.bold {
  font-weight: bold;
}

.red {
  color: red;
}

.blue {
  color: blue;
}

.white {
  color: #fff;
}

/*クリアフィックス*/

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

.clearfix:before {
  display: block;
  clear: both;
  content: "";
}

.clearfix {
  display: block;
}

.clear {
  clear: both;
}

.map {
  position: relative;
  overflow: hidden;
}

.map:after {
  display: block;
  padding-top: 50%;
  content: "";
}

.map iframe {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  max-width: initial;
  height: 100%;
  margin: auto;
}

iframe {
  max-width: 100%;
}

img {
  max-width: 100%;
  vertical-align: top;
  border: none;
}

img:not([src*="."]) {
  display: none;
}

.scale {
  -webkit-transition: all .4s ease-in-out;
          transition: all .4s ease-in-out;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

.scale:hover {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

[data-element-id] .filter:before,
[data-element-id] .filterT:before,
[data-element-id] .filterR:before,
[data-element-id] .filterB:before,
[data-element-id] .filterL:before,
[data-element-id] .filterRad:before {
  display: none;
}

.filter,
.filterT,
.filterR,
.filterB,
.filterL,
.filterRad {
  position: relative;
}

.filter:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(255, 255, 255, .6);
}

.filterT:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 1)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
  background:         linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
}

.filterR:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 1)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
  background:         linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
}

.filterB:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 1)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
  background:         linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
}

.filterL:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 1)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
  background:         linear-gradient(to left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 50%);
}

.filterRad:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: -webkit-radial-gradient(center, ellipse, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 80%);
  background: -webkit-radial-gradient(center ellipse, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 80%);
  background:         radial-gradient(ellipse at center, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 80%);
}

.lb-outerContainer {
  width: 80% !important;
  max-width: 500px !important;
  height: auto !important;
}

.lightbox .lb-image {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100% !important;
  max-width: initial !important;
  height: auto !important;
  border: none !important;
}

.pic {
  width: 100%;
  text-align: center;
}

.pic img {
  width: 100%;
}

.bkimg {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.bkimg img {
  position: relative;
  left: 50%;
  width: 100%;
  min-width: 1200px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

[data-element-id] .fead-mv {
  opacity: 1;
}

.fead-mv {
  -webkit-transition: .5s ease-out;
      -ms-transition: .5s ease-out;
          transition: .5s ease-out;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
  opacity: 0;
}

.mv {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.fead-mv.-delay1 {
  -webkit-transition: opacity 1s .5s;
          transition: opacity 1s .5s;
}
.fead-mv.-delay2 {
  -webkit-transition: opacity 3s 1s;
          transition: opacity 3s 1s;
}

a {
  -webkit-transition: .4s ease;
          transition: .4s ease;
  text-decoration: none;
  color: inherit;
}

a:hover {
  opacity: .6;
}

a[href*="tel"] {
  pointer-events: none;
}

ul,
li {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

dl,
dt,
dd {
  margin: 0;
  padding: 0;
  text-align: left;
}

p {
  text-align: left;
}

figure {
  margin: 0;
}

/*フレックス*/

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.flexc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  -webkit-justify-content: center;
          justify-content: center;
}

.flexs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
          justify-content: space-around;
}

.flexb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.columnreverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.rowreverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

/*align-item*/

.itemstart {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -ms-flex-align: start;
}

.itemcenter {
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -ms-flex-align: center;
}

.itemend {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
          align-items: flex-end;
  -ms-flex-align: end;
}

/*align-content*/

.contentstart {
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
          align-content: flex-start;
}

.contentcenter {
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
          align-content: center;
}

.contentend {
  -webkit-align-content: flex-end;
  -ms-flex-line-pack: end;
          align-content: flex-end;
}

/*align-self*/

.selfstart {
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
          align-self: flex-start;
}

.selfcenter {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
          align-self: center;
}

.selfend {
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
          align-self: flex-end;
}

/* 見たまま編集バリデーション */

.flex > div[data-collection-list-content],
.flexc > div[data-collection-list-content],
.flexs > div[data-collection-list-content],
.flexb > div[data-collection-list-content] {
  width: 100%;
}

.flex > div[data-recommend-collection-list-content],
.flexc > div[data-recommend-collection-list-content],
.flexs > div[data-recommend-collection-list-content],
.flexb > div[data-recommend-collection-list-content] {
  width: 100%;
}

.flex > div[data-collection-filtered-content],
.flexc > div[data-collection-filtered-content],
.flexs > div[data-collection-filtered-content],
.flexb > div[data-collection-filtered-content] {
  width: 100%;
}

.flex > div[data-collection-archive-content],
.flexc > div[data-collection-archive-content],
.flexs > div[data-collection-archive-content],
.flexb > div[data-collection-archive-content] {
  width: 100%;
}

.flex > div[data-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.flexc > div[data-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  -webkit-justify-content: center;
          justify-content: center;
}

.flexs > div[data-collection-list-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
          justify-content: space-around;
}

.flexb > div[data-collection-list-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.flex > div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.flexc > div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  -webkit-justify-content: center;
          justify-content: center;
}

.flexs > div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
          justify-content: space-around;
}

.flexb > div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.flex > div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.flexc > div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  -webkit-justify-content: center;
          justify-content: center;
}

.flexs > div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
          justify-content: space-around;
}

.flexb > div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.flex > div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.flexc > div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  -webkit-justify-content: center;
          justify-content: center;
}

.flexs > div[data-collection-archive-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
          justify-content: space-around;
}

.flexb > div[data-collection-archive-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

[data-element-id] [class*="heightLine"] {
  height: auto !important;
}

[data-element-id] .imgalt {
  font-size: 14px;
  position: relative;
  z-index: 50;
  overflow: hidden;
  max-height: 70px;
  padding: 2px 4px;
  text-align: left;
  color: orange;
  background: #333;
}

[data-element-id] .altcolor {
  color: red;
}

[data-common-area] {
  position: relative;
}

[data-common-area]:hover:before {
  font-size: 12px;
  font-weight: bold;
  position: absolute !important;
  bottom: 100%;
  left: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  min-width: 200px;
  padding: 5px;
  content: "共通要素です。";
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  color: #fdc44f;
  background: #555;
}

a[data-href="#"] {
  position: relative !important;
  display: block;
  opacity: 1;
  border: solid red 5px !important;
}

a[data-href="#"]:hover:before {
  font-size: 12px;
  font-weight: bold;
  position: absolute !important;
  bottom: 100%;
  left: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  min-width: 200px;
  padding: 5px;
  content: "リンクが設定されていない可能性があります。";
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: red;
  background: #555;
}

a[data-href*="."] {
  position: relative !important;
  display: block;
  opacity: 1;
  border: solid red 5px !important;
}

a[data-href*="."]:hover:before {
  font-size: 12px;
  font-weight: bold;
  position: absolute !important;
  bottom: 100%;
  left: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  min-width: 200px;
  padding: 5px;
  content: "外部リンクの可能性があります。リンクが飛ばない可能性がありますので注意してください。";
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: red;
  background: #555;
}

[data-element-id][data-uk-slideshow]:hover:before {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.8;
  position: absolute;
  z-index: 1000;
  display: block;
  clear: both;
  width: 100%;
  padding: 5px;
  content: "※こちらは見たまま編集ができません。①画像をダブルクリック、②変更（歯車マーク）、③スライドショーから編集してください。";
  text-align: left;
  letter-spacing: 1px;
  color: red;
  background: #4c4c4c;
}

[data-collection-list-content]:hover:before {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.8;
  position: absolute;
  z-index: 1000;
  display: block;
  clear: both;
  width: 100%;
  padding: 5px;
  content: "※こちらは見たまま編集ができません。①ページのどこかをダブルクリック、②左下（もしくは左上）のCMSロゴをクリック、③画面右上のメニュー（三本線マーク）から「カスタムコンテンツ管理」をクリック、④編集したいカスタムコンテンツの一覧（三本線マーク）から記事投稿・記事編集ができます。";
  text-align: left;
  letter-spacing: 1px;
  color: red;
  background: #4c4c4c;
}

/*カラム*/

/* ##### pcで6分割のグリッド ##### */
.gr666,
.gr665,
.gr664,
.gr663,
.gr662,
.gr661,
.gr655,
.gr654,
.gr653,
.gr652,
.gr651,
.gr644,
.gr643,
.gr642,
.gr641,
.gr633,
.gr632,
.gr631,
.gr622,
.gr621,
.gr611 {
  width: 12%;
  margin: 0 2% 6% 2%;
}

/* ##### pcで5分割のグリッド ##### */
.gr555,
.gr554,
.gr553,
.gr552,
.gr551,
.gr544,
.gr543,
.gr542,
.gr541,
.gr533,
.gr532,
.gr531,
.gr522,
.gr521,
.gr511 {
  width: 16%;
  margin: 0 2% 6% 2%;
}

/* ##### pcで4分割のグリッド ##### */
.gr444,
.gr443,
.gr442,
.gr441,
.gr433,
.gr432,
.gr431,
.gr422,
.gr421,
.gr411 {
  width: 21%;
  margin: 0 2% 6% 2%;
}

/* ##### pcで3分割のグリッド ##### */
.gr333,
.gr332,
.gr331,
.gr322,
.gr321,
.gr311 {
  width: 29%;
  margin: 0 2% 6% 2%;
}

/* ##### pcで2分割のグリッド ##### */
.gr222,
.gr221,
.gr211 {
  width: 46%;
  margin: 0 2% 6% 2%;
}

.w100 {
  width: 100%;
}

.w70 {
  width: 70%;
}

.w65 {
  width: 65%;
}

.w60 {
  width: 60%;
}

.w55 {
  width: 55%;
}

.w50 {
  width: 50%;
}

.w48 {
  width: 48%;
}

.w45 {
  width: 45%;
}

.w40 {
  width: 40%;
}

.w35 {
  width: 35%;
}

.w30 {
  width: 30%;
}

.w25 {
  width: 25%;
}

[data-element-id] #wrapper {
  opacity: 1;
  padding-top: 0 !important;
}

#wrapper {
  overflow: hidden;
}

.inner {
  width: 92%;
  max-width: 1000px;
  margin: 0 auto;
}
.inner.-wide {
  width: 100%;
  max-width: 1200px;
}

.subtit {
  position: relative;
  overflow: hidden;
}

.subtit h2 {
  width: 100%;
  text-align: center;
}

.subtit img {
  width: 100%;
}

.more {
  width: 80%;
  max-width: 200px;
  margin: 50px auto 0 auto;
  text-align: center;
}

.more a {
  display: block;
  padding: 10px 20px;
  color: #fff;
  background: #000;
}

@media only screen and (max-width: 1024px) {
  .bkimg {
    position: relative;
  }

  .bkimg img {
    min-width: initial !important;
  }

  .fs20 {
    font-size: 18px;
  }

  .fs22 {
    font-size: 20px;
  }

  .fs24 {
    font-size: 20px;
  }

  .fs26 {
    font-size: 22px;
  }

  .fs28 {
    font-size: 22px;
  }

  .fs30 {
    font-size: 24px;
  }

  .fs32 {
    font-size: 24px;
  }

  .fs34 {
    font-size: 26px;
  }

  .fs36 {
    font-size: 26px;
  }

  .fs38 {
    font-size: 28px;
  }

  .fs40 {
    font-size: 28px;
  }

  .fs42 {
    font-size: 30px;
  }

  .fs44 {
    font-size: 30px;
  }

  .fs46 {
    font-size: 32px;
  }

  a[href*="tel"] {
    pointer-events: initial !important;
  }

  .flex {
    margin: 0 auto;
  }

  .flexc {
    margin: 0 auto;
  }

  .flexs {
    margin: 0 auto;
  }

  .flexb {
    /*        max-width: 768px;*/
    margin: 0 auto;
  }

  /* カラム */

  /* ##### タブレッドで5分割のグリッド ##### */
  .gr655,
  .gr654,
  .gr653,
  .gr652,
  .gr651 {
    width: 16%;
  }

  /* ##### タブレッドで4分割のグリッド ##### */
  .gr644,
  .gr643,
  .gr642,
  .gr641,
  .gr544,
  .gr543,
  .gr542,
  .gr541 {
    width: 21%;
  }

  /* ##### タブレッドで3分割のグリッド ##### */
  .gr633,
  .gr632,
  .gr631,
  .gr533,
  .gr532,
  .gr531,
  .gr433,
  .gr432,
  .gr431 {
    width: 29%;
  }

  /* ##### タブレッドで2分割のグリッド ##### */
  .gr622,
  .gr621,
  .gr522,
  .gr521,
  .gr422,
  .gr421,
  .gr322,
  .gr321 {
    width: 46%;
  }

  /* ##### タブレッドで1分割のグリッド ##### */
  .gr611,
  .gr511,
  .gr411,
  .gr311,
  .gr211 {
    width: 96%;
  }

  .inner {
    width: 93%;
    max-width: 768px;
  }
  .inner.-wide {
    width: 100%;
    max-width: unset;
  }

  .more {
    margin: 40px auto 0 auto;
  }
}

@media only screen and (max-width: 599px) {
  .fs18 {
    font-size: 16px;
  }

  .fs20 {
    font-size: 18px;
  }

  .fs22 {
    font-size: 18px;
  }

  .fs24 {
    font-size: 20px;
  }

  .fs26 {
    font-size: 20px;
  }

  .fs28 {
    font-size: 22px;
  }

  .fs30 {
    font-size: 22px;
  }

  .fs32 {
    font-size: 24px;
  }

  .fs34 {
    font-size: 24px;
  }

  .fs36 {
    font-size: 26px;
  }

  .fs38 {
    font-size: 26px;
  }

  .fs40 {
    font-size: 28px;
  }

  .fs42 {
    font-size: 28px;
  }

  .fs44 {
    font-size: 30px;
  }

  .fs46 {
    font-size: 32px;
  }

  /* カラム */

  /* ##### スマホで5分割のグリッド ##### */
  .gr665 {
    width: 16%;
  }

  /* ##### スマホで4分割のグリッド ##### */
  .gr664,
  .gr654,
  .gr554 {
    width: 21%;
  }

  /* ##### スマホで3分割のグリッド ##### */
  .gr663,
  .gr653,
  .gr643,
  .gr633,
  .gr553,
  .gr543,
  .gr533,
  .gr443,
  .gr433 {
    width: 29%;
  }

  /* ##### スマホで2分割のグリッド ##### */
  .gr662,
  .gr652,
  .gr642,
  .gr632,
  .gr622,
  .gr552,
  .gr542,
  .gr532,
  .gr522,
  .gr442,
  .gr432,
  .gr422,
  .gr332,
  .gr322 {
    width: 46%;
  }

  /* ##### スマホで1分割のグリッド ##### */
  .gr661,
  .gr651,
  .gr641,
  .gr631,
  .gr621,
  .gr611,
  .gr551,
  .gr541,
  .gr531,
  .gr521,
  .gr511,
  .gr441,
  .gr431,
  .gr421,
  .gr411,
  .gr331,
  .gr321,
  .gr311,
  .gr221,
  .gr211 {
    width: 96%;
  }

  .w70 {
    width: 100%;
    margin: 2% 0;
  }

  .w65 {
    width: 100%;
    margin: 2% 0;
  }

  .w60 {
    width: 100%;
    margin: 2% 0;
  }

  .w55 {
    width: 100%;
    margin: 2% 0;
  }

  .w50 {
    width: 100%;
    margin: 2% 0;
  }

  .w48 {
    width: 100%;
    margin: 2% 0;
  }

  .w45 {
    width: 100%;
    margin: 2% 0;
  }

  .w40 {
    width: 100%;
    margin: 2% 0;
  }

  .w35 {
    width: 100%;
    margin: 2% 0;
  }

  .w30 {
    width: 100%;
    margin: 2% 0;
  }

  .w25 {
    width: 100%;
    margin: 2% 0;
  }

  .pic {
    width: 80%;
    margin: 0 auto;
  }

  .inner {
    width: 94%;
    max-width: 450px;
  }

  .more {
    margin: 30px auto 0 auto;
  }
}

/* ハンバーガー */

@media only screen and (max-width: 1024px) {
  #gnav .toggle {
    position: fixed !important;
    z-index: 251;
    top: 0;
    right: 0;
    display: block !important;
    width: 42px;
    height: 42px;
    cursor: pointer;
    opacity: .8;
    background: #170302;
  }

  #gnav .toggle .bar {
    position: absolute;
    top: 50%;
    left: 7px;
    display: block;
    width: 28px;
    height: 2px;
    margin-top: -1px;
    padding: 0;
    -webkit-transition: ease .40s;
            transition: ease .40s;
    text-indent: 9999px;
    background: #fff;
  }

  #gnav .toggle .bar:before {
    position: absolute;
    top: -10px;
    left: 0;
    display: block;
    width: 28px;
    height: 2px;
    content: "";
    background: #fff;
  }

  #gnav .toggle .bar:after {
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
    width: 28px;
    height: 2px;
    content: "";
    background: #fff;
  }

  #gnav.action .toggle .bar {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }

  #gnav.action .toggle .bar:after,
  #gnav.action .toggle .bar:before {
    top: 0;
    left: 0;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }

  #gnav .accordion-body {
    position: fixed !important;
    top: 0;
    right: 0;
    overflow-y: auto;
    width: 100%;
    max-width: 380px;
    height: 100vh;
    -webkit-transition: transform ease .4s;
            transition: transform ease .4s;
    -webkit-transform: translate3d(380px, 0, 0) !important;
            transform: translate3d(380px, 0, 0) !important;
    opacity: 1;
    background: rgba(17, 115, 96, .8);
    -webkit-overflow-scrolling: touch;
    z-index: 100;
  }

  #gnav.action .accordion-body {
    -webkit-transform: translate3d(0px, 0, 0) !important;
            transform: translate3d(0px, 0, 0) !important;
    opacity: 1;
  }

  #gnav .accordion-inner {
    width: 100%;
    /* padding: 20px 10px 20px 10px; */
    padding: 20px 10px 80px 10px;
  }

  #gnav li {
    display: block;
    width: 100%;
  }

  .overlay:after {
    position: fixed;
    z-index: 150;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    content: "";
    -webkit-transform: translate3d(0, 0, 0) !important;
            transform: translate3d(0, 0, 0) !important;
    opacity: .3;
    background: #000;
  }
}


/* メインビジュアル */

.mainimg {
  position: relative;
  overflow: hidden;
}

.mainimg img {
  width: 100%;
}

.mainimg .uk-slidenav-position {
  position: relative;
  overflow: hidden;
  min-height: 400px;
  max-height: 800px;
}

.mainimg .uk-slidenav-position:after {
  padding-top: 55%;
  content: '';
  display: block;
}

.mainimg .uk-slideshow {
  position: absolute;
  top: 0;
  height: 100% !important;
}

.mainimg .uk-slideshow li {
  height: 100% !important;
}

.mainimg .uk-slideshow .uk-flex {
  height: 100%;
}

.mainimg .uk-slideshow img {
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}
/*----編集画面のみ-----*/
[data-element-id].fixed-tel{
  display: block;
  width: 170px;
    height: 30px;
    text-align: center;
    color: #fff;
    background: #99876a;
}

.home06 .layout-cmn01 .title {
  width: 20%;
}
@media only screen and (max-width: 599px) {
  .home06 .layout-cmn01 .title {
  width: 40%;
}
}

.square {
  color: #99876a;
}


.home .flex-box{
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
  align-items: center;
}

.home .flex-box .home03box{
  width: 48%;  
}

.home .flex-box .benner-img{
  width: 48%;  
}

.home .flex-box .benner-img img{
  width: 100%;
}

.home .flex-box .layout-cmn01 .text{
  margin-bottom: 0px;
  padding-bottom: 0px;
}

@media only screen and (max-width: 599px){
  .home .flex-box{
  flex-direction: column;
}

.home .flex-box .home03box{
  width: 100%;  
  margin-bottom: 25px;
}
.home .flex-box .benner-img{
  width: 100%;  
}

}

/* 07/03 追記 */

.home .benner-content{
    width: 50%;
    margin: 60px auto;
} 

.home .benner-content img{
  width: 100%;
}

@media only screen and (max-width: 1024px){
  .home .benner-content{
    width: 80%;
    margin: 60px auto;
} 
}

@media only screen and (max-width: 599px){
  .home .benner-content{
    width: 93%;
} 
}

.catch-head{
      font-size: 22px;
    border-bottom: 1px solid;
    width: fit-content;
    margin-bottom: 30px;
}

.v{
  display: none;
}

.r{
  display: block;
}

@media only screen and (max-width: 599px){
  .v{
  display: block;
}

.r{
  display: none;
}
}

@media only screen and (max-width: 599px){
 .catch-head{
       font-size: 16px;
    white-space: nowrap;
 } 
}
