
@charset "utf-8";

/*===========================================================================*/

/*上書き、共通など

js-addclass-scroll-pattern
data-addname="fv_image_anime"

*/

/*===========================================================================*/



html {
  -webkit-font-smoothing: antialiased;
}

.thispage_contents_wrap {
  width: 100%;
  margin: auto;
  padding: 0 0 120px;
  text-align: left;
}

.thispage_contents_wrap,
.thispage_contents_wrap li,
.thispage_contents_wrap dd {
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: left;
}

.thispage_contents_wrap p {
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: left;
	margin: 0;
  padding: 0;
}

.thispage_contents_wrap table,
.thispage_contents_wrap td,
.thispage_contents_wrap th {
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: left;
}

.thispage_contents_wrap .small { font-size: 1rem !important; }
.thispage_contents_wrap .big {
  line-height: 1.6;
  zoom: 1.7;
}

.thispage_contents_wrap strong {font-weight: bold;}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
.clearfix {
	zoom: 1;
}

.tx_center {
  text-align: center;
}

.pink {
  color: #ff009f;
}




/*テキストリンク*/

.normal_button {
  display: inline-block;
  margin: 0;
  padding: 10px 40px;
  color: #ffffff;
  font-weight: bold;
  font-size: 2rem;
  background-color: #2ba738;
  transition: all 0.2s;
  -webkit-transition: all 0.2s;
}

.normal_button:hover {
  background-color: #2bc0b6;
}

.mt {
  margin-top: 2em;
}


/*SP、PC切り替え*/

.sp{display: none;}
.pc{display: block;}




/*===========================================================================*/
/*アニメーション設定*/

/*FV　イメージ写真*/

.fv_img_anime h1 {
  -webkit-animation: alpha_start 1s forwards;
  animation: alpha_start 1s forwards;
}





/*===========================================================================*/

/*
全体レイアウト要素
*/

/*===========================================================================*/

.section_block {
  position: relative;
  margin: 3em 0px 10em 0px;
}

.section_block .inner {
  position: relative;
  max-width: 1000px;
  width: calc(100% - 20px);
  margin: 0 auto;
}



/*波系背景　上下に波系　位置と順番によって調整が必要*/
.wave_bg {
  position: relative;
  margin-top: 100px;
  padding: 0;
}
.wave_bg::before {
  content: '';
  display: block;
  position: absolute;
  top: -100px;
  left: 0px;
  width: 100%;
  height: 100px;
}
.wave_bg::after {
  content: '';
	z-index: 1;
  display: block;
  position: absolute;
  bottom: -100px;
  left: 0px;
  width: 100%;
  height: 100px;
}

.wave_bg[data-bgcolor="green"] {
  background-color: #d1e7b9;
	margin-bottom: 100px;
}
.wave_bg[data-bgcolor="green"]::before{
	background: url(../img/bgcolorele/green_top.png) left top repeat-x;
  background-size: auto 100%;
}
.wave_bg[data-bgcolor="green"]::after{
	background: url(../img/bgcolorele/green_bottom.png) left top repeat-x;
  background-size: auto 100%;
}



.wave_bg[data-bgcolor="orange"] {
  margin-top: -100px;/*改修*/
  padding-top: 100px;/*改修*/
  background-color: #fddfb4;
}
.wave_bg[data-bgcolor="orange-del"]::before{/*不要*/
	background: url(../img/bgcolorele/orange_top.png) left top repeat-x;
  background-size: auto 100%;
}
.wave_bg[data-bgcolor="orange"]::after{
	background: url(../img/bgcolorele/orange_bottom.png) left top repeat-x;
  background-size: auto 100%;
}




.wave_bg[data-bgcolor="pink"] {
  background-color: #fcc5e5;
}
.wave_bg[data-bgcolor="pink"]::before{
	background: url(../img/bgcolorele/yellow_top.png) left top repeat-x;
  background-size: auto 100%;
}
.wave_bg[data-bgcolor="pink"]::after{
	background: url(../img/bgcolorele/yellow_bottom.png) left top repeat-x;
  background-size: auto 100%;
}



/*波系背景　下だけ波系*/
.wave_bottom_bg {
  position: relative;
  margin: 0px 0 200px 0;
  padding: 100px 0 0 0;
}
.wave_bottom_bg::before {
  content: '';
  display: block;
  position: absolute;
  bottom: -100px;
  left: 0px;
  width: 100%;
  height: 100px;
}


