.elementor-kit-11{--e-global-color-primary:#00693E;--e-global-color-secondary:#393938;--e-global-color-text:#393938;--e-global-color-accent:#DECD89;--e-global-color-20ba0eb:#00693E;--e-global-color-2586408:#3A8B2C;--e-global-color-57d6fce:#ED964C;--e-global-color-dfcf3a6:#DECD89;--e-global-color-b572c5a:#FAF9F8;--e-global-color-9871298:#F4F2EC;--e-global-color-4998069:#393938;--e-global-color-0c8191e:#E3E9E3;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-cf3f95e-font-family:"Shippori Antique";--e-global-typography-9645217-font-family:"Galindo";--e-global-typography-7a99f32-font-family:"Shippori Antique";--e-global-typography-7a99f32-font-size:34px;--e-global-typography-7a99f32-font-weight:500;--e-global-typography-7a99f32-line-height:1.4em;background-color:var( --e-global-color-b572c5a );line-height:2em;}.elementor-kit-11 e-page-transition{background-color:#FFBC7D;}.elementor-kit-11 a{color:var( --e-global-color-57d6fce );}.elementor-kit-11 h1{font-size:30px;line-height:1.7em;}.elementor-kit-11 h2{font-family:"Shippori Antique", Sans-serif;font-size:25px;line-height:1.7em;}.elementor-kit-11 h3{font-size:22px;font-weight:500;line-height:1.7em;}.elementor-kit-11 h4{font-size:20px;line-height:1.6em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-11 h1{font-size:25px;}.elementor-kit-11 h2{font-size:24px;}.elementor-kit-11 h3{font-size:22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-11 h1{font-size:23px;}.elementor-kit-11 h2{font-size:20px;}.elementor-kit-11 h3{font-size:18px;}.elementor-kit-11 h4{font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//*総合*/
*:focus {
outline: none;
}

/* サイト内すべてのページ内リンク */
html {
  scroll-padding-top: 200px;
  scroll-behavior: smooth;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 80px;
  }
}

@media screen and (min-width:768px) {
.spbr{
    display:none !important;
}
.pcbr{
    display:initial;
}
}/* パソコン表示 */
@media screen and (max-width:767px) {
.pcbr{
    display:none !important;
}
.spbr{
    display:initial;
}

}/* SP・タブレット表示 */


/* 通常は縦書き */
.vertical-text {
  writing-mode: vertical-rl;
  text-orientation: upright;
}

/* スマホのみ縦書きを解除 */
@media screen and (max-width: 767px) {
  .vertical-text.vertical-text-spnone {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
}

/* 縦書き見出し共通 */
.nagahara-vertical-heading .elementor-heading-title {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: flex-start;
  gap: 0.5em;
}

/* 改行ごとの背景 */
.nagahara-vertical-heading .elementor-heading-title span {
  padding: 25px 10px;

  writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;

  background-color: var(--nagahara-bg);
  box-sizing: border-box;
}

/* グリーン */
.nagaharabg-green {
  --nagahara-bg: #3A8B2C;
}

/* オレンジ */
.nagaharabg-orange {
  --nagahara-bg: #ED964C;
}

/* ゴールド */
.nagaharabg-gold {
  --nagahara-bg: #DECD89;
}

/* ゴールド */
.nagaharabg-white {
  --nagahara-bg: #FAF9F8;
}


/* スマホのみ縦書きを横書きに戻す */
@media screen and (max-width: 767px) {

  .vertical-text-spnone .elementor-heading-title {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .vertical-text-spnone .elementor-heading-title span {
    width: fit-content;
    padding: 8px 14px;

    writing-mode: horizontal-tb;
    text-orientation: mixed;
    white-space: nowrap;
  }

}/* スマホ*/



/* リフォームメニューを見る ボタン */
.reform-menu-btn .elementor-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 52px;
  padding: 0 0 0 66px;

  overflow: visible;
  transition: color 0.35s ease;
}

/* 左の丸 */
.reform-menu-btn .elementor-button::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #2b2a26;
  transform: translateY(-50%);
  transition: background-color 0.35s ease, transform 0.35s ease;
}

/* 矢印 */
.reform-menu-btn .elementor-button::after {
  content: "→";
  position: absolute;
  left: 26px;
  top: 50%;
  color: #fff;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  transform: translate(-50%, -50%);
  transition: transform 0.35s ease, color 0.35s ease;
}

/* Elementor内のテキスト */
.reform-menu-btn .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* ホバー時 */
.reform-menu-btn .elementor-button:hover {
  color: #8a5a2f;
  background: transparent !important;
}

