@charset “utf-8”;

/*header*/

header{
	padding-top:15px;
	text-align:center;
	position:relative;
}

/*main*/
/*------------------------------------------
pagehead
------------------------------------------*/
.pagehead{
	text-align:center;
	padding-top:50px;
}
.pagehead h2{
	font-size:3rem;
	font-weight:normal;
}
.pagehead p{
	font-size:1.4rem;
	font-weight:bold;
	margin:15px auto;
}

.v_line{
	width:1px;
	position: relative;
	height:55px;
	margin:0 auto;
}
.v_line::after {
	background:var(--textbase);
	content: '';
	display: block;
	width: 1px;
	height: 0;
	transform: translateY(0%);
	transition: 1.2s cubic-bezier(0.22, 1, 0.36, 1);
	position: absolute;
	top: 0;
}
.v_line.is-animated::after {
	height: 100%;
}
/*------------------------------------------
guide
------------------------------------------*/
#sec_guide_intro{
	padding:90px 15px;
	background-image:url("../images/guide/bg_intro.webp?20250808");
	background-size:cover;
	background-position:center center;
}
.guide_intro_wrap{
	display:flex;
	justify-content:start;
}
.guide_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.9);
	max-width:556px;
}
.guide_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.guide_intro p{
	font-size:1.4rem;
}
.award_wrap{
	margin-top:50px;
	display:flex;
	gap:30px;
	justify-content:center;
}
.award_unit{
	width:280px;
	border-top:4px solid var(--main-color);
	border-bottom:4px solid var(--main-color);
	padding:5px 0;
	background:#fff;
	text-align:center;
}
.award_unit img{
	margin:auto;
}
.award_unit p{
	display:inline-block;
	font-size:1.3rem !important;
	padding:10px 0;
}
#sec_guide_info{
	padding:50px 0;
}
.guide_info_unit{
	padding:30px 20px;
	border-bottom:1px dotted #707070;
}
.guide_info_unit:last-child{
	border-bottom:none;
}
.guide_info_unit dl{
	display:flex;
	flex-wrap: wrap;
	width:100%;
}
.guide_info_unit dl dt,.guide_info_unit dl dd{
	box-sizing: border-box;
}
.guide_info_unit dl dt{
	font-size:1.6rem;
	display: flex;
	align-items: center;
	width: 30%;
	padding: 20px;
}
.guide_info_unit dl dd {
/*
	display: flex;
	align-items: center;
*/
	width: 70%;
	margin-left: 0;
	padding: 20px;
}
.guide_info_unit dl dd table{
	border-collapse:collapse;
	margin-top:15px;
}
.guide_info_unit dl dd table tr th,
.guide_info_unit dl dd table tr td{
	font-size:1.2rem;
	padding:3px 8px;
	border: solid 1px var(--textbase);
	text-align:center;
}

#sec_guide_floor{
	padding:90px 15px;
	background-image:url("../images/guide/bg_floor.webp");
	background-size:cover;
	background-position:center center;
	text-align:center;
	position:relative;
}
#sec_guide_floor .cnr_ttl h2,
#sec_guide_floor .cnr_ttl p{
	font-weight:600 !important;
}
.guide_floor_inner_wrapper{
	max-width:1200px;
	width:100%;
	text-align:center;
	margin:30px auto 0;
	position:relative;
}
.guide_floor_inner_wrapper .img_floor_1{
	position:absolute;
	left:0;
	top:0px;
	width:260px;
}
.guide_floor_inner_wrapper .img_floor_2{
	position:absolute;
	left:0;
	top:300px;
	width:260px;
}
.guide_floor_inner_wrapper .img_floor_3{
	position:absolute;
	left:0;
	top:600px;
	width:260px;
}
.guide_floor_inner_wrapper .img_floor_4{
	position:absolute;
	right:0;
	top:0px;
	width:260px;
}
.guide_floor_inner_wrapper .img_floor_5{
	position:absolute;
	right:0;
	top:300px;
	width:260px;
}
.guide_floor_inner_wrapper .img_floor_6{
	position:absolute;
	right:0;
	top:600px;
	width:260px;
}
.guide_floor_inner{
	max-width:550px;
	margin:auto;
}
.floor_unit{
	background:var(--main-color);
	border-radius:10px;
	color:#fff;
	height:120px;
}
.floor_unit:not(:last-child){
	margin-bottom:25px;
}
.floor_unit dl,
.floor_unit dt,
.floor_unit dd{
	display:flex;
	align-items:center;
	height:100%;
}
.floor_unit dt:after{
	content: '';/*何も入れない*/
	display: inline-block;
	width: 25px;/*画像の幅*/
	height: 25px;/*画像の高さ*/
	background-image: url(../images/common/icon_nosmoking.svg);
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	margin-left:15px;
}
.floor_unit dd div.floorimg{
	display:flex;
	align-items:center;
	height:100%;
	gap:8px;
}
.floor_unit dt{
	font-size:2.4rem;
	display: flex;
	align-items: center;
	padding: 20px;
	width:180px;
	gap:15px;
	justify-content:center;
}
.floor_unit dd{
	display: flex;
	align-items: center;
	padding: 20px;
	flex:1;
	justify-content:space-between;
	margin-inline-start: 0px;
}
.floor_unit dd p{
	text-align:left;
}

