/*html {
  visibility: hidden;
}*/
html.wf-active {
  visibility: visible;
}

body{
	/* color: #ffffff; */
	/* font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Noto Sans Japanese","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial,Helvetica,Verdana,sans-serif;
	font-size: 1.4rem;
	line-height: 20px;
	letter-spacing: .1em; */
	/* background: #1b1b1b; */
}

/* a{
	color: #ffffff;
	text-decoration: none;
}
a:hover{
	text-decoration: underline;
}
.link_hover{
	opacity: 1;
	transition: 0.4s opacity;
}
.link_hover:hover{
	opacity: .8;
} */

/* width */
.all_wrap{
	min-width: 1120px;
	padding-top: 64px;
}
.wrap,
.inner,
.content_inner{
	margin: 0 auto;
}
.wrap{ width: 1120px; }
.inner{ width: 1000px; }
.content_inner{ width: 820px; }

/* display */
.sp_only{ display: none; }

/* font */
.font_montserrat{ font-family: "Montserrat", sans-serif; }

/* margin */
.mb_20{ margin-bottom: 20px; }

/* icon */
.icon img{
	margin-right: 5px;
	vertical-align:middle;
}

/*-----------------------
		header
-----------------------*/
/* .header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 1120px;
	background: #ffffff;
	margin: 0 auto;
	z-index: 10;
}
.header ul{
	padding-left: 10px;
}
.header ul li{
	float: left;
}
.header ul li a{
	display: block;
	color: #1b1b1b;
	line-height: 64px;
	padding: 0 16px 0 15px;
}
.header ul li a:hover,
.header ul .mega_btn:hover > a{
	color: #ffffff;
	text-decoration: none;
	background: #1b1b1b;
}
.header ul .adopt{
	margin-left: 110px;
}
.header ul .adopt a:hover{
	background: #f2f2f2;
}
.header ul .adopt a{
	height: 64px;
	box-sizing: border-box;
	padding: 10px 10px 0 20px;
}
.header ul .mega_btn{
	position: relative;
}
.header ul .mega_btn > a.link_non{
	cursor: initial;
}
.header ul .megamenu{
	position: absolute;
	top: 64px;
	left: 0;
	width: 170px;
	height: 0;
	background: #1b1b1b;
	box-sizing: border-box;
	padding: 0 15px;
	overflow: hidden;
	transition: 0.4s height;
}
.header ul .nav_about .megamenu{
	width: 195px;
}
.header ul .nav_feature .megamenu{
	width: 260px;
}
.header ul .mega_btn:hover .megamenu{
	height: 134px;
}
.header ul .mega_btn.nav_about:hover .megamenu{
	height: 224px;
}
.header ul .mega_btn.nav_feature:hover .megamenu{
	height: 89px;
}
.header ul .megamenu .min{
	padding-left: 0;
}
.header ul .megamenu .min li{
	border-top: 1px solid #dddddd;
}
.header ul .megamenu .min li:first-child{
	border-top: none;
}
.header ul .megamenu .min li a{
	position: relative;
	color: #ffffff;
	line-height: 44px;
	box-sizing: border-box;
	width: 140px;
	padding: 0 0 0 25px;
}
.header ul .nav_feature .megamenu .min li a{
	width: 230px;
}
.header ul .nav_about .megamenu .min li a{
	width: 165px;
}
.header ul .megamenu .min li a:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 14px;
	height: 14px;
	background: url(../images/common/header_icon_mega.png) no-repeat center;
	margin: auto;
	transition: 0.2s left;
} */

