@charset "UTF-8";


/*Font Awesomeの読み込み
（fa-solid fa-hand-point-right：ハンド右アイコン、fa-solid fa-hand-holding-heart：手持ちハートアイコン）
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");
---------------------------------------------------------------------------*/


/*CSSカスタムプロパティ（サイト全体を一括管理する為の設定）
----------------------------------------------------------*/
:root {
	/*余白の一括管理用。主に左右の余白に使っています。4rem＝4文字分。*/
	--content-space: 6%;
	--content-width: 88%;			/*100%－上記space%×2 を設定 */
	--content-width2: 44%;			/*50%－上記space% を設定（左右半分） */
	--content-width2-1: 43%;		/*50%－上記space%－1% を設定（左右半分） */

	/*オリジナル・カラー */
	--orgn-base-color0: #668CFF;	/*濃い青 */
	--orgn-base-color1: #80B3FF;	/* ↓ 青 */
	--orgn-base-color2: #AACCFF;	/* ↓ 青 */
	--orgn-base-color3: #CADFFF;	/* ↓ 青 */
	--orgn-base-color4: #EEF2FF;	/*薄い青 */
	--orgn-base-color5: #F0F3FF;	/*超薄い青 */
	--orgn-title-color: #fff;		/*動画上タイトル文字色（白） */
	--orgn-back-color: #fff;		/*背景色（白） */
	--orgn-douzo-color: #fcc;		/*どうぞ手ハート色 */
	--orgn-telno-color: #fc6;		/*電話番号色 */
	/*オリジナル文字 */
	--orgn-word-color: #555;		/*基準文字色（濃い灰色） */
	--orgn-word-fsize: 15px;		/*基準文字サイズ */
	--orgn-note-color: #dd0000;		/*注意文字色 */

	--orgn-waku-color: #ddd;		/*テーブル枠線色 */
	--orgn-tblback-color: #fdf5fa;	/*テーブル背景色（薄い桃色） */
	--orgn-tblnote-color: #ff8040;	/*テーブル注意文字色 */
}


/*■全体の設定
----------------------------------------------------------*/
/*body * {box-sizing: border-box;}*/
html, body {font-size: var(--orgn-word-fsize);}

body {
	margin: 0px;
	padding: 0px;
	color: var(--orgn-word-color);
/*	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN W3", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "Osaka", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;	/*フォント種類（ゴシック）*/
/*	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
/*	font-size: var(--orgn-word-fsize);*/
	font-weight: normal;
	line-height: 1.5;
	background: var(--orgn-back-color);
	-webkit-text-size-adjust: none;
}

h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form,select,input,textarea {
	margin: 0px; padding: 0px; font-size: 100%;
}
ul {list-style-type: none;}
img {border: none; max-width: 100%; height: auto; vertical-align: middle;}
table {border-collapse: collapse; font-size: 100%; border-spacing: 0;}
iframe {width: 100%;}
video,audio {max-width: 100%;}


/*リンク設定
----------------------------------------------------------*/
a {color: var(--orgn-base-color0); text-decoration: none;}
a:hover {font-weight: bold;}
a:active, a:focus {outline: 0;}




/*ヘッダートップ
--------------------------------------------------------------*/
#hd_top {
	overflow: hidden;
	margin: 0 auto;
	background-color: var(--orgn-base-color3);
}
#hd_top h1 {
	width: var(--content-width);
	padding: 5px var(--content-space);
	font-size: 70%;
	font-weight: normal;
}


/*ヘッダーボディ
--------------------------------------------------------------*/
#hd_body {
	overflow: hidden;
	margin: 0 auto;
	height: 174px;
	background-color: var(--orgn-back-color);
	background-image: radial-gradient(var(--orgn-base-color5) 30%, transparent 33%),
					  radial-gradient(var(--orgn-base-color5) 30%, transparent 33%);
	background-size: 46px 46px;
	background-position: 0 0, 23px 23px;
	border-bottom: 1px solid var(--orgn-base-color0);
}

/*ヘッダー：事務所郵便番号、住所、会社名、登録名（左）
--------------------------------------*/
#office_info {
	float: left;
	width: var(--content-width2);		/*右に1%空ける */
	padding-left: var(--content-space);
	display: block;
}
#office_info .zipcode {
	margin-top: 12px;
	font-size: 70%;
}
#office_info .address {
	margin-top: 0px;
	font-size: 80%;
}
#office_info .address2 {
	margin-top: 1px;
	font-size: 80%;
}
#office_info .license {
	margin-top: 4px;
	font-size: 120%;
	color: var(--orgn-base-color0);
}
#office_info .nursery {
	margin-top: -4px;
	font-size: 200%;
	font-weight: bold;
	color: var(--orgn-base-color0);
	text-shadow: 1px 1px 1px #000;
}
#office_info .b_hours {
	margin-top: 0px;
	font-size: 90%;
}

