@charset "UTF-8";

@import url(common.css);


/***********共通／テーブル／Serviceページ***********/
.tbl-service{
	width:100%;
}
.tbl-service th{
	border-bottom:3px solid #f9e697;
	width:23%;
	padding:15px 40px 5px 40px;
	text-align:center;
	font-weight:normal;
}
.tbl-service th span.month{
	text-align:right;
	display:inline-block;
	width:60px;
}
.tbl-service td{
	border-bottom:3px solid #ddd;
	width:77%;
	padding:15px 40px 5px 40px;
}
/*タブレット*/
@media only screen and (max-width: 767px){
	.tbl-service th{
		padding:15px 15px 5px 15px;
	}
	.tbl-service td{
		padding:15px 15px 5px 15px;
	}
}
/*スマホ*/
@media screen and (max-width:479px){
	.tbl-service th{
		display:block;
		width:auto;
		border-bottom:none;
		background-color:#f9e697;
		padding:0px 10px 0 10px;
		text-align:left;
	}
	.tbl-service td{
		display:block;
		width:auto;
		border-bottom:none;
		padding:0px 10px 20px 20px;
	}
}


/***********共通／テーブル内dl／Serviceページ***********/
.tbl-service dt{
	padding:3px 10px 3px 10px;
	min-width:150px;
	display:inline-block;
	background-color:#f9e697;
	text-align:center;
}
.tbl-service dd{
	border-bottom:none;
	padding:0px 0px 15px 20px;
}
.tbl-service td p:last-child{
	margin-bottom:0px;
}
/*スマホ*/
@media screen and (max-width:479px){
	.tbl-service dt{
		padding:10px 0px 3px 0px;
		border-bottom:3px solid #f9e697;
		background-color:transparent;
		display:block;
	}
}


/***********共通　ブログ更新情報（カテゴリ別）***********/
div.wp-contents-wrap{
	display:table;
	text-align:center;
	margin:0 auto;
	overflow:hidden;
}
div.wp-contents{
	width:265px;
	float:left;
	display:table-cell;
	text-align:center;
	padding:0 5px;
}
div.wp-contents p{
	margin-bottom:0;
}
div.wp-contents p.thumbnail{
	width:265px;
	height:159px;
	overflow:hidden;
}
/*スマホ*/
@media screen and (max-width:479px){
	div.wp-contents-wrap{
		display:block;
		text-align:left;
	}
	div.wp-contents{
		width:100%;
		float:none;
		display:block;
		text-align:left;
		overflow:hidden;
		margin-bottom:20px;
	}
	div.wp-contents p.thumbnail{
		float:left;
		max-width:100px;
		height:auto;
		background-image:none;
		margin-right:10px;
	}
	div.wp-contents p.thumbnail img{ 
		max-width:100px;
	}
}


/***********トップページ／背景画像***********/
#top-bg{
	background-image:url(../images/bg-img.jpg);
	background-size:cover;
	background-position:center 100%;
	background-repeat:no-repeat;
}


/***********トップページ／スライドショー***********/
#slide{
	overflow:hidden;
	max-width:1100px;
	margin:0 auto;
}
#slide img{
	max-width:1100px;
}
/*1100px以下　*/
@media only screen and (max-width:1100px){
	#slide img{
			max-width:100%;
	}
}
/*スマホ*/
@media screen and (max-width:479px){
	#slide{
		display:none;
	}
}


/***********トップページ／サービス一覧***********/
div.top_service {
	overflow:hidden;
}
div.top_service_flame{
	max-width:520px;
	padding:15px;
	float:left;
}
div.top_service_flame p{
	word-break: break-all;
	margin-top:10px;
	margin-bottom:0;
}
div.top_service_flame a img{
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}
div.top_service_flame a:hover img  {
	opacity: .5;
	-webkit-opacity: .5;
	-moz-opacity: .5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}

/*1100px以下*/
@media only screen and (max-width:1100px){
	div.top_service_flame{
		width:50%;
		padding:10px;
		box-sizing: border-box;/*padding含めた幅にする*/
	}
	div.top_service_flame img{
		max-width:100%;
	}
}
/*スマホ*/
@media screen and (max-width:479px){
	div.top_service_flame{
		width:100%;
		float:none;
		margin-bottom:30px;
	}
	div.top_service_flame img{
		max-width:100%;
	}
}


