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

.goratop.visitor .pc-upper {
    position: relative;
    z-index: 99;
}

.goratop.visitor #content img { width: 100%;}

.goratop.visitor #content a {
	opacity: 1;
	transition: opacity .25s ease-in-out;
}
.goratop.visitor #content a:hover {
    opacity: .65;
    text-decoration: none;
}
.goratop.visitor .bnrarea a {
    text-align: center;
	border: 1px solid #3D3333;
    width: 380px;
	height: 70px;
	box-sizing: border-box;
    margin: 0 auto;
    padding: 5px 0;
    background-color: #FFF;
	display: flex;
	flex-direction: row;
	justify-content: right;
	align-items: center;
}
.goratop.visitor .bnrarea a span.bnr_icotto {
	color: #222222;
	display: block;
    width: 65%;
    margin-right: 3.5%;
    font-size: 16px;
    text-align: center;
}
.goratop.visitor .bnrarea a::before {
	content: "";
	display: block;
	width: 67px;
	height: 29px;
	background-image: url(../../common/img/icot-logo-92x40.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
}
.goratop.visitor .bnrarea a::after {
    content: "";
    display: block;
    background-image: url(../img/vector02.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 4%;
    height: auto;
    padding: 2.6% 0;
    margin-right: 4.4%;
}
.goratop.visitor .area-hotel-welcome {
    padding: 90px 0 80px;
	margin-top: 102px;
	background: url(../../common/img/skin_color.jpg) repeat top left;
}
.goratop.visitor .area-hotel-welcome .header {
    margin: 0 0 35px;
}
.goratop.visitor .area-hotel-welcome .header .subheading {
    font-size: 26px;
    color: #503636;
	font-weight: 700;
}
.goratop.visitor .area-hotel-welcome .lead {
	width: 100%;
	line-height: 1.6;
	margin: 0 auto 28px;
    color: #503636;
	font-size: 17px;
}
.goratop.visitor .btn-more {
	width: 380px;
	height: 70px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: right;
	align-items: center;
	border: 1px solid #3D3333;
	background-color: #FFF;
	box-sizing: border-box;
}
.goratop.visitor .btn-more span {
	font-size: 16px;
	width: 87%;
	text-align: center;
	color: #222222;
}
.goratop.visitor .btn-more::after {
    content: "";
    display: block;
    background-image: url(../img/vector02.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 4%;
    height: auto;
    padding: 2.6% 0;
    margin-right: 4.4%;
}
@media only screen and (max-width: 1040px){
	.goratop.visitor .area-hotel-welcome {
		padding: 8% 0;
		margin-top: 9.8%;
	}
	.goratop.visitor .area-hotel-welcome .lead { width: 94.2308%;}
}
@media screen and (max-width:700px) {
	.goratop.visitor .bnrarea a {
		width: 89.5%;
		height: auto;
		margin: 0 auto;
		padding: 4.7% 0;
	}

	.goratop.visitor .bnrarea a span.bnr_icotto { font-size: 4vw;}

	.goratop.visitor .bnrarea a::before {
		width: 17.5%;
		height: auto;
		padding: 3.7% 0;
	}

	.goratop.visitor #footer-renew-202404 { border-top: 1px solid #e0e0e0;}
	.goratop.visitor #content { padding-bottom: 0%;}

	.goratop.visitor .area-hotel-welcome {
		margin-top: 10.6%;
		padding: 10% 0;
		line-height: 1.45;
	}
	.goratop.visitor .area-hotel-welcome .header {
		margin: 0 0 4.5%;
	}
	.goratop.visitor .area-hotel-welcome .header .subheading {
		font-size: 6vw;
		line-height: 1.45;
	}
	.goratop.visitor .area-hotel-welcome .lead {
        width: 89.5%;
        font-size: 3.8vw;
        line-height: 1.67;
		margin: 0 auto 4.9%;
    }
	.goratop.visitor .btn-more {
		width: 100%;
		height: auto;
		padding: 5.7% 0;
	}
	.goratop.visitor .btn-more span { font-size: 4vw;}

	.goratop.visitor .bnr-special .btn-more { padding: 2.2% 0;}
	.goratop.visitor .btn-more::after {
		background-image: url(../img/vector03.svg);
		width: 8.3%;
		padding: 1% 0;
		margin-right: 2.2%;
	}
}
/* sp-optimization_240419 */
@media screen and (max-width:980px) {
    #page.sp-optimization { padding: 55px 0 0 0 !important;}
}
@media screen and (max-width: 768px) {
    #page.sp-optimization { padding: 55px 0 0 0 !important;}
}
/* /sp-optimization_240419 */

/* kv_swiper_241108 */
.goratop.visitor .kv_slide {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.goratop.visitor .kv_slide picture {
	width: 100%;
	display: block;
	pointer-events: none;
}
.goratop.visitor  .kv_slide picture img {
	width: 100%;
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
	border: 1px #FFF solid;
	background: rgba(85, 115, 118, 0.2);/*250312修正*/
    opacity: 1;
}
.swiper-pagination-bullet-active {
    background: #FFF;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 8px;
}
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 16px;
}

@keyframes zoom {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.15);
	}
}
.swiper-slide-active picture,
.swiper-slide-duplicate-active picture,
.swiper-slide-prev picture {
	animation: zoom 10s linear 0s normal both;
}
.swiper-slide img {
	height: auto;
	width: 100%;
}
@media only screen and (max-width: 1400px){
	.swiper-horizontal>.swiper-pagination-bullets,
	.swiper-pagination-bullets.swiper-pagination-horizontal,
	.swiper-pagination-custom,
	.swiper-pagination-fraction {
		bottom: 2.7%;
	}
}
@media only screen and (max-width: 700px){
	#page.sp-optimization {
		padding: 0 0 0 0 !important;
	}
	.goratop.visitor .kv_slide {
		margin: 15.2% auto 0;
	}
	.swiper-horizontal>.swiper-pagination-bullets,
	.swiper-pagination-bullets.swiper-pagination-horizontal,
	.swiper-pagination-custom,
	.swiper-pagination-fraction {
        width: 33%;
        left: 0;/*250312修正*/
        right: 0;/*250312修正*/
        bottom: 4.7%;
		margin: 0 auto;/*250312修正*/
	}
	.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
	.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
		margin: 0 5.84%;
	}
	.swiper-pagination-bullet {
		width: 6%;
		height: auto;
		padding: 3% 0;
	}
}
@media only screen and (max-width: 500px){
	.goratop.visitor .kv_slide {
		margin: 15% auto 0;
	}
}
/* /kv_swiper_241108 */