/*ヘッダー：電話番号、受付時間、お問い合わせボタン（右）
--------------------------------------*/
#tel_info {
	float: right;
	width: var(--content-width2);		/*左に1%空ける */
	padding-right: var(--content-space);
	text-align: right;
	display: block;
}
#tel_info .telno span {
	margin-top: -3px;
	color: var(--orgn-douzo-color);	/*どうぞ手ハート色 */
}
#tel_info .telno {
	margin: 7px 0px 0px 8px;
	font-weight: bold;
	font-size: 200%;
	color: var(--orgn-douzo-color);	/*電話番号色 */
	text-shadow: 1px 1px 1px #000;
}
#tel_info .teltime {
	margin-top: 0px;
	font-size: 95%;
	color: var(--orgn-note-color);
}
/*事務所、お問い合わせボタン */
#tel_info .qa_btn {
	margin-top: 6px;
}
#tel_info .qa_btn a {
	font-size: 150%;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	background: var(--orgn-base-color0);
	background: linear-gradient(var(--orgn-base-color2), var(--orgn-base-color0));
	color: var(--orgn-back-color);
	padding: 7px 16px 5px 16px;
	border-radius: 4px;
	border: 2px ridge var(--orgn-base-color0);
}
#tel_info .qa_btn a:hover {
	color: var(--orgn-base-color0);
	background: var(--orgn-back-color);
}


/*フッター：事務所郵便番号、住所、会社名、登録名（左）
--------------------------------------*/
#office_tel {
	float: left;
	width: var(--content-width2-1);		/*右に1%空ける */
	padding: 32px 0px 16px var(--content-space);
	display: block;
}
#office_tel .zipcode {
/*	margin-top: 12px;*/
	font-size: 70%;
}
#office_tel .address {
	margin-top: 0px;
	font-size: 80%;
}
#office_tel .address2 {
	margin-top: 1px;
	font-size: 80%;
}
#office_tel .license {
	margin-top: 4px;
	font-size: 120%;
	color: var(--orgn-base-color0);
	text-shadow: 1px 1px 1px #333;
}
#office_tel .nursery {
	margin-top: -4px;
	font-size: 200%;
	font-weight: bold;
	color: var(--orgn-base-color0);
	text-shadow: 1px 1px 1px #333;
}
#office_tel .b_hours {
	margin-top: 0px;
	font-size: 95%;
}
/*フッター：電話番号、受付時間、お問い合わせボタン（左）
--------------------------------------*/
#office_tel .telno span {
	margin-top: -3px;	margin-left: -13px;
	color: var(--orgn-douzo-color);	/*どうぞ手ハート色 */
}
#office_tel .telno {
	margin: 7px 0px 0px 15px;
	font-weight: bold;
	font-size: 220%;
	color: var(--orgn-douzo-color);	/*電話番号色 */
	text-shadow: 1px 1px 1px #333;
}
#office_tel .teltime {
	margin-top: 0px;
	font-size: 95%;
	color: var(--orgn-douzo-color);	/*var(--orgn-note-color);*/
	text-shadow: 1px 1px 1px #000;
	line-height: 1.2;
}
/*事務所、お問い合わせボタン */
#office_tel .qa_btn {
	margin-top: 16px;
}
#office_tel .qa_btn a {
	font-size: 150%;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	background: var(--orgn-base-color0);
	background: linear-gradient(var(--orgn-base-color2), var(--orgn-base-color0));
	color: var(--orgn-back-color);
	padding: 8px 16px 6px 16px;
	border-radius: 4px;
	border: 2px ridge var(--orgn-base-color0);
}
#office_tel .qa_btn a:hover {
	color: var(--orgn-base-color0);
	background: var(--orgn-back-color);
}
/*フッター：事務所サブメニュー（左）
--------------------------------------*/
#office_tel .sub_menu {
	margin-top: -6px;
	font-size: 100%;
	color: var(--orgn-base-color0);
}
/*フッター：Googleマップ（右）：高さ368px
--------------------------------------*/
#office_map {
	float: right;
	width: var(--content-width2);
	padding: 32px var(--content-space) 16px 0px;
	display: block;
}
#office_map h3 {
	font-size: 120%;
	color: var(--orgn-base-color0);
}
#office_map iframe {
	width: 100%;
	height: 368px;						/*マップ高さ（PC） */
}


