@charset "UTF-8";
/* CSS Document */


/* ////////////////////////////////////////////////////////////////////////////////

	Common

//////////////////////////////////////////////////////////////////////////////// */
@font-face {
	font-family: 'sns_ico';
	src:
		url('../fonts/sns_ico.ttf?sij4de') format('truetype'),
		url('../fonts/sns_ico.woff?sij4de') format('woff'),
		url('../fonts/sns_ico.svg?sij4de#sns_ico') format('svg');
	font-weight: normal;
	font-style: normal;
}

i.snsIcon {
	font-family: 'sns_ico' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	color: #fff;
}

.icon-ap:before { content: "\e900";}
.icon-blo:before { content: "\e901";}
.icon-fb:before { content: "\e902";}
.icon-hp:before { content: "\e903";}
.icon-in:before { content: "\e904";}
.icon-line:before { content: "\e905";}
.icon-spo:before { content: "\e906";}
.icon-tt:before { content: "\e907";}
.icon-tw:before { content: "\e908";}
.icon-yt:before { content: "\e909";}
.icon-x:before { content: "\e90a";}
.icon-wb:before { content: "\e90b";}


html {
	scroll-behavior: smooth;
}
body {
/*	font-family: adventures-unlimited, sans-serif;
*/
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: min(3.4vw, 16px);
	line-height: 1.8;
	-webkit-text-size-adjust: 100%;
	color: #662b1e;

	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

img {
	max-width: 100%;
	height: auto;
}
ul { list-style: none;}

.anim {
	opacity: 0;
	transition: all .6s ease-out;
}
.anim.on {
	opacity: 1;
}

.svg-symbol {
	display: none !important;
}
.detail.blank {
	display: flex;
	align-items: center;
}
.detail.blank svg {
	margin-left: min(2vw, 10px);
	width: min(3vw, 15px);
}

@media screen and (min-width: 821px) {

	.sp { display: none !important;}

	a { transition: all 0.3s ease-out;}
	a:hover { opacity: 0.5;}


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

	.pc { display: none !important;}

}


header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 1000;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: min(4vw, 20px) min(6vw, 30px);
}
header h1 a {
  display: flex;
  gap: min(3vw, 20px);
  text-decoration: none;
  color: #662b1e;
  align-items: center;
}
header h1 span {
  width: min(20vw, 120px);
  line-height: 0;
}
header h1 svg {
  fill: #662b1e;
}
header h1 p {
  font-size: min(3.4vw, 18px);
}


#page main {
  padding-top: min(24vw, 140px);
}


#mainVisual {
	display: flex;
	height: 100vh;
	position: relative;
}
#mainVisual .mvLeft {
	width: 380px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	padding: min(5vw, 40px) min(4vw, 20px) 0;
	color: #662b1e;
}
#mainVisual .mvLeft h1 {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
}
#mainVisual .mvLeft h1 p {
	white-space: nowrap
}
#mainVisual .mvLeft h1 span {
	display: block;
	line-height: 0;
	width: 230px;
	max-width: 90%;
	margin: 0 auto min(1.6vw, 10px);
}
#mainVisual .mvLeft h1 span svg {
	width: 100%;
	height: auto;
	fill: #662b1f;
}
#mainVisual .mvLeft .catch {
	font-size: min(4.6vw, 26px);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.08em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

#mainVisual .mvRight {
	width: calc(100% - 380px);
	border-radius: 0 0 0 24vw;
	overflow: hidden;
	position: relative;
}
#mainVisual .mvRight .mvSlide {
	height: 100%;
}
#mainVisual .mvRight .mvSlide div,
#mainVisual .mvRight .mvSlide div li {
	height: 100%;
}
#mainVisual .mvRight .mvSlide li {
	position: relative;
	width: 100%;
	height: 100%;
}
#mainVisual .mvRight .mvSlide li img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
#mainVisual .mvRight video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

#mainVisual .mvInfo {
	position: absolute;
	bottom: 40px;
	right: 30px;
	min-width: 280px;
	max-width: 60vw;
}
#mainVisual .mvInfo span {
	width: calc(100% - min(4vw, 20px));
}
#mainVisual .mvInfo p,
#mainVisual .mvInfo a {
	display: flex;
	align-items: center;
	background-color: #fff;
	border-radius: min(2vw, 10px);
	padding: min(4vw, 20px) min(7vw, 40px) min(4vw, 20px) min(4vw, 20px);
	color: #662b1e;
	text-decoration: none;
	gap: min(2vw, 10px);
	box-shadow: 0px 0px 8px #00000026;
}
#mainVisual .mvInfo p::before,
#mainVisual .mvInfo a::before {
	content: "i";
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(4vw, 20px);
	height: min(4vw, 20px);
	background-color: #662b1e;
	color: #fff;
	font-weight: bold;
	border-radius: 50%;
	font-size: min(2.8vw, 10px);
}
#mainVisual .mvInfo a::after {
	content: "→";
	position: absolute;
	top: 50%;
	right: min(3vw, 16px);
	color: #000;
	font-size: min(3vw, 12px);
	transform: translateY(-50%);
}

