@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/* PCでは改行しない */
.sp-br {
	display: none;
}

/* モバイルのみ改行 */
@media screen and (max-width: 800px) {
	.sp-br {
		display: block;
	}
}
/* 新ゴ B の読み込み制御 */
@font-face {
  font-family: "新ゴ B";
  font-display: swap;
}

/* 新ゴ M の読み込み制御 */
@font-face {
  font-family: "新ゴ M";
  font-display: swap;
}

/*ヘッダー*/
.original-header {
	width:auto;
	height:auto;
	background-image:url(/wp-content/uploads/2026/08/header-back.webp);
	background-repeat:no-repeat;
	background-size:  cover; 
}
.header-title {
	width:80%;
	margin:0 auto;
	display:block;
}
/*コンテンツ全体*/
.contents-container {
  font-feature-settings: "palt";
  margin: 0 auto;
	width:70%;
}

/* Cocoonテーマ等の余白リセット＆上書き */
header { display: none; }
footer { display: none; }
.content { margin-top: 0; }
.wrap { width: 100% !important; }
.main { padding: 0 !important; }

/* 1. コンテンツ全体（横幅をしっかり確保） */
.kaisaibi-container {
  font-feature-settings: "palt";
  width: 100%; /* 70%から少し広げてゆとりを持たせる（または 100% / max-width指定） */
  margin: 0 auto;
  box-sizing: border-box;
}

/* 2. 開催日ブロック（間隔をギュッと詰める） */
.kaisaibi-flex {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px; /* 間隔を狭めて引き締める */
  margin-bottom: 20px;
}

/* 左側ブロック */
.kaisaibi-f-l {
  flex: 1 1 58%; /* 画面幅に応じて伸縮 */
  min-width: 0;
}

/* 右側ブロック */
.kaisaibi-f-r {
  flex: 1 1 38%; /* 画面幅に応じて伸縮 */
  min-width: 0;  /* 縮小を許可 */
  padding: 18px 12px;
  box-sizing: border-box;
}

/* 中のSVG画像を親幅いっぱいに拡大縮小させる */
.kaisaibi-f-l img,
.kaisaibi-f-r img {
  width: 100%;
  height: auto;
  display: block;
}

/* --- 左側コンテンツ（文字サイズを大幅アップ） --- */
.kaisaibi {
  font-family: "Shin Go Bold", "新ゴ B", sans-serif;
  font-weight: bold;
  /* 最大サイズを 48px → 68px へ引き上げ */
  font-size: clamp(22px, 11cqi, 68px);
  color: #000;
  line-height: 1.1;
  white-space: nowrap;
  paint-order: stroke fill;
  -webkit-text-stroke: 2px #000;
}

.kaisaibi1 {
  font-size: clamp(16px, 7.5cqi, 44px);
  margin-right: 0.1em;
}

.kaisaibi2 {
  font-size: clamp(18px, 8.8cqi, 54px);
}

.kaisaijikan {
  font-family: "Shin Go Bold", "新ゴ B", sans-serif;
  font-weight: bold;
  /* 時間の文字を大きく（最大 28px） */
  font-size: clamp(14px, 4.5cqi, 28px);
  line-height: 1.4;
  color: #000;
  margin-top: 12px;
  letter-spacing: -0.02em;
}

.jikan-indent { margin-right: 0.42em; }
.jikan-indent2 { margin-right: 0.35em; }

.kaisaibasho {
  font-family: "Shin Go Bold", "新ゴ B", sans-serif;
  font-weight: bold;
  /* 会場の文字を大きく（最大 36px） */
  font-size: clamp(16px, 5.8cqi, 36px);
  color: #000;
  margin-top: 15px;
}

.kaijou { color: #677cbd; }

.basho-small {
  font-size: 0.85em;
}

/* --- 右側エリアコンテンツ（雇用保険〜を大きく） --- */
.katudou-txt {
  text-align: center;
  font-family: "Shin Go Bold", "新ゴ B", sans-serif;
  font-weight: bold;
  /* 見出し文字を拡大 */
  font-size: clamp(22px, 3.5vw, 32px);
  color: #a80b2b;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

.katudou-kome {
  font-family: "Shin Go Medium", "新ゴ M", sans-serif;
  /* 注記の文字もしっかり読める大きさに拡大 */
  font-size: clamp(11px, 1.2vw, 13.5px);
  line-height: 1.4;
  color: #000;
  margin-top: 10px;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.katudou-kom-indent { margin-left: 1em; }

/* --- 下部案内テキスト --- */
.mopusikomi-txt {
  text-align: center;
  font-size: clamp(18px, 3.8vw, 32px);
  font-weight: bold;
  color: #a80b2b;
  margin-top: -30px;
}

.mopusikomi-kome {
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}

/* --- 申込ボタン --- */
.mousikomibut {
  text-align: center;
  margin: 35px auto 20px;
  padding: 0;
  width: 100%;
}

.mousikomibut a {
  display: inline-block;
  width: 100%;
  max-width: 900px;
  text-decoration: none;
  transition: transform 0.25s ease;
}

.mousikomibut a img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.18));
  transition: filter 0.25s ease;
}