/*------------------------------------------
rooms
------------------------------------------*/
#sec_rooms_intro{
	padding:90px 15px;
	background-image:url("../images/rooms/bg_intro.jpg?20260119");
	background-size:cover;
	background-position:center center;
}
.rooms_intro_wrap{
	display:flex;
	justify-content:end;
}
.rooms_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.8);
	max-width:556px;
}
.rooms_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.rooms_intro p{
	font-size:1.4rem;
}

#sec_rooms_info{
	padding:90px 15px;
}
.room_unit{
	display:flex;
	/*align-items: flex-start;*/
	align-items:center;
}
.room_unit:not(:last-child){
	margin-bottom:60px;
}
.room_unit>div{
	flex:1;
	padding:0 30px;
}
.room_unit div h4{
	display:flex;
	align-items:center;
	font-size:20px;
	font-weight:normal;
	margin-bottom:28px;
	gap:10px;
}
.room_unit div h4 img{
	width:18px;
}
.room_unit div h4 span{
	font-size:12px;
	background:var(--bg-brown);
	color:#fff;
	padding:4px 6px;
	line-height:12px;
}
.room_unit div p{
	font-size:1.4rem;
	margin-bottom:15px;
}
.room_unit div ul{
	list-style:none;
	padding:0;
}
.room_unit div ul li{
	padding:6px 0;
	display:flex;
}
.room_unit div ul li img{
	margin-right:10px;
}

.roomimg_s{
	display:flex;
	gap:10px;
}
.roomimg_s>div{
	width:100%;
	/*height:100px;*/
	overflow:hidden;
}
.roomimg_s img{
	object-fit:cover;
	width:100%;
	height:100%;
}

.sdgs_icon_wrap{
	margin-top:80px;
	display:flex;
	align-items:center;
	gap:30px;
}
.sdgs_icon_wrap img{
	width:50%;
}
.sdgs_icon_wrap div h4{
	font-size:1.6rem;
	font-weight:normal;
}
.sdgs_icon_wrap div p{
	border:1px solid #15A144;
	color:#15A144;
	text-align:center;
	padding:15px;
	margin-top:20px;
	font-weight:bold;
}



#sec_service_info{
	background:#eee;
	padding:60px 15px;
}
#sec_service_info .cintime{
	display:flex;
	justify-content:center;
	gap:30px;
	margin-bottom:30px;
}
#sec_service_info .cintime p{
	font-size:1.6rem;
	font-weight:700 !important;
}

.service_info_unit{
	padding:20px;
	border-top:1px dotted #707070;
}
.service_info_unit:last-child{
	border-bottom:1px dotted #707070;
}
.service_info_unit dl{
	display:flex;
	flex-wrap: wrap;
	width:100%;
}
.service_info_unit dl dt,.service_info_unit dl dd{
	box-sizing: border-box;
}
.service_info_unit dl dt{
	font-size:1.6rem;
	display: flex;
	align-items: center;
	width: 30%;
	padding: 20px;
	justify-content:center;
}
.service_info_unit dl dd {
	/*display: flex;
	align-items: center;*/
	width: 70%;
	margin-left: 0;
	padding: 20px;
}
.service_info_unit dl dd table{
	border-collapse:collapse;
	margin-top:15px;
}
.service_info_unit dl dd table tr th,
.service_info_unit dl dd table tr td{
	font-size:1.2rem;
	padding:3px 8px;
	border: solid 1px var(--textbase);
	text-align:center;
}



#sec_sdgs{
	padding:50px 15px;
	text-align:center;
}
.sdgs_ttl img{
	margin:30px auto 0;
}
.sdgs_ttl h2{
	font-size:2.2rem;
	margin:30px auto;
}
.sdgs_ttl h3{
	font-size:1.6rem;
	margin:0 auto 20px;
	color:#0498D6;
}
.sdgs_ttl h3{
	font-size:1.6rem;
	margin:0 auto 20px;
	color:#0498D6;
}
.sdgs_inner{
	margin:20px auto 16px;
	max-width:860px;
}
.sdgs_plan_wrap{
	border:3px solid #0498D6;
	padding:15px;
	border-radius:10px;
}
.sdgs_plan_wrap h4{
	font-size:1.6rem;
	margin:0 auto 10px;
	color:#0498D6;
}
.sdgs_plan_wrap p{
	font-size:1.2rem;
	margin:0 auto 15px;
	background:#DAE3F4;
	padding:5px 15px;
}
.sdgs_plan_wrap img{
	max-width:100%;
	margin:auto;
}
.sdgs_inner ul{
	width: fit-content;
	margin: 20px auto 0;
}

