@charset 'UTF-8';

/* -------------------------------- general */

#content{
	position: relative;
	margin-top: 100vh;
	z-index: 2;
}
#content.kv_no_scroll{
	margin-top: 0px;
}
#main{
	background: #FFFFFF;
}
.section{
	padding: 0 0 100px;
}

.section_inner{
	max-width: 1200px;
}

.contents_modal_open #reservation_modal{
	position: fixed;
}

@media screen and (max-width:768px) {
	#content{
	}
	#main{
		padding-top: 35px;
	}
	.section,
	.section_bg{
		padding-bottom: 80px;
	}

	.contents_modal_open .hide #reservation_modal{
		top: 60px;
	}
}

.function_menu .item{
	border-color:  rgba(255,255,255,0.5) !important;
}

/* -------------------------------- swiper */

.swiper-pagination{
	display: none !important;
}

.slide-img a:hover{opacity: 1;}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet{
	margin: 0 16px;
}
.swiper-container-horizontal > .swiper-pagination-bullets{
	width: auto;
	left: auto;
	right: 25px;
	bottom: 30px;
}
.swiper-pagination-bullet{
	position: relative;
	width: 4px;
	height: 4px;
	background: #FFFFFF;
	opacity: 1;
}
svg {
	transform: scale(-1,1) rotate(-90deg);
	position: absolute;
	left: calc(-11px + 2px);
	top:  calc(-11px + 2px);
}
.swiper-pagination-bullet circle{display: none;}
.swiper-pagination-bullet-active circle {
	display: block;
	fill: transparent;
	stroke: rgba(255,255,255,0.6);
	stroke-width: 1;
	animation: circle 6s linear infinite;
}
.swiper-pagination.act circle{
	animation: circle 4s linear infinite;
}
@keyframes circle {
  0% { stroke-dasharray: 63 63; }
  99.9%,to { stroke-dasharray: 0 63; }
}

@media screen and (max-width:768px) {
	.swiper-container-horizontal > .swiper-pagination-bullets{
		right: 10px;
		bottom: 20px;
	}
}

/* -------------------------------- mv */

#mv .mv_01 {
  background-image: url(/img/top/mv_Mar_pc.jpg);
}
#mv .mv_02 {
  background-image: url(/img/top/mv_13_pc.jpg);
}
#mv .mv_03 {
  background-image: url(/img/top/mv_14_pc.jpg);
}
#mv .mv_04 {
  background-image: url(/img/top/mv_03_pc.jpg);
}
#mv .mv_05 {
  background-image: url(/img/top/mv_15_pc.jpg);
}
#mv .mv_06 {
  background-image: url(/img/top/mv_16_pc.jpg);
}
#mv .mv_07 {
  background-image: url(/img/top/mv_17_pc.jpg);
}
#mv .mv_newyear {
  background-image: url(/img/top/mv_newyear_pc.jpg);
}
.sp_device #mv .mv_01{
  background-image: url(/img/top/mv_Mar_sp.jpg);
}
.sp_device #mv .mv_02{
  background-image: url(/img/top/mv_13_sp.jpg);
}
.sp_device #mv .mv_03{
  background-image: url(/img/top/mv_14_sp.jpg);
}
.sp_device #mv .mv_04{
  background-image: url(/img/top/mv_03_sp.jpg);
}
.sp_device #mv .mv_05{
  background-image: url(/img/top/mv_15_sp.jpg);
}
.sp_device #mv .mv_06{
  background-image: url(/img/top/mv_16_sp.jpg);
}
.sp_device #mv .mv_07{
  background-image: url(/img/top/mv_17_sp.jpg);
}
.sp_device #mv .mv_newyear {
  background-image: url(/img/top/mv_newyear_sp.jpg);
}
#mv .swiper-container {
	width: 100%;
	height: 100%;
	z-index: 1;
}
#mv .swiper-slide {
	background-position: center;
	background-size: cover;
}
#mv.mv_area{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}
#mv .slide-img{
  min-height: 100vh;
  background-size: cover;
  background-position: center;
}
#mv .swiper-slide-active .slide-img,
#mv .swiper-slide-duplicate-active .slide-img,
#mv .swiper-slide-prev .slide-img{
  animation: zoom 10s linear 0s 1 normal both;
}
@keyframes zoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}

