@charset "UTF-8";
:root {
  --wp--preset--color--vk-color-primary: #796924;
}

/* フォント定義 ------------------------------------------------------------------------ */
@font-face {
  font-family: "shippori-mincho";
  src: url("../font/shippori-mincho/ShipporiMincho-Regular.ttf") format("truetype");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "shippori-mincho";
  src: url("../font/shippori-mincho/ShipporiMincho-Medium.ttf") format("truetype");
  font-display: swap;
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "shippori-mincho";
  src: url("../font/shippori-mincho/ShipporiMincho-SemiBold.ttf") format("truetype");
  font-display: swap;
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "shippori-mincho";
  src: url("../font/shippori-mincho/ShipporiMincho-Bold.ttf") format("truetype");
  font-display: swap;
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "shippori-mincho";
  src: url("../font/shippori-mincho/ShipporiMincho-ExtraBold.ttf") format("truetype");
  font-display: swap;
  font-weight: 800;
  font-style: normal;
}
/* 共通 --------------------------------------------------------------- */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

body {
  background: #FFF;
  font-size: 16px;
  background: url(../images/dust_ps.jpg);
  background-color: rgba(255, 255, 255, 0.3);
  background-blend-mode: lighten;
  overflow-x: hidden;
}

*, body, .post h2, .post h2 span, .post h3, .post h3 span, .entry-title, .post .entry-title {
  font-family: "shippori-mincho", "游明朝", "YuMincho", "HG明朝B", "ＭＳ 明朝", "MS PMincho", serif;
}

body, .post h2, .post h2 span, .post h3, .post h3 span, .entry-title, .post .entry-title {
  color: #333333;
  line-height: 1.5em;
}

h2, body.page h2, body.single h2 {
  background: none;
  border: none;
  font-size: clamp(2rem, 1.8049rem + 0.8917vw, 2.875rem);
  font-weight: 500;
  text-align: center;
  line-height: 1.2em;
  margin: 1.8em 0 0.5em;
  padding: 0;
  letter-spacing: 0.1em;
}
h2:first-child, body.page h2:first-child, body.single h2:first-child {
  margin-top: 0;
}

body.home h2, body.home body.page h2 {
  font-size: clamp(1.875rem, 1.7914rem + 0.3822vw, 2.25rem);
}

h3, body.page h3, body.single h3 {
  border-bottom: 1px solid #333333;
  font-size: clamp(1.4375rem, 1.34rem + 0.4459vw, 1.875rem);
  padding: 0.3em 0.4em;
  font-weight: 500;
  margin-top: 1.4em;
}
h3:first-child, body.page h3:first-child, body.single h3:first-child {
  margin-top: 0;
}

body.page h4, body.single h4, body.post h4 {
  padding: 0.4em 0.8em 0.5em;
  text-align: unset;
  font-size: clamp(1.25rem, 1.1803rem + 0.3185vw, 1.5625rem);
  color: #ffffff;
  border: none;
  background: rgb(165, 157, 140);
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-weight: 500;
}

body.home .osusumeBlock h4 {
  padding: 10px 12px 10px;
  text-align: unset;
  font-weight: bold;
  font-size: 1.1em;
  border-bottom: 4px #4e4e4e dotted;
  margin-top: 0;
  margin-bottom: 14px;
  background: none;
}

ul {
  list-style-type: circle;
}

a {
  text-decoration: none;
  color: #333333;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  border-bottom: 1px dotted;
}

a:hover {
  color: #ab9d6a;
}

p {
  padding: 0;
  margin: 6px min(10px, 0.5vw) 12px;
}

p, .yellowbox, .graybox, .redbox, #topnews .clearfix dd p, .post ul li, .post ol li, #comments #respond, #comments h4 {
  line-height: 1.5em;
}

figure {
  margin: 16px 0 16px;
}

figure.wp-block-gallery {
  margin-bottom: 12px;
}

figure.wp-block-table {
  margin: 16px 0 12px;
}

img {
  width: auto;
}

.post table tr th, .post table tr td, .wp-block-table tr th, .wp-block-table tr td {
  vertical-align: middle;
  line-height: 1.4em;
}

.post {
  margin: 0;
  padding: 0;
}