/*------------------------------------------
breakfast
------------------------------------------*/
#sec_breakfast_intro{
	padding:90px 15px 90px 90px;
	background-image:url("../images/breakfast/bg_intro.webp");
	background-size:cover;
	background-position:center bottom;
}
.breakfast_intro_wrap{
	display:flex;
	justify-content:start;
	align-items:end;
}
.breakfast_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.8);
	max-width:556px;
	position:relative;
	margin-bottom:-50px;
}
.breakfast_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.breakfast_intro p{
	font-size:1.4rem;
}
#sec_breakfast_info{
	/*background:#eee;*/
	padding:10px 15px 50px;
}
#sec_breakfast_info ul{
	width: fit-content;
	margin: 20px auto 0;
}
#sec_breakfast_img .breakfast_img_intro{
	padding:60px 0;
	text-align:center;
}
#sec_breakfast_img .breakfast_img_ex{
	background-image:url("../images/breakfast/img_bf_1.jpg");
	background-size:cover;
	background-position:center center;
	height:600px;
	position:relative;
	margin-bottom:15px;
}
#sec_breakfast_img .breakfast_img_ex img{
	position:absolute;
	right:100px;
	top:50px;
}
.breakfast_img_1{
	margin-bottom:15px;
}
.breakfast_img_2,
.breakfast_img_3{
	margin-bottom:15px;
	display:flex;
	gap:15px;
	justify-content:space-between;
}

#sec_breakfast_info .award_wrap{
	margin-bottom:50px;
}
.award_unit_b{
	width:400px;
	border-top:4px solid var(--main-color);
	border-bottom:4px solid var(--main-color);
	background:#fff;
	display:flex;
	align-items:center;
	gap:15px;
	justify-content:center;
	padding:15px;
}
.award_unit_b p{
	display:inline-block;
	font-size:1.5rem !important;
	padding:10px 0;
}
#sec_circle_img{
	padding-bottom:50px;
}
#sec_circle_img .img_wrap{
	display:flex;
	gap:10px;
}

#sec_circle_img .img_wrap img{
	max-width: 100%;
	flex: 1;
	height:auto;
}
@media screen and (max-width: 599px) {
	#sec_circle_img .img_wrap{
		flex-wrap:wrap;
		gap:0px;
	}
	#sec_circle_img .img_wrap >*{
		width:50%;
	}
}
#sec_breakfast_img .img_row{
	padding:30px 0;
}
#sec_breakfast_img .img_row.set_a{
	background-color:var(--bg-gray);
}
@media screen and (min-width: 768px) {
	#sec_breakfast_img .img_row .wrapper{
		display:flex;
		gap:34px;
		align-items:center;
	}
	#sec_breakfast_img .img_row.set_b .wrapper{
		flex-direction: row-reverse;
	}
	#sec_breakfast_img .img_row .wrapper > *{
		width:50%;
	}
}

#sec_breakfast_img .img_row h3{
	font-family: var(--serif);
	font-size:2.2rem;
	font-weight:normal;
	margin-bottom:36px;
	text-decoration: underline;
	text-underline-offset: 8px;
	text-decoration-color:var(--main-color);
		line-height:2em;
}
@media screen and (max-width: 767px) {
	#sec_breakfast_img .img_row h3{
		font-size:1.8rem;
		margin-top:20px;
		margin-bottom:20px;
	}
}


