@charset "UTF-8";
:root {
	--font-jp: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ",sans-serif;
	--c-red: #e0252f;
	--c-blue: #ebf2f2;
	--max-width: min(1400px,100%);
	--content-width: min(1400px,100vw); 
	--content-inner: min(1100px,90.67vw);
	--content-point: min(1000px,90.67vw);
	--sp-width: 90.67vw;
	--item-space: min(10px,2vw);
	--item-spaceL: min(30px,5vw);
	--margin-space: min(100px,14vw);
} 
html {
    font-size: medium;
    line-height: 1;
    font-family: var(--font-jp);
	font-weight: normal;
	background-color: var(--c-blue);
}
main {
	overflow: hidden;
}
img {
	width: 100%;
	vertical-align: middle;
}
a {
	color: #000;
}
p {
    line-height: 1.75;
    font-size: clamp(0.75rem, 0.377rem + 0.778vw, 0.875rem);
    font-feature-settings: "palt";
	text-align: justify;
}
button {
    all: unset;
}
.sp {
	display: none;
}
.img_wrap {
	overflow: hidden;
	display: inline-block;
	opacity: 0;
	will-change: opacity;
}
.img_wrap img {
	width: 100%;
	transform: scale(1.03);
	will-change: transform;
}
#main_visual {
	position: relative;
}
#main_visual .mv {
	position: relative;
	text-align: center;
}
#main_visual .mv picture img {
	width: var(--max-width);
	height: min(900px,60vw);
	object-fit: cover;
	object-position: right;
}
#main_visual .mv .comment {
	position: absolute;
	right: max(calc((100vw - var(--max-width)) / 2 - 20px), -2.25vw);
	top: min(36vw,530px);
	width: min(20vw,240px);
}
#main_visual .mv_box {
    position: absolute;
    top: 50%;
    left: max(calc((100vw - var(--max-width)) / 2 - -50px), 4.75vw);
    transform: translateY(-50%);
	background: url(../images/mv-box-bg.webp) left top / 10% repeat;
	width: min(400px,90vw);
	padding: min(50px,6vw) min(30px,6vw);
	clip-path: inset(0 100% 0 0);
	-webkit-clip-path: inset(0 100% 0 0);
}
#main_visual .mv_box h1 {
    width: min(370px, 70vw);
	margin: 0 auto;
}
#main_visual .mv_box p.lead {
	text-align: justify;
    font-weight: 600;
	padding: min(40px,6vw) 0 var(--item-spaceL);
	font-size: clamp(0.75rem, 0.004rem + 1.556vw, 1rem);
}
#main_visual .mv_box p.credit {
	font-size:clamp(0.625rem, -0.121rem + 1.556vw, 0.875rem);
}
@media (max-width:767px) {
	#main_visual .mv picture img {
		height: 110vw;
	}	
	#main_visual .mv .comment {
		left: 61vw;
		top: 50vw;
		width: 48vw;
	}	
	#main_visual .mv_box {
		position: static;
		transform: translateY(-10%);
		width: calc( var(--sp-width) - 10vw);
		padding: min(40px,5vw);
		margin: 0 auto;
	}
}
@media (max-width: 1024px) and (min-width: 769px) {
	#main_visual .mv_box h1 {
		width: min(280px, 58vw);
	}
	#main_visual .mv_box {
		top: auto;
		bottom: 50%;
		left: 0%;
		transform: translateY(50%) translateX(-0%);
		padding: 4vw 2vw;
		width: 40vw;
	}
}