.wave_bottom_bg[data-bgcolor="pink"] {
  background-color: #fddcf0;
	margin-bottom: 20px;
}
.wave_bottom_bg[data-bgcolor="pink"]::before{
	background: url(../img/bgcolorele/pink_bottom.png) left top repeat-x;
  background-size: auto 100%;
}


.stripe_bg {
  background: url(../img/common/stripe.png) center center repeat;
  background-size: 20px;
}

.dotbg::before {
  content: "";
  display: block;
  position: absolute;
  top: 120px;
  width: 100%;
  height: calc(100% - 120px);
  background: url(../img/common/dot.png) center center repeat;
  background-size: 8px;
}

.section_block img {
  max-width: 100%;
  height: auto;
}

.third {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
	grid-gap: 40px 20px;
}

.half {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
	grid-gap: 40px 20px;
}


.cel {
  position: relative;
}





/*===========================================================================*/

/*FV*/

/*===========================================================================*/

.fv {
  z-index: 1;
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  padding: 0;
  height: 700px;
  width: 100%;
  overflow: hidden;
}

.fv h1 {
	z-index: 10;
	/*opacity: 0;*/
	position: absolute;
	top: 200px;
	left: calc(50% - 300px);
  display: block;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 280px;
  height: 0 !important;
  width: 600px;
  line-height: 250%;
	background: url(../img/fv/kv_text.svg?2) center center no-repeat;
  background-size: 100%;
}

.fv .fv_inner1 {
  position: absolute;
  margin: 0px auto 0px auto;
  padding: 0px 0px 0px 0px;
  width: calc(4350px * var(--pst));
  height: calc(1200px * var(--pst));
}

.fv .fv_inner {
  margin: 0 auto 0 auto;
  padding: 0;
  width: 100%;
  height: 700px;
	background: url(../img/fv/kv_images.jpg) top center repeat-x;
  background-size: auto 100%;
	-webkit-animation: animname_fv_bg linear 110s infinite;
	animation: animname_fv_bg linear 110s infinite;
}
@keyframes animname_fv_bg {
	0% { background-position: 0 0; }
	100% { background-position: -2540px 0; }
}


/*
背景画像箇所
元サイズの高さ　1200／表示サイズ　700　約58%
*/

:root {
	--pst: 0.58;
}


.fv .fv_inner img {
  position: absolute;
  opacity: 0;
}

.fv::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/fv/fb_bottom_image.png) bottom center repeat-x;
  background-size: auto 100%;
}



/*===========================================================================*/

/*ホテルのおすすめ紹介*/

/*===========================================================================*/

.omocha {
  position: relative;
}

.omocha h1 {
  display: block;
  overflow: hidden;
  margin: -50px auto 0 auto;
  margin-bottom: 5em;
  padding-top: 320px;
  height: 0 !important;
  width: 400px;
  line-height: 250%;
	background: url(../img/corner_image_omocha.svg?2) center center no-repeat;
	background-size: 100%;
}

.omocha h2 {
  display: block;
  overflow: hidden;
  margin: 0 auto;
  margin-bottom: 2em;
  padding-top: 100px;
  height: 0 !important;
  width: 100%;
	max-width: 900px;
  line-height: 250%;
	background: url(../img/omocha/corner_title.svg) center left no-repeat;
	background-size: auto 100%;
}

/*
施設のイメージ写真
・横幅80%、最大値が900px
・画像サイズは1200px * 800pxで固定
・liのサイズはjsで設定
・ulのスタート座標もjsで設定
*/
.omocha_facility_img{
position: relative;
height: 900px;/*初期値*/
}

.omocha_facility_img ul {
	position: absolute;
  margin: 0;
  padding: 0;
  list-style: none;
  /*width: calc(900px * 3);*/
  display: flex;
}

.omocha_facility_img li {
	margin-left: 5px;
	margin-right: 5px;
}

.omocha_facility_img .op {
	-webkit-animation: animname_op 1s forwards;
	animation: animname_op 1s forwards;
	
}

@keyframes animname_op {
	0% { opacity: 1; transform: scale(1); }
	100% { opacity: .5; transform: scale(.9); }
}

.omocha_facility_img li img {
  border-radius: 20px;
}