#mainVisual .scroll {
	height: 100px;
	width: 76px;
	position: relative;
	overflow: hidden;
}
#mainVisual .scroll::after {
	content: "SCROLL";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%, -50%) rotate(90deg);
	font-size: min(2.8vw, 10px);
}
#mainVisual .scroll span {
	display: block;
	background-color: #662b1e;
	height: 100%;
	width: 1px;
	margin: 0 auto;
}
#mainVisual .scroll span::before {
	content: "";
	display: block;
	background-color: #662b1e;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	animation: scrl 1.4s linear 0s infinite;
}
@keyframes scrl {
	0% { top: calc(0% - 9px);}
	100% { top: calc(100% + 9px);}
}

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

	#mainVisual {
		height: 112svh;
	}
	#mainVisual .mvLeft {
		width: 32vw;
		height: 76vh;
		justify-content: flex-start;
		gap: 4vw 0;
		margin-left: 6vw;
	}
	#mainVisual .mvLeft h1 {
		font-size: min(1.8vw, 10px);
    line-height: 1.2;
		/* color: #000; */
	}
	#mainVisual .mvLeft h1 span {
		width: 100%;
    max-width: none;
		padding: 0 4%;
	}
	#mainVisual .mvLeft .catch {
		-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	}
	#mainVisual .mvLeft .catch span {
		background-color: rgba(255,255,255,0.80);
		padding: min(2vw, 10px) min(1vw, 5px);
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		line-height: 2;
	}
	#mainVisual .mvRight {
		position: absolute;
    top: 0;
    left: 0;
    width: 94vw;
		margin-left: 6vw;
		height: 73vh;
		height: 82svh;
    z-index: -1;
	}
	#mainVisual .mvInfo {
		width: 86vw;
    right: auto;
		left: 7vw;
		bottom: 22vh;
		bottom: 24svh;
		max-width: 380px;
		min-width: auto;
	}

	#mainVisual .mvRight {
		border-radius: 0 0 0 40vw;
	}

	#mainVisual .scroll {
		position: absolute;
    left: 50%;
		bottom: 6vh;
		bottom: 7svh;
    transform: translateX(-50%);
		height: 8vh;
		height: 10svh;
	}

}

#sideBtn {
	position: fixed;
	bottom: min(8vw, 60px);
	left: 0;
	z-index: 1000;
	width: 60px;
}
#sideBtn li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: min(3vw, 20px) min(2vw, 10px);
	border-radius: 0 6px 6px 0;
	color: #662b1e;
	text-decoration: none;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-size: min(3.2vw, 12px);
}
#sideBtn li a.telReserve {
	background-color: #ccc0b8;
}
#sideBtn li a.telReserve::before {
	content: "";
	display: block;
	background-image: url(../images/ico_tel.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 13px;
	height: 13px;
	margin-bottom: 12px;
}
#sideBtn li a.webReserve {
	background-color: #deb173;
}
#sideBtn li a.webReserve::before {
	content: "";
	display: block;
	background-image: url(../images/ico_cal.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 18px;
	height: 18px;
	margin-bottom: 12px;
}
@media screen and (min-width: 821px) {
	#sideBtn li a {
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
}
@media screen and (max-width: 820px) {
	#sideBtn {
		display: flex;
    width: 100vw;
    bottom: 0;
	}
	#sideBtn li {
		width: 50%;
	}
	#sideBtn li a {
		border-radius: 0;
		height: 100%;
	}
	#sideBtn li a.telReserve::before {
    margin-bottom: 0.3em;
    margin-right: 0.4em;
	}
	#sideBtn li a.webReserve::before {
    margin-bottom: 0.4em;
    margin-right: 0.6em;
	}
}

section {
	padding: min(12vw, 80px) 0;
}
section h2 {
	font-size: min(5vw, 26px);
	line-height: 1.4;
	margin-bottom: min(6vw, 30px);
	position: relative;
}
section h2 span {
	position: absolute;
	top: 0;
	right: 0;
	font-family: adventures-unlimited, sans-serif;
	color: #f5eee5;
	font-size: min(16vw, 186px);
	font-weight: normal;
	line-height: 0.7;
	z-index: -1;
}

.contentWrap {
	max-width: 1120px;
	margin: 0 auto;
	padding-left: min(6vw, 60px);
	padding-right: min(6vw, 60px);
}

.lead {
	font-size: min(3.4vw, 16px);
	margin-bottom: min(7vw, 40px);
}

@media screen and (max-width: 820px) {
	.spTitleWrap {
		position: relative;
	}
	section h2 {
		position: static;
	}
	section h2 span {
		top: auto;
		font-size: min(28vw, 186px);
	}

}


#news {
  padding: min(16vw, 120px) 0 min(12vw, 80px);
}
#news h2 span {
  transform: translateY(-50%);
}

.newsList {
  margin-bottom: min(4vw, 20px);
}
.newsList li {
  padding: min(3vw, 15px) 0;
  display: flex;
  border-bottom: #ccc solid 1px;
}
.newsList li .date {
  width: 120px;
}
.newsList li .cat {
  width: 100px;
}
.newsList li .cat-golf { color: #439554;}
.newsList li .cat-plan { color: #b1b445;}
.newsList li .cat-food { color: #393859;}
.newsList li .cat-info { color: #deb173;}


.newsList li .ttl {
  width: calc(100% - 220px);
}
.newsList li .ttl a {
  color: #662b1e;
  text-decoration: none;
}


.moreBtn a {
  display: block;
  width: fit-content;
  padding: min(2vw, 8px) min(5vw, 25px);
  color: #662b1e;
  text-decoration: none;
  font-size: min(3.2vw, 14px);
  font-weight: bold;
  border: #ccc solid 1px;
  border-radius: 6px;
}
#news .moreBtn a {
  margin-left: auto;
}


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

  .newsList li {
    flex-wrap: wrap;
    gap: min(3vw, 15px);
  }
  .newsList li .date,
  .newsList li .cat {
    width: fit-content;
  }
  .newsList li .ttl {
    width: 100%;
    font-size: min(3.6vw, 16px);
  }

}


.aboutList {
	display: flex;
	margin-top: min(8vw, 60px);
	/* margin: min(8vw, 60px) 20px 0; */
}
.aboutList li {
	width: calc(100% / 2);
	position: relative;
	overflow: hidden;
  background-color: #000;
}
/*
.aboutList li a {
	display: block;
	position: relative;
	color: #fff;
	text-decoration: none;
	overflow: hidden;
}
*/

.aboutList li .pic {
	padding-top: 100%;
	position: relative;
  opacity: 0.9;
}
.aboutList li .pic img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aboutList li .txt {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: rgba(0,0,0,0.30);
	padding: min(6vw, 30px) 15%;
	color: #fff;
}

.aboutList li .txt h3 {
	font-family: adventures-unlimited, sans-serif;
	text-align: center;
	font-size: min(6.4vw, 58px);
	font-weight: normal;
	line-height: 1;
	margin-bottom: min(2vw, 10px);
}
.aboutList li .txt p {
	font-weight: bold;
  font-size: min(3vw, 12px);
}
.aboutList li .txt .detail {
	margin-top: min(3vw, 15px);
}
.aboutList li .txt .detail a {
  display: block;
  color: #fff;
  text-decoration: none;
  border: #fff solid 1px;
  border-radius: 6px;
  padding: min(1vw, 5px) min(3vw, 15px);
}
.aboutList li .txt .detail.blank svg {
	fill: #fff;
}

.aboutDetail p {
  font-size: min(3.2vw, 14px);
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 820px) {
	#about .spTitleWrap {
		padding-bottom: min(10vw, 60px);
	}
	#about h2 span {
		right: 8vw;
		bottom: max(-8vw, -40px);
	}

	.aboutList {
		flex-direction: column;
    margin: 0;
	}
	.aboutList li {
		width: 100%;
	}
	.aboutList li .txt h3 {
		font-size: min(16vw, 62px);
	}
	.aboutList li .txt h3 + p {
		line-height: 2.2;
	}
}


