@charset "UTF-8";
/*!
Theme Name: wald-inc-child
Template: simplicity2
Version: 202504
*/
/* root設定, HTML5 Reseting, 親テーマスタイルの上書きと基本レイアウトのスタイル */
/************************************************************************
** root
*************************************************************************/
:root {
	--fzSSS: 69%; /*	SSS=69%, 83%, 93%, 112%, 125%, 137% */
	--fzSS: 76%;
	--fzS: 88%;
	--fzL: 115%;
	--fzLL: 129%;
	--fzLLL: 143%;
	--fzLLLL: 157%;
	--rato: "Lato";
	--notosans: "Noto Sans JP";
	--yugothic: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic";
	--yugothic-m: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic";

	--base-font: var(--notosans), var(--yugothic-m), "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	--bold-font: var(--notosans), var(--yugothic), "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	--tel-font: var(--rato), Arial, sans-serif;

	--base-font-size-sp: 1.6rem; /* 1.4rem, 1.5 */
	--base-font-size-tb: 1.7rem; /* 1.5rem, 1.5 */
	--base-font-size-pc: 1.7rem;
	--base-line-height-sp: 1.6;
	--base-line-height-tb: 1.7;
	--base-line-height-pc: 1.7;
	
	--footer-font-size: 1.4rem;
	
	--inner-max-width: 1260px; /* 1020px */
	--inner-max-width-contents: 1200px;
	--inner-lr-padding-sp: 20px; /* 14px */
	--inner-lr-padding-tb: 30px; /* 20px */
	--inner-lr-padding-pc: 60px;

	--box-padding: 25px;
	--box-padding-s: 15px;

	--main-green: #00ad00; /*#00a800*/ /* ok */
	--main-green-rgba: 0,173,0;
	
	--main-green-hover: rgba(0,173,0, .7);
	--bg-hover-rgb: rgba(255,255,255, .14);

	--red: #e00100; /* ok */
	--pink: #fd7380;
	--yellow: #ffd700; /* ok */
	--yellow-green: #7bdb18;
	--light-orange: #fea900; /* ok */
	--orange: #f78105; /* ok */
	--dark-orange: #e8460e; /* ok */
	--dark-green: #c9d199; /* ok */
	--light-gray: #ccc; /* #c0c0c0 */
	--gray999: #999;
	--gray444: #444;      /* 現在のリンクカラー（readmoreなど）：変換まだarticleはbg_gray444も使用している*/
	--dark-gray: #3a3a3a; /* footerなど */

/* フッターナビの現在のグレー背景 #ececec */
/*	--gray-d8: #d8d8de;
	--gray-e2: #e2e2e6;
	--gray-f1: #f1f1f1;
	--blue-gray: #5c7899;
	--blue: #1377b4;
	--green: #41853a;*/

	--bg-light-gray: #f3f3f3; /* #eef0f3 少し赤味#f3f3f3,#f9f9f9;*/ /* ph etc. */
	--bg-light-main-green: #f5fcf6; /* homeで使用 */
    --bg-request: var(--light-orange); /* ok */
	--bg-contact: var(--orange);  /* ok */
	--bg-visit: var(--dark-orange); /* ok */
	--bg-tel: var(--main-green);  /* ok */
	--bg-event: var(--yellow);  /* ok */
	--bg-information: var(--pink);  /* ok */
	--bg-news-letter: var(--yellow-green);  /* ok */


	--body-black: #111;
	--link-color: ;  /* 現在#444、#00e000どうするか */
	
	--footer-bg: var(--dark-gray); /* 使用中 */
	--footer-gray-border: #666; /* 使用中 */
	--footer-gray-text: #999; /* 使用中 */
	--footer-link-color: #999;

	--hover-color:;
	--gnav-bg:;
	--gnav-hover-bg:;
	--gnav-line:;
	--table-th-bg: var(--gray-e2);
	--breadcrumb-bg: var(--gray-d8);
	--page-topvisual-bg: var(--gray-f1);

  /*  --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px; */
}

/* 読込w400,700 */
.font-notosanjp {
  font-family: var(--notosans), sans-serif;
  font-style: normal;
  font-weight: 400;
}
/* 読込w700 */
.font-latoB {
  font-family: var(--rato), sans-serif;
  font-style: normal;
  font-weight: 700;
}
b, strong, .bold, .fwB { font-family: var(--bold-font);}

/************************************************************************
** HTML5 elements, Reseting
*************************************************************************/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main
{ display: block;}

