@charset "utf-8";

/* ===================================================
	Home CSS
====================================================== */
/* ---------------------------------------------------
#main_img
------------------------------------------------------ */
#main_img .slick_main {
	position: relative;
	z-index: 0;
	height: 100dvh;
}
#main_img .slick_main .ofi {
	width: 100%;
	height: 100dvh;
}
#main_img .txt {
	bottom: 55px;
	left: 5.3%;
}
#main_img .txt h1 {
	margin: 0 0 20px;
	font-size: 80px;
	line-height: 1;
}
#main_img .txt p {
	font-size: 16px;
	opacity: 0.8;
}
#main_img .txt p.en {
	margin: 10px 0 0;
	font-size: 13px;
}

@media screen and (max-width: 600px) {
	#main_img .slick_main,
	#main_img .slick_main .ofi {
		height: 100svh;
	}
	#main_img .txt {
		bottom: 15vw;
		left: 7%;
	}
	#main_img .txt h1 {
		margin-bottom: 3vw;
		font-size: clamp(2.5rem, calc(1.071rem + 7.143vw), 3.75rem); /* min: 40px, max: 60px */
	}
	#main_img .txt p {
		font-size: clamp(0.813rem, calc(0.598rem + 1.071vw), 1rem); /* min: 13px, max: 16px */
	}
	#main_img .txt p.en {
		margin-top: 3vw;
		font-size: clamp(0.625rem, calc(0.411rem + 1.071vw), 0.813rem); /* min: 10px, max: 13px */
		line-height: 1.6;
	}
}

/* ---------------------------------------------------
#sec_info
------------------------------------------------------ */
#sec_info {
	padding: 135px 0 125px;
	background: linear-gradient(100deg, #141414 0%, #424242 100%);
}
#sec_info .cmn_tit {
	margin: 0 0 60px;
}
#sec_info .cmn_tit .main {
	font-size: 40px;
}
#sec_info #feed {
	display: flex;
	gap: 0 40px;
	margin: 0 0 45px;
}
#sec_info #feed li {
	width: 100%;
	max-width: 430px;
}
#sec_info #feed li .img {
	margin: 0 0 15px;
	overflow: hidden;
	background: #000;
}
#sec_info #feed li .ofi {
	width: 100%;
	aspect-ratio: 430 / 300;
	transition: transform 0.5s;
}
#sec_info #feed li .date {
	font-size: 13px;
}
#sec_info #feed li .post_tit {
	color: #fff;
}
#sec_info .link {
	text-align: right;
}

@media screen and (hover: hover) and (min-width: 601px) {
	#sec_info #feed li a:hover .ofi {
		transform: scale(1.05);
	}
}
@media screen and (max-width: 600px) {
	#sec_info {
		padding: 70px 0;
	}
	#sec_info .cmn_tit {
		align-items: flex-start;
		margin-bottom: 10px;
	}
	#sec_info .cmn_tit .main {
		font-size: 28px;
	}
	#sec_info #feed {
		display: block;
		margin-bottom: 20px;
	}
	#sec_info #feed li {
		max-width: none;
		padding: 18px 0;
		border-bottom: 1px solid var(--color-bd-wht);
	}
	#sec_info #feed li a {
		display: flex;
		align-items: center;
	}
	#sec_info #feed li .img {
		flex-shrink: 0;
		width: 38%;
		max-width: 110px;
		margin: 0 20px 0 0;
	}
	#sec_info #feed li .date {
		font-size: 10px;
	}
	#sec_info #feed li .post_tit {
		font-size: 12px;
	}
}

/* ---------------------------------------------------
#sec_lead
------------------------------------------------------ */
#sec_lead .txt {
	padding: 180px 0;
}
#sec_lead .txt h2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 35px;
	text-align: center;
}
#sec_lead .txt h2 .sub {
	margin: 0 0 20px;
	font-size: 16px;
	line-height: 1.6;
	color: #c7b890;
}
#sec_lead .txt h2 .main {
	font-size: 31px;
	line-height: 1.6;
}

