body{
/*
	background: url(../images/bg_leaf_l.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: contain;
*/
	background: url(../images/fresh_snow.png);
/*	cursor: url(../images/cursor-default.png), auto;*/
}
/*
@media (max-width: 767px) {
	body{
		background: none;
	}
}
*/

/*
a{
	cursor: url(../images/cursor-pointer.png), pointer;
}
*/

#footer{
	padding: 40px;
}
@media (max-width: 767px) {
	#footer{
		padding: 37px;
	}
	
	::-webkit-scrollbar {
		display: none;
		-webkit-appearance: none;
	}
}
/*========================================================
スマホ用固定ヘッダー
=========================================================*/
@media (max-width: 767px) {
/*
	body{
		margin-top: 33px;
	}
*/
	.brand{
		margin-top: 50px;
	}
	
.header_sp{
	position: fixed;
	width: 100%;
	height: 44px;
	background: #9c171a;
	border-bottom: 4px solid #771012;
	top:0;
	left:0;
	z-index: 1;
}
	.header_sp p{
		text-align: center;
		font-size: 20px;
		padding: 7px;
		letter-spacing: .2rem;
	}
	.header_sp img{
		padding: 14.5px;
	}
}
/*========================================================
スマホ用ドロワーメニュー
=========================================================*/
.drawer-menu-item {
/*	border-bottom: solid 1px #eee;*/
	border-bottom: solid 1px #333;
}

.drawer-dropdown-menu li a::before {
	content: "・";
	padding-right: 5px;
/*	color: #999;*/
	color: #444;
}
.drawer-dropdown-menu-item {
	padding-left: 1.1rem!important;
}
.drawer-hamburger {
	padding: 13px .75rem 30px!important;
}
/*
.select-menu{
	display: none!important;
}
*/
nav.drawer-nav{
	padding-bottom: 0;
}
/*========================================================
汎用クラス
=========================================================*/
.bg_black{
	background: #000;
}

.center{
	text-align: center;
}
.center2{
	margin: 0 auto;
}

.cb{
	clear: both;
}

.color_10{
	color: #444;
}

.float-left {
	float: left;
}
.float-right {
	float: right;
}

.font_12{
font-size: 12px!important;
}
.font_19{
	font-size: 19px!important;

}
.font-bold{
	font-weight: bold;
}

.pad_10{
	padding: 10px;
}

.mg_0{
	margin: 0!important;
}

.mgb_30{
	margin-bottom: 30px;
}
.mgb_60{
	margin-bottom: 60px;
}

.mgt_10{
	margin-top: 10px!important;
}
.mgt_20{
	margin-top: 20px!important;
}
.mgt_30{
	margin-top: 30px!important;
}
.mgt_50{
margin-top: 50px!important;
}

.mgl_0{
	margin-left: 0!important;
}
.mgl_30{
	margin-left: 30px!important;
}

.mgr_30{
	margin-right: 30px!important;
}

.li_disc{
	list-style: disc;
	margin-left: 2em;
}

@media (max-width: 767px) {
	.center_sp{
		text-align: center!important;
	}

	.float-left, .float-right{
		float: none;
	}

	.mgt_10sp{
		margin-top: 10px!important;
	}
	.mgl_0sp{
		margin-left: 0!important;
	}
	.mgr_0sp{
		margin-right: 0!important;
	}
	
	.spNone{
		display: none;
	}

	.pad_0{
		padding: inherit;
	}
	.sp-pad-b_0{
		padding-bottom: 0!important;
	}
	
	.sp_bg_none{
		background:  rgba( 255, 255, 255, 0 );
	}
}

@media (min-width: 768px) {
	.pcNone{
		display: none!important;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.wid-full_tab{
		width: 100%!important;
	}
}

/*========================================================
表示エフェクト
=========================================================*/
.effect-fade {
	opacity : 0;
	transform : translate(0, 45px);
	transition : all 2000ms;
}

.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}

/*パペガ・マジカロス イベント強敵告知BOXを左から順に表示*/
.fade-box {
	opacity: 0;
}