/* バナーエリア改修_241211*/
.goratop.visitor #content {
    font-family: 'yu-gothic-pr6n', '游ゴシック体', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', 'ＭＳ Ｐゴシック', sans-serif!important;
    font-weight: 500!important;
}
.goratop.visitor .bnr-area {
	max-width: 980px;
	margin: 82px auto 0;
}
.goratop.visitor .bnr-area img { width: 100%;}

.goratop.visitor .bnr-area p {
    font-size: 20px;
	font-weight: 600;
    color: #503636;
    text-align: center;
    padding: 4px 0 3px;
    margin-bottom: 10px;
}
.goratop.visitor .bnr-area p span {
    background-image: url(../img/bg_bnr-area.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    padding: 2px 8px;
}
.goratop.visitor .bnr-area p::before,
.goratop.visitor .bnr-area p::after {
    content: "■";
    display: inline-block;
    font-size: 8px;
    vertical-align: middle;
    margin: 0 4px;
	padding-bottom: 4px;
}
.goratop.visitor .bnr-area .bnr-special { margin-top: 33px;}

.goratop.visitor .bnr-area ul {
	display: flex;
	flex-direction: row;
	justify-content: left;
	align-items: flex-start;
    margin-bottom: 20px;
}

.goratop.visitor .bnr-area ul li:last-of-type { margin-right: 0;}

.goratop.visitor .bnr-area ul li.link-special a {
	border: 1px solid #222;
	display: block;
	height: 135px;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	justify-content: right;
	align-items: center;
}
.goratop.visitor .bnr-area ul li.link-special a:hover { text-decoration: none;}

.goratop.visitor .bnr-area ul li.link-special a span {
	font-size: 18px;
	color: #222;
}
.goratop.visitor .bnr-area ul li.link-special a::after {
    content: "";
    display: block;
    width: 12%;
    height: auto;
    padding: 1.3% 0;
    background-image: url(../img/icon_vector01.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    margin-right: 6%;
	margin-left: 4.5%;
}
@media only screen and (min-width: 701px){
	.goratop.visitor .bnr-area ul li {
		width: 32.2751%!important;
		margin-right: 1.59%!important;
	}
	.goratop.visitor .swiper-scrollbar { display: none;}
	.goratop.visitor .bnr-area ul { transform: translate3d(0px, 0px, 0px) !important;}
}
@media only screen and (max-width: 1040px){
	.goratop.visitor .bnr-area {
		max-width: 94.2308%;
		margin: 7.9% auto 0;
	}
	.goratop.visitor .bnr-area .bnr-special { margin-top: 5.1%;}
	.goratop.visitor .bnr-area ul li {
		width: 32.654%;
		height: auto;
	}
	.goratop.visitor .bnr-area ul li.link-special a span { font-size: 1.735vw;}
	.goratop.visitor .bnr-area ul li.link-special a {
		height: auto;
		padding: 16.555% 0;
	}
}
@media only screen and (max-width: 700px){
	.goratop.visitor .bnr-area {
		max-width: 93.5%;
		margin: 7.4% auto 0;
	}
	.goratop.visitor .bnr-area .bnr-special { margin-top: 6.8%;}
	.goratop.visitor .bnr-area .bnr-special::-webkit-scrollbar { height: 14px;}
	.goratop.visitor .bnr-area p {
        width: 100%;
		font-size: 4.5vw;
		padding: 0.8% 0 0.1%;
        margin-bottom: 2.7%;
	}
	.goratop.visitor .bnr-area p span { padding: 0.4% 2%;}
	.goratop.visitor .bnr-area p::before,
	.goratop.visitor .bnr-area p::after {
		font-size: 1.79vw;
		margin: 0 0.3%;
		padding-bottom: 0.5%;
	}
	.goratop.visitor .bnr-area ul { margin-bottom: 0;}
	.goratop.visitor .bnr-area ul li { width: 48.8%;}
	.goratop.visitor .swiper_carousel {
		padding-bottom: 4%;
        overflow: visible;
		position: relative;
        margin-bottom: 7.6%;
	}
	.goratop.visitor .swiper-horizontal>.swiper-scrollbar,
	.goratop.visitor .swiper-scrollbar.swiper-scrollbar-horizontal {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 50;
		height: 3px;
		margin: 0 auto;
		width: 100%;
	}
	.goratop.visitor .swiper-scrollbar {
		border-radius: 10px;
		background: #D9D9D9;
	}
	.goratop.visitor .swiper-scrollbar-drag { background: #503636;}
	.goratop.visitor .bnr-area .bnr-special ul li.link-special {
		display: block;
		width: 100%;
		margin-top: 2.1%;
	}
	.goratop.visitor .bnr-area ul li.link-special a { padding: 4.1% 0;}
	.goratop.visitor .bnr-area ul li.link-special a span { font-size: 4vw;}
	.goratop.visitor .bnr-area ul li.link-special a::after {
		width: 8.3%;
		padding: 1.1% 0;
		margin-right: 2.5%;
		margin-left: 12.8%;
	}
	.goratop.visitor .bnr-area ul li.link-special a { padding: 2.4% 0;}
}
/* /バナーエリア改修_241211*/

/* レイアウト改修_250129 */
.goratop.visitor .box-relative.scroll-fadein .btn-box {
	opacity: 0;
}
.goratop.visitor .box-relative.scroll-fadein .image01,
.goratop.visitor .box-relative.scroll-fadein .image02,
.goratop.visitor .box-relative.scroll-fadein .image03 {
	opacity: 0;
}

.goratop.visitor .box-relative.scroll-fadein.active .btn-box {
	animation: fadein 1s ease 0s 1 forwards;
}
.goratop.visitor .box-relative.scroll-fadein.active .image01 {
	animation: slideinRight 1s ease 0.3s 1 forwards;
}
.goratop.visitor .box-relative.scroll-fadein.active .image02 {
	animation: slideinLeft 1s ease 0.6s 1 forwards;
}
.goratop.visitor .box-relative.scroll-fadein.active .image03 {
	animation: slideinRight 1s ease 0.9s 1 forwards;
}

.goratop.visitor article:nth-of-type(even) .box-relative.scroll-fadein.active .btn-box {
	animation: fadein 1s ease 0s 1 forwards;
}
.goratop.visitor article:nth-of-type(even) .box-relative.scroll-fadein.active .image01 {
	animation: slideinLeft 1s ease 0.3s 1 forwards;
}
.goratop.visitor article:nth-of-type(even) .box-relative.scroll-fadein.active .image02 {
	animation: slideinRight 1s ease 0.6s 1 forwards;
}
.goratop.visitor article:nth-of-type(even) .box-relative.scroll-fadein.active .image03 {
	animation: slideinLeft 1s ease 0.9s 1 forwards;
}
@keyframes fadein {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes slideinRight {
	0% {
		opacity: 0;
		transform: translateX(20px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}
@keyframes slideinLeft {
	0% {
		opacity: 0;
		transform: translateX(-20px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}
.goratop.visitor .hotel-intro {
	max-width: 980px;
	margin: 0 auto;
}
.goratop.visitor .hotel-intro article {
	position: relative;
	padding-top: 60px;
}
.goratop.visitor .hotel-intro .text-container {
    width: 490px;
	color: #503636;
    line-height: 1.6;
	position: absolute;
	top: 63px;
    z-index: 9;
}
.goratop.visitor .hotel-intro article:nth-of-type(odd) .text-container { left: 0;}
.goratop.visitor .hotel-intro article:nth-of-type(even) .text-container { right: 0;}

.goratop.visitor .hotel-intro .title {
	font-weight: 700;
	font-size: 26px;
	position: relative;
	text-align: center;
	margin-bottom: 28px;
}
.goratop.visitor .hotel-intro .title::before {
	content: "";
	display: block;
	width: 4px;
	height: 53px;
	background-color: #816A4F;
	position: absolute;
	top: 0;
	left: 11px;
}
.goratop.visitor .hotel-intro .title::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #816A4F;
	position: absolute;
	bottom: 1px;
	left: 0;
}
.goratop.visitor .hotel-intro article.room .title,
.goratop.visitor .hotel-intro article.hotspring .title,
.goratop.visitor .hotel-intro article.restaurant .title {
	width: 111px;
}
.goratop.visitor .hotel-intro article.sightseeing .title {
	width: 218px;
	margin-left: auto;
	text-align: left;
}
.goratop.visitor .hotel-intro article.etc .title {
	width: 142px;
	text-align: right;
}

.goratop.visitor .hotel-intro article.sightseeing .title::before {
	top: 0;
	left: auto;
	right: 11px;
}

.goratop.visitor .hotel-intro .caption {
	font-weight: 500;
	font-size: 17px;
}
.goratop.visitor .hotel-intro .box-relative {
	position: relative;
}
.goratop.visitor .hotel-intro .btn-box {
    width: 140px;
    height: 140px;
    position: absolute;
	z-index: 10;
}
.goratop.visitor .hotel-intro a.btn-circle {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #816A4F;
	text-align: center;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.goratop.visitor .hotel-intro article.room .btn-box {
    top: 266px;
	left: 40px;
}

.goratop.visitor .hotel-intro article.hotspring .btn-box {
    top: 160px;
	right: 40px;
}
.goratop.visitor .hotel-intro article.restaurant .btn-box {
    top: 184px;
	left: 40px;
}
.goratop.visitor .hotel-intro article.sightseeing .btn-box {
	top: 184px;
	right: 40px;
}
.goratop.visitor .hotel-intro article.sightseeing .btn-box.btn02 {
    top: 344px;
}
.goratop.visitor .hotel-intro article.etc .btn-box {
	top: 157px;
	left: 40px;
}
.goratop.visitor .hotel-intro a.btn-circle span {
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	padding-top: 4%;
}

.goratop.visitor .hotel-intro a.btn-circle::after {
    content: "";
    display: block;
    background-image: url(../img/vector01.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 17.86%;
    height: auto;
    padding: 4.65% 0;
	margin-top: 9%;
}
.goratop.visitor .hotel-intro .image {
	position: relative;
	height: 603px;
}
.goratop.visitor .hotel-intro .image-single .image {
	height: 338px;
}
.goratop.visitor .hotel-intro .image-double .image {
	height: 504px;
}
.goratop.visitor .hotel-intro picture.image01 {
	display: block;
	width: 450px;
	height: 338px;
	position: absolute;
	top: 0;
}
.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image01 {
	right: 0;
}
.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image01 {
	left: 0;
}

.goratop.visitor .hotel-intro picture.image02 {
	display: block;
	width: 330px;
	height: 248px;
	position: absolute;
    top: 256px;
}
.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image02 {
	right: 421px;
}
.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image02 {
	left: 421px;
}

.goratop.visitor .hotel-intro picture.image03 {
	display: block;
	width: 300px;
	height: 236px;
	position: absolute;
	top: 370px;
}
.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image03 {
    right: 50px;
}
.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image03 {
    left: 90px;
}

.goratop.visitor .hotel-intro picture img {
	width: 100%;
}

.goratop.visitor .recommend {
	background-color:#9e9480;
	padding: 45px 0 40px;
	margin-top: 80px;
}
.goratop.visitor .recommend .subheading {
	color: #FFF;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	margin-bottom: 26px;
}
.goratop.visitor .recommend .subheading::before,
.goratop.visitor .recommend .subheading::after {
	content: "";
	display: block;
	background-image: url(../../v/special/img/decoration_headline02.webp);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 14px;
	height: 23px;
	margin: 0 15px;
}
.goratop.visitor .recommend .subheading::after {
	transform: scale(-1, 1);
}
.goratop.visitor .recommend ul {
	max-width: 710px;
	width: 89.5%;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}
.goratop.visitor .recommend li {
    width: 48.6%;
	margin-bottom: 3%;
}
.goratop.visitor .recommend li img {
	width: 100%;
}
.goratop.visitor .accommodation-plan {
	padding: 59px 0 40px;
    background: url(../../common/img/skin_color.jpg) repeat top left;
}
.goratop.visitor .accommodation-plan .subheading {
	font-size: 26px;
    color: #503636;
    font-weight: 700;
	text-align: center;
	margin-bottom: 36px;
}
.goratop.visitor .accommodation-plan .mod-tab-container {
    max-width: 980px;
    margin: 0 auto;
    position: relative;
    padding: 0 0 40px;
    text-align: center;
}
.goratop.visitor .accommodation-plan .mod-4-grid .grid {
    margin-bottom: 40px;
}
.goratop.visitor .accommodation-plan .grid .img {
    margin: 0 0 22px;
	border: 1px solid #A3A3A3;
	box-sizing: border-box;
}
.goratop.visitor .accommodation-plan .mod-plan-list-item-02 .title {
    font-size: 15px;
    font-weight: normal;
	margin: 0 0 26px;
    color: #503636;
    line-height: 1.6;
}
.goratop.visitor .accommodation-plan .mod-plan-list-item-02 .price {
    font-size: 15px;
    font-weight: normal;
    color: #503636;
}

.goratop.visitor .suggestion {
	padding-top: 58px;
}
.goratop.visitor .suggestion .subheading {
	font-size: 26px;
	font-weight: 700;
	color: #503636;
	text-align: center;
	padding-bottom: 54px;
}
.goratop.visitor .suggestion ul {
    max-width: 730px;
	width: 89.5%;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: left;
	align-items: flex-start;
}
.goratop.visitor .suggestion li {
	width: 223px;
	height: 149px;
    margin: 0 30px 40px 0;
    box-sizing: border-box;
	border: 1px solid #A3A3A3;
}
.goratop.visitor .suggestion ul li:nth-of-type(3n) { margin-right: 0;}
.goratop.visitor .suggestion li img { width: 100%;}

.goratop.visitor .area-hotel-news {
	padding: 59px 0 80px;
    background: url(../../common/img/skin_color.jpg) repeat top left;
	margin: 60px 0 20px;
}

.goratop.visitor .area-hotel-news .subheading {
	font-size: 26px;
    color: #503636;
    font-weight: 700;
	text-align: center;
}
.goratop.visitor .area-hotel-news .hotel-news { max-width: 712px;}
.goratop.visitor .area-hotel-news .hotel-news-list { margin: 37px 0 39px;}

.goratop.visitor .area-hotel-news .hotel-news-list ul li dl {
    display: flex;
	flex-direction: row;
	justify-content: left;
	align-items: flex-start;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.7;
}
.goratop.visitor .area-hotel-news .hotel-news-list ul li dl dt {
    width: 129px;
	font-weight: 500;
    color: #503636;
	display: block;
}
.goratop.visitor .area-hotel-news .hotel-news-list a { color: #503636;}
.goratop.visitor .area-hotel-news .hotel-news-list ul li dl dd {
    display: block;
    max-width: 582px;
}
@media only screen and (max-width: 980px){
	.goratop.visitor .hotel-intro { width: 89.5%;}
	.goratop.visitor .hotel-intro article {
		position: relative;
		padding-top: 6.2%;
	}
	.goratop.visitor .hotel-intro .text-container {
		width: 50%;
		top: 9.8%;
	}
	.goratop.visitor .hotel-intro .image-single .text-container { top: 15.8%;}
	.goratop.visitor .hotel-intro .image-double .text-container { top: 13.1%;}

	.goratop.visitor .hotel-intro .title {
		font-size: 2.4vw;
		margin-bottom: 5.7%;
	}
	.goratop.visitor .hotel-intro article.room .title,
	.goratop.visitor .hotel-intro article.hotspring .title,
	.goratop.visitor .hotel-intro article.restaurant .title {
		width: 22.655%;
	}
	.goratop.visitor .hotel-intro article.sightseeing .title {
		width: 44.49%;
	}

	.goratop.visitor .hotel-intro .title::before {
		height: auto;
		padding: 23.88% 0;
		left: 10%;
	}
	.goratop.visitor .hotel-intro .sightseeing .title::before {
		padding: 12.16% 0;
	}
	.goratop.visitor .hotel-intro .etc .title::before {
		padding: 19.16% 0;
	}
	.goratop.visitor .hotel-intro .sightseeing .image-single .title::before,
	.goratop.visitor .hotel-intro .etc .image-single .title::before {
		padding: 19.2% 0;
	}
	.goratop.visitor .hotel-intro .sightseeing .image-double .title::before,
	.goratop.visitor .hotel-intro .etc .image-double .title::before {
		padding: 19.2% 0;
	}
	.goratop.visitor .hotel-intro article.sightseeing .title::before { right: 5%;}
	.goratop.visitor .hotel-intro article.etc .title { width: 28.98%;}
	.goratop.visitor .hotel-intro article.etc .title::before { left: 5%;}
	.goratop.visitor .hotel-intro .caption { font-size: 1.572vw; }

	.goratop.visitor .hotel-intro .btn-box {
		width: 14.458%;
		height: auto;
	}
	.goratop.visitor .hotel-intro a.btn-circle {
		width: 100%;
		height: auto;
		padding: 29.254% 0;
	}
	.goratop.visitor .hotel-intro article.room .btn-box {
		top: 44.2%;
		left: 4.1%;
	}
	.goratop.visitor .hotel-intro article.hotspring .btn-box {
		top: 26.6%;
		right: 4.1%;
	}
	.goratop.visitor .hotel-intro article.restaurant .btn-box {
		top: 30.6%;
		left: 4.1%;
	}
	.goratop.visitor .hotel-intro article.sightseeing .btn-box {
		top: 30.6%;
		right: 4.1%;
	}
	.goratop.visitor .hotel-intro article.sightseeing .btn-box.btn02 {
		top: 57.1%;
	}
	.goratop.visitor .hotel-intro article.etc .btn-box {
		top: 26.1%;
		left: 4.1%;
	}
	.goratop.visitor .hotel-intro a.btn-circle span { font-size: 1.66vw;}

	.goratop.visitor .hotel-intro .image {
		height: auto;
		padding-top: 61.532%;
	}
    .goratop.visitor .hotel-intro .image-single .image {
        padding-top: 35%;
        height: auto;
    }
	.goratop.visitor .hotel-intro .image-double .image {
        padding-top: 85%;
        height: auto;
    }
	.goratop.visitor .hotel-intro picture.image01 {
		width: 46.47%;
		height: auto;
	}
	.goratop.visitor .hotel-intro picture.image02 {
		width: 34.078%;
		height: auto;
		top: 42.5%;
	}
	.goratop.visitor .hotel-intro picture.image03 {
		width: 30.98%;
		height: auto;
		top: 61.5%;
	}
	.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image02 { right: 43%;}
	.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image03 { right: 5.1%;}
	.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image02 { left: 43%;}
	.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image03 { left: 9.2%;}
	.goratop.visitor .accommodation-plan .mod-tab-container { width: 89.5%;}
}
@media only screen and (max-width: 816px){
	.goratop.visitor .suggestion li {
		width: 30.548%;
		height: auto;
		margin: 0 4% 5.5% 0;
	}
}
@media only screen and (max-width: 700px){
	.goratop.visitor .hotel-intro { width: 100%;}
	.goratop.visitor .hotel-intro article { padding-top: 13.5%;}

	.goratop.visitor .hotel-intro .text-container {
        width: 89.5%;
		margin: 0 auto;
		padding-bottom: 7.7%;
		line-height: 1.56;
	}
	.goratop.visitor .hotel-intro .title { font-size: 5.9vw;}

	.goratop.visitor .hotel-intro article.room .title,
	.goratop.visitor .hotel-intro article.hotspring .title,
	.goratop.visitor .hotel-intro article.restaurant .title {
        width: 28%;
    }
	.goratop.visitor .hotel-intro .text-container { position: static;}
	.goratop.visitor .hotel-intro .caption { font-size: 4.16vw;}
	.goratop.visitor .hotel-intro .title { margin-bottom: 7.6%;}
	.goratop.visitor .hotel-intro .image { padding-top: 106.6%;}
	.goratop.visitor .hotel-intro .image-single .image { padding-top: 56.2%;}
	.goratop.visitor .hotel-intro .image-double .image { padding-top: 56.2%;}
	.goratop.visitor .hotel-intro picture.image01 { width: 74.8%;}

	.goratop.visitor .hotel-intro picture.image02 {
        width: 60.6%;
		top: 46.4%;
	}
	.goratop.visitor .hotel-intro picture.image03 {
        width: 36.4%;
        top: 55.5%;
	}
	.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image02 { right: auto;}

	.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image02 {
        left: auto;
        right: 0;
    }
	.goratop.visitor .hotel-intro article:nth-of-type(odd) picture.image03 { right: 0;}
	.goratop.visitor .hotel-intro article:nth-of-type(even) picture.image03 { left: 0;}

	.goratop.visitor .hotel-intro .btn-box {
		width: 30.1%;
	}
	.goratop.visitor .hotel-intro a.btn-circle {
		padding: 28.89% 0;
		border: 3px #FFF solid;
	}
	.goratop.visitor .hotel-intro .btn-box {
        top: -3%!important;
	}
	.goratop.visitor .hotel-intro .btn-box.btn02 { top: 29.3% !important;}
	.goratop.visitor .hotel-intro article:nth-of-type(odd) .btn-box {
		left: 5.6%!important;
	}
	.goratop.visitor .hotel-intro article.image-single:nth-of-type(odd) .btn-box {
        top: -5.5% !important;
	}
	.goratop.visitor .hotel-intro article.image-double:nth-of-type(odd) .btn-box {
        top: -3.6% !important;
	}
	.goratop.visitor .hotel-intro article:nth-of-type(even) .btn-box {
		right: 5.6%!important;
	}
	.goratop.visitor .hotel-intro a.btn-circle span {
        font-size: 4vw;
    }
    .goratop.visitor .hotel-intro article:nth-of-type(even) .title {
		margin: 0 0 7.6% auto;
	}
	.goratop.visitor .hotel-intro article:nth-of-type(even) .title::before {
        left: auto;
        right: 10%;
    }
	.goratop.visitor .hotel-intro article.sightseeing .title { width: 56.4%;}
	.goratop.visitor .hotel-intro article.sightseeing .title::before { right: 5%;}
	.goratop.visitor .hotel-intro article.etc .title { width: 34.5%;}
	.goratop.visitor .hotel-intro article.etc .title::before {
		left: 8%;
		padding: 19.5% 0;
	}

	.goratop.visitor .accommodation-plan { padding: 13.3% 0 5.4%;}

	.goratop.visitor .accommodation-plan .subheading {
		font-size: 6vw;
		margin-bottom: 7.1%;
	}
	.goratop.visitor .accommodation-plan .is-loaded {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.goratop.visitor .accommodation-plan .mod-4-grid .grid {
		width: 48%;
		margin-bottom: 8.7%;
	}
	.goratop.visitor .accommodation-plan .mod-plan-list-item-02 .title {
		font-size: 3.7vw;
		margin: 0 0 12%;
		color: #503636 !important;
	}
	.goratop.visitor .accommodation-plan .mod-plan-list-item-02 dl { overflow: visible;}

	.goratop.visitor .accommodation-plan .grid .img {
		width: 100%;
		margin: 0 0 8.5%;
	}
	.goratop.visitor .accommodation-plan .mod-plan-list-item-02 .price { font-size: 3.7vw;}
	.goratop.visitor .accommodation-plan .mod-plan-list-item-02 .img { padding: 0;}

	.goratop.visitor .recommend { padding: 9.7% 0 8.5%;}
	.goratop.visitor .recommend .subheading {
		margin-bottom: 6.9%;
		font-size: 5.3vw;
	}
	.goratop.visitor .recommend .subheading::before,
	.goratop.visitor .recommend .subheading::after {
		width: 3%;
		height: auto;
		padding: 2.6% 0;
	}
	.goratop.visitor .recommend ul { display: block;}

	.goratop.visitor .recommend li {
		width: 100%;
		margin-bottom: 5.5%;
	}

	.goratop.visitor .suggestion { padding-top: 13%;}
	.goratop.visitor .suggestion .subheading { font-size: 6vw;}
	.goratop.visitor .suggestion ul { justify-content: space-between;}

	.goratop.visitor .suggestion li {
        width: 48.4%;
        margin: 0 0 5.5% 0;
    }

	.goratop.visitor .area-hotel-news {
		padding: 13% 0 16%;
		margin: 10.8% 0 0;
	}
	.goratop.visitor .area-hotel-news .subheading { font-size: 6vw;}
	.goratop.visitor .area-hotel-news .hotel-news {
		width: 89.5%;
		margin: 0 auto;
		padding: 0;
	}
	.goratop.visitor .area-hotel-news .hotel-news-list ul li { margin: 1.5% 0 0;}
	.goratop.visitor .area-hotel-news .hotel-news-list ul li dl { font-size: 3.5vw;}
	.goratop.visitor .area-hotel-news .hotel-news-list ul li dl dt { width: 29%;}

	.goratop.visitor .area-hotel-news .hotel-news-list ul li dl dd {
        display: block;
        width: 71%;
		line-height: 1.55;
    }
	.goratop.visitor .area-hotel-news .hotel-news-list a { margin-right: 0;}
	.goratop.visitor .area-hotel-news  .hotel-news-list { margin: 8% 0 8.5%;}
}
/* /レイアウト改修_250129 */

/* もっとみるボタン追加_250129 */
.goratop.visitor .bnr-area .bnr-special .btn-more {
	margin: 0 auto 33px;/*250228*/
}
@media only screen and (max-width: 700px){
	.goratop.visitor .bnr-area .bnr-special .btn-more {
		margin: -2.5% auto 6.8%;
	}
}
/* /もっとみるボタン追加_250129 */

/* KVレイアウト改修_250312 */
.goratop.visitor .kv_slide .kv_text {
    width: 350px;
    padding-top: 33px;
	padding-bottom: 24px;
	box-sizing: border-box;
	border: 1px solid #FFF;
	background-color: rgba(85, 115, 118, 0.3);
	text-align: center;
	color: #FFF;
    font-family: "ryo-display-plusn", serif;
    font-weight: 500;
    font-style: normal;
	position: absolute;
    top: 174px;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
}
.goratop.visitor .kv_slide .kv_text h1 {
	width: 80%;
	margin: 0 auto;
	font-size: 22px;
    font-weight: 500;
    border-bottom: 1px solid #FFF;
	box-sizing: border-box;
	padding: 0 0 16px;
    line-height: 1.35;
	letter-spacing: 0.6px;
	white-space: nowrap;
}
.goratop.visitor .kv_slide .kv_text p {
    font-size: 38px;
    line-height: 1.58;
	padding-top: 15px;
	letter-spacing: 1px;
}

@media only screen and (max-width: 1400px){
	.goratop.visitor .kv_slide .kv_text {
		top: 50%;
		left: 50%;
		right: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	.goratop.visitor .kv_slide .kv_text {
		padding-top: 2.4%;
		padding-bottom: 1.75%;
	}
	.goratop.visitor .kv_slide .kv_text h1 {
		padding: 0 0 4%;
	}
	.goratop.visitor .kv_slide .kv_text p {
		padding-top: 3.5%;
	}
}
@media only screen and (max-width: 700px){
	.goratop.visitor .kv_slide .kv_text {
        width: 63%;
		padding-top: 6.2%;
		padding-bottom: 4.4%;
	}
	.goratop.visitor .kv_slide .kv_text h1 {
        width: 81%;
        font-size: 3.7vw;
        letter-spacing: 0.08em;
		padding: 0 0 4.8%;
	}
	.goratop.visitor .kv_slide .kv_text p {
		font-size: 6.5vw;
		letter-spacing: 0.08em;
        padding-top: 5.5%;
	}
}
/* /KVレイアウト改修_250312 */