@charset "UTF-8";

/* ホーム */

/* Swiper */
.swiper{
	width:100vw;
	height:100vh;
	overflow:hidden;
}
.swiper-wrapper{
	height:100%;
	width:100%;
	background:#000;
}
.swiper-slide > div{
	height:120%;
	width:120%;
}
.swiper-slide#sw1 > div{
	background: url("../img/slide01.jpg") center center / cover no-repeat;
}
.swiper-slide#sw2 > div{
	background: url("../img/slide02.jpg") center center / cover no-repeat;
}
.swiper-slide#sw3 > div{
	background: url("../img/slide03.jpg") center center / cover no-repeat;
}
@keyframes up {
	0% {
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
    	transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-50px);
		-moz-transform: translateY(-50px);
		-ms-transform: translateY(-50px);
		-o-transform: translateY(-50px);
    	transform: translateY(-50px);
	}
}
.swiper-slide-active > div,
.swiper-slide-duplicate-active > div,
.swiper-slide-prev > div{
	animation: up 10s linear 0s 1 normal both;
}

#headline{
	width:100%;
	text-align:center;
	position:absolute;
	top:50%;
	z-index:1;
}
#headline h2{
	font-family:"FrizQuadrata";
	font-size:2.2rem;
	line-height:100%;
	color:#FFF;
	letter-spacing:0.1em;
}
.sudo{
	font-size:50%;
}
.headline{
	opacity:0;
	animation:headline 1.5s ease-out forwards;
	animation-delay:.5s;
}
@keyframes headline{
	100% {
		opacity:1;
	}
}
@media (min-width: 375px) {
	#headline h2{
		font-size:2.3rem;
	}
}
@media (min-width: 768px) {
	#headline h2{
		font-size:2.4rem;
	}
}
@media (min-width: 1024px) {
	#headline h2{
		font-size:2.6rem;
	}
}
@media (min-width: 1200px) {
	#headline h2{
		font-size:2.8rem;
	}
}

/* Scroll Down */
#scroll-down{
	width:100%;
	position:absolute;
	bottom:30px;
	z-index:1;
}
#scroll-down p{
	font-family:"NewYork";
	font-size:1.0rem;
	letter-spacing:0.3em;
	color:#FFF;
	text-align:center;
}
.scroll-down{
	opacity:0;
	animation:scroll-down 1.5s ease-out forwards;
	animation-delay:1.5s;
}
@keyframes scroll-down{
	100% {
		opacity:1;
	}
}
.border{
	position:relative;
	width:108px;
	left:calc((100% - 108px)/2);
}
.border:before{
	content:'';
	position:absolute;
	left:0;
	bottom:-3px;
	border-bottom:solid 1px #FFF;
	animation:border 5s ease-in-out infinite;
}
@keyframes border{
	0%{
		width:0%;
	}
	10%{
		width:0%;
	}
	30%{
		width:100%;
	}
	70%{
		width:100%;
	}
	90%{
		width:0%;
	}
	100%{
		width:0%;
	}
}

/* メッセージ */
#message{
	color:#FFF;
	padding:50px 25px;
	background-image:url(../img/bg-message.jpg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	-webkit-backdrop-filter:blur(12px);
	-moz-backdrop-filter:blur(12px);
	-ms-backdrop-filter:blur(12px);
	-o-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
}
#message h3{
	font-family:"FrizQuadrata";
	font-size:1.9rem;
	text-align:center;
	letter-spacing:0.1em;
}
#message h4{
	font-size:1.7rem;
	padding:30px 0 20px;
}
#message p{
	line-height:250%;
}
@media (min-width: 568px) {
	#message{
		padding-left:35px;
		padding-right:35px;
	}
}
@media (min-width: 768px) {
	#message{
		padding:70px 45px;
	}
	#message h3{
		font-size:2.0rem;
	}
	#message h4{
		font-size:1.8rem;
	}
}
@media (min-width: 1024px) {
	#message{
		padding-left:60px;
		padding-right:60px;
	}
	#message h3{
		font-size:2.1rem;
	}
	#message h4{
		font-size:1.9rem;
	}
}
@media (min-width: 1080px) {
	#message{
		padding-left:25%;
		padding-right:25%;
	}
}
@media (min-width: 1200px) {
	#message h3{
		font-size:2.2rem;
	}
	#message h4{
		font-size:2.0rem;
	}
}