.post ul {
  list-style-type: circle;
  padding: 0 0 0 22px;
  margin: 6px 2% 12px;
}

iframe {
  border: none;
}

/* ブロックエディタ全幅対応 */
.alignfull {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

/* ギャラリーブロック */
/* 端数があるとき拡大しない */
.wp-block-gallery.has-nested-images {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.wp-block-gallery.has-nested-images figure.wp-block-image {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 50%;
}

#wrapper {
  width: 100%;
}

.st-main {
  margin: 0;
  background: none;
  padding: 0;
}

.main-content {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 60px;
}

.main-content-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 min(20px, 4vw) 75px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (min-width: 960px) {
  #contentInner {
    float: none;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
  }
}
/* ブロックカスタマイズ ------------------------------------------------------- */
body .wp-block-table table, .post table, table {
  border: none;
  margin-bottom: 4px;
}
body .wp-block-table table thead, .post table thead, table thead {
  border-bottom: 2px solid #333333;
}
body .wp-block-table table thead th, body .wp-block-table table thead td, .post table thead th, .post table thead td, table thead th, table thead td {
  font-weight: 700;
  font-size: 14px;
  text-align: center;
}
body .wp-block-table table tr:nth-child(even), .post table tr:nth-child(even), table tr:nth-child(even) {
  background-color: transparent;
}
body .wp-block-table table th, body .wp-block-table table td, .post table th, .post table td, table th, table td {
  font-size: 16px;
  padding: 1.2em 0.6em;
  border: 1px solid #333333;
}

.wp-block-table.is-style-cus-style-01 {
  margin-top: 0;
  max-width: 600px;
}
.wp-block-table.is-style-cus-style-01 table {
  border-collapse: separate;
  border-spacing: 10px 0px;
}
.wp-block-table.is-style-cus-style-01 th, .wp-block-table.is-style-cus-style-01 td {
  text-align: center;
  padding: 0.6em 0.6em;
  border: none;
  border-bottom: 1px solid #333333;
  font-weight: 600;
  font-size: 18px;
}

/* メディアとテキストブロック */
.wp-block-media-text > .wp-block-media-text__content {
  padding: 0 0 0 8%;
}
.wp-block-media-text.has-media-on-the-right > .wp-block-media-text__content {
  padding: 0 8% 0 0;
}
@media only screen and (max-width: 600px) {
  .wp-block-media-text.is-stacked-on-mobile {
    margin-bottom: 40px;
  }
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
    padding: 0;
  }
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content p {
    padding: 0;
  }
}

.wp-block-media-text__media img {
  -o-object-fit: contain;
     object-fit: contain;
}

.su-custom-gallery-slide a {
  border: none;
}

/* フォーム */
input[type=date], input[type=email], input[type=number], input[type=password], input[type=tel], input[type=text], input[type=url], select, textarea {
  font-size: 1rem;
  border: 1px solid var(--vk-color-border-form);
  border-radius: var(--vk-size-radius);
  padding: 0.8em 1em;
  margin: 0 0 0.5rem;
  width: 100%;
}

input:not([type=checkbox]):not([type=radio]):not([type=submit]), textarea, select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.8em 1em;
}

.wp-block-group.width-mid.center {
  margin: 0 auto;
  text-align: unset;
}
.wp-block-group.width-mid {
  max-width: 800px;
}

.wp-block-group.group-style01 {
  border: 4px dotted #ffaa00;
  padding: 16px 5%;
  border-radius: 20px;
  margin: 36px 0;
  background: #fffaf1;
}

.wp-block-table.nowrap table {
  white-space: nowrap;
}

