@charset "utf-8";
htlm{
	overflow:auto;
}


.fade_animat_out{
	opacity: 0;
	transition: 0.8s;
	transform:translateY(50px)
}

.fade_animat_in{
	opacity: 1;
	transform:translateY(0)
}


.fade{
	opacity:0;
	transition:all 0.8s;
}

.fade.active{
	opacity:1;
}

body{
	color:#000;
	font-size:16px;
	line-height:24px;
	font-family:'Roboto','Noto Sans JP',"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro","Quicksand","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	word-break: break-all;
}

header ul.g_navi li a{
	font-family:'Noto Sans JP',"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro","Quicksand","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

ul{
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}

li{
	letter-spacing: normal; /* 文字間を通常に戻す */
}
a {
	color:#000;
	text-decoration:none;
}


a:hover{
	opacity:0.7;
}

img{
	max-width:100%;
}

.clear{
	clear:both;
}

.clearfix_af:after{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}

.clearfix_bf:before{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}
.clearfix_af ,.clearfix_bf{
	display: inline-block;
} 
/* Hides from IE Mac */
* html .clearfix_af{
	height: 1%;
}
.clearfix_af ,.clearfix_bf{
	display:block;
}

/* End Hack */

.title_area{
	text-align:center;
	padding-bottom:10px;
}

h2{
	font-family:'Roboto','M PLUS Rounded 1c','Noto Sans JP',"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro","Quicksand","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size:20px;
	text-align:center;
	display:inline-block;
	position:relative;
}

h2:after{
	content:"";
	display:block;
	position:relative;
	width:100%;
	height:2px;
	background:#ff9999;
	bottom:-5px;
}


h3.sub_title{
	font-size:16px;
	font-weight:normal;
	margin:10px 0;
	padding:5px 0 5px 15px;
	letter-spacing:2px;
}

h3.sub_title:first-letter{
	font-size:20px;
}

section{
	padding-top:80px;
	padding-bottom:80px;
}

.under_contens{
	min-height:calc(100vh - 315px);
}

.under_contens h2{
	padding-top:40px;
}

/*
.under_contens section:nth-child(even){
	background:url(image/common/point04.png)no-repeat left 20px top 20px;
}

.under_contens section:nth-child(odd){
	background:url(image/common/point02.png)no-repeat right 20px bottom 40px;
}
*/

.contens_area section:nth-child(odd),
.under_contens section:nth-child(odd){
	background-color:#faf7f5;
}

.container{
	max-width:1280px;
	margin:auto;
	padding-left:20px;
	padding-right:20px;
	box-sizing:border-box;
}

header{
	position:fixed;
	width:100%;
	background-color:#fff;
	top:0;
	padding:20px 10px 10px 50px;
	box-sizing:border-box;
	z-index:2;
	justify-content: space-between;
	display:block;
	flex-wrap:wrap;
	align-items:center;
}

header h1{
	max-width:400px;
}

header h1 img{
	display:block;
}

.image_circle{
	text-align:center;
}

.image_circle div{
	border-radius:50%;
	height:300px;
	width:300px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}

.text_area .text{
/*	flex:1;*/
	padding-left:40px;
	padding-top:20px;
}

.text_center{
	margin-top:20px;
	text-align: center;
}
.text_center p {
	text-align: left;
	display: inline-block;
}

footer{
	color:#000;
	position:relative;
	z-index:2;
}

footer .container{
	padding-top:80px;
	padding-bottom:80px;
	/*background:url(image/common/footer_point.png)no-repeat right bottom;*/
}

.more{
	text-align:right;
	padding-top:30px;
}

.text_area02{
	margin-top:40px;
}

.text_area02 .image_circle div{
	margin:auto;
	width:300px;
	height:300px;
}

ul.contents{
	justify-content: space-between;
	display:flex;
	flex-wrap:wrap;
}

ul.contents > li:last-child{
	flex:1;
	padding-left:20px;
	box-sizing:border-box;
}

ul.contents > li:first-child{
	width:300px;
	padding-left:20px;
	box-sizing:border-box;
	background-color:#faf7f5;
}

ul.contents li article{
	margin-bottom:50px;
}

ul.contents li .blog_bk{
	margin-bottom:30px;
}

ul.contents li .blog_bk ul li{
	margin-bottom:8px;
}

ul.contents li .image_area{
	margin:15px auto 0 auto;
	max-width:600px;
}

ul.contents li p{
	margin-top:15px;
}

ul.page{
	justify-content:center;
	display:flex;
	flex-wrap:wrap;
	margin-top:40px;
}

ul.page li{
	margin-right:5px;
	margin-bottom:5px;
}

ul.page li:last-child{
	margin-right:0;
}

ul.page li a{
	display:block;
	text-align:center;
	line-height:25px;
	width:25px;
	height:25px;
	border:solid 1px #eee;
}

ul.page li a.act{
	background-color:#eee;
	color:#fff;
}

.sc_down{
	position: absolute;
	z-index: 99999999;
	bottom: 150px;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
}

.sc_down a{
	display: block;
	width: 50px;
	height: 50px;
	margin: auto;
	transform:translateY(0);
	animation: arrowmove 1s ease-in-out infinite;
}

.sc_down span{
	width:20px;
	height:3px;
	background-color:#fff;
	display:block;
	position: relative;
	margin: auto;
}


.sc_down span:nth-child(1){
	transform: rotate(45deg);
	right: 7px;
	top: 20px;
}

.sc_down span:nth-child(2){
	transform: rotate(-45deg);
	left: 7px;
	top: 18px;
}


@keyframes arrowmove{
	0%{transform:translateY(0);}
	50%{transform:translateY(-10px);}
	100%{transform:translateY(0);}
}



@media all and (min-width: 767px) {
	
	header #switchBtnArea{
		display:none;
	}

	.table_style{
		width:100%;
		border: solid 1px #ccc;
		border-collapse: collapse;
		margin-top:40px;
	}

	.table_style th{
		width:200px;
		font-weight:normal;
		padding:10px;
		background-color:#eee;
		border: solid 1px #ccc;
		vertical-align: middle;
	}

	.table_style td{
		padding:10px;
		background-color:rgba(255,255,255,0.5);
		border: solid 1px #ccc
	}


}