/* ticker */
@keyframes loop {
	0% {
		transform: translateX(100%);
	}
	100% {
		transform: translateX(-100%);
	}
}
@keyframes loop2 {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-200%);
	}
}
#sec_lead .ticker,
#sec_lead .ticker ul {
	display: flex;
}
#sec_lead .ticker {
	position: relative;
	z-index: 0;
	width: 100%;
	overflow: hidden;
}
#sec_lead .ticker ul {
	backface-visibility: hidden;
	will-change: transform;
}
#sec_lead .ticker ul:first-child {
	animation: loop 200s -100s linear infinite;
}
#sec_lead .ticker ul:last-child {
	animation: loop2 200s linear infinite;
}
#sec_lead .ticker li {
	position: relative;
	z-index: 0;
	width: 44vw;
	max-width: 800px;
}
#sec_lead .ticker li img {
	width: 100%;
}

@media screen and (max-width: 600px) {
	#sec_lead .txt {
		padding: 70px 0;
	}
	#sec_lead .txt h2 {
		margin-bottom: 25px;
	}
	#sec_lead .txt h2 .sub {
		margin-bottom: 10px;
		font-size: 12px;
	}
	#sec_lead .txt h2 .main {
		font-size: 20px;
	}
	#sec_lead .ticker li {
		width: 64vw;
	}
}

/* ---------------------------------------------------
#sec_booking
------------------------------------------------------ */
#sec_booking {
	padding: 210px 0;
	background: url(../../img/booking_bg.webp) no-repeat right bottom, url(../../img/bg01.png) center top;
}
#sec_booking .box_flex {
	display: flex;
	gap: 0 40px;
	justify-content: space-between;
	margin-bottom: 70px;
}
#sec_booking .box_flex .txt {
	flex-shrink: 0;
	width: 335px;
}
#sec_booking .box_flex .txt .cmn_tit {
	margin: 0 0 25px;
}
#sec_booking .box_flex .txt .note {
	margin: 10px 0 0;
	color: var(--color-txt-pale);
}
#sec_booking .box_flex .txt .note span {
	text-decoration: underline;
}
#sec_booking .form_col {
	width: 900px;
	min-width: 0;
}

/* 検索フォーム */
#search_489ban {
	margin: 0 0 45px;
}
#search_489ban form {
	display: flex;
	gap: 0 25px;
	align-items: flex-end;
}
#search_489ban form dl {
	flex-grow: 1;
}
#search_489ban form dt {
	margin: 0 0 5px;
	line-height: 1;
}
#search_489ban input[type="text"],
#search_489ban select {
	box-sizing: border-box;
	height: 55px;
	padding: 0;
	margin: 0;
	font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 20px;
	line-height: 1.6;
	color: #000;
	appearance: none;
	border: none;
	border-radius: 0;
	outline: none;
	box-shadow: none;
}
#search_489ban input[type="text"]:disabled {
	color: #888;
	opacity: 1;
	-webkit-text-fill-color: #888;
}
#search_489ban select {
	min-width: 100%;
	padding: 5px 30px 5px 25px;
	background: rgba(0, 0, 0, 0.08) url(../../img/icon_select_arrow.svg) no-repeat right 15px center;
}
#search_489ban .date_489ban:has(input[type="text"]:disabled) + .inbox_489ban .stay_489ban select {
	color: #888;
	pointer-events: none;
	-webkit-text-fill-color: #888;
}
#search_489ban .inbox_489ban {
	display: contents;
}
#search_489ban .date_489ban dd {
	display: flex;
	gap: 0 15px;
	align-items: center;
}
#search_489ban .date_489ban input[type="text"] {
	flex-grow: 1;
	width: 200px;
	min-width: 0;
	max-width: 100%;
	padding: 5px 45px 5px 25px;
	background: rgba(0, 0, 0, 0.08) url(../../img/icon_calendar.svg) no-repeat right 20px center;
}
#search_489ban .date_489ban label {
	flex-shrink: 0;
}
#search_489ban button[name="searchButton489ban"] {
	position: relative;
	z-index: 0;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 240px;
	height: 55px;
	padding: 5px 20px;
	margin: 0 0 0 15px;
	font-size: 14px;
	color: #fff;
	appearance: none;
	background: linear-gradient(to right, #ababab 0%, #848484 100%);
	border: none;
	border-radius: 0;
	outline: none;
	box-shadow: none;
	transition: opacity 0.5s;
}
#search_489ban button[name="searchButton489ban"]::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	pointer-events: none;
	content: "";
	background: #ababab;
	opacity: 0;
	transition: opacity 0.5s;
}