.blur-bg{
	animation:blur-bg .8s ease-out forwards;
	animation-delay:.1s;
}
@keyframes blur-bg {
	100% {
	}
}

.blur{
	opacity:0;
	filter:blur(6px);
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
	animation:blur .8s ease-out forwards;
}
@keyframes blur {
	100% {
		opacity:1;
		filter:blur(0);
    	-webkit-transform: translateY(0);
    	transform: translateY(0);
	}
}
.catch1{
	animation-delay:.2s;
}
.catch2{
	animation-delay:.25s;
}
.text1{
	animation-delay:.3s;
}
.text2{
	animation-delay:.35s;
}
.text3{
	animation-delay:.4s;
}
.text4{
	animation-delay:.45s;
}
.text5{
	animation-delay:.5s;
}
.text6{
	animation-delay:.55s;
	text-align:right;
}

/* ボトムナビ */
#bottom-nav{
	background:#000;
	color:#FFF;
	padding:0 20px 40px;
	font-size:0;
	text-align:center;
}
.bottom-nav{
	padding-top:40px;
}
.bottom-nav a{
	color:#FFF;
  	-webkit-transition:ease-out .5s;
  	-moz-transition:ease-out .5s;
  	-ms-transition:ease-out .5s;
  	-o-transition:ease-out .5s;
  	transition:ease-out .5s;
}
.bottom-nav a img{
  	-webkit-transition:ease-out .5s;
  	-moz-transition:ease-out .5s;
  	-ms-transition:ease-out .5s;
  	-o-transition:ease-out .5s;
  	transition:ease-out .5s;
}
.bottom-nav a:hover img{
	opacity:0.7;
}
.bottom-nav h2{
	font-size:1.3rem;
	letter-spacing:0.5em;
	padding:3px 0 15px;
}
.bottom-nav h2.eng{
	letter-spacing:0;
	padding:0;
	font-family:"FrizQuadrata";
	font-size:2.0rem;
}
@media (min-width: 568px) {
	#bottom-nav{
		padding:0 35px 40px;
	}
	.bottom-nav{
		display:inline-block;
		width:calc(50% - 20px);
	}
	.bottom-nav:nth-child(odd){
		margin-right:40px;
	}
}
@media (min-width: 768px) {
	#bottom-nav{
		padding:0 45px 50px;
	}
	.bottom-nav{
		padding-top:50px;
	}
}
@media (min-width: 1024px) {
	#bottom-nav{
		padding:0 60px 50px;
	}
	.bottom-nav{
		width:calc(25% - 18px);
		margin-right:24px;
	}
	.bottom-nav:nth-child(odd){
		margin-right:24px;
	}
	.bottom-nav:nth-child(4){
		margin-right:0;
	}
}