html { font-size: 62.5%; overflow-y: scroll;}
body {
	background-color: #fff;
	/*border-top: 5px solid var(--footer-bg);*/
	color: var(--body-black);
	font-family: var(--base-font);
	font-size: var(--base-font-size-sp);
	line-height: var(--base-line-height-sp);
	text-align: center;
	width: 100%;
	/*overflow-wrap: break-word;*/
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict; /* auto */
	-webkit-text-size-adjust:100%;
}
body:not(#home) {
	border-top: 5px solid var(--footer-bg);
}

body, div, /*pre, blockquote,*/p, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, figure, figcaption
{ margin: 0; padding: 0;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
caption, th
{ text-align: left;}
ul, ol
{ list-style: none;}
fieldset, img
{ border: 0;}
img
{ max-width: 100%; height: auto; vertical-align: top; border: 0;} /* 追加 border: 0; */
/*a, input
{ outline: none; }*/
input, textarea
{ max-width: 100%; margin: 0; font-size: 100%; border-radius: 0; font-family: var(--base-font);}
input[type="button"],input[type="submit"]
{ -webkit-appearance: none; background: none; border: none; padding: 0; cursor: pointer;}
label
{ cursor: pointer;}
q::after, q::before
{ content:"";}
abbr, acronym
{ border: 0;}
*
{ box-sizing: border-box;}

pre { padding: 3px 7px;}
sup { font-size: 70%; vertical-align: top;}
sub { font-size: 70%; vertical-align: baseline;}

/* 最終的にはクラス名のみに変えたい */
figcaption, .figcaption {
	display: table;
	text-align: left;
	line-height: 1.3;
	font-size: 1.25rem;
	font-weight: bold;
	padding: 0 2px 2px 4px;
	margin: .5em auto;
}
	figcaption.bg_gray-ph, .figcaption.bg_gray-ph {
		display: block;
		padding: .5em 2px .5em 4px;
		margin: 0 auto;
	}

/************************************
** clearfix
*************************************/
.clearfix,
section, article, aside,
#header, #contents {
	display: block;
	min-height: 1%;
}

.clearfix::after,
section::after, article::after, aside::after,
#header::after, #contents::after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}

/************************************
** アンカー  ※親上書き※
*************************************/
a { color: /*#4d4d4d;*/#444;
	text-decoration: underline;
}
a:visited {}
a:hover, a:active, a:focus:not(:focus-visible) {outline: none;}

.widget_new_entries a,
.widget_new_popular a,
.widget_popular_ranking a,
.wpp-list a,
.entry-read a,
.related-entry-read a,
.article-list .entry-title a {
	color: /*#4d4d4d;*/#444;
}

/* hover */
a:hover, a:active, a:focus {
	color: var(--main-green);
	text-decoration: none;
}
.widget_new_entries a:hover,
.widget_new_popular a:hover,
.widget_popular_ranking a:hover,
.wpp-list a:hover,
.entry-read a:hover,
.entry .post-meta a:hover,
.related-entry-read a:hover,
.entry a:hover,
.related-entry-title a:hover,
.navigation a:hover,
.article-list .entry-title a:hover,
.blog-card-title a:hover{
	color: var(--main-green);
}

/************************************
** 見出し（H1-6）  ※親上書き※
************************************/
.article h2,
.article h3,
.article h4,
.article h5,
.article h6,
#voice.single #wpEditor-content h2,
#voice.single #wpEditor-content h4 {
	line-height: 1.2;
	font-weight: bold;
	margin: 1.5em 0 1em 0;
}

body.page .entry-content{
  margin-bottom: 0;
}

/* = headLine02-l-line */
.article h2,
#voice.single #wpEditor-content h2 {
	border-left: 6px solid var(--main-green);
	font-size: 2.0rem;
	padding: 0 0 0 0.5em;
	margin: 2em 0 1em 2px;
}