@media all and (min-width: 768px) {
	.sp_only{
		display:none !important;
	}
}

@media all and (min-width: 769px) {
	.sp_only{
		display:none !important;
	}

	header ul.g_navi{
		justify-content: flex-start;
		display:flex !important;
		flex-wrap:wrap;
		flex:1;
		margin-top:10px;
		margin-left:0;
	}

	header ul.g_navi li{
		text-align:left;
/*		margin-right:20px;*/
	}

	header ul.g_navi li:last-child{
		margin-right:0;
	}

	header ul.g_navi li a{
		display: inline-block;
		position: relative;
		padding: 5px 15px;
		overflow: hidden;
		width:auto;
	}

	header ul.g_navi li a{
		border:0;
	}

	header ul.g_navi li a:hover:after{
		left: 0;
	}

	header ul.g_navi li a:after{
		width: 100%;
		height: 2px;
		position: absolute;
		left: -100%;
		bottom: 0;
		content: "";
		display: block;
		transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		-moz-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		-webkit-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		-ms-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	}

	.text_area{
		justify-content:center;
		display:flex;
		flex-wrap:wrap;
		margin-top:20px;
		align-items:center;
	}


}

@media all and (max-width: 768px) {
	body{
		font-size:12px;
	}

	.tab_none{
		display:none !important;
	}

	.tab_only{
		display:block !important;
	}

	section{
		padding-top:40px;
		padding-bottom:40px;
	}

	header ul.g_navi{
		display:none;
		overflow: scroll;
	}


	#switchBtnArea{
		position: fixed;
		z-index: 9999;
		top: 25px;
		right:25px;
	}

	#switchBtnArea .switchBtn {
		width: 38px;
		height: 25px;
		display: block;
		z-index:9999;
	}

	#switchBtnArea .switchBtn span {
		height: 2px;
		display: block;
		position: absolute;
		background-color: #000;
		transition: all 0.2s linear;
	}
	#switchBtnArea .switchBtn span:nth-of-type(1) {top:0px;transform: rotate(0);width:40px;}
	#switchBtnArea .switchBtn span:nth-of-type(2) {top:20px;transform: scale(1);width:22px;}
	#switchBtnArea .switchBtn span:nth-of-type(3) {top:10px;transform: rotate(0);width:32px;}

	#switchBtnArea .switchBtn.btnClose span:nth-of-type(1) {top:12px;transform: rotate(-45deg);width:32px;}
	#switchBtnArea .switchBtn.btnClose span:nth-of-type(2) {transform: scale(0);}
	#switchBtnArea .switchBtn.btnClose span:nth-of-type(3) {top:12px;transform: rotate(45deg);width:32px;}

	header{
		padding:15px 20px;
	}

	header ul.g_navi{
		position:fixed;
		top:71px;
		background-color:#fff;
		width:100%;
		height: calc(100vh - 70px);
		left:0;
		text-align:center;
		padding-top:10px;
	}

	header ul.g_navi li a{
		display:block;
		padding:10px 0;
	}

	.text_area{
		margin-top:40px;
	}

	.image_circle div{
		margin:auto;
		width:300px;
		height:300px;
	}

	.text_area .text{
		padding-left:0;
	}

	ul.contents{
		display:block;
	}

	ul.contents > li:last-child{
		padding-left:20px;
	}

	ul.contents > li:first-child{
		width:100%;
		padding:10px 10px 0 10px;
	}

	ul.contents li .blog_bk.backno ul{
		justify-content: flex-start;
		display:flex;
		flex-wrap:wrap;
	}

	ul.contents li .blog_bk.backno ul li{
		margin-right:10px;
	}

}

@media all and (max-width: 767px) {

	.pc_only{
		display:none !important;
	}

	header{
		min-height:60px;
	}

	header h1 img{
		max-width:200px;
	}

	#switchBtnArea{
		top:20px;
	}

	header ul.g_navi{
		top:60px;
	}


	.table_style{
		width:100%;
		margin-top:40px;
	}

	.table_style th{
		display:block;
		width:100%;
		font-weight:normal;
		padding:10px 0 0 0 ;
		text-align:left;
		box-sizing:border-box;
		font-size:17px;
	}

	.table_style td{
		display:block;
		width:100%;
		padding-left:10px;
		padding-bottom:10px;
		border-bottom:solid 1px #ccc;
		box-sizing:border-box;
	}


}

@media all and (max-width: 375px) {

}

@media all and (max-width: 320px) {


}