/*メニュー表示（初回：PC,タブレット表示、スマホ非表示）
----------------------------------------------------------*/
/*親メニュー全体設定 */
#pc_menu_dsp {
z-index: calc(infinity);	/*最前面表示 */
position: -webkit-sticky;	/*ページ上部へ固定 */
position:         sticky;	/*ページ上部へ固定 */
top: 0;						/*ページ上部へ固定 */
}
.dropmenu {
*zoom: 1;
list-style-type: none;
width: 90%;
margin: 0;
padding: 0 5%;				/*メニュー全体の左右5％空欄にする */
background: var(--orgn-base-color0);
border-top: 1px solid var(--orgn-base-color0);
}
.dropmenu:before, .dropmenu:after {
content: "";
display: table;
}
.dropmenu:after{
clear: both;
}
/*親メニュー個々設定 */
.dropmenu li {
position: relative;
width: 16.66%;				/*メニュー６分割：100%／6＝16.66・・% */
float: left;
margin: 0;
padding: 0;
text-align: center;
}
/*親メニュー個々最後設定 */
/*.dropmenu li:last-child {*/
/*border-right: 1px solid #fff;*/	/*右線：白 */
/*}*/
/*親メニュー個々マウスOFF */
.dropmenu li a {
display: block;
margin: 0;
padding: 15px 0 11px;
border-left: 1px solid #fff;		/*左線：白 */
border-right: 1px solid #fff;		/*右線：白 */
background: var(--orgn-base-color0);/*背景：青 */
color: #fff;						/*文字：白 */
font-size: 95%;
line-height: 1.2;
text-decoration: none;
}
/*親メニュー個々マウスON, カレントページ */
.dropmenu li a:hover, .dropmenu li.current a {
background: #fff;					/*背景：白 */
color: var(--orgn-base-color0);		/*文字：青 */
font-weight: bold;
}
/*親メニュー個々マウスON */
/*.dropmenu li:hover > a {*/
/*  background: #fff;*/	/*var(--orgn-base-color2);	#6e7c0c; */
/*  color: var(--orgn-base-color0);*/	/*追加 */
/*}*/
/*親メニュー個々マウスOFF：カレントページ */
.dropmenu li.current a {
border-left: 1px solid #fff;		/*左線：白 */
border-right: 1px solid #fff;		/*右線：白 */
}
/*子メニュー全体設定 */
.dropmenu li ul {
list-style: none;
position: absolute;
top: 100%;
left: 0;
margin: 0;
padding: 0;
}
/*子メニュー個々設定 */
.dropmenu li ul li {
width: 100%;
}
/*子メニュー個々マウスOFF */
.dropmenu li ul li a {
padding: 13px 15px;
border-top: 1px solid #fff;		/*上線：白 */
border-left: 1px solid #000;	/*左線：黒 */
border-right: 1px solid #000;	/*右線：黒 */
background: rgb(0 0 0 / 0.7);	/*背景：黒（半透明） */
color: #fff;					/*文字：白 */
font-size: 90%;
line-height: 1.2;
text-align: left;
}
/*子メニュー個々マウスON */
.dropmenu li ul li a:hover {
background: rgb(0 0 0 / 0.7);	/*背景：黒（半透明） */
color: #fff;					/*文字：白 */
font-weight: bold;				/*文字強調 */
}

#fade-in {position: relative; z-index: 7;}
#fade-in li ul {
opacity: 0;
visibility: hidden;
transition: .5s;
}
#fade-in li:hover ul {
visibility: visible;
opacity: 1;
}

#smp_menu_dsp {display: none;}			/*▼スマホ用メニューの非表示 */



/*内容メイン
--------------------------------------------------------------*/
#contents {
	clear: both;
	overflow: hidden;
	margin: 0 auto;
}
#main {
	width: var(--content-width);
	padding: 0 var(--content-space);
}

/*パンくずインデックス
--------------------------------------*/
.panidx {
	background: var(--orgn-base-color4);
	padding: 10px 20px;
	margin-top: 20px;
	margin-bottom: 20px;
	border-radius: 5px;
}
.panidx li {
	display: inline;
	padding: 0 5px;
	font-size: 90%;
}
.panidx li::before {
	content: ">";
	padding-right: 12px;
	color: #999;
}
.panidx li:first-child::before {
	content: none;
}

/*内容タイトル、文書、テーブル
--------------------------------------*/
#main #mainimg {
	margin-top: 16px;
	margin-bottom: 16px;
}
#main h2 {
	clear: both;
	margin-bottom: 20px;
	padding: 14px 20px 8px;
	font-size: 18px;
	letter-spacing: 3px;
	color: var(--orgn-back-color);
	background: var(--orgn-base-color0);
	border-radius: 5px;
	font-weight: normal;
}
#main h2::first-letter {
	border-left: 5px double var(--orgn-back-color);
	padding-left: 15px;
}
#main h3 {
	clear: both;
	margin-top: 32px;
	margin-bottom: 20px;
	padding: 10px 20px 7px;
	font-size: 18px;
	letter-spacing: 3px;
	border: 1px solid var(--orgn-base-color0);
	border-radius: 5px;
	font-weight: normal;
}
#main h3::first-letter {
	border-left: 3px solid var(--orgn-base-color0);
	padding-left: 15px;
}
#main p {
	padding: 0px 20px 20px;
}
#main p + p {
	margin-top: -5px;
}
#main h2 + p,
#main h3 + p {
	margin-top: -10px;
}
#main section + section {
	padding-top: 30px;
}

/*テーブル共通
--------------------------------------*/
#tb_config {
	margin: 20px 2% 64px;
	text-align: center;
}
#tb_config textarea {font-size: 114%;}
#tb_config_recruit {
	margin: 0px 2% 64px;
	text-align: center;
}