#visit {
	padding-bottom: 0;
}
#visit .otaBtn {
	display: flex;
	justify-content: center;
}
#visit .otaBtn a {
  display: block;
  width: fit-content;
  padding: min(2vw, 8px) min(5vw, 25px);
  color: #662b1e;
  text-decoration: none;
  font-size: min(3.2vw, 14px);
  font-weight: bold;
  border: #ccc solid 1px;
  border-radius: 6px;
}

.visitList {
	display: flex;
	justify-content: space-between;
	margin-bottom: min(8vw, 60px);
}
.visitList > div {
	width: 32%;
	border-radius: min(2vw, 10px);
	overflow: hidden;
}
.visitList .visit01 { background-color: #e4ddd8;}
.visitList .visit02 { background-color: #f3e1b8;}
.visitList .visit03 { background-color: #deb173;}

.visitList .pic {
	line-height: 0;
	padding-top: 69.3%;
	position: relative;
}
.visitList .pic img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.visitList .txtWrap {
	cursor: pointer;
}
.visitList .txt {
	padding: min(4vw, 20px) min(6vw, 30px);
	text-align: center;
	font-size: min(3.6vw, 18px);
	font-weight: bold;
}
.visitList .detail {
	padding: min(2vw, 10px) min(2vw, 10px) min(6vw, 30px);
}
.visitList .detail .tglBtn {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #662b1e;
	text-decoration: none;
	font-size: min(3.4vw, 16px);
	font-weight: bold;
	gap: min(2vw, 10px);
}
.visitList .detail .tglBtn span {
	display: block;
	width: min(6vw, 30px);
	height: min(6vw, 30px);
	background-color: #fff;
	border-radius: 50%;
	position: relative;
}
.visitList .detail .tglBtn span::before,
.visitList .detail .tglBtn span::after {
	content: "";
	display: block;
	background-color: #662b1e;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.visitList .detail .tglBtn span::before {
	width: 50%;
	height: 2px;
}
.visitList .detail .tglBtn span::after {
	height: 50%;
	width: 2px;
	transition: all 0.3s ease-out;
}
.visitList .detail .tglBtn.on span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.visitDetail {
	display: none;
	margin-bottom: min(8vw, 60px);
}
.visitDetail > div {
	padding: min(10vw, 60px);
	position: relative;
}
#visit01 > div { background-color: #e4ddd8;}
#visit02 > div { background-color: #f3e1b8;}
#visit03 > div { background-color: #deb173;}

.visitDetail .contentWrap {
	position: relative;
}
.visitDetail .contentWrap::before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 60px solid transparent;
	border-left: 60px solid transparent;
	border-top: 0;
	position: absolute;
	top: max(-14vw, -100px);
}
#visit01 .contentWrap::before {
	border-bottom: 40px solid #e4ddd8;
	left: 16%;
	transform: translateX(-50%);
}
#visit02 .contentWrap::before {
	border-bottom: 40px solid #f3e1b8;
	left: 50%;
	transform: translateX(-50%);
}
#visit03 .contentWrap::before {
	border-bottom: 40px solid #deb173;
	right: 16%;
	transform: translateX(50%);
}
.visitDetail .txtBox {
	background-color: #fff;
	padding: min(4vw, 20px);
	margin-bottom: min(8vw, 60px);
}
.visitDetail .note {
	font-size: min(3vw, 14px);
}

.visitDetail h3 {
	margin-bottom: min(4vw, 20px);
}
.visitPrice table {
	width: 100%;
	background-color: #fff;
	text-align: center;
	border-collapse: separate;
	border-spacing: 1px;
	margin-bottom: min(4vw, 20px);
}
.visitPrice th {
	background-color: #a49b8a;
	color: #fff;
	padding: min(2vw, 10px);
}
.visitPrice td {
	background-color: #f6f6f6;
	padding: min(2vw, 10px);
}
.visitPrice tr:nth-child(even) td {
	background-color: #ececec;
}

.visitPicList {
	display: flex;
	gap: min(6vw, 30px) 3%;
	flex-wrap: wrap;
	margin: min(10vw, 60px) 0;
}
.visitPicList li {
	width: calc(91% / 4);
}
.visitPicList li .img {
	padding-top: 67%;
	border-radius: 6px;
	position: relative;
	overflow: hidden;
	margin-bottom: min(2.5vw, 12px);
}
.visitPicList li .img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.visitPicList li p {
	font-size: min(3vw, 12px);
	font-weight: bold;
	font-feature-settings: "palt";
	text-align: center;
}