@media screen and (max-width:768px) {
	#mv.mv_area{
	}
}

/* -------------------------------- mv_message */
#mv_message{
	background: transparent;
	position: relative;
	height: 120vh;
}
#mv_message .text{
	position: relative;
	top: calc((100vh - 482px) / 2);
	width: 344px;
	height: 560px;
	left: calc(50% - 172px);
	font-size: 2.3rem;
	color: #FFFFFF;
	letter-spacing: 0.15em;
	line-height: 3;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}
#mv_message .text.text_newyear{
	top: calc((100vh - 315px) / 2);
	left: calc(50% - 218px);
}

@media screen and (max-width:768px) {
	#mv_message{
	}
	#mv_message .text{
		width: auto;
		height: auto;
		font-size: 1.4rem;
		font-weight: bold;
    top: 0;
		left: 0;
    margin-left: auto;
    margin-right: auto;
	}
	#mv_message .text.text_newyear{
		top: 39vh;
		left: 0;
	}
}

/* -------------------------------- btn_block */

#btn_block .btn_block{
	padding: 80px 0;
	display: table;
	margin: 0 auto;
}
#btn_block .btn_block p{
	display: table-cell;
	width: 310px;
	padding: 0 8px;
}
#btn_block .btn_block .link_next_btn{
	display: table;
	width: 100%;
	float: left;
	margin-right: 1.5%;
	padding: 25px 15px;
	line-height: 1.3;
	cursor: pointer;
}
#btn_block .btn_block .link_next_btn span{
	display: table-cell;
	vertical-align: middle;
}
#btn_block .btn_block .link_next_btn._red,
#btn_block .btn_block .link_next_btn._green{
	width: 100%;
}
#btn_block .btn_block .link_next_btn._green{
	margin-right: 2.3%;
}
#btn_block .btn_block .btn:last-child .link_next_btn{
	margin-right: 0;
}

@media screen and (max-width:768px) {
	#btn_block .btn_block{
		padding: 0 0 80px;
		display: block;
	}
	#btn_block .btn_block p{
		display: block;
		width: 100%;
		padding: 0;
	}
}

/* -------------------------------- date_block */

.date_block {
	max-width: 930px;
	margin: 0 auto 80px;
	padding: 0 8px;
}

.date_block .txt {
	font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.date_block dl {
	display: flex;
  flex-wrap: wrap;
}

.date_block dl dt {
	margin-right: 20px;
}

.date_block dl a {
	color: #0A581A;
	text-decoration: underline;
}

@media screen and (max-width:768px) {
	.date_block li {
		margin-bottom: 10px;
	}
}

/* -------------------------------- scrolldown */

#scrollDown.scrollDown_scroll {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: calc(50% - 30px);
    bottom: 0;
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
		z-index: 100;
}
#scrollDown .text {
		font-size: 1.2rem;
		letter-spacing: 2px;
    color: #ffffff;
		font-weight: lighter;
		font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
		padding-bottom: 60px;
}
#scrollDown .text span {
	position: absolute;
	width: 1px;
	height: 50px;
	bottom: 0;
	background-color: #FFFFFF;
	left: 50%;
	overflow: hidden;
}
#scrollDown .text span:before {
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	background: #222728;
	position: absolute;
	top: 0;
	left: 0;
	animation: scroll 2s infinite normal;
}
@keyframes scroll{
	0%{
		transform:translateY(-100%)
	}
	15%{
		transform:translateY(-98%)
	}
	85%{
		transform:translateY(98%)
	}
	100%{
		transform:translateY(100%)
	}}

@media screen and (max-width:768px) {
	#scrollDown.scrollDown_scroll{

	}
	#btn_block .btn_block .link_next_btn,
	#btn_block .btn_block .link_next_btn._red,
	#btn_block .btn_block .link_next_btn._green{
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	#btn_block .btn_block .btn:last-child .link_next_btn{
		margin-bottom: 0;
	}
}

/* -------------------------------- news */

