@charset "utf-8";

/*============================
読み込み直後
============================*/
.splash_screen {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10;
  background-color: #FFF;
}

/*============================
共通
============================*/
body {
	background-image: url(../img/common/body_bg.jpg);
	background-position: center;
	background-size: 300px;
}

body.menu_active {
	overflow: hidden;
}

.sec_title {
	font-family: 'Zen Old Mincho', serif;
	font-size: 0.40rem;
	font-weight: 500;
	line-height: 1.65;
	color: #264526;
	text-align: center;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 640px) {
	.sec_title {
		font-size: 0.24rem;
		letter-spacing: 0;
		padding-bottom: 0.20rem;
	}
}

img.cover {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.3s;
}

/*============================
ヘッダー
============================*/
header {
	transition: transform 0.5s 0.3s;
	position: fixed;
	width: 100%;
	top: 0;
	right: 0;
	z-index: 5;
}

@media screen and (max-width: 640px) {
	header {
		/* スマホ用の記述 */
	}
}

/* --------- 以下、必要に応じて有効化 ---------- */

/* ヘッダーが上に消える
header.hide {
	transform: translateY(-1.50rem);
}
*/

/* スクロールで表示された状態
header.scr {
	background-color: rgba(255, 255, 255, 0.85);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
*/

header .menu_btn_wrap {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	opacity: 0;
	animation: fadeinMenu 3s 4s forwards;
}

@keyframes fadeinMenu {
  0% {opacity: 0}
  100% {opacity: 1}
}

header .menu_btn_wrap .list {
	display: flex;
	flex-wrap: wrap;
}

header .menu_btn_wrap .btn {
	width: 1.00rem;
	height: 1.00rem;
	position: relative;
	margin-left: 1px;
}

@media screen and (max-width: 640px) {
	header .menu_btn_wrap .btn {
		width: 0.60rem;
		height: 0.60rem;
	}
}

header .menu_btn_wrap .btn a {
	display: block;
	height: 100%;
	position: relative;
	text-decoration: none;
}

/* LINEボタン */
header .menu_btn_wrap .btn.line a {
	background-color: #0EA392;
	color: #FFF;
	font-size: 0.12rem;
	font-weight: 600;
	text-align: center;
	line-height: 1;
}

@media screen and (max-width: 640px) {
	header .menu_btn_wrap .btn.line a {
		font-size: 0.10rem;
		letter-spacing: 0;
	}
	header .menu_btn_wrap .btn.line a span {
		transform: scale(0.9);
	}
}

header .menu_btn_wrap .btn.line a:hover {
	background-color: #0EA33C;
}

header .menu_btn_wrap .btn.line a span::before {
	content: "";
	width: 0.32rem;
	height: 0.30rem;
	background-image: url(../common/img/icon_line_white.svg);
	background-position: center 0.20rem;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	margin: auto;
	padding: 0.30rem 0 0.01rem;
}

@media screen and (max-width: 640px) {
	header .menu_btn_wrap .btn.line a span::before {
		width: 0.22rem;
		height: 0.20rem;
		background-position: center 0.12rem;
		padding: 0.16rem 0 0.01rem;
	}
}

/* ナビボタン */
header .menu_btn_wrap .btn.navi {
	background-color: #264526;
	cursor: pointer;
}

header .menu_btn_wrap .btn.navi .menu-trigger {
	position: absolute;
	left: 50%;
	width: 50%;
	height: 100%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/*============================
グローバルナビゲーション
============================*/
.mod_menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 8;
	background-color: rgba(38, 69, 38, 0.9);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	box-sizing: border-box;
	display: none;
}

@media screen and (max-width: 640px) {
	.mod_menu {
		height: 100dvh;
		overflow: scroll;
		z-index: 11;
	}
}

.mod_menu::before {
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/common/mod_menu_bg.jpg);
	background-position: center;
	background-size: 120%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.1;
	z-index: 0;
}

@media screen and (max-width: 640px) {
	.mod_menu::before {
		background-size: auto 120%;
		height: 100%;
		position: fixed;
	}
}

.mod_menu .menu_slides {
	width: 50%;
	height: 100vh;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	/* background-image: url(../img/common/mod_menu_ph01.jpg);
	background-position: center;
	background-size: cover; */
}