.visitDetail .closeBtn {
	margin: min(10vw, 60px) 0 0;
}
.visitDetail .closeBtn a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: min(1vw, 5px);
	background-color: #fff;
	border-radius: 6px;
	text-align: center;
	color: #662b1e;
	text-decoration: none;
	padding: min(2vw, 10px);
	width: 180px;
	margin: 0 auto;
	font-size: min(3.2vw, 14px);
	font-weight: bold;
}
.visitDetail .closeBtn a span {
	display: block;
	width: 1.2em;
	height: 1.2em;
	position: relative;
}
.visitDetail .closeBtn a span::before,
.visitDetail .closeBtn a span::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #662b1e;
	position: absolute;
	top: 50%;
	left: 50%;
}
.visitDetail .closeBtn a span::before { transform: translate(-50%, -50%) rotate(45deg);}
.visitDetail .closeBtn a span::after { transform: translate(-50%, -50%) rotate(-45deg);}


#cboxCurrent {
	display: none !important;
}
#cboxTitle {
	top: 104%;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: min(3.2vw, 14px);
}

#cboxClose {
	background-color: #d5d5d5;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	top: -70px;
	right: -65px;

  display: none;
}
#cboxClose:before, #cboxClose:after {
	background-color: #662b1e;
	width: 45%;
}

#cboxNext,
#cboxPrevious {
	background-color: #d5d5d5;
	border-radius: 50%;
	border: none;
}
#cboxNext::before,
#cboxPrevious::before {
	content: "";
	display: block;
	width: 30%;
	height: 30%;
	position: absolute;
	top: 52%;
	left: 46%;
	transform: translate(-50%, -50%);
	border-top: #662b1e solid 2px;
	border-right: #662b1e solid 2px;
}


@media screen and (min-width: 821px) {
	.visitList .txtWrap { transition: all 0.3s ease-out;}
	.visitList .txtWrap:hover { opacity: 0.5;}
}
@media screen and (max-width: 820px) {
	#visit .lead {
		margin-bottom: 0;
	}
	#visit .spTitleWrap {
		padding-bottom: min(7vw, 40px);
	}
	#visit h2 span {
		right: 8vw;
/*    bottom: max(-8vw, -40px);*/
	}

	.visitList > div {
		width: 100%;
	}
	.visitList > div:nth-child(n+2) {
		display: none;
	}

	.visitDetail > div {
		margin-bottom: min(8vw, 60px);
		padding-left: 0;
		padding-right: 0;
	}
	.visitDetail:last-child > div {
		margin-bottom: 0;
	}
	#visit01 .contentWrap::before {
		left: 50%;
	}
	#visit03 .contentWrap::before {
		right: 50%;
	}

	.visitPicList {
		gap: min(6vw, 30px) 0;
		justify-content: space-between;
	}
	.visitPicList li {
		width: 48%;
	}

	#cboxClose {
		width: 40px;
		height: 40px;
		top: -50px;
		right: -40px;
	}
	#cboxNext, #cboxPrevious {
		width: 30px;
		height: 30px;
	}
	#cboxNext {
		right: -40px;
	}
	#cboxPrevious {
		left: -40px;
	}
}


#facility {
	overflow: hidden;
}

.facilityTab {
	display: flex;
	flex-wrap: wrap;
	margin-top: min(10vw, 80px);
}
.facilityTab li a {
	display: block;
	padding: min(2vw, 10px) min(3vw, 15px);
	border-bottom: #e4ddd8 solid 2px;
	color: #662b1e;
	font-weight: bold;
	text-decoration: none;
}
.facilityTab li a.current {
	border-bottom: #662b1e solid 2px;
}

.facilitySlide {
	margin: min(7vw, 42px) auto 0;
}
.facilitySlide > li {
	display: none;
}
.facilitySlide > li:first-child {
	display: block;
}
.facilitySlide .flexWrap {
	display: flex;
	margin: 0;
	background-color: #e4ddd8;
	margin-bottom: min(6vw, 30px);
}
.facilitySlide .flexWrap .txt {
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 4% 6%;
}
.facilitySlide .flexWrap .txt h3 {
	font-size: min(4vw, 20px);
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: min(4vw, 20px);
}
.facilitySlide .flexWrap .txt p {
	font-size: min(3.4vw, 16px);
}
.facilitySlide .flexWrap .pic {
	width: 50%;
	line-height: 0;
}
.facilitySlide .flexWrap .pic .slick-dotted.slick-slider {
	margin-bottom: 0;
}

.facilityImg {
	position: relative;
	padding-top: 68.6%;
}
.facilityImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.facilitySlide .slick-dots li {
	width: 10px;
	height: 10px;
}
.facilitySlide .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	border: #662b1e solid 1px;
	border-radius: 50%;
}
.facilitySlide .slick-dots li.slick-active button {
	background-color: #662b1e;
}

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

	#facility h2 span {
		right: 2vw;
	}

	.facilitySlide .flexWrap {
		flex-direction: column-reverse;
		margin: 0;
	}
	.facilitySlide .flexWrap .txt {
		width: 100%;
		padding: 10% 8%;
	}
	.facilitySlide .flexWrap .pic {
		width: 100%;
	}

	.facilitySlide .slick-dots {
		bottom: -20px;
	}
	.facilitySlide .slick-dots li {
		width: 8px;
		height: 8px;
		margin: 0 4px;
	}

}

#reserve {
	background: url("../images/bg_reserve.jpg") no-repeat center center;
	background-size: cover;
	color: #fff;
	text-align: center;
}

.reserveBnr {
	display: flex;
	justify-content: space-between;
	max-width: 860px;
	margin: 0 auto min(6vw, 30px);
}
.reserveBnr li {
	width: 32.8%;
	line-height: 0;
}

#reserve .tel {
	font-size: min(4.6vw, 18px);
	font-weight: bold;
	letter-spacing: 0.1em;
}
#reserve .tel a {
	color: #fff;
}
#reserve .tel .small {
	display: block;
	font-size: min(3vw, 15px);
	font-weight: normal;
}
@media screen and (max-width: 820px) {
	.reserveBnr {
		flex-direction: column;
	}
	.reserveBnr li {
		width: 100%;
	}
	.reserveBnr li:nth-of-type(n+2) {
		margin-top: min(4vw, 40px);
	}
}