#news{
	background: url(/img/top/bg_news_right.png) no-repeat right 80px,url(/img/top/bg_news_left.png) no-repeat left bottom 120px,url(/common/img/bg_01.png) repeat left top;
	background-size: 29%,23%,auto;
}
#news .section_inner{
	margin-top: 55px;
}
#news .news_wrap{
/*	width: 85%;*/
	margin: auto;
}
#news .banner_01 {
	text-align: center;
}
#news .topic{
	margin-bottom: 40px;
}
#news .topic .link{
	position: relative;
	display: table;
	table-layout: fixed;
	width: 100%;
}
#news .topic .link::after {
	content: '';
	position: absolute;
	width: 18px;
	height: 18px;
	bottom: 30px;
	right: 30px;
	margin: auto;
	background-image: url(/common/img/icon_arrow_r.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	vertical-align: middle;
}
#news .topik_col2 .topic .link::after {
	bottom: 15px;
	right: 15px;
}
#news .topic .img {
	position: relative;
	display: table-cell;
	width: 50%;
	vertical-align: middle;
	background:#FFFFFF;
}
.img .swiper-pagination-bullet circle {
    display: none;
}
.img .swiper-pagination {
	display: block!important;
    position: absolute;
	bottom: 15px!important;
    z-index: 10;
}
.img .swiper-pagination-bullet-active circle {
	display: block;
	fill: transparent;
	stroke: rgba(255,255,255,0.6);
	stroke-width: 1;
	animation: circle 6s linear infinite;
}

#news .topic .text{
	display: table-cell;
	width: 50%;
	vertical-align: middle;
	background: #FFFFFF;
	padding: 0 6%;
}
#news .topic .text .date{
	display: inline-block;
	vertical-align: middle;
}
#news .topic .text .tag{
	display: inline-block;
	vertical-align: middle;
	font-size: 1rem;
	line-height: 1.7;
	min-width: 6em;
	text-align: center;
	margin-left: 0em;
	color: #0A581A;
	border: #0A581A 1px solid;
}
#news .topic .text .ttl{
	font-weight: bold;
	margin-top: 10px;
	font-size: 1.8rem;
}
#news .topic .text .txt{
	margin-top: 10px;
	font-size: 1.4rem;
}
#news .topik_col2 .topic{
	width: 48%;
	float: left;
}
#news .topik_col2 .topic:first-child{
	margin-right: 4%;
}
#news .topik_col2 .topic .ttl{
	font-size: 1.4rem;
}
#news .more_acd_btn{
	margin-top: 40px;
}
@media screen and (max-width:768px) {
	#news{
		background: url(/img/top/bg_news_right_sp.png) no-repeat right 75px,url(/img/top/bg_news_left_sp.png) no-repeat left bottom 40px,url(/common/img/bg_01.png) repeat left top;
		background-size: 38%,38%,auto;
	}
	#news .news_wrap{
		width: 100%;
	}
	#news .topic{
		margin-bottom: 15px;
	}
	#news .topic .link,
	#news .topic .img,
	#news .topic .text{
		display: block;
		width: 100%;
	}
	#news .topic .text .tag{
		margin-left: 0em;
	}
	#news .topik_col2 .topic{
		width: 48.6%;
	}
	#news .topik_col2 .topic:first-child {
    margin-right: 2.6%;
	}
	#news .topik_col2 .topic .ttl{
		font-size: 1.2rem;
	}
	#news .topik_col2 .topic .text{
		padding: 6% 12%;
	}
}

/* -------------------------------- section_mv_area */

.section_mv_area{
	position: relative;
	text-align: center;
}
.section_mv_area .h2_ttl{
	position: absolute;
	left: 0;
	bottom: 40px;
	color: #FFFFFF;
	z-index: 100;
	display: table;
}
.section_mv_area .h2_ttl span{
	display: table-cell;
}
.section_mv_area .h2_ttl .heading{
	padding-left: 70px;
	position: relative;
	vertical-align: middle;
	line-height: 1;
}
.section_mv_area .h2_ttl .sab_ttl{
	padding-left: 10px;
	text-align: left;
	letter-spacing: 2px;
	vertical-align: bottom;
}
.section_mv_area .h2_ttl .heading:before{
content: '';
position: absolute;
top: 50%;
left:0;
display: inline-block;
width: 50px;
height: 1px;
background-color: #FFFFFF;
}
.section_mv_area img{
	width: 100%;
}

@media screen and (max-width:768px) {
	.section_mv_area .h2_ttl .heading{
		font-size: 3.2rem;
		padding-left: 40px;
	}
	.section_mv_area .h2_ttl .sab_ttl{
		font-size: 1.0rem;
    text-align: left;
	}
	.section_mv_area .h2_ttl .heading:before{
		width: 25px;
	}
}