.wrapper {
	padding: min(120px,16vw) 0 ;
}
#introduction.wrapper {
	width: var(--content-inner);
	margin: 0 auto;
}
#introduction .intro_heading {
	width: min(610px,60vw);
	padding-bottom: min(30px,4vw);
}
#introduction .description {
	line-height: 1.9;
	font-size: clamp(0.938rem, 0.849rem + 0.334vw, 1.063rem);
}
/* about accordion */
#introduction .about {
	width: min(550px, var(--sp-width));
	background-color: #fff;
	padding: min(30px,6vw);
	margin-top: min(40px,8vw);
}
#introduction .about button {
	pointer-events: none;
	width: min(140px,36vw);
	padding-bottom: min(15px,2vw);
}
#introduction .video_wrap video {
	width: 100%;
	margin-top: min(140px,16vw);
}
.inner {
	width: var(--content-point);
	margin: 0 auto;
}
.inner.large {
	width: var(--max-width);
}
.future {
	text-align: justify;
	padding-bottom: var(--item-spaceL);
}
.future .section_heading {
	margin: 0 auto;
	padding-bottom: min(8px,1vw);
}
.future .section_text {
	font-size: clamp(0.938rem, 0.893rem + 0.119vw, 1rem);
}
.future.column {
	display: flex;
	align-items: end;
}
.future.column .section_heading {
	flex: auto;
	margin-right: var(--item-spaceL);
}
.future.column .section_text {
	flex: 4;
}
.future.row .section_heading {
	margin-bottom: var(--item-space);
}
.future.row .section_text {
	width: min(520px,90%);
	margin: 0 auto;
}
.caption {
	text-align: justify;
}
.comment {
	width: min(8vw,100px);
}
.point_balloon {
	margin-bottom: var(--item-space);
}
.point_balloon.basic > img {
	width: auto;
	height: min(80px,16vw);
}
.point_balloon.long > img {
	width: auto;
	height: min(44px,10vw);
}
#hotspring .future .section_heading {
	width: min(240px,60vw);
	flex: auto;
}
#hotspring .inner.large {
	display: flex;
} 
#hotspring .inner.large > div {
	flex: 1;
} 
#hotspring .inner.large .main_img {
	position: relative;
} 
#hotspring .inner.large > div > .point_text {
	width: 90%;
	margin: 0 auto;
	position: relative;
}
#hotspring .inner.large > .hotspring_main01_wrap > .point_text {
	margin-top: min(-1vw,-20px);
}
#hotspring .inner.large > .hotspring_main02_wrap > .point_text {
	margin-top: min(-3.2vw,-58px);
}
#hotspring .hotspring_main01_wrap .comment {
	position: absolute;
	top: min(10vw,120px);
	left: min(6vw,60px);
}
#hotspring .hotspring_main02_wrap .comment {
	position: absolute;
	top: min(14vw,184px);
	left: min(10vw,140px);
} 
#hotspring .hotspring_sub01_wrap {
	display: flex;
	align-items: end;
	gap: var(--item-space);
	position: relative;
	justify-content: flex-end;
	margin-top: var(--margin-space);
}
#hotspring .hotspring_sub01_wrap .img_wrap {
	margin-right: min(20vw,200px);
	width: 40%;
}
#hotspring .hotspring_sub01_wrap .point_text {
	width: min(370px,30%);
}
#hotspring .hotspring_sub01_wrap .cutout {
	position: absolute;
	right: 0;
	bottom: 0;
	width: min(270px,32vw);
}
#hotspring .hotspring_sub02_wrap {
	position: relative;
	display: flex;
	gap: var(--item-spaceL);
	align-items: end;
	margin-top: var(--margin-space);
}
#hotspring .hotspring_sub02_wrap .cutout {
	margin-left: min(-4vw,-60px);
	position: relative;
}
#hotspring .hotspring_sub02_wrap .comment {
	margin-left: min(5vw,80px);
	margin-bottom: min(-1vw,-30px);
}
#hotspring .hotspring_sub02_wrap .point_text {
	width: min(610px,var(--content-sp));
}
#local .inner {
	display: flex;
	align-items: center;
}
#local .inner > div {
	flex: 1;
}
#local .future .section_heading {
	width: min(340px,56vw);
}
#local .local_main01_wrap .main_img {
	position: relative;
}
#local .local_main01_wrap .comment {
	position: absolute;
	top: min(250px,16vw);
	right: min(86px,6vw);
}
#local .local_sub_wrap {
	display: flex;
	gap: var(--item-spaceL);
	width: 90%;
	margin: var(--item-spaceL) auto 0;
}
#local .local_sub_wrap > div {
	flex: 1;
}
#meal {
	position: relative;
}
#meal .stamp {
    position: absolute;
    width: min(440px, 54.29vw);
    height: min(440px, 54.29vw);
    left: max(calc((100vw - var(--max-width)) / 2 - 43rem), -10.25vw);
    bottom: min(200px, 8vw);
    background: url(../images/stamp.webp) top left / contain no-repeat;
    z-index: -1;
    pointer-events: none;
    will-change: transform;
}
#meal .future .section_heading {
	width: min(240px,65vw);
	flex: auto;
}
#meal .meal_main_wrap {
	position: relative;
}
#meal .meal_main_wrap .comment {
	position: absolute;
	left: min(620px,44vw);
	top: min(140px,10vw);
}
#meal .meal_sub01_wrap {
	display: grid;
	margin-top: var(--item-spaceL);
	grid-template-columns: 1.3fr 1fr 1fr;
	gap: var(--item-spaceL) var(--item-space);
}
#meal .meal_sub01_wrap .meal_sub01-1 {
	position: relative;
	grid-row: 1 / 3;
}
#meal .meal_sub01_wrap .meal_sub01-1 .comment {
	position: absolute;
	right: min(20px,2vw);
	top: min(30px,3vw);
	width: min(70px,12.5vw);
}
#meal .meal_sub01_wrap .point_text {
	grid-column: 2 / 4;
	grid-row: 2;
	display: grid;
	grid-template-columns: 1.8fr 1fr;
	gap: 0 var(--item-spaceL);
	align-items: end;
	margin-left: var(--item-space);
}
#meal .meal_sub01_wrap .point_text .cutout_wrap {
	grid-column: 2;
	grid-row: 1 / 3;
	position: relative;
}
#meal .meal_sub01_wrap .point_text .comment {
	position: absolute;
	top: min(150px,14vw);
	left: min(-40px,-2vw);
}
#meal .meal_sub02_wrap .meal_sub02_inner {
	display: flex;
	align-items: end;
	width: min(665px,47vw);
	margin: 0 auto;
	gap: var(--item-spaceL);
	margin-top: var(--margin-space);
}
#meal .meal_sub02_wrap .meal_sub02_inner .img_wrap {
	position: relative;
	flex: 2;
}
#meal .meal_sub02_wrap .meal_sub02_inner .comment {
	position: absolute;
	top: min(2vw,20px);
	left: min(2vw,10px);
}
#meal .meal_sub02_wrap .meal_sub02_inner .point_text {
	flex: 4;
	margin-bottom: var(--item-spaceL);
}
#meal .meal_sub02_wrap > .img_wrap {
	position: relative;
	margin-top: var(--margin-space);
}
#meal .meal_sub02_wrap > .img_wrap .comment {
	position: absolute;
	top: min(-20px,-1vw);
	right: min(80px,1vw);
	width: min(17vw,210px);
}
#room {
	position: relative;
} 
#room >	.inner {
	position: relative;
	z-index: 1;
} 
#room .stamp {
	position: absolute;
	width: min(440px, 54.29vw);
	height: min(440px, 54.29vw);
	right: max(calc((100vw - var(--max-width)) / 2 - 43rem), -10.25vw);
	bottom: min(200px, -20vw);
	background: url(../images/stamp.webp) top left / contain no-repeat;
	z-index: 0;
	pointer-events: none;
	will-change: transform;
}
#room .inner.large {
	display: flex;
	align-items: center;
}
#room .inner.large .room_main01_wrap {
	flex: 2;
}
#room .inner.large .future {
	flex: 1.8;
}
#room .inner.large .future .section_heading {
	width: min(330px,57vw);
}
#room .room_main02_wrap {
	display: flex;
	align-items: end;
	gap: var(--item-space);
	margin-top: var(--item-spaceL);
}
#room .room_main02_wrap > p {
	width: min(450px,40vw);
	padding-right: var(--item-space);
	text-align: left;
}
#room .room_main02_wrap .room_main02-1 {
	position: relative;
}
#room .room_main02_wrap .room_main02-1 .comment {
	position: absolute;
	top: min(2vw,40px);
	left: min(10vw,30px);
	width: min(18vw,210px);
}
#room .room_sub_wrap {
	display: flex;
	align-items: end;
	width: min(740px,53vw);
	margin: 0 auto;
	gap: var(--item-spaceL);
	margin-top: var(--margin-space);
}
#room .room_sub_wrap .point_text {
	flex: 2.8;
}
#room .room_sub_inner {
	position: relative;
	flex: 2;
}
#room .room_sub_inner .cutout {
	position: absolute;
	top: min(-20px,-2vw);
	left: min(-20px,-4vw);
	width: min(210px,15.07vw);
}
#experience .inner {
	display: flex;
	align-items: center;
}
#experience .inner .experience_main_wrap {
	flex: 2;
}
#experience .inner .future {
	flex: 1.8;
}
#experience .future .section_heading {
	width: min(330px,60vw);
}
#experience .experience_main_wrap {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--item-space);
}
#experience .experience_main01-1 {
	position: relative;
	grid-row: 1 / 3;
}
#experience .experience_main01-1 .img_wrap {
	position: relative;
	z-index: 5;
}
#experience .experience_main01-1 .cutout {
	position: absolute;
	width: min(260px,18.57vw);
	top: min(-5vw,-160px);
	left: min(15vw,80px);
	z-index: 4;
}
#experience .experience_main01-3 {
	grid-row: 2;
	width: 90%;
	margin: 0 auto;
	padding-top: var(--item-space);
}
#experience .experience_main_wrap .point_text {
	grid-column: 1 / 3;
	width: min(550px, 90%);
	margin: 0 auto;
	padding-top: var(--item-spaceL);
}
#experience .experience_sub_wrap {
	display: flex;
	align-items: flex-end;
	gap: var(--item-spaceL);
	width: 74%;
	margin: min(80px,6vw) auto 0;
}
#experience .experience_sub_wrap .cutout {
	position: relative;
	flex: 1;
}
#experience .experience_sub_wrap .comment {
	position: absolute;
	top: min(-2vw,-30px);
	left: 0;
}
#experience .experience_sub_wrap > p {
	flex: 1.2;
}