section#guide h2 {
	margin-bottom: min(12vw, 100px);
}
.guideFaq {
	padding: min(3vw, 16px) min(4vw, 32px);
}
.guideFaq > div {
	display: flex;
	justify-content: space-between;
	font-size: min(3.4vw, 16px);
	padding: min(3vw, 16px) 0;
	border-bottom: #ccc solid 1px;
}
.guideFaq > div:last-child {
	border-bottom: none;
}
.guideFaq > div dt {
	width: min(25vw, 180px);
}
.guideFaq > div dd {
	width: calc(100% - min(27vw, 200px));
}
.guideFaq > div dd a {
	text-decoration: underline;
	color: #662b1e;
}
.guideFaq.open,
.guideAccordion {
	border-radius: min(4vw, 18px);
	border: #ccc solid 1px;
}
.guideAccordion {
	overflow: hidden;
	margin-top: min(4vw, 32px);
}
.guideAccordion > p {
	background-color: #F8F8F8;
	padding: min(4vw, 24px);
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.guideAccordion > p span {
	display: block;
	width: min(6vw, 30px);
	height: min(6vw, 30px);
	background-color: #fff;
	border-radius: 50%;
	position: relative;
}
.guideAccordion > p span::before,
.guideAccordion > p span::after {
	content: "";
	display: block;
	background-color: #662b1e;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.guideAccordion > p span::before {
	width: 50%;
	height: 2px;
}
.guideAccordion > p span::after {
	height: 50%;
	width: 2px;
	transition: all 0.3s ease-out;
}
.guideAccordion > p.open span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}


#sightseeing {
	overflow: hidden;
}
.facilityList {
	margin-top: min(10vw, 80px);
}
.facilityList .facilityPanel {
    width: 25vw;
	background-color: #f5eee5;
	border-radius: min(2vw, 10px);
}
.facilityList .facilityPanel a {
	position: relative;
	color: #662b1e;
	text-decoration: none;
}
/* 下記Safari対応の為に一つ上の要素でcssをあてる */
.facilityList .facilityPanel a .title {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.facilityList .facilityPanel a h4 {
	position: absolute;
	top: -1.8em;
	left: 0.8em;
	font-size: min(3.6vw, 18px);
	z-index: 1;
}
.facilityList .facilityPanel a h4 span {
	background-color: rgba(245,238,229,0.80);
	padding: min(2vw, 10px) min(1vw, 5px);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	line-height: 2;
}

.facilityList .facilityPanel .pic {
	line-height: 0;
	border-radius: 10px 10px 0 0;
	overflow: hidden;
}
.facilityList .facilityPanel .txt {
	padding: min(4vw, 20px);
}
.facilityList .facilityPanel .txt p + p {
	margin-top: min(3vw, 15px);
}
.facilityList .facilityPanel .txt .detail {
	width: fit-content;
	margin-left: auto;
}
.facilityList .facilityPanel .txt .detail.blank svg {
	fill: #662b1e;
}

.facilityList .slick-slide:nth-child(odd) {
	padding-top: 80px;
}
.facilityList .slick-slide:nth-child(even) {
	padding-top: 40px;
}
.facilityList .slick-dots {
	display: none !important;
}
@media screen and (min-width: 821px) {
	.facilityList .facilityPanel a:hover {
		opacity: 1;
	}
	.facilityList .facilityPanel a .detail,
	.facilityList .facilityPanel a .pic {
		transition: opacity 0.3s ease-out;
	}
	.facilityList .facilityPanel a .detail:hover,
	.facilityList .facilityPanel a:hover .pic {
		opacity: 0.6;
	}
}
@media screen and (max-width: 820px) {
	#sightseeing h2 {
		margin-bottom: 0;
	}
	#sightseeing h2 span {
		right: 8vw;
    bottom: calc(max(-8vw, -40px) - 40px);
	}
	#sightseeing .spTitleWrap {
		padding-bottom: min(10vw, 48px);
	}
	.facilityList {
		margin-top: 0;
	}
	.facilityList .facilityPanel {
		width: 90%;
	}
}

.summaryWrap {
	display: flex;
	justify-content: space-between;
	margin-top: min(8vw, 60px);
}
.summaryWrap .summaryTxt {
	width: 40%;
	padding: min(4vw, 20px) 0;
}
.summaryWrap .summaryTxt h3 {
	font-size: min(4vw, 20px);
	margin-bottom: min(4vw, 20px);
}
.summaryWrap .summaryTxt .accessInfo {
	display: flex;
	flex-wrap: wrap;
}
.summaryWrap .summaryTxt .accessInfo dt {
	width: 60px;
	margin-bottom: min(3vw, 15px);
}
.summaryWrap .summaryTxt .accessInfo dd {
	width: calc(100% - 60px);
	margin-bottom: min(3vw, 15px);
}
.summaryWrap .summaryTxt .accessInfo dd span {
	display: block;
	line-height: 1.6;
	font-size: min(3vw, 14px);
}
.summaryWrap .summaryTxt .accessInfo dd a {
	color: #662b1e;
}
.summaryWrap .summaryTxt .checkInTime {
	font-size: min(3.4vw, 16px);
	font-weight: bold;
	margin-bottom: min(4vw, 20px);
}
.summaryWrap .summaryTxt .checkInTime span {
	display: block;
	line-height: 1.6;
	font-size: min(3vw, 14px);
	font-weight: normal;
	text-indent: -1em;
	padding-left: 1em;
}
.summaryWrap .summaryTxt .wifi {
	padding-left: min(10vw, 50px);
	line-height: 1.6;
	position: relative;
	font-size: min(3vw, 14px);
}
.summaryWrap .summaryTxt .wifi::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	background: url("../images/ico_wifi.png") no-repeat center center;
	background-size: contain;
	width: min(6vw, 30px);
	height: min(6vw, 36px);
	transform: translateY(-50%);
}