/*------------------------------------------
bath
------------------------------------------*/
#sec_bath_intro{
	padding:90px 15px;
	background-image:url("../images/bath/bg_intro.webp?20260422");
	background-size:cover;
	background-position:center center;
}
.bath_intro_wrap{
	display:flex;
	justify-content:end;
	padding-right:180px;
}
.bath_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.8);
	max-width:556px;
}
.bath_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.bath_intro p{
	font-size:1.4rem;
}
#sec_bath_info{
	/*background:var(--bg-gray);*/
	padding:60px 15px;
}
#sec_bath_info ul{
	width: fit-content;
	margin: 20px auto 0;
}
#sec_bath_img .bath_img_intro{
	padding:60px 0;
	text-align:center;
}
#sec_bath_img .bath_img_ex{
	background-image:url("../images/bath/img_bath_ex.webp");
	background-size:cover;
	background-position:center bottom;
	height:600px;
	position:relative;
	margin-bottom:15px;
}
#sec_bath_img .bath_img_ex p{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-size:22px;
	letter-spacing:0.12em;
	color:#fff;
	display:inline-block;
}
.bath_img_1{
	margin-bottom:15px;
}
.bath_img_2,
.bath_img_3{
	margin-bottom:15px;
	display:flex;
	gap:15px;
	justify-content:space-between;
}
#sec_bath_notes{
	/*background:var(--bg-gray);*/
	padding:50px 15px;
	/*margin-top:60px;*/
}
.bath_notes_wrap{
	/*border:8px solid #fff;*/
background:var(--bg-gray);
	padding:15px 30px;
	display:flex;
	gap:30px;
	align-items:center;
}
.bath_notes_ttl{
	padding:15px 50px;
}
.bath_notes_ttl h4{
	font-size:1.8rem;
	font-family:var(--serif);
	margin:0;
	padding-bottom:15px;
	font-weight:normal;
}
.bath_notes_box h5{
	font-size:1.6rem;
	margin:0;
	font-weight:normal;
}
.bath_notes_box img{
	margin:10px 0;
}

#sec_bath_img .img_row{
	padding:30px 0;
}
#sec_bath_img .img_row.set_a{
	background-color:var(--bg-gray);
}
@media screen and (min-width: 768px) {
	#sec_bath_img .img_row .wrapper{
		display:flex;
		gap:34px;
		align-items:center;
	}
	#sec_bath_img .img_row.set_b .wrapper{
		flex-direction: row-reverse;
	}
	#sec_bath_img .img_row .wrapper > *{
		width:50%;
	}
}

#sec_bath_img .img_row h3{
	font-family: var(--serif);
	font-size:2.2rem;
	font-weight:normal;
	margin-bottom:36px;
	text-decoration: underline;
	text-underline-offset: 8px;
	text-decoration-color:var(--main-color);
		line-height:2em;
}
@media screen and (max-width: 767px) {
	#sec_bath_img .img_row h3{
		font-size:1.8rem;
		margin-top:20px;
		margin-bottom:20px;
	}
}

/*------------------------------------------
access
------------------------------------------*/
#sec_access_intro{
	padding:90px 15px;
	background-image:url("../images/access/bg_intro.webp?20250808");
	background-size:cover;
	background-position:center center;
}
.photocopy{
	background-color:var(--bg-gray);
	padding:5px;
	text-align:right;
	font-size:1rem;
}
.access_intro_wrap{
	display:flex;
	justify-content:end;
}
.access_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.8);
	max-width:556px;
}
.access_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.access_intro p{
	font-size:1.4rem;
}
#sec_access_info{
	background:var(--bg-gray);
	padding:60px 0;
	text-align:center;
}
#sec_access_info .map{
	max-width:800px;
	width:100%;
	margin:0 auto 80px;
	border: 8px solid #fff;
}
.access_info_wrap{
	display:flex;
	flex-wrap:wrap;
	gap:30px;
	justify-content:center;
}
.access_info_unit{
	text-align:center;
	width:300px;
	border-bottom:10px solid #fff;
}
.access_info_unit img{
	height:40px;
	margin:auto;
}
.access_info_unit p{
	font-weight:600;
	padding:15px 0;
}


#sec_access_info .sidelink{
	margin-top:50px;
	display:flex;
	gap:20px;
}
#sec_access_info .sidelink li{
	flex:1;
}
#sec_googlemap{
	padding-bottom:60px;
	text-align:center;
}
#sec_googlemap .btnarea{
	padding:30px 0 0;
	text-align:center;
}
#sec_googlemap .btnarea a{
	margin:auto;
}
#sec_access_spot{
	padding-bottom:60px;
}
.access_spot_intro{
	text-align:center;
	margin-bottom:60px;
	font-size:2.2rem;
}
.access_spot_wrap{
	display:flex;
	flex-wrap:wrap;
	gap:2%;
}
.access_spot_unit{
	width:32%;
	margin-bottom:20px;
}
.access_spot_unit h4{
	font-size:1.8rem;
	padding:10px;
}
.access_spot_unit .accesstime{
	background:var(--bg-brown);
	color:#fff;
	font-size:1.4rem;
	padding:3px 15px;
	display:inline-block;
}
.access_spot_unit p{
	padding:10px;
}


