@charset “utf-8”;

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

html{
	font-size: 62.5%;
}
body{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
/*
	background-image:url("../images/bg.jpg");
	background-size:cover;
	background-position:center center;
	background-repeat:no-repeat;
	background-attachment: fixed;
*/
	color:#746C52;
}
p{
	font-size:1.4em;
}
a{
	text-decoration:none;
}
a img{
	transition:0.3s all;
}
a img:hover{
	transform:scale(1.1);
}
.f_mincho{
	font-family: "Noto Serif JP", serif;
}
.f_century{
	font-family: Futura, 'Century Gothic'
}
.mx-auto{
	margin-left:auto;
	margin-right:auto;
}

.spbr{
	display:none;
}
.disp_sp{
	display:none;
}
.sp_left{
	text-align:center;
}
@media screen and (max-width: 599px) {
	.spbr{
		display:block;
	}
	.pcbr{
		display:none;
	}
	.disp_pc{
		display:none;
	}
	.disp_sp{
		display:block;
	}

	.sp_left{
		text-align:left !important;
	}
}

header{
	padding:15px 0 45px;
	text-align:center;
}
header h1{
	display:inline-block;
}
main .wrapper{
	max-width:1515px;
	margin:0 auto;
	display:flex;
	gap:20px;
	justify-content:space-between;
	padding-left:15px;
	padding-right:15px;
}

.side{
	width:300px;
	text-align:center;
}

.search_box{
	background:rgba(243,234,234,0.8);
	padding:22px 30px;
	border-radius:10px;
}
.search_box p{
	text-align:left;
}
.search_box span{
	font-size:1.4rem;
}
.search_box h2{
	text-align:center;
	margin-bottom:20px;
}
form input[type=date],
form select {
	font-size:1.4rem;
	padding:10px;
	  appearance: none; /* ブラウザのデフォルトスタイルを無効化 */
	  -webkit-appearance: none;
	  -moz-appearance: none;
}

@media screen and (max-width : 599px){
	form input[type=date]{
		width:180px;
		font-size:1.8rem;
		padding:10px;
		-webkit-border-radius: 0px;
	}
	form input[type=date]::after{
		content:url("../images/icon_cal.svg");
		width:15px;
		height:15px;
		margin-left:10px;
	}
}

.form_blc1 select{
	width:100%;
}
.form_blc2_in{
	display:flex;
	align-items:center;
	justify-content:space-between;
}
.form_blc2_in span{
	white-space:nowrap;
}
.form_blc3_in{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
}
.form_blc3_in div{
	flex:1;
}
.form_blc3_in div select{
	width:100%;
}
.form_blc4{
	margin-top:30px;
}
.form_blc4 input[type="submit"]{
	background:#3C3C3C;
	color:#fff;
	padding:10px;
	font-size:1.4rem;
	width:80%;
	display: block;
	margin:0 auto;
	cursor: pointer;
	transition:0.3s all;
}
.form_blc4 input.search_btn:hover{
	background:#BE4132;
	border-color:#BE4132;
	transform:scale(1.1);
}
.form_blc4 input.search_btn::after{
	content:url('../images/icon_search.svg');
	display:inline-block;
	vertical-align: middle;
	padding-left: 5px;
}
.bnr_kugimoto{
	padding:24px 0;
	text-align:center;
}
.weather_box h4{
	font-size:1.4rem;
	margin:0;
}
.weather_box h4::before{
	content:url('../images/icon_sun.svg');
	display:inline-block;
	vertical-align: middle;
	padding-right: 5px;
}
.sidelink{
	list-style:none;
	padding:0;
}
.sidelink li{
	margin-bottom:8px;
}
.sidelink li a{
	display:block;
	font-size:1.4rem;
	background:#5DC2D0;
	padding:8px 15px 8px 20px;
	color:#fff;
	text-align:left;
	position: relative;
	border-radius:20px;
	transition:0.3s all;
}
.sidelink li a:hover{
	transform:scale(1.1);
}
.sidelink li a::after{
	position: absolute;
	content:url('../images/icon_link.svg');
	top: 8px;
	right: 12px;
}
.hotel_wrapper{
	width:calc(100% - 335px);
	display:flex;
	gap:20px;
	justify-content:space-between;
}
.hotel_box{
	flex:1;
	text-align:center;
}
.catch{
	/*color:#fff;*/
	font-weight:500;
	font-size:2rem;
	margin-bottom:60px;
}
.catch span{
	font-size:2.4rem;
}
.hotel_inner{
	text-align:center;
	padding-left:28px;
	padding-right:28px;
	padding-bottom:20px;
}
.hotel_inner.daiichi{
	background:#e8f7fe;
}
.hotel_inner.riviere{
	background:#e2f6f3;
}
.hotel_gaikan{
	position: relative;
	top:-45px;
	margin-left:auto;
	margin-right:auto;
}
.hotel_name{
	margin:0px auto 15px;
}
.hotel_access{
	font-size:1.4rem;
}
.hotel_tel{
	font-weight:600;
}
.hotel_tel span{
	font-size:2.8rem;
	font-style:italic;
	position:relative;
	padding-left:30px;
}
.hotel_tel span::before{
	position: absolute;
	content:url('../images/icon_tel.svg');
	top: 0px;
	left: 0px;
	margin-left:5px;
}
.hotel_btn{
	list-style:none;
	display:flex;
	justify-content:space-around;
	padding:0;
	max-width:425px;
	margin:30px auto;
	gap:10px;
}
.hotel_btn span{
	font-size:1.3rem;
	font-weight:600;
	display:block;
	margin-top:10px;
}
.hotel_exp{
	text-align:left;
	padding:10px 12px;
	border-top:1px solid #CCCCCC;
}
.special_link{
	background:rgba(255,255,255,0.9);
	margin-top:50px;
	text-align:center;
	padding:50px 15px 0;
}
.special_link h2{
	font-size:20px;
	margin-bottom:24px;
	font-weight:normal;
}
.special_link .wrapper{
	max-width:1200px;
	margin: 50px auto 0;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
/*
	display: grid;
  grid-template-columns: repeat(auto-fit, 264px);
  grid-row-gap: 20px;
  grid-column-gap: 20px;
*/
  justify-content: center;
}