/* = headLine03-fwB + title-icon */
.article h3{
	font-size: 120%;
	border-bottom: none;
	padding:0 0 0 36px;
	line-height: 1.3;
}
	.article h3::before{
		position: absolute;
		font-family: "icomoon";
		content: "\e906";
		top: 48%;
		left: 0;
		width: 24px;
		height: 24px;
		color: #fff;
		line-height: 24px;
		text-align: center;
		font-size: 1.6rem;
		font-weight: normal;
		background-color: #ffca2c;
		border-radius: 50%;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
	.article h3::after {
		display: block;
		position: absolute;
		content: "";
		top: 48%;
		left: 20px;
		width: 0;
		height: 0;
		border-top: 6px solid transparent;
		border-bottom: 6px solid transparent;
		border-left: 10px solid #ffca2c;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}

.article h4, .article h5, .article h6,
#voice.single #wpEditor-content h4 {
	font-size: 110%;
	padding:0;
	border: none;
}

/* body.ichiran */
body.ichiran .article h2 {
	border-left: none;
	padding: 0;
	margin: 0 0 1em 0;
}

body.ichiran .article h3{
	position: static;
	padding:0;
}
body.ichiran .article h3::before,
body.ichiran .article h3::after {position: static; content: ""; border: none;}


@media (min-width: 640px){
.article h2, #voice.single #wpEditor-content h2{ font-size: 2.1rem;}
}

@media (min-width: 980px){
.article h2, #voice.single #wpEditor-content h2 { font-size: 2.3rem;}
.article h3 { font-size: 128%;}
}

/************************************
** 引用（blockquote）  ※親上書き※
*************************************/
blockquote {
	padding: 10px 45px;
}

blockquote:after { bottom: -8px;}
body.mobile blockquote:after { bottom: 0;}

/* for mobile */
blockquote:before, blockquote:after { display: block;}
body.mobile blockquote:before, body.mobile blockquote:after { font-family: 'Georgia', 'Times', 'Times New Roman', serif;}

/************************************
** リスト（List）  ※親上書き※
************************************/
.article ul {list-style-type: disc; margin-left: 1.2em;}

ul.mark-note, ul.mark-disc, ul.mark-arrow, ul.mark-arrow-single {list-style: none; margin-left: 0;}

/************************************
** 投稿のテーブル（Table）  ※親上書き※
************************************/
.article table{
	font-size: 90%;
}

.article th, 
.article td{
	text-align: center;
}
.article th{ background-color: #f4f4f4;}

/************************************
** モバイルメニュー（不要） ※親上書き
*************************************/
#mobile-menu {
    display: none;
}
/************************************
** WordPress Misc  ※親上書き※
************************************/
.wp-caption {border:none;}
.wp-caption-text{
	display: table;
	padding: 4px;
	margin:auto;
	text-align: left;
	line-height: 1.2;
}
/************************************
** サーチフォーム（Search Form） ※親上書き
************************************/
#searchform {
	margin-top: 0;
}
@media (min-width:768px){ #searchform{margin-top: 0;} }

/* #sidebar-widget .widget_search */
#s {
	font-size: 1.2rem;
}
/* Base64変換PNGをクリアなSVGに変更 */
#searchsubmit {
background: url('data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjMDAwMDAwIiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCiAgICA8cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz4NCiAgICA8cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+DQo8L3N2Zz4=') 28px/28px;
}
/************************************
** 入力フォーム（Form） ※親上書き
************************************/
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
textarea:focus {
	border: 1px solid #999;
	box-shadow:  0 0 3px rgba(153,153,153, 1);
}
/************************************
** SNSシェアボタン  ※親上書き
************************************/
ul.snsbs li a{
  width:35px;
  height: 35px;
}
/************************************
** SNSページフォロー  ※親上書き
************************************/
#sns-group {
	margin-top: 15px;
}
#contents .sns-follow-msg,
#contents .sns-share-msg {
  font-size: var(--fzS);
  margin:0;
}
ul.snsp li a span {
  font-size: 34px;
  width: 34px;
  height: 34px;
  margin: 0 .2em;
}
/* 子テーマではアイコン変更したため調整 */
ul.snsp li a i {
  font-size: 34px;
  width: 35px;
  height: 35px;
  margin-right: .5em;
  margin-left: 5px;
}
ul.snsp li a img {
  /*margin: -13px 1em 0 0;*/
  margin-right: 1em;
}
ul.snsp li a:hover img {
	opacity: .8;
}
#sns-group ul.snsp li a:hover{
  color: inherit;
}
/************************************
** バイラルボタン  ※親上書き
************************************/
.sns-group-viral ul.snsb li{
  width: auto;
  margin-right: 1em;
}