/*------------------------------------------
facilities
------------------------------------------*/
#sec_facilities_intro{
	padding:90px 15px;
	background-image:url("../images/facilities/bg_intro.webp?20260119");
	background-size:cover;
	background-position:center center;
}
.facilities_intro_wrap{
	display:flex;
	justify-content:start;
	padding-left:90px;
}
.facilities_intro{
	padding:90px 35px;
	background:rgba(255,255,255,0.8);
	max-width:556px;
}
.facilities_intro h3{
	font-size:2.4rem;
	margin-bottom:90px;
	font-weight:normal;
	font-family:var(--serif);
}
.facilities_intro p{
	font-size:1.4rem;
}
#sec_facilities_info{
	background:var(--bg-gray);
	padding:60px 0;
	text-align:center;
}
#sec_facilities_info .wrapper{
	display:flex;
	flex-wrap:wrap;
	gap:20px 5%;
}
.faci_box{
	background:#fff;
	text-align:left;
	width:30%;
}
.faci_box img{
	width:100%;
}
.faci_box h4{
	padding:10px;
	font-size:1.6rem;
	display: inline-block;
	border-bottom: solid 1px var(--main-color);
}
.faci_box h4 span{
	font-size:1.4rem;
}
.faci_box p{
	font-size:1.4rem;
	padding:10px 20px 15px;
}

/*------------------------------------------
news
------------------------------------------*/
#sec_news{
	background:#eee;
	padding:60px 15px;
}
.news_unit{
	background:#fff;
	padding:15px;
}
.news_unit:not(:last-child){
	margin-bottom:30px;
}
.news_unit .news_ttl_wrap{
	padding:15px;
	border-bottom:1px solid #eee;
}
.news_unit .news_ttl_wrap .news_ttl{
	font-size:2rem;
}
.news_unit .news_ttl_wrap .news_date{
	background:var(--bg-brown);
	color:#fff;
	font-size:1.2rem;
	padding:3px 10px;
	display:inline-block;
	margin-bottom:10px;
}
.news_unit>p{
	padding:15px;
word-break: break-all;
}
.news_naiyo a{
	color:blue;
}
.news_unit img
	max-width:600px;
	width:100%;
	margin:30px 0;
}
/*------------------------------------------
contact
------------------------------------------*/
#sec_company,#sec_privacy{
	padding:60px 15px;
}
#sec_company h2,#sec_privacy h2{
	font-size:2.2rem;
	text-align:center;
	margin-bottom:30px;
}

#sec_company table{
	border-collapse:collapse;
	width:100%;
}
#sec_company table tr th,
#sec_company table tr td{
	font-size:1.4rem;
	padding:10px;
	border: solid 1px var(--textbase);
}
#sec_privacy h3{
	font-size:1.6rem;
	margin:15px 0;
}

/*------------------------------------------
faq
------------------------------------------*/
#sec_faq{
	padding:60px 15px;
	background:var(--bg-gray);
}

.tab-accordion {
	width: 100%;
	margin: 0 auto;
}

.tab-nav {
	display: flex;
	gap: 1rem;
	margin-bottom: 50px;
	justify-content:center;
	flex-wrap:wrap;
}

.tab-button {
	padding: 1.5rem 3rem;
	background: #fff;
	border:1px solid var(--darkgreen);
	border-radius: 0.5rem;
	cursor: pointer;
	transition: background-color 0.2s;
	font-size:1.6rem;
	color:var(--darkgreen);
}

.tab-button:hover {
	background: #e2e8f0;
}

.tab-button.active {
	background: var(--darkgreen);
	color: white;
}

.tab-content {
	display: none;
/*
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
*/
	overflow: hidden;
}

.tab-content.active {
	display: block;
}
.qa_unit{
	margin:15px 0;
}

.tab-trigger {
	width: 100%;
	padding: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border: none;
	cursor: pointer;
	font-size:1.6rem;
}

.tab-icon {
	transition: transform 0.2s;
}
.tab-icon path{
	fill: var(--main-color);
}

.tab-trigger[aria-expanded="true"] .tab-icon {
	transform: rotate(180deg);
}

.accordion-content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-out;
	background: #fff;
}
.qa_payment_card{
	max-height:400px;
}

.accordion-content.open {
	max-height: 500px;
}

.accordion-body {
	padding: 30px;
	border-top: 1px solid #e2e8f0;
}
.accordion-body p{
	font-size:1.5rem;
}