.special_link a{
	display:block;
	width:calc((100% - 40px) / 3);
	text-align:center;
}
.special_link h3{
	background:#5DC2D0;
	color:#fff;
	font-size:1.4rem;
	width:90%;
	padding:10px 0;
	margin:-10px auto 0;
	position: relative;
	z-index: 1;
}
.special_link p{
	text-align:left;
	padding:6px;
	font-size:1.4rem;
}
footer{
	text-align:center;
	/*margin-top:290px;*/
	margin-top:90px;
}
.copyright{
	/*color:#fff;*/
	font-size:12px;
	padding:10px;
}

@media screen and (max-width : 1064px){
	.catch span{
		display:block;
	}
}

@media screen and (min-width : 600px) and (max-width : 990px){
	.side{
		width:80%;
		display:flex;
		justify-content:center;
		gap:20px;
		margin:0 auto;
	}
}

@media screen and (min-width : 991px) and (max-width : 1090px){
	.hotel_btn{
		display:grid;
		gap:10px;
		grid-template-columns:1fr 1fr;
	}
	.hotel_btn li{
		text-align:center;
	}
	.hotel_btn li img{
		margin:0 auto;
	}
}

@media screen and (max-width : 1090px){
	.special_link .wrapper{
		margin: 50px auto 0;
		grid-template-columns: 1fr 1fr 1fr;
		place-items: center;
		place-content: center;
	}
}
@media screen and (min-width : 600px) and (max-width : 837px){
	.special_link .wrapper{
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width : 1181px){
	.hotel_btn span{
		font-size:1.1rem;
	}
}

@media screen and (max-width : 1205px){
	.hotel_tel span {
		display:block;
		padding:0;
	}
	.hotel_tel span::before{
		position: relative;
		content:url('../images/icon_tel.svg');
		margin-right:5px;
	}
}
@media screen and (max-width : 990px){
	main .wrapper{
		display:block;
		padding:15px;
	}
	.hotel_wrapper{
		width:100%;
	}
}
@media screen and (max-width : 599px){
/*
	body{
		background-image:url("../images/bg_sp.webp");
		background-size:cover;
		background-position:center bottom;
	}
*/
	p{
		font-size:1.4em;
	}
	header{
		padding:15px 0 15px;
	}
	main .wrapper{
		display:block;
		padding:15px;
	}
	.side{
		width:100%;
	}
	.hotel_wrapper{
		width:100%;
		display:block;
	}
	.catch{
		/*text-shadow: 1px 1px 4px #000;*/
		margin-bottom:60px;
	}
	.hotel_inner{
		padding-left:18px;
		padding-right:18px;
	}
	.hotel_btn{
		gap:10px;
	}
	.hotel_btn span{
		font-size:1rem;
	}
	.special_link .wrapper{
		display:block;
		padding-left:15px;
		padding-right:15px;
	}
	.special_link a{
		text-align:center;
		width:100%;
		margin-bottom:20px;
	}
	.special_link a img{
		margin:0 auto;
	}
	.special_link p{
		padding:4px;
		font-size:1.3rem;
	}
}


.sdgs{
	text-align:center;
	padding-inline:15px;
}
.sdgs img{
	margin:100px auto 0;
	max-width:100%;
}