/***********トップページ／ワードプレス最新記事***********/
#wp-news ul{
	height:400px;
	overflow-y:scroll;
	padding-right:10px;
}
#wp-news ul li{
	overflow:hidden;
	border-bottom:1px dashed #9ec34b;
	padding: 10px 0;
}
#wp-news p{
	margin-bottom:0;
}

#wp-news div.newsL{
	float:left;
	width:23%;
	display:
}
#wp-news div.newsL p{
	text-align:center;
}
#wp-news .newsL span.cat{
	display:block;
	background-color:#9ec34b;
	color:#fff;
	text-align:center;
}
#wp-news div.newsL img{
	width:100%;
	height:auto;
}
#wp-news .newsR{
	float:right;
	width:75%;
}
#wp-news .newsR p.title{
	margin-bottom:10px;
}


/***********aboutページ***********/
.about_bg1{
	background-image:url(../images/about_bg1.png);
	background-repeat:no-repeat;
	background-position:right bottom;
	background-size:contain;
}
.about_bg2{
	background-image:url(../images/about_bg2.png);
	background-repeat:no-repeat;
	background-position:right bottom;
	background-size:contain;
}
ul.li01 li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 5px;
	padding:0 0 5px 25px;
}
ul.li02{
	float:left;
	padding:0 30px;
}
ul.li02 li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 5px;
	padding:0 0 5px 25px;
}
/*タブレット*/
@media only screen and (max-width: 767px){
	.about_bg1,
	.about_bg2{
		background-image:none;
	}
	ul.li02{
		box-sizing: border-box;
		width:50%;
	}
}
/*スマホ*/
@media screen and (max-width:479px){
	ul.li01 li{
		margin-left:0px;
	}
	ul.li02{
		float:none;
		width:100%;
	}
}

/***********aboutページ／3本柱***********/

div.wrap-hasira{
	overflow:hidden;
}
figcaption{
	letter-spacing:0.1em;
	font-size:90%;
}
figure.hasira-img{
	float:left;
	width:30%;
	margin:0;
	text-align:center;
}
figure.hasira-img img{
	max-width:100%;
}
ol.li03{
	float:right;
	width:69%;
	counter-reset:number; /*数字をリセット*/
	list-style-type: none!important; /*数字を一旦消す*/
}
ol.li03 li{
	margin-bottom:20px;
	position: relative;
	padding-left: 30px;
	padding: 0em 0m 0em 30px;
}
ol.li03 h4{
	margin-bottom:20px;

}
ol.li03 li:before{
  /* 以下数字をつける */
	letter-spacing:0em;
	position: absolute;
	counter-increment: number;
	content: counter(number);
  /*以下数字のデザイン変える*/
	display:inline-block;
	background: #ffa662;
	color: white;
	font-weight:bold;
	font-size: 15px;
	left: 0;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align:center;
}



/*タブレット*/
@media only screen and (max-width: 767px){
}
/*スマホ*/
@media screen and (max-width:479px){
	figure.hasira-img{
		float:none;
		width:100%;
	}
	ol.li03{
		float:none;
		width:100%;
	}
}

/***********各種サービスページ／トップカテゴリ***********/

#course{
	overflow:hidden;
	margin-bottom:40px;
}
.course-name{
	float:left;
	width:450px;
}
.course-category{
	float:right;
	width:630px;
}

/*1100px以下*/
@media only screen and (max-width: 1100px){
	.course-name{
		width:auto;
		max-width:40%;
	}
	.course-name img{
		width:100%;
	}
	.course-category{
		width:auto;
		max-width:58%;
	}
	.course-category img{
		width:100%;
	}

}
/*スマホ*/
@media screen and (max-width:479px){
	.course-name{
		float:none;
		width:auto;
		max-width:100%;
	}
	.course-category{
		float:none;
		width:auto;
		max-width:100%;
	}
	.course-category img{
		width:100%;
	}
}


/***********各種サービスページ／1日のスケジュール***********/
div.schedule-wrap{
	overflow:hidden;
}
div.schedule{
	width:65%;
	float:left;
}
div.schedule img{
	max-width:100%;
}
/*タブレット*/
@media only screen and (max-width: 767px){
	div.schedule{
		width:auto;
		float:none;
	}
}