/* jQuery slick-slider 設定 */
body .slick-slider figure {
  margin: 1em 0.2%;
  max-width: 300px;
  min-height: 430px;
  background: rgb(255, 255, 255);
  padding: 3%;
  -webkit-box-shadow: 6px 6px #4e4e2a;
          box-shadow: 6px 6px #4e4e2a;
}
body .slick-slider a {
  margin: 0 0.4rem;
}
body .skippr-nav-container {
  position: absolute;
  bottom: 25px;
  overflow: auto;
  z-index: 999;
  right: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

header {
  margin: 0 auto;
}
header a {
  border: none;
}
header .sitename {
  padding: 0;
  margin: 0;
}
header .sitename a {
  border: none;
  height: 100%;
  display: inline-block;
  margin: 6px 10px;
}
header .sitename a:hover {
  opacity: 1;
  -moz-opacity: 1;
}
header .sitename a:hover img {
  opacity: 1;
  -moz-opacity: 1;
}
header .smanone ul.menu li {
  display: inline-block;
  height: auto;
  width: auto;
}
header .smanone ul.menu li li a {
  background: #FFF;
  border: none;
  border-bottom: 1px solid #f3f3f3;
}
header .smanone ul.menu li a {
  padding: 8px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  font-size: 16px;
  width: auto;
  font-weight: 500;
  color: #333333;
  background: #FFF;
  border: none;
}
header .smanone ul.menu li a:hover {
  color: #333333;
  background: #fcf7e6;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
header .smanone ul.menu li a i {
  font-size: 0.6em;
  vertical-align: middle;
  position: relative;
  top: -1px;
}

#dsc {
  position: relative;
  width: 100%;
  background: url(../images/bg-osusume.png);
  opacity: 1;
}

#dsc-wrap {
  margin: 0 auto;
  max-width: 1280px;
  color: #FFF;
  font-size: clamp(0.75rem, 0.7221rem + 0.1274vw, 0.875rem);
  padding: 0.3em 20px 0.5em;
}

#st-header {
  max-width: none;
  width: 100%;
}

#st-header img {
  width: 100%;
}

#headbox {
  max-width: 100%;
  width: 100%;
  padding: 0;
  background: #FFF;
  position: relative;
  z-index: 1000;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
}

#headbox-wrap {
  max-width: 1280px;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#headbox-wrap #s-navi {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 5;
}

#header-l, #header-l_page {
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

#st-menubox {
  border: none;
  padding: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 900px;
  margin: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

/* プルダウンメニュー項目幅固定 */
#st-menubox .sub-menu {
  position: absolute;
  top: 55px;
  left: 0;
}

#st-menubox .sub-menu li {
  display: block;
  width: 181px;
}

#st-menuwide {
  padding-bottom: 6px;
  border-bottom: 5px solid #796924;
  margin: 0;
  margin-bottom: 5px;
  width: 100%;
}

#content {
  max-width: none;
}

#st-menuwide ul.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
#st-menuwide ul.menu li {
  float: none;
}

.header-menu-2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
}
.header-menu-2 ul li {
  list-style: none;
  padding: 0;
}
.header-menu-2 ul li.btn a {
  color: #FFF;
  width: 100%;
  height: 100%;
  display: inline-block;
  padding: 4px 3.2em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.header-menu-2 ul li.btn a:hover {
  opacity: 0.8;
}
.header-menu-2 ul li.btn a i {
  color: #FFF;
  font-size: 0.6em;
  vertical-align: middle;
}
.header-menu-2 ul li.btn.yoyaku a {
  background: #7f713c;
}
.header-menu-2 ul li.btn.yoyaku a i {
  color: #FFF;
  font-size: 0.7em;
  vertical-align: middle;
  padding-left: 0.4em;
  position: relative;
  top: -2px;
}
.header-menu-2 ul li.btn.contact a {
  background: #3c5f7c;
}
.header-menu-2 ul li.tel a {
  font-size: 26px;
  line-height: 1em;
  vertical-align: middle;
  margin: 0 20px;
  font-weight: 600;
  border: none;
}
.header-menu-2 ul li.tel a span {
  font-size: 0.6em;
  vertical-align: middle;
  position: relative;
  top: -3px;
  padding-right: 0.5em;
}

.header-menu-2-mobile {
  display: none;
  margin: 20px min(20px, 4vw);
}
@media screen and (max-width: 1199.98px) {
  .header-menu-2-mobile {
    display: block;
    margin: 20px;
  }
  .header-menu-2-mobile ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
  }
  .header-menu-2-mobile ul li {
    list-style: none;
    padding: 0;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .header-menu-2-mobile ul li.btn a {
    color: #FFF;
    width: 100%;
    height: 100%;
    display: inline-block;
    padding: 0.8em 4vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: none;
  }
  .header-menu-2-mobile ul li.btn a:hover {
    opacity: 0.8;
  }
  .header-menu-2-mobile ul li.btn a i {
    color: #FFF;
    font-size: 0.6em;
    vertical-align: middle;
  }
  .header-menu-2-mobile ul li.btn.yoyaku a {
    background: #7f713c;
  }
  .header-menu-2-mobile ul li.btn.yoyaku a i {
    color: #FFF;
    font-size: 0.7em;
    vertical-align: middle;
    padding-left: 0.4em;
    position: relative;
    top: -2px;
  }
  .header-menu-2-mobile ul li.btn.contact a {
    background: #3c5f7c;
  }
}

#headbox.fixed {
  left: 0;
  position: fixed;
  top: 0;
}