@media (max-width:767px) {
	:root {
		--content-sp: 81.33vw;
	}
	.comment {
		width: min(22vw,90px);
	}
	.future .section_heading {
		padding-bottom: min(20px,6vw);
	}
	.future.column {
		flex-direction: column;
		align-items: flex-start;
	}
	.future.column .section_heading {
		margin-right: auto;
	}
	#introduction .intro_heading {
		width: min(610px,68vw);
		padding-bottom: min(30px,6vw);
	}
	#hotspring .inner.large {
		flex-direction: column;
		gap: min(10vw,60px);
	}
	#hotspring .inner.large > .hotspring_main02_wrap > .point_text {
		margin-top: min(-3vw,-40px);
	}
	#hotspring .inner.large > div > .point_text {
		width: var(--content-sp);
	}
	#hotspring .hotspring_sub01_wrap {
		flex-direction: column;
		align-items: center;
	}
	#hotspring .hotspring_sub01_wrap .img_wrap {
		width: var(--content-sp);
		margin: 0 auto;
	}
	#hotspring .hotspring_sub01_wrap .point_text {
		width: var(--content-sp);
	}
	#hotspring .hotspring_sub01_wrap .img_wrap img {
		width: 70%
	}
	#hotspring .hotspring_sub02_wrap {
		width: var(--content-sp);
		margin: var(--margin-space) auto;
		flex-direction: column-reverse;
	}
	#hotspring .hotspring_sub02_wrap .cutout {
		width: var(--content-sp);
		margin-bottom: min(-6vw,-30px);
	}
	#hotspring .hotspring_sub02_wrap .comment {
		margin-bottom: min(-4vw,-20px);
	}
	#hotspring .hotspring_sub02_wrap .img_wrap {
		z-index: 1;
	}
	#hotspring .hotspring_main02_wrap .comment {
		top: min(28vw,184px);
		left: min(10vw,140px);
	}
	#local .inner {
		flex-direction: column-reverse;
	}
	#local .local_sub_wrap {
		flex-direction: column;
		width: var(--content-sp);
	}
	#local .local_main01_wrap .comment {
		top: min(160px,29vw);
		right: min(86px,6vw);
}
	#meal .meal_sub01_wrap {
		grid-template-columns: 1fr 1fr;
		gap: var(--item-space);
	}
	#meal .meal_sub01_wrap .point_text {
		grid-column: 1 / 4;
		grid-row: 3;
		grid-template-columns: 1fr;
		margin-top: var(--item-space);
	}
	#meal .meal_sub01_wrap .meal_sub01-1 {
		grid-row: 1;
		grid-column: 1 / 3;
		width: 70%;
	}
	#meal .meal_sub01_wrap .meal_sub01-2 {
		grid-row: 2;
		grid-column: 1;
	}
	#meal .meal_sub01_wrap .meal_sub01-3 {
		grid-row: 2;
		grid-column: 2;
	}
	#meal .meal_sub01_wrap .point_text .cutout_wrap {
		grid-column: 1;
		grid-row: 3;
		width: 50vw;
		margin: 0 0 0 auto;
		padding-top: var(--item-spaceL);
	}
	#meal .meal_sub01_wrap .point_text .comment {
		position: absolute;
		top: min(200px,37vw);
		left: min(-50px,-15vw);
	}
	#meal .meal_sub02_wrap .meal_sub02_inner {
		flex-direction: column;
		width: var(--content-sp);
	}
	#meal .meal_sub02_wrap .meal_sub02_inner .img_wrap {
		width: 58%;
		margin: 0 0 min(-13vw,-64px) auto;
	}
	#meal .meal_sub02_wrap .meal_sub02_inner .comment {
		top: min(5vw,20px);
		left: min(4vw,10px);
	}
	#meal .meal_main_wrap .comment {
		top: min(140px,24vw);
	}
	#room .inner.large {
		flex-direction: column-reverse;
	}
	#room .room_main02_wrap {
		display: grid;
		grid-template-columns: 1fr 1.2fr;
		margin: var(--item-spaceL) auto 0;
	}
	#room .room_main02_wrap > p {
		text-align: left;
		width: auto;
		padding-right: 0;
	}
	#room .room_main02_wrap .room_main02-2 {
		grid-column: 1 / 3;
	}
	#room .room_main02_wrap .room_main02-1 .comment {
		top: min(1vw,60px);
		left: min(6vw,120px);
		width: 40vw;
	}
	#room .room_sub_wrap {
		flex-direction: column;
		width: var(--content-sp);
		gap: min(150px,16vw);
	}
	#room .room_sub_inner .cutout {
		position: absolute;
		top: min(-40px,-6vw);
		left: min(-10px,-2vw);
		width: min(210px,51vw);
	}
	#experience .inner {
		flex-direction: column-reverse;
	}
	#experience .experience_sub_wrap {
		width: var(--content-point);
		margin: min(80px,14vw) auto 0;
	}
	#experience .experience_sub_wrap .cutout {
		flex: 1.2;
	}
	#experience .experience_main_wrap {
		grid-template-columns: 1fr;
	}
	#experience .experience_main01-1 {
		grid-column: 1;
		grid-row: 1;
		margin-top: min(50vw,160px);
	}
	#experience .experience_main01-2 {
		grid-column: 1;
		grid-row: 2;
	}
	#experience .experience_main01-3 {
		grid-column: 1;
		grid-row: 3;
		width: 70%;
	}
	#experience .experience_main01-1 .cutout {
		width: min(260px,48.57vw);
		top: min(-15vw,-130px);
		left: min(5vw,40px);
	}
	#experience .experience_main_wrap .point_text {
		width: var(--content-sp);
		grid-column: 1;
	}
}