.sns-group-viral ul.snsb li a{
  width: 38px;
  height: 38px;
  line-height: 30px;
  border-radius: 50%;
}
.sns-group-viral .social-icon:after{
  content: '';
  margin: 0;
}
/************************************
** 前の記事へ、次の記事へ（デフォルト） ※親上書き
************************************/
.navigation{
	clear: both;
	font-size: 1.3rem;
	margin: 20px 0 4px;
	font-weight: bold;
}
.navigation a{
	text-decoration: none;
}
.navigation a:hover{
	background: var(--bg-light-gray);
}
/************************************
** 前の記事へ、次の記事へ（サムネイルつきポストナビ） ※親上書き
************************************/
#prev-next{
	margin: 36px 0 2px;
}
#prev-next #prev:hover, #prev-next #next:hover{
	background: var(--bg-light-gray);
}
/************************************
** ページャー、ページナビゲーション  ※親上書き
************************************/
a.page-numbers,
.pager .current{
	padding: 8px 12px;
	background-color: #fff;
	border: 1px solid #666;
	border-radius: 3px;
	color: #444;
	font-size: 1.4rem;
	font-weight: bold;
    text-decoration: none;
}
.pager .current{
    background-color: #444;
   	border: 1px solid #444;
	color: #fff;
}
a.page-numbers:hover{
	background-color: var(--bg-light-gray);
	border: 1px solid #ccc;
}
/************************************
** レスポンシブページネーション  ※親上書き
************************************/
.pagination{
  margin: 1.5em auto !important;
}
/************************************
** 記事分割時のページナビゲーション ※親上書き
************************************/
.page-link {
  margin: 2em auto;
  text-align:center;
}
.page-link span,
.comment-page-link span,
.comment-page-link a{
  margin-right: 0;
  padding: 6px 11px;
  background-color: #444;
  border: 1px solid #444;
  border-radius:3px;
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}
.page-link a span,
.comment-page-link a{
  background: #fff;
  border: 1px solid #666;
  color:#444;
}
.page-link a{
  border-bottom: none;
  color: #444;
  text-decoration:none;
}
.page-link a span:hover,
.comment-page-link a:hover{
  background-color: var(--bg-light-gray);
  border: 1px solid #666;
  border-radius: 3px;
  color: #444;
}
/************************************
** ブログカードのスタイル  ※親上書き
************************************/
.blog-card-title a{
	font-size: 100%;
	margin-bottom:8px;
	line-height: 1.2;
}
.blog-card-excerpt{
	font-size: 80%;
	line-height:1.3;
}
@media (min-width: 480px){
  .blog-card-title{
	padding: 5px 0;
  }
  .blog-card-title a{
	font-size: 106%;
  }
  .blog-card-excerpt{
	font-size: 88%;
	line-height:1.4;
  }
  /* blog-card-wide */
  .blog-card.blog-card-wide{
	width: 100%;
	margin: 20px auto;
  }
  .blog-card.blog-card-wide .blog-card-content{
	margin-left:0;
  }
}
/************************************
** 個々ページ：スタイル  ※親上書き
************************************/
/* Open house */
ul.tile4 {
	margin-left:-6px;
}
ul.tile4 li {
	float: left;
	list-style-type: none;
	margin-right: 1px;
}

/************************************
** レイアウト（Layout） ※親上書き
************************************/
#body{
  min-height: 500px; /* for scroll upBtn */
}
#gNavi + #body {
  margin-top: 0;
}
#header-in, #navi-in, #body-in, #footer-in {
  width: auto;
}
#container #main {
	float: none;
	width:100%;
	padding: 0;
	margin: 0;
	border: none;
}
#container #sidebar,
#container #my-sidebar {
	float: none;
	width: 100%;
	text-align: left;
	padding: 0;
	margin: 0;
}

/* 以下、基本子テーマ独自 */
/********************************************
** inner
*********************************************/
.inner { 
	max-width: var(--inner-max-width);
	padding: 0 var(--inner-lr-padding-sp);
	text-align: left;
	margin: 0 auto;
}
	body.parent #contents.inner {
		max-width: var(--inner-max-width-contents);
	}

/********************************************
** ヘッダー(header) → 全て差替
** 親と被っている名前：#headerのみ
*********************************************/
/*hover*/
.header-logo:hover,
.header-btn-talk-group .header-btn a:hover,
.header-topfixed-item .language a:hover,
.header-sns-wrap .btn-sns a:hover { opacity: .7;}

/* キャッチフレーズ */
.header-lead {
	display: table;
	text-align: left;
	font-size: 1.2rem;
	line-height: 1.3;
	/*margin: 2.6em auto 1em;*/
	margin: 2.7em auto 1.5em;
}
.header-logo-btn-area-wrap {
	margin-top: 2.5em;
}
	.header-logo {
		/*width: 97%;
		max-width: 360px;*/
		width: min(97%, 360px);
		text-align: center;
		margin: 0 auto 1em;
	}
.header-lead + .header-logo-btn-area-wrap {
	margin-top: 0;
}

/* header-topfixed-group-wrap
* (.header-topfixed-item, .header-sns-wrap(.sp-hide))
-----------------------------------------------------*/
.header-topfixed-group-wrap {
	position: absolute;
	top: 0;  /* 拡大時のborder(5px)とlanguageとの透間防止のため */
	right: 0;
	margin-right: 6.5em;
}
.header-topfixed-item .language {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	min-width: 6.8em;
}

/* header-topfixed-item */
.header-topfixed-item a {
	text-decoration: none;
}
.header-topfixed-item a::before {
	font-family: "icomoon";
	content: "\e900";
	font-size: 1.4rem;
	vertical-align: middle;
}
.header-topfixed-item .item {
	display: inline-block;
	vertical-align: top;
	font-size: 1.3rem;
	padding-top: 8px;
	margin-left: 6px;
}
	.header-topfixed-item .language {
		background-color: var(--footer-bg);
		color: #fff;
		text-align: center;
		padding: 7px 8px 3px;
		margin-left: 10px;
	}
	.header-topfixed-item .language a,
	.header-topfixed-item .language a:hover {
		color: #fff;
	}


