/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/

@media (max-width: 991.98px) {
    /* 固定表示ブロックとその直近の要素の上余白をリセット */
    .wp-block-vk-blocks-fixed-display,
    .wp-block-vk-blocks-fixed-display > * {
        margin-block-start: 0 !important;
        margin-top: 0 !important;
    }

    /* 開いたメニュー（モーダル）の内側は、上の0px設定から除外して元の余白を保つ */
    .wp-block-navigation__responsive-container.is-menu-open {
        padding-top: var(--wp--style--block-gap, 24px) !important;
    }
    
    /* メニューを閉じるボタン（×）が見切れないように位置を微調整 */
    .wp-block-navigation__responsive-container-close {
        top: 15px !important;
    }
}

/* フッター内の検索ウィジェットだけを非表示にする */
.site-footer .widget_search {
    display: none !important;
}

/* ヘッダーブロック */
.block-site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transition: transform 0.3s ease-in-out;
}

/* 2. ボタンのデザインは一切触らず、ヘッダー（白い帯）側の余白だけをゼロにする */
.block-site-header .vk-navbar{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* 下スクロール時に非表示にするクラス */
.block-site-header.is-hidden {
  transform: translateY(-100%);
}

/* 管理バーが表示されている場合、ヘッダーの位置を下にずらす */
body.admin-bar .block-site-header {
  top: 32px; /* デフォルトの管理バーの高さ（PC表示時） */
}

/* スマホなど画面幅が狭い場合の管理バーの高さ（46px）に対応 */
@media screen and (max-width: 782px) {
  body.admin-bar .block-site-header {
    top: 46px;
  }
}

/* ==========================================
   ★ここから修正：実際のブロック構造に合わせた余白確保
   ========================================== */

/* 固定ヘッダーの直後にくるブロック（タイトルエリア）を押し下げる */
.block-site-header + .wp-block-template-part,
.block-site-header + div,
main {
  margin-top: 92px !important;
}

/* ログイン時の管理バー対策（PC） */
body.admin-bar .block-site-header + .wp-block-template-part,
body.admin-bar .block-site-header + div,
body.admin-bar main {
  margin-top: calc(92px + 32px) !important;
}

/* --- スマホ表示時の調整 --- */
@media screen and (max-width: 782px) {
  .block-site-header + .wp-block-template-part,
  .block-site-header + div,
  main {
    margin-top: 66px !important; /* スマホのヘッダー高さに合わせる */
  }
  body.admin-bar .block-site-header + .wp-block-template-part,
  body.admin-bar .block-site-header + div,
  body.admin-bar main {
    margin-top: calc(66px + 46px) !important;
  }
}

/* ==========================================
   ★ここまで修正
   ========================================== */

.requirements td{
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .requirements td:first-child {
    width: 20%;
  }
}



/* Contact Form 7 テーブルカスタマイズ */
#cf-tbl {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
#cf-tbl table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #CCC;
    color: #444;
}
#cf-tbl table tr th,
#cf-tbl table tr td {
    padding: 1.5em;
    border: 1px solid #CCC;
    vertical-align: middle;
}
#cf-tbl table tr th {
    width: 30%;
    background: #f7f7f7;
    text-align: left;
}

/* 必須・任意ラベル */
.required {
    font-size: .8em;
    padding: 3px 8px;
    background: #1ABA22;
    color: #fff;
    border-radius: 3px;
    margin-right: 8px;
}
.optional {
    font-size: .8em;
    padding: 3px 8px;
    background: #b0c4de;
    color: #fff;
    border-radius: 3px;
    margin-right: 8px;
}

/* 入力フィールド */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #d0d5d8;
    border-radius: 3px;
    background-color: #f9f9f9;
    box-sizing: border-box;
}

/* 送信ボタン */
input.wpcf7-submit {
    display: block;
    width: 300px;
    margin: 30px auto;
    padding: 15px;
    background: #1ABA22;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
}
input.wpcf7-submit:hover {
    background: #e69545;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.submit{
margin: 20px 0;
}
/* レスポンシブ対応 (スマホ用) */
@media screen and (max-width: 768px) {
    #cf-tbl table, #cf-tbl tbody, #cf-tbl tr, #cf-tbl th, #cf-tbl td {
        display: block;
        width: 100% !important;
    }
    #cf-tbl table tr th {
        border-bottom: none;
    }
    input.wpcf7-submit {
        width: 100%;
    }
}
.pp{
background-color: #fefefe;
padding: 20px;
height: 240px;
width: 100%;
overflow-y: scroll;
border: 1px solid #ccc;
margin-bottom: 20px;
}
.pp h3{
font-size: 21px;
}
.pp h4{
font-size: 18px;
}
.pp p{
font-size: 14px;
line-height: 150%;
}
.pp address{
display: inline-block;
line-height: 150%;
font-style: normal;
padding: 20px 40px 10px;
background-color: #eeeeee;
margin-bottom: 20px;
}
/* 中途採用のリンクボタンショートコード用 */
.my-btn-container {
    text-align: center;
    margin: 30px 0;
}

