@charset "UTF-8";

html {
  line-height: 2
}

/*===================================
===================================*/
.color01 {
  color: #1c6f61;
}

.color02 {
  color: #505050;
}

.color03 {
  color: #505050;
}

.color04 {
  color: #505050;
}

.bgcolor01 {
  background-color: #1c6f61;
}

.bgcolor02 {
  background-color: #505050;
}

.bgcolor03 {
  background-color: #505050;
}

.bgcolor04 {
  background-color: #505050;
}

/* 共通コンテンツ間隔 */
.area {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media only screen and (max-width: 599px) {
  .area {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

/* 共通要素読み込みコメント（取り込み後削除） */
[class*="load-"] {
  position: relative;
  min-height: 50px;
  border: 3px solid #00bcd4;
}

[class*="load-"]:before {
  position: absolute;
  z-index: 100;
  display: block;
  background: #00bcd4;
  color: #ff0;
  content: "共通要素";
  text-align: center;
  font-weight: bold;
}

.up-fxd-even .box+.box,
.up-fxd-odd .box+.box {
  margin-top: 50px;
}

.up-show\@tb,
.up-show\@sp {
  display: none;
}

[data-element-id].up-show\@tb,
[data-element-id].up-show\@sp {
  display: block;
}

.js-thumb:hover {
  opacity: 0.6;
  cursor: pointer;
}

@media only screen and (max-width: 1024px) {
  .up-show\@tb {
    display: block;
  }
}

@media only screen and (max-width: 599px) {
  .up-show\@sp {
    display: block;
  }

  .h-auto-sp {
    height: auto !important;
  }
}

/*===================================
  XXX:共通ブロック　block-cmn
==================================*/
/* 共通ブロック１ */
/*===================================
  共通タイトル　ttl-cmn
===================================*/
/* 共通タイトル１ */
.ttl-cmn01 {
  text-align: center;
  font-size: 28px;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  color: #1c6f61;
}

.ttl-cmn03 {
  font-size: 28px;
  font-weight: bold;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

@media only screen and (max-width: 599px) {
  .ttl-cmn01 {
    font-size: 24px;
  }

  .ttl-cmn03 {
    font-size: 24px;
  }
}

/*===================================
  XXX:共通リスト　list-cmn
==================================*/
/* 共通リスト１ */
/*===================================
  XXX:共通ボタン btn-cmn
===================================*/
/* 共通ボタン１ */
.btn-cmn01 {
  max-width: 180px;
  margin-top: 50px;
}

.btn-cmn01 a {
  display: block;
  padding: 5px 20px;
  background: #505050;
  color: #fff;
  text-align: center;
  position: relative;
}

.btn-cmn01 a:after {
  position: absolute;
  right: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  content: "\f054";
  font-weight: 600;
  font-family: "Font Awesome 5 Free";
}

.btn-cmn01.btn-back a:after {
  content: "\f053";
  right: inherit;
  left: 5px;
}

/*===================================
  共通要素
===================================*/
.header.fixed .pagettl {
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.add {
  font-size: 12px;
}

.pagettl {
  position: relative;
  z-index: 3;
}

/* XXX:下部固定コンテンツ */
.fix-bottom {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 250;
  display: none;
  width: 100%;
  background: #1c6f61;
}

.fix-bottom .item {
  padding: 10px 5px;
  text-align: center;
}

.fix-bottom a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  padding: 10px 5px;
}

.fix-bottom .tel {
  width: 65%;
  background: #1c6f61;
  font-size: 14px;
  text-align: left;
}

.fix-bottom .tel a {
  color: #fff;
  font-size: 18px;
}

.fix-bottom .tel a:before {
  margin-right: 5px;
  content: "\f879";
  font-weight: 600;
  font-family: "Font Awesome 5 Free";
}

.fix-bottom .contact {
  width: 35%;
  color: #505050;
}

.fix-bottom .contact a {
  background: #eee;
  display: inline-block;
  border-radius: 5px;
  font-weight: bold;
  font-size: 14px;
  line-height: 2;
}

.fix-bottom .contact a:before {
  margin-right: 5px;
  content: "\f073";
  font-weight: 600;
  font-family: "Font Awesome 5 Free";
}

[data-element-id].fix-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  bottom: auto;
  left: auto;
}

@media only screen and (max-width: 1024px) {
  .fix-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

/**
XXX:グローバルナビ
gnav
*/
#gnav.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  width: 100%;
  height: auto;
  background: #fff;
  -webkit-box-shadow: 0 0 5px 0 #999;
  box-shadow: 0 0 5px 0 #999;
  cursor: pointer;
}

.gnav .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.gnav .navlogo {
  display: none;
}

.gnav .navlogo img {
  max-height: 40px;
}

.gnav .item01>a,
.gnav .item01 .itemin {
  display: block;
  cursor: pointer;
  padding: 5px;
}

.gnav .item01.-parent {
  position: relative;
}

.gnav .item01.-parent:hover .list02 {
  visibility: visible;
  opacity: 1;
}

.gnav .list02 {
  position: absolute;
  z-index: 10000;
  top: 100%;
  left: 50%;
  visibility: hidden;
  padding-top: 10px;
  width: 200px;
  background: rgba(255, 255, 255, 0.8) content-box;
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.gnav .list02 .item02 {
  width: 100%;
  text-align: center;
}

.gnav .item02 a {
  display: block;
  padding: 5px;
  border-bottom: 1px solid #ccc;
}

@media only screen and (max-width: 1024px) {
  .gnav {
    position: fixed;
    top: 0;
    right: 0;
    overflow: auto;
    width: 100%;
    max-width: 300px;
    height: 100%;
    background: rgba(255, 255, 255, 0.9);
    -webkit-transition: -webkit-transform ease 0.5s;
    transition: -webkit-transform ease 0.5s;
    transition: transform ease 0.5s;
    transition: transform ease 0.5s, -webkit-transform ease 0.5s;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    -webkit-overflow-scrolling: touch;
    z-index: 250;
  }

  .gnav.action {
    -webkit-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
  }

  .gnav .wrap {
    padding-bottom: 100px;
  }

  .gnav .navlogo {
    display: block;
    margin-bottom: 20px;
    padding-right: 40px;
    width: 100%;
    font-weight: bold;
    font-size: 20px;
  }

  .gnav .item01 {
    margin: 0 0 10px 0;
    min-height: 40px;
    width: 100%;
    text-align: left;
  }

  .gnav .list02 {
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    visibility: visible;
    padding-left: 20px;
    padding-top: 0;
    background: none;
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }

  .gnav .list02 a {
    position: relative;
    padding: 2px 0 2px 20px;
  }

  .gnav .list02 a:before {
    position: absolute;
    top: 20px;
    left: 0;
    display: block;
    width: 10px;
    height: 1px;
    background: #505050;
    content: "";
  }
}

[data-element-id] .gnav.fixed {
  position: relative;
}

/* ハンバーガーメニュー  */
.toggle {
  position: fixed !important;
  top: 0px;
  right: 0px;
  z-index: 251;
  width: 42px;
  height: 42px;
  background: #1c6f61;
  opacity: 0.8;
  cursor: pointer;
  display: none;
}

.toggle .bar {
  position: absolute;
  top: 50%;
  left: 7px;
  display: block;
  margin-top: -1px;
  padding: 0;
  width: 28px;
  height: 2px;
  background: #fff;
  text-indent: 9999px;
  transition: ease 0.4s;
  -webkit-transition: ease 0.4s;
}

.toggle .bar:before,
.toggle .bar:after {
  position: absolute;
  left: 0;
  display: block;
  width: 28px;
  height: 2px;
  background: #fff;
  content: "";
}

.toggle .bar:before {
  top: -10px;
}

.toggle .bar:after {
  top: 10px;
}

.toggle.active .bar {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
}

.toggle.active .bar:after,
.toggle.active .bar:before {
  top: 0;
  left: 0;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}

@media only screen and (max-width: 1024px) {
  .toggle {
    display: block !important;
  }

  .overlay:after {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 249;
    width: 100%;
    height: 100vh;
    background: #505050;
    content: "";
    opacity: 0.3;
    transform: translate3d(0, 0, 0) !important;
    -webkit-transform: translate3d(0, 0, 0) !important;
  }
}

/*トップへ戻る*/
.totop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 200;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #505050;
  color: #fff;
  text-align: center;
  font-size: 20px;
  line-height: 40px;
  cursor: pointer;
}

.totop:before {
  content: "\f077";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
}

@media only screen and (max-width: 1024px) {
  .totop {
    right: 10px;
    bottom: 80px;
  }
}

/**
XXX:フッター
footer
*/
.fnav {
  padding: 50px 0;
  background: #eee;
}

.fnav .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.fnav .list01 {
  width: 50%;
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}

.fnav .item {
  margin-bottom: 10px;
  padding-right: 10px;
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}

.fnav .item a {
  position: relative;
  display: block;
  padding-left: 12px;
}

.fnav .item a:before {
  position: absolute;
  top: 10px;
  left: 0;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #505050;
  content: "";
}

.fnav .list02 {
  width: 50%;
}

.fnav .datawrap {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}

.fnav .datattl {
  position: relative;
  margin-bottom: 10px;
  padding-left: 12px;
}

.fnav .datattl:before {
  position: absolute;
  top: 10px;
  left: 0;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #505050;
  content: "";
}

.fnav .data {
  margin-bottom: 5px;
  padding-right: 10px;
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}

.fnav .data a {
  position: relative;
  padding-left: 12px;
}

.fnav .data a:before {
  position: absolute;
  top: 7px;
  left: 0;
  display: block;
  width: 5px;
  height: 1px;
  background: #505050;
  content: "";
}

.footer .copy {
  padding: 5px 0;
  background: #999;
  color: #fff;
  text-align: center;
}

@media only screen and (max-width: 1024px) {
  .fnav .wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .fnav .list01 {
    margin-bottom: 10px;
    width: 100%;
  }

  .fnav .list02 {
    width: 100%;
  }

  .footer .copy {
    padding-bottom: 50px;
  }
}

@media only screen and (max-width: 599px) {
  .fnav .list01 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }

  .fnav .datawrap {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }
}

/**
XXX:2カラムページ
*/
.column2 .side {
  width: 200px;
}

.column2 .mainwrap {
  width: calc(100% - 250px);
}

@media only screen and (max-width: 1024px) {
  .column2 .inner {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .column2 .side {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-bottom: 50px;
    width: 100%;
  }

  .column2 .mainwrap {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-bottom: 50px;
    width: 100%;
  }
}

/* サイドメニュー */
.side .list {
  margin-bottom: 30px;
}

@media only screen and (max-width: 1024px) {
  .side {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .side .list {
    width: 48%;
  }
}

@media only screen and (max-width: 599px) {
  .side .list {
    width: 100%;
  }
}

.list-side .datattl {
  position: relative;
  margin-bottom: 20px;
  padding: 10px;
  border-radius: 2em;
  background: #505050;
  color: #fff;
  text-align: center;
  font-size: 20px;
}

.list-side .data {
  margin-bottom: 10px;
  padding-left: 10px;
}

.list-side a {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.list-side a:before {
  position: absolute;
  left: 0;
  color: #505050;
  content: ">";
}

@media only screen and (max-width: 1024px) {
  .list-side.type-archive .datawrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .list-side.type-archive .datawrap .datattl {
    width: 100%;
  }

  .list-side.type-archive .datawrap .data {
    width: 48%;
  }
}

/*===================================
  各個別コンテンツ
===================================*/
/**
XXX:トップ
*/
/*ホームビジュアル（トップ）*/
.homevisual {
  position: relative;
}

.homevisual .img {
  position: relative;
  min-height: 300px;
  max-height: 700px;
}

.homevisual .img:before {
  position: relative;
  z-index: -1;
  display: block;
  padding-top: 40%;
  content: "";
}

.homevisual .img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}

/*IE対策*/
.homevisual .head {
  position: absolute !important;
  top: 50%;
  left: 50%;
  font-weight: bold;
  font-size: 40px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media only screen and (max-width: 599px) {
  .homevisual .head {
    font-size: 28px;
  }
}

/* A-BiSUスライダー用 */
.mainimg {
  position: relative;
  overflow: hidden;
}

.mainimg img {
  width: 100%;
}

.mainimg .uk-slidenav-position {
  position: relative;
  overflow: hidden;
  min-height: 300px;
}

.mainimg .uk-slidenav-position:after {
  display: block;
  padding-top: 50%;
  content: "";
}

.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 {
  width: 100%;
  height: 100% !important;
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}

/*IE対策*/
/* XXX:スリックスライダー（トップ） */
.slick01 {
  padding: 0 20px;
}

.slick01.slick-dotted {
  margin-bottom: 50px;
}

.slick01 .btn-slick {
  position: absolute;
  z-index: 1;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 30px;
  cursor: pointer;
}

.slick01 .btn-slick.btn-back {
  left: 0;
}

.slick01 .btn-slick.btn-next {
  right: 0;
}

.slick01 .slick-dots {
  bottom: -40px;
  left: 0;
}

@media only screen and (max-width: 599px) {
  .slick01 {
    padding: 0 10px;
  }

  .slick01 .btn-slick {
    font-size: 20px;
  }
}

/**
下層共通
*/
/* XXX:トップビジュアル（下層共通） */
.topvisual {
  position: relative;
}

.topvisual .img {
  position: relative;
  min-height: 200px;
  max-height: 400px;
}

.topvisual .img:before {
  position: relative;
  z-index: -1;
  display: block;
  padding-top: 30%;
  content: "";
}

.topvisual .img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-family: "object-fit: cover; object-position: 50% 50%;";
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}

.topvisual .head {
  position: absolute !important;
  width: 96%;
  max-width: 1000px;
  text-align: center;
  top: 50%;
  left: 50%;
  font-weight: bold;
  font-size: 34px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media only screen and (max-width: 599px) {
  .topvisual .head {
    font-size: 24px;
  }
}

/**
XXX:各下層ページ
*/
/* CSS Document */
.nsans {
  font-family: "Noto Sans", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.sawarabi {
  font-family: "Sawarabi Mincho", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.lib {
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

/*フォント系*/
[data-element-id] h1 {
  position: initial;
  text-indent: initial;
}

h1 {
  width: 100%;
  font-size: 12px;
  font-weight: normal;
}

h2 {
  font-size: 40px;
  /* font-weight: bold; */
  font-weight: normal;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

h3 {
  font-size: 34px;
  /* font-weight: bold; */
  font-weight: normal;
  margin-bottom: 50px;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

h4 {
  font-size: 24px;
  /* font-weight: bold; */
  font-weight: normal;
  margin-bottom: 30px;
}

h5 {
  font-size: 18px;
  /* font-weight: bold; */
  font-weight: normal;
  margin-bottom: 20px;
}

.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 {
  content: "";
  display: block;
  clear: both;
}

.clearfix:before {
  display: block;
  content: "";
  clear: both;
}

.clearfix {
  display: block;
}

.clear {
  clear: both;
}

iframe {
  max-width: 100%;
}

img {
  vertical-align: top;
  border: none;
  max-width: 100% !important;
  height: auto !important;
}

img:not([src*="."]) {
  display: none;
}

.scale {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.scale:hover {
  -webkit-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 {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: rgba(255, 255, 255, 0.6);
}

.filterT:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: -webkit-gradient(linear, left bottom, left top, from(white), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(to top, white 0%, rgba(255, 255, 255, 0) 50%);
}

.filterR:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: -webkit-gradient(linear, left top, right top, from(white), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 50%);
}

.filterB:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(to bottom, white 0%, rgba(255, 255, 255, 0) 50%);
}

.filterL:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: -webkit-gradient(linear, right top, left top, from(white), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(to left, white 0%, rgba(255, 255, 255, 0) 50%);
}

.filterRad:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: radial-gradient(ellipse at center,
      white 0%,
      rgba(255, 255, 255, 0) 80%);
}

.lb-outerContainer {
  width: 80% !important;
  max-width: 500px !important;
  height: auto !important;
}

.lightbox .lb-image {
  width: 100% !important;
  height: auto !important;
  border: none !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: initial !important;
}

.pic {
  text-align: center;
  width: 100%;
}

.pic a {
  display: block;
}

.pic img {
  width: 100%;
}

.bkimg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.bkimg img {
  width: 100%;
  min-width: 1200px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

[data-element-id] .fead-mv {
  opacity: 1;
}

.fead-mv {
  opacity: 0;
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -ms-transition: 0.5s;
}

.mv {
  opacity: 1;
}

a {
  text-decoration: none;
  color: #000;
}

a:hover {
  opacity: 0.6;
  color: inherit;
  text-decoration: none;
}

a[href*="tel"] {
  pointer-events: none;
}

ul,
li {
  list-style: none;
  text-align: left;
  padding: 0;
  margin: 0;
}

dl,
dt,
dd {
  text-align: left;
  padding: 0;
  margin: 0;
}

p {
  text-align: left;
}

/*フレックス*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  justify-content: center;
}

.flexs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flexb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.columnreverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.rowreverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/*align-item*/
.itemstart {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.itemcenter {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.itemend {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

/*align-content*/
.contentstart {
  -ms-flex-line-pack: start;
  align-content: flex-start;
}

.contentcenter {
  -ms-flex-line-pack: center;
  align-content: center;
}

.contentend {
  -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;
  -ms-grid-row-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: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexc>div[data-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  justify-content: center;
}

.flexs>div[data-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flexb>div[data-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flex>div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexc>div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  justify-content: center;
}

.flexs>div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flexb>div[data-recommend-collection-list-content] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flex>div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexc>div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  justify-content: center;
}

.flexs>div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flexb>div[data-collection-filtered-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flex>div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexc>div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: justify;
  justify-content: center;
}

.flexs>div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flexb>div[data-collection-archive-content] {
  display: -webkit-box;
  display: -ms-flexsbox;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

[data-element-id] .imgalt {
  position: relative;
  color: orange;
  font-size: 14px;
  background: #333;
  padding: 2px 4px;
  text-align: left;
  max-height: 70px;
  overflow: hidden;
  z-index: 50;
}

/*カラム*/
/* ##### 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%;
}

.w80 {
  width: 80%;
}

.w75 {
  width: 75%;
}

.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;
}

#wrapper {
  overflow: hidden;
}

.inner {
  width: 92%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 100px 0;
}

.subtit {
  position: relative;
  overflow: hidden;
  max-height: 80vh;
}

.subtit h2 {
  text-align: left;
  padding-left: 100px;
  z-index: 1;
  width: auto;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.subtit:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/cover1.png) center center no-repeat;
  width: 38%;
  height: 100%;
  background-size: cover;
}

.subtit img {
  width: 100%;
}

@media only screen and (max-width: 1024px) {
  .subtit h2 {
    padding-left: 50px;
  }
}

@media only screen and (max-width: 599px) {
  .subtit h2 {
    padding-left: 15px;
    font-size: 20px;
  }
}

.more {
  text-align: center;
  margin: 50px auto 0 auto;
  width: 80%;
  max-width: 160px;
}

.more.__tar {
  margin-top: 0;
  margin-right: 0;
}

.more a {
  display: block;
  background: #000;
  color: #fff;
  padding: 10px 20px;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  cursor: pointer;
}

@media only screen and (max-width: 1024px) {
  .bkimg {
    position: relative;
  }

  .bkimg img {
    min-width: initial !important;
  }

  h2 {
    font-size: 30px;
  }

  h3 {
    font-size: 28px;
    margin-bottom: 40px;
  }

  h4 {
    font-size: 20px;
  }

  .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 {
    max-width: 768px;
    margin: 0 auto;
  }

  .flexc {
    max-width: 768px;
    margin: 0 auto;
  }

  .flexs {
    max-width: 768px;
    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;
    padding: 50px 0;
  }

  .more {
    margin: 25px auto 0 auto;
  }
}

@media only screen and (max-width: 599px) {
  h2 {
    font-size: 26px;
  }

  h3 {
    font-size: 22px;
    margin-bottom: 30px;
  }

  h4 {
    font-size: 18px;
    margin-bottom: 20px;
  }

  h5 {
    font-size: 16px;
    margin-bottom: 10px;
  }

  .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;
  }

  .flex {
    max-width: 450px;
  }

  .flexc {
    max-width: 450px;
  }

  .flexs {
    max-width: 450px;
  }

  .flexb {
    max-width: 450px;
  }

  /* カラム */
  /* ##### スマホで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%;
  }

  .w80 {
    width: 100%;
    margin: 2% 0;
  }

  .w75 {
    width: 100%;
    margin: 2% 0;
  }

  .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;
  }

  .inner {
    width: 94%;
    max-width: 450px;
    padding: 30px 0;
  }

  .more {
    margin: 20px auto 0 auto;
  }
}

/* ハンバーガー */
@media only screen and (max-width: 1024px) {
  #gnav {
    overscroll-behavior-y: contain;
    overflow-y: auto;
  }

  #gnav .toggle {
    display: block !important;
    position: fixed !important;
    width: 42px;
    height: 42px;
    top: 0px;
    right: 0px;
    background: #1c6f61;
    cursor: pointer;
    opacity: 0.8;
    z-index: 251;
  }

  #gnav .toggle .bar {
    display: block;
    background: #fff;
    height: 2px;
    width: 28px;
    text-indent: 9999px;
    padding: 0;
    top: 50%;
    left: 7px;
    margin-top: -1px;
    position: absolute;
    -webkit-transition: ease 0.4s;
    transition: ease 0.4s;
  }

  #gnav .toggle .bar:before {
    display: block;
    content: "";
    background: #fff;
    height: 2px;
    width: 28px;
    position: absolute;
    top: -10px;
    left: 0;
  }

  #gnav .toggle .bar:after {
    display: block;
    content: "";
    background: #fff;
    height: 2px;
    width: 28px;
    position: absolute;
    top: 10px;
    left: 0;
  }

  #gnav.action .toggle .bar {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  #gnav.action .toggle .bar:after,
  #gnav.action .toggle .bar:before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 0;
    left: 0;
  }

  #gnav .accordion-body {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    opacity: 0;
    -webkit-transition: height ease 0.1s, opacity ease 0.4s;
    transition: height ease 0.1s, opacity ease 0.4s;
    background: rgba(255, 255, 255, 0.8);
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translate3d(0, 0, 0) !important;
    transform: translate3d(0, 0, 0) !important;
    z-index: -10;
  }

  #gnav.action .accordion-body {
    height: 100vh;
    opacity: 1;
    z-index: 250;
  }

  #gnav .accordion-inner {
    width: 100%;
    padding: 60px 10px 150px 10px;
  }

  #gnav li {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #ddd;
    padding: 0;
    margin: 0;
  }

  #gnav li:last-of-type {
    border-bottom: none;
  }

  #gnav ul li a {
    display: block;
    color: #505050;
    text-align: left;
    padding: 10px 30px;
    border: none;
  }
}

/* メインビジュアル */
.mainimg {
  position: relative;
  overflow: hidden;
}

.mainimg .main_imglogo {
  width: 280px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20%;
}

.mainimg .main_imglogo img {
  width: 100%;
  height: auto;
}

.center {
  text-align: center;
}

.txt {
  padding-top: 5px;
  line-height: 200%;
}

/*#header*/
#header {
  padding: 15px 35px;
}

#header.fixed {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  position: fixed;
  -webkit-animation: sclAnimation 1s;
  animation: sclAnimation 1s;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  padding: 5px 35px;
  z-index: 250;
}

#header .logo {
  width: 15%;
}