/* -------------------------------- section_exp_content */
.section_exp_content .section_inner{
	position: relative;
	z-index: 100;
}
.section_exp_area{
	margin-top: -30px;
}
.section_exp_area .exp{
	font-size: 1.4rem;
	line-height: 2;
}
.section_exp_area .exp + .more{
	display: inline-block;
	margin-top: 20px;
	position: relative;
	padding-right: 2em;
	color: #0A581A;
}
.section_exp_area .exp + .more::after {
	content: '';
	position: absolute;
	width: 18px;
	height: 5px;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	background-image: url(/common/img/icon_arrow_r_g.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.section_exp_area .exp .link:link,
.section_exp_area .exp .link:visited,
.section_exp_area .exp .link:hover,
.section_exp_area .exp .link:active{
	color: #0A581A;
	text-decoration: underline;
}
.section_exp_area .pickup .link{
	display: block;
	background: #F7F2EB;
	padding: 30px;
	position: relative;
}
.section_exp_area .pickup .link::after {
  content: '';
	position: absolute;
  width: 18px;
  height: 5px;
  bottom: 25px;
	right: 10px;
  margin: auto;
  background-image: url(/common/img/icon_arrow_r.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.section_exp_area .pickup .heading{
	position: absolute;
	left: 0;
	right: 0;
	top: -17px;
	margin: auto;
	color: #0A581A;
	font-size: 2.4rem;
	font-family: 'EB Garamond', serif;
	text-align: center;
}
.section_exp_area .pickup .col2{
	display: table;
	width: 100%;
}
.section_exp_area .pickup .img{
	display: table-cell;
	width: 22%;
	vertical-align: middle;
}
.section_exp_area .pickup .text{
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
}
.section_exp_area .pickup .text .ttl{
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}
.section_exp_area .pickup .text .memo{
	font-size: 1.4rem;
}
.section_exp_area .link_next_btn._green{
	font-size: 1.6rem;
	padding: 20px;
}

@media screen and (max-width:768px) {

	.section_exp_content .section_inner{
		width: 100%;
	}
	.section_exp_area{
		margin-top: 0;
	}
	.section_exp_area .movie video{
		max-width: 100%;
	}
	.section_exp_area .pickup .link{
		padding: 40px 5% 25px;
	}
	.section_exp_area .pickup .img{
		width: 27%;
	}
	.section_exp_area .pickup .text{
		width: 73%;
		padding-left: 20px;
	}
	.section_exp_area .pickup .text .ttl{
		font-size: 1.4rem;
	}
	.section_exp_area .btn{
		width: 80%;
		margin: auto;
	}

}

/* -------------------------------- dining */

#dining{
	background: url(/img/top/bg_right_01.png) no-repeat right bottom;
	background-size: 46%;
}
#dining .section_exp_area .block_01 {
	width: 37%;
	float: left;
	margin-top: 130px;
}
#dining .section_exp_area .block_02{
	width: 50%;
	float: right;
}
#dining .section_exp_area .block_02 .movie {
	width: 80%;
	margin-bottom: 60px;
}
#dining .section_exp_area .block_02 .photo{
	width: 37%;
	margin-left: auto;
}
#dining .section_exp_area .block_03{
	width: 37%;
	float: left;
	margin-top: 65px;
}
#dining .section_exp_area .block_03 .btn{
	width: 65%;
	margin: auto;
	margin-top: 50px;
}

@media screen and (max-width:768px) {
	#dining{
		background: none;
	}
	#dining .section_exp_area .block_01,
	#dining .section_exp_area .block_02,
	#dining .section_exp_area .block_03{
		width: 100%;
		float: none;
	}
	#dining .section_exp_area .block_01,
	#dining .section_exp_area .block_02{
		padding: 0 8%;
	}
	#dining .section_exp_area .block_01{
		margin-top: 55px;
	}
	#dining .section_exp_area .block_02 {
		margin-top: 55px;
    background: url(/img/top/bg_right_01.png) no-repeat right -35%;
    background-size: 80%;
    padding-bottom: 30px;
	}
	#dining .section_exp_area .block_02 .movie{
    width: 73%;
    margin-left: 8%;
		margin-bottom: 25px;
	}
	#dining .section_exp_area .block_02 .photo{
		width: 38%;
	}
	#dining .section_exp_area .block_03{
		margin-top: 45px;
	}
	#dining .section_exp_area .block_03 .btn {
    width: 80%;
	}
}


