
.wrap {
	width: 1100px;
	margin: 0 auto;
}

.ct1 {
	background: url(../img/bg-mv.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% auto;
	padding-bottom: 50px;
	aspect-ratio: 16 / 9;
}
.bg-text {
	padding-top: 100px;
	width: 85%;
	margin: 0 auto;
}

.present {
	/* max-width: 1000px; */
	margin: 40px auto;
	padding: 40px 40px 70px;
	margin-top: 0;
	background: #fff;
	border-radius: 30px;
	box-shadow: 0 8px 24px rgba(0,0,0,.08);
	position: relative;
	text-align: center;
	font-family: "yu-gothic-pr6n", sans-serif;
	font-weight: 400;
	font-style: normal;
  }
  .present2 {
	padding-bottom: 40px;
  }
  
  .present-title {
	font-size: 28px;
	color: #21a037;
	font-weight: 700;
  }
  

  /* .present-grid {
	margin-top: 32px;
	display: flex;
	flex-wrap: wrap;           
	justify-content: center;   
	gap: 40px 32px;            
  } */

  

  .present-item {
	/* flex: 0 1 calc(33.333% - 32px);  */
	max-width: 280px;              
	text-align: center;
  }
  .present-grid  {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-top: 40px;
	justify-content: center;
  }
  

  .present-photo {
	width: 100%;
	display: block;
  }
  .present-info { margin-top: 16px; }

  #link1,#link2,#link3 {
	padding-top: 50px;
	margin-top: -50px;
  }
  
  
  @media (max-width: 815px) {
	.present-grid {
	  justify-content: center;
	  gap: 15px;
	  margin-top: 30px;
	}
	.present-item {
		width: calc((100% - 15px * 1) / 2);
	}
	.present-mascot {
		display: none;
	}
	.ct1 {
		background: url(../img/bg-mv-sp.png);
	}
	.bg-text {
		padding-top: 50px;
		margin-bottom: 20px;
		width: 100%;
	}
	.text-title {
		width: 60%;
	}
	.present {
		padding: 30px 20px 40px;
	}
	.present2 {
		padding-bottom: 200px;
	}
	#link1,#link2,#link3 {
		padding-top: 60px;
		margin-top: -60px;
	  }
	  

  }
  

  


  .present-mascot {
	position: absolute;
	left: 24px;
	bottom: 120px;
	transform: translateY(35%);
	width: 120px;
  }
  .present-mascot2 {
	position: absolute;
	right: 24px;
	bottom: 50px;
	transform: translateY(35%);
	width: 200px;
  }
  .pc-none {
	display: none;
  }
  .sp-none {
	display: block;
}
  

  @media (max-width: 815px) {
	
	.present-mascot {
	  width: 90px;
	  left: 12px;
	}
	.present-grid {
		justify-content: center;
		
	}
	.pc-none {
		display: block;
	}
	.sp-none {
		display: none;
	}
  }
  
  .entry__lead{
	font-size:20px;
	line-height:2;
	font-weight: bold;
	padding: 20px 0;
	color:#333;
	font-family: "zen-kaku-gothic-new", sans-serif;
  }
  

  .entry__btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	padding:16px 32px;
	background:#FFFCBD;
	border-radius:12px;
	text-decoration:none;
	margin-bottom:20px;
	transition:none;
	font-weight: bold;
  }
  .entry__btn:hover {
	text-decoration: none;
  }
  
  .entry__btn-icon img{
	width:28px;
	height:auto;
	display:block;
  }
  
  .entry__btn-text{
	font-size:20px;
	font-family: "yu-gothic-pr6n", sans-serif;
	color:#f29b07;
	/* font-weight:700; */
	letter-spacing:.08em;
  }

  .entry__btn-text b {
	font-weight:bold!important;
	color: #B6620E;
	font-size: 30px;
	font-family: "zen-kaku-gothic-new", sans-serif;
  }
  