@media screen and (max-width: 640px) {
	.mod_menu .menu_slides {
		display: none;
	}
}

.mod_menu .menu_slides .slides {
	min-height: 100% !important;
}

@media screen and (max-width: 640px) {
	.mod_menu .menu_slides .slides {
		min-height: 100% !important;
		height: 100%;
		overflow: hidden;
	}
}

.mod_menu .menu_slides .slides {
	pointer-events: none;
}

.mod_menu .menu_slides .slides img {
	height: 100vh !important;
	object-fit: cover;
}

@media screen and (max-width: 640px) {
	.mod_menu .menu_slides .slide {
		height: 100% !important;
		overflow: hidden;
	}
	.mod_menu .menu_slides .slides img {
		display: block;
		width: 100%;
		height: 100% !important;
		object-fit: cover;
	}
}

.mod_menu .in {
	max-width: 50%;
	padding: 0.40rem;
	font-family: 'Zen Old Mincho', serif;
	margin-left: auto;
	margin-right: 0;
}

@media screen and (max-width: 640px) {
	.mod_menu .in {
		max-width: 100%;
		padding: 0.20rem 0.20rem 0;
	}
}

.mod_menu .in .glo_navi {
	padding-bottom: 0.20rem;
}

.mod_menu .in .glo_navi .list .link {
	padding-bottom: 0.15rem;
}

.mod_menu .in .glo_navi .list .link a {
	font-size: 0.18rem;
	font-weight: 500;
	color: #FFF;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .glo_navi .list .link a {
		font-size: 0.16rem;
	}
}

.mod_menu .in .link a::before {
	content: "";
	width: 0.06rem;
	height: 1px;
	background-color: #FFF;
	display: inline-block;
	margin-right: 0.10rem;
	position: relative;
	top: -0.04rem;
	opacity: 0.5;
	transition: all 0.3s;
}

.mod_menu .in .link a:hover::before {
	width: 0.10rem;
	opacity: 1;
}

.mod_menu .in .glo_navi .list .link a .small_text {
	font-size: 0.12rem;
	font-weight: 400;
	display: inline-block;
	padding-right: 0.10rem;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .glo_navi .list .link a .small_text {
		font-size: 0.11rem;
		padding-right: 0.08rem;
	}
}

.mod_menu .in .sub_navi {
	border-top: 1px solid rgba(255,255,255,0.1);
}

.mod_menu .in .sub_navi {
	padding: 0.30rem 0;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .sub_navi {
		padding: 0.30rem 0 0;
	}
}

.mod_menu .in .sub_navi .list {
	padding-bottom: 0.20rem;
}

.mod_menu .in .sub_navi .title {
	font-size: 0.16rem;
	font-weight: 600;
	color: #FFF;
	padding-bottom: 0.20rem;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .sub_navi .title {
		font-size: 0.15rem;
	}
}

.mod_menu .in .sub_navi .list .link {
	padding-bottom: 0.15rem;
}

.mod_menu .in .sub_navi .list .link a {
	font-size: 0.14rem;
	font-weight: 500;
	color: #FFF;
}

.mod_menu .in .sub_navi .list.sub {
	border-top: 1px solid rgba(255,255,255,0.1);
	padding-top: 0.30rem;
}

.mod_menu .in .menu_close {
	position: absolute;
	top: 0;
	right: 0;
	width: 1.00rem;
	height: 1.00rem;
	cursor: pointer;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .menu_close {
		width: 0.60rem;
		height: 0.60rem;
	}
}

