@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figcaption, figure, section, footer, header, main, hgroup, menu, nav, summary {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
@media all and (max-width: 389px) {
	html {
		font-size: calc(1000vw / 390);
	}
}
body, table, input, textarea, select, option {
	font-family: "Noto Serif JP", serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
chrome_annotation {
	border: none !important;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
address {
	font-style: normal;
}
a,
a:link {
	color: #262626;
	text-decoration: none;
	transition: 0.3s;
}
a:visited {
	color: #262626;
}
a:hover {
	color: #262626;
}
a:active {
	color: #262626;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1320px;
	color: #262626;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
#container {
	position: relative;
	padding-top: 8rem;
	text-align: left;
	overflow: hidden;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.1rem;
	}
	#container {
		padding-top: 0;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 8rem;
	padding: 1.4rem 5.1rem;
	box-sizing: border-box;
	background-color: #645817;
	z-index: 99;
}
#gHeader h1 {
	width: 17.9rem;
}
#gNavi {
	position: absolute;
	right: 9.2rem;
	top: 2.7rem;
}
#gNavi ul {
	align-items: flex-end;
}
#gNavi li:not(:first-child) {
	margin-left: 2.9rem;
}
#gNavi a {
	color: #FAFAF7;
	letter-spacing: 0.3em;
}
@media all and (min-width: 897px) {
	#gNavi a:hover {
		color: #FFFF1A;
	}
	.menuBox {
		display: none !important;
	}
}
@media all and (min-width: 897px) and (max-width: 1180px){
	#gHeader {
		padding-left: 1rem;
	}
	#gNavi {
		right: 1rem;
	}
	#gNavi li:not(:first-child) {
		margin-left: 1.9rem;
	}
}
@media all and (min-width: 897px) and (max-width: 1000px){
	#gHeader {
		padding-left: 0.5rem;
	}
	#gNavi {
		right: 0.5rem;
	}
	#gNavi li:not(:first-child) {
		margin-left: 0.5rem;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		position: absolute;
		height: auto;
		padding: 2.1rem 1.9rem;
		background-color: transparent;
	}
	#gHeader h1 {
		width: 12.4rem;
	}
	.menu {
		width: 5.7rem;
		position: fixed;
		right: 0;
		top: 0;
		cursor: pointer;
	}
	#gNavi {
		position: absolute;
		right: 9.2rem;
		top: 2.7rem;
		display: none;
	}
	#gNavi ul {
		align-items: flex-end;
	}
	#gNavi li:not(:first-child) {
		margin-left: 2.9rem;
	}
	#gNavi a {
		color: #FAFAF7;
		letter-spacing: 0.3em;
	}
	.menuBox {
		position: fixed;
		left: 2.7rem;
		right: 2.6rem;
		top: 50%;
		transform: translateY(-50%);
		max-height: 60.6rem;
		height: calc(100% - 1rem);
		overflow-y: scroll;
		border-radius: 5.3rem;
		background-color: #645817;
		display: none;
	}
	.menuBox .menuInfo {
		padding: 7.7rem 4rem 2rem;
	}
	.menuBox .menuLogo {
		width: 18.5rem;
		margin: 0 auto 3.1rem;
	}
	.menuBox ul {
		margin-bottom: 4.9rem;
		padding-top: 2.1rem;
		border-top: 1px solid #FFF;
	}
	.menuBox li a {
		padding: 0.8rem 1rem;
		display: block;
		color: #fff;
		font-size: 1.3rem;
		letter-spacing: 0.3em;
		text-align: center;
	}
	.menuBox .close {
		width: 3.6rem;
		margin: 0 auto;
		cursor: pointer;
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter .fBg {
	padding: 7.1rem 0 5.2rem;
	background: url(../img/common/f_bg.jpg) no-repeat top center;
	background-size: cover;
}
#gFooter .fLogo {
	width: 13rem;
	margin: 0 auto 9rem;
}
#gFooter .fBox {
	width: 85.8rem;
	margin: 0 auto;
	flex-direction: row-reverse;
}
#gFooter .fInfo {
	width: 51.2rem;
	padding-bottom: 5.2rem;
	border-right: 1px solid #FFF;
	box-sizing: border-box;
}
#gFooter .fLink {
	margin-bottom: 1.7rem;
	width: 21.7rem;
}
#gFooter .fLink a {
	padding: 0.8rem 0 0.9rem;
	display: block;
	text-align: center;
	color: #645817;
	font-size: 1.9rem;
	letter-spacing: 0.23em;
	background-color: #E2CF6C;
	border: 1px solid #E2CF6C;
}
#gFooter .fLink span {
	margin-top: 0.7rem;
	display: block;
	color: #FDFDFD;
	font-size: 1rem;
	letter-spacing: 0.23em;
}
#gFooter .fText {
	color: #FDFDFD;
	font-size: 4rem;
	letter-spacing: 0.33em;
}
#gFooter .fText .jp {
	margin: 0 0 0 1rem;
	display: inline-block;
	vertical-align: middle;
	font-size: 1.5rem;
	letter-spacing: 0.33em;
}
#gFooter .fText .en {
	display: block;
	font-size: 1.3rem;
	letter-spacing: 0.23em;
}
#gFooter .fTel {
	padding-left: 10.4rem;
	position: relative;
	color: #FDFDFD;
	font-size: 1.2rem;
	letter-spacing: 0.23em;
}
#gFooter .fTel a {
	margin-bottom: -0.7rem;
	width: fit-content;
	display: block;
	color: #FDFDFD;
	font-size: 3rem;
	letter-spacing: 0.15em;
}
#gFooter .fTel .sml {
	position: absolute;
	left: 0;
	top: 1.5rem;
	padding: 0.4rem 0;
	width: 7.7rem;
	color: #645817;
	font-size: 0.7rem;
	text-align: center;
	background-color: #E2CF6C;
}
#gFooter .fNavi {
	width: 25rem;
	margin: 0.6rem 2rem 0 0;
}
#gFooter .fNavi p {
	padding-bottom: 1rem;
	margin-bottom: 2.5rem;
	text-align: right;
	color: #E2CF6C;
	font-size: 1.3rem;
	letter-spacing: 0.23em;
	border-bottom: 0.5px solid #e2cf6c;
}
#gFooter .fNavi li:not(:last-child) {
	margin-bottom: 2.2rem;
}
#gFooter .fNavi a {
	color: #FDFDFD;
	display: inline-block;
	font-size: 1.4rem;
	letter-spacing: 0.33em;
}
#gFooter address {
	padding: 3.8rem 0;
	text-align: center;
	color: #645817;
	font-size: 1rem;
	letter-spacing: 0.22em;
}
@media all and (min-width: 897px) {
	#gFooter .fLink a:hover {
		color: #645817;
		background-color: #FDFDFD;
	}
	#gFooter .fNavi a:hover {
		color: #E2CF6C;
	}
}
@media all and (max-width: 896px) {
	#gFooter .fBg {
		padding: 5.3rem 0 5.5rem;
		background-image: url(../img/common/f_bg_sp.jpg);
	}
	#gFooter .fLogo {
		width: auto;
		text-align: center;
		margin: 0 1rem 4.7rem 0;
	}
	#gFooter .fLogo img {
		width: 11.2rem;
	}
	#gFooter .fBox {
		width: auto;
		display: block;
	}
	#gFooter .fInfo {
		width: auto;
		padding: 15.3rem 0 0;
		position: relative;
		border-right: none;
	}
	#gFooter .fLink {
		margin: 0 auto 1.8rem;
		width: 16.4rem;
	}
	#gFooter .fLink a {
		padding: 0.6rem 0 0.7rem;
		font-size: 1.4rem;
	}
	#gFooter .fLink span {
		margin: 0.7rem -1rem 0;
		text-align: center;
	}
	#gFooter .fText {
		position: absolute;
		left: 0;
		top: 4rem;
		width: 100%;
		font-size: 3rem;
		text-align: center;
	}
	#gFooter .fText .jp {
		margin: 0.2rem 0 1rem;
		display: block;
		font-size: 1.3rem;
	}
	#gFooter .fText .en {
		font-size: 0.95rem;
	}
	#gFooter .fTel {
		width: fit-content;
		margin: 0 auto;
		padding-left: 0;
	}
	#gFooter .fTel a {
		margin-bottom: -0.4rem;
	}
	#gFooter .fTel .sml {
		position: static;
		display: block;
		margin: 0 auto;
	}
	#gFooter .fNavi {
		width: 25rem;
		margin: 0 auto;
		text-align: center;
	}
	#gFooter .fNavi p {
		padding-bottom: 2.7rem;
		margin-bottom: 3.3rem;
		text-align: center;
	}
	#gFooter .fNavi li:not(:last-child) {
		margin-bottom: 2.5rem;
	}
	#gFooter address {
		display: none;
	}
}
@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LMX */
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.pageTitle {
	height: 40rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0 0 2.1rem 1rem;
	box-sizing: border-box;
	background: url(../img/about/page_title_bg.jpg) no-repeat center center;
	background-size: cover;
}
.pageTitle h2 {
	text-align: center;
	font-size: 2.5rem;
	color: #fff;
	font-weight: 400;
	letter-spacing: 0.53em;
}
.pageTitle h2 span {
	margin-top: 2.1rem;
	display: block;
	font-size: 2rem;
	letter-spacing: 0.53em;
}
@media all and (max-width: 896px) {
	.pageTitle {
		height: 70rem;
		padding-bottom: 4.9rem;
		background-image: url(../img/about/page_title_bg_sp.jpg);
	}
	.pageTitle h2 {
		font-size: 1.6rem;
		text-shadow: 0.3rem 0.3rem 0.6rem rgba(23, 23, 20, 0.75);
	}
	.pageTitle h2 span {
		display: none;
	}
}
/*------------------------------------------------------------
	pagePath
------------------------------------------------------------*/
#pagePath {
	width: 71.6rem;
	margin: 0 auto;
	padding: 0.8rem 0;
	font-size: 0.9rem;
	letter-spacing: 0.16em;
}
#pagePath li {
	margin-right: 0.8rem;
	display: inline;
}
#pagePath li:not(:last-child) {
	margin-right: 0.7rem;
	padding-right: 1.7rem;
	background: url(../img/common/icon01.png) no-repeat right center;
	background-size: 0.7rem auto;
}
#pagePath a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#pagePath {
		width: auto;
		padding: 0.9rem 2rem 0.9rem 4rem;
	}
}
/*------------------------------------------------------------
	scroll
------------------------------------------------------------*/
.scroll {
	width: 90.6rem;
	margin: 0 auto;
}
.scroll a {
	width: 3.5rem;
	display: inline-block;
}
.scroll a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.scroll {
		display: none;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin: 0 3.9rem 1.6rem 0;
	text-align: center;
}
.headLine01 img {
	width: 7rem;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin: 0 2.4rem 0 0;
	}
	.headLine01 img {
		width: 4.9rem;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	width: fit-content;
	margin: 0 auto 11rem;
	color: #645817;
	font-weight: 400;
}
.headLine02 .jp {
	padding-left: 7.7rem;
	display: block;
	font-size: 3rem;
	letter-spacing: 0.23em;
	background: url(../img/common/icon02.png) no-repeat left 0.6rem top 1rem;
	background-size: 3rem auto;
}
.headLine02 .en {
	width: fit-content;
	position: relative;
	margin: 2rem 0 0 auto;
	display: block;
	font-size: 1.9rem;
	letter-spacing: 0.33em;
}
.headLine02 .en::before {
	position: absolute;
	left: -9.4rem;
	top: 1.7rem;
	width: 6.5rem;
	height: 1px;
	background-color: #645817;
	content: "";
	opacity: 0.5;
}
@media all and (max-width: 896px) {
	.headLine02 {
		width: auto;
		margin: 0 auto 2.5rem;
		text-align: center;
	}
	.headLine02 .jp {
		padding: 3.1rem 0 0;
		font-size: 1.8rem;
		background-position: center top;
		background-size: 2.2rem auto;
	}
	.headLine02 .en {
		margin: 0.5rem 0 0;
		font-size: 1.3rem;
		width: auto;
		color: #707070;
	}
	.headLine02 .en::before {
		display: none;
	}
}
/*------------------------------------------------------------
	comLine
------------------------------------------------------------*/
@media all and (min-width: 897px) {
	.comLine {
		padding: 4.2rem 0 4.6rem;
		position: relative;
	}
	.comLine .headLine02 {
		margin-bottom: 0 !important;
	}
	.comLine .line01 {
		position: absolute;
		left: 0;
		top: 0;
		width: calc(50% + 17.8rem);
		height: 0.2rem;
		background-color: #645817;
		content: "";
		transform: translateX(-100%);
		transition: 1s;
	}
	.comLine .line02 {
		position: absolute;
		right: 0;
		bottom: 0;
		width: calc(50% + 17.8rem);
		height: 0.2rem;
		background-color: #645817;
		content: "";
		transform: translateX(100%);
		transition: 1s;
	}
	.comLine.on .line01 {
		transform: translateX(0);
	}
	.comLine.on .line02 {
		transform: translateX(0);
	}
}
@media all and (max-width: 896px) {
	.comLine .line01,
	.comLine .line02 {
		display: none;
	}
}
/*------------------------------------------------------------
	pageTop
------------------------------------------------------------*/
.pageTop {
	width: 12.3rem;
	margin: 18.4rem auto 18.3rem;
}
.pageTop a {
	height: 12.3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	letter-spacing: 0.2em;
	box-sizing: border-box;
	background-color: #A29B74;
	border: 1px solid #A29B74;
	border-radius: 100%;
	box-shadow: 3px 3px 10px rgba(8, 8, 8, 0.16);
}
@media all and (min-width: 897px) {
	.pageTop a:hover {
		color: #645817;
		background-color: #fff;
	}
}
@media all and (max-width: 896px) {
	.pageTop {
		margin: 11.8rem auto 11.8rem;
	}
	.pageTop a {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	comBgText
------------------------------------------------------------*/
.comBgText {
	width: 50.5rem;
	margin: 0 auto;
	padding: 1.1rem 0;
	position: relative;
	text-align: center;
	font-size: 2.2rem;
	color: #fff;
	letter-spacing: 0.16em;
	background-color: #645817;
}
.comBgText::before {
	position: absolute;
	left: -6.2rem;
	width: 8.4rem;
	height: 1px;
	top: 50%;
	background-color: #BF945B;
	content: "";
}
@media all and (max-width: 896px) {
	.comBgText {
		width: 23.3rem;
		margin: 0 auto 5.9rem;
		padding: 0.7rem 0;
		font-size: 1.5rem;
		line-height: 1.6;
	}
	.comBgText::before {
		left: -3.7rem;
		width: 5.8rem;
	}
}
/*------------------------------------------------------------
	comNumList
------------------------------------------------------------*/
.comNumList {
	width: fit-content;
	margin: 0 auto;
}
.comNumList li {
	padding-left: 7.2rem;
	position: relative;
	font-size: 1.5rem;
	line-height: 3;
	letter-spacing: 0.33em;
}
.comNumList li .num {
	position: absolute;
	left: 0;
	top: 1.3rem;
	line-height: 1;
	font-size: 2rem;
}
@media all and (max-width: 896px) {
	.comNumList li {
		padding-left: 1.8rem;
		font-size: 1.2rem;
		line-height: 2.91;
		letter-spacing: 0.15em;
	}
	.comNumList li .num {
		font-size: 1.3rem;
		top: 1rem;
	}
}
/*------------------------------------------------------------
	comLink
------------------------------------------------------------*/
.comLink {
	width: 25.7rem;
}
.comLink a {
	padding: 1.6rem 0 1.8rem;
	display: block;
	text-align: center;
	position: relative;
	color: #2E2E2C;
	font-size: 1.8rem;
	letter-spacing: 0.23em;
	background-color: #fff;
	border: 1px solid #141313;
}
.comLink a::before {
	position: absolute;
	left: -3.9rem;
	top: 50%;
	width: 7.8rem;
	height: 1px;
	background-color: #707070;
	content: "";
	transition: .3s;
}
@media all and (min-width: 897px) {
	.comLink a:hover {
		color: #fff;
		background-color: #575654;
	}
	.comLink a:hover::before {
		left: -10rem;
	}
}
@media all and (max-width: 896px) {
	.comLink {
		width: 15.5rem;
	}
	.comLink a {
		padding: 1.2rem 0 1.3rem;
		font-size: 1.1rem;
	}
	.comLink a::before {
		left: -2.8rem;
		width: 4.2rem;
	}
}
/*------------------------------------------------------------
	comList
------------------------------------------------------------*/
.comList li {
	width: 49.3rem;
	margin: 0 1.7rem;
	position: relative;
}
.comList li .ttl {
	text-align: center;
	color: #FAFAF7;
	font-size: 1.5rem;
	letter-spacing: 0.23em;
}
.comList li .ttl img {
	width: 13.3rem;
	display: block;
	margin: 1.4rem auto 0;
}
@media all and (min-width: 897px) {
	.comList li .ttl {
		position: absolute;
		left: 0;
		top: 50%;
		width: 25.4rem;
		transform: translateY(-50%);
	}
	.comList li .comLink {
		position: absolute;
		right: 2.2rem;
		top: 50%;
		transform: translateY(-50%);
	}
	.comList.flexC li .comLink {
		width: 18rem;
	}
	.comList.flexC li .comLink a {
		padding: 1.2rem 0 1.3rem;
		font-size: 1.1rem;
	}
	.comList.flexC li .comLink a::before {
		left: -2.8rem;
		width: 5.5rem;
	}
	.comList li .comLink a:hover::before {
		background-color: #FAFAF7;
	}
	.comList.flexC li .comLink a:hover::before {
		left: -5.5rem;
	}
}
@media all and (max-width: 896px) {
	.comList {
		display: block;
	}
	.comList li {
		width: 26.8rem;
		margin: 0 auto 4.5rem;
	}
	.comList li:last-child {
		margin-bottom: 0 !important;
	}
	.comList li .liBox {
		position: absolute;
		left: 0;
		top: 50%;
		width: 100%;
		transform: translateY(-33%);
	}
	.comList li.list01 .liBox {
		transform: translateY(-50%);
	}
	.comList li .ttl {
		font-size: 1.8rem;
	}
	.comList li .ttl img {
		width: 11rem;
		margin: 0.8rem auto 0;
	}
	.comList li .comLink {
		width: 12.8rem;
		margin: 1rem auto 0;
	}
	.comList li .comLink a {
		padding: 0.6rem 0 0.7rem;
	}
	.comList li .comLink a::before {
		left: -2.5rem;
		width: 3.7rem;
	}
}
/*------------------------------------------------------------
	comContact
------------------------------------------------------------*/
.comContact {
	padding: 10.9rem 0 9.1rem;
	background-color: #EBEBDE;
}
.comContact .imgBox {
	max-width: 120rem;
	margin: 0 auto;
	flex-direction: row-reverse;
}
.comContact .mapBox {
	width: 52.7rem;
}
.comContact .map {
	height: 55.8rem;
	position: relative;
    overflow: hidden;
	box-sizing: border-box;
	border: 0.2rem solid #645817;
}
.comContact .map iframe {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}
.comContact .link {
	margin-top: 0.5rem;
	font-size: 1.3rem;
	letter-spacing: 0.23em;
}
.comContact .link a {
	color: #645817;
}
.comContact .link a:hover {
	opacity: 0.7;
}
.comContact .textBox {
	width: 42rem;
	margin: 8.8rem 0 0 9rem;
}
.comContact h2 {
	margin-bottom: 1.4rem;
	color: #645817;
	font-weight: 400;
	font-size: 2.5rem;
	letter-spacing: 0.23em;
}
.comContact h2 span {
	margin: -0.7rem 0 0 4.6rem;
	display: inline-block;
	vertical-align: middle;
	color: #707070;
	font-size: 1.6rem;
	letter-spacing: 0.33em;
}
.comContact dl {
	color: #707070;
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 0.22em;
}
.comContact dt {
	padding-left: 3.2rem;
	background: url(../img/common/icon05.png) no-repeat left top 0.7rem;
	background-size: 1.9rem auto;
}
.comContact dd {
	padding: 0.5rem 0 2.2rem;
}
.comContact dd span {
	margin-top: 0.9rem;
	width: 19.6rem;
	padding: 0.4rem 0;
	display: block;
	color: #FAFAF7;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.33em;
	background-color: #645817;
}
@media all and (min-width: 897px) {
	.comContact dd:not(.noLine) {
		position: relative;
		padding: 0.1rem 0 1.8rem 8.7rem;
	}
	.comContact dd:not(.noLine)::before {
		position: absolute;
		left: 0;
		top: 1.6rem;
		width: 6.5rem;
		height: 1px;
		background-color: #707070;
		content: "";
		opacity: 0.5;
	}
}
@media all and (max-width: 896px) {
	.comContact {
		padding: 0 0 5.3rem;
		background-color: #EBEBDE;
	}
	.comContact .imgBox {
		max-width: inherit;
		display: block;
	}
	.comContact .mapBox {
		width: auto;
	}
	.comContact .map {
		height: 0;
		padding-bottom: 106%;
		border: none;
	}
	.comContact .link {
		margin: 0.3rem 4.2rem 0;
		font-size: 1rem;
		text-align: right;
	}
	.comContact .textBox {
		width: auto;
		margin: 3.4rem 0 0;
	}
	.comContact h2 {
		margin-bottom: 2.6rem;
		font-size: 2.2rem;
		text-align: center;
	}
	.comContact h2 span {
		margin: 0.4rem 0 0;
		display: block;
		font-size: 1.3rem;
	}
	.comContact dl {
		width: 27rem;
		margin: 0 auto;
		font-size: 1.3rem;
		text-align: center;
		line-height: 1.92;
	}
	.comContact dt {
		width: fit-content;
		margin: 0 auto 0.8rem;
		padding: 0 3.2rem;
		font-size: 1.5rem;
		letter-spacing: 0.2em;
		background: url(../img/common/icon05.png) no-repeat left top 0.6rem,url(../img/common/icon05.png) no-repeat right top 0.6rem;
		background-size: 1.9rem auto;
	}
	.comContact dd {
		padding: 0.5rem 0 4.2rem;
		letter-spacing: 0.2em;
		border-top: 1px solid #645817;
	}
	.comContact .noLine {
		padding: 0.8rem 0 4.2rem;
		line-height: 1.53;
		letter-spacing: 0.33em;
	}
	.comContact dd span {
		margin: 0.3rem auto 0;
		width: 17.1rem;
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------
	comNoteList
------------------------------------------------------------*/
.comNoteList {
	color: #645817;
	font-size: 1.4rem;
	line-height: 2.14;
	letter-spacing: 0.23em;
}
.comNoteList li {
	padding-left: 2rem;
	position: relative;
}
.comNoteList li::before {
	position: absolute;
	left: 0.1rem;
	top: 0;
	content: "※";
	color: #E0511D;
}
@media all and (max-width: 896px) {
	.comNoteList {
		margin-right: -2rem;
	}
	.comNoteList li {
		padding-left: 1.7rem;
	}
}
/*------------------------------------------------------------
	mainImg
------------------------------------------------------------*/
.mainImg {
	margin-bottom: 12.6rem;
	background: url(../img/perpetualmemorialcemetery/sec07_bg01.jpg) no-repeat center center;
	background-size: cover;
}
.mainImg .pho {
	width: 102rem;
	margin: 0 auto;
}
@media all and (max-width: 896px) {
	.mainImg {
		margin-bottom: 6.6rem;
		background: none;
	}
	.mainImg .pho {
		width: auto;
	}
	.mainImg .pho img {
		width: 100%;
	}
}
/*------------------------------------------------------------
	fadeInUp
------------------------------------------------------------*/
.fadeInUp {
	opacity: 0;
	-webkit-transform: translateY(200px);
	transform: translateY(200px);
    transition: 1000ms;
}
.fadeInUp.on {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
@charset "utf-8";
/*------------------------------------------------------------
	about
------------------------------------------------------------*/
.pageTitle h2 {
	text-shadow: 0.3rem 0.3rem 0.6rem rgba(23, 23, 20, 0.75);
}
#main .topBg {
	padding: 8.8rem 0 21.8rem;
	background: url(../img/about/sec01_bg.png) no-repeat top 16.2rem center;
	background-size: 173rem auto;
}
#main .sec01 {
	padding: 4.5rem 0 16.2rem;
}
#main .sec01 .topBox {
	width: 79.7rem;
	margin: 0 auto 3.1rem;
	padding: 0 5.3rem 2.3rem;
	align-items: flex-end;
	position: relative;
	border-bottom: 1px solid rgba(112,112,112,0.5);
	box-sizing: border-box;
}
#main .sec01 .title {
	position: absolute;
	left: 6rem;
	top: 7.4rem;
	width: 21.2rem;
	text-align: right;
	color: #645817;
	font-size: 2.4rem;
	letter-spacing: 0.16em;
	font-weight: 400;
}
#main .sec01 .pho {
	width: 43.5rem;
}
#main .sec01 .bgText {
	width: 21.2rem;
	padding: 0.9rem 0;
	text-align: center;
	color: #FAFAF7;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.16em;
	background-color: #645817;
}
#main .sec01 .textBox .ttl {
	margin-bottom: 5.9rem;
	color: #645817;
	font-size: 2.2rem;
	letter-spacing: 0.14em;
	font-weight: 400;
	text-align: center;
}
#main .sec01 .textBox p {
	margin-bottom: 4.7rem;
	text-align: center;
	letter-spacing: 0.16em;
	line-height: 2.8;
}
#main .sec01 .textBox p span {
	font-weight: 700;
}
#main .sec02 ul {
	width: 84.1rem;
	margin: 0 auto;
}
#main .sec02 li {
	padding: 6rem 14.5rem 6.1rem 25rem;
	position: relative;
	color: #645817;
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.13em;
	border-bottom: 2px dotted #707070;
}
#main .sec02 li:last-child {
	border: none;
}
#main .sec02 li .sml {
	margin-top: 1rem;
	border-top: 1px solid #645817;
	padding-top: 1.4rem;
	display: block;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: right;
	letter-spacing: 0.33em;
}
#main .sec02 li .num {
	position: absolute;
	left: 14.2rem;
	top: 6.8rem;
	background: url(../img/common/icon03.png) no-repeat;
	background-size: 100% 100%;
	width: 6.7rem;
	height: 6.7rem;
	padding-top: 1.4rem;
	font-weight: 400;
	font-size: 2.4rem;
	letter-spacing: 0.13em;
	text-align: center;
	box-sizing: border-box;
}
#main .sec03 {
	padding: 16.7rem 0 11rem;
	position: relative;
	background: url(../img/about/sec03_bg03.png) no-repeat left -48.4rem bottom -18.4rem,url(../img/about/sec03_bg02.png) no-repeat right -52rem top -18.5rem,url(../img/about/sec03_bg01.jpg) no-repeat center top;
	background-size: 113.6rem auto, 115.3rem auto, cover;
}
#main .sec03 .img {
	width: 42.6rem;
	position: absolute;
	top: 43.8%;
	left: 50%;
	margin-left: -83.8rem;
}
#main .sec03 table {
	width: 70.4rem;
	margin: 0 auto;
	border-collapse: collapse;
}
#main .sec03 th,
#main .sec03 td {
	padding: 4.2rem 0 4.3rem;
	color: #FFFFFD;
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: 0.23em;
	vertical-align: middle;
	text-align: left;
	box-sizing: border-box;
	border-bottom: 1px solid #707070;
}
#main .sec03 th {
	padding: 0.4rem 0 0 8.6rem;
}
#main .sec03 td {
	width: 56.5%;
	font-size: 2.4rem;
}
#main .sec03 td .sml {
	margin: -0.7rem 0 0 1rem;
	display: inline-block;
	vertical-align: middle;
	font-size: 1.2rem;
	letter-spacing: 0.13em;
}
#main .sec03 td .time {
	margin: -0.7rem -1rem 0 0;
	display: inline-block;
	vertical-align: middle;
	font-size: 1.4rem;
	letter-spacing: 0.17em;
}
#main .sec03 td .txt {
	position: relative;
}
#main .sec03 td .txt .sml {
	margin: 0;
	position: absolute;
	left: 0;
	bottom: -1.3rem;
	right: 0;
	text-align: center;
	display: block;
}
@media all and (min-width: 897px) {
	#main .sec03 .headLine02 {
		color: #FDFDFD;
	}
	#main .sec03 .headLine02 .en {
		color: #fff;
	}
	#main .sec03 .headLine02 .en::before {
		background-color: #FFFFFD;
	}
	#main .sec03 tr:last-child th,
	#main .sec03 tr:last-child td {
		border: none;
	}
}
@media all and (min-width: 897px) and (max-width: 1400px){
	#main .sec03 {
		background-size: 99rem auto, 100rem auto, cover;
	}
}
@media all and (max-width: 896px) {
	#pagePath {
		padding: 1rem 3.8rem;
		font-size: 0.8rem;
	}
	#pagePath li:not(:last-child) {
		padding-right: 2rem;
	}
	#main .topBg {
		padding: 3.1rem 0 25.9rem;
		background: url(../img/about/sec01_bg_sp.png) no-repeat top 24.7rem center;
		background-size: 39rem auto;
	}
	#main .topBg .spTtl {
		margin-bottom: 8.4rem;
		text-align: center;
		color: #020202;
		font-size: 1.3rem;
		letter-spacing: 0.53em;
	}
	#main .sec01 {
		padding: 6.6rem 3rem 4.7rem;
	}
	#main .sec01 .topBox {
		width: auto;
		margin: 0 auto 3rem;
		padding: 0 0 3.5rem;
		display: block;
	}
	#main .sec01 .title {
		margin-bottom: 1.4rem;
		position: static;
		width: auto;
		text-align: center;
	}
	#main .sec01 .pho {
		width: 24.1rem;
		margin: 0 auto;
	}
	#main .sec01 .bgText {
		margin: 0 auto 2.6rem;
	}
	#main .sec01 .textBox .ttl {
		margin: 0 -2rem 3rem;
		font-size: 1.4rem;
	}
	#main .sec01 .textBox p {
		margin-bottom: 3.6rem;
		letter-spacing: 0.08em;
		line-height: 3.18;
	}
	#main .sec02 .img {
		width: 33.4rem;
		margin: 0 auto 4.6rem;
		text-align: right;
	}
	#main .sec02 .img img {
		width: 16.1rem;
	}
	#main .sec02 ul {
		width: 31.1rem;
		margin: 0 auto;
	}
	#main .sec02 li {
		padding: 1.8rem 0 2.3rem;
		font-size: 1.4rem;
		text-align: center;
	}
	#main .sec02 li .sml {
		margin: 2.5rem auto 0;
		width: 25.6rem;
		padding-top: 2.5rem;
		font-size: 0.9rem;
		text-align: center;
	}
	#main .sec02 li .sml span {
		margin: 0 -2rem;
	}
	#main .sec02 li .num {
		position: static;
		margin: 0 auto 2.3rem;
		display: block;
		padding-top: 1.4rem;
	}
	#main .sec03 {
		padding: 5.7rem 3.8rem 7.9rem 4.2rem;
		background: url(../img/about/sec03_bg03_sp.png) no-repeat left -19.8rem bottom -4.9rem,url(../img/about/sec03_bg02_sp.png) no-repeat right -18.3rem top -4.7rem,url(../img/about/sec03_bg01.jpg) no-repeat center top;
		background-size: 31.7rem auto, 31.2rem auto, cover;
	}
	#main .sec03 .headLine02 {
		position: absolute;
		left: 0;
		top: -12.2rem;
		width: 100%;
	}
	#main .sec03 .img {
		display: none;
	}
	#main .sec03 table {
		width: 100%;
	}
	#main .sec03 th,
	#main .sec03 td {
		padding: 2.1rem 0 2.4rem;
		font-size: 1rem;
	}
	#main .sec03 th {
		padding: 0 2.1rem 0 0;
		text-align: center;
	}
	#main .sec03 td {
		width: 65.4%;
		font-size: 1.5rem;
	}
	#main .sec03 td .sml {
		margin: -0.1rem -1rem 0 0.8rem;
		font-size: 0.9rem;
	}
	#main .sec03 td .time {
		margin: -0.2rem -1rem 0 -0.5rem;
		font-size: 0.9rem;
		letter-spacing: 0.23em;
	}
	#main .sec03 td .txt .sml {
		bottom: -1.2rem;
		left: -1rem;
		right: -1rem;
	}
	#main .sec03 td p {
		margin-right: -2rem;
	}
}