/*
.fade-box:nth-child(1) {
	-webkit-animation: example 0.75s ease 0.375s 1 forwards;
	animation: example 0.375s ease 0.75s 0.75s forwards;
}

.fade-box:nth-child(2) {
	-webkit-animation: example 0.75s ease 0.75s 1 forwards;
	animation: example 0.375s ease 1.5s 0.75s forwards;
}

.fade-box:nth-child(3) {
	-webkit-animation: example 0.75s ease 1.125s 1 forwards;
	animation: example 0.375s ease 2.25s 0.75s forwards;
}

.fade-box:nth-child(4) {
	-webkit-animation: example 0.75s ease 1.5s 1 forwards;
	animation: example 0.375s ease 3s 0.75s forwards;
}
*/

.fade-box:nth-child(1) {
	-webkit-animation: example 0.5s ease 0.5s 1 forwards;
	animation: example 0.5s ease 0.5s 1 forwards;
}

.fade-box:nth-child(2) {
	-webkit-animation: example 0.5s ease 1s 1 forwards;
	animation: example 0.5s ease 1s 1 forwards;
}

.fade-box:nth-child(3) {
	-webkit-animation: example 0.5s ease 1.5s 1 forwards;
	animation: example 0.5s ease 1.5s 1 forwards;
}

.fade-box:nth-child(4) {
	-webkit-animation: example 0.5s ease 2s 1 forwards;
	animation: example 0.5s ease 2s 1 forwards;
}


@-webkit-keyframes example {
	100% {
		opacity: 1;
	}
}
@keyframes example {
	100% {
		opacity: 1;
	}
}

/*========================================================
スライドショー
=========================================================*/
.slider2 a{
	height: auto;
	position: relative;
}
.slider2 a div{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.slider2 p{
	font-size: 3.5vw;
	text-align: center;
}
.main-carousel,
.slick img{
/*
	max-width: inherit;
	margin: 0 auto;
*/
	width: 100%;
}

/*========================================================
背景を動画にする
=========================================================*/
.box-video {
	width:100%;
	height:auto;
	position:relative;
}
/*ホバーした時に色が変化する要素を追加*/
.box-video:hover{
	opacity: 0.6;
	transition-duration: 0.3s;
}
.box-video-content {
	position:absolute;
	top:0;
/*	left:30%;*/
	color:#fff;
	padding-top:20%;
}
video {
	position: relative;
	right: 0;
	bottom: 0;
	min-width: 100%;
	width: 100%;
	height: auto;
	z-index: 0;
}
/*
@media screen and (max-device-width: 800px) {
	#bgvid { display: none; }
}
*/
.box-video-content{
	width: 100%;
}
.box-video-content h1{
	font-size: 3vw;
}
.box-video-content span{
	font-size: 1.5vw;
}
@media (max-width: 767px) {
	.box-video:hover{
		opacity: 1;
		transition-duration: none;
	}
}
/*========================================================
背景画像
=========================================================*/
.bg_leaf_s{
	width: 100%;
	background: url(../images/bg_leaf_s.png) center center / cover no-repeat;
}
.bg_leaf_l{
	width: 100%;
/*	background: url(../images/bg_leaf_l.png) center center / cover no-repeat;*/
	background: url(../images/bg_leaf_l.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-attachment: fixed;
/*	background-origin: content-box;*/
}
.bg_tree{
	width: 100%;
	background: url(../images/bg_tree.png) center center / cover no-repeat;
}
.bg_top{
	background: url(../images/1170-185.png) center center / cover no-repeat;
}
.bg_top2{
	background: url(../images/wall4.png);
	background-repeat: repeat;
}
@media (min-width: 768px) and (max-width: 979px) {
	.bg_top{
		background: url(../images/748-185.png)
	}
}
@media (min-width: 980px) and (max-width: 1199px) {
	.bg_top{
		background: url(../images/940-185.png)
	}
}
@media (max-width: 767px) {
	.bg_top2{
		background: none;
	}

	.border-bottom-0_sp{
		border-bottom: none;
	}
}
/*========================================================
		footer
=========================================================*/
@media (min-width: 768px) and (max-width: 1199px) {
	.foot_min{
		width: 30%;
		margin-bottom: 20px;
	}

.foot_min > .border-r{
	border-right:none;
}
}
/*========================================================
		index.php
=========================================================*/
#loading{
	width: 100vw;
	height: 100vh;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}

#loading img{
	width: 100px;
}


@media screen and (min-width: 768px) {
	#loading img{
		width: 120px;
	}
}

.border-r{
	border-right: solid 1px #9c9c9c;
}