/* テーブルの設定 */
.post table.price-table {
  border-top: 1px #999 solid;
  border-right: 1px #999 solid;
}

.post table.price-table .vertical {
  -webkit-writing-mode: tb-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: tb-lr;
  -ms-writing-mode: tb-lr;
      writing-mode: vertical-lr;
  -webkit-writing-mode: vertical-lr;
  letter-spacing: 0.2em;
}

.post table.price-table tr th {
  background: #d4d1cb;
}

.post table.price-table tr td {
  vertical-align: middle;
  text-align: center;
}

/* エントリータイトル */
body.page #st-page .entry-title {
  width: 100%;
  text-align: center;
  background: #796924;
  height: 160px;
  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;
  margin-bottom: 0;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
body.page #st-page .entry-title h1 {
  position: relative;
  padding: 25px;
  margin: 0;
  display: inline-block;
  z-index: 1;
  font-weight: 500;
  font-size: clamp(1.875rem, 1.7914rem + 0.3822vw, 2.25rem);
  color: #FFF;
  letter-spacing: 0.1em;
}
body.page #st-page .entry-title h1::after {
  content: "";
  background: url(../images/page_title_bg_b.png) no-repeat;
  background-position: center;
  background-size: contain;
  width: 80px;
  height: 80px;
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  top: 16%;
  right: -34px;
  z-index: -1;
  opacity: 0.2;
}

/* page */
.summary {
  width: 100%;
  background: #46432e;
  margin-bottom: 50px;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.summary-inner {
  max-width: 980px;
  margin: 0 auto;
  height: 460px;
  position: relative;
}

.summary-inner h2 {
  border: none;
  background: none;
  font-size: 27px;
  color: #FFF;
}

.summary-inner p {
  font-size: 20px;
}

.summary-text {
  height: 380px;
  vertical-align: middle;
  display: table-cell;
  color: #FFF;
}

.summary-inner img:first-child {
  position: absolute;
  top: 17px;
  z-index: 1;
  min-width: 980px;
  height: 428px;
}

.summary-inner img:nth-child(2) {
  position: absolute;
  top: 21px;
  right: 53px;
  z-index: 2;
  width: 169px;
  height: 417px;
}

.page-top-block-wrap {
  position: relative;
  background: #fff;
  padding: min(80px, 10vw) 0;
  margin-bottom: clamp(4.375rem, 3.6783rem + 3.1847vw, 7.5rem);
}

.page-top-block-wrap::after {
  content: "";
  position: absolute;
  bottom: 24px;
  right: 0;
  width: 400px;
  height: 400px;
  background-image: url(../images/page-header01.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.05;
  overflow: hidden;
}
@media screen and (max-width: 991.98px) {
  .page-top-block-wrap::after {
    width: 250px;
    height: 250px;
  }
}

.page-top-block {
  width: 100%;
  padding: 80px 0 100px;
  position: relative;
}

.page-top-block-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2%;
}

.h2-img {
  padding-right: 10px;
}

.h2-img h2 {
  background: none;
  text-align: center;
  margin-bottom: 0;
}

.serviceBlock {
  margin: 60px 0 60px;
}
@media screen and (max-width: 575.98px) {
  .serviceBlock {
    margin-top: 50px;
  }
}
.serviceBlock p {
  font-size: 16px;
  margin: 4px 0 8px 0;
  line-height: 34px;
}
.serviceBlock a {
  border: none;
}

.serviceBlock .service-fr h2 {
  margin: 0 5%;
}

.serviceBlock-cont-inner {
  max-width: 980px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.serviceBlock-cont-inner a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}

.service-img img {
  z-index: 0;
}

.service-fr {
  z-index: 2;
}

.serviceBlock-cont01 {
  padding: 12px 0;
}

.serviceBlock-cont01 .serviceBlock-cont-inner {
  height: 340px;
}

.serviceBlock-cont01 .service-img img {
  position: absolute;
  top: 0;
  left: 0;
}

.serviceBlock-cont01 .service-fr {
  position: absolute;
  top: 110px;
  right: 0;
  background: url(../images/bg-waku01.png) no-repeat;
  width: 507px;
  height: 221px;
}

.serviceBlock-cont01 .service-h2 {
  position: absolute;
  top: -80px;
  right: 40px;
}

.serviceBlock-cont01 .service-text {
  position: absolute;
  top: 57px;
  left: 64px;
  width: 320px;
}

.serviceBlock-cont02 {
  /* background: #f8fbf5; */
  padding: 12px 0;
}

.serviceBlock-cont02 .serviceBlock-cont-inner {
  height: 300px;
}

.serviceBlock-cont02 .service-img img {
  position: absolute;
  top: 0;
  right: 0;
}

.serviceBlock-cont02 .service-fr {
  position: absolute;
  top: 37px;
  left: 28px;
  background: url(../images/bg-waku02.png) no-repeat;
  width: 406px;
  height: 193px;
}

.serviceBlock-cont02 .service-h2 {
  position: absolute;
  top: 22px;
  left: 8px;
}

.serviceBlock-cont02 .service-text {
  position: absolute;
  top: 38px;
  left: 116px;
}

.serviceBlock-cont03 .serviceBlock-cont-inner {
  height: 300px;
}

.serviceBlock-cont03 {
  /* background: #e7ebdb; */
  padding: 12px 0;
}

.serviceBlock-cont03 .service-img img {
  position: absolute;
  top: 0;
  left: 0;
}

.serviceBlock-cont03 .service-fr {
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/bg-waku03.png) no-repeat;
  width: 467px;
  height: 212px;
}

