/*
Theme Name: the7dtchild
Author: Dream-Theme
Author URI: http://dream-theme.com/
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/
@media (min-width: 100px) and (max-width: 768px){
	/* ニュース一覧へ */
	#default-btn-51b3e6ba2d462f7200e59e9d31332875{
		top: -110px!important;
	}
	/* 施工実績一覧へ */
	#default-btn-90022ba071f817b38fcebba941b1b936{
		top: -120px!important;
	}
	/* 製品情報一覧へ */
	#default-btn-ad9edfcdad6dbfbe6fab8197259a3610{
		top: -120px!important;
	}
	/* 技術情報一覧へ */
	#default-btn-3d1d6ae39d6051393c0f17e675059ac3{
		top: -150px!important;
	}
	/* 活動実績一覧へ */
	#default-btn-e32964314917c07775b09d8d78fb1bbf{
		top: -140px!important;
	}
	/* 施設運営事業一覧へ */
	#default-btn-0539125b7184769ffcaac8c6f0e64f92{
		top: -140px!important;
		font-size: 90%!important;
	}
}

.masthead:not(.side-header):not(.mixed-header) .header-bar, .header-space{
	min-height:50px;
	max-height: 86px!important;
}
.main-nav > li > a{
	10px 14px!important;
}

/* メニューの調整 */
.header-bar{
	height: 50px!important;
}
.header-space{
	height: 86px!important;
}
.main-nav > li > a{
	margin: 0px 5px 0px 10px;
	padding: 0px 4px 0px 4px;
}
.masthead:not(.side-header):not(.mixed-header) .header-bar, .header-space{
	min-height: 50px;
}
.spinner-loader{
	display:none;
}
/* ストーリーズのメガメニュー */
/*
li.stories a.mega-menu-img{
	pointer-events: none;
	text-decoration: none;
}
*/

li.stories img.the7-svg-image{
	width: 150px!important;
}

/* ニュース一覧：年・月アーカイブ選択 */
.oku-news-archive__selects{
	display: flex !important;
	align-items: center;
	gap: 16px;
}
.oku-news-archive__field{
	display: flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}
.oku-news-archive__field label{
	margin: 0;
}
.oku-news-archive__field select{
	width: auto;
}
.oku-news-category-filter{
	margin-top: 22px;
}

#about-us-stories .size-full{
	width: 100%;
	min-height: 300px;
}

/* ------------------------------------------------------------------
   会社情報＞事業所一覧（page-offices.php / page-office.php）
   他ページに影響しないよう .oku-offices / .oku-office 配下に限定
   ------------------------------------------------------------------ */

.oku-offices,
.oku-office{
	--oku-accent: #1ebbf0;
	--oku-accent-gradient: linear-gradient(135deg, #1ebbf0 30%, #39dfaa 100%);
	--oku-heading: #333333;
	--oku-line: rgba(51, 51, 51, 0.11);
	--oku-soft-bg: rgba(0, 0, 0, 0.04);
	--oku-muted: #8b8d94;
}

/* 見出し（The7 の ultimate_heading と同じ見た目に揃える） */
.oku-offices-section + .oku-offices-section,
.oku-office-section + .oku-office-section{
	margin-top: 60px;
}
.oku-offices-heading,
.oku-office-heading{
	margin: 0 0 15px;
	color: var(--oku-heading);
	font-size: 26px;
	font-weight: 700;
	line-height: 36px;
}
.oku-offices-heading-line,
.oku-office-heading-line{
	display: block;
	width: 50px;
	height: 4px;
	margin-bottom: 22px;
	background: var(--oku-accent);
}
.oku-offices-lead{
	max-width: 760px;
	margin: 0 0 28px;
}

/* エリア絞り込み */
.oku-offices-filter{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 34px;
	padding: 18px 20px;
	background: var(--oku-soft-bg);
}
.oku-offices-filter-label{
	align-self: center;
	margin-right: 6px;
	color: var(--oku-heading);
	font-size: 13px;
	font-weight: 700;
}
.oku-offices-filter button{
	padding: 8px 16px;
	border: 1px solid #d7d9dd;
	background: #fff;
	color: var(--oku-heading);
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	line-height: 16px;
	cursor: pointer;
	transition: 0.2s ease;
}
.oku-offices-filter button:hover{
	border-color: var(--oku-accent);
	color: var(--oku-accent);
}
.oku-offices-filter button[aria-pressed="true"]{
	border-color: transparent;
	background: var(--oku-accent-gradient);
	color: #fff;
}

/* 一覧 */
.oku-offices-list{
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--oku-line);
	list-style: none;
}
.oku-offices-list > li{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 20px 30px;
	margin: 0;
	padding: 24px 4px;
	border-bottom: 1px solid var(--oku-line);
}
.oku-offices-list > li[hidden]{
	display: none;
}
.oku-offices-item-head{
	flex: 0 0 260px;
}
.oku-offices-name{
	margin: 0;
	color: var(--oku-heading);
	font-size: 20px;
	font-weight: 700;
	line-height: 30px;
}
.oku-offices-name a{
	color: var(--oku-heading);
}
.oku-offices-name a:hover{
	color: var(--oku-accent);
	text-decoration: none;
}
.oku-offices-badge{
	display: inline-block;
	margin-top: 6px;
	padding: 3px 10px;
	background: var(--oku-soft-bg);
	color: #6d707a;
	font-size: 12px;
	font-weight: 700;
	line-height: 18px;
}
.oku-offices-item-body{
	flex: 1 1 380px;
	min-width: 0;
}
.oku-offices-item-body p{
	margin: 0 0 4px;
}
.oku-offices-tel span + span{
	margin-left: 1.4em;
}
.oku-offices-item-actions{
	flex: 0 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	gap: 8px;
	margin-left: auto;
}
.oku-offices-pending,
.oku-office-pending{
	color: var(--oku-muted);
	font-size: 14px;
}

