@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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}



/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:700px){
.inquiry th,.inquiry td {
 display:block!important;
 width:100%!important;
 border-top:none!important;
 -webkit-box-sizing:border-box!important;
 -moz-box-sizing:border-box!important;
 box-sizing:border-box!important;
}
.inquiry tr:first-child th{
 border-top:1px solid #d7d7d7!important;
}
/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
font-size:10px;
}}
/*見出し欄*/
.inquiry th{
 text-align:left;
 font-size:15px;
 color:#000;
 padding-right:5px;
 width:25%;
font-weight:bold;
 background:#a0d8ef;
 border:solid 1px #FFFFFF;
}
/*通常欄*/
.inquiry td{
 font-size:15px;
 border:solid 1px #a0d8ef;
background:#ffffff;	
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:7px;
 padding:5px;
 background:#ff9393;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:7px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 display:block;
}
/*送信ボタンのデザイン変更*/
#formbtn{
 display: block;
 padding:1em 0;
 margin-top:30px;
 width:100%;
 background:#ffaa56;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
 border-radius:2px;
 border: none;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#fff;
 color:#ffaa56;
}

/*
.grecaptcha-badge {
bottom: 10px!important;
}
*/

.grecaptcha-badge { visibility: hidden; }


.mobile-menu-buttons {
background: #0f2350;
color: white;
}

.mobile-menu-buttons .menu-button > a {
color: white;
}




/*全てをまとめて非表示*/
.home.page .entry-title,
.home.page .sns-share,
.home.page .sns-follow,
.home.page .date-tags,
.home.page .author-info{
  display: none;
}

.entry-title{
  display: none;
}



/* モバイルトップメニュー 横スクロール*/
@media screen and (max-width: 480px){
	ul.menu-mobile{
		overflow-x: auto;
		overflow-y: hidden;
		display: flex !important;
		flex-wrap: nowrap;
		font-size: 14px;
		justify-content: flex-start;
		padding: 0 1em;
		-webkit-overflow-scrolling: touch;
		position: relative;
	}

	ul.menu-mobile > li{
		padding-right: 1em;
		white-space: nowrap;
	}
	ul.menu-mobile　.item-label{
		white-space: nowrap;
		font-size: 14px;
	}
}
.footer_tb td {
	border: none;
	background: none;
}



/* ページID1025 だけ #main のパディングを0に */
.page-id-1025 #main.main,.page-id-489 #main.main {
  padding: 0 !important;
}

/* 必要に応じて内側の余白もリセット（Cocoonの構造対策） */
.page-id-1025 #main.main > .wrap,
.page-id-1025 #main.main .entry-content {
  padding: 0 !important;
}

  .hero-title {
  font-size: clamp(22px, 6vw, 36px);
  line-height: 1.4;
  word-break: keep-all;
  overflow-wrap: normal;
  white-space: normal;
  text-align: center;
}

.nowrap {
  white-space: nowrap;   /* この塊の中は絶対に折らない */
}


/* === 共通（PC） === */
.hero {
  position: relative;
  background: url('https://hogushitokoro-takumi.com/wp-content/uploads/2025/12/generated_image_7-e1764903483526.jpg') center/cover no-repeat;
  filter: brightness(0.88) contrast(1.1) saturate(1.05);
  color: #fff;
  text-align: center;
  padding: 120px 20px;
  overflow: hidden;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(15, 35, 80, 0.25); /* 濃藍オーバーレイで統一感 */
  z-index: 1;
}
.hero .lp-container {
  position: relative;
  z-index: 2;
}

/* === スマホ対応 === */
@media (max-width: 767px) {
  .hero {
    background-position: center 45%; /* タオル中心をやや上に配置 */
    background-size: cover;
    filter: brightness(0.92) contrast(1.05);
    padding: 80px 15px;
  }
  .hero::after {
    background: rgba(15, 35, 80, 0.35); /* 少し濃くして文字を読みやすく */
  }
  .hero .hero-title {
    font-size: 1.5rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .hero p {
    font-size: 0.95rem;
    line-height: 1.7;
    color: rgba(255,255,255,0.95);
  }
  .hero .btn-cta {
    font-size: 1rem;
    padding: 10px 22px;
  }
}

/* === タブレット調整（任意） === */
@media (min-width: 768px) and (max-width: 1024px) {
  .hero {
    background-position: center 40%;
    padding: 100px 30px;
  }
}