/*-----------------------
		link_wrap
-----------------------*/
/* #link_wrap a{
	display: block;
}
#link_wrap a:hover{
	text-decoration: none;
}
#link_wrap .mypage_btn,
#link_wrap .entry_btn,
#link_wrap .sns_wrap{
	border-radius: 10px 0 0 10px;
	overflow: hidden;
}
#link_wrap .mypage_btn a,
#link_wrap .entry_btn a{
	position: relative;
	font-size: 1.8rem;
	padding: 20px 22px 60px;
}
#link_wrap .mypage_btn a:before,
#link_wrap .entry_btn a:before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	width: 14px;
	height: 14px;
	background: url(../images/common/ico_link_entry.png) no-repeat center;
	background-size: 14px 14px;
	margin: 0 auto;
}
#link_wrap .mypage_btn a:before{ top: 153px; }
#link_wrap .entry_btn a:before{ top: 130px; }
#link_wrap .mypage_btn{
	position: fixed;
	top: 200px;
	right: 0;
	z-index: 5;
}
#link_wrap .mypage_btn a{
	background: #f19b1f;
}
#link_wrap .entry_btn{
	position: fixed;
	top: 416px;
	right: 0;
	z-index: 5;
}
#link_wrap .entry_btn a{
	background: #ee5400;
}
#link_wrap .sns_wrap{
	position: fixed;
	top: 609px;
	right: 0;
	z-index: 5;
}
#link_wrap .sns_wrap a{
	background: #ffffff;
	padding: 18px;
}
#link_wrap .sns_wrap a:first-child{
	border-bottom: 1px solid #dddddd;
}
/* entry_none */
#link_wrap.entry_none .entry_btn{
	display: none;
}
#link_wrap.entry_none .sns_wrap{
	top: 236px;
} */

/*-----------------------
		  mv
-----------------------*/
.mv{
	position: relative;
	width: 100%;
	height: 280px;
	overflow: hidden;
}
.mv .blend{
	position: absolute;
	top: -62px;
	left: 50%;
	mix-blend-mode: soft-light;
	margin-left: -208px;
}
.mv h1{
	position: relative;
	font-size: 6.4rem;
	font-weight: 600;
	text-align: center;
	text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
	line-height: 64px;
	letter-spacing: .15em;
	margin-top: 80px;
	z-index: 1;
}
.mv .sub_ttl{
	font-size: 2.8rem;
	text-align: center;
	text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
	line-height: 28px;
	letter-spacing: .2em;
	margin-top: 15px;
}
.mv .sub_ttl span{
	font-size: 2rem;
}

/*-----------------------
		pankuzu
-----------------------*/
/* .pankuzu{
	background: #252525;
}
.pankuzu ul{
	padding: 5px 0;
}
.pankuzu ul li{
	position: relative;
	color: #878787;
	font-size: 1.2rem;
	line-height: 32px;
	padding-right: 33px;
	float: left;
}
.pankuzu ul li:last-child{
	padding-right: 0;
}
.pankuzu ul li:after{
	content: ">";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 11px;
	margin: auto;
}
.pankuzu ul li:last-child:after{
	content: "";
	display: none;
}
.pankuzu ul li a{
	color: #ffffff;
} */

/*-----------------------
		content
-----------------------*/
/* content_ttl */

.main-visual {
	color: #ffffff;
}
.article .content_ttl{
	text-align: center;
	padding: 74px 0 25px;
}
.article .content_ttl h2{
	font-size: 3.6rem;
	line-height: 52px;
	margin-bottom: 47px;
	opacity: 0;
}
.article .content_ttl.animation h2{
	-webkit-animation: slideIn .4s .2s both ease;
	animation: slideIn .4s .2s both ease;
}
.article .content_ttl p{
	font-size: 1.6rem;
	line-height: 32px;
	opacity: 0;
}
.article .content_ttl.animation p{
	-webkit-animation: slideIn .6s .6s both ease;
	animation: slideIn .6s .6s both ease;
}
.article .article_ttl h2{
	color: #1b1b1b;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 42px;
	padding-bottom: 12px;
	border-bottom: 1px solid #dddddd;
}

/*-----------------------
		footer
-----------------------*/
/* .footer{
	font-size: 1.1rem;
	line-height: 18px;
	letter-spacing: 0;
	background: #1b1b1b;
	padding: 26px 0;
}
.footer .footer_nav ul{
	margin-bottom: 13px;
}
.footer .footer_nav ul li{
	margin: 0 10px 0 0;
	padding-right: 10px;
	border-right: dotted 1px #aaaaaa;
	float: left;
}
.footer .footer_nav ul li:first-child {
	padding-left: 10px;
	border-left: dotted 1px #aaaaaa;
} */