/* -------------------------------- rooms */

#rooms{
	background: url(/img/top/bg_left_01.png) no-repeat left bottom;
	background-size: 48%;
}
#rooms .section_exp_area .block_01 {
	width: 37%;
	float: right;
	margin-top: 130px;
}
#rooms .section_exp_area .block_02{
	width: 52%;
	float: left;
}
#rooms .section_exp_area .block_02 .movie {
	width: 75%;
	margin-left: auto;
	margin-bottom: 50px;
}
#rooms .section_exp_area .block_02 .photo{
	width: 42%;
	margin-right: auto;
}
#rooms .section_exp_area .block_03{
	width: 37%;
	float: right;
	margin-top: 65px;
}
#rooms .section_exp_area .block_03 .btn{
	width: 65%;
	margin: auto;
	margin-top: 60px;
}

@media screen and (max-width:768px) {
	#rooms{
		background: none;
	}
	#rooms .section_exp_area .block_01,
	#rooms .section_exp_area .block_02,
	#rooms .section_exp_area .block_03{
		width: 100%;
		float: none;
	}
	#rooms .section_exp_area .block_01,
	#rooms .section_exp_area .block_02{
		padding: 0 8%;
	}
	#rooms .section_exp_area .block_01{
		margin-top: 55px;
	}
	#rooms .section_exp_area .block_02 {
    margin-top: 50px;
    padding-bottom: 20px;
    background: url(/img/top/bg_left_01_sp.png) no-repeat left 47%;
    background-size: cover;
}
	#rooms .section_exp_area .block_02 .movie{
		width: 73%;
		margin-bottom: 20px;
		margin-right: 4%;
	}
	#rooms .section_exp_area .block_02 .photo{
		width: 46%;
	}
	#rooms .section_exp_area .block_03{
		margin-top: 70px;
	}
	#rooms .section_exp_area .block_03 .btn{
    width: 80%;
	}
}

/* -------------------------------- onsen */

#onsen{
	background: url(/img/top/bg_right_02.png) no-repeat right bottom;
	background-size: 44%;
}
#onsen .section_exp_area .block_01 {
	width: 37%;
	float: left;
	margin-top: 130px;
}
#onsen .section_exp_area .block_02{
	width: 50%;
	float: right;
}
#onsen .section_exp_area .block_02 .movie {
	width: 80%;
	margin-bottom: 60px;
}
#onsen .section_exp_area .block_02 .photo{
	width: 37%;
	margin-left: auto;
}
#onsen .section_exp_area .block_03{
	width: 48%;
	float: left;
	margin-top: 65px;
	margin-bottom: 60px;
}
#onsen .section_exp_area .block_04{
	width: 48%;
	clear: both;
}
#onsen .section_exp_area .block_04 .btn{
	width: 50%;
	margin: auto;
}

@media screen and (max-width:768px) {
	#onsen{
		background: none;
	}
	#onsen .section_exp_area .block_01,
	#onsen .section_exp_area .block_02,
	#onsen .section_exp_area .block_03,
	#onsen .section_exp_area .block_04{
		width: 100%;
		float: none;
	}
	#onsen .section_exp_area .block_01,
	#onsen .section_exp_area .block_02{
		padding: 0 8%;
	}
	#onsen .section_exp_area .block_01{
		margin-top: 55px;
	}
	#onsen .bg_group{
		background: url(/img/top/bg_right_02_sp.png) no-repeat right bottom;
    background-size: contain;
	}
	#onsen .section_exp_area .block_02 {
		margin-top: 55px;
	}
	#onsen .section_exp_area .block_02 .movie{
		width: 73%;
		margin-left: 8%;
		margin-bottom: 150px;
	}
	#onsen .section_exp_area .block_03{
		width: 75%;
	}
	#onsen .section_exp_area .block_04 .btn {
    width: 80%;
	}
}

/* -------------------------------- activity */

