/*
Theme Name: Lightning Child
Template: lightning
Description: Lightning Child Theme
Author: Your Name
Version: 1.0
*/

body
{
   font-family: "Noto Sans JP",sans-serif;
}
/* ﾌﾛﾝﾄﾍﾟｰｼﾞのｽﾗｲﾄﾞﾀｲﾄﾙとｷｬﾌﾟｼｮﾝを游明朝に */
.ltg-slide-text-title,
.ltg-slide-text-caption,
.harano 
{
   font-family: "游明朝";
}
/* ﾌﾛﾝﾄﾍﾟｰｼﾞのｽﾗｲﾄﾞﾀｲﾄﾙとｷｬﾌﾟｼｮﾝの文字間隔を開ける */
.ltg-slide-text-title,.ltg-slide-text-caption
{
   letter-spacing:5px;
}
/* ﾌﾛﾝﾄﾍﾟｰｼﾞのｽﾗｲﾄﾞﾀｲﾄﾙの文字ｻｲｽﾞ変更 */
.ltg-slide-text-title
{
   font-size:36px;
}
/* ﾓﾊﾞｲﾙ版のﾌﾛﾝﾄﾍﾟｰｼﾞのｽﾗｲﾄﾞｷｬﾌﾟｼｮﾝの文字ｻｲｽﾞ変更 */
@media(max-width: 767px)
{
.ltg-slide-text-title
  {
   font-size:1.4em;
   Line-height:1.4;     
  }
}
    /* ﾌﾛﾝﾄﾍﾟｰｼﾞのｽﾗｲﾄﾞの左右ﾎﾞﾀﾝ非表示 */
.ltg-slide-button-next, .ltg-slide-button-prev
{
   opacity: 0.0;
}
.space-left
{
   margin-left: 200px;
}
/* サイトロゴとヘッダーナビを縦に積む */
div#site-header-container
{
   display: block;
}
/* ヘッダーナビをセンターに */
.global-nav--layout--float-right
{
   margin-left: auto;
   margin-right: auto;
   width: 60em;
}
/* サイトロゴをセンターに */
.site-header--layout--nav-float .site-header-logo
{
   margin-left: auto;
   margin-right: auto;
   width: 10em;
}
/*グローバルメニュー*/
.global-navi
{
   width: 100%;
   margin-top: 4px;
}
/*ｸﾞﾛｰﾊﾞﾙﾅﾋﾞ文字位置とｻｲｽﾞ調整*/
.global-nav-list > li
{
   margin-left: 10px;
   font-size: 10px;
}
/*グローバルメニューマウスオーバー*/
.global-nav-list > li:hover
{
   background-color: #deeeef;
}
@media (max-width: 767px)
{
.font-size-mobile
  {
   font-size: 18px;
  }
}
/*グローバルメニューレスポンシブル*/
@media screen and (max-width : 767px)
{
.global-navi
    {
   margin-top:24px;
  }
}
@media (max-width: 300px)
{
.font-size-mobile
    {
   font-size: 8px;
  }
}
.site-footer-copyright p:nth-child(2)
{
   display:none !important;
}
/* 3Dﾌﾟﾘﾝﾀ依頼の流れ画像ﾓﾊﾞｲﾙ版小さく */
@media screen and (max-width: 767px)
{   
.wp-image-5408 size-thumbnail
  {
    height: auto;
    max-width: unset;
    vertical-align: middle;
    width:70%;
  }
}
/*お問合わせ必須ラベル*/
.haveto
{
   font-size: 16px;
   background: #dd9323;
   color: #fff;
   border-radius: 2px;
   margin-right: 8px;
   position: relative;
   bottom: 2px;
}
/* 問合せフォーム枠サイズ変更 */
.flame-width
{
   font-size: 1rem;
   border: 1px solid var;
   border-radius: var;
   padding: 0.8em 1em;
   margin: 0 0 0.5rem;
   width:70%;
   color: var;
   background-color: #fff;
}
/* 申請フォーム枠サイズ変更 */
.flame-width2
{
   font-size: 1rem;
   border: 1px solid var;
   border-radius: var;
   padding: 0.8em 1em;
   margin: 0 0 0.5rem;
   width:70%;
   color: var;
   background-color: #fff;
}
/*ﾃｷｽﾄと背景ｶﾗｰ、ﾌｵﾝﾄｻｲｽﾞ変更、内側余白調整、見出し周りのﾎﾞｰﾀﾞｰ線*/
.table th
{
   color:#000;
   background:#ffe0e0!important;
   font-size:17px;
   padding:7px;
   border:solid 2px #e8e8e8;
}
 /* 偶数行をうっすらグレーに */