.mod_menu .in .menu_close .menu-trigger {
  position: absolute;
  left: 50%;
  width: 50%;
  height: 100%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.mod_menu .in .menu_close span {
	display: inline-block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #FFF;
	transition: all 0.3s;
}

.mod_menu .in .menu_close span:nth-child(1) {
	transform: rotate(45deg);
	top: 49%;
}

.mod_menu .in .menu_close span:nth-child(2) {
	transform: rotate(-45deg);
	top: 49%;
}

/* TEL */
.mod_menu .in .sp_tel_btn {
	display: none;
}

@media screen and (max-width: 640px) {
	.mod_menu .in .sp_tel_btn {
		display: block;
		width: 100%;
		padding-bottom: 0.20rem;
	}
	.mod_menu .in .sp_tel_btn a {
		display: block;
		line-height: 0;
		padding: 0.30rem 0 0.32rem;
		background-color: #FFF;
		box-shadow: 0 2px 0 rgba(0,0,0,0.5);
		font-size: 0.20rem;
		color: #264526;
		text-align: center;
		position: relative;
		border-radius: 0.06rem;
	}
	.mod_menu .in .sp_tel_btn a span {
		display: inline-block;
		position: relative;
		padding-left: 0.30rem;
	}
	.mod_menu .in .sp_tel_btn a span::before {
		content: "";
		width: 0.20rem;
		height: 0.20rem;
		background-image: url(../img/common/icon_tel.svg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.mod_menu .in .sp_tel_btn .small_text {
		padding:0.10rem 0;
		text-align: center;
		font-size: 0.12rem;
		color: #FFF;
		letter-spacing: 0;
	}
}

/*============================
各施設のご案内
============================*/
.facility {
	padding: 1.00rem 0;
	background-color: rgba(176, 192, 150, 0.3);
}

@media screen and (max-width: 640px) {
	.facility {
		padding: 0.50rem 0;
	}
}


/* エリアマップ */
.facility .area_map {
	width: 100%;
	max-width: 12.00rem;
	margin: auto;
	position: relative;
}

/* マップ画像 */
.facility .area_map .map_img {
	position: relative;
	z-index: 0;
}

/* マップ内リンクの基本設定（PCのみ） */
.facility .area_map .area_textbox .detail a {
	color: #FFF;
}

.facility .area_map .area_textbox .detail a:hover .shop_title span {
	background-color: #FFF;
	color: #111;
}


.facility .area_map .area_textbox .detail a .cat {
	font-size: 0.13rem;
	font-weight: 600;
}

.facility .area_map .area_textbox .detail a .cat span {
	display: inline-block;
	padding: 0.02rem 0.06rem 0.04rem;
}

.facility .area_map .area_textbox .detail a .shop_title span {
	display: inline-block;
	padding: 0.02rem 0.06rem 0.04rem;
	background-color: #000;
	font-size: 0.16rem;
	font-weight: 600;
	position: relative;
	transition: all 0.3s;
}

/* カテゴリの色 */
.facility .area_map .area_textbox .detail a .cat.yellow span {
	background-color: #F8BA00;
}
.facility .area_map .area_textbox .detail a .cat.purple01 span {
	background-color: #83559F;
}
.facility .area_map .area_textbox .detail a .cat.mizu span {
	background-color: #5A92CD;
}
.facility .area_map .area_textbox .detail a .cat.pink span {
	background-color: #E95E6E;
}
.facility .area_map .area_textbox .detail a .cat.emerald span {
	background-color: #2AB5B0;
}
.facility .area_map .area_textbox .detail a .cat.green span {
	background-color: #009E41;
}
.facility .area_map .area_textbox .detail a .cat.brown span {
	background-color: #9A6B09;
}
.facility .area_map .area_textbox .detail a .cat.orange span {
	background-color: #F08600;
}
.facility .area_map .area_textbox .detail a .cat.purple02 span {
	background-color: #981867;
}
.facility .area_map .area_textbox .detail a .cat.deepblue span {
	background-color: #004781;
}

/* ワンちゃんOKアイコン */
.facility .area_map .area_textbox .detail a .shop_title.dog span::before {
	content: "";
	width: 0.23rem;
	height: 100%;
	background-color: #FFF;
	position: absolute;
	top: 0;
}
.facility .area_map .area_textbox .detail a .shop_title.dog span::after {
	content: "";
	width: 0.19rem;
	height: 100%;
	background-image: url(../img/common/area_map_dog.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
}

/* 埜のてらす左側 */
.facility .area_map .nonoterrace_left {
	position: absolute;
	top: 3.35rem;
	left: 0.62rem;
	z-index: 1;
	text-align: right;
}

.facility .area_map .nonoterrace_left::after {
	content: "";
	width: 0.13rem;
	height: 0.38rem;
	background-image: url(../img/common/areamap_arrow_down.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	position: absolute;
	right: 0;
	bottom: -0.38rem;
}

.facility .area_map .area_textbox.nonoterrace_left .detail a .shop_title.dog span::before {
	left: -0.23rem;
}
.facility .area_map .area_textbox.nonoterrace_left .detail a .shop_title.dog span::after {
	left: -0.21rem;
}

/* 埜のてらす右側 */
.facility .area_map .nonoterrace_right {
	position: absolute;
	top: 3.35rem;
	left: 3.70rem;
	z-index: 1;
}

.facility .area_map .nonoterrace_right::after {
	content: "";
	width: 0.13rem;
	height: 0.66rem;
	background-image: url(../img/common/areamap_arrow_down.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	bottom: -0.66rem;
}

.facility .area_map .area_textbox.nonoterrace_right .detail a .shop_title.dog span::before {
	right: -0.23rem;
}
.facility .area_map .area_textbox.nonoterrace_right .detail a .shop_title.dog span::after {
	right: -0.21rem;
}

/* 埜のてらす下部 */
.facility .area_map .nonoterrace_bottom {
	position: absolute;
	bottom: 1.45rem;
	left: 3.28rem;
	z-index: 1;
}

.facility .area_map .area_textbox.nonoterrace_bottom .detail a .shop_title.dog span::before {
	right: -0.23rem;
}
.facility .area_map .area_textbox.nonoterrace_bottom .detail a .shop_title.dog span::after {
	right: -0.21rem;
}

/* 定山 上部 */
.facility .area_map .kokoronosato_top {
	position: absolute;
	top: 0.91rem;
	right:3.39rem;
	z-index: 1;
}

.facility .area_map .kokoronosato_top::after {
	content: "";
	width: 0.13rem;
	height: 0.58rem;
	background-image: url(../img/common/areamap_arrow_down.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	bottom: -0.58rem;
}

/* 定山 中部 */
.facility .area_map .kokoronosato_mid {
	position: absolute;
	top: 3.81rem;
	right:4.33rem;
	z-index: 1;
}

.facility .area_map .kokoronosato_mid::after {
	content: "";
	width: 0.13rem;
	height: 0.28rem;
	background-image: url(../img/common/areamap_arrow_down.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	bottom: -0.28rem;
}

/* 定山 下部 */
.facility .area_map .kokoronosato_bottom {
	position: absolute;
	bottom: 1.96rem;
	right:2.68rem;
	z-index: 1;
}

.facility .area_map .kokoronosato_bottom::after {
	content: "";
	width: 0.13rem;
	height: 0.57rem;
	background-image: url(../img/common/areamap_arrow_up.png);
	background-position: center top;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	top: -0.57rem;
}

.facility .area_map .kokoronosato_bottom .detail a .shop_title.dog span::before {
	right: -0.23rem;
}
.facility .area_map .kokoronosato_bottom .detail a .shop_title.dog span::after {
	right: -0.21rem;
}


/* スライダー */
.facility .area_slides_wrap {
	position: relative;
	margin-top: 0.40rem;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap {
		position: relative;
		margin-top: 0.20rem;
	}
}

.facility .area_slides_wrap .slides .slide {
	width: 100%;
	max-width: 3.60rem;
	padding: 0 0.20rem;
	box-sizing: border-box;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide {
		max-width: 3.00rem;
		padding: 0 0.10rem;
	}
}

.facility .area_slides_wrap .slides .slide a {
	display: block;
	color: #111;
	border-radius: 0.10rem;
	background-color: #FFF;
	overflow: hidden;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a {
		border-radius: 0.06rem;
	}
}

.facility .area_slides_wrap .slides .slide a .ph_wrap {
	width: 100%;
	height: 2.25rem;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .ph_wrap {
		height: 50vw;
	}
}

.facility .area_slides_wrap .slides .slide a:hover .ph_wrap img {
	transform: scale(1.04);
	position: relative;
	z-index: 0;
}

.facility .area_slides_wrap .slides .slide a .textbox {
	position: relative;
	padding: 0.20rem;
	z-index: 1;
}

.facility .area_slides_wrap .slides .slide a .textbox .cat_box {
	width: 1.20rem;
	position: absolute;
	top: -0.19rem;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 0.20rem;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .cat_box {
		top: -0.16rem;
	}
}

.facility .area_slides_wrap .slides .slide a .textbox .cat_box span {
	display: block;
	line-height: 0;
	padding: 0.16rem 0 0.18rem;
	text-align: center;
	font-size: 0.13rem;
	font-weight: 500;
	color: #FFF;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .cat_box span {
		padding: 0.13rem 0 0.15rem;
		font-size: 0.12rem;
	}
}

.facility .area_slides_wrap .slides .slide a .textbox .cat_box.enjoy {
	background-color: #4D7E4D;
}

.facility .area_slides_wrap .slides .slide a .textbox .cat_box.eat {
	background-color: #E08100;
}

.facility .area_slides_wrap .slides .slide a .textbox .cat_box.relax {
	background-color: #0EA392;
}

.facility .area_slides_wrap .slides .slide a .textbox .slide_title {
	padding: 0.10rem 0 0.20rem;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}

.facility .area_slides_wrap .slides .slide a .textbox .slide_title .small_text {
	font-size: 0.13rem;
	font-weight: 500;
	display: block;
	padding-bottom: 0.10rem;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .slide_title .small_text {
		font-size: 0.12rem;
	}
}

.facility .area_slides_wrap .slides .slide a .textbox .slide_title .big_text {
	font-size: 0.20rem;
	font-weight: 600;
	display: block;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .slide_title .big_text {
		font-size: 0.18rem;
		letter-spacing: 0;
	}
}

.facility .area_slides_wrap .slides .slide a .textbox .more_btn {
	width: 100%;
	max-width: 2.00rem;
	margin: auto;
	position: relative;
}

.facility .area_slides_wrap .slides .slide a .textbox .more_btn span {
	display: block;
	text-align: center;
	font-weight: 500;
	font-size: 0.14rem;
	line-height: 0;
	padding: 0.20rem 0 0.22rem;
	border: 1px solid #111;
	border-radius: 0.50rem;
	transition: all 0.3s;
	position: relative;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .more_btn span {
		padding: 0.16rem 0 0.18rem;
	}
}

.facility .area_slides_wrap .slides .slide a:hover .textbox .more_btn span {
	background-color: #111;
	color: #FFF;
}

.facility .area_slides_wrap .slides .slide a .textbox .more_btn span::after {
	content: "";
	width: 0.20rem;
	height: 0.11rem;
	background-image: url(../common/img/icon_arrow2_black.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 0.10rem;
	top: 47%;
	transform: translateY(-50%);
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slide a .textbox .more_btn span::after {
		top: 49%;
	}
}

.facility .area_slides_wrap .slides .slide a:hover .textbox .more_btn span::after {
	background-image: url(../common/img/icon_arrow2_white.svg);
}

/* スライドボタン */
.facility .area_slides_wrap .slides .slick-arrow {
	width: 0.70rem;
	height: 0.70rem;
	border-radius: 0.70rem;
	box-shadow: 0 0 8px rgba(0,0,0,0.3);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	cursor: pointer;
	transition: all 0.3s;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-arrow {
		width: 0.35rem;
		height: 0.35rem;
	}
}

.facility .area_slides_wrap .slides .slick-arrow.prev_btn {
	background-image: url(../img/common/slidebtn_prev.png);
	left: calc(50% - 6.00rem);
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-arrow.prev_btn {
		left: 0.28rem;
	}
}

.facility .area_slides_wrap .slides .slick-arrow.prev_btn:hover {
	left: calc(50% - 6.06rem);
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-arrow.prev_btn:hover {
		left: 0.28rem;
	}
}

.facility .area_slides_wrap .slides .slick-arrow.next_btn {
	background-image: url(../img/common/slidebtn_next.png);
	right: calc(50% - 6.00rem);
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-arrow.next_btn {
		right: 0.28rem;
	}
}

.facility .area_slides_wrap .slides .slick-arrow.next_btn:hover {
	right: calc(50% - 6.06rem);
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-arrow.next_btn:hover {
		right: 0.28rem;
	}
}

/* スライドドット */
.facility .area_slides_wrap .slides .slick-dots {
	bottom: -0.40rem;
}

.facility .area_slides_wrap .slides .slick-dots li button::before {
	font-size: 0.08rem;
}

@media screen and (max-width: 640px) {
	.facility .area_slides_wrap .slides .slick-dots li {
		margin: 0;
	}
}

/*============================
お知らせ
============================*/
.news_wrap {
	padding: 1.00rem 0;
}

@media screen and (max-width: 640px) {
	.news_wrap {
		padding: 0.50rem 0;
	}
}

.news_wrap .news_list {
	padding-top: 0.20rem;
	width: 100%;
	max-width: 10.00rem;
	margin: auto;
}

@media screen and (max-width: 640px) {
	.news_wrap .news_list {
		padding-top: 0;
		border-top: 1px solid rgba(0,0,0,0.1);
	}
}

.news_wrap .news_list .link {
	padding-bottom: 0.20rem;
}

@media screen and (max-width: 640px) {
	.news_wrap .news_list .link {
		padding: 0.15rem 0;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
}

.news_wrap .news_list .link a {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	font-family: 'Noto Serif JP', serif;
	color: #111;
	font-size: 0.16rem;
}

@media screen and (max-width: 640px) {
	.news_wrap .news_list .link a {
		display: block;
		font-size: 0.14rem;
	}
}

.news_wrap .news_list .link a .date {
	width: 1.60rem;
}

@media screen and (max-width: 640px) {
	.news_wrap .news_list .link a .date {
		width: 100%;
		padding-bottom: 0.08rem;
		font-size: 0.12rem;
	}
}

.news_wrap .news_list .link a .title {
	width: calc(100% - 1.60rem);
}

@media screen and (max-width: 640px) {
	.news_wrap .news_list .link a .title {
		width: 100%;
		line-height: 1.55;
	}
}

.news_wrap .news_list .link a:hover .title {
	text-decoration: underline;
}

.news_wrap .more_btn {
	width: 100%;
	max-width: 3.60rem;
	margin: 0.40rem auto 0;
}

@media screen and (max-width: 640px) {
	.news_wrap .more_btn {
		max-width: 3.00rem;
	}
}

.news_wrap .more_btn a {
	display: block;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-size: 0.16rem;
	line-height: 0;
	padding: 0.24rem 0 0.26rem;
	border: 1px solid #111;
	border-radius: 0.50rem;
	transition: all 0.3s;
	position: relative;
	color: #111;
}

@media screen and (max-width: 640px) {
	.news_wrap .more_btn a {
		font-size: 0.15rem;
		padding: 0.20rem 0 0.22rem;
	}
}

.news_wrap .more_btn a:hover {
	background-color: #111;
	color: #FFF;
}

.news_wrap .more_btn a span::after {
	content: "";
	width: 0.26rem;
	height: 0.11rem;
	background-image: url(../common/img/icon_arrow2_black.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 0.20rem;
	top: 48%;
	transform: translateY(-50%);
}

@media screen and (max-width: 640px) {
	.news_wrap .more_btn a span::after {
		width: 0.20rem;
		height: 0.10rem;
		right: 0.15rem;
	}
}

.news_wrap .more_btn a:hover span::after {
	background-image: url(../common/img/icon_arrow2_white.svg);
}

/*============================
アクセス方法
============================*/
.access {
	padding-top: 1.00rem;
	position: relative;
	background-color: rgba(176, 192, 150, 0.3);
}

@media screen and (max-width: 640px) {
	.access {
		padding-top: 0.50rem;
	}
}

.access .lead {
	font-size: 0.16rem;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 640px) {
	.access .lead {
		font-size: 0.14rem;
		line-height: 1.875;
		padding-bottom: 0.20rem;
	}
}

.access .access_text_wrap {
	width: 100%;
	max-width: 10.00rem;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 0.50rem;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap {
		padding-bottom: 0.20rem;
	}
}

.access .access_text_wrap .address_box,
.access .access_text_wrap .route_list {
	width: 50%;
	font-family: 'Noto Serif JP', serif;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .address_box,
	.access .access_text_wrap .route_list {
		width: 100%;
	}
	.access .access_text_wrap .address_box {
		padding-bottom: 0.15rem;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
}

.access .access_text_wrap .address_box .text,
.access .access_text_wrap .route_list .text  {
	font-size: 0.16rem;
	line-height: 1.875;
	padding-bottom: 0.15rem;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .address_box .text,
	.access .access_text_wrap .route_list .text  {
		font-size: 0.14rem;
		padding-bottom: 0.10rem;
	}
}

.access .access_text_wrap .address_box .text a {
	text-decoration: none;
	color: #1A1A1A;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .address_box .text a {
		text-decoration: underline;
		font-weight: 600;
	}
}

.access .access_text_wrap .address_box .title {
	font-size: 0.16rem;
	text-align: left;
	padding-right: 0.40rem;
	line-height: 1.875;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .address_box .title {
		font-size: 0.14rem;
		padding-right: 0;
		width: 100%;
		display: block;
		vertical-align: top;
		line-height: 1.75;
	}
	.access .access_text_wrap .address_box .title::before {
		content: "●";
		color: #264526;
		display: inline-block;
		padding-right: 0.04rem;
	}
	.access .access_text_wrap .address_box table {
		width: 100%;
	}
	.access .access_text_wrap .address_box table .text {
		width: 100%;
		display: block;
	}
	.access .access_text_wrap .address_box table .text a {
		color: #264526;
		font-weight: 600;
		text-decoration: underline;
	}
	.access .access_text_wrap .address_box table .text .tel_btn {
		display: block;
		width: 100%;
		padding:0.10rem 0 0.20rem;
	}
	.access .access_text_wrap .address_box table .text .tel_btn a {
		display: block;
		line-height: 0;
		padding: 0.30rem 0 0.32rem;
		background-color: #264526;
		box-shadow: 0 2px 0 rgba(0,0,0,0.5);
		font-size: 0.18rem;
		color: #FFF;
		text-align: center;
		position: relative;
		border-radius: 0.06rem;
	}
	.access .access_text_wrap .address_box table .text .tel_btn a span {
		display: inline-block;
		position: relative;
		padding-left: 0.30rem;
	}
	.access .access_text_wrap .address_box table .text .tel_btn a span::before {
		content: "";
		width: 0.20rem;
		height: 0.20rem;
		background-image: url(../img/common/icon_tel_white.svg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
}

.access .access_text_wrap .address_box table .text,
.access .access_text_wrap .route_list .route_box .text {
	padding-bottom: 0;
}

.access .access_text_wrap .route_list .route_box {
	display: flex;
	padding-bottom: 0.15rem;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .route_list {
		padding-top: 0.15rem;
	}
	.access .access_text_wrap .route_list .route_box {
		display: block;
	}
}

.access .access_text_wrap .route_list .route_box .title {
	width: 1.60rem;
	font-size: 0.16rem;
	line-height: 1.875;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .route_list .route_box .title {
		width: 100%;
		font-size: 0.14rem;
		line-height: 1.75;
	}
	.access .access_text_wrap .route_list .route_box .text {
		width: 100%;
	}
}

.access .access_text_wrap .route_list .route_box .title span {
	text-decoration: underline;
	font-weight: 600;
}

@media screen and (max-width: 640px) {
	.access .access_text_wrap .route_list .route_box .title span {
		text-decoration: none;
	}
	.access .access_text_wrap .route_list .route_box .title span::before {
		content: "●";
		color: #264526;
		display: inline-block;
		padding-right: 0.04rem;
	}
}

.access .gmap_wrap {
	width: 100%;
	height: 5.00rem;
}

@media screen and (max-width: 640px) {
	.access .gmap_wrap {
		height: 77vw;
	}
}

.access .gmap_wrap iframe {
	width: 100%;
	height: 100%;
}

/*============================
ふる川グループ施設のご案内
============================*/
.group {
	padding: 1.00rem 0;
	position: relative;
}

@media screen and (max-width: 640px) {
	.group {
		padding: 0.50rem 0;
	}
}

.group::before {
	content: "";
	width: 100%;
	height: calc(100% - 4.50rem);
	background-color: rgba(176, 192, 150, 0.3);
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 0;
}

@media screen and (max-width: 640px) {
	.group::before {
		height: calc(100% - 3.80rem);
	}
}

.group .text {
	font-family: 'Noto Serif JP', serif;
	font-size: 0.16rem;
	line-height: 2;
	text-align: center;
	max-width: 10.00rem;
	margin: auto;
}

@media screen and (max-width: 640px) {
	.group .text {
		font-size: 0.14rem;
		text-align: justify;
	}
}

.group_list_wrap .list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 -0.30rem;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list {
		display: block;
		margin: 0;
	}
}

.group_list_wrap .list .detail {
	width: 100%;
	max-width: 2.80rem;
	margin: 0.80rem 0.15rem 0;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail {
		margin: 0.40rem 0 0;
	}
}

.group_list_wrap .list .detail a {
	color: #111;
}

.group_list_wrap .list .detail .ph_wrap {
	width: 100%;
	height: 2.20rem;
	overflow: hidden;
	border-radius: 0.10rem;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .ph_wrap {
		height: 56vw;
		border-radius: 0.06rem;
	}
}

.group_list_wrap .list .detail a:hover .ph_wrap img {
	transform: scale(1.04);
}

.group_list_wrap .list .detail .group_title {
	font-family: 'Noto Serif JP', serif;
	font-size: 0.18rem;
	font-weight: 600;
	text-align: center;
	padding: 0.15rem 0;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .group_title {
		font-size: 0.16rem;
		padding-bottom: 0.10rem;
	}
}

.group_list_wrap .list .detail .text {
	font-size: 0.13rem;
	line-height: 1.75;
	padding-bottom: 0.15rem;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .text {
		font-size: 0.13rem;
		text-align: center;
		padding-bottom: 0.10rem;
	}
}

.group_list_wrap .list .detail .more_btn {
	width: 100%;
	max-width: 3.20rem;
	margin: auto;
	position: relative;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .more_btn {
		max-width: 3.00rem;
	}
}

.group_list_wrap .list .detail .more_btn span {
	display: block;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-size: 0.16rem;
	line-height: 0;
	padding: 0.24rem 0 0.26rem;
	border: 1px solid #111;
	border-radius: 0.50rem;
	transition: all 0.3s;
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .more_btn span {
		font-size: 0.15rem;
		padding: 0.20rem 0 0.22rem;
	}
}

.group_list_wrap .list .detail a:hover .more_btn span {
	background-color: #111;
	color: #FFF;
}

.group_list_wrap .list .detail .more_btn span::after {
	content: "";
	width: 0.26rem;
	height: 0.11rem;
	background-image: url(../common/img/icon_arrow2_black.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 0.20rem;
	top: 48%;
	transform: translateY(-50%);
}

@media screen and (max-width: 640px) {
	.group_list_wrap .list .detail .more_btn span::after {
		width: 0.20rem;
		height: 0.10rem;
		right: 0.15rem;
	}
}

.group_list_wrap .list .detail a:hover .more_btn span::after {
	background-image: url(../common/img/icon_arrow2_white.svg);
}

/* バナー */
.group_list_wrap .bnr_wrap {
	width: 100%;
	max-width: 6.00rem;
	margin: 0.50rem auto 0;
}

.group_list_wrap .bnr_wrap a:hover {
	opacity: 0.7;
}

/*============================
フッター
============================*/
footer {
	background-color: #264526;
	padding: 0.50rem 0;
	text-align: center;
}

@media screen and (max-width: 640px) {
	footer {
		padding: 0.30rem 0;
	}
}

footer .logo {
	width: 1.90rem;
	margin: auto;
	padding-bottom: 0.40rem;
}

@media screen and (max-width: 640px) {
	footer .logo {
		width: 1.00rem;
		padding-bottom: 0.20rem;
	}
}

footer .logo img {
	display: block;
}

footer .copyright {
	color: #FFF;
	font-size: 0.14rem;
	font-family: 'Noto Serif JP', serif;
}

@media screen and (max-width: 640px) {
	footer .copyright {
		font-size: 0.10rem;
	}
}