#activity{
	background: url(/img/top/bg_left_02.png) no-repeat left bottom;
	background-size: 48%;
}
#activity .section_mv_area .h2_ttl .heading{
	letter-spacing: -5px;
}
#activity .section_exp_area .block_01 {
	width: 37%;
	float: right;
	margin-top: 110px;
}
#activity .section_exp_area .block_02{
	width: 50%;
	float: left;
}
#activity .section_exp_area .block_02 .movie {
	width: 80%;
	margin-left: auto;
	text-align: right;
}
#activity .section_exp_area .block_02 .photo{
	width: 42%;
	margin-right: auto;
}
#activity .section_exp_area .block_03{
	width: 38%;
	float: right;
	margin-top: 65px;
	margin-bottom: 70px;
}
#activity .section_exp_area .block_03 .photo{
	width: 49%;
	margin-right: auto;
}
#activity .section_exp_area .block_04{
	clear: both;
}
#activity .section_exp_area .block_04 .bnr_area{
	width: 73%;
	position: relative;
	margin: auto;
	margin-bottom: 60px;
	background: #000000;
}
#activity .section_exp_area .block_04 .bnr_area .link{
	display: table;
	table-layout: fixed;
	width: 100%;
}
#activity .section_exp_area .block_04 .bnr_area .bnr_img{
	display: table-cell;
	width: 43%;
	vertical-align: middle;
}
#activity .section_exp_area .block_04 .bnr_area .bnr_text{
	display: table-cell;
	vertical-align: middle;
	color: #FFFFFF;
	font-size: 1.4rem;
	padding: 10px 4%;
	line-height: 2;
}
#activity .section_exp_area .block_04 .bnr_area .bnr_text .logo{
	width: 57%;
	margin: auto;
	margin-bottom: 35px;
}
#activity .section_exp_area .block_04 .bnr_area .bnr_text .more{
	text-align: right;
	margin-top: 20px;
	position: relative;
	padding-right: 2em;
}
#activity .section_exp_area .block_04 .bnr_area .bnr_text .more::after {
  content: '';
	position: absolute;
  width: 18px;
  height: 5px;
	top: 0;
  bottom: 0;
	right: 0;
  margin: auto;
  background-image: url(/common/img/icon_arrow_r_w.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
#activity .section_exp_area .block_04 .bnr_area .arbb{
	width: 222px;
	position: absolute;
	right: -140px;
	top: -200px;
}
#activity .section_exp_area .block_04 .btn{
	width: 24%;
	margin: auto;
}

@media screen and (max-width:768px) {

	#activity{
		background: none;
	}
	#activity.section{
		padding-bottom: 100px;
		margin-bottom: 90px;
	}
	#activity .section_exp_area .block_01,
	#activity .section_exp_area .block_02,
	#activity .section_exp_area .block_03{
		width: 100%;
		float: none;
	}
	#activity .section_exp_area .block_01,
	#activity .section_exp_area .block_02,
	#activity .section_exp_area .block_03{
		padding: 0 8%;
		margin-top: 55px;
	}
	#activity .bg_group{
		background: url(/img/top/bg_left_01_sp.png) no-repeat left 47%;
    background-size: cover;
		padding-bottom: 20px;
	}
	#activity .section_exp_area .block_02 {
		margin-top: 45px;
	}
	#activity .section_exp_area .block_02 .movie{
		width: 73%;
		margin-right: 8%;
	}
	#activity .section_exp_area .block_03{
		margin-top: 30px;
	}
	#activity .section_exp_area .block_03 .photo{
		width: 45%;
	}
	#activity .section_exp_area .block_04 .bnr_area .bnr_text{
		padding: 30px 9% 40px;
	}
	#activity .section_exp_area .block_04 .bnr_area .bnr_text .logo{
		width: 76%;
		margin-bottom: 30px;
	}
	#activity .section_exp_area .block_04 .bnr_area{
		width: 90%;
	}
	#activity .section_exp_area .block_04 .bnr_area .link,
	#activity .section_exp_area .block_04 .bnr_area .bnr_img,
	#activity .section_exp_area .block_04 .bnr_area .bnr_text{
		display: block;
		width: 100%;
	}
	#activity .section_exp_area .block_04 .bnr_area .arbb {
    width: 120px;
    right: 0;
    top: -135px;
	}
	#activity .section_exp_area .block_04 .btn{
		width: 80%;
	}

}

/* -------------------------------- access */

