/****************************************
	‹¤’Ê
****************************************/

html, body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6 {
	margin:0;
	padding:0;
}

ul, ol, li {
  list-style:none;
}

table{
  border-collapse:collapse;
  border-spacing:0;
  border:none;
}

a {
	text-decoration:none;
	color:#808080;
}

a:hover {
	text-decoration:underline;
	color:#000000;
}
.clearfix {
	clear: both;
}

/****************************************
	html
****************************************/
html {
	min-height: 100%;
	position: relative;
}

/****************************************
	body
****************************************/
body {
	font-family: 'Cinzel' , 'Allura' , 'Sen' , 'Noto Serif JP' , sans-serif , serif;
	word-wrap:break-word;
	overflow-wrap:break-word;
	
}

body.m_active {
	overflow:hidden;
}

/****************************************
	wrapper
****************************************/
#wrapper {
	position:relative;
	width:100%;
	height: 100vh;
	max-width:2000px;
	margin:0px auto;
	display:none;
	
}

/****************************************
	@keyframes
****************************************/
@keyframes upDown {
	0% { transform:translateY(-5px); }
	50% { transform:translateY(0px); }
	100% { transform:translateY(-5px); }
}

@keyframes rotate {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

@keyframes rotate2 {
	0% {transform: rotate(-15deg);}
	25% {transform: rotate(0deg);}
	50% {transform: rotate(15deg);}
	75% {transform: rotate(0deg);}
	100% {transform: rotate(-15deg);}
}

/****************************************
	menu
****************************************/
menu {
	margin:0px;
	padding:0px;
}


/****************************************
	common
****************************************/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

h2 {
	position: relative;
	max-width:1080px;
	margin:0px auto;
	padding:10px 10px 10px 50px;
	font-family: 'Cinzel', serif;
	letter-spacing:0.2em;
	font-size:24px;
	margin-bottom: 1em;
	width:100%;
	background:#505050;
	color:#fff;
}

h2:before {
	content: "";
	display: block;
	border-top: solid 1px #fff;
	width: 40px;
	height: 1px;
	position: absolute;
	left:0px;
	top: 50%;
	z-index: 1;
}

h3 {
	fontsize:18px;
	padding:10px 3px 15px;
}

h3 span {
	border-bottom:2px dashed #808080;
}

.content {
	position:relative;
	max-width:1080px;
	margin:0px auto;
	padding:3px;
}

.flex {
	display:flex;
	flex-wrap:wrap;
}

.center {
	text-align:center;
}

p {
	line-height:2.0em;
	letter-spacing:0.1em;
	color:#555;
}

.pc {

}

.sp {
	display:none;
}

@media screen and (max-width:768px){


}

@media screen and (max-width:480px){
	h2 {
		font-size:18px;
	}

	.pc {
		display:none;
	}

	.sp {
		display:block;
	}

}


/****************************************
	header
****************************************/

header {
	position:relative;
	height:80vh;
	background:url(../img/back.jpg) no-repeat;
	background-position:center center;
	background-size:cover;
}

.header-box {
	position:relative;
	width:100%;
	height:100%;
	border:15px solid rgba(255,255,255,.8);
}

.header-logo {
	position:absolute;
	top:15px;
	left:15px;
	width:30%;
	max-width:100px;
}

.header-logo img {
	width:100%;
}

.header-char {
	position:relative;
	width:100%;
	max-width:960px;
	height:100%;
	margin:0px auto;
}

.header-img {
	position:absolute;
	bottom:20%;
	right:0;
	width:70%;
}

.header-char img {
	width:100%;
}

@media screen and (max-width:768px){


}

@media screen and (max-width:480px){
}



/****************************************
	common
****************************************/
.center_960{
	width:100%;
	margin:0px auto;
	max-width:960px;
}


@media screen and (max-width:768px){
	
	
}


/****************************************
	main
****************************************/

section#greeting {
	padding:50px 10px 10px;
}


section#grave {
	padding:20px 10px 10px;
}

.beforeafter td img {
	width:100%;
}

section#grave ul li {
	list-style-type:disc;
	margin-left:20px;
}

section#telto {
	padding:40px 10px;
	text-align:center;
}

section#telto a {
	display:inline-block;
	width:95%;
	max-width:200px;
	background:#1d7dc5;
	padding:10px 5px;
	color:#fff;
	box-shadow:3px 3px 6px #000;
}

section#telto a:hover {
	color:#fff;
	text-decoration:none;
}



@media screen and (max-width:768px){
	
	
}


@media screen and (max-width:480px){
	
	.beforeafter td {
		display:block;
	}
}



/****************************************
	footer
****************************************/
footer {
	font-size:12px;
	text-align:center;
	padding:5px 0px;
	background:#c0c0c0;
}

footer p {
	line-height:1.2em;
}

@media screen and (max-width:768px){
	
}