/* カレンダー */
#cal_489ban {
	width: 100%;
	margin: 0 0 15px;
	text-align: center;
	table-layout: fixed;
	background: #fff;
}
#cal_489ban :is(th, td):not(:last-child) {
	border-right: 1px solid #d7d7d7;
}
#cal_489ban th {
	padding: 5px 3px;
	font-size: 13px;
	color: #000;
	background: #ededed;
}
#cal_489ban td {
	padding: 3px;
}
#sec_booking .cal_note {
	display: flex;
	gap: 0 30px;
	justify-content: space-between;
	margin: 0 0 35px;
}
#sec_booking .cal_note ul {
	display: flex;
	gap: 0 10px;
	align-items: center;
}

/* 料金 */
#sec_booking .price_col,
#sec_booking .price_col > div,
#sec_booking .price_col .price,
#sec_booking .price_col .price > div {
	display: flex;
	align-items: baseline;
}
#sec_booking .price_col {
	gap: 0 10px;
	padding: 20px 0;
	border-top: 1px solid var(--color-bd);
	border-bottom: 1px solid var(--color-bd);
}
#sec_booking .price_col > div {
	flex-wrap: wrap;
}
#sec_booking .price_col .price > div + div::before {
	margin: 0 10px;
	content: "/";
}
#sec_booking .price_col .price dd span {
	font-size: 20px;
}
#sec_booking .cmn_link_arrow {
	flex-shrink: 0;
	margin: 0 0 0 auto;
}

/* appeal */
#sec_booking .appeal {
	display: flex;
	padding: 40px 0;
	background: rgba(255, 255, 255, 0.5);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}
#sec_booking .appeal li {
	display: flex;
	gap: 0 15px;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0 15px;
}
#sec_booking .appeal li + li {
	border-left: 1px solid var(--color-bd);
}
#sec_booking .appeal li .icon {
	line-height: 1;
}
#sec_booking .appeal li .txt {
	line-height: 1.6;
}
#sec_booking .appeal li .txt .en {
	font-size: 13px;
	line-height: 1.3;
	color: #a6966a;
}

