@charset "UTF-8";
/* CSS Document */

/* =========================================================
 印刷設定
========================================================= */
@media print {
  a::after {
    content: none !important;
  }
}

/* =========================================================
 共通レイアウト
========================================================= */

/* 外枠
--------------------------------------------------------- */
html {
}
body {
	margin: 0;
	height: 100%;
}
p {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
p img {
	width: 100%;
}

/* トップ
--------------------------------------------------------- */
/*=================================================
ヘッダー（中ページ）
=================================================*/
.mainvisual {
	position: relative;
	width: 100%;
	height: 270px;
	padding: 0 5%;
	background: url("../images/mv_line.png") left top repeat-x,
		url("../images/mv_line_bottom.png") left bottom repeat-x,
		url("../images/mainvisual.jpg") no-repeat center center;
    background-size: 240px,
		250px,
		cover;
	box-sizing: border-box;
}
.h2_title_2 {
	position: absolute;
	max-width: 365px;
	width: 30%;
	margin-top: 2%;
}
.h2_title_2 img {
	width: 100%;
}
.h2_title {
	display: block;
	max-width: 165px;
	width: 30%;
	margin: 0 auto;
	margin-top: 100px;
}
.h2_title img {
	width: 100%;
}
.mv_text img{
	display: block;
	width: 326px;
	margin: 0 auto;
}
.mainvisual ul {
	font-size: 18px;
	max-width: 580px;
	width: 100%;
	float: right;
	margin: 0;
	margin-top: 40px;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.mainvisual ul li {
	list-style: none;
}
.mainvisual ul li a {
	color: #554444;
	text-decoration: none;
}
.mainvisual ul li a:hover {
	color: #B09F9F;
}
ul.category {
	display: none;
}
@media screen and (max-width: 1024px){
	.mainvisual {
		width: 100%;
		height: auto;
		background: url("../images/mv_line.png") left top repeat-x,
			url("../images/mv_line_bottom.png") left bottom repeat-x,
			url("../images/mainvisual.jpg") no-repeat center center;
		background-size: 240px,
			250px,
			cover;
		box-sizing: border-box;
	}
	.h2_title_2 {
		position: static;
		max-width: 365px;
		width: 30%;
		margin: 0 auto;
		margin-top: 3%;
	}
	.h2_title {
		display: block;
		margin-top: 5%;
		margin-bottom: 6%;
		width: 100%;
	}
	.mainvisual ul {
		font-size: 16px;
		max-width: 580px;
		width: 100%;
		float: none;
		margin: 0 auto;
		margin-top: 40px;
		padding: 0;
		display: flex;
		justify-content: space-between;
	}
	ul.category {
		display: none;
	}
}
@media screen and (max-width: 768px){
	.h2_title {
		width: 165px;
		max-width: 40%;
	}
	.mainvisual ul.nav_pc {
		display: none;
	}
	ul.category {
		display: block;
	}
	#nav-open {
		display: block;
		position: absolute;
		right: 15px;
		top: 15px;
		width: 40px;
		height: 40px;
	}

	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
	  position: absolute;
	  transition: all 0.4s;
	  height: 4px;/*線の太さ*/
	  width: 40px;/*長さ*/
	  border-radius: 3px;
	  background: #554444;
	  display: block;
	  content: '';
	  cursor: pointer;
	  z-index: 9999;/*最前面*/
	}
	#nav-open span:before {
	  bottom: -12px;
	}
	#nav-open span:after {
	  bottom: -24px;
	}

	/*中身*/
	#nav-content {
	  display: none;
	  position: fixed;
	  width: 100%;
	  height: 100%;
	  top: 0;
	  left: 0;
	  transition: .2s ease-in-out;
	}
	#nav-content.open {
	  display: block;
	  opacity: 1;
	  position: fixed;
	  top: 0;
	  left: 0;
	  z-index: 9998;
	  width: 100%;
	  height: 100%;
	  background: rgba(255, 255, 255, 0.9);/*背景色*/
	  overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
	}

	/*:beforeにぼかし効果を設定する*/
	#nav-content.open:before {
	  content: '';
	  overflow: hidden;
	  -webkit-filter: blur(10px);
	  -moz-filter: blur(10px);
	  -o-filter: blur(10px);
	  -ms-filter: blur(10px);
	  filter: blur(10px);
	  z-index: -1;/*重なり順序を一番下にしておく*/
	}

	/*チェックが入ったら表示する内容*/
	.hamburger-top {
		height: 40px;/*×ボタンと被らないように*/
	}
	.category {
		text-align: center;
		margin-top: 2rem;
		display: flex;
		flex-wrap: wrap;
	}
	.category-title {
		padding: 0.5rem;
		width: 80%;
		margin: 0 auto;
	}
	.category-title a {
	  color: #333;
	  text-decoration: none;
	}

	/*三本線を動かす*/
	#nav-open.active span {
	  -webkit-transform: translateY(8px) rotate(-45deg);
	  transform: translateY(8px) rotate(-45deg);
	}
	#nav-open.active span:before {
	  -webkit-transform: translateY(-8px) rotate(45deg);/*打ち消す*/
	  transform: translateY(-8px) rotate(45deg);/*打ち消す*/
	  opacity: 0;
	}
	#nav-open.active span:after {
	  -webkit-transform: translateY(-23px) rotate(45deg);
	  transform: translateY(-23px) rotate(90deg);
	}
}