#access .map_area{
	margin-top: 55px;
}
#access .map_area iframe{
	vertical-align: top;
}
#access .access_area {
	width: 73%;
	margin: auto;
}
#access .address_block{
	display: table;
	width: 100%;
	margin-top: 60px;
	margin-bottom: 55px;
}
#access .address_block .address{
	display: table-cell;
	position: relative;
	width: 48%;
	vertical-align: middle;
	font-size: 1.6rem;
	color: #0A581A;
	font-weight: bold;
	padding-left: 1.3em;
}
#access .address_block .address::before {
  content: '';
	position: absolute;
  width: 13px;
  height: 19px;
	top: 0;
  bottom: 0;
	left: 0;
  margin: auto;
  background-image: url(/common/img/icon_map.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
#access .address_block .detail{
	display: table-cell;
	width: 48%;
	vertical-align: middle;
	font-size: 1.4rem;
	padding-left: 2%;
	line-height: 1.8;
}
#access .bnr_area{
	width: 73%;
	position: relative;
	margin: 80px auto 0;
	background: #F7F5EE;
}
#access .bnr_area .link{
	display: table;
	table-layout: fixed;
	width: 100%;
}
#access .bnr_area .bnr_img{
	display: table-cell;
	width: 43%;
	vertical-align: middle;
}
#access .bnr_area .bnr_text{
	display: table-cell;
	vertical-align: middle;
	font-size: 1.4rem;
	padding: 10px 4%;
	line-height: 2;
}
#access .bnr_area .bnr_text .logo{
	width: 64%;
	margin: auto;
	margin-bottom: 30px;
}
#access .bnr_area .bnr_text .more{
	text-align: right;
	margin-top: 20px;
	position: relative;
	padding-right: 2em;
	color: #0A581A;
}
#access .bnr_area .bnr_text .more::after {
  content: '';
	position: absolute;
  width: 18px;
  height: 5px;
	top: 0;
  bottom: 0;
	right: 0;
  margin: auto;
  background-image: url(/common/img/icon_arrow_r_g.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

@media screen and (max-width:768px) {
	#access .access_area,
	#access .address_block .address,
	#access .address_block .detail{
		width: 100%;
		display: block;
	}
	#access .address_block{
		width: 94%;
		margin: 40px auto 30px;
	}
	#access .address_block .address{
		font-size: 1.4rem;
		margin-bottom: 25px;
	}
	#access .address_block .detail{
		padding-left: 0;
	}
	#access .bnr_area .bnr_text{
		padding: 30px 9% 40px;
	}
	#access .bnr_area .bnr_text .logo{
		width: 93%;
		margin-bottom: 30px;
	}
	#access .bnr_area{
		width: 100%;
	}
	#access .bnr_area .link,
	#access .bnr_area .bnr_img,
	#access .bnr_area .bnr_text{
		display: block;
		width: 100%;
	}
	#access .bnr_area .arbb {
    width: 120px;
    right: 0;
    top: -135px;
	}
}

/* -------------------------------- others */

#others .others_wrap{
	margin-top: 55px;
}
#others .photo{
	position: relative;
}
#others .photo .link{
	display: block;
	overflow: hidden;
	height: 200px;
}
#others .photo .link .text{
	position: relative;
	display: inline-block;
	padding-left: 45px;
}
#others .photo .link .text:before{
content: '';
position: absolute;
top: 50%;
	left:0;
display: inline-block;
width: 30px;
height: 1px;
background-color: #999999;
}
#others .photo .ttl{
	position: absolute;
	left: 0;
	bottom: 0;
	background: rgba(0,0,0,0.5);
	color: #FFFFFF;
	font-size: 1.6rem;
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
	padding: 20px;
	padding-left: 0;
}
#others .photo img{
	width: 100%;
}
#others .photo .img{
  -moz-transition: 0.8s;
  -o-transition: 0.8s;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}