#information,
#facility {
	width: var(--content-inner);
	margin: 0 auto;
	padding-top: min(60px,20vw);
}
#information .review {
	display: flex;
	align-items: end;
	width: min(750px,65vw);
	margin: 0 auto;
}
#information .review .review_title {
	flex: 1;
}
#information .review .review_model {
	flex: 1.4;
}
#information .review .review_bg {
	flex: 2.8;
	display: flex;
	align-items: flex-end;
	margin-left: min(-1vw,-10px);
	position: relative;
}
#information .review .review_bg::before {
	content: "";
	display: block;
	width: min(140px,14vw);
	height: min(50px,14vw);
	background: url(../images/review-bg.png) bottom left / contain no-repeat;
}
#information .review .review_bg .caption {
	padding: min(25px,5vw);
	color: var(--c-red);
	background-color: #fff;
	border-radius: 8px 8px 8px 0;
}
#information .hotel_info {
	display: flex;
	gap: var(--item-spaceL);
	margin-top: var(--margin-space);
}
#information .hotel_info .hotel_image {
	flex: 2;
}
#information .hotel_info .info_wrap {
	flex: 2;
}
#information .hotel_info .hotel_map {
	flex: 0.6;
}
#information .hotel_info .hotel_title .name {
	font-size: clamp(1rem, 0.943rem + 0.284vw, 1.125rem);
	font-weight: 600;
	display: flex;
	align-items: baseline;
	gap: min(8px,0.5vw);
	padding-left: 0;
}
#information .hotel_info .hotel_title span {
	font-size: clamp(0.75rem, 0.693rem + 0.284vw, 0.875rem);
	font-weight: normal;
	line-height: 1;
}
#information .hotel_info .link_btn {
	width: 100%;
}
@media (max-width:767px) {
	#information {
		flex-direction: column;
		gap: var(--item-spaceL);
	}
	#information .review {
		display: grid;
		grid-template-columns: 1fr 1.3fr;
		width: var(--content-point);
		margin: 0 auto;
	}
	#information .review .review_bg {
		grid-column: 1 / 3;
		margin-top: min(-5vw,-32px);
		flex-direction: column;
		margin-left: 0;
	}
	#information .review .review_bg::before {
		background: url(../images/review-bg.png) bottom right/ contain no-repeat;
	}
	#information .review .review_bg .caption {
		border-radius: 8px 0 8px 8px;
	}
	#information .hotel_info {
		flex-direction: column;
	}
	#information .hotel_info .hotel_map {
		width: 40vw;
	}

}