.serviceBlock-cont03 .service-h2 {
  position: absolute;
  top: 18px;
  left: 15px;
}

.serviceBlock-cont03 .service-text {
  position: absolute;
  top: 44px;
  right: 134px;
}

.serviceBlock-bg01 {
  background: url(../images/bg01.png) no-repeat;
  width: 232px;
  height: 436px;
  position: absolute;
  top: -123px;
  left: -182px;
  z-index: 3;
}

.serviceBlock-bg02 {
  background: url(../images/bg02.png) no-repeat;
  width: 169px;
  height: 415px;
  position: absolute;
  top: -86px;
  right: -117px;
  z-index: 3;
}

/* おすすめスライダー slick */
.osusumeBlock {
  background: url(../images/bg-osusume.png);
  margin: 0 calc(50% - 50vw);
}
.osusumeBlock .osusumeBlockInner {
  padding: 16px 0;
}
.osusumeBlock .osusumeBlockInner a.slick-slide {
  display: inline-block;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
  border: none;
}
.osusumeBlock .osusumeBlockInner a.slick-slide:hover {
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}
.osusumeBlock .osusumeBlockInner a.slick-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 0 0;
     object-position: 0 0;
}
.osusumeBlock .osusumeBlockInner .img-wrap {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 200px;
  max-height: 200px;
  min-height: 200px;
}
.osusumeBlock .osusumeBlockInner .slick-text {
  padding: 10px 3%;
  height: 100%;
}
.osusumeBlock .osusumeBlockInner .slick-text h3 {
  font-size: 18px;
}
.osusumeBlock .osusumeBlockInner .slick-text p {
  font-size: 0.9em;
}
.osusumeBlock .osusumeBlockInner .slick-text p:empty:before {
  content: none;
}