/*=================================================
共通部分
=================================================*/
h3.h3_img {
	margin: 80px auto 40px auto;
}
h3 img ,
h4 img {
	width: 100%;
}
p {
	width: 100%;
	font-size: 16px;
	color: #554444;
	line-height: 40px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	letter-spacing: -0.06em;
	margin-bottom: 30px;
}
.btn_blue {
	width: 80%;
	line-height: 60px;
	text-align: center;
	margin: 0 auto;
	background: #877777;
	background-image: url(../images/arrow_white.png);
	background-size: 10px;
	background-repeat: no-repeat;
	background-position: right 10px center;
	margin-bottom: 60px;
}
.btn_blue a {
	color: #fff;
	display: block;
	text-decoration: none;
}
.btn_blue:hover {
    background-color: #A29393;
}
.btn_margin {
	margin-bottom: 60px;
}
@media screen and (max-width: 1400px){
	.sec_concept p br {
		display: none;
	}
	p {
		font-size: 15px;
		line-height: 30px;
		margin-bottom: 30px;
	}
}


/*=================================================
フッター
=================================================*/
footer a {
	color: #053;
	text-decoration: none;
}
footer a:visited {
	color: #053;
	text-decoration: none;
}
footer a:hover ,
footer a:focus {
	color: #053;
	text-decoration: none;
}
footer a:active {
	color: #053;
	text-decoration: none;
}
.f_hotel_mori ul,
.f_hotel_city ul,
.sns {
	padding-left: 0;
	margin-top: 0;
}
.f_hotel_mori li,
.f_hotel_city li,
.sns {
	list-style: none;
}
address .a_img {
	max-width: 480px;
	width: 40%;
	margin-bottom: 15px;
}
address .a_img img {
	width: 100%;
}
address p {
	font-style: normal;
	text-align: center;
	margin-bottom: 0em;
	line-height: normal;
}
.tel {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
}
.tel span {
	font-size: 30px;
}
.car_nav {
	background: #877;
	color: #fff;
	font-weight: bold;
	border-radius: 15px;
	width: 360px;
	line-height: 30px;
	margin-bottom: 10px;
}
.car_nav_2 {
	font-size: 14px;
	margin-bottom: 3%;
}
.car_nav_2 span {
	font-weight: bold;
	font-size: 20px;
}
h4 img {
	width: 100%;
}
footer .footer_about {
	border-top: solid 1px #544;
	padding: 0.5em 0;
}
footer .footer_about a {
	padding: 0 1em;
	display: inline-block;
	border-right: solid 1px #053;
	font-size: 0.9em;
}


/* フッター枠
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	footer {
		display: flex;
		flex-direction: column;
	}
}


/* 姉妹ホテルリンクスライド
--------------------------------------------------------- */
/* 全部のスライドに */
.bx-wrapper .bx-viewport {
	border: none;
	box-shadow: none;
	left: 0;
}
.bx-wrapper .bx-viewport li {
	margin: 0;
}
.slide_hotel {
	padding: 1em 0;
	background: #000;
}
.slide_hotel .bx-wrapper {
	margin: 0;
}
.slide_hotel .bx-wrapper .bx-viewport {
	background: none;
}
.slide_hotel .bx-wrapper .bx-viewport ul.bxslider6 li {
	padding: 0 5px;
}