/*お問い合わせテーブル
--------------------------------------*/
.qa_select{
	text-align: left;
	margin-left: 1%;
	line-height: 1.1em;
	font-size: 120%;
	font-weight: bold;
}
.qa_telno{
	line-height: 16px;
	text-align: center;
	font-size: 220%;
	font-weight: bold;
	color: var(--orgn-note-color);
	text-shadow: 1px 1px 1px #000;
}
.qa_email{
	line-height: 18px;
	text-align:center;
/*	font-size:12px;*/
}
.qa_check_msg {
	text-align: left;
	margin-left: 2%;
	margin-right: 2%;
}
.msg_button_g {
	font-weight: normal;
	background-color: var(--orgn-base-color2);
	color: #000;
	padding: 2px 1px 1px 1px;
	border: 1px solid #333;
	border-radius: 4px;
}
.msg_button {
font-weight: normal;
background-color: #eee;
color: #000;
padding: 2px;
}
.dsc2item {
border-collapse: collapse;
table-layout: fixed;
}
.dsc2item th {
text-align: center;
font-weight: bold;
padding: 6px;
border: 1px solid var(--orgn-waku-color);
background-color: var(--orgn-base-color2);
}
.dsc2item td {
vertical-align: top;
padding: 6px;
border: 1px solid var(--orgn-waku-color);
}
.qafrm1 {
text-align: right;
font-size: 90%;
}
.qafrm2 {
text-align: right;
font-size: 90%;
}
.qafrm3 {
text-align: left;
font-size: 90%;
}
.qabackc1 {
background-color: var(--orgn-tblback-color);
}
.qabackc2 {
background-color: var(--orgn-base-color4);
}
.qa_notes {
/*font-size: 100%;*/
color: var(--orgn-tblnote-color);
}
.qa_standard_btn, .mente_btn {
font-size: 110%;
font-weight: normal;
	padding: 0px 2px 3px;
cursor: pointer;
border-radius: 4px;
}
.qa_confirm_btn {
font-size: 110%;
font-weight: normal;
	padding: 0px 2px 3px;
background-color: var(--orgn-base-color2);
cursor: pointer;
border-radius: 4px;
}
#tb_config button:hover, #tb_config button:hover {font-weight: bold;}
.qa_btn_spc {
font-size: 100%;
letter-spacing: 1em;
}

/*★よく頂く質問（パターン選択）
--------------------------------------*/
/*パターン１ */
/*ブロック全体 */
.fffaq {
	padding: 0px 20px;		/*上下、左右への余白 */
}
/*質問の設定 */
.fffaq dt {
	color: var(--orgn-base-color0);
	padding-top: 15px;
	margin-bottom: 10px;
}
/*回答の設定 */
.fffaq dd {
	border-bottom: 2px dotted var(--orgn-waku-color);
	overflow: hidden;
	padding-bottom: 10px;
}
/*「Q」と「A」のマーク共通設定 */
.fffaq dt::before, .fffaq dd::before {
	margin-right: 5px;	display: inline-block;	text-align: center;
	width: 25px;			/*幅 */
	line-height: 25px;		/*高さ */
}
/*「Q」のマーク追加設定 */
.fffaq dt::before {
	content: "Q";			/*「Q」の文字を出力する設定 */
	background: var(--orgn-base-color2);
	color: #fff;			/*文字色 */
	font-size: 110%;
	font-weight: bold;
}
/*「A」のマーク追加設定 */
.fffaq dd::before {
	content: "A";			/*「A」の文字を出力する設定*/
	background: var(--orgn-telno-color);
	color: #fff;			/*文字色 */
	font-size: 110%;
	font-weight: bold;
}
/*パターン１ */
#QandA-2 {
	width: 100%;
/*	font-family: メイリオ;*/
/*	font-size: 100%;*/
}
#QandA-2 h3 {
	font-size: 16px;
	margin-top: 32px;
}
#QandA-2 dl {
	border: 2px solid var(--orgn-waku-color);
	margin-bottom: 16px;
	border-radius: 0.5em;
}
#QandA-2 dt {
	letter-spacing: 0.07em;
/*	font-size: 110%;*/
	font-weight: bold;
	color: var(--orgn-word-color);
	background: var(--orgn-base-color4);
	padding: 14px 16px 14px 22px;
	border-top: 2px solid var(--orgn-waku-color);
	border-bottom: 2px solid var(--orgn-waku-color);
}
#QandA-2 dt:first-child {
	border-top: none;
}
#QandA-2 dt:before {
	color: var(--orgn-base-color2);
	content: "Q. ";
	font-weight: bold;
/*	margin-left: 8px;*/
/*	margin-right: 8px;*/
	font-size: 120%;
}
#QandA-2 dd {
	letter-spacing: 0.07em;
	padding: 14px 16px 14px 22px;