.newsBlock {
  max-width: 1360px;
  margin: 0 auto;
}
.newsBlock a {
  border: none;
}
.newsBlock .newsBlockInner {
  max-width: 980px;
  margin: 60px auto 60px;
  padding: 0 min(20px, 4vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 30px;
}
@media screen and (max-width: 767.98px) {
  .newsBlock .newsBlockInner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.newsBlock .newsBlockInner h2 {
  margin-top: 0;
}
.newsBlock .newsBlockInner .news-osusume {
  width: 32%;
  background-color: #FFF;
  padding: 32px min(20px, 5vw);
}
@media screen and (max-width: 767.98px) {
  .newsBlock .newsBlockInner .news-osusume {
    width: 100%;
  }
}
.newsBlock .newsBlockInner .news-osusume p {
  font-size: 0.9em;
  line-height: 1.4em;
}
.newsBlock .newsBlockInner .news-osusume .title-p {
  background: none;
  padding: 0;
  margin: 8px 2% -4px;
  font-size: 1em;
  border-bottom: 1px dotted #a1a1a1;
}
.newsBlock .newsBlockInner .news-osusume .img-wrap {
  position: relative;
  overflow: hidden;
  width: 100%;
  text-align: center;
}
.newsBlock .newsBlockInner .news-osusume .img-wrap img {
  max-width: 400px;
  width: 100%;
}
.newsBlock .newsBlockInner .news-list {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #FFF;
  padding: 32px;
}
@media screen and (max-width: 575.98px) {
  .newsBlock .newsBlockInner .news-list {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media screen and (max-width: 575.98px) {
  .newsBlock .newsBlockInner .news-list ul {
    padding: 0;
  }
}
.newsBlock .newsBlockInner .news-list li {
  list-style: none;
  padding-bottom: 10px;
  border-bottom: 1px solid #CCC;
  margin-bottom: 12px;
}
.newsBlock .newsBlockInner .news-list li a > span {
  display: block;
  font-size: 0.85em;
}
.newsBlock .newsBlockInner .news-list .post-list-btn {
  text-align: right;
  font-size: 0.9em;
}
.newsBlock .newsBlockInner .news-list .post-list-btn i {
  font-size: 0.6em;
  vertical-align: middle;
}

.companyBlock {
  margin-bottom: 30px;
  margin: 0px auto 60px;
}

.companyBlock ul {
  text-align: center;
  margin: 10px 0 26px;
  list-style: none;
}

.companyBlockInner {
  max-width: 980px;
  margin: 0 auto;
}

body.archive #contentInner, body.single #contentInner {
  padding: 0 min(20px, 4vw);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
body.archive #contentInner .st-main, body.single #contentInner .st-main {
  background-color: #FFF;
  padding: min(60px, 10vw) min(60px, 5vw);
  margin: 30px auto;
  max-width: 900px;
  -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}
body.archive #contentInner .st-main .entry-title, body.single #contentInner .st-main .entry-title {
  margin-top: 0;
  margin-bottom: 1.2em;
  background: none;
  border: none;
  font-size: clamp(1.25rem, 1.1664rem + 0.3822vw, 1.625rem);
  border-bottom: 1px solid #e9e9e9;
  padding: 0 0.2em 0.5em 0.2em;
}
body.archive #contentInner .st-main .kanren, body.single #contentInner .st-main .kanren {
  padding-top: 0;
}
body.archive #contentInner .st-main .kanren dd, body.single #contentInner .st-main .kanren dd {
  padding-left: 0;
}
body.archive #contentInner .st-main .kanren .clearfix dd .kanren-t a, body.single #contentInner .st-main .kanren .clearfix dd .kanren-t a {
  color: #000;
  text-decoration: none;
  font-size: 120%;
  line-height: 1.6em;
  font-weight: bold;
  padding-bottom: 0;
}
body.archive #contentInner .st-main .st-pagelink, body.single #contentInner .st-main .st-pagelink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body.archive #contentInner .st-main .st-pagelink .page-numbers, body.single #contentInner .st-main .st-pagelink .page-numbers {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ccc;
  padding: 1em;
  margin-right: 5px;
  margin-bottom: 5px;
  font-size: 15px;
  min-width: 20px;
  height: auto;
  width: 100%;
  display: block;
  float: none;
  text-align: center;
  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;
}

body.single #content-w {
  margin-top: 30px;
}
body.single .main-content {
  margin-top: 0;
}
body.single .main-content .main-content-inner {
  padding: 0;
}

#footer-prepend-area .footer-prepend-area-inner {
  max-width: 1160px;
  padding: 0 20px;
  margin: 0 auto;
}