/* ボタン自体のデザイン */
.my-custom-apply-btn {
    display: inline-block;
	width: 70%;
	letter-spacing: 2px;
    background-color: #ff6900; /* ボタンの背景色（お好きな色に） */
    color: #ffffff !important;   /* 文字色（白） */
    font-size: 21px;            /* 文字の大きさ */
    padding: 15px 40px;         /* ボタンの上下左右の余白 */
    border-radius: 5px;         /* 角丸の具合 */
    text-decoration: none;      /* 下線を消す */
    transition: all 0.3s ease;  /* マウスを乗せたときの動きを滑らかに */
}

/* マウスを乗せたとき（ホバー時）の変化 */
.my-custom-apply-btn:hover {
    background-color:#FF9144; /* 少し暗い色にする */
    transform: translateY(-2px); /* ぽこっと少し上に浮き上がらせる */
    text-decoration: none;
}
/* パソコン（画面横幅が992px以上）のときの設定 */
@media (min-width: 992px) {
    .sp-tel-only a {
        pointer-events: none; /* クリック（タップ）を無効化する */
        cursor: default;       /* マウスカーソルを通常の矢印にする */
        text-decoration: none; /* リンクの下線を消す */
    }
}
/* 余白を調整したい場合（数値はプレビューを見ながら微調整してください） */
.wp-block-navigation > li > a {
    padding: 20px 20px !important; 
}
/* 1階層目のナビゲーションだけにホバー背景を適用 */
.wp-block-navigation > li > a:hover {
    background-color:#3fbd00; /* ホバー時の背景色（お好みの色に変えてください） */
    color: #ffffff !important;            /* ホバー時の文字色 */
    transition: background-color 0.3s ease; /* 変化をなめらかに */
}



/* 767px以下（一般的なスマホサイズ）でイベント一覧を縦並びにする */
@media (max-width: 767px) {
  
  /* 大元の枠（vk_posts）は特に指定なしでOK */
  .vk_posts {
  }

  /* 1記事の枠を「横並び」から「縦並び」に強制変更 */
  .vk_post {
    flex-direction: column !important;
    display: flex !important;
  }

  /* 画像エリアの横幅を100%にし、右側の余白を消して下に隙間を作る */
  .vk_post .media-img {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 15px !important; /* 画像とテキストの間の隙間 */
  }

  /* 画像自体のサイズが縮まないように100%に広げる */
  .vk_post .media-img img {
    width: 100% !important;
    height: auto !important;
  }

  /* テキストエリアの横幅も100%にして下に落とす */
  .vk_post .media-body {
    width: 100% !important;
    padding-left: 0 !important; /* 左側に余白が残るのを防ぐ */
  }
}




/* 画面幅が767px以下（スマホサイズ）の場合に適用 */
@media (max-width: 767px) {
    .page-header-title, h1.page-header-title {
        font-size: 1.8rem!important; /* お好みのサイズに調整してください */
    }
	}


.custom-btn-wrap .btn {
    border: none;
    box-shadow: none;
	font-size: 14px;
	padding: 10px 20px;
	background-color:#EEEEEE;
	color: #222;
}

/* 社員インタビュー */
body.tax-abiizm.term-interview .vk_post_imgOuter_singleTermLabel {
    display: none;
}

/* プロジェクトストーリー */
body.tax-abiizm.term-story .vk_post_imgOuter_singleTermLabel {
    display: none;
}
/* イベント情報（新卒・中途） */
body.category-recruit-news .vk_post_imgOuter_singleTermLabel,
body.category-career-news .vk_post_imgOuter_singleTermLabel {
    display: none !important;
}

/* カテゴリー非表示 */
.entry-meta-data-list {
    display: none;
    overflow: hidden;
    padding-top: 3px;
}

/* 募集職種一覧（career-jobアーカイブ）の日付を非表示 */
body.post-type-archive-career-job .vk_post_date {
    display: none !important;
}


/* アーカイブのサムネイル比率を16:9に変更する例 */
/*.vk-post-thumbnail img, 
.entry-list-thumbnail img {
    aspect-ratio: 16 / 10;
    object-fit:cover;
}
*/
/*.postList .vk_post_img img,
.vk_posts .vk_post_img img {
    object-fit: contain;
    background: #f5f5f5;
}*/
/*.vk_post_img {
    aspect-ratio: 16 / 10;
}
.vk_post_img img{
    width:100%;
    height:auto;
}
.vk_post_imgOuter {
background-size: contain;
background-repeat: no-repeat;
}*/

.event-status {
	display:inline-block;
	padding:3px 8px;
	margin-right:8px;
	border-radius:4px;
	color:#fff;
	font-size:0.75em;
	font-weight:bold;
}

.event-status-closed {
	background:#dc3545;
}

.event-status-full {
	background:#ff9800;
}

.event-status-ended {
	background:#666;
}