/*	margin: 0;*/
	line-height: 140%;
}
#QandA-2 dd:first-line {
/*	font-size: 110%;*/
/*	font-weight: bold;*/
/*	color: #bf0000;*/
}
#QandA-2 dd:before {
	color:var(--orgn-base-color2);
	content: "A. ";
	font-weight: bold;
	font-size: 120%;
}
/*パターン２ */
.cpqa *, .cpqa *:after, .cpqa *:before {
/*	font-family: sans-serif;*/
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cpqa {
	margin: 0 0 2em 0;
	padding: 1em 1em 0.5em 1em;
	background: var(--orgn-base-color4);
}
.cpqa h3 {
	font-size: 1.2em;
	position: relative;
	margin-right: 1em;
	margin-left: -26px;
	padding: 0.3em;
	color: #ffffff;
	background-color: var(--orgn-base-color2);
	box-shadow: 0 1px 1px rgba(0,0,0,0.2);
}
.cpqa h3::after {
	position: absolute;
	bottom: -10px;
	left: 0;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 10px 10px 0;
	border-style: solid;
	border-color: transparent var(--orgn-base-color2) transparent transparent;
}
.cpqa dl {
	margin: 0;
}
.cpqa dt {
	margin-bottom: 0.5em;
	padding: 0.2em 0.5em 0.5em 3em;
	border-radius: 0.4em;
	background: var(--orgn-base-color3);
	font-weight: bold;
}
.cpqa dd {
	margin-bottom: 1em;
	margin-left: 0;
	padding: 0.5em 1em 1.5em 3em;
}
.cpqa dt::before{
	font-size: 1.6em;
	color: #333;
}
.cpqa dd::before{
	font-size: 1.5em;
	color: #fff;
}
.cpqa dt::before {
	margin: 0.3em 0.3em 0 -1.5em;
	content: 'Q ';
}
.cpqa dd::before {
	margin: 0 0.5em 0 -2em;
	padding: 0.2em 0.4em;
	content: 'A';
	border-radius: 0.4em;
	background: var(--orgn-base-color2);
}
/*パターン３ */
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 0 1em 0;
	color: var(--orgn-word-color);
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
.cp_qa .cp_actab label {
	font-weight: bold;
	line-height: 1.6em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2em 1em 2.5em;
	cursor: pointer;
	text-indent: 1em;
	border-radius: 0.5em;
	background: var(--orgn-base-color4);
}
.cp_qa .cp_actab label::before {
/*	font-family: serif;*/
	font-size: 1.5em;
	margin-left: -2em;
	padding-right: 0.5em;
	content: 'Q';
}
.cp_qa .cp_actab label:hover {
	transition: all 0.3s;
	color: var(--orgn-base-color2);
}
.cp_qa .cp_actab label::after {
	font-size: 1.7em;
	font-weight: bold;
	line-height: 2em;
	position: absolute;
	top: 0;
	right: 0;
	content: '+';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
}
.cp_qa .cp_actab .cp_actab-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 2.5em;
	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
}
.cp_qa .cp_actab .cp_actab-content::before {
/*	font-family: serif;*/
	font-size: 1.5em;
	position: absolute;
	margin: 0.4em 0 0 -1em;
	padding: 0;
	content: 'A';
}
.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em 1em 1em 0;
}
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 40em;
	border: 10px solid var(--orgn-base-color4);
}
.cp_qa .cp_actab input:checked ~ label {
	color: var(--orgn-base-color2);
	border-radius: 0.5em 0.5em 0 0;
}
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
/*パターン４ */
.accordion {
	width: 96%;
	margin: 0 auto;
}
/*チェックボックスは非表示 */
.accordion-hidden{
	display: none;
}
/*Question部分 */
.accordion-open {
	display: block;
	padding: 10px 60px 10px 10px;
	background: var(--orgn-base-color3);
	cursor: pointer;
	margin: 5px 0;
	position: relative;
	border-radius: 0.5em;
}
/*開閉状態を示すアイコン+の作成 */
.accordion-open::before,
.accordion-open::after {
	content: '';
	width: 20px;
	height: 3px;
	background: #000;
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translateY(-50%);
}
/*一本は縦にして+を作る */
.accordion-open::after {
	transform: translateY(-50%) rotate(90deg);
	transition: .5s;
}
/*アコーディオンが開いたら縦棒を横棒にして-にする */
.accordion-hidden:checked + .accordion-open:after {
	transform: translateY(-50%) rotate(0);
}
/*Answer部分 */
.accordion-close {
	display: block;
	height: 0;
	overflow: hidden;
	padding: 0;
	opacity: 0;
	transition: 0.5s;			/*表示速度の設定 */
}
/*チェックボックスにチェックが入ったらAnswer部分を表示する */
.accordion-hidden:checked + .accordion-open + .accordion-close {
	height: auto;
	opacity: 1;
	padding: 10px;
}
/*Q&A追加 */
.accordion_qa .Q{
	position: relative;
}
.accordion_qa .accordion-open{
	padding-left: 2.5em;
}
.accordion_qa .Q::before{
	content: 'Q.';
	font-size: 1.3em;
	display: block;
	position: absolute;
	top: -.2em;
	left: -1.3em;
}
.accordion_qa .A{
	position: relative;
	padding-left: 1.3em;
}
.accordion_qa .A::before{
	content: 'A.';
	font-size: 1.2em;
	display: block;
	position: absolute;
	top: -.1em;
	left: 0.1em;
	color: var(--orgn-base-color2);
	font-weight:bold;
}

/*FAQ内お問い合わせボタン
--------------------------------------*/
.faq_contact a {
display: flex;
align-items: center;
justify-content: center;
	font-size: 200%;
	font-weight:bold;
/*	text-align: right;*/
/*	float:right;*/
	text-decoration: none;
	line-height: 200%;
	background: var(--orgn-base-color2);		/*★よくある質問内お問い合わせボタン */
	background: linear-gradient(var(--orgn-base-color4), var(--orgn-base-color2));
	color: #fff;
	padding: 3px 15px 0px 15px;
	border-radius: 4px;
	border: 2px ridge var(--orgn-base-color2);
	margin-bottom: 40px;
}
.faq_contact a:hover {
	color: var(--orgn-base-color2);
	background: #fff;
}