.omocha_facility_img .kids {
  position: absolute;
  top: -170px;
  left: 50%;
  display: block;
  overflow: hidden;
  margin: 0;
	margin-left: -650px;
  padding-top: 600px;
  height: 0 !important;
  line-height: 250%;
  width: 240px;
  background: url(../img/omocha/kids.png) center center no-repeat;
  background-size: 100%;
	transform: rotate(-4deg);
}


.omocha_facility_img .left {
  position: absolute;
  top: calc(50% - 50px);
  left: 5%;
  display: block;
  overflow: hidden;
  margin: 0;
  padding-top: 100px;
  height: 0 !important;
  line-height: 250%;
  width: 40px;
  background: url(../img/hotel/how_to_spend_left.svg) center center no-repeat;
  background-size: 100%;
}

.omocha_facility_img .right {
  position: absolute;
  top: calc(50% - 50px);
  right: 5%;
  display: block;
  overflow: hidden;
  margin: 0;
  padding-top: 100px;
  height: 0 !important;
  line-height: 250%;
  width: 40px;
  background: url(../img/hotel/how_to_spend_right.svg) center center no-repeat;
  background-size: 100%;
}



/*施設の説明枠*/

.facility_info {
  margin: 0 auto 0 auto;
  padding: 30px 0 0 0;
  width: calc(100% - 20px);
  max-width: 1100px;
}

.facility_info img {
  position: relative;
  border-radius: 20px;
}

.facility_info h3 {
  position: relative;
  margin: -10px auto 0 auto;
  padding: 5px 0;
  width: 90%;
  text-align: center;
  font-weight: bold;
  font-size: 1em;
  color: #2ba738;
  border-radius: 999px;
  background-color: #ffffff;
  border: 2px solid #2ba738;
}

.facility_info p {
  position: relative;
  margin: 5px auto 0 auto;
  padding: 0 10px;
  width: 90%;
}


/*もっと見るの挙動はmore_info.jsで設定*/

.facility_info .more {
  margin-top: 20px;
  height: 0;
  overflow: hidden;
}


.facility_info .more_link {
  display: block;
  margin: 10px 0 10px 0;
  padding: 10px 0;
  text-align: center;
  font-weight: bold;
  color: #ffffff;
  border-radius: 10px;
  background-color: #2ba738;
}

.facility_info .more_link span {
  display: inline-block;
  background: url(../img/omocha/more_link.svg) left center no-repeat;
  background-size: 15px;
  padding: 0 0 0 20px;
}




/*===========================================================================*/

/*ホテルと宿泊プランのご紹介*/

/*===========================================================================*/

/*エリア*/

.hotel {
position: relative;
background-color:#f7fbf3;
}

.hotel .inner {
	padding-bottom: 40px;
}

.hotel .stripe_bg {
	padding-top: 40px;
	padding-bottom: 20px;
}

.hotel::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/hotel/hotel_bottom_image.png) top center repeat-x;
  background-size: auto 100%;
}

.hotel h1 {
  display: block;
  overflow: hidden;
  margin: -50px auto 0 auto;
  margin-bottom: 5em;
  padding-top: 320px;
  height: 0 !important;
  width: 400px;
  line-height: 250%;
	background: url(../img/corner_image_hotel.svg) center center no-repeat;
	background-size: 100%;
}

.hotel .ctg_title {
  display: block;
  overflow: hidden;
  margin: 0;
  margin-bottom: 2em;
  padding-top: 70px;
  height: 0 !important;
  width: 100%;
  line-height: 250%;
	background-size: auto 100%;
}

.hotel .ctg_title.t1 {
  background: url(../img/hotel/pc_title_1.svg) center center no-repeat;
}
.hotel .ctg_title.t2 {
  background: url(../img/hotel/pc_title_2.svg) center center no-repeat;
}
.hotel .ctg_title.t3 {
  background: url(../img/hotel/pc_title_5.svg) center center no-repeat;
}
.hotel .ctg_title.t4 {
  background: url(../img/hotel/pc_title_3.svg) center center no-repeat;
}
.hotel .ctg_title.t5 {
  background: url(../img/hotel/pc_title_4.svg) center center no-repeat;
}
.hotel .ctg_title.t6 {
  background: url(../img/hotel/pc_title_6.svg) center center no-repeat;
}

.hotel .ctg_title.t2_image {
  background: url(../img/hotel/pc_title_2_image.svg) center center no-repeat;
	padding-top: 100px;
}

.hotel .ctg_title.t3_image {
  background: url(../img/hotel/pc_title_5_image.svg) center center no-repeat;
	padding-top: 100px;
}