#header .logo {
  margin-top: 8px;
}

#header .logo img {
  max-height: 50px;
}

#gnav {
  width: fit-content;
}

#gnav ul {
  text-align: right;
}

#gnav li {
  display: inline-block !important;
}

#gnav .item01>a,
#gnav .item01>span {
  font-size: 14px;
  color: #505050;
  padding: 10px;
  display: block;
  font-weight: normal;
  font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo,
    "ＭＳ Ｐゴシック", sans-serif;
}

#gnav .item01.-parent {
  cursor: pointer;
}

#gnav li.spmenu {
  display: none !important;
}

[data-element-id]#gnav li.spmenu {
  display: inline-block !important;
}

#header {
  width: 100%;
  max-width: 100%;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  
  top: 0;
  left: 0;
  z-index: 1;
}

@media only screen and (max-width: 1024px) {
  #gnav {
    width: 100%;
  }

  #header {
    position: static;
    padding: 10px 50px 10px 10px;
  }

  #header .flexb {
    max-width: none;
  }

  #header .logo {
    margin-top: 5px;
    width: 80%;
  }

  #gnav .item01>span {
    font-weight: bold;
    padding-bottom: 0;
  }

  #gnav .accordion-body {
    background: white;
  }

  #gnav li.spmenu {
    display: block !important;
  }
}

/*home*/
/*home-news*/
.home-news {
  padding-bottom: 0;
}

.home-news .inner {
  padding-top: 50px;
}

.home-news .more {
  margin-right: 0;
}

.home-news .day {
  font-weight: 300;
  font-size: 12px;
  font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo,
    "ＭＳ Ｐゴシック", sans-serif;
  color: #1c6f61;
  padding: 15px 0px;
}

.home-news .tit a {
  display: block;
  padding: 15px 15px;
  font-size: 16px;
}

.home-news .right dl {
  border-bottom: 1px solid #dfdbd8;
  margin-bottom: 15px;
}

.home-news .right dl:last-of-type {
  margin-bottom: 0;
}

@media only screen and (max-width: 599px) {
  .home-news .day {
    padding: 2px 0;
  }

  .home-news .tit {
    margin: 3px 0;
  }

  .home-news .tit a {
    padding: 2px 0;
    font-size: 14px;
  }

  .home-news {
    padding-bottom: 0px;
  }
}

.more.white a,
.btn_more {
  display: block;
  background: transparent;
  color: #1c6f61;
  padding: 10px 32px 10px 20px;
  border: solid 1px #1c6f61;
  border-radius: 30px;
  position: relative;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}

.more.white a.__back:after,
.btn_more.__back:after {
  left: 16px;
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}

.more.white a:after,
.btn_more:after {
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/1482a400914a602c05716a2485a61571.png) center center no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  width: 22px;
  height: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 16px;
}

.more.white a:hover,
.btn_more:hover {
  background-color: #1c6f61;
  color: white;
  opacity: 1;
}

.more.white a:hover:after,
.btn_more:hover:after {
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/arrow_w.png) center center no-repeat;
  background-size: contain;
}

.back {
  text-align: center;
  margin: 50px auto 0 auto;
  width: 80%;
  max-width: 160px;
}

.back a {
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  display: block;
  background: transparent;
  color: #1c6f61;
  padding: 10px 20px 10px 32px;
  border: solid 1px #1c6f61;
  border-radius: 30px;
  position: relative;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}

.back a:before {
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/backarrow.png) center center no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  width: 22px;
  height: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 16px;
}

.back a:hover {
  background-color: #1c6f61;
  color: #fff;
  opacity: 1;
}

.back a:hover:before {
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/backarrow_w.png) center center no-repeat;
  background-size: contain;
}