/*ボディメニュー
--------------------------------------*/
.list {
	overflow: hidden;
	width: 26.4%;
	float: left;
	margin: 0 0 20px 2%;
	border: 1px solid var(--orgn-waku-color);
	box-shadow: 3px 4px 2px rgba(0,0,0,0.1);
	padding: 2%;
	border-radius: 10px;
}
.list ul {
	list-style-type: disc;
	padding-left: 12%;
}
.list ul li {
	line-height: 1.5;
}
.list li a {
	color: var(--orgn-base-color2);
	text-decoration: none;
}
.list li a:hover {
	font-weight:bold;
}
.list h4 {
	color: var(--orgn-word-color);
	font-size: 110%;
	text-align: center;
	height: 2em;
	text-decoration: underline;
	overflow: hidden;
}
.list p {
	padding: 0 !important;
	line-height: 1.5;
	color: var(--orgn-word-color);
/*	height: 6em;*/
/*	overflow: hidden;*/
}
.list p span {
	color:var(--orgn-base-color2);				/*★紹介メニュー内お問い合わせ */
	font-size: 115%;
	font-weight:bold;
	text-shadow:1px 1px 1px #000;
}
.list p a {
	font-size: 115%;
	font-weight:bold;
	text-align: right;	float:right;
	text-decoration: none;
	background: var(--orgn-base-color2);		/*★紹介メニュー内お問い合わせボタン */
	background: linear-gradient(var(--orgn-base-color4), var(--orgn-base-color2));
	color: #fff;
	padding: 1px 5px 0px 5px;
	border-radius: 4px;
	border: 2px ridge var(--orgn-base-color2);
}
.list p a:hover {
	color: var(--orgn-base-color2);
	background: #fff;
}

/*お知らせ
--------------------------------------*/
#notice dl {
overflow:auto;
height:320px;
	border-radius: 8px;	
border:2px solid var(--orgn-waku-color);
background-color: var(--orgn-base-color4);
	padding: 0px 20px;
	margin-bottom: 40px;
line-height: 1.5;
vertical-align: text-bottom;
}
#notice dt {
	float: left;
	width: 12em;
	letter-spacing: 0.1em;
}
#notice dd {
	padding-left: 12em;
	border-bottom: 1px solid var(--orgn-waku-color);
}
.newicon {
	background: var(--orgn-note-color);
	color: #fff;
	font-size: 70%;
	line-height: 1.5;
	padding: 1px 6px 0px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: middle;
}

/*カウンター（トップページ）
--------------------------------------*/
.top_counter {
	text-align: right;
	margin:-16px 16px 0px;
}

/*事務所案内メニュー
--------------------------------------*/
.ofc_menu {
	overflow: hidden;
/*	margin-bottom: 20px;*/
	text-align: center;
	font-size: 110%;
}
.ofc_menu li {
	display: inline;
	border-right: 1px solid var(--orgn-waku-color);
}
.ofc_menu li a {
	padding: 10px;
	color: var(--orgn-base-color1);
}
.ofc_menu li:first-child {
	border-left: 1px solid var(--orgn-waku-color);
}
.ofc_menu li.current {
	padding: 10px;
	color: var(--orgn-word-color);
	font-weight:bold;
}
.ofc_menu li a:hover {
	text-decoration: none;
	color: var(--orgn-base-color0);
}

/*事務所案内テーブル
--------------------------------------*/
.ta1 caption {
	border: 1px solid var(--orgn-waku-color);
	border-bottom: none;
	text-align: left;
	background: #eee;
	color: var(--orgn-word-color);
	font-weight: bold;
	padding: 10px;
}
.ta1 {
	table-layout: fixed;
	width: 100%;
	margin: 0 auto 20px;
}
.ta1, .ta1 td, .ta1 th {
	word-break: break-all;
	border: 2px solid var(--orgn-waku-color);
	padding: 10px 15px;
}
.tblWL {width: 25%;}
.tblWR {width: 75%;}
.tblWall {width: 100%;}
.tblR {text-align: right; vertical-align: top;}
.tblL {text-align: left; vertical-align: top;}
.tblC {text-align: center; vertical-align: top;}

/*入園案内ボックス
--------------------------------------*/
.s_box {
	overflow: hidden;
	border: 2px solid var(--orgn-waku-color);	/*★ボックス外枠線 */
	padding: 20px;
	border-radius: 10px;
	margin: 0px 2% 20px;
}
.s_box h4 {
	color: var(--orgn-base-color0);		/*★ボックスタイトル */
	font-size: 110%;
}
.s_box p {
	padding: 0 !important;
}
.s_box .fr, .s_box .fl {margin-bottom: 0;}


/*個人情報保護方針
--------------------------------------*/
#main #privacy {padding: 0px 40px 20px;}
#main #privacy .txtR {text-align: right;}
#main #privacy ol {
	list-style: none;
	counter-reset: listnum;
}
#main #privacy ol li::before {
	counter-increment: listnum;
	content: "第" counter(listnum) "条 ";
	font-weight: bold;
}


/*SNSボタン
----------------------------------------------------------*/
#sns_btn {margin-bottom: 16px;}


/*フッターボディ
----------------------------------------------------------*/
#ft_body {
	clear: both;
	overflow: hidden;
	margin: 0 auto;
	border-top: 1px solid var(--orgn-base-color0);
	background-color: var(--orgn-back-color);
	background-image: radial-gradient(var(--orgn-base-color5) 30%, transparent 33%),
					  radial-gradient(var(--orgn-base-color5) 30%, transparent 33%);
	background-size: 46px 46px;
	background-position: 0 0, 23px 23px;
}