.hotel .ctg_title.t7_image {
  background: url(../img/hotel/pc_title_7_image.svg) center center no-repeat;
	padding-top: 130px;
}


/*うれしいポイント1*/

p.happy_point1 {
  display: block;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 250px;
  height: 0 !important;
  width: 800px;
  line-height: 250%;
  background: url(../img/hotel/happy1_1.svg) center center no-repeat;
  background-size: 100%;
}

/*プラン枠*/

.plan_flame {
  position: relative;
  margin: 0;
  padding: 30px 30px 10px 30px;
  background-color: #ffffff;
  border-radius: 20px;
}

.plan_flame h3 {
  margin: -20px 0 20px 0;
  padding: 10px 0 10px 60px;
  font-size: 2.3em;
  font-weight: bold;
}

/*概要全体*/

.plan_flame .plan_overview {
  position: relative;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  grid-gap: 20px;
}

.plan_flame .plan_overview .photo img {
  border-radius: 20px;
}

.plan_flame .plan_overview h4 {
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 1em;
}


/*概要　説明文*/

.plan_flame .plan_overview .special {
  position: relative;
  margin: 0 0 10px 0;
  padding: 10px 10px 10px 4em;
  border: 1px solid #b7b8b5;
	background-color:#ffffff;
}

.plan_flame .plan_overview .special i {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  padding: 10px;
  font-weight: bold;
  font-size: .9em;
  color: #858a8e;
	font-style: normal;
}

/*概要　価格*/

.plan_flame .plan_overview .price {
  position: relative;
  margin: 0 0 10px 0;
  padding: 0;
  font-size: 2em;
	font-weight: bold;
  /*border-bottom: 3px solid #b7b8b5;*/
}

.plan_flame .plan_overview .price .small {
  display: inline-block;
	margin-top: 1em;
  font-size: .5em !important;
}

.plan_flame .plan_overview .price .en::before {
  content: "￥";
  font-size: .8em;
}

.plan_flame .plan_overview .roominfo {
  position: relative;
  margin: 40px 0 0 0;
  padding: 10px;
  /*font-size: .8em;*/
  border: 1px solid #858a8e;
  border-radius: 20px;
}

.plan_flame .plan_overview .roominfo::after {
  content: "";
  position: absolute;
  top: -7px;
  right: 20%;
  display: block;
  width: 20px;
  height: 20px;
  transform: scale(.5, 1) rotate(45deg);
  border-left: 2px solid #858a8e;
  border-top: 2px solid #858a8e;
}



/*
過ごし方
高さと幅はjsで定義
*/

.plan_flame .how_to_spend {
  box-sizing: border-box;
  position: relative;
  margin: 20px 0 0 -30px;
  padding: 0;
  width: calc(100% + 60px);
  /*height: 280px;*/
  overflow: hidden;
}


.plan_flame .how_to_spend * {
  box-sizing: border-box;
}

.plan_flame .how_to_spend ul {
  position: absolute;
  top: 0;
  left: 300px;
  margin: 0;
  padding: 0;
  height: 250px;
  display: table;
  table-layout: fixed;
}

.plan_flame .how_to_spend li {
  margin: 0;
  padding: 0;
  display: table-cell;
}

.plan_flame .how_to_spend .offpanel {
	-webkit-animation: animname_how_to_spend 1s forwards;
	animation: animname_how_to_spend 1s forwards;
}

.plan_flame .how_to_spend .onpanel {
	-webkit-animation: animname_how_to_spend_on 1s forwards;
	animation: animname_how_to_spend_on 1s forwards;
}

.plan_flame .how_to_spend .offpanel img {
	opacity: .6;
}

@keyframes animname_how_to_spend {
	0% { transform: scale(1); }
	100% { transform: scale(.9); }
}

@keyframes animname_how_to_spend_on {
	0% { transform: scale(.9); }
	100% { transform: scale(1); }
}

.plan_flame .how_to_spend .inner_box {
  margin: 10px;
  padding: 20px;
  /*height: calc(100% - 20px);*/
  border-radius: 30px;
	background-color:#ffffff;
	border:1px solid #dbe4dc;
}



.plan_flame .how_to_spend .inner_box dl {
  position: relative;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  grid-gap: 20px;
	align-items: center;
}

.plan_flame .how_to_spend .inner_box img {
  border-radius: 20px;
}