.summaryWrap .summaryPic {
	width: 50%;
	line-height: 0;
	border-radius: min(2vw, 10px);
	overflow: hidden;
}

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

	#summary .spTitleWrap {
		padding-bottom: min(12vw, 80px);
	}
	#summary h2 span {
		font-size: min(31vw, 186px);
		right: -3vw;
		bottom: 0;
	}
	.summaryWrap {
		flex-direction: column-reverse;
		margin-top: 0;
	}
	.summaryWrap .summaryTxt,
	.summaryWrap .summaryPic {
		width: 100%;
	}
	.summaryWrap .summaryPic {
		margin-bottom: min(6vw, 40px);
	}
}

.gmap {
	margin-top: min(10vw, 80px);
}
.gmap > div {
	position: relative;
	width: 100%;
	height: 500px;
}
.gmap > div iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



footer {
	background-color: #662b1e;
	padding: min(8vw, 60px) min(6vw, 72px);
	color: #fff;
	text-align: center;
}

footer .ftrNav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	border-bottom: #555 solid 1px;
	padding: min(8vw, 45px) min(6vw, 60px);
}
footer .ftrNav.sub {
	padding: min(6vw, 25px) min(6vw, 60px);
}
footer .ftrNav li {
	margin: 0 15px;
	position: relative;
}
footer .ftrNav li + li::before {
	content: "/";
	position: absolute;
	left: -18px;
	top: 50%;
	transform: translateY(-50%);
}
footer .ftrNav li a {
	color: #fff;
	text-decoration: none;
	font-size: min(3.6vw, 14px);
}

footer .ftrMain {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
  align-items: center;
	gap: min(4vw, 40px);
}

footer .anchorList {
	display: flex;
	flex-wrap: wrap;
	gap: 0 min(2vw, 20px);
	margin-bottom: min(6vw, 32px);
}
footer .anchorList a {
	font-size: min(3.6vw, 16px);
	font-weight: bold;
	color: #fff;
	text-decoration: none;
}
footer .ftrSns {
	display: flex;
	align-items: center;
	gap: min(4vw, 20px);
	margin-bottom: min(4vw, 15px);
}
footer .ftrSns li {
	font-size: min(2.8vw, 10px);
}
footer .ftrSns li a {
	text-decoration: none;
	font-size: min(8vw, 24px);
	line-height: 1;
}

footer .ftrLogo {
	width: 180px;
	max-width: 52%;
}
footer .ftrLogo svg {
	width: 100%;
	fill: #fff;
}

footer .ftrLogo .ftrHplink {
	margin-top: min(6vw, 20px);
}
footer .ftrLogo .ftrHplink a {
	display: block;
	width: 100%;
	border: #fff solid 1px;
	color: #fff;
	text-decoration: none;
	border-radius: 40px;
	padding: min(1vw, 4px) min(3vw, 15px);
	font-size: min(3vw, 12px);
	font-weight: bold;
	letter-spacing: 0;
  white-space: nowrap;
}

footer .copyright {
	font-size: min(2.8vw, 10px);
  text-align: left;
}


@media screen and (min-width: 821px) {
	footer {
		padding-left: 80px;
	}
}
@media screen and (max-width: 820px) {

	footer {
		padding-bottom: 16vw;
	}
	footer .ftrNav {
		justify-content: flex-start;
		gap: min(2vw, 10px) 0;
		text-align: left;
	}
	footer .ftrNav li {
		margin: 0;
		width: 50%;
	}
	footer .ftrNav li + li {
		margin-top: 0;
	}
	footer .ftrNav li + li::before {
		display: none;
	}

	footer .ftrNav.sub {
		justify-content: center;
		border-bottom: none;
		padding-bottom: min(8vw, 40px);
	}
	footer .ftrNav.sub li {
		width: 100%;
		text-align: center;
	}
	footer .ftrNav.sub li + li {
		margin-top: min(1.5vw, 20px);
	}
	footer .ftrNav.sub li a {
		font-size: min(3.2vw, 12px);
	}

	footer .ftrMain {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 0;
		padding-top: min(6vw, 40px);
	}
	footer .ftrLogo {
		margin-bottom: min(6vw, 40px);
	}
  footer .ftrLogo svg {
    width: 70%;
  }

	footer .anchorList {
		flex-direction: column;
		gap: min(1vw, 10px) 0;
	}

	footer .ftrSns {
		justify-content: center;
		margin-bottom: 0;
		padding-bottom: min(6vw, 25px);
		border-bottom: #fff solid 1px;
	}
	footer .copyright {
		font-size: min(2.6vw, 10px);
	}

}

#group {
	margin: 0;
	width: 100%;
	border-top: #ccc solid 1px;
	border-radius: 0;
}

#group .groupListAcc dt {
	font-size: min(4.2vw, 20px);
	padding: min(4vw, 30px) 0 min(4vw, 30px) 0;
	position: relative;
	/* color: #ad9171; */
	font-weight: bold;
}
#group .groupListAcc dt span {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	background-color: #662b1e;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	transform: translateY(-50%);
}
#group .groupListAcc dt span::before,
#group .groupListAcc dt span::after {
	content: "";
	display: block;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#group .groupListAcc dt span::before {
	width: 50%;
	height: 1px;
}
#group .groupListAcc dt span::after {
	width: 1px;
	height: 50%;
	transition: all 0.3s ease-out;
}

#group .groupListAcc dt.on span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

#group .groupListAcc dd {
	border: #662b1e solid 1px;
	padding: min(6vw, 20px);
	display: none;
}
#group .groupListAcc dd ul li {
	padding-left: 15px;
	position: relative;
}
#group .groupListAcc dd ul li::before {
	content: "";
	display: block;
	width: 6px;
	height: 1px;
	background-color: #000;
	position: absolute;
	top: 1em;
	left: 0;
}
#group .groupListAcc dd ul li + li {
	margin-top: min(2vw, 10px);
}
#group .groupListAcc dd ul li a {
	color: #000;
	text-decoration: none;
	font-size: min(3.6vw, 15px);
}