#facility {
	display: flex;
	justify-content: space-between;
	padding: 0;
	gap: min(50px,3vw);
}
#facility .facility_map {
	flex-shrink: 0;
	width: min(400px,var(--sp-width));
}
#facility .facility_list {
	position: relative;
}
#facility .facility_list .facility_list_title {
	position: absolute;
	width: min(160px,35vw);
	top: min(-3vw,-30px);
	right: min(-2vw,-10px);
}
#facility .facility_list::before,
#facility .facility_list::after {
	content: "";
	display: block;
	width: 100%;
	height: min(6px,2vw);
	border-top: 1px solid var(--c-red);
	border-bottom: 1px solid var(--c-red);
}
#facility .facility_info {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 var(--item-spaceL);
	margin-bottom: min(40px,12vw);
	margin-top: min(60px,10vw);
}
#facility .facility_info .info_title {
	position: relative;
	margin-bottom: var(--item-space);
	display: flex;
	gap: var(--item-space);
	justify-content: end;
}
#facility .facility_info.second .info_title {
	justify-content: start;
}
#facility .facility_info .info_title .info_icon {
	width: min(120px,5.5vw);
	z-index: 1;
	position: absolute;
	left: min(-2vw,-10px);
	top: 0;
}
#facility .facility_info .name {
	font-size: clamp(0.875rem, 0.502rem + 0.778vw, 1rem);
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: min(8px,2vw);
}
#facility .facility_info .name > span {
	font-size: clamp(0.75rem, 0.693rem + 0.284vw, 0.875rem);
	font-weight: normal;
}
@media (max-width: 1140px) and (min-width: 769px) {
	#facility {
		flex-direction: column;
	}
	#facility .facility_info .info_title {
		justify-content: start;
	}
	#facility .facility_info .info_title .info_icon {
		position: static;
	}
}
@media (max-width:767px) {
	#facility {
		flex-direction: column;
		align-items: center;
		gap: 16vw;
	}
	#facility .facility_info {
		grid-template-columns: 1fr;
		gap: var(--item-spaceL);
	}
	#facility .facility_info .info_title {
		justify-content: start;
		align-items: flex-end;
		gap: var(--item-spaceL);
	}
	#facility .facility_info .info_title .info_icon {
		position: static;
		width: min(80px,14vw);
	}
	#facility .facility_list .facility_list_title {
		top: min(-6vw,-23px);
	}
}