/* サンプル */
#sample,
#sample p{
	text-align:center;
}
#sample-item{
	font-size:0;
}
.sample{
	display:inline-block;
	width:100%;
	padding-top:30px;
}
.sample:last-child{
}
.dgree{
	text-align:center;
}
.dgree img{
	width:100px;
}
.dgree a img{
  	-webkit-transition:ease-out .5s;
  	-moz-transition:ease-out .5s;
  	-ms-transition:ease-out .5s;
  	-o-transition:ease-out .5s;
  	transition:ease-out .5s;
}
.dgree a:hover img{
	opacity:.5;
}
.dgree p{
	font-size:1.2rem;
	line-height:130%;
	color:#555;
	padding-top:7px;
	font-family:'Verdana','游ゴシック','YuGothic','ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ','Meiryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
.more-btn{
	margin:7px auto 13px;
	width:100px;
	font-size:1.7rem;
	font-family:'Open Sans';
	font-weight:500;
}
.more-btn a{
	display:block;
	background:#000;
	border:1px solid #000;
	color:#FFF;
	padding:3px 0;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	border-radius:3px;
	box-shadow:inset 1px 1px 1px #FFF;
  	-webkit-transition:ease-out .5s;
  	-moz-transition:ease-out .5s;
  	-ms-transition:ease-out .5s;
  	-o-transition:ease-out .5s;
  	transition:ease-out .5s;
}
.more-btn a:hover{
	border:1px solid #555;
	background:#555;
}
.number{
	font-size:115%;
}
.grave-detail h3{
	color:#D90000;
	font-size:2.2rem;
	line-height:100%;
	padding-top:7px;
}
.initial{
	font-size:170%;
}
@media (min-width: 375px) {
	.grave-detail h3{
		font-size:2.3rem;
	}
	.initial{
		font-size:180%;
	}
}
@media (min-width: 568px) {
	.sample{
		width:calc(50% - 20px);
	}
	.sample:last-child{
		margin-left:40px;
	}
	.grave-detail h3{
		font-size:1.7rem;
	}
}
@media (min-width: 667px) {
	.grave-detail h3{
		font-size:2.1rem;
	}
}
@media (min-width: 768px) {
	.sample{
		width:calc(50% - 25px);
	}
	.sample:last-child{
		margin-left:50px;
	}
	.grave-detail h3{
		font-size:2.3rem;
	}
}
@media (min-width: 1024px) {
	.sample{
		width:calc(50% - 30px);
	}
	.sample:last-child{
		margin-left:60px;
	}
	.grave-detail h3{
		font-size:2.4rem;
	}
}
@media (min-width: 1180px) {
	.grave-dgree{
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		-js-display:flex;
		display:flex;
		-webkit-align-items: center;
 		align-items: center;
		padding-bottom:15px;
	}
	.grave{
		float:left;
		width:calc(100% - 120px);
	}
	.dgree{
		float:right;
		width:150px;
		padding-right:20px;
		box-sizing:border-box;
	}
	.dgree.right{
		padding-right:0;
		padding-left:20px;
	}
	.first{
		-webkit-order: -1;
    	-ms-flex-order: -1;
    	order: -1;
	}
	.grave-detail#left{
		text-align:right;
	}
	.grave-detail#right{
		text-align:left;
	}
}

#caption{
	padding-top:30px;
}
#caption p{
	font-size:1.6rem;
	line-height:140%;
}
#caption ol{
	margin:0;
	padding:0;
	padding-top:10px;
}
#caption ol li{
	position:relative;
	list-style:none;
	margin:0;
	padding-left:1.25em;
	font-size:1.2rem;
}
#caption ol li span{
	position:relative;
	left:0;
	margin:0;
}

/* チーム */
#design-team ul{
	list-style-type:square;
	padding-left:20px;
}
#design-team ul li{
	text-align:left;
	padding-bottom:10px;
}
.team-item{
	padding-top:30px;
}
.team-item:last-child{
	padding-top:40px;
}
.team-photo{
	margin:0 auto;
	width:190px;
	height:280px;
}
.team-photo#one{
	background:url(../img/team-photo01.jpg) no-repeat center;
	background-size:cover;
}
.team-photo#two{
	background:url(../img/team-photo02.jpg) no-repeat center;
	background-size:cover;
}
.team-intro{
	border:1px solid #DDD;
	margin-top:25px;
	padding:20px;
}
.team-intro h3{
	font-size:2.3rem;
	letter-spacing:0.5em;
}
.team-intro h3.eng-name{
	text-align:right;
	font-size:1.3rem;
	font-family:"FrizQuadrata";
	letter-spacing:0;
}
.team-intro p{
	padding-top:10px;
}
@media (min-width: 568px) {
	.team-photo{
		width:300px;
		height:280px;
	}
	.team-intro h3{
		float:left;
	}
	.team-intro h3.eng-name{
		float:right;
		padding-top:10px;
	}
}
@media (min-width: 768px) {
	#design-team ul{
		list-style-position:inside;
	}
	#design-team ul li{
		text-align:center;
	}
	.team-photo{
		width:350px;
		height:325px;
	}
}
@media (min-width: 1024px) {
	.team-item{
		position:relative;
		margin:0 7%;
	}
	.team-item:last-child{
		margin-top:60px;
	}
	.team-photo{
		position:absolute;
		left:0;
		width:33%;
		height:360px;
	}
	.team-intro{
		border:none;
		padding:50px;
		position:relative;
		top:50px;
		left:30%;
		width:70%;
		background:#F9F9F9;
		box-sizing:border-box;
	}
	.team-intro p{
		line-height:200%;
	}
}
@media (min-width: 1200px) {
	#design-team{
		margin-bottom:70px;
	}
	.team-item{
		margin:0 70px;
	}
}

/* 総武霊園クレジット */
#sobu-reien{
	padding:45px 20px 40px;
}
@media (min-width: 1024px) {
	#sobu-reien{
		padding:65px 0 60px;
	}
}