/* header-sns-wrap */
.header-sns-wrap.sp-hide { display: none;}


/* .header-btn-wrap.header-btn-go-to-form-group
** .header-btn-wrap.header-btn-talk-group
------------------------------------------------*/
.header-btn-wrap {
	display: flex;
	justify-content: space-between;
	gap: 0 6px;
	width: 100%;
}
.header-btn-go-to-form-group {margin-bottom: 6px;}

.header-btn-wrap .header-btn {
	font-size: 1.1rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	min-height: 42px; /* LINEと合わせ */
	flex: 1;
}
.header-btn-wrap .header-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	width: 100%;
	height: 100%;
	padding: .3em .1em;
}
	.header-btn-go-to-form-group .header-btn a {
		flex-direction: column;
	}

/* header-btn-talk-group(tel,line) */
.header-btn-talk-group .header-btn {
	background-color: var(--bg-light-gray);
	color: inherit;
}
.header-btn-talk-group .header-btn a,
.header-btn-talk-group .header-btn a:hover,
.header-btn-talk-group .header-btn a:focus {
	color: inherit;
	background-color: transparent;
}
/* tel */
.header-btn-talk-group .tel-number {
	font-size: calc(1.1rem * 1.3);
}
.header-btn-talk-group .tel-number::before {
	font-family: "icomoon";
	content: "\e903";
	color: var(--main-green);
	display: inline-block;
	vertical-align: middle;
	font-weight: normal;
	margin: 0 3px 1px 0;	
}
/* line */
.header-btn-talk-group .btn-line .svg-sns-icon {
	width: 40px;
}
.header-btn-talk-group .btn-line-text {
	margin-inline: 20px;
}
.header-btn-talk-group .btn-line a {
	padding: 1px;
}

@media (min-width: 480px){
/*---------------------------
** ヘッダ(header)
---------------------------*/
.header-btn-wrap .header-btn {
	font-size: 1.4rem;
}
	.header-btn-go-to-form-group .header-btn a {
		flex-direction: row;
	}
	.header-btn-talk-group .tel-number {
		font-size: calc(1.4rem * 1.1);
	}
}
/* 640 */
@media (min-width: 600px){
/*---------------------------
** ヘッダ(header)
---------------------------*/
/* sns表示する場合 */
/*.header-sns-wrap.sp-hide { display: flex;}
	.header-lead { display: block;}
	.header-logo { margin-left: 0;}
.header-sns-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0 .8em;
	margin-top: 36px;
}
.header-sns-wrap .btn-instagram {
	margin-left: .1em;
}
.header-sns-wrap .btn-youtube {
	margin-right: var(--inner-lr-padding-sp);
}
*/

.header-btn-wrap .header-btn {
	font-size: 1.5rem;
}

.header-btn-talk-group .header-tel {
	flex-grow: 2;
}
.header-btn-talk-group .header-tel a::before {
	content: "電話でご相談";
	display: inline-block;
	vertical-align: middle;
	font-size: var(--fzS);
	font-weight: normal;
	margin: 0 1em 2px 0;
}
.header-btn-talk-group .tel-number {
	font-size: 2rem;
}
}
@media (min-width: 768px){
/*--------------------------
** ヘッダ(header)
---------------------------*/
.header-topfixed-group-wrap {
	display: flex;
	flex-direction: row-reverse;
}
.header-sns-wrap {
	margin: 3px .7em 0;
}
.header-sns-wrap .btn-instagram {margin: 3px 1px 0 0;}
.header-sns-wrap .btn-youtube {margin-right: 0;}

/* キャッチフレーズ */
.header-lead {
	display: block;
	/*margin: .8em 0 1.3em .8em;*/
	margin: 7px .3em 2em;
	max-width: 70%;
}

.header-logo-btn-area-wrap {
	display: grid;
	justify-items: space-between;
	align-items: center;
	grid-template-columns: 43% 1fr;
	grid-template-rows: auto auto;
	gap: .8em 2%;
}
	.header-logo {
		grid-row: 1;
		grid-column: 1;
		width: 100%;
		max-width: 340px;
		margin: -.6em 0 0 -5px;
	}
	.header-btn-go-to-form-group {
		grid-row: 1;
		grid-column: 2;
		justify-self: end;
		max-width: 600px;
	}
	.header-btn-talk-group {
		grid-row: 2;
		grid-column: 1 / 3;
	}

.header-btn-wrap .header-btn {
	font-size: clamp(1.4rem, 1.088rem + 0.41vw, 1.6rem);
}
.header-btn-talk-group .header-tel {
	flex-grow: 1;
}

}
/* 980px or 1080px */
@media (min-width: 980px){
/*--------------------------
** ヘッダ(header)
---------------------------*/
.header-btn-wrap .header-btn {
	min-height: 36px;
}
.header-btn-talk-group .btn-line .svg-sns-icon {
	width: 32px;
}
.header-btn-talk-group .btn-line .btn-line-text {
	margin: 0 10px 0 15px;
}

.header-logo-btn-area-wrap {
	gap: 0 2%;
}
	.header-logo {
		grid-row: 1 / 3;
		max-width: 380px;
	}
	.header-btn-talk-group {
		grid-column: 2;
		justify-self: end;
		max-width: 600px;
	}

.header-btn-talk-group .header-tel {
	flex-grow: 2;
	background-color: transparent;
}
/* 背景なし・リンク領域変更 */
.header-btn-talk-group .header-btn.header-tel a {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: auto;
	padding: 0;
	margin-top: .3em;
}
.header-btn-talk-group .tel-number {
	font-size: 2.5rem;
}
/* marker(under) line付与 */
.header-btn-talk-group .header-tel a {
	position: relative;
	padding-bottom: .1em;
}
	.header-btn-talk-group .header-btn.header-tel a::after {
		position: absolute;
		content: '';
		bottom: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: .4em;
		background-color: var(--bg-light-gray);
	}
}