.plan_flame .how_to_spend .inner_box dt,
.plan_flame .how_to_spend .inner_box dd {
  position: relative;
  margin: 0;
  padding: 0;
}

.plan_flame .how_to_spend .gotohote::after{
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: -75px;
  width: 70px;
  height: 120%;
  background: url(../img/hotel/gotohotel.svg) bottom center no-repeat;
  background-size: 100%;
}


.plan_flame .how_to_spend .left {
  position: absolute;
  top: calc(50% - 50px);
  left: 5%;
  display: block;
  overflow: hidden;
  margin: 0;
  padding-top: 100px;
  height: 0 !important;
  line-height: 250%;
  width: 40px;
  background: url(../img/hotel/how_to_spend_left.svg) center center no-repeat;
  background-size: 100%;
}

.plan_flame .how_to_spend .right {
  position: absolute;
  top: calc(50% - 50px);
  right: 5%;
  display: block;
  overflow: hidden;
  margin: 0;
  padding-top: 100px;
  height: 0 !important;
  line-height: 250%;
  width: 40px;
  background: url(../img/hotel/how_to_spend_right.svg) center center no-repeat;
  background-size: 100%;
}

.plan_flame .balloon_text{
  display: block;
	z-index: 1;
  position: absolute;
  top: 0px;
	left: -10px;
  display: block;
  overflow: hidden;
  margin: 0;
  padding-top: 90px;
  height: 0 !important;
  line-height: 250%;
  width: 90px;
  background: url(../img/hotel/ticket_8.svg) center center no-repeat;
  background-size: 100%;
}

.sp_accordion_link_set,
.sp_plan_link {
  display: none;
}

.plan_link {
  text-align: center;
  margin-top: 10px;
}

.plan_link::after {
  content: "";
  display: block;
  position: absolute;
  top: -25px;
  right: 120px;
  width: 15px;
  height: 40px;
	border-radius: 999px;
  background-color:#d7e9cd;
}

.plan_link::before {
  content: "";
  display: block;
  position: absolute;
  top: -25px;
  left: 120px;
  width: 15px;
  height: 40px;
	border-radius: 999px;
  background-color:#d7e9cd;
}

.plan_link strong,
.other_link strong {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  padding-left: 30px;
  font-size: 1.3em;
}

.plan_link strong::before,
.other_link strong::before {
  content: "／";
  display: block;
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 25px;
  height: 25px;
	text-align: center;
}

.plan_link strong::after,
.other_link strong::after {
  content: "＼";
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 25px;
  height: 25px;
	text-align: center;
}

.plan_link a,
.other_link a {
  display: block;
  margin: 20px 0 0 0;
  padding: 10px 0 10px 0;
  background-color: #007e05;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.3em;
  border-radius: 999px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.plan_link a:hover,
.other_link a:hover {
	opacity: 0.7;
}

.other_link2 {
  text-align: center;
}

.other_link2 strong {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  padding-left: 30px;
  font-size: 1.3em;
}

.other_link2 strong::before {
  content: "／";
  display: block;
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 25px;
  height: 25px;
	text-align: center;
}
.other_link2 strong::after {
  content: "＼";
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 25px;
  height: 25px;
	text-align: center;
}

.other_link2 a {
  display: block;
  margin: 20px 0 0 0;
  padding: 10px 0 10px 0;
  background-color: #f39700;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.3em;
  border-radius: 999px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.other_link2 a:hover {
	opacity: 0.7;
}

/*単独ボタン*/

a.plan_link_btn {
  display: block;
  margin: 20px 0 0 0;
  padding: 10px 30px;
  background-color: #007e05;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.3em;
	text-align: center;
  border-radius: 999px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

a.plan_link_btn:hover {
	opacity: 0.7;
}




/*ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
/*個別プラン設定 おもちゃ王国フリーパス付プランと森の夏休み体験付きプラン*/

.plan1 {
	background-color:#ffffff;
	border:4px solid #96d056;
}

.plan1::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  right: 10px;
  width: 130px;
  height: 80px;
  background: url(../img/hotel/plan1_mark.svg) center center no-repeat;
  background-size: 100% auto;
}

.plan1 h3 {
  color: #2ba738;
	line-height: 1.4;
}

.plan1 h3 span {
  display: block;
  margin: 0;
  padding: 0;
  font-size: .6em;
}

.plan1 h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  left: 20px;
  width: 35px;
  height: 80px;
  background: url(../img/hotel/plan1_ribon.svg) top center no-repeat;
  background-size: 100%;
}

.plan1 .plan_overview .special {
  border: 1px solid #2ba738;
}

.plan1 .how_to_spend {
  background: url(../img/hotel/plan1_how_to_spend.svg) center left 110px no-repeat;
  background-size: 150px;
}

.plan1_link {
	border:4px solid #96d056;
	background-color:#ffffff;
	color:#2ba738;
}

.plan1_link::after {
  background-color: #2ba738;
}

.plan1_link::before {
  background-color: #2ba738;
}


/*森の夏休み体験付きプラン　上書き修正*/

.plan1.experience_plan::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  right: 10px;
  width: 130px;
  height: 80px;
  background: url(../img/hotel/plan4_mark.svg) center center no-repeat;
  background-size: 100% auto;
}