/*フッターメニュー
--------------------------------------*/
#footermenu {
	clear: both;
	overflow: hidden;
	margin-bottom: 32px;
}
#footermenu .inner {
	width: 88%;
	padding: 20px var(--content-space);
}
#footermenu ul {
	float: left;
	width: 19%;
	margin-left: 1%;
}
#footermenu ul li {
	color: var(--orgn-base-color0);
	padding: 0 10px;
	font-size: 90%;
}
#footermenu li.title {
	background: var(--orgn-base-color0);
	border-radius: 4px;
	padding-top: 4px;
	line-height: 1.2;
	padding-bottom: 2px;
}
#footermenu li.title a {
	color: #fff;
	text-decoration: none;
}
#footermenu a {
	color: var(--orgn-base-color0);
	text-decoration: none;
}
#footermenu a:hover {
	font-weight: bold;
}

#ft_mini_menu {display: none;}			/*▼フッターメニュー（スマホ用）の非表示 */


/*フッターボトム
--------------------------------------------------------------*/
#ft_bottom {
	clear: both;
	overflow: hidden;
	margin: 0 auto;
	background-color: var(--orgn-base-color3);
}
#copyright {
	width: var(--content-width);
	padding: 5px var(--content-space);
	font-size: 76%;
	text-align: center;
}


/*ページの上部に戻る「↑」ボタン
--------------------------------------------------------------*/
#page_top {display: none;}
#page_top a {
	display: block; text-decoration: none; z-index: 99;
	animation: opa1 1s 0.4s both;
	position: fixed;	/*スクロールに追従しない(固定で表示)為の設定*/
	text-align: center;
	right: 20px;		/*右からの配置場所指定 */
	bottom: 28px;		/*下からの配置場所指定 */
	font-size: 24px;	/*文字サイズ1.5rem; */
	color: #fff;		/*文字色 */
background: #999;
border: 2px solid #999;
opacity: 0.6;
	border-radius: 10%;	/*50%:円形にする */
	width: 52px;		/*幅 */
	line-height: 52px;	/*高さ */
/*	padding-top: 4px;	padding-bottom: 4px;*/
}

/* マウスオーバー時 */
#page_top a:hover {
background: #fff;
border: 2px solid #999;
color: #999;
}


/*その他
--------------------------------------------------------------*/
.idx_disc {list-style: disc; padding: 0 20px 20px 40px;}
.idx_disc a:hover {font-weight: bold;}
.idx_square {list-style: square; padding: 0 20px 20px 40px;}
.idx_square a:hover {font-weight: bold;}
.idx_img {list-style: square; padding: 0 20px 0 38px;}
.idx_img li {font-size: 18px; font-weight: bold;}
.img_waku {
	border: 8px solid var(--orgn-waku-color);
	border-radius: 10px;
}
.img_waku_top {
	border-top:8px solid var(--orgn-base-color3);
	border-bottom:8px solid var(--orgn-base-color3);
}
.img_WD {width: 98%;}
.br_none {display:none;}

/*グループリンク集
--------------------------------------*/
#G_link_L {
	float: left;
	width: 40%;
	padding-right: 10%;
	padding-bottom: 32px;
	display: block;
}
#G_link_R {
	float: right;
	width: 40%;
	padding-right: 10%;
	padding-bottom: 32px;
	display: block;
	text-align: left;
}

/*事務所案内ジャンプ調整
--------------------------------------*/
#ofc1, #ofc2, #ofc3 {
	display: block;
	margin-top:-60px;
	padding-top:90px;
}

/*汎用等
--------------------------------------------------------------*/
.color1 {color: var(--orgn-base-color3) !important;}
.color2 {color: var(--orgn-base-color2) !important;}
.colorWN {color: var(--orgn-note-color) !important;}
.bgcolor1 {background: var(--orgn-base-color4) !important;}
.bgcolor2 {background: var(--orgn-tblback-color) !important;}
.bgcolor3 {background: var(--orgn-base-color2) !important;}
.border_dot {border-top: 2px dotted var(--orgn-waku-color);}
.border_dotB{line-height: 0; border-top: 2px dotted var(--orgn-waku-color);}
.border_line {border-top: 2px solid var(--orgn-waku-color);}
.link {display: block; margin-top: -80px; padding-top: 80px;}
.w20p {width: 20%;}
.clear {clear: both;}
.fl {float: left; margin-right: 2%; margin-bottom: 20px;}
.fr {float: right; margin-left: 2%; margin-bottom: 20px;}








/*■PC用（961px以上）
----------------------------------------------------------*/
@media only screen and (min-width: 961px) {

html, body {font-size: 100%;}			/*基準文字サイズ */

}








/* ■PAD用（768px～960px）
----------------------------------------------------------*/
@media only screen and (max-width:960px) {

html, body {font-size: 90%;}			/*基準文字サイズ */

/*ヘッダーボディ----------------------*/
#hd_body {height: 152px;}

/* 内容メイン-------------------------*/
#main {
	width: 90%;
	padding: 0px 5% 0px;
}
/* パンくずインデックス---------------*/
.panidx li {font-size: 80%;}

/* ボディメニュー（３列→１列）-------*/
.list {
	width: auto;
	float: none;
	margin-left : 0;
}
.list figure {
	float: left;
	width: 48%;
	margin-right: 2%;
}
.list #f_menu {
	float: left;
	width: 48%;
	margin-left: 2%;
}
.list h4, .list p {
	height: auto;
}
/* 事務所案内メニュー-----------------*/
.ofc_menu {font-size: 100%;}

/* テーブル共通-----------------------*/
#tb_config {margin: 0 1% 40px;}