@media screen and (hover: hover) and (min-width: 601px) {
	/* 検索フォーム */
	#search_489ban button[name="searchButton489ban"]:hover,
	#search_489ban button[name="searchButton489ban"]:hover::before {
		opacity: 1;
	}
}
@media screen and (max-width: 1400px) and (min-width: 601px) {
	/* カレンダー */
	#cal_489ban :is(th, td):nth-last-child(-n + 5) {
		display: none;
	}
	#cal_489ban :is(th, td):nth-last-child(6) {
		border-right: none;
	}
}
@media screen and (max-width: 600px) {
	#sec_booking {
		padding: 70px 0;
		background-size: 200% auto, auto auto;
	}
	#sec_booking .box_flex {
		display: block;
		margin-bottom: 40px;
	}
	#sec_booking .box_flex .txt {
		width: auto;
		margin: 0 0 40px;
	}
	#sec_booking .box_flex .txt .cmn_tit {
		align-items: center;
	}
	#sec_booking .form_col {
		width: auto;
	}

	/* 検索フォーム */
	#search_489ban form {
		flex-wrap: wrap;
		gap: 10px;
		align-items: flex-start;
	}
	#search_489ban input[type="text"],
	#search_489ban select {
		height: 45px;
		font-size: 16px;
	}
	#search_489ban select {
		padding: 5px 25px 5px 15px;
		background-position: right 10px center;
	}
	#search_489ban .date_489ban {
		max-width: calc(100% - 110px);
	}
	#search_489ban .date_489ban dd {
		flex-direction: column;
		gap: 5px 0;
		align-items: flex-start;
	}
	#search_489ban .date_489ban input[type="text"] {
		width: 100%;
		padding: 5px 35px 5px 15px;
		background-position: right 10px center;
	}
	#search_489ban button[name="searchButton489ban"] {
		width: 100%;
		height: 45px;
		margin: 0;
	}

	/* カレンダー */
	#cal_489ban {
		margin: 0 0 15px;
	}
	#cal_489ban :is(th, td):first-child {
		border-left: 1px solid #d7d7d7;
	}
	#cal_489ban :is(th, td):last-child {
		border-right: 1px solid #d7d7d7;
	}
	#cal_489ban th {
		font-size: 12px;
	}
	#sec_booking .cal_note {
		display: block;
		margin-bottom: 45px;
	}
	#sec_booking .cal_note ul {
		display: flex;
	}

	/* 料金 */
	#sec_booking .price_col,
	#sec_booking .price_col > div,
	#sec_booking .price_col .price {
		display: block;
	}
	#sec_booking .price_col {
		padding: 0;
		border: none;
	}
	#sec_booking .price_col .price {
		margin: 0 0 15px;
	}
	#sec_booking .price_col .price > div {
		align-items: center;
		justify-content: space-between;
		padding: 8px 10px 8px 0;
		border-bottom: 1px solid var(--color-bd);
	}
	#sec_booking .price_col .price > div:first-child {
		border-top: 1px solid var(--color-bd);
	}
	#sec_booking .price_col .price > div + div::before {
		content: none;
	}

	/* appeal */
	#sec_booking .appeal {
		display: block;
		padding: 0;
	}
	#sec_booking .appeal li {
		gap: 0 10px;
		align-items: center;
		justify-content: flex-start;
		padding: 20px;
	}
	#sec_booking .appeal li + li {
		border-top: 1px solid var(--color-bd);
		border-left: none;
	}
	#sec_booking .appeal li .icon {
		width: 30px;
		text-align: center;
	}
	#sec_booking .appeal li .icon img {
		zoom: 0.6;
	}
}

/* ---------------------------------------------------
#sec_rooms
------------------------------------------------------ */
#sec_rooms .img .ofi {
	width: 100%;
}
#sec_rooms .bg {
	padding: 150px 0 240px;
	color: #fff;
	background: url(../../img/rooms_bg01.webp) no-repeat right bottom, url(../../img/rooms_bg02.webp) no-repeat left top, url(../../img/bg02.png) center center;
}
#sec_rooms .cmn_tit {
	margin: 0 0 50px;
}
#sec_rooms .cmn_tit .main {
	color: #fff;
}
#sec_rooms .slick_rooms {
	margin: 110px 0 60px;
}
#sec_rooms .slick_rooms .item {
	width: 900px !important;
	padding: 0 22px;
}
#sec_rooms .slick_rooms .item a {
	position: relative;
	z-index: 0;
	display: block;
	overflow: hidden;
	background: #000;
}
#sec_rooms .slick_rooms .item a::before {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 325px;
	content: "";
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
}
#sec_rooms .slick_rooms .ofi {
	position: relative;
	z-index: 0;
	width: 100%;
	transition: transform 0.5s, opacity 0.5s;
}
#sec_rooms .slick_rooms .txt {
	position: absolute;
	bottom: 50px;
	left: 65px;
	z-index: 5;
	color: #fff;
}
#sec_rooms .slick_rooms .txt .name {
	margin: 0 0 25px;
}
#sec_rooms .slick_rooms .txt .name span {
	display: block;
}
#sec_rooms .slick_rooms .txt .name .sub {
	font-size: 16px;
	line-height: 1.6;
}
#sec_rooms .slick_rooms .txt .name .main {
	font-size: 30px;
	font-weight: 600;
	line-height: 1;
}
#sec_rooms .slick_rooms .slick-dots {
	margin-top: 40px;
}
#sec_rooms .slick_rooms.dots_wht .slick-dots li.slick-active button {
	background: #404040;
}
#sec_rooms .btn {
	text-align: center;
}