/* ボタン */
.oku-offices-btn{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 18px;
	border: 1px solid #d7d9dd;
	background: #fff;
	color: var(--oku-heading);
	font-size: 13px;
	font-weight: 700;
	line-height: 16px;
	transition: 0.2s ease;
}
.oku-offices-btn:hover{
	border-color: var(--oku-accent);
	color: var(--oku-accent);
	text-decoration: none;
}
.oku-offices-btn-accent{
	padding: 16px 24px;
	border-color: transparent;
	background: var(--oku-accent-gradient);
	color: #fff;
	font-size: 16px;
}
.oku-offices-btn-accent:hover{
	color: #fff;
	opacity: 0.88;
}

/* 詳細 */
.oku-office-notice{
	margin: 0 0 28px;
	padding: 16px 20px;
	border-left: 4px solid var(--oku-accent);
	background: var(--oku-soft-bg);
	font-size: 14px;
}
.oku-office-grid{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	gap: 50px;
	align-items: start;
}
.oku-office-table{
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid var(--oku-line);
}
.oku-office-table th,
.oku-office-table td{
	padding: 16px 14px;
	border-bottom: 1px solid var(--oku-line);
	text-align: left;
	vertical-align: top;
}
.oku-office-table th{
	width: 128px;
	background: var(--oku-soft-bg);
	color: var(--oku-heading);
	font-weight: 700;
	white-space: nowrap;
}
.oku-office-note{
	margin: 22px 0 0;
}
.oku-office-map{
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 3;
	border: 1px solid var(--oku-line);
	background: var(--oku-soft-bg);
}
.oku-office-map iframe{
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}
.oku-office-map-placeholder{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	margin: 0;
	padding: 30px;
	color: var(--oku-muted);
	font-size: 14px;
	text-align: center;
}
.oku-office-map-actions{
	margin-top: 14px;
}

/* 他の事業所 */
.oku-office-siblings{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none!important;
}
.oku-office-siblings li{
	margin: 0;
}
.oku-office-siblings a,
.oku-office-siblings .current span{
	display: inline-block;
	padding: 9px 16px;
	border: 1px solid var(--oku-line);
	color: var(--oku-heading);
	font-size: 14px;
}
.oku-office-siblings a:hover{
	border-color: var(--oku-accent);
	color: var(--oku-accent);
	text-decoration: none;
}
.oku-office-siblings .current span{
	border-color: transparent;
	background: var(--oku-soft-bg);
	color: var(--oku-muted);
}
.oku-office-back{
	margin: 22px 0 0;
}

/* お問合せ */
.oku-offices-cta{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 60px;
	padding: 34px 40px;
	background: var(--oku-soft-bg);
}
.oku-offices-cta h2{
	margin: 0 0 6px;
	color: var(--oku-heading);
	font-size: 20px;
	font-weight: 700;
	line-height: 30px;
}
.oku-offices-cta p{
	margin: 0;
	font-size: 14px;
}

@media screen and (max-width: 1100px){
	.oku-office-grid{
		grid-template-columns: minmax(0, 1fr);
		gap: 34px;
	}
}

@media screen and (max-width: 900px){
	.oku-offices-item-head,
	.oku-offices-item-body{
		flex: 1 1 100%;
	}
	.oku-offices-item-actions{
		margin-left: 0;
	}
	.oku-offices-cta{
		padding: 26px 22px;
	}
}

@media print{
	.oku-offices-filter,
	.oku-offices-cta{
		display: none !important;
	}
}

/* 通常検索の検索結果画面：再検索入力欄の文字色 */
.search-conditions input.searchform-s{
	color: #222 !important;
	-webkit-text-fill-color: #222;
}
.search-conditions input.searchform-s::placeholder{
	color: #666 !important;
	opacity: 1;
}