/*-----------------------
		  sp
-----------------------*/
@media screen and (max-width: 640px) {
	/* body{
		font-size: 1.2rem;
		line-height: 24px;
	} */
	.all_wrap{
		min-width: 100%;
		padding-top: 50px;
	}
	.wrap{
		width: auto;
		margin: 0 15px;
	}
	.inner,
	.content_inner{
		width: 100%;
	}

	/* display */
	.pc_only{ display: none; }
	.sp_only{ display: block; }

	a:hover{ text-decoration: none; }
	.link_hover{ transition: none; }
	.link_hover:hover{ opacity: 1; }

	/*-----------------------
			header
	-----------------------*/
	/* .header{
		position: relative;
		min-width: 100%;
		z-index: 10;
	} */
	/* .header ul{
		padding-left: 0;
	}
	#menu_btn{
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 50px;
		background: #ffffff;
		z-index: 20;
	}
	#menu_btn.is_open{
		background: #000000;
	}
	#menu_btn a{
		display: block;
		width: 50px;
		height: 50px;
		margin: 0 0 0 auto;
	}
	#menu_btn span{
		display: block;
		position: absolute;
		right: 15px;
		width: 27px;
		height: 2px;
		background: #1b1b1b;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
	#menu_btn.is_open span{
		background: #ffffff;
	}
	#menu_btn span:nth-child(1){ top: 16px; }
	#menu_btn span:nth-child(2){ top: 24px; }
	#menu_btn span:nth-child(3){ top: 32px; }

	#menu_btn.is_open span:nth-child(1) {
		top: 23px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#menu_btn.is_open span:nth-child(2) {
		opacity: 0;
	}
	#menu_btn.is_open span:nth-child(3) {
		top: 23px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	} */

	/* .header .wrap{
		display: none;
		position: fixed;
		text-align: center;
		width: 100%;

		height: 100%;
		background: #000000;
		box-sizing: border-box;
		padding: 60px 15px 50px;
		margin: 0;
	}
	.header ul li{
		text-align: left;
		border-bottom: 1px solid #444444;
		float: none;
	}
	.header ul li a{
		color: #ffffff;
		font-size: 1.6rem;
		line-height: 44px;
		box-sizing: border-box;
		padding: 0 15px;
	}
	.header ul li a:hover,
	.header ul .mega_btn:hover > a{
		color: #ffffff;
		background: none;
	}
	.header ul .mega_btn a,
	.header ul .megamenu{
		width: 50%;
		float: left;
	}
	.header ul .megamenu{
		position: static;
		top: auto;
		left: auto;
		height: auto;
		background: none;
		padding: 0;
		transition: none;
	}
	.header ul .mega_btn:hover .megamenu{
		height: auto;
	}
	.header ul .megamenu .min li{
		border-top: none;
		border-bottom: none;
	}
	.header ul .megamenu .min li a{
		font-size: 1.2rem;
		line-height: 18px;
		width: 100%;
		padding: 11px 37px 10px 15px;
		border-top: 1px solid #444444;
	}
	.header ul .megamenu .min li:first-child a{
		border-top: none;
	}
	.header ul .megamenu .min li a:before{
		left: auto;
		right: 15px;
		width: 12px;
		height: 12px;
		background: url(../images/common/header_icon_mega_sp.png) no-repeat center;
		background-size: 12px 12px;
		transition: none;
	} */
	/* adopt */
	/* .header .adopt{
	position: fixed;
	top: 0;
	left: 0;
	height: 50px;
	box-sizing: border-box;
	padding: 10px 10px 0;
	z-index: 30;
	} */

	/*-----------------------
			link_wrap
	-----------------------*/
	/* #link_wrap{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		z-index: 5;
	}
	#link_wrap .mypage_btn,
	#link_wrap .entry_btn,
	#link_wrap .sns_wrap{
		position: static;
		top: auto;
		right: auto;
		border-radius: 0;
		float: left;
	}
	#link_wrap .mypage_btn,
	#link_wrap .entry_btn{
		width: -webkit-calc((100% - 101px) / 2);
		width: calc((100% - 101px) / 2);
	}
	#link_wrap .mypage_btn a,
	#link_wrap .entry_btn a{
		font-size: 1.4rem;
		text-align: center;
		line-height: 50px;
		padding: 0;
	}
	#link_wrap .mypage_btn a{
		line-height: 18px;
		height: 50px;
		box-sizing: border-box;
		padding-top: 10px;
	}
	#link_wrap .mypage_btn a:before,
	#link_wrap .entry_btn a:before{
		display: none;
	}
	#link_wrap .sns_wrap a{
		padding: 15px;
		float: left;
	}
	#link_wrap .sns_wrap a:first-child{
		border-bottom: none;
		border-right: 1px solid #dddddd;
	}
	#link_wrap .sns_wrap a img{
		width: 20px;
	}
	/* entry_none */

	/* #link_wrap.entry_none .entry_btn{
		display: block;
	}
	#link_wrap.entry_none .entry_btn a{
		background: #dddddd;
	}
	#link_wrap.entry_none .sns_wrap{
		top: auto;
	} */ */

	/*-----------------------
			  mv
	-----------------------*/
	.mv{
		height: 184px;
	}
	.mv .blend{
		top: -40px;
		width: 500px;
		margin-left: -270px;
	}
	.mv h1{
		font-size: 4.4rem;
		line-height: 44px;
		letter-spacing: .05em;
		margin-top: 54px;
	}
	.mv .sub_ttl{
		font-size: 1.8rem;
		line-height: 18px;
		margin-top: 5px;
	}
	.mv .sub_ttl span{
		font-size: 1.4rem;
	}

	/*-----------------------
			pankuzu
	-----------------------*/
	/* .pankuzu ul{
		padding: 8px 0 7px;
	}
	.pankuzu ul li{
		font-size: 1rem;
		line-height: 15px;
		padding-right: 28px;
	}
	.pankuzu ul li:after {
		right: 9px;
	} */

	/*-----------------------
			content
	-----------------------*/
	/* content_ttl */
	.article .content_ttl{
		padding: 50px 0 40px;
	}
	.article .content_ttl h2{
		font-size: 1.8rem;
		line-height: 27px;
		margin-bottom: 20px;
	}
	.article .content_ttl p{
		font-size: 1.2rem;
		line-height: 24px;
	}
	.article .article_ttl h2 {
		font-size: 1.8rem;
		line-height: 18px;
		padding-bottom: 14px;
	}

	/*-----------------------
			footer
	-----------------------*/
	/* .footer{
		font-size: 1rem;
		line-height: 14px;
		padding: 0 0 64px;
		margin: 0;
	}
	.footer .wrap{
		margin: 0;
	}
	.footer .footer_nav ul{
		border-bottom: dotted 1px #aaaaaa;
	}
	.footer .footer_nav ul li{
		text-align: center;
		width: 50%;
		box-sizing: border-box;
		padding: 10px 0;
		border-top: dotted 1px #aaaaaa;
		margin-right: 0;
	}
	.footer .footer_nav ul li:first-child {
		padding-left: 0;
		border-left: 0;
	}
	.footer .footer_nav ul li:nth-child(even) {
		border-right: none;
	}
	.footer .copy{
		text-align: center;
	} */
}


/*-----------------------
		animation
-----------------------*/
@-webkit-keyframes fadeIn {
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes fadeIn {
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@-webkit-keyframes slideIn {
	0%{
		opacity: 0;
		-webkit-transform: translate(0, 20px);
	}
	100%{
		opacity: 1;
		-webkit-transform: translate(0, 0);
	}
}
@keyframes slideIn {
	0%{
		opacity: 0;
		transform: translate(0, 20px);
	}
	100%{
		opacity: 1;
		transform: translate(0, 0);
	}
}
@-webkit-keyframes slideIn_sp {
	0%{
		opacity: 0;
		-webkit-transform: translate(0, 10px);
	}
	100%{
		opacity: 1;
		-webkit-transform: translate(0, 0);
	}
}
@keyframes slideIn_sp {
	0%{
		opacity: 0;
		transform: translate(0, 10px);
	}
	100%{
		opacity: 1;
		transform: translate(0, 0);
	}
}