@media screen and (hover: hover) and (min-width: 601px) {
	#sec_rooms .slick_rooms .item a:hover {
		opacity: 1;
	}
	#sec_rooms .slick_rooms .item a:hover .ofi {
		opacity: 0.6;
		transform: scale(1.02);
	}
}
@media screen and (max-width: 600px) {
	#sec_rooms .img .ofi {
		aspect-ratio: 750 / 550;
	}
	#sec_rooms .bg {
		padding: 70px 0 90px;
		background: url(../../img/rooms_bg01.webp) no-repeat right bottom, url(../../img/bg02.png) center center;
		background-size: 130% auto, 20% auto;
	}
	#sec_rooms .cmn_tit {
		margin-bottom: 25px;
	}
	#sec_rooms .slick_rooms {
		margin: 30px 0 35px;
	}
	#sec_rooms .slick_rooms .item {
		width: calc(86vw + 10px) !important;
		padding: 0 5px;
	}
	#sec_rooms .slick_rooms .item a::before {
		height: 70%;
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
	}
	#sec_rooms .slick_rooms .ofi {
		opacity: 0.9;
	}
	#sec_rooms .slick_rooms .txt {
		right: 20px;
		bottom: 10px;
		left: 20px;
	}
	#sec_rooms .slick_rooms .txt .name {
		margin-bottom: 3%;
	}
	#sec_rooms .slick_rooms .txt .name .sub,
	#sec_rooms .slick_rooms .txt .note {
		font-size: clamp(0.625rem, calc(0.339rem + 1.429vw), 0.875rem); /* min: 10px, max: 14px */
	}
	#sec_rooms .slick_rooms .txt .name .main {
		font-size: clamp(1.25rem, calc(0.536rem + 3.571vw), 1.875rem); /* min: 20px, max: 30px */
	}
	#sec_rooms .slick_rooms .slick-dots {
		margin-top: 25px;
	}
	#sec_rooms .slick_rooms.dots_wht .slick-dots li.slick-active button {
		background: #404040;
	}
	#sec_rooms .btn {
		text-align: center;
	}
}

/* ---------------------------------------------------
#sec_facilities
------------------------------------------------------ */
#sec_facilities {
	padding: 180px 0 210px;
}
#sec_facilities .cmn_tit {
	margin: 0 0 70px;
}
#sec_facilities .links {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 5px;
}
#sec_facilities .links a {
	position: relative;
	z-index: 0;
	display: block;
	overflow: hidden;
	text-align: center;
	background: #000;
}
#sec_facilities .links .ofi {
	position: relative;
	z-index: 0;
	transition: transform 0.5s, opacity 0.5s;
}
#sec_facilities .links .txt {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #fff;
}
#sec_facilities .links .txt .main {
	margin: 10px 0 0;
	font-size: 30px;
	font-weight: 600;
	line-height: 1;
}
#sec_facilities .btn {
	margin-top: 75px;
	text-align: center;
}

@media screen and (hover: hover) and (min-width: 601px) {
	#sec_facilities .links a:hover {
		opacity: 1;
	}
	#sec_facilities .links a:hover .ofi {
		opacity: 0.6;
		transform: scale(1.02);
	}
}
@media screen and (max-width: 600px) {
	#sec_facilities {
		padding: 70px 0;
	}
	#sec_facilities .cmn_tit {
		margin-bottom: 30px;
	}
	#sec_facilities .links {
		gap: 2px;
		width: 100%;
	}
	#sec_facilities .links .ofi {
		aspect-ratio: 1 / 1;
	}
	#sec_facilities .links .txt .sub {
		font-size: clamp(0.625rem, calc(0.482rem + 0.714vw), 0.75rem); /* min: 10px, max: 12px */
	}
	#sec_facilities .links .txt .main {
		margin-top: 5px;
		font-size: clamp(1rem, calc(0.286rem + 3.571vw), 1.625rem); /* min: 16px, max: 26px */
	}
	#sec_facilities .btn {
		margin-top: 40px;
	}
}