.mousikomibut a:hover {
  transform: translateY(-3px);
}

.mousikomibut a:hover img {
  filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.25)) brightness(1.02);
}

.pptxt {
	font-size:15px;
	text-align:center;
}


/* ==========================================
   Contact Form 7 スタイル設定
========================================== */

/* フォーム全体の枠組み */
.wpcf7-form {
  max-width: 680px;
  margin: 0 auto;
  padding: 24px;
  box-sizing: border-box;
}

/* 各入力グループ */
.form-group {
  margin-bottom: 24px;
}

/* ラベル指定 */
.form-group label {
  display: block;
  font-weight: bold;
  margin-bottom: 8px;
  font-size: 0.95rem;
  color: #333333;
}

/* 必須バッジ */
.form-group label .required {
  display: inline-block;
  background-color: #e53935;
  color: #ffffff;
  font-size: 0.75rem;
  padding: 2px 6px;
  border-radius: 3px;
  margin-left: 8px;
  vertical-align: middle;
  font-weight: normal;
}

/* テキスト・メール・TEL・セレクトボックス共通 */
.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.wpcf7-text,
.wpcf7-select {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
  box-sizing: border-box;
  background-color: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
}

/* フォーカス時の強調 */
.wpcf7-text:focus,
.wpcf7-select:focus {
  border-color: #0073aa;
  box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
  outline: none;
}

/* ラジオボタン（運転免許証の有無） */
.wpcf7-radio {
  display: flex;
  gap: 20px;
  padding-top: 4px;
}

.wpcf7-radio .wpcf7-list-item {
  margin: 0;
}

.wpcf7-radio label {
  font-weight: normal;
  margin-bottom: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
}

.wpcf7-radio input[type="radio"] {
  margin: 0;
  cursor: pointer;
}

/* 送信ボタンのレイアウト */
.form-submit {
  text-align: center;
  margin-top: 32px;
}

.wpcf7-submit {
  background-color: #0073aa;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: bold;
  padding: 14px 48px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s, transform 0.1s;
  min-width: 200px;
}

.wpcf7-submit:hover {
  background-color: #005177;
}

/* エラー・成功メッセージの表示調整 */
.wpcf7-not-valid-tip {
  color: #dc3232;
  font-size: 0.85rem;
  margin-top: 4px;
}

.wpcf7-response-output {
  margin: 24px 0 0 0 !important;
  padding: 12px 16px !important;
  border-radius: 4px;
  font-size: 0.95rem;
  text-align: center;
}
/* ==========================================
   雇用保険受給対象：ハローワーク選択欄
========================================== */

/* 初期状態では非表示 */
.employment-office-wrap {
  display: none;
}

/* 「あり」を選択した時だけ表示 */
.employment-office-wrap.is-show {
  display: block;
}

/* ハローワーク未選択時のエラー */
.employment-office-error {
  display: none;
  color: #dc3232;
  font-size: 0.85rem;
  margin-top: 4px;
}

.employment-office-error.is-show {
  display: block;
}

/* ==========================================
   フッター
========================================== */

.original-footer {background: #677cbd;}
.footer-box {padding: 2em 5em;}
.footer1 {
	color:#fff;
	font-feature-settings: "palt";
	font-size:23.5px;
	margin-left: 3.4em;
    text-indent: -3.4em;
    line-height: 1.5;;
}
.syamei {
	color:#fff;
	font-feature-settings: "palt";
	font-size:34.5px;
	font-weight:bold;
}
.footer2 {
	color:#fff;
	font-feature-settings: "palt";
	font-size:23.5px;
}
.copyrite {
	color:#fff;
	font-feature-settings: "palt";
	font-size:15px;
	text-align:center;
	margin-top:1em;
}




/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (max-width: 700px){
	.header-title {width:95%;}
	.contents-container {width:90%;}
	.kaisaibi-flex {flex-direction: column;}
	.footer-box {padding:1em;        text-align: center;}
	.footer1 {
		font-size:17px;
		line-height: 1.5;
		margin-bottom: 1em;
		    margin-left: 0;
    text-indent: 0;
	}
	.syamei {font-size:20px;}
	.footer2 {
		font-size:17px;
		line-height: 1.5;
	}
}