/*------------------------------------------
responsive
------------------------------------------*/
@media screen and (min-width: 599px) and (max-width: 999px) {

}
@media screen and (max-width: 999px) {

	.pagehead{
		padding-top:30px;
	}
	.pagehead h2{
		font-size:2rem;
	}
	.pagehead p{
		font-size:1.3rem;
		margin:10px auto;
	}
	.pagehead_img{
		/*height:150px;*/
	}
	.v_line{
		height:30px;
	}

	/*guide*/

	#sec_guide_intro{
		padding: 280px 15px 0;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}
	.guide_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.guide_intro div{
		position:static;
	}
	.guide_intro h3{
		font-size:1.8rem;
		margin-bottom:40px;
	}
	.guide_intro div p{
		position:static;
		padding-top:40px;
		font-size:1.8rem;
	}
	.award_wrap{
		margin-top:0px;
		display:flex;
		gap:10px;
		justify-content:center;
		flex-direction:column;
	}
	.award_unit{
		width:80%;
		margin:auto;
		display:flex;
		justify-content:start;
		align-items:center;
		gap:10px;
	}
	.award_unit img{
		width:88px;
	}
	.award_unit p{
		width:calc(100% - 88px);
		font-size:1.2rem !important;
		padding:0 20px;
	}

	#sec_guide_info{
		padding:50px 0 0;
	}
	.guide_info_unit{
		padding:15px 0;
	}
	.guide_info_unit dl{
		flex-direction:column;
		padding: 15px 0;
	}
	.guide_info_unit:last-child{
		border-bottom:none;
	}
	.guide_info_unit dl dt{
		font-size:1.4rem;
		display: block;
		width: 100%;
		padding: 10px;
		background:var(--bg-gray);
	}
	.guide_info_unit dl dd {
		display: block;
		width: 100%;
		padding: 10px;
	}
	#sec_guide_floor{
		padding:40px 15px;
		background-position:left center;
	}
	.guide_floor_inner_wrapper{
		width:100%;
	}
	.guide_floor_inner_wrapper .img_floor_1{
		position:relative;
		left:auto;
		top:auto;
		width:45%;
	}
	.guide_floor_inner_wrapper .img_floor_2{
		position:relative;
		right:auto;
		top:auto;
		width:45%;
	}
	.guide_floor_inner_wrapper .img_floor_3{
		position:relative;
		left:auto;
		top:auto;
		width:45%;
	}
	.guide_floor_inner_wrapper .img_floor_4{
		position:relative;
		right:auto;
		top:auto;
		width:45%;
	}
	.guide_floor_inner_wrapper .img_floor_5{
		position:relative;
		left:auto;
		top:auto;
		width:45%;
	}
	.guide_floor_inner_wrapper .img_floor_6{
		position:relative;
		left:auto;
		top:auto;
		width:45%;
	}
	.img_floor_wrap{
		display:flex;
		gap:5px;
		justify-content:center;
		flex-wrap:wrap;
		margin-top:50px;
	}
	.floor_unit{
		height:auto;
	}
	.floor_unit dl{
		display:block;
	}
	.floor_unit dt{
		font-size:2rem;
		display: block;
		padding: 10px;
		width:100%;
		border-bottom:1px dotted #fff;
	}
	.floor_unit dd{
		display: block;
		padding: 15px;
		margin:0;
		text-align: center;
	}
	.floor_unit dd p{
		text-align: center;
	}
	.floor_unit dd img,
	.floor_unit dd .floorimg{
		margin: auto;
		margin-top:15px;
	}

	/*rooms*/
	#sec_rooms_intro{
		padding: 230px 15px 0;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}
	.rooms_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.rooms_intro{
		padding:60px 35px;
	}
	.rooms_intro h3{
		font-size:2rem;
		margin-bottom:40px;
	}
	#sec_rooms_info{
		padding:50px 15px;
	}
	.room_unit{
		flex-direction:column;
	}
	.room_unit:not(:last-child){
		margin-bottom:30px;
	}
	.room_unit div{
		padding:15px  0px;
	}
	.room_unit div ul li{
		font-size:1.2rem;
	}
	.roomimg_s>div{
		height:80px;
	}
	.sdgs_icon_wrap{
		margin-top:50px;
		flex-direction:column;
	}
	.sdgs_icon_wrap img{
		width:100%;
	}
	.sdgs_icon_wrap div h4{
		font-size:1.4rem;
		font-weight:normal;
	}
	.sdgs_icon_wrap div p{
		font-size:1.4rem;
	}


	#sec_service_info{
		padding:30px 15px;
	}
	#sec_service_info .cintime{
		flex-direction:column;
		gap:10px;
		text-align:center;
	}
	.service_info_unit{
		padding:10px;
	}
	.service_info_unit dl{
		flex-direction:column;
	}
	.service_info_unit dl dt{
		font-size:1.4rem;
		display: block;
		width: 100%;
		padding: 10px;
		background:var(--bg-gray);
	}
	.service_info_unit dl dd {
		display: block;
		width: 100%;
		padding: 10px;
	}
	.sdgs_ttl p{
		font-size:1.4rem;
		text-align:left;
	}
	.sdgs_inner ul li{
		text-align:left;
	}

	/*breakfast*/
	#sec_breakfast_intro{
		padding: 250px 15px 50px;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}
	.breakfast_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.breakfast_intro h3{
		font-size:2rem;
		margin-bottom:40px;
		line-height:1.5em;
	}
	#sec_breakfast_info{
		/*background:var(--bg-gray);*/
		padding:50px 15px 50px;
	}
	#sec_breakfast_img .breakfast_img_ex{
		height:300px;
		background-position:right center;
	}
	#sec_breakfast_img .breakfast_img_ex img{
		right:20px;
		top:20px;
		height:80%;
	}
	#sec_breakfast_img .breakfast_img_ex p span{
		font-size:1.8rem;
		letter-spacing: 0.12em;
	}

	.award_unit_b{
		width:100%;
		justify-content:space-between;
	}
	.award_unit_b img{
		width:80px;;
	}
	.award_unit_b p{
		display:inline-block;
		font-size:1.4rem !important;
		padding:10px;
	}

	/*bath*/
	#sec_bath_intro{
		padding: 280px 15px 30px;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}

	.bath_intro_wrap{
		padding-right:0px;
	}

	.bath_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.bath_intro h3{
		font-size:2rem;
		margin-bottom:40px;
		line-height:1.5em;
	}
	#sec_bath_img .bath_img_ex{
		height:300px;
		background-position:right center;
	}
	#sec_bath_img .bath_img_ex img{
		right:20px;
		top:20px;
		height:80%;
	}

	#sec_bath_img .bath_img_ex p{
		top: auto;
		left: auto;
		right:5%;
		bottom:5%;
		font-size:1.8rem;
		letter-spacing:0.12em;
		color:#fff;
		display:inline-block;
	}

	#sec_bath_img .bath_img_ex p span{
		font-size:1.8rem;
		letter-spacing: 0.12em;
	}

	#sec_bath_notes{
		padding:50px 0px;
		margin-top:60px;
	}
	.bath_notes_wrap{
		border:4px solid #fff;
		padding:15px 30px;
		flex-direction:column;
	}
	.bath_notes_ttl{
		padding:15px;
		text-align:center;
	}
	.bath_notes_ttl h4{
		font-size:1.8rem;
		font-family:var(--serif);
		margin:0;
		padding-bottom:15px;
		font-weight:normal;
	}
	.bath_notes_box h5{
		font-size:1.6rem;
		margin:0;
		font-weight:normal;
	}
	.bath_notes_box p{
		font-size:1.3rem;
	}
	.bath_notes_box img{
		margin:10px 0;
	}

	/*access*/
	#sec_access_intro{
		padding: 270px 15px 0px;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}
	.access_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.access_intro h3{
		font-size:2rem;
		margin-bottom:40px;
		line-height:1.5em;
	}
	#sec_access_info .sidelink{
		flex-direction:column;
		padding:0 30px;
	}


	.flex_br{
		display:none;
	}
	.access_spot_intro{
		font-size:1.8rem;
	}
	.access_spot_wrap{
		flex-direction:column;
	}
	.access_spot_unit{
		width:100%;
		margin-bottom:15px;
	}

	/*facilities*/
	#sec_facilities_intro{
		padding: 270px 15px 0px;
		background-size: contain;
		background-repeat:no-repeat;
		background-position: top center;
	}
	.facilities_intro_wrap{
		padding-left:0px;
	}
	.facilities_intro{
		background:none;
		flex-direction:column;
		padding:40px 35px;
	}
	.facilities_intro h3{
		font-size:2rem;
		margin-bottom:40px;
		line-height:1.5em;
	}
	#sec_facilities_info{
		padding:40px 15px;
	}
	#sec_facilities_info .wrapper{
		flex-direction:column;
		gap:20px;
	}
	.faci_box{
		width:100%;
	}

	/*contact*/
	#sec_contact{
		padding:40px 15px;
	}
	#sec_contact ul{
		padding-left:1em;
		font-size:1.2rem;
	}

	.form_tbl th,
	.form_tbl td {
		display: block; /* セルをブロック要素に指定 */
		width: 100%; /* セルを親要素いっぱいの幅に指定 */
		border: none;
		vertical-align: top;
		text-align: left;
		box-sizing: border-box;
	}
	.form_tbl th {
		color: #fff;
		background: var(--bg-brown);
		width:100% !important;
	}

	/*faq*/
	.tab-nav {
		flex-wrap:wrap;
	}
	.tab-button {
		padding: 1.5rem 3rem;
		font-size:1.4rem;
		width:48%;
	}
	.tab-trigger {
		font-size:1.4rem;
		text-align:left;
	}
	.accordion-body p{
		font-size:1.3rem;
	}
}