.hotels {
	background: #e9f9d9;
	padding: 60px 16px 80px;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", sans-serif;
  }
  
  .hotels-inner {
	max-width: 1040px;
	margin: 0 auto;
  }
  

  .hotels-ribbon img {
	display: block;
	margin: 0 auto 40px;
	width: 422px;
  }
  

  .hotel-tabs {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-bottom: 40px;
  }
  
  .hotel-tab {
	position: relative;
	padding: 10px 22px 10px 20px;
	min-width: 240px;
	border-radius: 999px;
	border: 2px solid #0f8b28;
	background: #fff;
	color: #0f8b28;
	font-size: 25px;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
  
	cursor: pointer;
  }
  
/* 
  .hotel-tab.is-active {
	background: #0f8b28;
	color: #fff;
	border-color: #0f8b28;
  } */
  
  .hotel-tab .arrow {
	width: 18px;
	height: 18px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
  }
  
  .hotel-tab .arrow::before {
	content: "";
	width: 12px;
	height: 12px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	position: absolute;
	transform: rotate(45deg);
	transition: .4s;
  }
  .hotel-tab:hover {
	background: #0f8b28;
	color: #fff;
	/* opacity: .9; */
  }
  
  
  .hotel-area {
	margin-bottom: 48px;
  }
  
  .hotel-area-title {
	font-size: 25px;
	color: #0f8b28;
	font-weight: 700;
	margin-bottom: 18px;
  }
  

  .hotel-list {
	display: flex;
	flex-wrap: wrap;
	/* gap: 24px 20px; */
	justify-content: space-between;
  }
  
  .hotel-card {
	flex: 0 1 calc(33.333% - 32px);
	overflow: hidden;
	/* box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); */
  }

  .hotel-address img {
	margin-top: 3px;
  }
  
  .hotel-photo {
	width: 100%;
	display: block;
  }
  
  .hotel-body {
	/* padding: 12px 14px 16px; */
	text-align: left;
	display: flex;
	justify-content: space-between;
  }
  
  .hotel-name {
	font-weight: bold;
	color: #389540;
	font-size: 15px;
	/* margin: 0 0 6px; */
  }
  
  .hotel-address {
	font-size: 12px;
	color: #666;
	margin: 0 0 12px;
  }
  
  .hotel-text {
	width: 60%;
  }

  .hotel-btn {
	font-size: 13px;
	/* width: 38%; */
	color: #389540;
	background-color: #fff;
	height: 40px;
	font-weight: bold;
	line-height: 35px;
	border: 1px solid #389540;
	border-radius: 999px;
	padding: 0 10px;
  }
  /* .hotel-btn {
	display: inline-block;

	padding: 7px 16px;
	border-radius: 999px;
	border: 1px solid #0f8b28;
	font-size: 12px;
	color: #0f8b28;
	text-decoration: none;
	background: #fff;
  } */
  
  .hotel-btn:hover {
	background: #0f8b28;
	color: #fff;
	text-decoration: none;
  }
  

  @media (max-width: 815px) {
	.hotel-card {
	  flex: 0 1 calc(50% - 32px);
	}
  }
  
  @media (max-width: 815px) {
	
  
	.hotel-card {
	  flex: 0 1 100%;
	}
  
	.hotel-area-title {
	  text-align: left;
	  font-size: 20px;
	}
	.entry__btn-icon {
		display: flex;
		justify-content: center;
		width: 100%;                
	}
	.entry__btn-icon img {
		width: 50px;
	}
	.entry__btn-text b {
		font-size: 25px;
	}
  }
  

  @media screen and (min-width:815px) and (max-width:1099px) {
	.wrap {
		width: 90%;
	}

  }

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

	.wrap {
		width: 90%;
	}
	.entry__lead {
		font-size: 16px;
	}
	.hotel-card {
		flex: 0 1 calc(50% - 16px); 
		max-width: calc(50% - 16px);
	}
	.hotel-body,
	.entry__btn {
		display: block;
	}
	.hotel-text {
		width: 100%;
	}
	.hotel-btn {
		width: 100%;
	}
	.hotel-tab {
		font-size: 12px;
		min-width: 30%;
		justify-content: space-between;
		padding: 10px 5px;
		border: 1px solid #0f8b28;
		gap: 5px;
	}
	.hotel-body a {
		width: 100%;
		display: inline-block;
		text-align: center;
	}
	.hotel-body {
		margin-top: 5px;
		margin-bottom: 20px;
	}
	.hotels-ribbon img {
		width:60%;
	}
  }