/***********各種サービスページ／アクティビティ***********/
div.activity{
	width:33%;
	float:right;
}
div.activity h3{
	width:100%;
 	margin:0;
	text-align:center;
	padding:5px;
}
div.activity p{
	text-align:center;
	background-color:#f9e697;
	border:2px solid #ffa662;
	margin-bottom:10px 0 0 0;
	padding:5px;
}
div.activity h4{
	width:100%;
	border-bottom:2px solid #ffa662;
	margin:20px 0 10px 0;
	padding:0 20px 5px 20px;
}
div.activity ul li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 5px;
	padding:0 0 10px 25px;
	margin-left:0px;
}
/*タブレット*/
@media only screen and (max-width: 767px){
	div.activity{
		width:auto;
		float:none;
	}
}


/***********各種サービスページ／年間スケジュール***********/
div.annual-events h3:first-child{
	margin-top:0;
}
div.annual-events img{
	max-width:100%
}
div.annual-events ul li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 5px;
	padding:0 0 0px 25px;
	margin-left:0px;
}
/*タブレット*/
@media only screen and (max-width: 767px){
div.annual-events img{
	display:none;
}
}

/***********相談事業おはな***********/
.soudan{
	overflow:hidden;
}
.soudanL{
	text-align:center;
	float:left;
	width:30%;
	max-width:300px;
}
.soudanL img{
	max-width:100%;
}
.soudanR{
	float:right;
	width:68%;
	max-width:770px;
}
/*スマホ*/
@media screen and (max-width:767px){
	.soudanL{
		float:none;
		width:auto;
		max-width:100%;
	}
.soudanL img{
	max-width:70%;
}

	.soudanR{
		float:none;
		width:auto;
		max-width:100%;
	}
}

/***********相談事業おはな／Q&A***********/
.qa *, .qa *:after, .qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.qa dt {
	margin-bottom: 0.5em;
	padding: 0.2em 0.5em 0.5em 2em;
	border-radius: 0.2em;
	background: #00838F;
	color:#fff;
}
.qa dd {
	margin-bottom: 1em;
	margin-left: 0;
	padding: 0.5em 1em 1.5em 3em;
}
/* QAアイコン */
.qa dt::before,.qa dd::before{
	font-size: 1.5em;
	color: #ffffff;
}
.qa dt::before {
	margin: 0.3em 0.5em 0 -1em;
	content: 'Q';
}
.qa dd::before {
	margin: 0 0.5em 0 -2em;
	padding: 0.2em 0.4em;
	content: 'A';
	border-radius: 0.2em;
	background: #26C6DA;
}



/***********相談事業おはな／タイムライン***********/
.timeline {
	position: relative;
	margin: 1em auto;
}
.timeline:before {
	position: absolute;
	top: 0;
	width: 4px;
	height: 100%;
	content: '';
	background-color: #006064;
	left: 30px;
}
.timeline .timeline_group {
	position: relative;
	padding-top: 55px;
}
.timeline .timeline_group:not(:first-of-type) {
	margin-top: 4rem;
}
.timeline .time_year {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0.5rem 1.5rem;
	color: #fff;
	background-color: #00838F;
	width: 100%;
	-webkit-box-sizing: border-box;
					box-sizing: border-box;
}
.timeline .timeline_item {
	margin-bottom: 1em;
	position: relative;
	padding-left: 80px;
}
.timeline .timeline_item:not(:last-of-type) {
	margin-bottom: 2em;
}
.timeline .timeline_item:before {
	position: absolute;
	z-index: -1;
	left: 0;
	width: 100%;
	height: 3px;
	content: '';
	background-color: #006064;
	top: 50%;
	-webkit-transform: translateY(-50%);
					transform: translateY(-50%);
}
.timeline .time {
	position: absolute;
	left: 0;
	box-sizing: border-box;
	min-width: 65px;
	min-height: 65px;
	padding: 0.5em 0.5em;
	text-align: center;
	color: #fff;
	background-color: #26C6DA;
	top: 50%;
	margin-top: -33px;
	border-radius: 65px;
	line-height:1.4em;
}
.timeline .time_day {
	font-size: 1em;
	font-weight: 700;
	display: block;
	letter-spacing:0;
}
.timeline .time_month {
	font-size: 1.6em;
	font-weight: 700;
	display: block;
	text-transform: uppercase;
}
.timeline .desc {
	padding: 1.5em 1em;
	border-left: 3px solid #26C6DA;
	border-radius: 2px;
	background-color: #fff;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.2);
	font-size: 0.9em;
}
.timeline .desc img.right10{
	position:absolute;
	right:20px;
	bottom:-10px;
}
.timeline .desc .flag {
	font-size: 1.2em;
	font-weight: bold;
	margin: 0;
	padding: 0;
	padding-bottom: 0.3em;
}
.timeline .desc p.flag2 {
	padding:5px 15px;
	font-weight: bold;
	background-color:#deebf2;
	margin-bottom:5px;
}