/* お問い合わせテーブル---------------*/
.qa_select{margin-left: 0;}
.qa_email, .qa_check_msg, .qa_confirm_btn, .qa_standard_btn, .mente_btn {
	font-size:12px;
}
/* 事務所案内テーブル-----------------*/
.ta1 th {width: 100px;}

/*フッター：Googleマップ（右）：高さ320px*/
#office_map iframe {height: 314px;}

/*フッターボトム----------------------*/
#copyright {padding-top: 7px;}

}








/*■スマホ用（375px～428pxだが、767px以下に設定）
----------------------------------------------------------*/
@media screen and (max-width:767px) {

/*ヘッダーボディ----------------------*/
#hd_body {
	height: 308px;
	padding: 0;
}
/*事務所郵便番号、住所、会社名、登録名 */
#office_info {
	clear: left;
	width: 100%;
	padding: 0;
	text-align: center;
}
/*電話番号、受付時間、お問い合わせボタン */
#tel_info {
	clear: right;
	width: 100%;
	padding: 0;
	margin-top: 8px;
	text-align: center;
}

#pc_menu_dsp {display: none;}			/*▲PC用メニューの非表示 */
#smp_menu_dsp {display: block;}			/*▼スマホ用メニューの表示 */
/*▼スマホメニュー設定
----------------------------------------------------------*/
#smp_menu_dsp {
z-index: calc(infinity);	/*最前面表示 */
position: -webkit-sticky;	/*ページ上部へ固定 */
position:         sticky;	/*ページ上部へ固定 */
top: 0;						/*ページ上部へ固定 */
}
.accordion {
*zoom: 1;
visibility: visible;
z-index: 9;
list-style-type: none;
	clear: both;
/*	overflow: hidden;*/
	margin: 0;
	padding: 0;
	position: relative;
	width: 99.9%;
}
.btn-box button {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0;
	padding: 14px 28px;
	font-size: 100%;
	text-align: left;
	cursor: pointer;
	background: var(--orgn-base-color0);
	border: 1px solid #000;
	color: #fff;
	text-shadow: 1px 1px 1px #000;
}
.btn-box button::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
}
.btn-box button:hover {
	border: 2px solid #04f;		/*枠線：濃い青色 */
}
.more {
	position: relative;
	overflow: hidden;
	z-index: 9;
	max-height: 0;
	transition: max-height 0.5s ease;
	background: var(--orgn-base-color3);
}
.more::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
}
.more.appear {
	max-height: 700px;
}
.more ul {
	margin: 0;
	padding: 8px 28px;
	list-style: none;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
.more li {
	clear: both;
	float: none;
	width: 100%;
	border-bottom: 1px solid rgba(0, 0, 0, 0.5);
	line-height: 1.2;
	font-size: 90%;
}
.more li a {
	display: block;
	position: relative;
	padding: 10px 0 6px 0;
	line-height: 1.2;
	font-size: 90%;
	color: #55f;	/*var(--orgn-base-color0);*/
}
.more li a:hover, .more li.active {
	margin: 0 -10px;
	padding-left: 10px;
	padding-right: 10px;
	background: rgba(255, 255, 255, 0.5);
	font-weight:bold;
}
.more li:last-child {
	border-bottom: none;
}

/*内容タイトル、文書、テーブル--------*/
#main h2, #main h3 {
	font-size: 16px;
	padding: 12px 16px 8px;
}
/*パンくずインデックス---------------*/
.panidx li {font-size: 70%;}

/*ボディメニュー（３列→１列）--------*/
.list {font-size: 12px;}

/*事務所案内メニュー
--------------------------------------*/
.ofc_menu {font-size: 90%;}

/*お知らせ
--------------------------------------*/
#notice dt, #notice dd {
	font-size: 12px;
}
/*お問い合わせテーブル
--------------------------------------*/
.qa_btn_spc {
	font-size: 10px;
	letter-spacing: 0.01em;
}
/*その他------------------------------*/
.ta1 td, .ta1 th {font-size: 85%;}
.br_none {display:block;}
.img_waku {
	border: 4px solid var(--orgn-waku-color);
	border-radius: 5px;
}

/*事務所案内テーブル------------------*/
.ta1 caption {padding: 5px;}
.ta1, .ta1 td, .ta1 th {padding: 5px;}

/*フッターボディ----------------------*/
#office_tel {
	clear: left;
	width: 98%;
	padding: 16px 1%;
	text-align: center;
}
#office_tel .telno {margin-top: 16px;}

/*フッター：Googleマップ（右）：高さ368px */
#office_map {
	clear: right;
	width: 90%;
	margin-bottom: -16px;
	padding: 12px 5% 36px;
	text-align: center;
}
#office_map iframe {height: 368px;}		/*マップ高さ（PC） */

/*フッターメニュー（スマホ用）--------*/
#footermenu {display: none;}			/*▲フッターメニュー（PC用）の非表示 */
#ft_mini_menu {display: block;}			/*▼フッターメニュー（スマホ用）表示 */

#ft_mini_menu {
	clear: both;
	overflow: hidden;
}
#ft_mini_menu .inner {
	width: 90%;
	padding: 0px 5% 32px;
}
#ft_mini_menu .inner a {
	line-height: 1.5;
/*	font-size: 12px;*/
}
#ft_mini_menu .title {
	background: var(--orgn-base-color3);
	border-radius: 2px;
	padding: 1px 4px 0;
}
#ft_mini_menu .title a {color: #fff;}

}
