.elementor-kit-6{--e-global-color-primary:#000000;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#000000;--e-global-color-accent:#EF821B;--e-global-color-00407c7:#E8E8E5;--e-global-color-b755465:#E8E3D3;--e-global-color-f967ab6:#8A8987;--e-global-color-2b9bdb8:#8A3D1F;--e-global-color-dfb7107:#E8E8E5;--e-global-color-04d8b47:#F4F4F4;--e-global-color-7d61833:#F7F4EB;--e-global-typography-primary-font-family:"Zen Kaku Gothic New";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Zen Kaku Gothic New";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Zen Kaku Gothic New";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Zen Kaku Gothic New";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 img{border-radius:5px 5px 5px 5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:50px;}.elementor-element{--widgets-spacing:50px 20px;--widgets-spacing-row:50px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* サイト全体に遊ゴシック体を適用 */
body, h1, h2, h3, h4, h5, h6, p, a, input, textarea {
    font-family: "游ゴシック体", "Yu Gothic", "YuGothic", sans-serif;
}



.vertical {
        writing-mode: vertical-rl;
        /*text-orientation: upright;*/
    }
    
    
    * モバイル向けの設定も汎用化 */
@media (max-width: 767px) {
    .vertical {
        writing-mode: vertical-rl;
        /*text-orientation: upright;*/
    }
    
}
/* ===============================================
   モーダルメニュー (フッターに配置した場合)
=============================================== */
.modal-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(255,255,255, 0.95);
  z-index: 999; /* ヘッダーより上に来るように高めに設定 */
  
  /* 配置 */
  display: flex;
  justify-content: center;
  align-items: center;

  /* アニメーション */
  transition: clip-path 0.7s cubic-bezier(0.31, -0.01, 0.18, 0.97), opacity 0.4s;
  opacity: 0;
  clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
  pointer-events: none;
}

/* アクティブ時 */
.modal-menu.is-active {
  opacity: 1;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  pointer-events: auto;
}

/* メニューが開いている時は背景をスクロールさせない */
body.no-scroll {
    overflow: hidden;
}

//* ===============================================
   3. スクロール追従ロゴ (.sticky_logo) の制御
   =============================================== */

/* 基本状態（スクロール中）：ロゴを表示 */
.sticky_logo {
    opacity: 1;
    transition: opacity 0.4s ease; /* ふわっと切り替え */
}

/* ページトップにいる時（スクロール前）：ロゴを非表示 */
/* Elementorが付与するクラスを利用して判定します */
.elementor-sticky:not(.elementor-sticky--effects) .sticky_logo {
    opacity: 0;
    pointer-events: none; /* 見えない時にクリックできないようにする */
}

/*デスクトップとスマホで改行を切り替える*/
.br-dt {display:none; }
.br-sp {display: inline; }
@media screen and (min-width: 768px){
.br-dt {display:inline; }
.br-sp {display: none; }
}


.seko-title p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.seko-title2 p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

 .seko-title2 .elementor-cta__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.seko-title1 p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}



/* ループアイテム内のテキストエディターウィジェットに適用 */
.e-loop-item .elementor-widget-text-editor {
    /* 記事本文（Elementor Text Editor）の汎用設定 */
    line-height: 1.6em;
    height: 4.8em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

/* ループアイテム内の見出しウィジェットのタイトルに適用 */
.e-loop-item .elementor-heading-title {
    /* タイトル（Elementor Heading Title）の汎用設定 */
    line-height: 1.5em; 
    height: 3em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}


/* モバイル向けの設定も汎用化 */
@media (max-width: 767px) {
    .e-loop-item .elementor-heading-title {
        height: 1.6em;
        -webkit-line-clamp: 1;
    }
    .e-loop-item .elementor-widget-text-editor {
        height: 3.2em;
        -webkit-line-clamp: 2;
    }
}

.elementor-widget-image a {
    display: block; /* リンク要素をブロック要素にして親要素の幅を占有させる */
    width: 100%;    /* リンク要素の幅を100%に */
}

.elementor-widget-image a img {
    width: 100%;    /* 画像の幅を100%に */
    height: auto;
}/* End custom CSS */