.experience_plan h2 {
  display: none;
}

.experience_plan h3 {
  margin: -20px 0 20px 0;
  padding: 10px 0 10px 100px;
  font-size: 1.5em;
  color: #2ba738;
}

.experience_plan h3 span {
  display: block;
  margin: 0;
  padding: 0;
  font-size: .6em;
}

.experience_plan h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -30px;
  left: -40px;
  width: 150px;
  height: 100px;
	transform: rotate(-4deg);
  background: url(../img/hotel/balloon_text4.svg) top center no-repeat;
  background-size: 100%;
}

.experience_plan .plan_overview .special {
  border: 1px solid #2ba738;
	margin-top: 20px;
}

.experience_plan_link {
  text-align: center;
  margin-top: 10px;
}

.experience_plan_link a {
  display: block;
  margin: 30px 0;
  padding: 20px 0;
  background-color: #007e05;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.3em;
  border-radius: 999px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.experience_plan_link a:hover {
	opacity: 0.7;
}


/*森のハロウィン体験付きプラン　上書き修正*/

.plan1.halloween_plan::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  right: 10px;
  width: 130px;
  height: 80px;
  background: url(../img/hotel/plan5_mark.svg) center center no-repeat;
  background-size: 100% auto;
}

.halloween_plan h2 {
  display: none;
}

.halloween_plan h3 {
  margin: -20px 0 20px 0;
  padding: 10px 0 10px 100px;
  font-size: 1.5em;
  color: #2ba738;
}

.halloween_plan h3 span {
  display: block;
  margin: 0;
  padding: 0;
  font-size: .6em;
}

.halloween_plan h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -30px;
  left: -40px;
  width: 150px;
  height: 100px;
	transform: rotate(-4deg);
  background: url(../img/hotel/balloon_text4.svg) top center no-repeat;
  background-size: 100%;
}

.halloween_plan .plan_overview .special {
  border: 1px solid #2ba738;
	margin-top: 20px;
}

.halloween_plan_link {
  text-align: center;
  margin-top: 10px;
}

.halloween_plan_link a {
  display: block;
  margin: 30px 0;
  padding: 20px 0;
  background-color: #007e05;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.3em;
  border-radius: 999px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.halloween_plan_link a:hover {
	opacity: 0.7;
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*お子様ファーストのお部屋*/

.inner.plan2_3 {
  margin-top: 0px;
  margin-bottom: 0px;
}

.plan2 {
  border: 4px solid #fbb849;
	background-color:#fef6ea;
}

.plan2::before {
  content: "";
  display: block;
  position: absolute;
  top: -40px;
  right: 10px;
  width: 130px;
  height: 120px;
  background: url(../img/hotel/plan2_mark.svg) center center no-repeat;
  background-size: 100% auto;
}

.plan2 h3 {
  color: #ed7602;
	line-height: 1.4;
}

.plan2 h3 span {
  display: block;
  margin: 0;
  padding: 0;
  font-size: .6em;
}

.plan2 h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  left: 20px;
  width: 35px;
  height: 80px;
  background: url(../img/hotel/plan3_ribon.svg) top center no-repeat;
  background-size: 100%;
}

.plan2 .plan_overview .special {
  border: 1px solid #f39700;
}

.plan2 .how_to_spend {
  background: url(../img/hotel/plan3_how_to_spend.svg) center left 110px no-repeat;
  background-size: 150px;
}

.plan2 .plan_overview .roominfo_text {
	/*position: absolute;
	top: 0;
	left: 0;*/
  display: block;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 200px;
  height: 0 !important;
  width: 300px;
  line-height: 250%;
  background: url(../img/hotel/balloon_text1_2.png) center center no-repeat;
  background-size: 100%;
}

.plan2 .plan_overview .roominfo_text2 {
	/*position: absolute;
	top: 0;
	left: 0;*/
  display: block;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 200px;
  height: 0 !important;
  width: 300px;
  line-height: 250%;
  background: url(../img/hotel/balloon_text2.png) center center no-repeat;
  background-size: 100%;
}

.plan2_link {
  border: 4px solid #fbb849;
	background-color:#fef6ea;
	color:#ed7602;
}

.plan2_link::after {
  background-color: #fbb849;
}

.plan2_link::before {
  background-color: #fbb849;
}


/*個別プラン設定 赤ちゃんプラン*/

.happiness_room {
	margin-top: 40px;
}

.plan2.happiness_room::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  right: 10px;
  width: 130px;
  height: 80px;
  background: url(../img/hotel/plan3_mark.svg) center center no-repeat;
  background-size: 100% auto;
}