.table tr:nth-child(odd)
{
   background-color:#F9F9F9;
}
 /* お問合せﾏｳｽｵｰﾊﾞｰ */
.widget_vkexunit_contact_section .veu_contentAddSection:hover
{
   background-color: #deeeef;
}
/*ｻｲﾄﾞﾊﾞｰマウスオーバー*/
.widget_vkexunit_contact_section .veu_contentAddSection:hover
{
   background-color: #deeeef;
}
/*ﾌｯﾀｰ上下背景文字変更*/
.site-footer
{
   background-color:#deeeef;
}
/*ﾌｯﾀｰﾒﾆｭｰ上部ｾﾝﾀｰ寄せ*/
.ol, ul
{
   text-align:center;
}
/*ｻｲﾄﾏｯﾌﾟﾃｷｽﾄ寄せ*/
.veu_sitemap ul
{
   text-align:left;
}   
/*トップスライダーのページネーションを非表示*/
.swiper-pagination
{
   display:none;
}
/*ﾓﾊﾞｲﾙのﾊﾝﾊﾞｰｶﾞｰﾒﾆｭｰ画像変更開く*/
.vk-mobile-nav-menu-btn
{
    border: none;
    background-image: url("https://nisshin-home.com/wp-content/uploads/2024/10/Hambaurger-open.jpg");
      background-size: cover;
}
/*ﾓﾊﾞｲﾙのﾊﾝﾊﾞｰｶﾞｰﾒﾆｭｰ画像変更閉じる*/
.vk-mobile-nav-menu-btn.menu-open {
   border: none;
   background-image: url("https://nisshin-home.com/wp-content/uploads/2024/10/Hambaurger-close_white.jpg");
     background-size: cover;
}
/*ﾓﾊﾞｲﾙﾓﾊﾞｲﾙﾅﾋﾞ背景色と線の色変更*/
.vk-mobile-nav
{
    background-color: #054CAA;
    border-bottom: 1px solid #e5e5e5;
}
/*ﾓﾊﾞｲﾙﾓﾊﾞｲﾙﾅﾋﾞ文字色変更*/
.vk-mobile-nav .widget_nav_menu ul li a, .vk-mobile-nav nav ul li a
{
   color: #ffffff;
}
/*固定ﾍﾟｰｼﾞｽﾗｲﾀﾞｰ文字位置*/
.vk_block-margin-xxl--margin-bottom
{
   position:relative;
}
.vk_block-margin-xxl--margin-bottom
{
   position:absolute;
   bottom:100px;
   right:70px;
}
.vk_block-margin-xxl--margin-bottom
{
   position:absolute;
     bottom:70px;
     right:40px;
}
/*ﾓﾊﾞｲﾙﾒﾆｭｰﾏｳｽｵｰﾊﾞｰ*/
.vk-mobile-nav .widget_nav_menu ul li a, .vk-mobile-nav nav ul li a:hover
{
   background-color: #deeeef;
}
/*画像のｷｬﾌﾟｼｮﾝの文字ｻｲｽﾞ変更 */
.wp-block-image figcaption
{
   font-size:18px;
}
/* ページヘッダーの文字色 */
h1.page-header-title
{
   color: #fff;
}
/* ﾍﾟｰｼﾞﾍｯﾀﾞｰ画像設定 */
.page-header 
{
  background-image: url(https://nisshin-home.com/wp-content/uploads/2025/10/pageheader_nisshin_ADECY.jpg); 
  background-size: cover; 
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
/* PC版：画面幅が768px以上のとき */
@media screen and (min-width: 768px)
{
  .page-header 
     {
    height: 200px; 
   }
}
/* スマホ版：画面幅が768px未満のとき */
@media screen and (max-width: 767px)
{
  .page-header 
  {
    height: 150px; /* 高さをしっかり確保（以前より高め） */
  }
}
/* 3Dﾌﾟﾘﾝﾀ出力ﾍﾟｰｼﾞｱｲｺﾝｻｲｽﾞﾓﾊﾞｲﾙ版変更 */ @media (max-width: 767px)
{ 
.wp-block-media-text__media img
  { 
         display: block; margin: 10px 
         auto; height: 0 auto; 
         max-width: 300px; 
         vertical-align: middle; width: 40%;   } 
}
/* 画像切り替え */ 
.image-pc
{
  display: block !important;
  visibility: visible !important;
  height: auto !important;
}
.image-mobile
{
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
}
@media screen and (max-width: 768px)
{
  .image-pc
  {
   display: none !important;
   visibility: hidden !important;
   height: 0 !important;
  }
  .image-mobile
  {
   display: block !important;
   visibility: visible !important;
   height: auto !important;
  }
}
/* ねじろうとボールのサイズ比較ブロックに上下の線追加 */
.nejiro-ball
{
  background-color: #edf2f1; 
  padding: 20px; 
}
/* モバイル版画像表示制限解除 @リモコン説明画像 */
@media screen and (max-width: 768px)
{
  .wp-block-media-text__media img
    {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
  }
}
/* koteigu-explanationブロックを淡いグレーの罫線で囲む */
.koteigu-explanation
{
   border: 2px solid #e5e5e5;
   padding: 16px;
   margin: 16px 0; 
}
  /* モバイルで alignleft / alignright を解除して中央寄せ */
@media (max-width: 781px)
{
.tight-stack .alignleft,
.tight-stack .alignright
    {
    float: none !important;
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* 左（1列目）：下余白をゼロ */
.tight-stack .wp-block-column:first-child figure.wp-block-image
    {
    margin-bottom: 0 !important;
  }
  /* 右（2列目）：上余白をゼロ */
.tight-stack .wp-block-column:last-child figure.wp-block-image
    {
    margin-top: 0 !important;
  }
  /* Lightningの余白ユーティリティが付いている場合だけ打ち消す（付いてなければ不要） */
.tight-stack .vk_block-margin-sm--margin-top
    {
     margin-top: 0 !important; 
    }
.tight-stack .vk_block-margin-sm--margin-bottom
    {
     margin-bottom: 0 !important;
    }
  /* 列自身の上下マージンが効いている場合の保険 */
.tight-stack .wp-block-column
    { 
     margin-top: 0 !important; margin-     
     bottom: 0 !important;
    } 
}
 /* 貸出ﾎﾞﾀﾝと背景をﾓﾊﾞｲﾙでは小さく */
@media screen and (max-width: 767.98px)
{
.nejiro-back-image
    {
    min-height: 27vh !important;
  }
.nejiro-back-image .wp-block-button__link
    {
    font-size: clamp(12px, 3.5vw, 16px) !important;
    padding: 2em 1.7em !important;
    line-height: 1.3 !important;
  }
}
/* ねじろうｹｰﾌﾞﾙ画像、ﾓﾊﾞｲﾙでは中央寄せ */
@media (max-width: 782px)
{
.vk_block-margin-sm--margin-top.tight-stack
    {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
.vk_block-margin-sm--margin-top.tight-stack img
    {
    display: block;
    margin-left: auto;
    margin-right: auto;
    float: none !important; /* alignleft対策のみ残す */
  }
}
/* 投稿ページのページヘッダー文字色を白に */
body.single .page-header-title
{
  color: #fff;
  text-shadow: 0 2px 4px      rgba(0,0,0,0.35);
}
    
/* NEWS欄デザイン調整 */
ul.wp-block-latest-posts.wp-block-latest-posts__list
{
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 24px 24px;
  background: #fff;
    text-align: left;
}
/* Latest Posts のリストを front-news の幅に合わせる */
ul.wp-block-latest-posts__list.front-news {
  max-width: 890px; 
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px; 
  padding-right: 16px;
  box-sizing: border-box;
}
/* front-news の投稿欄に左余白 */
ul.wp-block-latest-posts__list.front-news li
{
  padding-left: 20px;
}
@media (max-width: 782px) {
  ul.wp-block-latest-posts__list.front-news li {
    padding-left:    padding-left: 16px; /* モバイルでは控えめに */
  }
    
/*投稿各項目の下線色変更 */
.wp-block-latest-posts__list > li {
  border-bottom: 1px dotted #8ED1FC;
}
    
/* 投稿ブロックの日付をﾀｲﾄﾙの前に */
.wp-block-latest-posts__list > li {
  display: flex;
  align-items: center;
  gap: .6em;
  flex-wrap: wrap;
}
.wp-block-latest-posts__post-date
{
  color: #bebdbd; 
  font-size: 0.6em;
}
/* 並び替え：日付 → タイトル → 抜粋 */
.wp-block-latest-posts__list > li .wp-block-latest-posts__post-date { order: 1; }
.wp-block-latest-posts__list > li .wp-block-latest-posts__post-title { order: 2; }
.wp-block-latest-posts__list > li .wp-block-latest-posts__post-excerpt { 
  order: 3; 
  width: 100%;
  margin-top: .25em;
}
/* タイトルを相対配置に */
.wp-block-latest-posts__list > li .wp-block-latest-posts__post-title {
  position: relative;
  display: block;
  padding-right: 5.5em; /* バッジ分の余白（調整可） */
}
/* NEWﾊﾞｯﾁﾞをﾀｲﾄﾙ文末に */
.wp-block-latest-posts__list > li:first-child .wp-block-latest-posts__post-title::after
{
  content: " NEW!";
  display: inline-block;
  margin-left: .4em;
  padding: .1em .45em .15em;
  background: #f77b22; 
  color: #fff; 
  font-weight: 700;
  font-size: .85em;
  line-height: 1;
  border-radius: 3px; 
  vertical-align: middle;
}
/* 【】で始まるようなタイトルでも余白が詰まりすぎない */
.wp-block-latest-posts__post-title
{
  text-decoration: none;
}
/* ボタン内だけで処理を閉じ込め、角丸でクリップする */
.kashidashi-button .wp-block-button__link {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  display: inline-block;
  border-radius: inherit;
}
/* 斜めに走るハイライト */
.kashidashi-button .wp-block-button__link::after {
  content: "";
  position: absolute;
  width: 28%;
  height: 320%;
  top: -110%;
  left: -300%;
  background: linear-gradient(
    115deg,
    rgba(255, 255, 220, 0.00) 0%,
    rgba(255, 255, 220, 0.10) 30%,
    rgba(255, 255, 220, 0.28) 50%,
    rgba(255, 255, 220, 0.10) 70%,
    rgba(255, 255, 220, 0.00) 100%
  );
  transform: translateX(0) rotate(18deg);
  transform-origin: 50% 50%;
  filter: blur(4px);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 30%, black 70%, transparent 100%);
          mask-image: linear-gradient(to right, transparent 0%, black 30%, black 70%, transparent 100%);
  /* ディレイなしでまず確認したい場合はこの行に 15s を付けない */
  animation: kashiDiagShimmerFull 2.8s linear infinite;
  will-change: transform;
  pointer-events: none;
  z-index: 0;
}
/* 左かなり外 → 右かなり外 まで完全通過 */
@keyframes kashiDiagShimmerFull {
  0%   { transform: translateX(0) rotate(18deg); }
  100% { transform: translateX(1800%) rotate(18deg); }
}
/* 動きが苦手設定のときは停止 */
@media (prefers-reduced-motion: reduce)@media (prefers-reduced-motion: reduce) {
  .kashidashi-button .wp-block-button__link::after {
    animation: none;
    transform: translateX(0) rotate(18deg);
  }