/* フッター下部
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.footer_wrap {
		position: relative;
		padding: 2em 10px;
		font-size: 70%;
	}
	address {
		margin: 0 auto;
		width: 90%;
	}
	address .a_img {
		width: 70%;
	}
	.car_nav {
		width: 90%;
	}
	.car_nav_2 {
		margin-bottom: 10%;
		text-align: left;
	}
	.car_nav_2 br {
		display: none;
	}
	.car_nav_2 br:first-child {
		display: block;
	}
	.car_nav_2 span {
		display: block;
		font-weight: bold;
		font-size: 13px;
		text-align: center;
	}
}
@media screen and (min-width:768px) , print {
	.footer_wrap {
		position: relative;
		padding: 2em 20px;
		font-size: 70%;
		display: flex;
	}
}


/* 森の風ブランド
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.f_nav {
		text-align: center;
	}
	.f_nav h4 {
		margin: 0 0 1em;
	}
	.f_nav img {
		max-width: 280px;
	}
	.f_nav p > a {
		padding: 0 0 0 10px;
		background: url(../img/arrow_g.png) no-repeat left center;
		background-size: auto 10px;
	}
	.copyright {
		font-size: 60%;
		margin-bottom: 0;
	}
}
@media screen and (min-width:768px) , print {
	.f_nav {
        max-width: 340px;
        min-width: 200px;
        width: 26%;
		text-align: center;
		border-right: 1px solid #b2aa9a;
		padding: 0 2em 0 0;
		margin: 0 2em 0 0;
	}
	.f_nav h4 {
		margin: 0 0 1em;
        padding-top: 27px;
	}
	.f_nav p {
		line-height: 1.4;
	}
	.f_nav p > a {
		padding: 0 0 0 10px;
		background: url(../img/arrow_g.png) no-repeat left center;
		background-size: auto 10px;
	}
}


/* 森の風　姉妹ホテル
--------------------------------------------------------- */
@media screen and (max-width:767px) {
    .f_hotel_wrap {
        max-width: 330px;
        width: 100%;
        margin: 2em auto 0;
        display: flex;
        font-size: 8px;
    }
	.f_hotel_mori {
		float: left;
	}
	.f_hotel_mori h4 {
		font-weight: bold;
		font-size: 130%;
	}
	.f_hotel_mori li {
		padding: 0 0 .2em;
	}
	.f_hotel_mori span {
		background: #053;
		color: #fff;
		display: inline-block;
		padding: .1em .4em;
		font-size: 80%;
	}
}
@media screen and (min-width:768px) , print {
	.f_hotel_mori {
		margin: 0 1em 0 0;
        float: left;
	}
	.f_hotel_mori h4 {
		font-weight: bold;
		font-size: 130%;
	}
	.f_hotel_mori ul {
		padding-left: 0;
		margin-top: 0;
	}
	.f_hotel_mori li {
		padding: 0 0 .2em;
		list-style: none;
	}
	.f_hotel_mori span {
		background: #053;
		color: #fff;
		display: inline-block;
		padding: .1em .4em;
		font-size: 80%;
	}
}


