@charset "utf-8";



/*********** btm setup ***********/

/* global class */
.lightbox_ph { /* lightbox呼び出し用のclassのため、ここに記述しないこと */ }
.clear { clear:both; }
.clearfix {zoom:1;}
.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; zoom: 1; }

.color_01 { color:#d13823; }
.color_02 { color:#384cd1; }

.no_wrap{ overflow:hidden;zoom:1; }
.hover80 a:hover img,a.hover80:hover img,a:hover img.hover80 {filter: alpha(opacity=80);-moz-opacity:0.80;opacity:0.80;}
.hover60 a:hover img,a.hover60:hover img,a:hover img.hover60 {filter: alpha(opacity=60);-moz-opacity:0.60;opacity:0.60;}



/* img area */
.left_box { float:left; }
.right_box { float:right; }
.left_box_space { float:left; padding:15px 20px 0; }
.right_box_space { float:right; padding:15px 20px 0; }

.left_box_no_wrap { float:left; padding:15px 0 0 20px; }
.right_box_no_wrap { float:right;padding:15px 20px 0 0;  }

.drop1 { border:1px solid #ddd; padding:1px; }

#content .photo_center { text-align:center; padding:10px 0 0; }
span.photo_center { display:block; }


.googlemap { border:1px solid #eee; margin:15px auto 0; padding:2px; width:95%; background:#fff; }
.googlemap iframe { width:100%; height:400px; }
.googlemap small { display:block; text-align:right; padding:5px 10px !important; font-size:10px !important; }



/* content caption */
#content h2,h2#sld { }
#content h3 { padding-top:25px; text-align:center; font-size:14px; }
#content h3#sld { padding-top:0px; text-align:center; font-size:14px; margin-bottom:20px; }
#content h4 { padding:30px 0 0; text-align:center; }
#content h5 { padding-top:0px; }

/* content p */
#content p { padding:10px 10px 0; text-align:left; }
#content p.f123 { font-size:123%; }/*16px程度*/

/*  rollup */
#content p.page-up { padding-top:20px; text-align:right; }

/* content table */
.table_style { margin-top:15px; }
.table_style th { background:url(../common_img/bg_th.gif) repeat-y #000; text-align:left; color:#fff; vertical-align:top; }
.table_style td { border:1px solid #cccccc; vertical-align:top; }
/*
.table_style2 { margin-top:15px; }
.table_style2 th { background:#f4f4f4; border:1px solid #eee; border-right:none; border-top:none; text-align:left; vertical-align:top; }
.table_style2 td { background:#f4f4f4; border:1px solid #eee; border-right:none; border-top:none; vertical-align:top; }
*/
/*
.table_style3 { margin-top:15px; border-top:1px solid #ddd; border-left:1px solid #ddd; background:#fff; }
.table_style3 th { border-bottom:1px solid #ddd; border-right:1px solid #ddd; border-left:5px solid #5196d0; text-align:left; vertical-align:top; }
.table_style3 td { border-bottom:1px solid #ddd; border-right:1px solid #ddd; vertical-align:top; }
*/

/* content ul */
/*
.ul_style { padding:15px 20px 0; }
.ul_style li { padding:5px; border-bottom:1px solid #cccccc; }
*/

/* content dl */
/*
.dl_style { padding:0 20px 0; }
.dl_style dt { font-size:14px; font-weight:bold; color:#333; padding:15px 0 0; }
.dl_style dd { }
*/

/* content common */
#content p.t_atten { padding:10px 10px 0; font-size:100% !important; }

.mb10 { margin-bottom:10px; }
.mb15 { margin-bottom:15px; }
.mb20 { margin-bottom:20px; }

.mt10 { margin-top:10px !important; }
.mt20 { margin-top:20px !important; }
.mt30 { margin-top:30px !important; }
.mt40 { margin-top:40px !important; }
.mt50 { margin-top:50px !important; }

/*********** page setup ***********/



/* news */f7f7f3
#rss { padding:0 0 0; text-align:right; }



/* =====================
  cont01.html
===================== */

table.tbl_katazuke { margin:20px 9px 10px; border-collapse:collapse; background:#fff; border:solid 1px #AEACA2; width:750px; font-size:1.25em;}
table.tbl_katazuke th.th1 { border:solid 1px #AEACA2; border-right:none; background-color:#FDFCED; padding:10px 15px; }
table.tbl_katazuke th.th2 { border:solid 1px #AEACA2; background-color:#fbedf3; padding:10px 15px; font-size: 1.125em; text-align:left; }
table.tbl_katazuke .border_btm { border-bottom:double 3px #999 !important; }
table.tbl_katazuke td { border:solid 1px #AEACA2; border-left:none; padding:10px 15px; }
.katazuke_tbl_atten { margin: 0 10px; font-size: 1.125em; }

/*********** #katazuke_cnt_01 ***********/
#katazuke_cnt_01 { }
#katazuke_cnt_01 h5 { margin:0 0 10px; }

#katazuke_cnt_01 .left_box,
#katazuke_cnt_01 .right_box { width:375px; background-color:#f7f7f3; font-size:123%; margin-top:20px; }
#katazuke_cnt_01 .left_box { float:left; }
#katazuke_cnt_01 .right_box { float:right; }

table.tbl_katazuke_01 { margin:0 9px 9px; border-collapse:collapse; background:#fff; width:355px;}
table.tbl_katazuke_01 th,
table.tbl_katazuke_01 td { border:solid 1px #EAEAE0 !important; padding:10px !important; text-align:left; }

#katazuke_cnt_01 li { padding:1px 20px 2px 20px; display:block; float:left; background:url(../images2/katazuke_cnt1_maru.jpg) no-repeat left 4px; }


/*********** #katazuke_cnt_01 v2 ***********/
.catch_katazuke {
	color: #702689;
	font-family: 'Shippori Mincho', serif;
	font-size: 2em !important;
	margin: 20px 10px;
	text-align: center !important;
}
#katazuke_cnt_01 .wrap_katazuke_cnt_01 {
	padding: 15px 15px;
	box-sizing: border-box;
	background-color:#f7f7f3;
	width: calc(100% - 20px);
	margin: 20px 10px;
}
#katazuke_cnt_01 .wrap_katazuke_cnt_01 ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#katazuke_cnt_01 .wrap_katazuke_cnt_01 li {
	width: 49%;
	float: none;
	background-color: #fff;
	font-size: 18px;
	background-position: 10px 15px;
	box-sizing: border-box;
	padding: 10px 10px 10px 30px;
	border: solid 1px #EAEAE0;
	margin-bottom: 10px;
}

/*********** #katazuke_cnt_02 ***********/
#katazuke_cnt_02 { clear:both; margin-bottom: 60px; }
#katazuke_cnt_02 h4 { padding-top:40px; }
#katazuke_cnt_02 h5 { margin:0 0 10px; padding-top:15px !important; text-align:left; border-bottom:solid 1px #EAEAE0; padding:5px; }
#katazuke_cnt_02 p { font-size:134%; }

#katazuke_cnt_02 .left_box,
#katazuke_cnt_02 .right_box { width:365px; font-size:123%; margin-top:20px; margin-bottom:40px; }
#katazuke_cnt_02 .left_box { float:left; margin-left:10px; }
#katazuke_cnt_02 .right_box { float:right; margin-right:10px; }
#katazuke_cnt_02 .h6,
#katazuke_cnt_02 .h6 { margin-bottom:10px; }
#katazuke_cnt_02 li { line-height:39px; padding-left:44px; }
#katazuke_cnt_02 li.li_merit { background:url(../images2/katazuke_cnt2_merit_bg.jpg) no-repeat; }
#katazuke_cnt_02 li.li_demerit { background:url(../images2/katazuke_cnt2_demerit_bg.jpg) no-repeat; }

/*********** #katazuke_cnt_03 ***********/
#katazuke_cnt_03 { clear:both; }
#katazuke_cnt_03 h5 { border-bottom:solid 1px #eaeae0; margin:15px 0; padding:5px 5px; }


/*********** #katazuke_cnt_04 ***********/
#katazuke_cnt_04 { clear:both; margin-bottom: 60px; }
#katazuke_cnt_04 h4 { margin-bottom:20px; }
#katazuke_cnt_04 .wrap_flow { background:url(../images2/katazuke_cnt4_bg.jpg) no-repeat; position:relative; width:770px; }
#katazuke_cnt_04 .wrap_flow .left_box { 
	float:left; margin:10px; width:200px; font-size:138%; 
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝"; }
#katazuke_cnt_04 .wrap_flow .right_box { float:right; margin:13px 10px 0px; font-size:123%; width:530px; }
#katazuke_cnt_04 .wrap_flow .right_box2 { float:left; margin:13px 10px 0px; font-size:123%; width:380px; }
#katazuke_cnt_04 .wrap_flow .btm_box { clear:both; }
#katazuke_cnt_04 .wrap_flow .img_box { position:absolute; right:10px; bottom:0; }


/*********** #katazuke_cnt_05 ***********/
#katazuke_cnt_05 { clear:both; margin-bottom: 60px; }
#katazuke_cnt_05 h4 { margin-bottom: 20px; }

#katazuke_cnt_05 .wrap_life_organize {
	padding: 0 20px; margin: 0 0 7em;
	font-size: 1.125em; line-height: 1.8;
}
#katazuke_cnt_05 h5 {
	border-bottom: solid 2px #702689;
	font-family: 'Shippori Mincho', serif;
	font-size: 1.5em !important;
	padding: 10px 0;
	margin: 20px 10px;
}
#katazuke_cnt_05 ul.wrap_life_organize2 {
	padding: 20px 30px; margin: 0 10px;
	font-size: 1.25em;
	background-color: #FDFCED;
	box-sizing: border-box;
}
#katazuke_cnt_05 ul.wrap_life_organize2 li { 
	border-bottom: dotted 1px #ccc;
	padding:0 20px 10px 20px; 
	margin: 0 0 10px;
	display:block; background:url(../images2/katazuke_cnt1_maru.jpg) no-repeat left 4px; }




/******************************  
.wrap_life_organize .accordion　続きを見る 
******************************/
.wrap_life_organize .accordion {
  position: relative;
}
.wrap_life_organize .accordion p {
font-size: 15px !important;
}
/* ボタン */
.wrap_life_organize .accordion-btn {
  background-color: #fff;
  border: 1px solid #6E2789;
	border-radius: 10px;
  bottom: 0;
  color: #6E2789;
  cursor: pointer;
  display: inline-block;
  font-size: 18px;
  left: 0;
  margin: auto;
  padding: 1px 15px;
  position: absolute;
  right: 0;
  text-align: center;
  transition: all .2s;
  width: fit-content;
  z-index: 1;
	box-shadow: 0 2px 5px rgba(0,0,0,.15);
}
/* 続きを読むボタンの表記 */
.wrap_life_organize .accordion-btn::after {
  content: "+ 続きを読む";
}
/* ボタンhover時のスタイル */
.wrap_life_organize .accordion-btn:hover {
  background-color: #6E2789;
  color: #fff;
}
.wrap_life_organize .accordion-text {
  overflow: hidden; /* テキストを隠す */
  position: relative;
	display: flex;
	justify-content: space-between;
}

.wrap_life_organize .accordion-text .img_box { width: 30%; }
.wrap_life_organize .accordion-text .txt_box { width: 67%; }
.wrap_life_organize .accordion-text .img_box img { width: 100%; height: auto; }

/* 最初に見えてるテキストエリアの高さ */
.wrap_life_organize .accordion-text.is-hide {
  height: 200px;
}
/* テキストをグラデーションで隠す */
.wrap_life_organize .accordion-text::before {
  background: linear-gradient(to top, #fff 30%, rgba(255,255,255,0.1) 100%);
  bottom: 0;
  content: "";
  height: 100px; /* グラデーションで隠す高さ */
  position: absolute;
  width: 100%;
}

/* 閉じるボタンの位置 */
.wrap_life_organize .accordion-btn.is-show {
  bottom: -3em;
}
/* 閉じるボタンの表記 */
.wrap_life_organize .accordion-btn.is-show::after {
  content: "- 閉じる";
}
/* 続きを見るボタンをクリックしたらテキストを隠しているグラデーションを消す */
.wrap_life_organize .accordion-btn.is-show + .accordion-text::before {
  display: none;
}

/******************************  
.wrap_life_organize　続きを見る 
******************************/
.wrap_life_organize .text_wrapper {
	position: relative;
	margin-bottom: 65px;
	padding-bottom: 90px;	
	border: solid 1px #ff0000;
}
.wrap_life_organize .text {
  height: 120px;
  overflow: hidden;
}
.wrap_life_organize .show_more,
.wrap_life_organize .show_more2 {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 60px;
	padding-top: 60px;
	text-align: center;
	line-height: 30px;
	background: linear-gradient( 180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255, 1) 40% );
	cursor: pointer;
	transition: bottom 0.2s;
	border: solid 1px #ff0000;
}
.wrap_life_organize .show_more span.btn,
.wrap_life_organize .show_more2 span.btn {
	border: solid 1px #ccc;
	border-radius: 10px;
	padding: 10px 10px;
}
.wrap_life_organize .active {
  background: none;
  bottom: -30px;
}








/*********** #katazuke_cnt_06 ***********/
#katazuke_cnt_06 { clear:both; margin-bottom: 60px; }
#katazuke_cnt_06 h4 { margin-bottom: 20px; }

.wrap_katazuke_voice {
  padding: 15px 15px;
  box-sizing: border-box;
  background-color: #f7f7f3;
  width: calc(100% - 20px);
  margin: 20px 10px;
}
.wrap_katazuke_voice .box_voice {
  width: 100%;
  background-color: #fff;
  box-sizing: border-box;
  padding: 20px 30px;
  border: solid 1px #EAEAE0;
  margin-bottom: 10px;
}
.wrap_katazuke_voice .box_voice dl {
	display: flex;
	justify-content: space-between;
	font-size: 16px;
}
.wrap_katazuke_voice .box_voice dt {
	color: #e081a9;
	font-weight: bold;
	width: 20%;
}
.wrap_katazuke_voice .box_voice dd {
	width: 80%;
}

.marker_pink {
	background:linear-gradient(transparent 50%, #f9e1e1 50%);
}



/*********** #katazuke_cnt_07 ***********/
#katazuke_cnt_07 { clear:both; margin-bottom: 60px; }
#katazuke_cnt_07 h4 { margin-bottom: 20px; }


.qa-list dl {
    position: relative;
    margin: 0;
    padding: 28px 80px 28px 30px;
    cursor: pointer;
    border-bottom: 1px solid #ccc;
}
.qa-list dl:first-child {
    border-top: 1px solid #ccc;
}
.qa-list dl::before {
    position: absolute;
    top: 35px;
    right: 35px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #CE9FB2;
    border-right: 2px solid #CE9FB2;
}
.qa-list .open::before {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 0 0 0 50px;
    font-size: 18px;
}
.qa-list dl dt::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    content: 'Q.';
    color: #6C2589;
	font-family: 'Shippori Mincho', serif;
}
.qa-list dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 2px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #e081a9;
	font-family: 'Shippori Mincho', serif;
}
.qa-list dl dd {
    position: relative;
    display: none;
    height: auto;
    margin: 20px 0 0;
    padding: 0 0 0 50px !important;
	font-size: 16px !important;
}
.qa-list dl dd p {
    margin: 30px 0 0;
	padding: 0 !important;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

@media screen and (max-width: 767px) {
	.qa-list dl {
		position: relative;
		padding: 15px 40px 15px 10px;
	}
	.qa-list dl::before {
		top: 20px;
		right: 20px;
		width: 7px;
		height: 7px;
	}
	.qa-list dl dt {
		padding: 0 0 0 30px;
		font-size: 14px;
	}
	.qa-list dl dt::before {
		font-size: 14px;
		top: 3px;
		left: 5px;
		content: 'Q.';
	}
	.qa-list dl dd::before {
		font-size: 14px;
		top: 5px;
		left: 5px;
		content: 'A.';
	}
	.qa-list dl dd {
		margin: 10px 0 0;
		padding: 0 0 0 30px;
		font-size: 14px;
	}
	.qa-list dl dd p {
		margin: 30px 0 0;
	}
	.qa-list dl dd p:first-child{
		margin-top: 0;
	}
}






/* =====================
  cleaning.html
===================== */


/*********** #cleaning_cnt_01 ***********/
#cleaning_cnt_01 { text-align:left; }

/*********** #cleaning_cnt_02 ***********/
#cleaning_cnt_02 { clear:both; text-align:left; margin:40px 0 0; }
#cleaning_cnt_02 #wrap_kaji { margin:20px 0 0; background:url(../images2/kaji_ph.jpg) no-repeat right bottom; }

#cleaning_cnt_01 h5,
#cleaning_cnt_02 h5 { margin:10px 0 0; }
#cleaning_cnt_01 h5.h5_head,
#cleaning_cnt_02 h5.h5_head { border-bottom:solid 1px #daceb6; margin:25px 0 0; padding:5px 5px; }
#cleaning_cnt_01 p, 
#cleaning_cnt_02 p { font-size:134%; }
#cleaning_cnt_01 .img_box,
#cleaning_cnt_02 .img_box { text-align:center; margin:15px 0; }

#cleaning_cnt_02 div.waku01{
	border:1px solid #eceedd;
	padding:20px;
	border-radius:5px;
	margin-top: 3px;
	margin-right: auto;
	margin-bottom: 3px;
	margin-left: 10px;
	background-color:rgba(255,255,255,0.9);
}

/* =====================
  seminar.html / privacy /about etc
===================== */
#content p.head_box { font-size:129%; line-height:1.5; }
#content h4 { margin:0 0 １0px; padding:0 !important; }
#content h5.h5_head { border-bottom:solid 1px #eaeae0; margin:1
5px 0 0; padding:5px 5px; }
#content h5.h5_head span {
	border-left:solid 5px #f2abc9;
	border-radius:2px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝";
	font-size:192%;
	padding:2px 10px;
	margin-bottom:10px;
}
#content p { font-size:117%; }	
#content #cnt01 { margin:20px 0 0; text-align:left; }
#content #cnt02 { margin:40px 0 0; text-align:left; }
#content #cnt03 { margin:40px 0 0; text-align:left; }
#content #cnt04 { margin:40px 0 0; text-align:left; }
#content #cnt05 { margin:40px 0 0; text-align:left; }

#content .c_contact { position:relative; width:770px; height:100px; margin:15px 0 0; clear:both; }
#content .c_contact .btn_box { position:absolute; right:15px; bottom:10px; }
#content .c_contact p { padding:0 !important; margin:0 !important; }


/* =====================
  seminar-res.html
===================== */
.semi-res-box h5.h5_head { margin:0 0 10px !important; }


/* =====================
  news.html
===================== */
#content table#tbl_news {
	font-size:134%;
	margin-bottom:10px;
}
#content table#tbl_news td {
	padding:5px 10px;
}