/********************************************
** グローバルナビメニュー（menu）→ 全て差替
** 親と被っている名前：なし
********************************************/
#gNavi {
	border-top: 1px solid #ccc;
	margin: 1.2em auto;
}
#gNavi .inner { padding: 0;}

#gNavi ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	overflow: hidden;
	width: 100%;
}
	#gNavi li {
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		text-align: center;
		line-height: 1.1;
		width: 50%;
	}
	#gNavi li:nth-child(even) { border-right: none;}

	#gNavi li a {
		display: block;
		color: inherit;
		text-decoration: none;
		width: 100%;
		height: 100%;
		padding: .6em .1em;
	}
@media (any-hover:hover) {
	#gNavi li a:hover {
		background-color: var(--main-green);
		color: #fff;
	}
}

/* ロゴはトップページのみ出力（1100px以上） */
#gNavi .gnavi-logo {
	display: none;
	width: 150px;
	min-width: 100px;
	margin: -3px 1.2em 0 0;
}

/* current 
-------------*/
#gNavi .current-menu-item a,
#gNavi .current-page-ancestor a,
#gNavi .current-post-ancestor a,
#gallery #gNavi .menu-item-object-gallery a,
#voice #gNavi .menu-item-object-voice a {
	background-color: var(--main-green);
	color: #fff;
}

/********************************************
** パンくずリスト（Breadcrumb）  ※親上書き
*********************************************/
#breadcrumb{
	margin-bottom: 0;
	padding: 1em 0;
	font-size: 1.1rem;
	color: #7a7a7a;
}
	body.templ-posts #breadcrumb{
		margin-bottom: 2em;
	}
#breadcrumb a{ color: #7a7a7a; text-decoration: underline;}
#breadcrumb a:hover { color: var(--main-green); text-decoration: none;}

/* 親上書き */
div#breadcrumb div { display: block;}
#breadcrumb .inner div { display: inline;}

/********************************************
** ページコンテンツ下に挿入する関連ページへのリンクボタン
** (pagelink-***.phpで読込 ※***は設置ページ名)
*********************************************/
.area-pageContents-link {
	width: 100%;
	color: #fff;
	margin-bottom: 1em;
}
.area-pageContents-link .contentsCol.one-contents {
	text-align: right;	
}

@media (min-width: 480px){
/*--------------------------
** area-pageContents-link
---------------------------*/
.area-pageContents-link .contentsCol .col1-3 {
	width: 48.4%;
}
}
@media (min-width: 640px){
/*--------------------------
** area-pageContents-link
---------------------------*/
.area-pageContents-link .contentsCol {
	text-align: right;	
}
.area-pageContents-link .contentsCol .col1-3 {
	width: 31.4%;
}
}
@media (min-width: 980px){
/*--------------------------
** area-pageContents-link
---------------------------*/
.area-pageContents-link .contentsCol .col1-3 {
	width: 31.6%;
}
}

/********************************************
** ページ下バナー
** （page-bottom-banner.php）
*********************************************/
/* .area-banner */
.area-banner {
	margin-bottom: 30px;
}
.banner-item-wrap,
.banner-item img {
	width: 100%;
	margin: 0 auto;
}
.banner-item-wrap a:hover img {
	opacity: .8;
}
.banner-item {
	width: 100%;
	margin-bottom: 1em;
}
.banner-item.col2_4 {
	width: calc(100%/2 - .5em);
}
@media (min-width: 640px){
  .banner-item.col2_4 {
	  width: 25%;
  }
}

