*{
    margin: 0;
    padding: 0;
}
body{
	font-size:16px; 
	color:#333; 
	font-family:'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3',Meiryo,メイリオ,Osaka,'MS PGothic',arial,helvetica,sans-serif;
}
body{
    animation: fadeIn 1s ease 0s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
	50% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
	50% {opacity: 0}
    100% {opacity: 1}
}
main.home h1,main.home h3,main.app h3,.title h2.custom-title,#arya .birth-more p a{
	font-family: 'Yu Mincho','YuMincho','游明朝体','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN',"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",sans-serif;
	font-weight: 600;
}
main.home h2,main.app h2,nav ul.nav-menu li,nav.sp-nav .sp-menu li{
	font-family: 'La Belle Aurore', cursive;
}
.cfl { clear:both; }
.cfl:before,
.cfl:after { content:""; display:table; clear:both; }
.cf:after{
    clear:both;
    content:"";
    display:block;
    height: 0;
}
article,section,footer,main{
    display: block;
}
#content{
	overflow: hidden;
}
.wp10{
	width: 1000px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.wp6{
	width: 600px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
a{
	text-decoration: none;
	color: black;
	opacity: 1;
	-webkit-transition: 0.2s ease-in-out;
	transition:0.2s ease-in-out;  
}
a:hover{
    opacity: 0.7;
}
span.blue{
	color: #2e9cec !important;
}
button{
	opacity: 1;
	-webkit-transition: 0.2s ease-in-out;
	transition:0.2s ease-in-out;
}
button:hover{
	opacity: 0.7;
}
li{
	list-style-type: none;
}
img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
iframe{
	vertical-align: bottom;
	border: none;
}
section{
	position: relative;
}
table{
	border-collapse: collapse;
    border-spacing: 0;
	width: 100%;
}
.flex{
	display : -ms-flexbox; /*IE10*/
	display : -webkit-flex; /*old webkit browser*/
	display : flex;
}
.flex-c{
	display : -ms-flexbox; /*IE10*/
	display : -webkit-flex; /*old webkit browser*/
	display : flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
}
.flex-j{
	display : -ms-flexbox; /*IE10*/
	display : -webkit-flex; /*old webkit browser*/
	display : flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	
}
.flex-d{
	display : -ms-flexbox; /*IE10*/
	display : -webkit-flex; /*old webkit browser*/
	display : flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

/*------------------------------------*
   アニメーション設定
*------------------------------------*/
.col-l,.col-r{
	opacity: 1;
	-webkit-transition-property: opacity,transform;
	-webkit-transition-duration: 1s;
	-webkit-transition-timing-function: ease-in-out;
	transition-property: opacity,transform;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
}
.col-l.fade-side-l{
	opacity: 0;
	-webkit-transform: translateX(-10%);
    transform: translateX(-10%);
}
.col-r.fade-side-r{
	opacity: 0;
	-webkit-transform: translateX(10%);
    transform: translateX(10%);
}
.col{
	opacity: 1;
	-webkit-transition-property: opacity,transform;
	-webkit-transition-duration: 1s;
	-webkit-transition-timing-function: ease-in-out;
	transition-property: opacity,transform;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
}

.col.in{
	opacity: 0;
	-webkit-transform: translateY(5%);
    transform: translateY(5%);
}
.col-class.in{
	opacity: 0;
	-webkit-transform: translateY(2%);
    transform: translateY(2%);
}


/*------------------------------------*
    ページ先頭へ
*------------------------------------*/
.scroll-top{
	position: fixed;
    right: 1%;
	bottom: 10%;
    width: 50px;
    height: 50px;
    background-color: #1f99b3;
    opacity: 0.7;
	z-index: 100;
	display: none;
}
.scroll-top a{
	display: block;
    width: 100%;
    height: 100%;
	color: white;
}
.scroll-top a i{
    font-weight: 900;
	font-size: 24px;
	display: block;
	position: relative;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/*------------------------------------*
    メディアクエリ
*------------------------------------*/
@media screen and (max-width:1010px){
	.wp10{
		width: 98%;
}
@media screen and (max-width:680px){
	.wp6{
		width: 98%;
	}
	#content .flex{
		display: block;
	}
	#content .flex-c{
		display: block;
	}
	#content .flex-d{
		display: block;
	}
}