#others .photo .link:hover .img {
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#others .photo_col2{
	border-bottom: #FFFFFF 1px solid;
}
#others .photo_col2 .photo{
	width: 50%;
	float: left;
}
#others .photo_col2 .photo .link{
	height: 0;
	padding-bottom: 29.3%;
}
#others .photo_col2 .photo .ttl{
	min-width: 29%;
}
#others .photo_col2 .photo:first-child{
	border-right: #FFFFFF 1px solid;
}
#others .photo_col3 .photo{
	width: 33.3333%;
	float: left;
	border-right: #FFFFFF 1px solid;
}
#others .photo_col3 .photo:last-child{
	border-right: none;
}
#others .photo_col3 .photo .link{
	height: 0;
	padding-bottom: 44%;
}
#others .photo_col3 .photo .ttl{
	min-width: 44%;
}
/* 宿泊特典位置調整 */
#others .photo_col2 .photo:last-child .img{
	margin-top: -70px;
}
@media screen and (max-width:768px) {
	#others.section_bg{
		padding-bottom: 60px;
	}
	#others .photo_col2 .photo .link,
	#others .photo_col3 .photo .link{
		height: auto;
		padding: 0;
	}
	#others .photo_col2 .photo,
	#others .photo_col3 .photo{
		width: 100%;
		float: none;
		border-bottom: #FFFFFF 1px solid;
	}
	#others .photo_col3 .photo:last-child{
		border-bottom: none;
	}
	#others .photo_col2 .photo .ttl,
	#others .photo_col3 .photo .ttl{
		min-width: 53%;
	}
/* 宿泊特典位置調整 */
	#others .photo_col2 .photo:last-child .img{
		margin-top: 0;
	}
}

/* -------------------------------- top_news */
#top_news.section{
	padding-top: 75px;
	padding-bottom: 30px;
}
#top_news .top_news_in{
	width: 65%;
	margin: 60px auto 0;
	font-size: 1.4rem;
}
#top_news .top_news_in li:nth-of-type(n+2){
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #ddd;
}
#top_news .top_news_in li dl{
	display: flex;
	flex-wrap: wrap;
}
#top_news .top_news_in li dt{
	width: 23%;
}
#top_news .top_news_in li dt span{
	display: inline-block;
	min-width: 65px;
	margin-left: 20px;
	padding: 2px 6px;
	color: #fff;
	font-size: 10px;
	text-align: center;
	vertical-align: top;
}
#top_news .top_news_in li dt span._green1{ background: #0A581A; }
#top_news .top_news_in li dt span._yellow1{ background: #b0833a; }
#top_news .top_news_in li dt span._red1{ background: #be244d; }
#top_news .top_news_in li dt span._blue1{ background: #3b467e; }
#top_news .top_news_in li dd{
	width: 77%;
}

/* more */
#top_news .top_news_in .more_acd_btn{
	margin-top: 60px;
}
#top_news .top_news_in .more_topik li:first-of-type{
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #ddd;
}

#top_news .top_news_in {
	margin-bottom: 60px;
}

/*New Btn news*/
#top_news .top_news_in ul {
	margin-bottom: 60px;
}

#top_news .top_news_in .btn {
	width: 28%;
	margin: auto;
}

@media screen and (max-width:768px) {
	#top_news .top_news_in{
		width: 100%;
		padding: 0 8%;
	}
	#top_news .top_news_in li dt{
		width: 100%;
		margin-bottom: 15px;
	}
	#top_news .top_news_in li dd{
		width: 100%;
	}

	#top_news .top_news_in .btn {
		width: 90%;
	}
}

/* -------------------------------- top_btm_bnr */
#top_btm_bnr{
	padding-bottom: 100px;
	text-align: center;
}
@media screen and (max-width:768px) {
	#top_btm_bnr{
		padding-right: 5%;
		padding-left: 5%;
	}
}

/* -------------------------------- btn_center */
.btn_center{
	width: 300px;
	margin: auto;
}
.btn_center .link_next_btn{
	font-size: 1.6rem;
	padding: 20px;
}

@media screen and (max-width:768px) {
	.btn_center{
		width: 80%;
		margin: 30px auto 0;
	}
}

.slide01Txt {
  position: absolute;
  top: 85%;
  right: 12%;
  z-index: 4;
  font-size: 1.3rem;
  color: #fff;
  font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}

.slide02Txt {
  position: absolute;
  top: 85%;
  right: 4%;
  z-index: 4;
  font-size: 1.3rem;
  color: #fff;
  font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}


@media screen and (max-width:768px) {
  
  .slide01Txt {
    top: 78%;
    right: 12%;
    font-size: 1.2rem;
  }

  .slide02Txt {
    top: 78%;
    right: 4%;
    font-size: 1.2rem;
  }
}