/********************************************
** ページ下お問い合わせ情報まとめエリア
** （page-bottom-contact-info.php ※現在ホームのみ読込）
*********************************************/
#page-bottom-contact-info {
	border-bottom: 1px solid #666;
	background-color: #e9e9e9;
	color: var(--body-black);
	padding: 3em 0;
	transition: .5s;
}
	/* is-active(js) */
	#page-bottom-contact-info.is-active {
		background-color: var(--footer-bg);
		color: #fff;
	}
	#page-bottom-contact-info.is-active .title {color: #fff;}
	#page-bottom-contact-info.is-active .contact-info {border-color: #fff;}

#page-bottom-contact-info .contact-info-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#page-bottom-contact-info .contact-info {
	border: 1px solid var(--body-black);
	padding: 35px;
	margin-bottom: 20px;
	display: flex;
	flex-direction: column;
}
#page-bottom-contact-info .link-item-wrap {
	margin: auto 0 0;
}
#page-bottom-contact-info .link-item {
	font-size: 1.7rem;
	margin-top: 1em;
}
/* link-item */
#page-bottom-contact-info .btn_waku01px a {
	border: none;
	color: var(--footer-bg);
	padding: 15px .5em 10px;
}
#page-bottom-contact-info .btn_waku01px a::after {
	position: static;
	content: '';
	border: none;
}
#page-bottom-contact-info .btn-request a,
#page-bottom-contact-info .btn-contact a,
#page-bottom-contact-info .btn-visit a {
	padding: 15px .5em;
}
#page-bottom-contact-info .btn-request a::before,
#page-bottom-contact-info .btn-contact a::before,
#page-bottom-contact-info .btn-visit a::before {
	vertical-align: middle;
	margin-top: -.1em;
}
@media (min-width:667px) and (max-width:991.98px) {
  #page-bottom-contact-info .col-123 {
	width: calc((100%/2) - 10px);
  }
  /* info-visitはw100%で中の2ボタンを横並びに */
  #page-bottom-contact-info .info-visit.col-123 {
	width: 100%;
  }
  #page-bottom-contact-info .info-visit.col-123 .link-item-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
  }
  #page-bottom-contact-info .info-visit.col-123 .link-item {
	width: calc((100%/2) - 15px);
  }
}

/********************************************
** フッター(footer)、フッターナビメニュー → 全て差替
** 親と被っている名前：#footer, #copyright
********************************************/

/* 親テーマスタイル上書き */
#footer, #copyright, #footer-widget {
  padding: 0;
}
.footer-left,
.footer-center,
.footer-right{
  padding: 10px 0 0;
}
/*.footer-center {
  width: 34%;
  padding: 10px 10px 0;
}
.footer-left,
.footer-right {
  width: 33%;
}*/
.footer-left {width: 100%;}

#footer-widget li {
  font-size: 80%;
}

#footer h3,
#footer .sns-follow-msg {
  font-size: 80%;
  margin: 0;
}

/* 子テーマ独自ここから ***************/
#footer {
	background-color: var(--footer-bg);
	color: #fff;
	font-size: var(--footer-font-size);
	width: 100%;
}
	/* footer内でグレーテキスト */
	.footer-gray-text,
	.footer-bottom-link a::before,
	#copyright {
		color: var(--footer-gray-text);
	}
#footer a {color: inherit;}
#footer a:hover, #footer a:focus {
	color: inherit;
	opacity: .8;
	text-decoration: none;
}

.footer-info-area-wrap a {
	text-decoration: underline;
}
	.footer-bottom-item-wrap a { text-decoration: none;}

/* フッターグローバルナビ
-------------------------------*/
.footer-gNavi-wrap {
	border-bottom: 1px solid var(--footer-gray-border);
	background-color: var(--footer-bg);
	color: #fff;
	width: 100%;
	padding: 60px 0 40px;
}
.footer-gNavi ul {
	display: flex;
	flex-wrap: wrap;
}
.footer-gNavi li {
	/*font-weight: bold;*/
	margin: 0 .5em 1.2em;
}

/* フッタロゴ・住所など
** footer-profile-layout-wrap（logo, concept, address, sns）
-------------------------------*/
.footer-profile-layout-wrap {
	padding-top: 40px;
}
.footer-logo {
	width: min(97%, 320px);
	padding-top: .5em;
	margin-bottom: 8px;
}
.footer-concept {
	margin-bottom: 6px;
}
.footer-address {
	/*border-top: 1px dashed #666;
	border-bottom: 1px dashed #666;*/
	padding: .5em 0;
	margin-top: .5em;
}
.footer-sns-wrap {
	display: flex;
	align-items: center;
	gap: 0 20px;
	margin-top: 2em;
}