#group .groupBtn a {
	background-color: #B29574;
	display: block;
	text-align: center;
	color: #fff;
	text-decoration: none;
	max-width: 360px;
	font-size: 18px;
	font-weight: bold;
	padding: 15px;
	margin: 40px auto 0;
	border-radius: 6px;
}

@media screen and (min-width: 821px) {
	#group .groupListAcc dt {
		text-align: center;
		padding-top: 0;
	}
	#group .groupListAcc dt span {
		display: none;
	}
	#group .groupListAcc dd {
		display: block !important;
		border: none;
		border-top: #662b1e solid 1px;
		padding: 50px 0 20px;
	}
	#group .groupListAcc dd > ul {
		column-count: 3;
	}
}
@media screen and (max-width: 820px) {
	#group .groupListAcc dt {
		padding: min(4vw, 30px) min(10vw, 50px) min(4vw, 30px) 0;
	}
	#group .groupListAcc dt span {
		width: 30px;
		height: 30px;
	}
	#group .groupBtn a {
		font-size: min(3.6vw, 18px);
		padding: min(3vw, 15px);
		margin: min(6vw, 40px) auto 0;
	}
}

.notFound {
	flex-grow: 1;
	padding: min(8vw, 60px) min(6vw, 30px);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.notFound h2 {
	text-align: center;
	color: #662b1e;
	font-size: min(5.8vw, 34px);
	font-weight: bold;
	letter-spacing: 0.1em;
	position: relative;
	z-index: 1;
}
.notFound h2 span {
	display: block;
	font-size: 0.4em;
	font-weight: normal;
	color: #e8cba6;
}
.notFound .anchorNavi {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: min(6vw, 40px) auto 0;
	width: 90%;
	max-width: 1080px;
	gap: 10px 0;
}
.notFound .anchorNavi li {
	width: calc(86% / 3 - 10px);
	max-width: 240px;
	margin: 0 5px;
}
.notFound .anchorNavi li a {
	color: #fff;
	text-decoration: none;
	text-align: center;
	padding: min(3vw, 15px) min(2vw, 10px);
	font-size: min(3.2vw, 15px);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #aaa;
	border-radius: 6px;
}
@media screen and (max-width: 820px) {

	.notFound .anchorNavi {
    gap: 4px;
    width: 100%;
	}
	.notFound .anchorNavi li {
		width: calc(100% / 2 - 2px);
		margin: 0;
	}
	.notFound .anchorNavi li a {
		font-size: min(3vw, 16px);
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		line-height: 1.4;
		letter-spacing: 0;
		font-weight: bold;
	}

}


.pagehead h2 {
  text-align: center;
  font-size: min(6vw, 32px);
  line-height: 1.6;
  margin-bottom: min(8vw, 60px);
  letter-spacing: 0.1em;
}
.pagehead h2 span {
  display: block;
  font-size: 0.6em;
  font-weight: normal;
  letter-spacing: 0.08em;
  color: #666;
}


.refineButtons {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: min(2vw, 20px);
}
.refineButtons a {
  background-color: #e8e8e8;
  color: #000;
  padding: 0 min(3vw, 20px);
  line-height: 2;
  font-size: min(3vw, 14px);
  text-decoration: none;
  display: block;
  text-align: center;
  border-radius: 100px;
}
.refineButtons a.current {
  background-color: #662b1e;
  color: #fff;
}

.pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 60px;
}
.pagination > div {
  width: 26%;
  white-space: nowrap;
}
.pagination .home {
  width: 48%;
}
.pagination .home a {
  margin: 0 auto;
}
.pagination .next a {
  margin: 0 0 0 auto;
}
.pagination a {
  display: block;
  width: fit-content;
  padding: min(2vw, 8px) min(5vw, 25px);
  color: #662b1e;
  text-decoration: none;
  font-size: min(3.2vw, 14px);
  font-weight: bold;
  border: #ccc solid 1px;
  border-radius: 6px;
}