/*.home-insta*/
.home-insta h2 {
  margin-bottom: 50px;
}

.home-insta .inner {
  position: relative;
  padding-top: 90px;
}

.home-insta li {
  width: 18%;
  margin: 1%;
}

@media only screen and (max-width: 599px) {
  .home-insta .inner {
    position: relative;
    padding-top: 50px;
  }

  .home-insta h2 {
    margin-bottom: 15px;
  }

  .home-insta .more {
    margin-top: 10px;
  }
}

/*home-concept*/
.home-concept .txt {
  font-size: 16px;
}

.home-concept .inner .right {
  position: relative;
}

.home-concept h2,
.ttl-con {
  padding-top: 25px;
  margin-bottom: px;
}

.home-concept h2.__mb50,
.ttl-con.__mb50 {
  margin-bottom: 50px;
}

.home-concept .more {
  margin-left: 0;
}

@media only screen and (max-width: 1024px) {

  .home-concept h2,
  .ttl-con {
    padding-top: 0px;
    margin-bottom: 30px;
  }
}

@media only screen and (max-width: 599px) {
  .home-concept .inner .right:before {
    width: 120px;
    height: 70px;
    position: absolute;
    right: 0px;
    top: 10px;
  }

  .home-concept h2,
  .ttl-con {
    padding-top: 15px;
  }

  .home-concept .txt {
    font-size: 14px;
  }

  .home-concept .more {
    margin-left: auto;
  }
}

/*home-staff*/
.staff-top {
  padding-bottom: 50px;
}

[data-element-id].staff-bottom {
  overflow: hidden;
}

.staff-bottom {
  counter-reset: section;
  margin-top: 60px;
}

.staff-bottom a {
  display: block;
}

.staff-bottom li {
  width: 16%;
  margin-left: 0;
  margin-right: 0;
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.staff-bottom li .big {
  font-size: 40px;
}

.staff-bottom li .big:before {
  counter-increment: section;
  /* section カウンターの値に1を加算 */
  content: counter(section);
  /* section カウンターの値を表示 */
}

.staff-bottom li .pic img {
  -o-object-position: right;
  object-position: right;
  font-family: "object-fit: cover; object-position: right;";
}

.staff-bottom li .text {
  text-align: right;
  position: absolute;
  top: -15px;
  right: 10px;
}

.staff-bottom li .name {
  display: block;
  font-size: 18px;
  text-align: left;
  -webkit-transform: rotate(90deg) translateX(100%);
  transform: rotate(90deg) translateX(100%);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.staff-bottom li .name .first {
  font-size: 14px;
}

.staff-bottom li .num {
  display: inline-block;
  font-size: 28px;
  text-align: center;
  padding-bottom: 10px;
}

@media only screen and (max-width: 599px) {
  .staff-top {
    padding-bottom: 30px;
  }

  .staff-bottom li {
    width: 50%;
  }

  .staff-bottom li .text {
    top: -5px;
  }
}

.home-recruit .txtbox {
  background-color: #1c6f61;
  margin-top: 65px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 50px;
  padding: 120px 15% 30px;
  position: relative;
}

.home-recruit .right {
  position: relative;
}

.home-recruit .right .more {
  margin-left: 0;
}

.rec-bottom {
  position: relative;
}

@media only screen and (max-width: 1024px) {
  .rec-bottom .txt1 {
    display: none;
  }

  .rec-bottom .txt2 {
    display: none;
  }
}

/*home-blog*/
.home-blog .pic {
  margin-bottom: 15px;
}

.home-blog .day {
  padding-bottom: 3px;
  color: #1c6f61;
  font-size: 12px;
}

.home-blog .tit {
  font-size: 16px;
  display: block;
  width: 100%;
}

@media only screen and (max-width: 599px) {
  .home-blog .tit {
    font-size: 14px;
  }

  .home-blog .pic {
    width: 100%;
    margin-bottom: 10px;
  }
}

/*home-etc*/
.home-etc a {
  display: block;
  cursor: pointer;
}

.home-etc li {
  position: relative;
  width: 23%;
  margin: 1%;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.home-etc li .pic img {
  opacity: 1;
}

.home-etc li .pic {
  width: 100%;
  background-color: #000;
}

.home-etc li .pic .trimmingInner {
  padding-top: 73% !important;
}

.home-etc li .pic .imgfit {
  max-height: 200px;
}

.home-etc h3 {
  width: calc(100% - 40px);
  font-size: 24px;
  font-weight: normal;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  line-height: 130%;
  margin-bottom: 0;
  text-align: left;
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 10;
}

.home-etc h3 .rub {
  display: block;
  font-size: 14px;
}

@media only screen and (max-width: 599px) {
  .home-etc h3 {
    font-size: 14px;
  }

  .home-etc .tit {
    font-size: 18px;
  }

  .home-etc .up-ofi-35:after {
    padding-top: 50%;
  }
}

/*---------footer-------------*/
/*footer-top*/
.footer-top .txtbox {
  width: 55%;
  height: auto;
}

.footer-top .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.footer-top .right .more {
  margin-left: 0;
}

.footer-top .txtbox .logo {
  padding-bottom: 10px;
}

.footer-top .txtbox .logo img {
  max-width: 250px;
  margin-bottom: 20px;
}

.footer-top .txtbox .rub {
  padding-bottom: 35px;
  font-size: 16px;
}

.footer-top .address,
.footer-top .call {
  padding-bottom: 8px;
  font-size: 16px;
}

.footer-top .call {
  padding-bottom: 20px;
}

.footer-top .txtbox {
  padding-bottom: 100px;
  padding-top: 15px;
}

.footer-top .map:after {
  padding-top: 83%;
}

#footer {
  padding-top: 100px;
  background-color: #f6f1ec;
}

.index #footer {
  background-color: #fff;
}

.hiarcare #footer {
  background-color: #1c6f61;
}

.recruit #footer {
  background-color: #1c6f61;
}

.access #footer {
  background-color: #fff;
}

.contact #footer {
  background-color: #1c6f61;
}

.staff_detail #footer {
  background-color: #fff;
}

@media only screen and (max-width: 1024px) {

  /* .footer-top .left,
  .footer-top .right {
    width: 100%;
  } */

  .footer-top .txtbox {
    padding: 40px 0;
  }

  #footer {
    padding-top: 60px;
  }
}

@media only screen and (max-width: 599px) {

  .footer-top .left,
  .footer-top .right {
    margin: 0;
  }

  .footer-top .txtbox {
    padding: 20px 0 30px;
    width: 86%;
  }

  .footer-top .right .more {
    margin-left: auto;
  }

  #footer {
    padding-top: 40px;
  }
}

/*footer-bottom*/
.footer-bottom .txtbox p,
.footer-bottom .txtbox p a {
  color: #fff;
}

.footer-bottom .res_btn a {
  font-size: 18px;
  background: #41988b;
  color: #fff;
  display: inline-block;
  margin-top: 15px;
  margin-bottom: 30px;
  border-radius: 30px;
  padding: 10px 40px;
}

.sns_li a {
  font-size: 30px;
  padding: 0 5px;
  color: #fff;
}

.footer-bottom .logo {
  padding-bottom: 30px;
}

.footer-bottom .logo img {
  max-width: 150px !important;
  -webkit-filter: brightness(100);
  filter: brightness(100);
}

.footer-bottom .address,
.footer-bottom .call {
  padding-bottom: 8px;
}

.footer-bottom .snsbox li {
  display: inline-block !important;
}

.footer-bottom .snsbox {
  margin-bottom: 35px;
}

.footer-bottom .left {
  width: 80%;
}

.footer-bottom .right {
  width: 18%;
}

.footer-bottom .footnav ul {
  width: 100%;
}

.footer-bottom .footnav ul li {
  width: 31.333%;
  margin: 1%;
}

.footer-bottom .footnav ul li a {
  display: block;
  padding: 5px;
  color: #fff;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.footer-bottom .footnav ul li.fb a {
  padding-top: 4px;
  line-height: 25px;
}

.footer-bottom {
  position: relative;
  background-color: #000000ba;
}

.footer-bottom .bkpic {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  left: 0;
  z-index: 0;
  opacity: 0.3;
}

.footer-bottom .inner {
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 599px) {
  .footer-bottom .footnav ul li {
    font-size: 14px;
  }

  .footer-bottom .left {
    width: 68%;
  }

  .footer-bottom .right {
    width: 30%;
  }

  .footer-bottom .bkpic img {
    z-index: 0;
    top: 0%;
    left: 0;
    width: 400vw !important;
    height: 100% !important;
  }

  .footer-bottom .bkpic {
    width: 400vw !important;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 0;
    opacity: 0.3;
    top: 0%;
    left: 0;
  }
}

/*---------footer-------------*/
/*--under--*/
.pankuzu .inner {
  padding: 10px 0;
}

