@charset "utf-8";
main{overflow:hidden;}
main > *{
	position:relative;
	margin:0 auto;
}
main > *[data-full]{width:100%;}
main > *[data-flex] .fg img{max-width:initial;}
.pgTtl,
.pageTtl{
	position:relative;
	display:block;
}
.pgTtl > *{
	display:block;
	margin-left:12px;
	line-height:1.0;
	text-align:left;
}
.pgTtl strong{color:#d29576;}
.pgTtl small{color:#edd3c5;}
.pageTtl{
	width:100%;
	margin:0 auto;
	text-align:center;
}
.pageTtl > *{
	display:block;
	line-height:1.0;
	text-align:center;
}
.pageTtl:after{
	content:"";
	display:block;
	margin:0 auto;
}
.pageTtl strong{color:#302c2b;}
.pageTtl:not([data-color]):after{background-color:#e1bfad;}
.pageTtl:not([data-color]) small{color:#d29576;}
.pageTtl[data-color="blue"] small{color:#bfd0ea;}
.pageTtl[data-color="blue"]:after{background-color:#6888B8;}

.txtBox p{line-height:2.1;}
a[data-btn]{
	display:table;
	background-color:#fff;
	border:2px solid #d29576;
	color:#d29576;
	text-decoration:none;
	line-height:1.0;
	text-align:center;
	transition:all 0.4s;
}
a[data-btn] span{display:table-cell;}
a[data-btn]:hover{
	background-color:#d29576;
	color:#fff;
}

/*.page-template-default*/
#pageMenu{text-align:center;}
#pageMenu .pageMenuList{
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 auto;
	background-color:#fff;
	line-height:1.0;
}
#pageMenu .pageMenuList li{
	display:table;
	position:relative;
}
#pageMenu .pageMenuList li a,
#pageMenu .pageMenuList li a *{transition:all 0.4s;}
#pageMenu .pageMenuList li a{
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	background-color:#fcf6f4;
	color:#302c2b;
	text-decoration:none;
}
#pageMenu .pageMenuList li a:hover{
	background-color:#d29576;
	color:#fff;
}
#pageMenu .pageMenuList li a svg{
	display:inline-block;
	border-radius:50%;
	border:1px solid #d29576;
	background-color:#fff;
	transform:rotate(180deg);
}
#pageMenu .pageMenuList li a:hover svg{
	border-color:#fff;
	background-color:#d29576;
}
#pageMenu .pageMenuList li a svg > *{fill:#d29576;}
#pageMenu .pageMenuList li a:hover svg > *{fill:#fff;}
#pgHead{background-color:#fff;}
#pgHead > *{margin:0 auto;}
#breadcrumb li{
	position:relative;
	display:inline-block;
	vertical-align:middle;
}
#breadcrumb li+li:before{
	content:"\03e";
	display:inline-block;
	margin:0 6px;
	vertical-align:middle;
}
#pageTitle > *{
	display:block;
	line-height:1.0;
}
#pageTitle small{color:#d29576;}
#titleFV:after{
	content:"";
	display:block;
	position:absolute;
	background:url("../img/btm/page-mv-point.svg") no-repeat center center / contain;
}
@media screen and (max-width:1159.999px){
	main > *:not([data-full]){width:88vw;}
	.pgTtl strong{font-size:2.6rem;}
	.pgTtl small{
		margin-top:18px;
		font-size:1.4rem;
	}
	.pgTtl .numTtl{font-size:3.6rem;}
	.pageTtl{margin-bottom:40px;}
	.pageTtl:after{
		width:30px;
		height:4px;
		margin-top:12px;
		border-radius:2px;
	}
	.pageTtl strong{font-size:2.6rem;}
	.pageTtl small{
		margin-top:22px;
		font-size:1.2rem;
	}
	.txtBox p{font-size:1.5rem;}
	a[data-btn]{
		padding:11px 23px;
		border-radius:20px;
		font-size:1.3rem;
	}
	#pageMenu .pageMenuList{
		flex-wrap:wrap;
		width:328px;
		padding:5px;
		margin-top:-24px;
		border-radius:8px;
	}
	#pageMenu .pageMenuList li{width:154px;}
	#pageMenu .pageMenuList li:nth-child(2){margin-left:8px;}
	#pageMenu .pageMenuList li:nth-child(3){margin-top:5px;}
	#pageMenu .pageMenuList li:nth-child(2):before{
		content:"";
		display:block;
		width:2px;
		height:calc(100% - 12px);
		position:absolute;
		top:6px;
		left:-5px;
		background-color:#f6e9e2;
	}
	#pageMenu .pageMenuList li a{
		padding:12px;
		font-size:1.1rem;
		border-radius:6px;
	}
	#pageMenu .pageMenuList li a svg{
		width:12px;
		margin-left:4px;
		vertical-align:-2px;
	}
	#pgHead{padding:60px 0 42px;}
	#pgHead > *{width:88vw;}
	#breadcrumb li{font-size:1.1rem;}
	#pageTitle{margin-top:60px;}
	#pageTitle strong{font-size:2.4rem;}
	#pageTitle strong span{font-size:1.6rem;}
	#pageTitle small{
		margin-top:15px;
		font-size:1.1rem;
	}
	#titleFV img{
		width:100vw;
		height:180px;
		object-fit:cover;
		object-position:center center;
	}
	#titleFV:after{
		width:161px;
		height:148px;
		right:-48px;
		top:-94px;
	}
}
@media screen and (min-width:1160px){
	main > *:not([data-full]){width:96%;}
	main > *[data-flex]{
		display:flex;
		justify-content:space-between;
		max-width:1140px;
	}
	main > *[data-flex="reverse"]{flex-direction:row-reverse;}
	main > *[data-flex] .fg{position:relative;}
	.pgTtl{margin-bottom:46px;}
	.pgTtl strong{font-size:3.6rem;}
	.pgTtl small{
		margin-top:24px;
		font-size:2.0rem;
	}
	.pageTtl{margin-bottom:80px;}
	.pageTtl:after{
		width:50px;
		height:5px;
		margin-top:18px;
		border-radius:3px;
	}
	.pageTtl strong{font-size:3.8rem;}
	.pageTtl small{
		margin-top:30px;
		font-size:1.5rem;
	}
	.txtBox p{font-size:1.8rem;}
	a[data-btn]{
		padding:12px 34px;
		border-radius:22px;
		font-size:1.6rem;
	}
	#pageMenu .pageMenuList{
		padding:10px;
		margin-top:-58px;
		border-radius:10px;
	}
	#pageMenu[data-int="2"] .pageMenuList{width:900px;}
	#pageMenu[data-int="2"] .pageMenuList li{width:432px;}
	#pageMenu[data-int="3"] .pageMenuList{width:1140px;}
	#pageMenu[data-int="3"] .pageMenuList li{width:360px;}
	#pageMenu .pageMenuList li+li{margin-left:20px;}
	#pageMenu .pageMenuList li+li:before{
		content:"";
		display:block;
		width:2px;
		height:calc(100% - 20px);
		position:absolute;
		top:10px;
		left:-11px;
		background-color:#f6e9e2;
	}
	#pageMenu .pageMenuList li a{
		padding:36px;
		font-size:2.4rem;
		border-radius:8px;
	}
	#pageMenu .pageMenuList li a svg{
		width:26px;
		margin-left:12px;
		vertical-align:-3px;
	}
	#pgHead{padding:114px 0 60px;}
	#pgHead > *{
		max-width:1596px;
		width:96%;
	}
	#breadcrumb li{font-size:1.3rem;}
	#pageTitle{margin-top:108px;}
	#pageTitle strong{font-size:4.2rem;}
	#pageTitle strong span{font-size:1.8rem;}
	#pageTitle small{
		margin-top:30px;
		font-size:2.0rem;
	}
	#titleFV:after{
		width:21.875vw;
		height:20.15625vw;
		right:11.0416vw;
		top:-10.1019vw;
	}
}
@media screen and (min-width:1920px){
	#titleFV:after{
		width:420px;
		height:387px;
		right:212px;
		top:-205px;
	}
}