.sf-menu_home li > a:hover {
	color: #fff!important;
}

.sf-menu_home li > ul > li a:hover {
	color: #9c171a!important;
}

/*スマホ横画面表示時にイベントの画像が大きくならないように*/
.events{
	width: 170px;
	margin: 0 auto;
}

.event-img:after{
	display: none;
}
.event-img img{
	position: absolute;
	top: 18px;
	left: 20px;
	width: 50px;
}
.event-img h3{
	padding-top: 5px;
}
.event-imgBox{
	display: inline-block;
	background: #fff;
}
.event-imgBox img:hover{
	opacity: 0.6;
	transition-duration: 0.3s;
}

.pace-running .content {
	display:none;
}

/*テープ枠 */
.kakomi-tape3 {
	position:relative;
	padding: 35px 20px 15px;
	margin: 2.5em auto;
	width: 90%;
	color: #555555; /* 文字色 */
	background-color: #e8ddbd;
	box-shadow: inset 0 0 40px rgba(204, 186, 136,1), 0 2px 2px #ccc;
}
.title-tape3 {
	position: absolute;
	top: -15px;
	left: 30px;
	padding: 4px 20px;
	color: #555555; /*タイトル色*/
	font-weight: bold;
	background-color: rgba(255,255,255,.4);
	border-left: 2px dotted rgba(0,0,0,.1);
	border-right: 2px dotted rgba(0,0,0,.1);
	box-shadow: 0 0 5px rgba(0,0,0,0.2); 
	transform: rotate(-5deg);
}

/*スマホ横画面表示時の幅*/
@media screen and (min-width: 481px) and (max-width: 768px) {
	.center_sp-ls{
		text-align: center;
	}
}

@media (max-width: 767px) {
	.border-r{
		border-right: none;
	}
	.avalon img{
		width: 300px;
		height: 350px;
		object-fit: cover;
	}
}

/*スライドショー captionの高さを揃える*/
@media (max-width: 479px){
	#owl .item .caption {
		height: 160px;
}
}
@media (max-width: 767px){
	#owl .item .caption {
		height:180px;
}
}
@media (max-width: 1199px) and (min-width: 768px){
	#owl .item .caption {
		height:150px;
	}
}

@media (max-width: 979px) and (min-width: 768px){
	.event-img img{
		display: none;
	}
}

@media (max-width: 767px){
.container-full_sp{
	width: 100%!important;
	padding: 0!important;
}
}

/*========================================================
	company.php
=========================================================*/
.company {
	width: 100%;
}

.company th,
.company td {
	border: 1px solid #ccc;
	padding: 20px;
	margin-top: -1px;
}

.company th {
	font-weight: bold;
	background-color: #dedede;
}

@media screen and (max-width: 767px) {
	.company,
	.company tr,
	.company td,
	.company th {display:block;}
	.company th {width:auto;}
}

.dl_company dt{
	color: #9c171a;
}

.dl_company dd{
	margin: 0 0 1em 1em;
}

.dl_company a{
	font-weight: bold;
}
.dl_company a:hover{
	background-color: #ddd;
}

/*========================================================
		pg-legacy.php
=========================================================*/
.pg-l img{
	margin-top: 15px;
}

/*========================================================
		news.php
=========================================================*/
.news p a{
	color: #9c171a;
}

ul.ul_news{
	margin-top:1em 0;
	padding-left:40px;
	list-style: disc;
}

ul.ul_news li{
	border: none;
	color: #4d5566;
	display:list-item;
	padding: 0;
	margin: 0;
}

ul.ul_news + a{
	color: #9c171a;
}

nav.nav_news{
	text-align: center;
}
nav.nav_news ul{
	margin: 0 ;
	padding: 0 ;
}
nav.nav_news li{
	list-style: none;
	display: inline-block;
	min-width: 60px;
	margin-bottom: 10px;
}
nav.nav_news li:not(:last-child){
	border-right:2px solid #ddd;
}
nav.nav_news a{
	text-decoration: none;
	color: #4d5566;
}
nav.nav_news a:hover{
	color:#F7CB4D;
	border-bottom:2px solid #F7CB4D;
}
.anchor{
	display: block;
	padding-top: 64px;
	margin-top: -64px;
}
@media screen and (max-width: 767px) {
	nav.nav_news li{
		margin-bottom: 10px;
	}
}