.pankuzu li {
  display: inline-block !important;
  font-size: 16px;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.pankuzu li a {
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.pankuzu li+li:before {
  content: ">";
  display: inline-block !important;
  margin: 0 0.5em;
}

@media only screen and (max-width: 599px) {
  .pankuzu li {
    font-size: 14px;
  }
}

/*news*/
.newslist li a {
  display: block;
  cursor: pointer;
}

.newslist li .day .s1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}

.newslist li .day .s1:after {
  content: "";
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: 1px;
  background: #c2bdb5;
  display: block;
  margin-left: 0.4em;
}

.newslist li .cate {
  border: 1px solid #1c6f61;
  padding: 2px 15px;
  border-radius: 20px;
  text-align: center;
}

.newslist li .tit {
  width: 82%;
}

.newslist li {
  margin-bottom: 70px;
}

@media only screen and (max-width: 1024px) {
  .newslist li {
    margin-bottom: 40px;
  }

  .newslist li .day .s1 {
    margin-bottom: 10px;
  }

  .newslist li .cate {
    margin-bottom: 10px;
  }

  .newslist li .tit {
    width: 100%;
    margin-top: 10px;
  }
}

@media only screen and (max-width: 1024px) {
  .newslist li {
    margin-bottom: 30px;
  }
}

.cate_archlist li a {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 11px;
  margin-bottom: 12px;
  display: block;
  position: relative;
  padding-left: 30px;
  font-size: 16px;
}

.cate_archlist li a:before {
  display: block;
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/ca_ar_line.png) center center no-repeat;
  background-size: contain;
  width: 6px;
  height: 2px;
  position: absolute;
  left: 5px;
  top: 40%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.cate_archbox h4 {
  border-bottom: 1px solid #94918e;
  padding-bottom: 10px;
  margin-bottom: 20px;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

@media only screen and (max-width: 1024px) {
  .cate_archbox {
    padding-bottom: 30px;
  }
}

/*pagenav*/
.pagenav ul {
  margin: 0px auto;
  padding: 20px 0;
  text-align: center;
}

.pagenav li {
  display: inline-block;
  margin: 5px 15px;
  vertical-align: middle;
}

.pagenav li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  font-size: 24px;
  width: 40px;
  height: 40px;
  font-weight: bold;
  color: #fff;
  border-radius: 50%;
  background-color: #1c6f61;
  border: solid 1px #1c6f61;
}

.pagenav li.st a {
  background-color: #1c6f61;
  color: #1c6f61;
  background-color: transparent;
}

.pagenav li.next a,
.pagenav li.prev a {
  display: block;
  font-size: 16px;
  padding: 4px 7px;
  font-weight: bold;
  color: #fff;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  background-color: transparent;
  border: 0px;
}

@media only screen and (max-width: 1024px) {
  .pagenav li a {
    font-size: 16px;
    width: 30px;
    height: 30px;
  }

  .pagenav li {
    margin: 5px;
  }
}

@media only screen and (max-width: 599px) {
  .pagenav li {
    margin: 5px 3px;
  }

  .newslist li .day {
    font-size: 18px;
  }

  .pagenav {
    padding-bottom: 20px;
  }
}

/*newsdetail*/
.newsdetail1 .cate {
  border: 1px solid #1c6f61;
  padding: 2px 15px;
  border-radius: 20px;
  text-align: center;
}

.newsdetail1 .day {
  padding-right: 14px;
}

.newsdetail1 h3 {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 20px;
  margin-bottom: 15px;
}

.newsdetail1 .catecarh {
  padding-bottom: 40px;
}

.newsdetail1 .kizitxt {
  padding-bottom: 40px;
  border-bottom: 1px solid #ddd8d4;
  margin-bottom: 20px;
  font-size: 16px;
}

/* .newsdetail1 {
  padding-bottom: 70px;
}
 */
@media only screen and (max-width: 599px) {
  .newsdetail1 .kizitxt {
    font-size: 14px;
    margin-bottom: 60px;
  }

  .newsdetail1 h3 {
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 18px;
  }

  .newsdetail1 .day {
    width: 100%;
    padding-bottom: 10px;
  }

  .newsdetail1 .cate {
    padding: 2px 8px;
    font-size: 13px;
  }

  .newsdetail1 .catecarh {
    padding-bottom: 30px;
  }

  .newsdetail1 {
    padding-bottom: 20px;
  }
}

/*blog*/
.bloglist a {
  display: block;
  cursor: pointer;
}

.bloglist .cate {
  border: 1px solid #1c6f61;
  padding: 2px 15px;
  border-radius: 20px;
  text-align: center;
}

.bloglist .day {
  padding-right: 14px;
}

.bloglist .tit {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.bloglist .pic {
  margin-bottom: 15px;
}

@media only screen and (max-width: 599px) {
  .bloglist .tit {
    padding-bottom: 5px;
    margin-bottom: 5px;
    font-size: 15px;
  }

  .bloglist .day {
    padding-bottom: 5px;
  }

  .bloglist .cate {
    padding: 2px 8px;
    font-size: 12px;
  }

  .bloglist li {
    padding-bottom: 15px;
  }

  .bloglist .pic {
    width: 100%;
  }
}

/*blogdetai*/
.blogdetail3 h3 {
  border-bottom: 1px solid #94918e;
  padding-bottom: 10px;
  margin-bottom: 45px;
  text-align: center;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.blogdetail3 li:first-of-type {
  margin-left: 0;
}

.blogdetail3 li:last-of-type {
  margin-right: 0;
}

/*XXX:clinic*/
.dir_box .ttl-con {
  margin-bottom: 50px;
}



/*XXX:explain*/
.explain01 li:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.explain01 .ttl-cmn02 {
 /*  padding-left: 50px; */
  position: relative;
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 5px;
  margin-bottom: 30px;
  padding-top: 20px;
  font-weight: bold;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* .explain01 .ttl-cmn02:before {
  content: "";
  display: block;
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/i_teeth.png) center center no-repeat;
  background-size: contain;
  width: 38px;
  height: 53px;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
} */

.explain01 .boxlist li.box:not(:last-of-type) {
  margin-bottom: 80px;
}

.pt0 {
  padding-top: 0 !important;
}
.pb0 {
  padding-bottom: 0!important;
}

.bnr_wrap {
  position: relative;
}

.bnr_wrap .bg {
  position: absolute;
  height: 100%;
}

.bnr_wrap .bg:before {
  -webkit-transition: 0.3s linear;
  transition: 0.3s linear;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  /* background: rgba(28, 111, 97, 0.6);
  border: 3px solid #1c6f61; */
  background: rgb(28 111 97 / 14%);
    border: 3px solid #1c6f6199;
}

.bnr_wrap .txt {
  position: relative;
  z-index: 6;
  text-align: center;
  padding: 50px 1rem;
  font-size: 20px;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  color: #fff;
      text-shadow: 0 0 5px #666;
}

.bnr_wrap a:hover {
  opacity: 1;
}

.bnr_wrap a:hover .bg:before {
  background: rgba(28, 111, 97, 0.8);
}

[data-element-id] .bnr_wrap .bg:before {
  display: none;
}

.nayami_list .box_list .left {
  width: 28%;
}
.nayami_list li {
      border: 1px solid #000;
    border-radius: 10px;
    padding: 2%;
}

.nayami_list li.box:nth-of-type(even)>div {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.nayami_list li.box:not(:last-of-type) {
  margin-bottom: 75px;
}

.nayami_list li:nth-of-type(even) .ttl01 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.nayami_list li:nth-of-type(even) .ttl01 .num {
  padding-left: 10px;
  padding-right: 0;
}

.nayami_list .ttl01 {
  margin-bottom: 0px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  color: #1c6f61;
}

.nayami_list .ttl01 .num {
  display: inline-block;
  padding-bottom: 10px;
  font-size: 28px;
  padding-right: 10px;
}


.nayami_list .ttl01 .big {
  font-size: 40px;
}

.type_list .left {
  width: 28%;
}

.type_list .ttl01 {
  margin-bottom: 30px;
}

.type_list .box:not(:last-of-type) {
  margin-bottom: 75px;
}

@media only screen and (max-width: 1024px) {
  .type_list .box:not(:last-of-type) {
    margin-bottom: 40px;
  }
  .explain01 .ttl-cmn02 {
    padding-top: 0;
    padding-left: 45px;
    margin-bottom: 20px;
  }

  .explain01 .ttl-cmn02:before {
    width: 35px;
  }

  .explain01 .boxlist .box>div {
    width: 100%;
    margin: 2% 0;
  }

  .explain01 .ttl-cmn02:before {
    top: 35%;
  }
  .clinic01 .w48 {
    width: 100%;
    margin: 2% 0;
  }
  .nayami_list .ttl01 .num {
    padding-bottom: 0;
  }
  .nayami_list .ttl01 .midashitxt {
      border: 1px solid;
    padding: 2px 7px;
    border-radius: 8px;
  }
}

@media only screen and (max-width: 599px) {
  .explain01 .boxlist li.box {
    margin-bottom: 40px;
  }

  .explain03 .sglist {
    width: 48% !important;
  }

  .bnr_wrap .txt {
    font-size: 16px;
    padding: 30px 1rem;
  }

  .nayami_list .box_list .left {
    width: 100%;
  }

  .nayami_list li:nth-of-type(even) h4 {
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -ms-flex-direction: initial;
    flex-direction: initial;
  }

  .nayami_list li .ttl01 .midashitxt {
    width: 100%;
    font-size: 20px;
    padding: 2px 5px;
  }

  .nayami_list li:nth-of-type(even) .ttl01 .midashitxt {
    padding-right: 0;
  }

  .nayami_list .ttl01 .num {
    padding-bottom: 5px;
    margin: 0 auto;
  }

  .nayami_list .ttl01 {
    text-align: center;
  }

  .type_list .left {
    width: 80%;
    margin: 0 auto 15px;
  }
}

/*haircare*/
.haircare1 h3 {
  position: relative;
  padding-top: 30px;
  padding-bottom: 20px;
  display: inline-block;
}

.haircare1_midashi {
  text-align: center;
  display: block;
}

.boxinn_list dt {
  background-color: #1c6f61;
  text-align: center;
  padding: 8px;
  border-right: 1px solid #fff;
  color: #fff;
  font-size: 18px;
}

.boxinn_list dd {
  /*   border-left: 1px solid #c5c1bd;
border-bottom: 1px solid #c5c1bd; */
  padding: 13px 25px;
  font-size: 16px;
  line-height: 180%;
}

.boxinn_list li {
  border-left: 1px solid #c5c1bd;
  border-bottom: 1px solid #c5c1bd;
}

.boxinn_list li:last-of-type {
  border-right: 1px solid #c5c1bd;
}

.boxinn_list li:last-of-type dt {
  border-right: 1px solid #1c6f61;
}

@media only screen and (max-width: 599px) {
  .haircare1 h3 {
    font-size: 20px;
    padding-bottom: 50px;
    margin-bottom: 60px;
  }

  .haircare1 h3:after {
    width: 40px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -40px;
  }

  .boxinn_list li {
    border-right: 1px solid #c5c1bd;
  }

  .boxinn_list dd {
    /* border-right: 1px solid #c5c1bd; */
    padding: 10px 15px;
  }

  .boxinn_list dt {
    border-right: 1px solid #1c6f61;
  }
}

/*voice*/
.voicelist .box h3 {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 0px;
  line-height: 140%;
  margin-bottom: 10px;
}

.voicelist .box h3 .name {
  padding-right: 40px;
}

.voicelist .box h3 .nenrei+.seibetsu:before {
  content: "/";
}

.voicelist .box {
  margin-bottom: 80px;
}

@media only screen and (max-width: 599px) {
  .voicelist .box {
    margin-bottom: 40px;
  }

  .voicelist .box h3 .name {
    padding-right: 20px;
  }
}

/*faq*/
.faqlist .left .q {
  display: block;
  width: 71px;
  height: 71px;
  position: relative;
  background-color: #1c6f61;
  color: #fff;
}

[data-element-id] .faqlist .left .q .num {
  position: absolute !important;
}

.faqlist .left .q .num {
  display: inline-block;
  font-size: 28px;
  position: absolute;
  bottom: -6px;
  right: 0;
}

.faqlist .left .q .big {
  font-size: 40px;
}

.faqlist .left .q .top {
  font-size: 24px;
  position: absolute;
  left: 5px;
  top: 5px;
}

.faqlist .left .q:before {
  display: block;
  content: "";
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/line.png) center center no-repeat;
  background-size: contain;
  width: 43px;
  height: 43px;
  position: absolute;
  top: 12px;
  left: 14px;
}

.faqlist .right {
  width: 90%;
}

.faqlist .right dd {
  display: none;
}

[data-element-id].faqlist .right dd {
  display: block;
}

.faqlist .right dt {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 5px;
  margin-bottom: 15px;
  position: relative;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.faqlist .right dt:hover {
  cursor: pointer;
  opacity: 0.6;
}

.faqlist .right dt:after {
  content: "";
  display: block;
  background: url(/import/tenant_1/160.16.217.241/html_matsumoto/images/top/arrow.png) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 10px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 15px;
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}

.faqlist .right dt.is-parent:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  top: 35%;
}

.faqlist li {
  margin-bottom: 110px;
}

@media only screen and (max-width: 1024px) {
  .faqlist .right {
    width: 100%;
    padding-top: 20px;
  }
}

@media only screen and (max-width: 599px) {
  .faqlist li {
    margin-bottom: 60px;
  }

  .faqlist .right {
    padding-top: 15px;
  }

  .faqlist .left .q {
    display: block;
    width: 59px;
    height: 59px;
    position: relative;
    background-color: #1c6f61;
    color: #fff;
  }

  .faqlist .left .q .top {
    font-size: 19px;
    position: absolute;
    left: 3px;
    top: 3px;
  }

  .faqlist .left .q .num {
    display: inline-block;
    padding-bottom: 2px;
    font-size: 20px;
    padding-right: 2px;
    position: absolute;
    bottom: 0;
    right: 0;
  }

  .faqlist .left .q .big {
    font-size: 34px;
  }

  .faqlist .left .q:before {
    display: block;
    width: 28px;
    height: 43px;
    top: 11px;
    left: 9px;
  }
}

/*access*/
.access_list li dt {
  width: 21%;
  font-size: 16px;
}

.access_list li dd {
  width: 75%;
  font-size: 16px;
}

.access_list li {
  border-bottom: 1px solid #ddd8d4;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}

.inn_access .inner {
  max-width: 770px;
}

.inn_access {
  position: relative;
  overflow: hidden;
}

.inn_access .inner {
  position: relative;
  z-index: 2;
}

.inn_access .bkimg img {
  opacity: 0.3;
}

@media only screen and (max-width: 599px) {
  .access_list li dt {
    width: 100%;
    padding-bottom: 5px;
    font-weight: bold;
  }

  .access_list li dd {
    width: 100%;
    font-size: 15px;
  }
}

/*contact*/
.contact1 {
  background-color: #1c6f61;
}

.contact1 .table {
  max-width: 630px;
  margin: 0 auto;
}

.contact1 dl input,
.contact1 dl textarea {
  border: none;
  color: #505050;
}

.contact1 dl input.size1 {
  background: #fff;
  line-height: 26px;
  display: inline-block;
  width: 100%;
  padding: 5px;
}

.contact1 dd {
  width: 70%;
}

.contact1 dd>div {
  color: #fff;
}

.contact1 dt {
  width: 28%;
  line-height: 26px;
  color: #fff;
  font-size: 16px;
}

.contact1 dl {
  margin-bottom: 40px;
}

.contact1 dl textarea {
  background: #fff;
  line-height: 26px;
  display: inline-block;
  width: 100%;
  max-height: 170px;
}

.more button {
  background: #fff;
  font-size: 16px;
  padding: 15px 45px;
  position: relative;
  width: 100%;
  border: 1px solid #fff;
  font-weight: bold;
  cursor: pointer;
}

.contact1 .more {
  margin: 30px auto;
  max-width: 170px;
}

@media only screen and (max-width: 599px) {
  .contact1 .more {
    margin: 10px auto;
  }
  .contact1 dl {
    margin-bottom: 20px;
  }
}

/*recruit*/
.recruit1 .top .right,
.recruit1 .top .left {
  width: 49%;
}

.recruit1 .top .right .mini_right,
.recruit1 .top .left .mini_right {
  width: 65%;
}

.recruit1 .top .right .mini_left,
.recruit1 .top .left .mini_left {
  width: 31%;
}

.recruit1 .top {
  margin-bottom: 20px;
}

.recruit1 .bottom .left,
.recruit1 .bottom .right {
  width: 28%;
}

.recruit1 .bottom .center {
  width: 40%;
  background-color: #1c6f61;
  position: relative;
  color: #fff;
}

.recruit1 .bottom .center dt {
  padding-top: 40px;
  padding-bottom: 25px;
  text-align: center;
  color: #fff;
}

.recruit1 .bottom .center dd {
  text-align: center;
  color: #fff;
}

.recruit1 .bottom_img,
.recruit2 .bottom_img {
  padding-top: 45px;
}

.recruit1 .bottom_img img,
.recruit2 .bottom_img img {
  display: block;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {

  .recruit1 .top .right,
  .recruit1 .top .left {
    width: 100%;
    margin-bottom: 2%;
  }

  .recruit1 .top .right .mini_right img,
  .recruit1 .top .left .mini_right img,
  .recruit1 .top .right .mini_left img,
  .recruit1 .top .left .mini_left img {
    width: 100%;
  }

  .recruit1 .bottom .left,
  .recruit1 .bottom .right {
    width: 100%;
    margin-bottom: 2%;
  }

  .recruit1 .bottom .left img,
  .recruit1 .bottom .right img {
    width: 100%;
  }

  .recruit1 .bottom .center {
    width: 100%;
    margin-bottom: 2%;
  }

  .recruit1 .bottom .center dd {
    padding-bottom: 40px;
  }

  .recruit1 .top {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 599px) {
  .recruit1 .bottom .center dt {
        padding-top: 20px;
    padding-bottom: 10px;
  }
  .recruit1 .bottom .center dd {
    padding-bottom: 20px;
  }
}

.blue_heading {
  background-color: #1c6f61;
  text-align: center;
  margin-bottom: 30px;
  color: #ffffff;
  padding: 5px 0;
}

.recruit2 .inn_box {
  position: relative;
  overflow: hidden;
}

.recruit2 .inn_box .box {
  position: relative;
  z-index: 2;
  max-width: 810px;
  padding: 30px;
  margin: 0 auto;
}

.recruit2 .inn_box .bkimg img {
  opacity: 0.5;
  z-index: 1;
}

.recruit2 .inn_box {
  margin-bottom: 30px;
}

.recruit2 .inn_box2 .pic {
  margin-bottom: 30px;
}

.recruit2 .inn_box2 dt {
  font-weight: bold;
  padding-bottom: 8px;
}

.b_border {
  border: solid 1px #fff;
  /* 内側の線になる5pxの線をひく */
  margin: 2px;
  /* 外側の線の場所を確保する */
  position: relative;
  /* 外側の線の場所を調整する時の基準点になるようにする    */
  border-radius: 50%;
  /* 要素の角を丸くする */
  background-color: #1c6f61;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #fff;
  font-size: 18px;
  width: 180px;
  height: 180px;
}

.b_border::before {
  content: "";
  /* 擬似要素に実体を持たせる */
  width: calc(100% + 2px);
  /* 外側の線になる要素の幅を指定する */
  height: calc(100% + 2px);
  /* 外側の線になる要素の高さを指定する */
  border: solid 5px #1c6f61;
  /* 外側の線になる一本線の枠線をひく*/
  position: absolute;
  /* 外側の線の位置を自由に動かせるようにする */
  top: -6px;
  /* 外側の線の位置を、内側の線から上に7pxずらす */
  left: -6px;
  /* 外側の線の位置を、内側の線から左に7pxずらす */
  border-radius: 50%;
  /* 要素の角を丸くする */
}

.recruit6 .bosyu_list .left {
  width: 30%;
  font-size: 16px;
  font-weight: bold;
  padding-right: 20px;
}

.recruit6 .bosyu_list .right {
  width: 70%;
  font-size: 16px;
}

.recruit6 .bosyu_list dl {
  padding-bottom: 15px;
  margin-bottom: 25px;
  border-bottom: 1px solid #ddd8d4;
}

.recruit6 .bosyuwrap {
  width: 100%;
  max-width: 870px;
  margin: 60px auto 0;
}

.recruit6 .mini_ul li:before {
  content: "・";
  position: absolute;
  left: -5px;
}

.recruit6 .mini_ul li {
  position: relative;
  padding-left: 16px;
  font-size: 16px;
}

.recruit6 .mini_ul {
  margin: 5px auto;
}

.recruit6 h3 {
  margin-bottom: 90px;
}

@media only screen and (max-width: 1024px) {
  .recruit2 .inn_box2 .pic {
    width: 100%;
  }

  .b_border {
    width: 130px;
    height: 130px;
    font-size: 15px;
  }
}

@media only screen and (max-width: 599px) {
  .blue_heading {
    margin-bottom: 20px;
  }

  .recruit6 .bosyu_list .left {
    width: 100%;
    padding-bottom: 15px;
  }

  .recruit6 .bosyu_list .right {
    width: 100%;
  }

  .contact1 dt {
    width: 100%;
    padding-bottom: 10px;
  }

  .contact1 dd {
    width: 100%;
  }

  .more button {
    padding: 8px 45px;
  }

  .recruit5 .schedule_list .time {
    margin-bottom: 15px;
    padding-bottom: 0;
    text-align: center;
    font-size: 16px;
  }

  .recruit5 .schedule_list li {
    margin-bottom: 50px;
  }
}

.qids-list>li {
  margin-bottom: 40px;
  padding: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 30px;
}

.haircare2 {
  background-color: #1c6f61;
}

.haircare2 h3 {
  color: #fff;
}

.haircare2 h4 {
  text-align: center;
  font-size: 18px;
}

.qids-list>li li {
  margin-bottom: 20px;
  font-size: 16px;
  width: 48%;
}

@media only screen and (max-width: 599px) {
  .qids-list>li li {
    width: 100%;
  }
}

.qids-list ul {
  width: 80%;
  margin: 0 auto;
}

.radio01-input {
  display: none;
}

.radio01-parts {
  padding-left: 20px;
  position: relative;
  margin-right: 20px;
  line-height: 1;
}

.radio01-parts:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}

.radio01-input:checked+.radio01-parts:after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #1c6f61;
  border-radius: 50%;
}

.test-result .inner {
  background-color: #f6f1ec;
  border-radius: 30px;
  width: 100%;
}

.test-result {
  margin: 50px auto;
}

.test-result .result-box {
  display: none;
  width: 80%;
  margin: auto;
  padding: 1.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #f6f1ec;
}

[data-element-id].test-result .result-box {
  display: block;
}

.test-result .result-box .rslt {
  display: block;
  width: 50%;
  max-width: 100%;
  height: 4.5rem;
  margin: 1.5rem auto;
  text-align: center;
  padding: 0.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  color: #fff;
  line-height: 3.5rem;
  background-color: #415388;
  font-size: 16px;
}

.test-result .result-box .result-2,
.test-result .result-box .result-4,
.test-result .result-box .result-6 {
  background-color: #919fcc;
}

.test-result {
  display: none;
}

.test-result .display {
  display: block;
}

.test-result .score {
  display: block;
}

[data-element-id].test-result {
  display: block;
}

/* chat機能 */
.chatarea {
  background-color: #f6f1ec;
}

.chatarea ul>li:first-child {
  color: black;
  font-size: 25px;
}

.chatarea ul>li:nth-child(2n) {
  color: blue;
}

.chatarea ul>li:nth-child(2n):before {
  content: "ユーザー名：";
}

.uk-lb img {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
}

.sidebtnbox {
  max-height: 52px;
}

.sidebtnbox .fix .sidebtn {
  margin-bottom: 40px;
}

.bold {
  font-weight: bold;
}

.tac {
  text-align: center;
}

.bold {
  font-weight: bold;
}

.fs14 {
  font-size: 14px;
}

@media only screen and (max-width: 1024px) {
  .sidebtnbox {
    display: none;
  }
}

/*診療時間*/
.main_time table {
  width: 100%;
  background: #fff;
  border: solid 1px #333;
  border-collapse: collapse;
  text-align: center;
}

.main_time table tr {
  border: 1px solid #a77d7d;
}

.main_time table th {
  background: #d2fff8;
  border: solid 1px #7d7d7d;
  padding: 5px;
}

.main_time table td {
  border: solid 1px #a77d7d;
  padding: 5px;
}

.main_time .time_text {
  font-size: 12px;
  margin-top: 5px;
  color: #fff;
}

.beige {
  background-color: #f7f7f7;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
  font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo,
    "ＭＳ Ｐゴシック", sans-serif;
  letter-spacing: 1.2px;
  color: #505050;
}

h2 {
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

h2:first-letter,
.ttl-con:first-letter {
  color: #1c6f61;
}

h2 .sub_title,
.ttl-con .sub_title {
  font-size: 14px;
  display: block;
  margin-top: 5px;
}

a {
  color: #505050;
}

/*mv*/
.mainimg .main_imglogo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  right: 0%;
  color: #ffffff;
  font-size: 22px;
  letter-spacing: 5px;
  width: 80%;
  text-align: center;
}

.mainimg .main_imglogo .mv_title {
  font-size: 60px;
  color: #ffffff;
  text-shadow: none;
  display: block;
  letter-spacing: 8px;
  line-height: 90px;
  margin-bottom: 40px;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.mainimg .main_imglogo .mv_title .green {
  color: #37c5ad;
}

.mainimg .main_imglogo img {
  max-width: 300px !important;
  width: 300px;
}

@media only screen and (max-width: 1024px) {
  .mainimg .main_imglogo .mv_title {
    font-size: 28px;
    line-height: 45px;
  }
}

@media only screen and (max-width: 599px) {
  .mainimg .pic:after {
    padding-top: 65%;
  }

  .mainimg .main_imglogo {
    font-size: 16px;
    text-shadow: 0 0 5px #999;
  }

  .mainimg .main_imglogo .mv_title {
    font-size: 26px;
    line-height: 30px;
    text-shadow: 0 0 5px #999;
  }
}

.sidebtnbox .sidebtn a {
  width: 100%;
  height: 100%;
  display: block;
  color: #fff;
  background: #207a6c;
  border: 1px solid #207a6c;
  border-radius: 50px;
  padding: 10px 15px;
}

.sidebtnbox .sidebtn.ab a {
  color: #207a6c;
  background: #fff;
}

/*.home-insta*/
.home-insta .inner:before {
  background: none;
}

.home-insta li {
  width: 48%;
  background: #fff;
}

.home-insta li:first-of-type {
  width: 100%;
}

.home-insta li .title {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  padding: 20px 10px 0;
  color: #1c6f61;
}

.home-insta li .text {
  padding: 20px;
}

/*.home-concept*/
.home-concept h2,
.ttl-con {
  padding-top: 0;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.home-concept .inner .right:before {
  background: none;
}

/*.staff-bottom*/
.staff-bottom li {
  width: 20%;
}

.staff-bottom li p:after {
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
}

.staff-bottom li .text {
  text-align: right;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 1;
  color: #fff;
}

.staff-bottom li .name {
  -webkit-transform: inherit;
  transform: inherit;
  -webkit-transform-origin: inherit;
  transform-origin: inherit;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

.staff-bottom li .name .first {
  font-size: 20px;
}

.staff-bottom .more {
  position: absolute;
  bottom: 15px;
  left: 15px;
}

.staff-bottom .more a {
  background: #ffffffb5;
  border: none;
  /* color: $mc1; */
  color: #1c6f61;
}

.staff-bottom .more a:after {
  background: url(#);
}

.sglist {
  margin: 0;
  margin-bottom: 3%;
  position: relative;
  /* width: 31.333%; */
  width: 23%;
}

.sglist .text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.4);
  text-align: center;
  color: #fff;
  padding: 0 10px;
  -webkit-transition: 0.3s linear;
  transition: 0.3s linear;
}

/* .sglist a:hover {
  opacity: 1;
} */

.sglist a:hover .text {
  background: rgba(0, 0, 0, 0.2);
}

.sglist:nth-of-type(n + 7) {
  /* width: 23%; */
  /* overflow: hidden; */
  /*margin-bottom: 0;*/
}

/* .sglist:nth-of-type(n + 4) {
  width: 23%;
  overflow: hidden;
  margin-bottom: 0;
} */

/*home-question*/
.home-question h2 {
  margin-bottom: 30px;
}

.home-question ul li+li {
  margin-top: 15px;
  border-top: 1px solid;
  padding-top: 15px;
}

.home-question ul li .qa_cont {
  font-size: 20px;
}

.home-question ul li .qa_cont+.qa_cont {
  margin-top: 10px;
}

.home-question ul li .qa_cont .shirushi {
  font-size: 24px;
  padding-right: 5px;
}

.home-question ul li .q_cont .shirushi {
  color: #1c6f61;
}

.home-question ul li .a_cont .shirushi {
  color: #cc3e3e;
}

/*.home-etc*/
.home-etc h3 {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*.home-beforeafter*/
.home-beforeafter {
  margin: 0;
}

.home-beforeafter .inner .left:before {
  background: none;
}

.home-beforeafter h2 {
  padding-top: 0;
  margin-bottom: 30px;
}

@media only screen and (max-width: 1024px) {
  .sglist {
    width: 48% !important;
    margin-bottom: 3% !important;
  }

  .home-question ul li .qa_cont {
    font-size: 18px;
  }
}

@media only screen and (max-width: 599px) {
  .home-news .left {
    margin-bottom: 20px;
  }

  .home-insta li .title {
    font-size: 18px;
  }

  .home-insta li {
    width: 100%;
  }

  .sglist {
    width: 90% !important;
    margin: 0 auto 3% !important;
  }

  .sglist .up-ofi-60:after {
    padding-top: 40%;
  }

  .sglist .text {
    font-size: 16px !important;
  }

  .home-question ul li .qa_cont {
    font-size: 16px;
  }
}

.footer-top .txtbox {
  width: 85%;
}

.footer-top {
  background: #f7f7f7;
}

#footer {
  padding-top: 0;
}

#footer .copy {
  text-align: center;
  padding-bottom: 20px;
}

.footer-bottom .logo img {
  max-width: 300px !important;
  -webkit-filter: brightness(1.6);
  filter: brightness(1.6);
}

.footer-bottom .footnav ul li {
  width: 48%;
}

.main_time table th {
  background: #41988b;
  color: #fff;
}

#footer .copy {
  color: #fff;
}

/* list-cmn06 */
.list-cmn06 .item {
  margin: 0 2%;
  -webkit-box-shadow: 0 0 10px #dcdcdc;
  box-shadow: 0 0 10px #dcdcdc;
  padding: 0;
  background: #fff;
  width: 29.333%;
}

.list-cmn06 .fig,
.list-cmn06 .date {
  margin-bottom: 0;
  position: relative;
}

.list-cmn06 .fig .text_box {
  height: 100%;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 0;
  background: rgba(84, 150, 150, 0.7);
  color: #fff;
  font-size: 20px;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px;
  font-weight: bold;
  text-align: center;
}

.list-cmn06 a {
  font-weight: bold;
  letter-spacing: 1px;
  display: block;
}

.list-cmn06 .datattl {
  text-align: center;
  padding: 10px 5px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
  #footer .copy {
    padding-bottom: 100px;
  }
}

@-webkit-keyframes sclAnimation {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes sclAnimation {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
[data-element-id] .gnav .list02 {
  position: static;
  visibility: visible;
  opacity: 1;
  -webkit-transform: none;
  transform: none;
}
[data-element-id] #gnav li {
  vertical-align: top;
}
[data-element-id] #header {
  position: static;
}
[data-element-id] .mainimg .main_imglogo, [data-element-id] .subtit h2 {
  position: absolute!important;
}
[data-element-id] .bnr_wrap .txt {
  text-shadow: 0 0 5px #999;
}

/* 追従ボタン */

.clinic-fix {
  position: fixed;
  right: 15px;
  bottom: 15px;
  z-index: 20;
}
.clinic-fix a {
  display: block;
  background-color: #41988b;
  color: #fff;
  font-weight: bold;
  padding: 15px 30px;
  font-size: 18px;
  text-align: center;
}
 .totop {
  visibility: hidden;
}
[data-element-id] .totop {
  visibility: visible;
}
[data-element-id] .clinic-fix {
  position: static;
  width: 300px;
}
@media only screen and (max-width: 1024px){
  .clinic-fix {
    display: none;
  }
  .totop {
    visibility: visible;
  }
}

.clinic06 ul li > div {
  position: relative;
  padding-top: 500px;
}
.clinic06 ul li > div > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100% !important;
  font-family: "object-fit: cover; object-position: 50% 50%;";
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}

.clinic06 .uk-slider-container ul li > div {
  padding-top: 70%;
}

@media (max-width: 1024px) {
  .clinic06 ul li > div {
    padding-top: 50%;
  }
}

@media (max-width: 599px) {
  .clinic06 .uk-slider-container ul li {
    width: 25%;
  }
}

/*19price｜料金表*/
.priceBox .priceItem {
  border: solid 5px #41988b;
  padding: 20px;  
}

.priceBox .priceItem+.priceItem {
  margin-top: 100px;
}

.priceBox .priceItem .box dl {
  display: flex;
  flex-wrap: wrap;
  padding-left: 20px;
  padding-right: 20px;
}

.priceBox .priceItem .box dl+dl {
  border-top: solid 1px #41988b;
  padding-top: 20px;
  margin-top: 20px;
}

.priceBox .priceItem .box dl dt {
  width: calc(100% - 220px);
}

.priceBox .priceItem .box dl dd {
  width: 200px;
  margin-left: 20px;
}

@media (max-width: 599px) {
  .priceBox .priceItem {
    padding: 20px 10px;
  }
  
  .priceBox .priceItem+.priceItem {
    margin-top: 30px;
  }
  
  .priceBox .priceItem .box dl dt {
    width: 100%;
  }
  
  .priceBox .priceItem .box dl dd {
    width: 100%;
    margin-left: 0;
    margin-top: 5px;
  }
}

/* 0228 追記 */

@media only screen and (min-width: 1025px){
  .w480{
  width: 480px;
}  
}

.worries01{
  width: 26% !important;
  /* height: 18rem; */
  margin-bottom: 40px;
}

.worries02{
 height: 18rem;
}

.worries03{
  font-size: 16px;
  margin-top: 2px;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  width: 83%;
    margin: 3px auto 1px;
    text-align: center;
}



.inprant01{
  margin-bottom: 45px;
}

.inprant02{
  padding-bottom: 0;
  padding-top: -20px !important;
}

.inprant03{
  padding-top: 20px !important;
}

.inprant04{
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 3px;
}

.strengths01{
  display: flex;
  margin-bottom: 30px;
  width: 100% !important;
}

.strengths02{
  width: 50%;
}


.strengths04{
  width: 100%;
  display: flex;
  height: 400px;
  margin-bottom: 30px;
}

 
 @media (max-width: 599px) {
   .strengths01 {
     display: flex;
     flex-direction: column;
   }
   .strengths01:nth-of-type(even) {
     flex-direction: column-reverse;
   }
 }
.concept01 {
    background: #f7f7f7;
    position: absolute !important;
    left: 37rem;
    margin-top: 220px;
    padding: 15px 60px 4px;
    width: 34%;
    margin-left: 50px;
}


.concept02{
  position: relative;
  width: 83% !important;
}

.concept03{
  padding-bottom: 170px !important;
  padding-top: 120px
}

.concept04{
  margin: 23px auto !important;
}

.concept05{
  font-size: 14px !important;
}

.shoujou01{
  margin-right: 10px;
}


.shoujou03{
  height: 0rem !important;
}

.concept06{
  height: 480px;
}

@media only screen and (max-width: 1025px){
.inprant01 {
    margin-bottom: 50px;
}

.inprant02 {
padding-top: 0 !important;
}

.inprant05{
  width: 67%;
}

.inprant06{
  font-size: 27px !important;
}

.concept01 {
    background: #f7f7f7;
    position: absolute !important;
    left: 80px;
    margin-top: 240px;
    padding: 27px 60px 20px;
    width: 80%;
    /* margin-left: -230px; */
}

.concept03 {
    padding-bottom: 220px !important;
}

.concept02 {
    position: relative;
    width: 74% !important;
}

.strengths01 {
    display: flex;
margin-bottom: 30px !important;
    width: 100% !important;
}


.shoujo02 {
    justify-content: space-between !important;
    max-width: 1010px !important;
    width: 100%;
}
.shoujou01{
  width: 23% !important;
  margin-right: 13px;
}

.worries02 {
    height: 14rem;
}
}

@media (max-width: 599px) {
.inprant04 {
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 3px;
}

.inprant05 {
    width: 99%;
    font-size: 18px;
}

.inprant06 {
    font-size: 20px !important;
    margin-bottom: 8px !important;
}

.inprant03 {
    padding-top: 0px !important;
    padding-bottom: 0 !important;
}

.inprant07{
 padding-bottom: -20px !important; 
}

.explain01 .boxlist li.box:not(:last-of-type) {
  margin-bottom: 20px;
}

.concept05 {
    font-size: 12px !important;
}

.concept01 {
    background: #f7f7f7;
    position: absolute !important;
    left: -10px;
    margin-top: 520px;
    padding: 20px 28px 0px;
    width: 87%;
    top: 790px;
}
 .strengths01 {
   width: 100%;
   margin-bottom: 180px;
 }
   
.strengths02 {
    width: 100%;
}

.strengths05 {
    margin-bottom: 0px;
    margin-top: 0px;
    font-size: 15px !important;
}

.shoujou04{
  font-size:12px;
  padding: 10px !important;
}

.shoujou01 {
    width: 48% !important;
    margin-right: 15px;
}

.worries03 {
    font-size: 13px;
    margin-top: 2px;
    font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
    width: 89%;
    margin: 3px auto 18px;
    text-align: center;
}

.strengths05{
  padding: 10px 10px 0 !important;
}

.concept03 {
    padding-bottom: 220px !important;
}


.irekae02{
    width: 98%
}

.concept02 {
    position: relative;
    width: 90% !important;
}
}

/* 2022.04.23 */

.zoomoutimg{
opacity: 1;
transform: scale(1);
transition: 3s 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}

.zoomoutimg:hover img {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.imprant02{
  padding-top: 30px !important;
}

.imprant03{
  margin-bottom: -40px !important;
}

.strengths05{
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.strengths05 span{
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

/* 05/23 追記 */

.home .home-concept .inner{
  padding-top: 140px;
}


 @media only screen and (min-width: 1025px){
  
  .concept01 {
    background: #f7f7f7;
    position: absolute !important;
    left: 37rem;
    margin-top: 270px;
    padding: 15px 60px 4px;
    width: 46%;
    margin-left: 50px;
    max-width: 870px;
}}


/* アニメーションスタートの遅延時間を決めるCSS*/

/* .home .delay-time02{
animation-delay: 0.2s;
}

.home .delay-time03{
animation-delay: 0.5s;
}

.home .delay-time04{
animation-delay: 0.9s;
}

.home .delay-time05{
animation-delay:1.3s;
}



.home .box{
  opacity: 0;
}



 



@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}  */

.home .fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
 opacity: 0; 
}

.txtTransform01 .fadeUp {
  display: inline-block;
  -webkit-transition: 1.2s;
  transition: 1.2s;
  opacity: 0;
  -webkit-transform: translate(0px, 50px);
  transform: translate(0px, 50px);
  line-height: inherit;
}

.txtTransform01.animate01 .fadeUp {
  opacity: 1 !important;
  -webkit-transform: translate(0, 0) !important;
  transform: translate(0, 0) !important;
}

.txtTransform01 .fadeUp:nth-child(1) {
  -webkit-transition-delay: calc(0.05s * 4 + 0.4s);
  transition-delay: calc(0.05s * 4 + 0.4s);
}

.txtTransform01 .fadeUp:nth-child(2) {
  -webkit-transition-delay: calc(0.05s * 1 + 0.4s);
  transition-delay: calc(0.05s * 1 + 0.4s);
}

.txtTransform01 .fadeUp:nth-child(3) {
  -webkit-transition-delay: calc(0.05s * 8 + 0.4s);
  transition-delay: calc(0.05s * 8 + 0.4s);
}

.txtTransform01 .fadeUp:nth-child(4) {
  -webkit-transition-delay: calc(0.05s * 4 + 0.4s);
  transition-delay: calc(0.05s * 4 + 0.4s);
}

.txtTransform01 .fadeUp:nth-child(5) {
  -webkit-transition-delay: calc(0.05s * 3 + 0.4s);
  transition-delay: calc(0.05s * 3 + 0.4s);
}



@media only screen and (max-width: 599px){
  
  .pos-r{
  position: relative;
}


  .concept01 {
    background: #f7f7f7;
    position: absolute !important;
    left: -10px;
    margin-top: 0;
    padding: 20px 28px 0px;
    width: 87%;
    top: 450px;
    z-index: 99999;
}  

.irekae02 {
   /*  position: absolute;
   margin-top: -360px; */
    width: 100%;
}
}


/* 2022.07.07 */

/* .strengths01{
  height: 340px !important;
} */

.strennn{
  width: 40% !important;
}

.strentext{
  width: 60% !important;
}

.strenimggg{
  height: 340px !important;
}

.okivierlogo{
  width: 350px !important;
}

.okivierlogo img{
  max-height: 160px !important;
    width: 100%;
}

/* .oliviergnavi{
  width: 65% !important;
} */

.footerlogooo{
  width: 60%;
}

.footerlogooo img{
  width: 100% !important;
}


/* 2022.07.08 */

.setsumeitxt01{
  border: 4px solid #fff !important;
}

.konkan01{
  margin-bottom: 70px;
}

.shonihanarabi01{
  margin-top: 60px;
}



.strennn{
  width: 100% !important;
}

.strenimggg{
  height: 240px !important;
}

.strentext{
  width: 100% !important;
}

.textfilter{
      filter: drop-shadow(2px 4px 6px black);
}

@media only screen and (max-width: 599px){
  .fix-bottom .tel {
  width: 60%;
  background: #1c6f61;
  font-size: 14px;
  text-align: left;
}

.fix-bottom .contact {
  width: 35%;
  color: #505050;
}
.fix-bottom .contact a {
  width: 110%;
}
.fs8{
  font-size: 8px;
}
}
/* 追記 */
.r{
  display: inline-block;
}

@media only screen and (max-width: 599px){
  .r{
    display: block;
  }
}


/* 0915 追記 */

@media only screen and (max-width: 1024px){
 .totop {
    right: 10px;
    bottom: 120px;
} 
}

.home .home-concept .w48.concept01{
  z-index: auto !important;
}

/* 01007 追記 */
.txtdeco{
color: #1c6f61!important;
    font-size: 25px;
    right: 9%;
  
}
@media only screen and (max-width: 599px){
  .lh76{
    line-height: 76%;
  }
  .mt3{
    margin-top: 3%
  }
}

.fa-instagram:before {
    content: "\f16d";
}
.fab {
    font-family: Font Awesome\ 5 Brands;
}
.fa-3x {
    font-size: 3em;
}
.fa-instagram:before {
    content: "\f16d";
}
.fs250{
  font-size: 250%;
}
.prtp7{
  position: relative;
    top: 7px;
}
.tal{
  text-align: left!important;
}
.txtim{
      color: #1c6f61!important;
    font-size: 16px;
}
.pb20{
  padding-bottom: 20px!important;
}

/* @media screen and (max-width:599px) {
    .home-insta .strength_li li:first-of-type{
     height: 420px !important;
}

    .home-insta .strength_li li:first-of-type .title{
     margin-top: 15px !important;
}

    .home-insta .strength_li li:nth-of-type(3){
     height: 420px !important;
}

    .home-insta .strength_li li:nth-of-type(3) .title{
     margin-top: 15px !important;
}
    .home-insta .strength_li li:last-of-type{
     height: 420px !important;
}

    .home-insta .strength_li li:last-of-type .title{
     margin-top: 15px !important;
}

}

 */
/*10/14 追記 */
.r{
  display: inline-block;
}

@media only screen and (max-width: 599px){
  .r{
    display: block;
  }
}
@media screen and (min-width:1024px) {

.lt20{
  left: 20%;
}
.txtdeco {
    color: #1c6f61!important;
    font-size: 40px;
}
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
.up-w-100%@tb {
  width: 100%;
}
}

@media only screen and (max-width: 599px){
 .home-etc li {
    position: relative;
    width: 100%;
    margin: 1%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
}

 /* 11/10追記 */
 .innertxt {
    border: 1px solid #41988b;
    padding: 2px;
    margin: auto;
 }
 .inner2 {
  width: 92%;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 100px!important;
}
.snsicn{
position: fixed;
    right: 240px;
    bottom: 15px;
    z-index: 200;
    width: 40px;
    height: 40px;
    text-align: center;
    font-size: 20px;
    line-height: 40px;
    cursor: pointer;
/*    background-image: url(http://www.olivier-dentalclinic.com/upload/tenant_1/f0dc0f81173de072186dd8646de606ba.png);*/
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
}
@media only screen and (min-width: 1025px){
.pc-none{
  display: none!important;
}
}


.movie {
    max-width: 810px;
    width: 100%;
    margin: auto;
}

.ht537{
  height: 455px;
}
@media screen and (max-width:599px) {
.sp-none{
  display: none!important;
}
.spsns{
  height: 250px;
    margin-bottom: 10%;
}
.pc-none{
  display: block;
}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
.tbsns{
height: 326px;
    max-width: 580px;
    padding-bottom: 2%;
    margin: auto;
}
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
.sp-none{
  display: none!important;
}
}
.pt3{
  padding-top: 3%;
}

.sp_sns{
  position: relative;
  right: 70%;  
}
@media only screen and (max-width: 1024px){
  .gnav .list02.fs14 {
font-size: 14px;
    
  }
}
 /* 12/08追記 */
.pb0{
  padding-bottom: 0!important;
}
.tac{
  text-align: center;
}
.movie_top{
max-width: 810px;
width: 100%;
margin: 1% auto;
}
@media only screen and (min-width: 1025px){
.tp_ytube{
height: 301px;
width: 50%;
position: relative;
left: 26%;
}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
.tp_ytube{
height: 301px;
width: 50%;
position: relative;
left: 26%;
}
}
@media screen and (max-width:599px) {
.movie_top{
 height: 150px;
 position: relative;
 left: 10%;
}
.sp_fs12{
  font-size: 12px;
}
}  
/* 追記 */
.r{
  display: inline-block;
}

@media only screen and (max-width: 599px){
  .r{
    display: inline-block;
  }
  .mg0{
  margin: 0 auto;
  }
}
.pb3{
  padding-bottom: 3%;
}


.blogday{
  padding-bottom: 20px !important;
}

.blogimg{
  width: 50%;
    margin-bottom: 20px;
}

@media only screen and (max-width: 599px){
  .blogimg {
    width: 100%;
    margin-bottom: 0px;
}

.muryosodan01 {
    font-size: 20px !important;
}
}

.muryosodan00{
  position: absolute;
}

.muryosodan01 {
    font-size: 18px;
    top: -32px;
    position: relative;
    right: 7px;
}

.muryokyoseibanar{
  padding-top: 40px;
}

.muryosodan00 {
    padding-top: 60px;
}

.jisshichubanar{
  padding-top: 60px;
}

.topbanarimg{
  margin: 10px auto;
}

@media only screen and (max-width: 599px){
.muryokyoseibanar {
    padding-top: 0;
}

.medicalbanar01{
  margin-bottom: 15px !important;
}
}

/* 2023/04/06追記 */
.clinic02 .twrap {
    margin-top: 20px;
}

.performance-wrap {
    position: relative;
}

.performance-wrap .box {
    position: relative;
}

.performance-wrap .box + .box {
    margin-top: 50px;
}

.performance-wrap .box .tit {
    border-bottom: 2px solid #1c6f61;
    padding-bottom: 10px;
    position: relative;
}

.performance-wrap .box .txt {
    position: relative;
    padding-left: 1em;
    padding-top: 0;
}

.performance-wrap .box .txt:before {
    content: "・";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.performance-wrap .box .txt + .txt {
    margin-top: 10px;
}

.performance-wrap .box .tit {
    position: relative;
    font-size: 20px;
}

.performance-wrap .box .tit:after {
    content: "\f067";
    font-family: "font awesome 5 Free";
    font-weight: bold;
    position: absolute;
    top: 0;
    right: 10px;
    color: #1c6f61;
}

.performance-wrap .box .tit.is-parent:after {
    content: "\f068";
}

.performance-wrap .box .tbox {
    display: none;
}

[data-element-id].performance-wrap .box .tbox {
    display: block;
}

@media (max-width:599px) {
  .performance-wrap .box .tit {
    font-size: 18px;
  }
}

/* 2023.4.28追記
 */
.strength_li a {
  height: 100%;
}

.strength_li [class*=up-ofi] {
  height: 100%;
}


/* 2023.05.16 */

.timetable {
    position: absolute;
    width: 413px;
    /* top: 74%; */
    right: 1%;
    bottom: 15px;
    width: 95%;
    max-width: 420px;
    margin: auto;
}

.circle01{
  position: absolute;
  width: 150px;
  height: 150px;
  line-height: 200px;
  background-color: #41988b;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  bottom: 15px;
    left: 1%;
}

.circle01 p{
  color: #fff;
    line-height: 1.6;
    text-align: center;
    margin-top: 47px;
    font-weight: bold;
}

.anderlogotxt{
 white-space: nowrap;
    font-size: 12px;
    margin-left: 10px;
}


@media only screen and (max-width: 1024px){
.timetable {
    position: static;
    width: 413px;
    /* top: 74%; */
    right: 1%;
    bottom: 15px;
    width: 95%;
    max-width: 770px;
    margin: auto;
}

.circle01 {
    position: absolute;
    width: 150px;
    height: 150px;
    line-height: 200px;
    background-color: #41988b;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    bottom: 0;
    left: 1%;
    top: 10px;
}
}


@media (max-width:599px) {
.timetable {
    position: static;
    width: 413px;
    /* top: 74%; */
    right: 1%;
    bottom: 15px;
    width: 94%;
    max-width: 770px;
    margin: auto;
}

.anderlogotxt {
    width: 353px;
    font-size: 12px;
    margin-left: 0px;
}

.circle01 {
    position: absolute;
    width: 95px;
    height: 95px;
    line-height: 200px;
    background-color: #41988b;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    bottom: 0;
    left: 1%;
    top: 4px;
}

.circle01 p {
    color: #fff;
    line-height: 1.0;
    text-align: center;
    margin-top: 35px;
    font-weight: bold;
    font-size: 12px;
}
}


/* 2023/06/22 追記 */


.category-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.category-list li{
    text-align: center;
    width: 40%;
    border: 1px solid #41988b;
    padding: 25px;
    font-size: 20px;
    transition: 0.25s ease-in;
    background-color: #41988b;
}

.category-list li:hover{
  background-color: #fff;
}

.category-list li:hover a{
  color: #41988b;
}

.category-list li:nth-of-type(-n+2){
  margin-bottom: 5%;
}

.category-list li a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px;
}

.mb-50{
  margin-bottom: 50px;
}

.case-content{
  margin-bottom: 100px;
}


.case-content .img-list{
    display: flex;
    justify-content: space-between;
}

.case-content .img-list li{
  width: 45%;
}

.case-content .img-list li img{
  width: 100%;
}

.case-content .mb20{
  margin-bottom: 20px;
}

.case-content .green-txt.mbi20{
  margin-bottom: 20px !important;
}

.case-content .mbi-15{
  margin-bottom: 15px !important;
}

.case-content .fz20{
  font-size: 20px;
}

.case-content .mbi-0{
  margin-bottom: 0px !important;
}

.case-content .fw-b{
  font-weight: bold;
}

.case-content .green-txt {
    width: 80%;
    color: #1c6f61;
    border-bottom: 1px solid #1c6f61;
    margin-bottom: 10px !important;
}

@media only screen and (max-width: 599px){
  
  .case-content {
    margin-bottom: 50px;
}

  .category-list li{
    padding: 10px;
    width: 43%;
  }
  
  .category-list li a{
    font-size: 16px;
  }
  
  .case-content .fz20 {
    font-size: 16px;
}

.case-content .detail-txt{
      font-size: 14px;
    line-height: 1.8em;
}

}

@media only screen and (max-width: 599px){
.fix-bottom .timetable a {
    background: #eee;
    display: inline-block;
    border-radius: 5px;
    font-weight: bold;
    font-size: 14px;
    line-height: 2;
}

.fix-bottom .timetable{
  width: 48% !important;
}

.fix-bottom .contact{
  width: 48%;
}

.fix-bottom .tel {
    width: 40%;
    background: #1c6f61;
    font-size: 14px;
    text-align: left;
}

.fix-bottom .timetable {
    width: 30% !important;
}

.fix-bottom .timetable a{
  width: 100%;
  position: relative;
}

.fix-bottom .timetable a:before{
    margin-right: 5px;
    content: "\f017";
    font-weight: 600;
    font-family: "Font Awesome 5 Free";
}

.fix-bottom .contact a{
    width: 100% !important;
}

.fix-bottom .contact {
    width: 30%;
    height: min-content;
    display: flex;
}

.fix-bottom .tel a{
  font-size: 13px;
}

.mainimg .timetable{
  display: none !important;
}


.mainimg .main_imglogo {
    top: 65% !important;
}
}

.case-content {
  display: block;
}
.case-content.hidden {
  display: none;
}

.category-list li  {
    color: #fff;
}

.category-list li:hover{
  color: #41988b;
}

@media only screen and (max-width: 599px){
  .category-list li  {
    font-size: 16px;
}
}

/* 2023/08/09 追記 */

@media only screen and (min-width: 1025px){
  #gnav .item01>a, #gnav .item01>span{
 padding: 10px 5px !important; 
}  
}

.satelite {
  margin-top: 30px
}

@media (min-width: 600px) {
  .satelite {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}

.expense-deduction-table {
    width: 100%;
    border: 1px solid  #41988b;
}

.expense-deduction-table tr{
  border-bottom: 1px solid  #41988b;
}

.expense-deduction-table th {
    font-weight: 400;
    background-color:  #41988b;
    color: #fff;
    line-height: 1.4;
    padding: 10px;
    border-right: 1px solid  #41988b;
    vertical-align: middle;
}

.expense-deduction-table td{
  padding: 10px 5px;
  border-right: 1px solid  #41988b;
}

.expense-deduction-table .boder-right-none{
  border-right: none;
}

.pti-0{
  padding-top: 0px !important;
}

/* 10/11 追記 */

.expense-deduction .blue-link-txt a {
    color: #0077dd;
    border-bottom: 1px dashed;
}

.expense-deduction b{
  color: #41988b;
}

.expense-deduction ul.up-mb-10{
    border: 1px dashed #41988b;
    padding: 10px;
    margin: 10px auto;
}

.expense-deduction ul.up-mb-10 li{
    color: #41988b;
    font-weight: bold;
}

.attention-list li:first-of-type {
    position: relative;
    padding-left: 52px;
    text-indent: 0px;
}

.attention-list li:last-of-type {
    margin-top: 10px;
    position: relative;
    padding-left: 50px;
    text-indent: 0px;
}

.attention-list li:first-of-type ::before {
    content: "注1：";
    position: absolute;
    top: 0px;
    left: 0px;
    color: red;
    font-weight: bold;
}

.attention-list li:last-of-type ::before {
    content: "注2：";
    position: absolute;
    top: 0px;
    left: 0px;
    color: red;
    font-weight: bold;
}



@media only screen and (min-width: 600px){
.expense-deduction .dir_box{
    width: 80%;
    margin-right: auto;
    margin-left: auto;
}

.expense-deduction .w45{
  width: 30%;
}

.expense-deduction .w50{
  width: 65%;
}  
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
.expense-deduction .dir_box {
    width: 90%;
}

.expense-deduction .w45 {
    width: 35%;
}

.expense-deduction .w50 {
    width: 55%;
}
}

/* 12/08 追記 */

@media screen and (min-width:1025px) {
.up-ofi-24pc{
  position: relative;
}

.up-ofi-24pc img{
  	position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: cover;
}

.up-ofi-24pc:after {
    content: "";
    display: block;
    padding-top: 24%;
}
}


@media screen and (min-width:600px) and (max-width:1024px) {
.up-ofi-20tb{
  position: relative;
}

.up-ofi-20tb img{
  	position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: cover;
}

.up-ofi-20tb:after {
    content: "";
    display: block;
    padding-top: 20%;
}
}

@media screen and (max-width:599px) {
 .up-ofi-35sp{
  position: relative;
}

.up-ofi-35sp img{
  	position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: cover;
}

.up-ofi-35sp:after {
    content: "";
    display: block;
    padding-top: 35%;
}
}

.f-reccomend-img{
  display: flex;
    width: 80%;
    margin-top: 45px;
    margin-right: auto;
    margin-left: auto;
}

.f-reccomend-img li{
  width: 48%;
  background-color: #fff;
}

.f-reccomend-img li span{
  font-size: 13px;
}

@media screen and (max-width:599px) {
.f-reccomend-img li div{
  line-height: 1.1rem;
} 

.f-reccomend-img li span{
  font-size: 11px;
}
}

/* 2023/12/11 追記*/

@media screen and (max-width:375px) {
.fix-bottom .tel a {
    font-size: 11px !important;
}

.fix-bottom .timetable a {
    font-size: 11px;
}

.fix-bottom .contact a {
    font-size: 11px;
}
}

@media screen and (max-width:599px) {
 .f-reccomend-img{
  flex-direction: column;
  row-gap: 20px;
 }
 
 .f-reccomend-img li{
   width: 100%;
 }
 
 
}

/*TOPインプラント無料相談*/
.home-etc .muryosodan00 {
  width: calc(100% - 40px);
  font-size: 24px;
  font-weight: normal;
  font-family: "Libre Baskerville", "YuMincho", "Yu Mincho", "游明朝体",
    "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  line-height: 130%;
  margin-bottom: 0;
  text-align: left;
  position: absolute;
  top: 50%;
  left: 20px;
  z-index: 10;
  transform: translateY(-50%);
}

@media only screen and (max-width: 599px) {
  .home-etc .muryosodan00 {
    font-size: 14px;
  }
}

/*****ブログ下カード*****/
.blog-under {
  background: #fff;
}
.incho-box {
 display: flex; 
 padding: 2%;
 margin-top: 30px;
}
.incho-box .img {
  width: 30%;
}
.incho-box .img p {
  text-align: center;
  margin-bottom: 10px;
  background: #ddd8d4;
  font-size: 18px;
  font-weight: bold;
}
.incho-box .img .img-in {
  width: 40%;
  margin: auto;
}
.incho-box .img .img-in img {
  border-radius: 50%;
}
.incho-box .img .name {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
}
.incho-box .txt {
  width: 68%;
  padding-left: 2%;
  border-left: 2px solid #ddd8d4;
  margin-left: 2%;
}

.biography {
  padding: 1% 2% 2%;
}
.biography > ul {
  display: flex;
}
.biography > ul > li {
  width: 50%;
}
.biography > ul > li > div {
  font-size: 20px;
  font-weight: bold;
}

@media only screen and (max-width: 599px) {
  .incho-box {
    display: block;
  }
  .incho-box .img {
    width: 90%;
    margin: 0 auto 10px;
  }
  .incho-box .txt {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    border-left: none;
    padding-top: 0;
    padding-left: 0;
  }
  
  .biography > ul {
    display: block;
  }
  .biography > ul > li {
    width: 90%;
    margin: 0 auto 10px;
  }
  .biography > ul > li > div {
    font-size: 18px;
  }
}

/**20240618**/
.mt30 {
  margin-top: 30px;
}
.mb30 {
  margin-bottom: 30px;
}
.denture h2 {
  font-weight: bold;
}
.denture h3 {
  margin-bottom: 30px;
}
.denture h3.under {
  font-size: 24px;
  padding: 0.2rem 1.5rem; 
  position: relative;
  text-align: center;
}
.denture h3.under span {
  font-size: 24px;
  display: block;
}
.denture h3.under:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 3px;
  content: '';
  border-radius: 3px;
  background: #1c6f61;
}
.faqlist .right dt h3 {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin-bottom: 0;
  font-weight: bold;
}
.denture .nayami_list li.box:not(:last-of-type) {
  margin-bottom: 10px;
}

@media (max-width: 1024px){
  .denture .explain01 .ttl-cmn02 {
    padding-left: 0;
  }
}

@media (max-width: 599px){
  .denture h3.under {
    font-size: 20px;
  }
  .denture .nayami_list li.box:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .denture .explain01 .boxlist .box>div {
    flex-direction: column-reverse;
  }
}

/**2024/10/16 SP固定ボタン変更等**/
#cx-insert-implant {
  display: flex;
}

@media only screen and (max-width: 1024px) {
  #cx-insert-implant {
    display: block;
  }
}

@media only screen and (max-width: 599px) {
  .fix-bottom .timetable {
    width: 70% !important;
  }
}

/**2025/01/21**/
.fs45 {
  font-size: 45px;
}
.example {
  border: 1px solid #207a6c;
  padding: 2.5%;
  
}

.example ul li {
  margin-bottom: 20px;
}
.example ul li .h4s {
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #207a6c;
  color: #207a6c;
}

@media (max-width: 1024px){
  .fs45 {
    font-size: 34px;
  }
}

@media (max-width: 599px){
  .fs45 {
    font-size: 22px;
  }
  span.lb {
    display: inherit;
  }
  .example ul li .h4s {
    font-size: 18px;
  }
  
  
.sp-tel a{
  font-size: 16px !important;
}

.sp-web{
  width: 43% !important;
}

.sp-tel{
  width: 55% !important;
}

.fix-bottom .item {
    padding: 8px 5px 5px;
}
}

/* 2025/02/08 */
.inprant01.ver02{
  border: 5px solid #1c6f61;
  margin-bottom: 100px;
  position: relative;
}

.inprant01.ver02::after{
  content: "▼";
  color: #1c6f61;
  display: block;
  position: absolute;
  bottom: -75px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  font-size: 50px;
  line-height: 50px;
}

.inprant01.ver02.lastchild::after{
  content: none;
}

.inprant01-ttl{
  font-size: 22px;
  background-color: #1c6f61;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  display: flex;
  padding-top: 15px;
  padding-bottom: 10px;
}

.inprant01-ttl .deco{
  margin-right: 1em;
  padding-right: 1em;
  padding-left: 1em;
  border-right: 1px solid;
  color: #fff;
  flex-shrink: 0;
}

.inprant01-ttl .main{
  color: #fff;
}

.case-content+.case-content{
  margin-bottom: 0;
}

.home .home-concept .inner.innerver02 {
    padding-top: 100px;
}

.case-content.ver02 .img-list{
    min-height: 240px;
}

.case-content.ver02 .img-list li {
    width: 75%;
}

.nayami_list.ver02 li:nth-of-type(even) .ttl01 {
    flex-direction: row;
}

.nayami_list.ver02 li:nth-of-type(even) .ttl01 .num {
    padding-left: 0;
    padding-right: 10px;
}

@media(max-width:1024px){
.case-content.ver02 .img-list{
    min-height: 180px;
}

.nayami_list.ver02 .flex{
  flex-wrap: nowrap;
}

.nayami_list.ver02 .ttl01 .num {
    flex-shrink: 0;
}
}

@media(max-width:599px) {
.inprant01.ver02{
  margin-bottom: 50px;
}

.inprant01.ver02::after{
  bottom: -45px;
  font-size: 25px;
  line-height: 25px;
}
  
.inprant01-ttl{
  display: block;
  padding: 20px;
}

.inprant01-ttl .deco{
  margin-right: 0;
  padding-right: 0;
  padding-left: 0;
  border-right: none;
  line-height: 1.5;
}

.inprant01-ttl .main{
  line-height: 1.5;
}

.home .home-concept .inner.innerver02 {
  padding-top: 30px;
}

.case-content.ver02 .img-list{
    min-height: 0;
}

.case-content.ver02 .img-list li {
    width: 80%;
}

    .nayami_list .ttl01 {
        text-align: left;
    }
}

.inp-incho{
  padding-top: 0px !important;
    margin-top: -30px;
}

/* 2025/03/03 */
.list-trouble{
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.list-trouble li{
  display: flex;
  align-items: center;
  background-color: #fff;
  padding: 1em;
  width: calc( (100% - 1em) / 2 );
}

.list-trouble li::before{
  content: "\f14a";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: 1;
  font-size: 2em;
  margin-right: 1em;
}

.explain01 .list-trouble li:nth-of-type(even) {
  flex-direction: initial;
}

.list-case-container .case-content{
  width: calc( (100% - 20px) / 3);
}

.case-content.ver03 .img-list {
  height: 260px;
}

.case-content.ver03 .img-list li {
  width: 80%;
}

.list-rootcare li{
  border: 1px solid #1c6f61;
  padding: 20px;
  background-color: #fff;
}

.list-rootcare li+li{
  margin-top: 50px;
} 

.list-rootcare .ttl{
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  font-size: 20px;
  padding-left: 0.5em;
  border-left: 5px solid #1c6f61;
}

@media(max-width:1024px){
.case-content.ver03 .img-list {
  height: auto;
}

.list-case-container .case-content{
  width: 100%;
}

.list-case-container .case-content+.case-content {
  margin-top: 50px;
}
}

@media(max-width:599px) {
.list-trouble li{
  width: 100%;
}

.list-case-container .case-content{
  margin-bottom: 0px;
}

.list-case-container .case-content+.case-content {
  margin-top: 20px;
}

.list-rootcare li+li{
  margin-top: 30px;
} 
}

/* 2025/04/09 */
.sp-br{
  display: none;
}

@media(max-width:599px) {
.sp-br{
  display: block;
}    
}

/* 2025/04/09 */
.list-trouble-top{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.list-trouble-top li{
  width: calc((100% - 50px) / 6);
  box-shadow: 3px 3px 1px #ccc;
  border-radius: 5px;
}

.list-trouble-top li .box01{
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 0;
}

.list-trouble-top li .box01 .imgwrap{
  width: 50px;
}

.list-trouble-top li .box02{
  background-color: #41988b;
  text-align: center;
  line-height: 1.5;
  font-size: 14px;
  padding: 1em 0;
  color: #fff;
}

.list-kodawari-top .ttl{
  display: flex;
  align-items: flex-end;
  font-size: 1.5em;
  border-top: 1px solid #000;
  padding-top: 1em;
}

.list-kodawari-top .ttl .num{
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.list-kodawari-top .ttl .txt{
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
}

.list-kodawari-top .ttl .num{
  margin-right: 1.5em;
  flex-shrink: 0;
  font-weight: bold;
}

.list-kodawari-top .item.ver02{
  width: 48%;
  margin-top: 50px;
}


@media(max-width:1024px){
.list-trouble-top li{
  width: calc((100% - 30px) / 4);
}

.list-kodawari-top .item.ver02{
  width: 100%;
}
}

@media(max-width:599px) {
.list-trouble-top li{
  width: calc((100% - 10px) / 2);
}

.list-kodawari-top .ttl{
  font-size: 1.2em;
}
}

/* 2025/04/24 */
.list-orthodontics li{
  border: none;
  border-radius: 0;
  padding: 0;
  text-indent: -1em;
  padding-left: 1em;
}

.list-orthodontics li::before{
  content: "・";
}

.list-orthodontics li+li{
  margin-top: 0.25em;
}

.ttl-orthodontics {
    font-size: 24px;
    font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
    color: #1c6f61;
}

.txt-orthodontics {
    margin-bottom: 50px;
}


@media(max-width:599px) {
.case-content.orthodontics .green-txt {
    width: 100%;
}

.case-content.orthodontics .img-list {
    display: flex;
    justify-content: center;
}

.ttl-orthodontics {
    font-size: 18px;
}
}

.mp-12{
padding: 90px 0px 0;
    margin-bottom: -12rem;
}

@media(max-width:1024px) {
.mp-12 {
    padding: 90px 0px 0;
    margin-bottom: -6rem;
}
}

@media(max-width:599px) {
.mp-12 {
    padding: 70px 0px 0;
    margin-bottom: -2rem;
}
}


.container {
  width: 100%;
  max-width: 640px; /* 最大幅だけ指定して伸縮させる */
  margin: 0 auto;
}


@media screen and (max-width: 768px) {
  .fix-bottom02 {
    position: fixed; 
  }
}

/* 2025/05/10 */

@media screen and (max-width:599px) {
.en .footer-bottom .bkpic {
  width: 100% !important;
} 
}


.jp-en-btn{
  margin-left: 34px;
    font-weight: bold;
}


@media(max-width:1024px) {
  .jp-en-btn{
    display: none;
  }
  
  
.footer-jpen{
  bottom: 84px;
        width: 100px;
        background: #fff !important;
        margin-left: 5px;
        display: flex;
        align-items: center;
        font-size: 21px;
}
}


@media(max-width:599px) {
.footer-jpen {
        bottom: 69px;
        width: 80px;
        background: #fff !important;
        margin-left: 5px;
        display: flex;
        align-items: center;
        font-size: 14px;
        justify-content: space-around;
    }
    
.jp-en-02{
  right: 10px;
    left: 74%;
}
}

/* 2025/05/26 */
.inprant01.ver03{
  margin-bottom: 0;
}

.nayami_list.ver02 li.box:nth-of-type(even)>div.row {
  flex-direction: row;
}

.list-up li{
  padding-left: 1em;
  text-indent: -1em;
}

.list-up li::before{
  content: "・";
}

@media(max-width:1024px){
.explain01 .ttl-cmn02.nopadding {
    padding-left: 0;
}    
}

@media(max-width:599px) {
.nayami_list.ver02 li .ttl01 .num.nomargin {
  margin: initial;
}    
}


/* 2025.05.27 */

.shojo-img{
  display: flex;
    justify-content: space-between;
    margin-top: 2rem;
}

.shojo-img div{
  width: 19%;
}

.preortho{
  padding-top: 0 !important;
}

.preortho-merit{
  width: 58%;
    margin: 0 auto 20px;
}

.preortho-img{
  width: 90%;
    margin: auto;
}

.preortho-video{
  width: 90%;
    margin: 2rem auto 0;
}





@media(max-width:1024px){
.preortho-merit {
    width: 80%;
    margin: 0 auto 20px;
}
}




@media(max-width:599px){
.shojo-img {
 margin-top: 1rem;
  flex-wrap: wrap;
    }

.shojo-img div {
    width: 48%;
    margin-bottom: 20px;
}

.preortho-merit {
  width: 90%;
}

.preortho-img, .preortho-video{
    width: 100%;
}
}


/* 2025/07/16 */
.implant_catchcopy{
  font-size: 30px;
  padding-right: 100px;
  z-index: 1;
  width: auto;
  position: absolute;
  right: 0;
  bottom: 10%;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
  color: #fff;
  mix-blend-mode: difference;
}

.bg-parent {
  position: relative;
}

.bg-content {
  position: relative;
  z-index: 1;
}

.bg-image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.5;
}

.bg-image img {
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.list__02 .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: solid 2px #fff;
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.3);
}

.list__02 .list-item .text{
  font-size: 14px;
  padding: 20px;
  text-align: center;
  font-weight: bold;
  font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;  
}

.list__02 .list-item::before {
  content: "";
  display: block;
  padding-top: 100%;
}

.explain01.ver02 li:nth-of-type(even) {
  flex-direction: row;
}

.faqlist.verimp li {
  margin-bottom: 30px;
}

@media(max-width:1024px){
.implant_catchcopy{
  font-size: 24px;
  padding-right: 50px;
}    
}

@media(max-width:599px){
.implant_catchcopy{
  font-size: 12px;
  padding-right: 15px;
}    
}
    