.footermenubox ul.footermenust li a i {
  color: #FFF;
  font-size: 0.7em;
  vertical-align: middle;
  position: relative;
  top: -1px;
}

/* Shortcodes Ultimate */
.su-accordion {
  margin-bottom: 0 !important;
}

.su-spoiler-title {
  font-size: 18px !important;
}

/* skippr jquery */
#slider {
  width: 100%;
  height: 400px;
}

#slider-otr {
  width: 100%;
  height: 210px;
}

/* ハンバーガーメニュー */
#s-navi dt.trigger {
  height: 100%;
  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;
  margin-right: 12px;
}

#s-navi dt.trigger .op {
  background: #FFF;
  font-size: 38px;
  float: none;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
  position: relative;
  display: inline-block;
  max-width: 100%;
}
#s-navi dt.trigger .op i {
  height: auto;
  width: 60px;
  position: relative;
}

#s-navi dl.acordion {
  margin: 0px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
}

#s-navi dl.acordion p {
  height: auto;
}

#s-navi dd.acordion_tree {
  background: #FFF;
}

.acordion_tree ul.menu li {
  padding: 0.8em 15px;
}

/* テーブル調整 */
.table-scroll {
  overflow: auto; /*tableをスクロールさせる*/
  white-space: nowrap; /*tableのセル内にある文字の折り返しを禁止*/
}

.scroll::-webkit-scrollbar { /*tableにスクロールバーを追加*/
  height: 5px;
}

.scroll::-webkit-scrollbar-track { /*tableにスクロールバーを追加*/
  background: #F1F1F1;
}

.scroll::-webkit-scrollbar-thumb { /*tableにスクロールバーを追加*/
  background: #BCBCBC;
}

#footer {
  background: url(../images/darkglay.jpg);
}
#footer a {
  border: none;
}

#footer .footermenust a, #footer a, #footer .copy, #footer .rcopy {
  color: #FFF;
}

/* 投稿ページ */
body.blog #contentInner {
  max-width: 980px;
  margin: 0 auto;
  float: none;
}

/* inview.js スクロール フェードイン・アウト */
.inview {
  opacity: 0;
}

.fadeIn-up {
  -webkit-transform: translate(0, 20%);
          transform: translate(0, 20%);
}

.fadeIn-up.is-show {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
  -webkit-transition: 1s;
  transition: 1s;
}

.fadeIn-1st.is-show {
  opacity: 1;
  -webkit-transition: 2s;
  transition: 2s;
}

.fadeIn-2nd.is-show {
  opacity: 1;
  -webkit-transition: 4s;
  transition: 4s;
}

/* お問い合わせ コンタクトフォーム ------------------------------------------------------------------------ */
.post .table-contact-form, .table-contact-form {
  border: none;
}
.post .table-contact-form th, .post .table-contact-form td, .table-contact-form th, .table-contact-form td {
  border: none;
  padding: 0.4em 0.6em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.post .table-contact-form th, .table-contact-form th {
  text-align: left;
  font-size: 1em;
  min-width: 200px;
}
.post .table-contact-form td, .table-contact-form td {
  width: 100%;
}
.post .table-contact-form .contact-req, .table-contact-form .contact-req {
  color: #ff9e00;
  font-size: 0.8em;
  border: 1px solid #ff9e00;
  padding: 0 5px 2px;
  border-radius: 6px;
  line-height: 1;
  display: inline-block;
}
.post .table-contact-form .your-talk, .table-contact-form .your-talk {
  font-size: 1.2em;
}
.post .table-contact-form .contact-attention, .table-contact-form .contact-attention {
  color: #ff9e00;
  font-size: 0.8em;
}
.post .table-contact-form .contact-submit, .table-contact-form .contact-submit {
  text-align: center;
}
.post .table-contact-form .contact-submit input[type=submit], .table-contact-form .contact-submit input[type=submit] {
  width: 50%;
  padding: 0.8em 2em;
}
.post .table-contact-form .contact-submit input[type=submit]:hover, .table-contact-form .contact-submit input[type=submit]:hover {
  background: #7f713c;
  color: #FFF;
  border: 1px solid #7f713c;
}

.contact-preferred-title {
  border-bottom: 1px solid #5e321a;
  padding: 6px 8px 2px;
  font-size: 0.9em;
}

.table-contact-form-top {
  border-bottom: 1px solid #5e321a;
  padding-bottom: 14px;
  border-collapse: separate;
  margin-bottom: 20px;
}

.wpcf7-spinner {
  visibility: hidden;
  display: block;
  background-color: #23282d;
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 8px auto 4px;
  position: relative;
}

/* reCaptcha v3 位置変更　左下 */
.grecaptcha-badge {
  left: 6px !important;
  width: 70px !important;
  z-index: 999;
}

.grecaptcha-badge:hover {
  left: 6px !important;
  width: 256px !important;
}

#page-top {
  right: 16px;
}
#page-top a {
  color: #FFF;
  background: rgb(156, 152, 137);
  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;
  padding: 12px 24px;
  border: none;
}

