@charset "UTF-8";
/* CSS Document */

article {
	width: 100%;
	/* background: url(../images/common/ob_line_gr.png) repeat;
	background-size: 14px 14px; */
	background: #f7f7f8;
}

/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 769px){

	article {
		padding-bottom: 100px;
	}
	
	article section {
		width: 1000px;
		margin: 0 auto;
		background: #FFF;
		padding: 50px 30px;
		padding-bottom: 70px;
	}
	
	article section h2.title{
		font-size: 24px;
		line-height: 1.4;
		margin-bottom: 10px;
		color: #25A9A4!important;
	}
	
	article section ul.cat_info{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 18px;
	}
	
	
	article section ul.cat_info li.data p{
		font-size: 12px;
	}
	
	article section ul.cat_info li.data p span{
		font-size: 10px;
		display: inline-block;
		color: #FFF;
		background: #ff0000;
		padding: 2px 8px 1px;
		margin-right: 1em;
	}
	
	article section div.contents_inner{
		width: 100%;
		padding-top: 0;
		border-bottom: 1px dotted #666;
		padding-bottom: 50px;
		margin-bottom: 2px;
	}
	
	/*ここからパーツ*/
	article section div.contents_inner h2{
		font-size: 24px;
		line-height: 1.4;
		margin-bottom: 10px;
		color: #333;
	}
	
	article section div.contents_inner h3{
		font-size: 22px;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner h4{
		font-size: 18px;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner p.text{
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 25px;
	}
	
	article section div.contents_inner div.shadow_box{
		width: 100%;
		/* background: url(../images/common/bg_dot_g.png) repeat;
		background-size: 8px 8px; */
		padding: 0;
		margin: 10px 0 10px 10px;
		position: relative;
	}
	
	article section div.contents_inner div.shadow_box div{
		display: inline-block;
		width: 100%;
		line-height: 0;
		margin-top: -10px;
		margin-left: -10px;
	}
	
	article section div.contents_inner div.shadow_box02{
		display: inline-block;
		/* background: url(../images/common/bg_dot_g.png) repeat;
		background-size: 8px 8px; */
		padding: 0;
		margin: 10px 0 20px 10px;
		position: relative;
	}
	
	article section div.contents_inner div.shadow_box02 div{
		display: inline-block;
		width: 100%;
		line-height: 0;
		margin-top: -10px;
		margin-left: -10px;
	}
	
	article section div.contents_inner ul.two_images,
	article section div.contents_inner ul.three_images{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: space-between;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner ul.two_images li{
		width: 48%;
	}
	
	article section div.contents_inner ul.three_images li{
		width: 31%;
	}
	
	article section div.contents_inner div.around_L,
	article section div.contents_inner div.around_R{
		width: 100%;
		overflow: hidden;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner div.around_L div.shadow_box02{
		float: left;
		margin-right: 20px;
	}
	
	article section div.contents_inner div.around_R div.shadow_box02{
		float: right;
		margin-left: 20px;
	}
	
	article section div.contents_inner div.btn_area{
		width: 100%;
		margin: 30px 0;
		text-align: center;
	}
	
	article section div.contents_inner div.btn_area a.btn{
		display: inline-block;
		padding: 10px;
		background: #CCC;
		border: 1px solid #CCC;
		color: #000;
	}
	
	article section div.contents_inner div.btn_area i{
		display: inline-block;
		margin-left: 0.5em;
	}
	
	article section div.contents_inner table.content_table {
		width: 100%;
		border: 1px solid #ccc;
		margin: 30px 0;
	}
	
	article section div.contents_inner table.content_table th{
		border: 1px solid #ccc;
		border-width: 0 1px 1px 0;
		padding: 5px;
	}
	
	article section div.contents_inner table.content_table td{
		border: 1px solid #ccc;
		border-width: 0 0 1px 0;
		padding: 5px;
	}
	
	article section div.contents_inner div.map {
		width: 100%;
		height: 300px;
		margin: 30px 0;
	}
	
	article section div.contents_inner div.map iframe{
		width: 100%!important;
		height: 100%!important;
	}
	
	article section div.contents_inner div.youtube{
		width: 100%;
		padding-bottom: 56.2%;
		height: 0px;
		position: relative;
		margin: 30px auto;
	}
	
	article section div.contents_inner div.youtube iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	
	article section ul.nb_btn {
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: center;
		border-top: 1px dotted #666;
		padding-top: 40px;
	}
	
	article section ul.nb_btn li{
		width: 125px;
		height: 32px;
		margin: 0 5px;
		border: 1px solid #666;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		font-size: 12px;
		transition-duration: 0.5s;
	}
	
	article section ul.nb_btn li:hover{
		border: 1px solid #8cc63f;
	}
	
	article section ul.nb_btn li:hover a{
		color: #8cc63f;
	}
	
	article section ul.nb_btn li a{
		height: 100%;
		display: block;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: center;
		align-items: center;
		color: #666;
	}
	

}

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media print, screen and (max-width: 768px){

	article {
		padding-bottom: 50px;
	}
	
	article section {
		width: 95%;
		margin: 0 auto;
		background: #FFF;
		padding: 25px 5% 40px;
	}
	
	article section h2.title{
		color: #25A9A4!important;
	}
	
	article section ul.cat_info{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 18px;
	}
	
	article section ul.cat_info li.data p{
		font-size: 12px;
		font-size: 1.2rem;
	}
	
	article section ul.cat_info li.data p span{
		font-size: 10px;
		font-size: 1.0rem;
		display: inline-block;
		color: #FFF;
		background: #ff0000;
		padding: 2px 8px 1px;
		margin-right: 1em;
	}
	
	article section div.contents_inner{
		width: 100%;
		border-bottom: 1px dotted #666;
		padding-top: 25px;
		margin-bottom: 2px;
	}
	
	article section div.contents_inner h2{
		font-size: 22px;
		font-size: 2.2rem;
		line-height: 1.4;
		margin-bottom: 5px;
	}
	
	/*ここからパーツ*/
	article section div.contents_inner h2{
		font-size: 20px;
		font-size: 2.0rem;
		line-height: 1.4;
		margin-bottom: 10px;
		color: #333;
	}
	
	article section div.contents_inner h3{
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner h4{
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner p.text{
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1.5;
		margin-bottom: 25px;
	}
	
	article section div.contents_inner div.shadow_box{
		width: calc( 100% - 10px );
		/* background: url(../images/common/bg_dot_g.png) repeat;
		background-size: 8px 8px; */
		padding: 0;
		margin: 20px 0 10px 10px;
		position: relative;
	}
	
	article section div.contents_inner div.shadow_box div{
		display: inline-block;
		width: 100%;
		line-height: 0;
		margin-top: -10px;
		margin-left: -10px;
	}
	
	article section div.contents_inner div.shadow_box02{
		display: inline-block;
		/* background: url(../images/common/bg_dot_g.png) repeat;
		background-size: 8px 8px; */
		padding: 0;
		margin: 20px 0 10px 10px;
		position: relative;
	}
	
	article section div.contents_inner div.shadow_box02 div{
		display: inline-block;
		width: 100%;
		line-height: 0;
		margin-top: -10px;
		margin-left: -10px;
	}
	
	article section div.contents_inner ul.two_images,
	article section div.contents_inner ul.three_images{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	
	article section div.contents_inner ul.two_images li,
	article section div.contents_inner ul.three_images li{
		width: 100%;
		margin-bottom: 10px;
	}
	
	article section div.contents_inner div.around_L,
	article section div.contents_inner div.around_R{
		width: 100%;
		overflow: hidden;
		margin-bottom: 20px;
	}
	
	article section div.contents_inner div.around_L div.shadow_box02{
		width: 100%!important;
		margin: 0 auto 20px;
	}
	
	article section div.contents_inner div.around_R div.shadow_box02{
		width: 100%!important;
		margin: 0 auto 20px;
	}
	
	article section div.contents_inner div.btn_area{
		width: 100%;
		margin: 30px 0;
		text-align: center;
	}
	
	article section div.contents_inner div.btn_area a.btn{
		display: inline-block;
		padding: 10px;
		background: #CCC;
		border: 1px solid #CCC;
		color: #000;
	}
	
	article section div.contents_inner div.btn_area i{
		display: inline-block;
		margin-left: 0.5em;
	}
	
	article section div.contents_inner table.content_table {
		width: 100%;
		border: 1px solid #ccc;
		margin: 30px 0;
	}
	
	article section div.contents_inner table.content_table th{
		border: 1px solid #ccc;
		border-width: 0 1px 1px 0;
		padding: 5px;
	}
	
	article section div.contents_inner table.content_table td{
		border: 1px solid #ccc;
		border-width: 0 0 1px 0;
		padding: 5px;
	}
	
	article section div.contents_inner div.map {
		width: 100%;
		height: 300px;
		margin: 30px 0;
	}
	
	article section div.contents_inner div.map iframe{
		width: 100%!important;
		height: 100%!important;
	}
	
	article section div.contents_inner div.youtube{
		width: 100%;
		padding-bottom: 56.2%;
		height: 0px;
		position: relative;
		margin: 30px auto;
	}
	
	article section div.contents_inner div.youtube iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	
	/*ここでまでパーツ*/
	
	article section ul.nb_btn {
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: center;
		border-top: 1px dotted #666;
		padding-top: 40px;
	}
	
	article section ul.nb_btn li{
		width: 125px;
		height: 32px;
		margin: 0 5px;
		border: 1px solid #666;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		font-size: 12px;
		transition-duration: 0.5s;
	}
	
	article section ul.nb_btn li a{
		height: 100%;
		display: block;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: center;
		align-items: center;
		color: #666;
	}
}

@media print, screen and (max-width: 480px){

}