@media screen and (max-width: 599px) {

}



/*------------------------------------------
contact
------------------------------------------*/
#sec_contact{
	background:#eee;
	padding:60px 15px;
}

.contact_inner{
	max-width:1200px;
	margin:auto;
}

#sec_contact .ttl_bloc{
	text-align:center;
	margin-bottom:20px;
}

#sec_contact .ttl_bloc h3{
	color:var(--maincolor);
	font-size:3.6rem;
	line-height:1.5;
	position: relative;
}
#sec_contact .ttl_bloc p{
	margin:0px 0 30px;
}

@media screen and (max-width:767px){
	#sec_contact{
		padding:50px 0;
	}
	#sec_contact .ttl_bloc h3{
		font-size:1.8rem;
	}
	#sec_contact .ttl_bloc p{
		margin:40px 0;
		text-align:left;
	}
}

.contact_note{
	background:#FFF2F2;
	padding:20px;
	display:flex;
	justify-content:center;
	gap:10px;
	align-items:center;
}

@media screen and (max-width:767px){
	.contact_note{
		flex-direction:column;
	}
	.contact_note p{
		text-align:center;
		font-size:1.3rem;
	}
}


.contact_wrap{
	margin-top:45px;
	background:#fff;
	padding:50px 15px;
}
.form_row{
	width:100%;
	max-width:600px;
	margin:auto;
}