/* ---------------------------------------------------
#sec_meal
------------------------------------------------------ */
#sec_meal {
	padding: 190px 0;
	background: url(../../img/meal_bg.webp) no-repeat right bottom, url(../../img/bg01.png) center top;
}
#sec_meal .box_flex {
	display: flex;
	gap: 0 40px;
	align-items: center;
	justify-content: space-between;
}
#sec_meal .txt {
	width: 420px;
}
#sec_meal .txt .cmn_tit {
	margin: 0 0 35px;
}
#sec_meal .txt .btn {
	margin: 50px 0 0;
}

@media screen and (max-width: 600px) {
	#sec_meal {
		padding: 0 0 70px;
		background-size: 200% auto, auto auto;
	}
	#sec_meal .box_flex {
		display: block;
		width: 100%;
	}
	#sec_meal .txt {
		width: 86%;
		margin: 70px auto 0;
	}
	#sec_meal .txt .cmn_tit {
		align-items: center;
		margin-bottom: 25px;
	}
	#sec_meal .txt .btn {
		margin-top: 30px;
		text-align: center;
	}
}

/* ---------------------------------------------------
#sec_plan
------------------------------------------------------ */
#sec_plan {
	padding: 180px 0 145px;
	background: linear-gradient(100deg, #424242 0%, #141414 100%);
}
#sec_plan .cmn_tit {
	margin: 0 0 60px;
}
#sec_plan .slick_plan {
	margin: 0 0 50px;
	overflow: hidden;
}
#sec_plan .slick_plan .slick-list {
	margin: 0 -20px;
}
#sec_plan .slick_plan .slick-track {
	display: flex;
}
#sec_plan .slick_plan .slick-slide {
	height: auto !important;
	padding: 0 20px;
}
#sec_plan .slick_plan .slick-slide > div {
	height: 100%;
}
#sec_plan .slick_plan .PlanView {
	height: 100%;
	background: rgba(255, 255, 255, 0.1);
}
#sec_plan .slick_plan .PlanView .ofi {
	width: 100%;
	aspect-ratio: 430 / 300;
}
#sec_plan .slick_plan .PlanView .plan {
	padding: 30px 35px 40px;
}
#sec_plan .slick_plan .slick-dots {
	margin-top: 40px;
}
#sec_plan .btn {
	text-align: center;
}
#sec_plan .btn .cmn_btn {
	background: linear-gradient(to right, #717171 0%, #515151 100%);
}
#sec_plan .btn .cmn_btn::before {
	background: #717171;
}

@media screen and (max-width: 600px) {
	#sec_plan {
		padding: 70px 0;
	}
	#sec_plan .cmn_tit {
		margin-bottom: 30px;
	}
	#sec_plan .slick_plan {
		margin-bottom: 35px;
	}
	#sec_plan .slick_plan .slick-list {
		margin: 0 -10px;
	}
	#sec_plan .slick_plan .slick-slide {
		padding: 0 10px;
	}
	#sec_plan .slick_plan .PlanView .plan {
		padding: 20px 20px 30px;
	}
	#sec_plan .slick_plan .slick-dots {
		margin-top: 25px;
	}
}

/* ---------------------------------------------------
#sec_access
------------------------------------------------------ */
#sec_access {
	display: flex;
	flex-direction: row-reverse;
	gap: 0 40px;
	align-items: center;
	justify-content: space-between;
	padding: 190px 0;
}
#sec_access .map {
	width: 1070px;
	aspect-ratio: 1070 / 710;
}
#sec_access .map iframe {
	display: block;
	width: 100%;
	height: 100%;
}
#sec_access .txt {
	width: 420px;
}
#sec_access .txt .cmn_tit {
	margin: 0 0 35px;
}
#sec_access .txt .btn {
	margin: 35px 0 0;
}