/* シティー　姉妹ホテル
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.f_hotel_city {
		float: right;
	}
	.f_hotel_city h4 {
		font-weight: bold;
		font-size: 130%;
	}
	.f_hotel_city li {
		padding: 0 0 .2em;
	}
	.f_hotel_city span {
		background: #c93;
		color: #fff;
		display: inline-block;
		padding: .1em .4em;
		font-size: 80%;
	}
}
@media screen and (min-width:768px) , print {
	.f_hotel_city {
        float: right;
	}
	.f_hotel_city h4 {
		font-weight: bold;
		font-size: 130%;
	}
	.f_hotel_city ul {
		padding-left: 0;
		margin-top: 0;
	}
	.f_hotel_city li {
		padding: 0 0 .2em;
		list-style: none;
	}
	.f_hotel_city span {
		background: #c93;
		color: #fff;
		display: inline-block;
		padding: .1em .4em;
		font-size: 80%;
	}
}


/* グループとSNS
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.f_link {
		margin: 0 auto 2em;
		width: 200px;
		clear: both;
	}
	.sns {
		display: flex;
		justify-content: space-between;
		margin: 0;
		width: 100%;
	}
	.sns li {
		width: 30%;
		border-radius: 5px;
		text-align: center;
	}
	.sns li.f_sns_t {
		background: #0ae;
	}
	.sns li.f_sns_f {
		background: #35a;
	}
	.sns li.f_sns_i {
		background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
		background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	}
	.sns li a {
		display: block;
	}
	.sns li a img {
		align-items: center;
		width: 16px;
		margin: 10px 0;
	}
	.plan_ol {
		padding-left: 1.4em;
		font-weight: bold;
		line-height: 1.5em;
	}
	.plan_ol li {
		margin-bottom: 5px;
	}
	.plan_ol li span br {
		display: none;
	}
	.plan_ol li span br.hyouji_br {
		display: block;
	}
	.plan_ol li span{
		font-weight: normal;
	}
}
@media screen and (min-width:768px) , print {
	.f_link {
		width: 200px;
		margin: 0 auto 2em;
	}
	.sns {
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.sns li {
		width: 30%;
		border-radius: 5px;
		text-align: center;
		list-style: none;
	}
	.sns li.f_sns_t {
		background: #0ae;
	}
	.sns li.f_sns_f {
		background: #35a;
	}
	.sns li.f_sns_i {
		background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
		background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	}
	.sns li a {
		display: block;
	}
	.sns li a img {
		align-items: center;
		width: 16px;
		margin: 10px 0;
	}
	.plan_ol {
		padding-left: 1.4em;
		font-weight: bold;
		line-height: 1.5em;
		margin-bottom: .8em;
		margin-top: 10px;
	}
	.plan_ol li {
		margin-bottom: 5px;
	}
	.plan_ol li span{
		font-weight: normal;
	}
}


/* 一番下
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.etc {
		text-align: center;
	}
	.etc ul {
		display: none;
	}
	.etc img {
		padding: 0 0 1em;
		width: 120px;
	}
}
@media screen and (min-width:768px) , print {
	.etc {
		background: #eee;
		font-size: 80%;
		display: flex;
		justify-content: space-between;
		padding: 1em 20px;
	}
	.etc ul {
		width: 60%;
		display: flex;
		align-items: center;
		margin: 0;
	}
	.etc li {
		margin-right: 1em;
		border-right: 1px solid #999;
	}
	.etc li a {
		margin-right: 1em;
		padding: .2em 0;
		display: inline-block;
	}
	.etc p {
		width: 120px;
	}
}


/* ページの先頭に戻るボタン
--------------------------------------------------------- */
@media screen and (max-width:767px) {
	.page_top {
		width: 40px;
		height: 40px;
		right: 10px;
		bottom: 10px;
		position: fixed;
		z-index: 1000;
	}
}
@media screen and (min-width:768px) , print {
	.page_top {
		width: 60px;
		height: 60px;
		right: 20px;
		bottom: 0px;
		position: fixed;
		z-index: 1000;
	}
}


/* イベント 季節切替ボタン
--------------------------------------------------------- */
.event_season_box {
	margin: 30px 0;
	margin-bottom: 40px;
}
.event_season_box ul {
	width: 400px;
	margin: 0 auto;
	border: 1px solid #b80;
	display: flex;
	justify-content: space-between;
}
.event_season_box ul li {
	width: 33.33%;
	margin: 0;
	font-weight: normal;
	text-align: center;
	box-sizing: content-box;
	border-right: 1px solid #b80;
}
.event_season_box ul li:last-child {
	border-right: none;
}
.event_season_box ul li a {
	display: block;
	color: #b80;
	padding: 1% 0;
	font-size: 120%;
}
.event_season_box ul li a:hover {
	color: #fff;
	background: #b80;
}
@media screen and (max-width:767px) {
	.event_season_box ul {
		width: 300px;
	}
	footer .footer_about {
		text-align: center;
	}
	footer .footer_about a {
		font-size: 0.8em;
		border: none;
	}
}
.leaf{
	width: 50%;
	max-width: 350px;
	text-align: center;
}



