.form_box{
	width:100%;
	padding:10px;
	box-sizing:border-box;
}
.form_box h4{
	font-size:1.4rem;
	margin:10px 0 15px;
}

@media screen and (max-width:767px){
	.contact_wrap{
		padding:30px 15px;
	}
	.form_row{
		width:100%;
	}
	.form_box{
		padding:15px;
	}
	.form_box h4{
		font-size:1.4rem;
		margin:10px 0 15px;
	}
}

.form_box input,
.form_box textarea{
	font-size:1.4rem;
	padding:10px;
	width:100%;
	border:none;
	background:#EAEAEA;
}
input::placeholder {
  opacity: 0.5;
}

.agreement{
	padding:20px;
	text-align:center;
}
.btnarea {
	margin-top:40px;
	text-align:center;
}
.btnarea button{
	margin:auto;
}
.btnarea button:disabled {
	background: #B4B4B4 !important;
	border: 1px solid #B4B4B4 !important;
	cursor: not-allowed;
}

.notes_required .checkBtn_area {
	margin: 24px auto 0px;
	transition-duration: 0.2s;
	text-align:center;
	font-size:1.8rem;
}
.notes_required .checkBtn_area a{
	color:var(--maincolor);
	border-bottom:1px solid var(--maincolor);
}
span.hissu {
	background: var(--maincolor);
	color: #fff;
	font-size: 1rem;
	padding: 3px 20px;
	font-weight:normal;
	margin-left:8px;
}
.hp {
    display: none;
}
@media screen and (max-width:767px){
	.notes_required .checkBtn_area {
		margin: 18px auto 0px;
		font-size:1.4rem;
	}
}

.btn_contact{
	height:60px;
	border-radius:30px;
	width:300px;
	display:flex;
	background:var(--main-color);
	border:none;
	cursor:pointer;
	align-items:center;
	position:relative;
    transition: all .3s ease;
}
.btn_contact p{
	width:100%;
	align-items:center;
	padding-left:10px;
	font-size:1.7rem;
	font-weight:bold;
	color:#fff;
	text-align:center;
	z-index:1;
}


.btn_contact:hover{
	opacity: 0.7;
}
@media screen and (max-width:767px){
	.btn_contact{
		width:300px;
	}
}

.radio_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: .3em 2em;
    border: none;
}

.radio_wrap label {
    display: flex;
    align-items: center;
    gap: 0 .5em;
    position: relative;
    cursor: pointer;
}
@media screen and (max-width:767px){
	.radio_wrap {
	    gap: 1em 2em;
	    border: none;
	}
	.radio_wrap label {
		font-size:1.4rem;
		gap: 0 .5em;
	}
}
.radio_wrap label::before,
.radio_wrap label:has(:checked)::after {
    border-radius: 50%;
    content: '';
}

.radio_wrap label::before {
    width: 18px;
    height: 18px;
    background-color: #e6edf3;
}

.radio_wrap label:has(:checked)::after {
    position: absolute;
    top: 50%;
    left: 9px;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: var(--maincolor);
    animation: anim-radio-1 .3s linear;
}

@keyframes anim-radio-1 {
    0% {
        box-shadow: 0 0 0 1px transparent;
    }
    50% {
        box-shadow: 0 0 0 10px #f2f2f233;
    }
    100% {
        box-shadow: 0 0 0 10px transparent;
    }
}

.radio_wrap input {
    display: none;
}

.thanks_btnarea {
	margin-top:40px;
	text-align:center;
}
.thanks_btnarea button{
	margin:auto;
}