.hotel_detail {
	display: flex;
	flex-wrap: wrap;
	margin-top: var(--item-space);
	gap: min(2px,0.5vw) var(--item-space);
}
p.icon {
	line-height: 1.4;
	text-indent: -1.6em;
	padding-left: 1.6em;
	padding-bottom: min(3px,0.5vw);
}
p.icon span {
	width: min(17px,2vw);
	height: min(16px,2vw);
	padding-left: min(22px,5.5vw);
}
p.icon .tel {
	background: url(../images/info_tel_blk.svg) no-repeat top 1px left / min(16px,4vw);
}
p.icon .address {
	background: url(../images/info_address_blk.svg) no-repeat top left 1px / min(13px,3.4vw);
}
p.icon .time {
	background: url(../images/info_time_blk.svg) no-repeat top left 1px / min(13px,3.9vw);
}
p.icon .bed {
	background: url(../images/info_bed_blk.svg) no-repeat top 1px left 2.5px / min(13px,4.5vw);
}
p.icon .card {
	background: url(../images/info_card_blk.svg) no-repeat top left 2px / min(13px,4vw);
}
p.icon .budget {
	background: url(../images/info_budget_blk.svg) no-repeat top left 1.5px / min(13px,4.4vw);
}
p.icon .train {
	background: url(../images/info_train_blk.svg) no-repeat top left min(3px,0.5vw) / min(12px,3.9vw);
}
.link_btn a {
	background-color: var(--c-red);
	gap: min(4px,1vw);
	padding: min(14px,2vw) min(34px,5vw) min(8px,2vw);
	border-radius: 50px;
	font-size: clamp(0.75rem, 0.377rem + 0.778vw, 0.875rem);
	color: #fff;
	font-weight: 600;
	position: relative;
	margin-top: var(--item-space);
	display: inline-flex;
	justify-content: center;
}
.link_btn a::after {
	content: "";
	background: url(../images/info_link_wht.svg) no-repeat top 0px  center/ contain;
	width: min(14px,4vw);
	height: min(18px,3vw);
	transform: translateY(-10%);
}
@media (max-width:767px) {
	.link_btn {
		width: 100%;
	}
	.link_btn a {
		padding: min(14px,2.6vw) 6vw min(8px,3vw);
		width: auto;
		display: inline-flex;
	}
}