/* メディアクエリ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* PC */
@media only screen and (min-width: 1200px) {
  .pcnone {
    display: none !important;
  }
}
/* PC・タブレット */
@media only screen and (max-width: 1199.98px) {
  #headbox-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  #st-menubox {
    display: none;
  }
  #header-l, #header-l_page {
    width: 100%;
    max-width: 240px;
    z-index: 6;
  }
  #s-navi dt.trigger .op {
    font-size: 30px;
  }
  .trigger .fa:not(.fa-bars) {
    font-size: 25px;
  }
  .trigger .fa {
    line-height: 60px;
  }
}
/*media Queries スマートフォンとタブレットサイズ（959px以下）で適応したいCSS - スマホ・タブレット
------------------------------------------------------------------------------*/
@media only screen and (max-width: 959px) {
  .osusumeBlock {
    /* display: none; */
  }
  .serviceBlock-cont01 .service-img img,
  .serviceBlock-cont02 .service-img img,
  .serviceBlock-cont03 .service-img img {
    position: static;
    width: 100%;
  }
  .serviceBlock-cont01 .serviceBlock-cont-inner,
  .serviceBlock-cont02 .serviceBlock-cont-inner,
  .serviceBlock-cont03 .serviceBlock-cont-inner {
    height: auto;
  }
  .serviceBlock-cont01 .service-fr,
  .serviceBlock-cont02 .service-fr,
  .serviceBlock-cont03 .service-fr {
    position: static;
    background: none;
    width: auto;
    height: auto;
    margin-bottom: 40px;
  }
  .serviceBlock-cont01 .service-h2,
  .serviceBlock-cont02 .service-h2,
  .serviceBlock-cont03 .service-h2 {
    position: static;
  }
  .serviceBlock-cont01 .service-text,
  .serviceBlock-cont02 .service-text,
  .serviceBlock-cont03 .service-text {
    position: static;
    width: auto;
    text-align: center;
  }
  .serviceBlock-cont02,
  .serviceBlock-cont03 {
    margin-top: 40px;
  }
  .pc-wide {
    display: none;
  }
}
/* スマホ タブレット 全体設定 ------------------------------------------------------------------------------- */
@media (max-width: 767px) {
  /* お問い合わせ */
  .table-contact-form th {
    display: block;
  }
  .table-contact-form td {
    width: 100%;
    display: block;
  }
  .block-item-cont {
    padding: 30px 4% 15px;
  }
  .block-item-cont .vk_prContent_colImg, .block-item-cont .vk_prContent_colTxt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }
  .block-item-cont .vk_prContent_colImg {
    padding: 20px 0 10px;
    text-align: center;
  }
}
/*media Queries タブレットサイズ（600px～959px）のみで適応したいCSS -タブレットのみ
------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) and (max-width: 959px) {
  /*-- ここまで --*/
}
/*media Queries タブレット（600px）以上で適応したいCSS -タブレット・PC
----------------------------------------------------*/
@media only screen and (min-width: 600px) {
  p, .yellowbox, .graybox, .redbox, .post ul li, .post ol li {
    font-size: 16px;
  }
  /*-- ここまで --*/
}
/*media Queries PCサイズ（960px）以上で適応したいCSS - PCのみ
------------------------------------------------------------------------------*/
@media print, screen and (min-width: 960px) {
  .sp-wide {
    display: none;
  }
  /*-- ここまで --*/
}/*# sourceMappingURL=main-style.css.map */