@media screen and (max-width: 600px) {
	#sec_access {
		display: block;
		width: 100%;
		padding: 0 0 70px;
	}
	#sec_access .map {
		width: 100%;
		aspect-ratio: 750 / 500;
	}
	#sec_access .txt {
		width: 86%;
		margin: 70px auto 0;
	}
	#sec_access .txt .cmn_tit {
		align-items: center;
		margin-bottom: 25px;
	}
	#sec_access .txt .btn {
		margin-top: 30px;
		text-align: center;
	}
}

/* ---------------------------------------------------
#bnr_col
------------------------------------------------------ */
#bnr_col {
	padding: 190px 0 250px;
	border-image-source: linear-gradient(var(--color-bg), var(--color-bg)); /* 色 */
	border-image-slice: 0 fill; /* 変更しない */
	border-image-outset: 0 100vw; /* どれだけはみ出すか上下左右 */
}

/* メンバーズカード */
#bnr_col .bnr_members {
	display: flex;
	flex-direction: row-reverse;
	gap: 0 30px;
	align-items: center;
	padding: 40px 65px;
	margin: 0 0 25px;
	background: #fff;
}
#bnr_col .bnr_members .img {
	flex-shrink: 2;
	min-width: 0;
}
#bnr_col .bnr_members .txt {
	width: 730px;
	margin: 0 auto;
}
#bnr_col .bnr_members .txt h3 {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	align-items: center;
	margin: 0 0 25px;
}
#bnr_col .bnr_members .txt h3 .note {
	flex-shrink: 0;
	order: 2;
	padding: 3px 15px;
	background: rgba(0, 0, 0, 0.05);
}
#bnr_col .bnr_members .txt h3 .main {
	order: 1;
	font-size: 50px;
	line-height: 1;
	color: rgba(0, 0, 0, 0.4);
}
#bnr_col .bnr_members .txt h3 .sub {
	order: 3;
	width: 100%;
	font-size: 24px;
	line-height: 1.3;
}
#bnr_col .bnr_members .txt .point {
	color: #b3a684;
}
#bnr_col .members_note {
	margin: 0 0 80px;
	text-align: right;
}

/* 小さいバナー */
#bnr_col .slick_bnr {
	overflow: hidden;
}
#bnr_col .slick_bnr .slick-list {
	margin: 0 -15px;
}
#bnr_col .slick_bnr .slick-slide {
	padding: 0 15px;
}
#bnr_col .slick_bnr .slick-dots {
	margin-top: 40px;
}

@media screen and (max-width: 600px) {
	#bnr_col {
		padding: 70px 0;
	}

	/* メンバーズカード */
	#bnr_col .bnr_members {
		display: block;
		padding: 40px 20px;
		margin-bottom: 15px;
	}
	#bnr_col .bnr_members .img {
		margin: 0 0 30px;
		text-align: center;
	}
	#bnr_col .bnr_members .img img {
		width: 70%;
		margin: 0 0 0 20px;
	}
	#bnr_col .bnr_members .txt {
		width: auto;
	}
	#bnr_col .bnr_members .txt h3 {
		flex-direction: column;
		gap: 0;
		margin: 0 0 25px;
		text-align: center;
	}
	#bnr_col .bnr_members .txt h3 .note {
		order: -1;
		padding: 3px 10px;
		font-size: 12px;
	}
	#bnr_col .bnr_members .txt h3 .main {
		margin: 10px 0;
		font-size: 28px;
	}
	#bnr_col .bnr_members .txt h3 .sub {
		font-size: 16px;
		line-height: 1.3;
	}
	#bnr_col .bnr_members .txt .point {
		color: #b3a684;
	}
	#bnr_col .members_note {
		margin-bottom: 40px;
		text-align: left;
	}

	/* 小さいバナー */
	#bnr_col .slick_bnr {
		overflow: hidden;
	}
	#bnr_col .slick_bnr .slick-list {
		margin: 0 -10px;
	}
	#bnr_col .slick_bnr .slick-slide {
		padding: 0 10px;
	}
	#bnr_col .slick_bnr .slick-dots {
		margin-top: 25px;
	}
}