.timeline .desc ul li{
	background-image:url(../images/ohana-li.png);
	background-size:16px 16px;
	background-repeat:no-repeat;
	background-position:0 7px;
	padding-left:22px;
	letter-spacing:0.2em;
	line-height:2em;
}
@media only screen and (max-width: 767px) {
	.timeline:before {
		left: 0;
	}
	.timeline .timeline_group {
		padding-top: 40px;
	}
	.timeline .timeline_item {
		padding-top: 60px;
		padding-left: 20px;
	}
	.timeline .timeline_item:before {
		top: 90px;
	}
	.timeline .time {
		top: 40px;
		border-radius: 0 20px 20px 0;
		min-height: 2em;
	}
	.timeline .time_day,
	.timeline .time_month {
		display: inline-block;
	}
	.timeline .desc {
		font-size: 0.8em;
	}
}


/***********Lopiページ／リスト***********/


dl.lopi dt{
 float: left;
 clear: both;
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 5px;
	padding:0 0 5px 25px;
	
}
dl.lopi dd{
  margin-left: 100px;
	padding:0 25px 5px 0;
}


/***********FamiRiaページ***********/
p.famiria-situation{
	text-align:center;
}
p.famiria-situation img{
	max-width:800px;
}
/*スマホ*/
@media screen and (max-width:479px){
	p.famiria-situation img{
		max-width:100%;
	}
}


/***********Flex親***********/
.flex_parent{
	display: flex;
	display: -webkit-box;
	 display: -webkit-flex;
	display: -ms-flexbox;
box-sizing:border-box;
}
.flex_parent img{
	max-width:100%;
	margin-bottom:5px;
}
	@media screen and (max-width: 1024px) {
		.flex_parent{
			flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}
	}
	@media screen and (max-width: 480px) {
		.flex_parent{
			display: block;
		}
	}

/***********Flex　３***********/
.flex3_child{
	width:33%;
	padding:10px;
	text-align:center;
	box-sizing:border-box;
}
	@media screen and (max-width: 600px) {
		.flex3_child{
			width:auto;
		}
	}




/***********各種サービスページ／アクセス***********/
.access-map-tbl{
	width:60%;
	float:left;
}
p.access-map{
	width:40%;
	float:right;
}
p.access-map img{
	max-width:100%;
}

	@media screen and (max-width: 600px) {
		.access-map-tbl{
			width:100%;
			float:none;
		}
		p.access-map{
			width:100%;
			float:none;
			margin-top:10px;
		}
		p.access-map img{
			max-width:100%;
		}
	}

/***********Companyページ***********/
iframe{
	max-width:100%;
}
.tbl-company{
	width:100%;
}
.tbl-company th{
	border-bottom:3px solid #f9e697;
	width:23%;
	padding:15px 40px 5px 40px;
	text-align:center;
	font-weight:normal;
}
.tbl-company th span.month{
	text-align:right;
	display:inline-block;
	width:60px;
}
.tbl-company td{
	border-bottom:3px solid #ddd;
	width:77%;
	padding:15px 40px 5px 40px;
}
.tbl-company td p{
	font-weight:bold;
	margin-bottom:5px;
	margin-top:10px;
}
.tbl-company td ul li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 8px;
	padding-left:22px;
	letter-spacing:0.2em;
	line-height:2em;
}
/*タブレット*/
@media only screen and (max-width: 767px){
	.tbl-company th{
		padding:15px 15px 5px 15px;
	}
	.tbl-company td{
		padding:15px 15px 5px 15px;
	}
}
/*スマホ*/
@media screen and (max-width:479px){
	.tbl-company th{
		display:block;
		width:auto;
		border-bottom:none;
		background-color:#f9e697;
		padding:0px 10px 0 10px;
		text-align:left;
	}
	.tbl-company td{
		display:block;
		width:auto;
		border-bottom:none;
		padding:0px 10px 20px 20px;
	}
}

iframe.googlemap{
	margin-top:50px;
}




/***********お問合せフォーム***********/
div.checkpoint{
	border:1px solid #c9c9c9;
	padding:30px;
	background-color:#f4f4f4;
}
div.checkpoint p.red{
	color:red;
}
div.checkpoint li{
	background-image:url(../images/footer-li.png);
	background-repeat:no-repeat;
	background-position:0 15px;
	padding:10px 0 10px 25px;
}