.newsHead {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: min(3vw, 15px);
  margin-bottom: min(8vw, 60px);
  border-bottom: #ccc solid 1px;
  gap: min(3vw, 15px) min(4vw, 20px);
}
.newsHead h2 {
  color: #333;
  width: 100%;
  margin-bottom: 0;
}
.newsHead .cat-golf { color: #439554;}
.newsHead .cat-plan { color: #b1b445;}
.newsHead .cat-food { color: #393859;}
.newsHead .cat-info { color: #deb173;}


.newsBody {
  color: #333;
  padding-bottom: min(8vw, 60px);
  border-bottom: #ccc solid 1px;
}
.newsBody p {
  margin-bottom: min(4vw, 20px);
  font-size: min(3.2vw, 14px);
}


.newsBody h3 {
  font-size: min(4vw, 20px);
  background-color: #E9E7E2;
  padding: min(2vw, 10px) min(4vw, 20px);
  margin-bottom: min(4vw, 20px);
  margin-top: min(6vw, 40px);
}
.newsBody h4 {
  font-size: min(3.6vw, 18px);
  border-bottom: #662b1e solid 1px;
  padding-bottom: min(1vw, 5px);
  margin-bottom: min(6vw, 30px);
  margin-top: min(6vw, 40px);
}
.newsBody h5 {
  font-size: min(3.4vw, 16px);
  font-weight: bold;
  margin-bottom: min(3vw, 15px);
  margin-top: min(6vw, 30px);
}

.newsBody ul {
  list-style: disc;
  padding-left: min(4vw, 15px);
  font-size: min(3.2vw, 14px);
  margin-bottom: min(4vw, 20px);
}
.newsBody ol {
  list-style: decimal;
  padding-left: min(4.5vw, 18px);
  font-size: min(3.2vw, 14px);
  margin-bottom: min(4vw, 20px);
}

.newsBody blockquote {
  background-color: #eee;
  padding: min(4vw, 20px) min(4vw, 20px) min(4vw, 20px) min(10vw, 55px);
  margin-bottom: min(4vw, 20px);
  position: relative;
}
.newsBody blockquote::before {
    content: "“";
    font-size: min(8.6vw, 56px);
    line-height: 1;
    position: absolute;
    top: min(4.5vw, 20px);
    left: min(3vw, 15px);
    display: block;
    color: #bbb;
}

.newsBody table {
    width: 100%;
    border-collapse: collapse;
    font-size: min(3.2vw, 14px);
    margin-bottom: min(4vw, 20px);
}
.newsBody table th,
.newsBody table td {
  border: #bbb solid 1px;
  padding: min(2vw, 10px);
}
.newsBody table th {
  background-color: #eae7e3;
  font-weight: bold;
}
.newsBody p a {
    color: #3D434A;
    text-decoration: underline;
}

.aboutDetail {
  padding: min(8vw, 60px);
  background-color: #d7b27c;
  border-radius: 12px;
  color: #fff;
}

#about2.aboutDetail {
  background-color: #e3ddd9;
  color: #662b1e;
}


.aboutDetail h3 {
  font-size: min(3.6vw, 18px);
  margin-bottom: min(3vw, 15px);
  position: relative;
}
.aboutDetail h3 span {
  position: relative;
  z-index: 1;
}
.aboutDetail h3 .ttlEn {
  position: absolute;
  bottom: -0.12em;
  right: 0.1em;
  font-family: adventures-unlimited, sans-serif;
  color: #be9b68;
  font-size: min(16vw, 105px);
  font-weight: normal;
  line-height: 0.7;
  z-index: 0;
}
#about2.aboutDetail h3 .ttlEn {
  color: #f4eee6;
}

.aboutDetail .aboutSlide {
  margin: min(6vw, 30px) 0;
  padding: 0 min(6vw, 30px);
}
.aboutDetail .aboutSlide li {
  padding: 0 min(2vw, 10px);
}
.aboutDetail .aboutSlide li .pic {
  line-height: 0;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: min(2vw, 10px);
}
.aboutDetail .aboutSlide li .ttl {
  font-weight: bold;
  margin-bottom: min(1vw, 5px);
  font-size: min(3.2vw, 14px);
}
.aboutDetail .aboutSlide li p {
  font-size: min(3vw, 12px);
}

.aboutDetail .aboutSlide li .btmTxt {
  padding-top: min(2vw, 10px);
  margin-top: min(2vw, 10px);
  border-top: #662b1e solid 1px;
  font-size: min(3.2vw, 14px);
  font-weight: bold;
}


.aboutDetail .modalBtn {
  margin: min(6vw, 30px) 0;
}
.aboutDetail .modalBtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(2vw, 10px);
  width: fit-content;
  margin: 0 auto;
  border: #fff solid 2px;
  border-radius: 6px;
  padding: min(1vw, 5px) min(6vw, 30px);
  font-size: min(3.2vw, 14px);
  text-align: center;
  color: #fff;
  text-decoration: none;
}
.aboutDetail .modalBtn a[target="_blank"]::after {
  content: "";
  background: url(../images/ico_blank.svg) no-repeat right center;
  background-size: min(3vw, 15px);
  width:  min(3vw, 15px);
  height:  min(3vw, 15px);
}


.aboutDetail .borderBox {
  border: #333 solid 1px;
  padding: min(6vw, 30px);
  border-radius: 10px;
}
.aboutDetail .borderBox h4 {
  border-bottom: #333 solid 1px;
  margin-bottom: min(3vw, 15px);
  padding-bottom: min(1vw, 5px);
  font-size: min(3.4vw, 16px);
  margin-top: min(6vw, 30px);
}
.aboutDetail .borderBox h4:first-child {
  margin-top: 0;
}

.aboutDetail .borderBox dl {
  display: flex;
  flex-wrap: wrap;
  font-size: min(3.2vw, 14px);
}
.aboutDetail .borderBox dl dt,
.aboutDetail .borderBox dl dd {
  border-bottom: #333 solid 1px;
  padding: min(2vw, 10px) 0;
}
.aboutDetail .borderBox dl dt {
  width: min(14vw, 140px);
  font-weight: bold;
}
.aboutDetail .borderBox dl dd {
  width: calc(100% - min(14vw, 140px));
}


.aboutDetail .slick-prev,
.aboutDetail .slick-next {

}
.aboutDetail .slick-prev {
  left: 4px;
}
.aboutDetail .slick-next {
  right: 4px;
}
.aboutDetail .slick-prev:before,
.aboutDetail .slick-next:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  transform: rotate(45deg);
}

.aboutDetail .slick-prev:before {
  border-left: #fff solid 2px;
  border-bottom: #fff solid 2px;
}
.aboutDetail .slick-next:before {
  border-top: #fff solid 2px;
  border-right: #fff solid 2px;
}

.aboutDetail .borderBox table {
  width: 100%;
  border-collapse: collapse;
}
.aboutDetail .borderBox th,
.aboutDetail .borderBox td {
	padding: min(2vw, 10px);
	text-align: left;
	border: 1px solid #333;
}
.aboutDetail .borderBox th {
	background-color: #be9b68;
}

#cboxClose {
  width: 30px;
  height: 30px;
  top: 20px;
  right: 20px;
  background-color: #fff;
  border-radius: 50%;
  z-index: 10;
}
#cboxClose::before,
#cboxClose::after {
  background-color: #000;
  width: 50%;
  height: 1.5px;
}



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


  .newsBody ul {
    padding-left: min(4.5vw, 20px);
  }
  .newsBody ol {
    padding-left: min(5.4vw, 24px);
  }


  .aboutDetail h3 .ttlEn {
    bottom: -0.32em;
  }




}