/* 施工エリアなどテキストエリア
** footer-textarea-wrap
-------------------------------*/
.footer-textarea-wrap .footer-text {
	border: 1px solid var(--footer-gray-border);
	padding: 35px;
	margin-bottom: 30px;
}

/* フッター下配置リンク・コピーライト
** footer-bottom-item-wrap
---------------------------------  */
.footer-bottom-item-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
}

.footer-bottom-link {
	margin-bottom: 1em;
}
.footer-bottom-link li {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.2rem;
	padding-right: 1em;
}
.footer-bottom-link a::before {
	font-family: "icomoon";
	content: "\e900";
	display: inline-block;
	vertical-align: middle;
}
#copyright {
	display: table;
	font-size: 1.2rem;
	line-height: 1.2;
	text-align: left;
	margin: 0 0 1.6em auto;
}

/*******************************************
** スクロール表示フッターボタン
********************************************/
#footer-pc-buttons,
#footer-mobile-buttons {
	opacity: 0;
	visibility: hidden;
	transition: opacity .5s linear;
}
/* is-active(js) */
#footer-pc-buttons.is-active,
#footer-mobile-buttons.is-active {
	opacity: 1;
	visibility: visible;
}

/****************************************************************************
** 共通メディアクエリ
*****************************************************************************/
@media (min-width: 480px){
/*--------------------------
** グローバルナビ
---------------------------*/
#gNavi li {
	width: calc(100%/3);
}
#gNavi li:nth-child(even) { border-right: 1px solid #ccc;}
#gNavi li:nth-child(3n+3) { border-right: none;}

}
@media (min-width: 640px){
/*--------------------------
** パンくず
---------------------------*/
#breadcrumb {
	font-size: 1.2rem;
}
/*--------------------------
** フッタ（footer）
---------------------------*/
.footer-logo {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 1em 8px 0;
}
.footer-concept {
	display: inline-block;
}

}
@media (min-width: 768px){
body {
	font-size: var(--base-font-size-tb);
	line-height: var(--base-line-height-tb);
}
.inner {
	padding: 0 var(--inner-lr-padding-tb);
}
/*--------------------------
** グローバルナビ
---------------------------*/
#gNavi {
	margin: 1em auto .8em;
	padding-top: .8em;
}
#gNavi .inner { padding: 0 .2em;}

#gNavi ul {
	flex-wrap: nowrap;
	justify-content: center;
}
#gNavi li {
	width: auto;
	border-bottom: none;
	font-weight: bold;
	font-size: 1.45rem;
}
	#gNavi li:nth-child(3n+3) { border-right: 1px solid #ccc;}
	#gNavi li:nth-child(1) { border-left: 1px solid #ccc;}

#gNavi li a {
	padding: .5em clamp(.1em, 1.5vw, 1em);
}
/*--------------------------
** フッタ（footer）
---------------------------*/
.footer-gNavi li {
	margin: 0 1em 1.2em;
}
.footer-profile-layout-wrap {
	display: grid;
	justify-items: space-between;
	align-items: center/*end*/;
	grid-template-columns: 1fr minmax(250px, auto);
	grid-template-rows: auto;
}
	.footer-logo-concept {
		grid-row: 1;
		grid-column: 1;
	}
	.footer-address {
		grid-row: 2;
		grid-column: 1 / 3;
	}
	.footer-sns-wrap {
		grid-row: 1;
		grid-column: 2;
		justify-content: flex-end;
	}
.footer-licence .d-md-block {
	display: block;
}

}
@media (min-width:980px){
body {
	font-size: var(--base-font-size-pc);
	line-height: var(--base-line-height-pc);
}
.inner {
	padding: 0 var(--inner-lr-padding-pc);
}
/*--------------------------
** グローバルナビ
---------------------------*/
#gNavi li {
	font-size: 1.6rem;
}

}
@media (min-width:1100px){
}


/****************
予約フォームのスマホ対応*/
@media (max-width: 479.98px) {
    #booking_client-fieldset table th,
    #booking_client-fieldset table td,
    #booking-reservation-fieldset table th,
    #booking-reservation-fieldset table td,
    #booking-message-fieldset table th,
    #booking-message-fieldset table td,
    #booking-confirm-fieldset table th,
    #booking-confirm-fieldset table td {
        display: block;
        float: none;
        width: 90%;
        text-align: center;
        overflow: auto;
    }
}

/*予約の人数欄width*/
.booking-form-people-number-row select {
	min-width: 4em;
}