/* ホバー時：丸の色変更 */
.reform-menu-btn .elementor-button:hover::before {
  background: #DECD89;
  transform: translateY(-50%) scale(1.04);
}

/* ホバー時：矢印が少し右へ動く */
.reform-menu-btn .elementor-button:hover::after {
  transform: translate(-35%, -50%);
  color: #fff;
}

.read-txt span {
    font-weight: bold;
    color: #3A8B2C;
}
.read-txt02 span {
    font-weight: bold;
    color: #ED964C;
}


/*施工事例*/
figure.gallery-item img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    width: 100%;
}
.past-cate a {
    background-color: #00337f;
    padding: 5px 10px;
    margin-right: 10px;
}
.past-tag a {
    background-color: #7C7C7C;
    padding: 4px 7px;
    margin-right: 5px;
}


.shadow-filter{
      filter:
    drop-shadow(2px 0 1px #F4F2EC)
    drop-shadow(-2px 0 1px #F4F2EC)
    drop-shadow(0 2px 1px #F4F2EC)
    drop-shadow(0 -2px 1px #F4F2EC);
}


/*施工事例TOPドット線*/
/* 施工事例TOPドット線
   .main-works-grid内だけに適用
*/

/* 各記事を基準にする */
.main-works-grid
.elementor-loop-container
> .e-loop-item {
  position: relative;
  overflow: visible;
}

/* ドット線の共通設定 */
.main-works-grid
.elementor-loop-container
> .e-loop-item::after {
  content: "";
  position: absolute;
  top: 20px;
  right: -15px;
  bottom: 20px;
  width: 2px;

  background-image: radial-gradient(
    circle,
    #43423C 0,
    #43423C 1px,
    transparent 1.1px
  );
  background-size: 2px 10px;
  background-repeat: repeat-y;
  background-position: center top;

  pointer-events: none;
  z-index: 2;
}

/* PC：3列目には線を付けない */
@media screen and (min-width: 1025px) {
  .main-works-grid
  .elementor-loop-container
  > .e-loop-item:nth-of-type(3n)::after {
    display: none;
  }
}

/* タブレット：2列目には線を付けない */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .main-works-grid
  .elementor-loop-container
  > .e-loop-item:nth-of-type(even)::after {
    display: none;
  }
}

/* スマホ：1列なので線を非表示 */
@media screen and (max-width: 767px) {
  .main-works-grid
  .elementor-loop-container
  > .e-loop-item::after {
    display: none;
  }
}

/*アーカイブtag*/
.loop-tag a {
    background-color: #DECD89;
    padding: 7px 15px;
    margin-right: 5px;
    margin-bottom: 5px;
    border-radius: 3px;
    display: inline-block;
}
.blog-tag a {
    background-color: #3a8b2c;
}



/*施工事例*/
figure.gallery-item img {
    border-radius: 15px;
}

/*見出し装飾*/
.single-main-contents h2 {
    padding: 5px 10px;
    border-bottom: 4px solid #00693e;
    margin-top: 20px;
}
.single-main-contents h3 {
    background: #e3e9e3;
    padding: 5px 10px;
    display: inline-block;
    position: relative;
    padding-left: 1.6em;
}
.single-main-contents h3::before {
    content: "■";
    position: absolute;
    left: 10px;
    top: 4px;
    color: #3a8b2c;
}

/*アーカイブページネーション*/
nav.elementor-pagination span {
    color: #fff;
    display: inline-block;
    width: 50px;
    height: 50px;
    border-radius: 10px;
    background: #3a8b2c;
    text-align: center;
    line-height: 50px;
    margin-top: 60px;
}
nav.elementor-pagination a {
    color: #DECD89;
    display: inline-block;
    width: 50px;
    height: 50px;
    border-radius: 10px;
    background: #F4F2EC;
    text-align: center;
    line-height: 50px;
}

/*リフォームメニュー*/
.reform-no {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 37px;
  height: 37px;
   background-color: #3A8B2C;
  color: #fff;
  border-radius: 50%;
  font-family: "Cormorant Garamond", serif;
  font-size:15px;
  font-weight: 700;
  font-style: italic;
   letter-spacing: 0.1em;
    transform: translateY(-3px);
    margin-right: 5px;
}
.no-ttl p {
  display: flex;
  align-items: center;
}

.reform-no {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
}
.bg-orange{
        background-color: #ed964c;
}

/*gallery*/

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    background: #f4f2ec;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    text-shadow: none;
    color: #43423C;
    font-style: normal;
}
.wp-block-gallery.wp-block-gallery-1 {
    gap: 30px min(3%, 20px) !important;
}



.link-hov:hover {
  opacity: 0.8;
}/* End custom CSS */