.happiness_link {
  border: 4px solid #fbb849;
	background-color:#fef6ea;
	color:#ed7602;
}

.happiness_link::after {
  background-color: #fbb849;
}

.happiness_link::before {
  background-color: #fbb849;
}

.other_link {
	margin-top: 40px;
	text-align: center;
	color:#ff6d9f;
}




/*シルバニアプラン（メルちゃんプラン）　ここから*/

.plan3 {
  border: 4px solid #fba2d7;
	background-color:#fef6fb;
  margin-top: 30px;
  margin-bottom: 10px;
}

.plan3 h3 {
  color: #ff5d95;
	line-height: 1.4;
}

.plan3 h3 span {
  display: block;
  margin: 0;
  padding: 0;
  font-size: .6em;
}

.plan3 h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  left: 20px;
  width: 35px;
  height: 80px;
  background: url(../img/hotel/plan4_ribon.svg?2) top center no-repeat;
  background-size: 100%;
}

.plan3 .plan_overview .special {
  border: 1px solid #fba2d7;
	margin-top: 20px;
}

.plan3 .photo img {
  border-radius: 20px;
}

.plan3 .half {
  margin-bottom: 20px;
}

.plan3_link {
  border: 4px solid #fba2d7;
	background-color:#fef6fb;
	color:#ff5d95;
}

.plan3_link::after {
  background-color: #fba2d7;
}

.plan3_link::before {
  background-color: #fba2d7;
}






/*===========================================================================*/

/*おなじ敷地内で移動も楽々だからうれしい*/

/*===========================================================================*/

.bus_info {
  display: block;
  overflow: hidden;
  margin: 0 auto;
  margin-bottom: 1em;
  padding-top: 300px;
  height: 0 !important;
  width: 900px;
  line-height: 250%;
	background: url(../img/hotel/pc_bus.svg) center center no-repeat;
	background-size: 100%;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.bus_info:hover {
	opacity: 0.7;
}



/*===========================================================================*/

/*バナー画像（クーポン）*/

/*===========================================================================*/

.banner_image img {
  display: block;
  margin: 0 auto;
  max-width: 800px;
  width: calc(100% - 40px);
}


/*===========================================================================*/

/*お子様が喜ぶホテルサービスがうれしい！*/

/*===========================================================================*/

.section_block .inner.hotel_service {
  padding-top: 80px;
  padding-bottom: 80px;
}

.hotel_service h3 {
  font-size: 1.5em;
	color: #2ba738;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}

.hotel_service h3 i {
  position: relative;
  display: inline-block;
  padding-right: 50px;
  padding-left: 50px;
}

.hotel_service h3 i::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 16px);
  right: 0px;
  width: 40px;
  height: 30px;
	background: url(../img/hotel/hotel_service_right.svg) center center no-repeat;
	background-size: 100%;
}

.hotel_service h3 i::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 16px);
  left: 0px;
  width: 40px;
  height: 30px;
	background: url(../img/hotel/hotel_service_left.svg) center center no-repeat;
	background-size: 100%;
}

.hotel_service .note_block {
  margin-bottom: 50px;
}

.hotel_service .note_block img {
  border-radius: 10px;
}




/*===========================================================================*/

/*シェアボタン*/

/*===========================================================================*/

.share {
	margin-top: 70px;
	padding-bottom: 20px;
}



/*以上です*/