@media (max-width:767px){

/* about accordion */
	#introduction .about {
		border: 1px solid var(--c-red);
		padding: 0;
		width: 90vw;
		margin-top: 5vw;
	}
	#introduction .about button {
		pointer-events: auto;
		width: calc( 100% - 12vw);
		padding: 4vw 6vw 4vw;
		position: relative;
		text-align: center;
	}
	#introduction .about button img {
		width: 30vw;
	}
	#introduction .about button::before {
		content: '';
		width: 4vw;
		height: 2px;
		background-color: var(--c-red);	
		position: absolute;
		top: 50%;
		left: 6.5%;
		transform: translateY(-50%);
	}
	#introduction .about button::after {
		content: '';
		width: 2px;
		height: 4vw;
		background-color: var(--c-red);	
		position: absolute;
		top: 50%;
		left: 8.35%;
		transform: translateY(-50%);
	}
	#introduction .about.active button::after {
		display: none;
	}
	#introduction .about .about_content {
		padding: 0 6vw 6vw;
	}
	#introduction .about .about_content p {
		margin-bottom: var(--item-space);
	}
}
#footer{
	text-align: center;
	font-size: 1rem;
	margin-bottom: 30px;
	padding-top: 50px;
}
#footer .info {
	padding: 0 var(--item-spaceL);
}
#footer .info > p{
	font-size: clamp(0.688rem, 0.659rem + 0.142vw, 0.75rem);
	line-height: 1.5;
	padding-bottom: min(7px,1vw);
	text-align: center;
}
#footer .backto_savvy a{
	margin: 20px auto;
	color: #fff;
	background-color: #ea6a88;
	border: 0.5px solid #ea6a88;
	border-radius: 40px;
	letter-spacing: 0.08em;
	font-size: clamp(0.75rem, 0.377rem + 0.778vw, 0.875rem);
	font-weight: bold;
	padding: min(15px,12vw) min(30px,28vw) min(13px,12vw);
	transition: all .3s;
	display: inline-block;
}
@media (any-hover: hover)  {
	#footer a:hover{
		opacity: .8;
		cursor: pointer;
	}
}
#footer .copy{
	text-align: center;
	border-top: 1px solid;
	padding-top: 27px;
	margin-top: 30px;
}
#footer .page_top_btn{
	position: fixed;
	bottom: min(40px,3vw);
	right: min(40px,3vw);
	width: min(46px,8vw);
	height: min(46px,8vw);
	line-height: 1.5;
	border-radius: 50%;
	text-align: center;
	display: table;
	background: var(--c-red);
	color: #fff;
	font-size: 9px;
	border: 2px solid var(--c-red);
	box-sizing: border-box;
	z-index: 999;
}
#footer .pagetop_icn{
	color: #fff;
	font-size: clamp(0.875rem, 0.847rem + 0.142vw, 0.938rem);
}
#footer .txt_btn{
	display:table-cell;
	vertical-align:middle;
}
#footer .shareBtn ul {
	width: 100%;
	gap:20px;
	display: flex;
	justify-content: center;
	margin-top: 40px;
}
#footer .shareBtn li {
	width: min(120px,20vw);
}
#footer small {
	font-size: 60%;
}
@media (max-width:767px){
	.sp {
		display: inline-block;
	}
	.pc {
		display: none;
	}
	#footer{
		text-align: center;
		padding-top: 4vw;
	}
	#footer .backto_savvy a{
		margin: 10vw auto 4vw;
	}
	#footer .copy{
		text-align: center;
		border-top: 0.2vw solid;
		padding-top: 5vw;
		margin-top: 5vw;
	}
	#footer .shareBtn ul {
		margin-top: 6vw;
		gap: 2vw;
	}
}