@charset "utf-8";/* --------------------------------------------------- *//* MainVisual *//* --------------------------------------------------- */#mv {	position: relative;	display: block;	width: 100%;	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;}#mv::before {	content: '';	display: block;	width: 100%;	padding-top: 40%;}#mv h1 {	position: absolute;	z-index: 3;	top: 50%;	left: 50%;	color: #fff;	font-size: 1.8rem;	font-weight: 500;	text-align: center;	text-shadow: 0 0 12px rgba(0, 0, 0, 0.5);	transform: translate(-50%, -50%);}#mv h1::before {	content: attr(data-eng)'';	display: block;	font-family: "Inter", sans-serif;	font-size: 325%;}#mv figure {	position: absolute;	z-index: 2;	top: 5%;	left: 70%;	display: block;	width: 26%;	background-size: cover;	background-position: 50% 50%;}#mv figure::before {	content: '';	display: block;	padding-top: 200%;	width: 100%;}@media screen and (max-width: 1280px) {	#mv::before { padding-top: 480px; }	#mv figure {		left: 66.66%;		width: 304px;	}}@media screen and (max-width: 767px) {	#mv::before { padding-top: 420px; }	#mv h1::before { font-size: 275%; }	#mv figure {		top: 3%;		left: 55%;		width: 240px;	}}@media screen and (max-width: 420px) {	#mv::before { padding-top: 360px; }	#mv h1::before { font-size: 200%; }	#mv figure {		top: 0%;		left: 52%;		width: 208px;	}}/* --------------------------------------------------- *//* Lead *//* --------------------------------------------------- */#lead {	position: relative;	background-color: #f5f3ea;}#lead::before {	content: '';	position: absolute;	top: 0;	left: 0;	right: 0;	display: block;	padding-top: 10%;	width: 100%;	background-image: url('../img/common/wave-l.png');	background-repeat: repeat-x;	background-size: auto 96px;	transform: translateY(-99.0%);	animation: wave-l 90s linear infinite;}@keyframes wave-l {	0% { background-position: 1280px 100%; }	100% { background-position: 0 100%; }}#lead .block-fm { max-width: 720px; }@media screen and (max-width: 960px) {	#lead::before {		padding-top: 11%;		background-size: auto 80px;		animation: wave-l 85s linear infinite;	}	@keyframes wave-l {		0% { background-position: 1067px 100%; }		100% { background-position: 0 100%; }	}}@media screen and (max-width: 767px) {	#lead::before {		padding-top: 13%;		background-size: auto 72px;		animation: wave-l 80s linear infinite;	}	@keyframes wave-l {		0% { background-position: 960px 100%; }		100% { background-position: 0 100%; }	}}@media screen and (max-width: 560px) {	#lead::before {		padding-top: 15%;		background-size: auto 64px;		animation: wave-l 80s linear infinite;	}	@keyframes wave-l {		0% { background-position: 853px 100%; }		100% { background-position: 0 100%; }	}}@media screen and (max-width: 420px) {	#lead::before {		padding-top: 20%;	}}/* --------------------------------------------------- *//* Select Category *//* --------------------------------------------------- */#divergence .selectcat {	display: flex;	flex-wrap: wrap;	gap: 1.0em 2%;}#divergence .selectcat a {	display: flex;	width: 31%;} #divergence .selectcat a::before {	content: '';	display: block;	width: 72px;	background-color: #faefb3;	background-repeat: no-repeat;	background-size: 56px auto;	background-position: 50% 50%;	border-radius: 8px 0 0 8px;}#divergence .selectcat a.lunch::before { background-image: url('../img/area/ic-lunch.png'); }#divergence .selectcat a.dinner::before { background-image: url('../img/area/ic-dinner.png'); }#divergence .selectcat a.night::before { background-image: url('../img/area/ic-night.png'); }#divergence .selectcat a.sightseeing::before { background-image: url('../img/area/ic-sightseeing.png'); }#divergence .selectcat a span {	display: block;	box-sizing: border-box;	padding: 0.75em 1.0em;	width: calc(100% - 72px);	background-color: #fff;	border-radius: 0 8px 8px 0;	font-weight: 500;	line-height: 1.4;}#divergence .selectcat a span::before {	content: attr(data-eng)'';	display: block;	color: #609a5c;	font-family: "Inter", sans-serif;	font-size: 125%;	font-weight: 700;}#divergence .selectcat a:hover { opacity: 0.5; }@media screen and (max-width: 960px) {	#divergence .selectcat { gap: 1.0em 4%; }	#divergence .selectcat a { width: 48%; }}@media screen and (max-width: 560px) {	#divergence .selectcat { flex-direction: column; gap: 0.75em 0; }	#divergence .selectcat a { width: 100%; }	#divergence .selectcat a::before {		width: 64px;		background-size: 48px auto;	}	#divergence .selectcat a span {		width: calc(100% - 64px);		font-size: 1.4rem;	}}/* --------------------------------------------------- *//* Select Area *//* --------------------------------------------------- */#divergence .selectarea {	display: flex;	flex-wrap: wrap;	gap: 1.5em 4%;	color: #fff;	font-size: 1.6rem;}#divergence .selectarea li { width: 22%; }#divergence .selectarea li a {	position: relative;	display: block;	border-bottom: 1px solid #fff;	font-weight: 500;}#divergence .selectarea li a::after {	content: '';	position: absolute;	top: 30%;	right: 3%;	display: block;	width: 9px;	height: 9px;	border-top: 2px solid #fff;	border-right: 2px solid #fff;	transform: rotate(45deg);	transition: all .5s;}#divergence .selectarea a:hover { border-color: #f2d840; color: #f2d840; }#divergence .selectarea a:hover::after { border-color: #f2d840; }@media screen and (max-width: 767px) {	#divergence .selectarea {		gap: 1.5em 3.5%;	}	#divergence .selectarea li { width: 31%; }}@media screen and (max-width: 560px) {	#divergence .selectarea {		gap: 1.5em 4%;	}	#divergence .selectarea li { width: 48%; }}@media screen and (max-width: 420px) {	#divergence .selectarea {		flex-direction: column;		gap: 1.25em 0;	}	#divergence .selectarea li { width: 100%; }}/* --------------------------------------------------- *//* Videos *//* --------------------------------------------------- */#pickup .videos {	display: flex;	flex-wrap: wrap;	gap: 2.5em 4%;}#pickup .videos > div { width: 48%; }#pickup .videos div a {	position: relative;	display: block;	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;}#pickup .videos div a::after {	content: '';	display: block;	padding-top: 57%;	width: 100%;}#pickup .videos div a:hover { opacity: 0.5; }@media screen and (max-width: 560px) {	#pickup .videos {		flex-direction: column;		gap: 1.5em 0;	}	#pickup .videos > div { width: 100%; }}/* Feature *//* --------------------------------------------------- */.feature {	display: flex;	flex-wrap: wrap;	margin: 0 auto;	width: 90%;	gap: 1.5em 2.3%;}.feature .card {	width: 23%;	background-color: #fff;	border-radius: 0.8em  0.8em 0.6em 0.6em;	box-shadow: 0 0 12px rgba(0,0,0,0.1);}.feature .card:hover {	background-color: #faefb3;	box-shadow: 0 0 4px rgba(0,0,0,0.1);	transform: scale(1.05);}.feature .card dl {	display: flex;	flex-direction: column;	justify-content: space-between;	height: 100%;}.feature .card figure {	position: relative;	display: block;	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;	border-radius: 0.6em 0.6em 0 0;	font-size: 1.6rem;}.feature .card figure::before {	content: '';	display: block;	padding-top: 75%;	width: 100%;}.feature .card h3 {	color: #609a5c;	font-size: 1.8rem;	font-weight: 500;	line-height: 1.4;}.feature .card dl dt > div {	padding: 1.0em 1.25em 0;	font-size: 1.6rem;}.feature .card dl dd {	flex: 1 0 auto;	padding: 0.5em 1.25em 1.5em;	font-size: 1.4rem;}.feature .card dl dt span.city {	content: '';	display: inline-block;	padding: 0.5em 0.75em 0.3em;	border-radius: 128px;	background-color: #609a5c;	color: #fff;	font-size: 1.4rem;	line-height: 1.0;	vertical-align: 0.5em;}@media screen and (max-width: 1280px) {	.feature { gap: 1.5em 2.0%; }	.feature .card { width: 32%; }}@media screen and (max-width: 767px) {	.feature { gap: 1.0em 3.0%; }	.feature .card { width: 48.5%; }}@media screen and (max-width: 560px) {	.feature { gap: 1.0em 0; }	.feature .card { width: 100%; }}/* --------------------------------------------------- *//* Tabijyoshi *//* --------------------------------------------------- */#tabijyoshi .profile {	position: relative;	display: table;	width: 100%;}#tabijyoshi .profile .logo {	position: relative;	z-index: 4;	width: 50%;	float: right;}#tabijyoshi .profile .logo h2 {	width: 90%;	max-width: 320px;}#tabijyoshi .profile .char {	position: relative;	z-index: 3;	width: 45%;	float: left;}#tabijyoshi .profile .char figure {	position: relative;	z-index: 3;	display: block;	margin: 0 0 0 auto;	width: 90%;	max-width: 560px;	text-align: center;}#tabijyoshi .profile .char figure img {	position: relative;	z-index: 3;	width: 320px;}#tabijyoshi .profile .char figure .bg {	position: absolute;	top: 50%;	left: 55%;	width: 780px;	transform: translate(-62%, -52%);}#tabijyoshi .profile .char figure .bg img {	position: relative;	z-index: 1;	width: 100%;}#tabijyoshi .profile .detail {	position: relative;	z-index: 3;	width: 50%;	float: right;}#tabijyoshi .profile .detail h4 {	padding: 0.5em 0.75em 0.3em;	background-color: #609a5c;	color: #fff;	font-size: 2.4rem;	font-weight: 500;	line-height: 1.0;}#tabijyoshi .profile .detail h3 {	margin: 0.75em 0 ;	color: #609a5c;	font-size: 4.2rem;	font-weight: 500;	line-height: 1.3;}#tabijyoshi .profile .detail h3::after {	content: attr(data-eng)'';	display: block;	font-family: "Inter", sans-serif;	font-size: 1.4rem;	font-weight: 700;}#tabijyoshi .profile .detail > div {	width: 90%;	max-width: 560px;}#tabijyoshi .profile .detail ul {	display: flex;	flex-wrap: wrap;	justify-content: space-between;	font-size: 1.6rem;}#tabijyoshi .profile .detail ul li {	box-sizing: border-box;	padding: 0.5em 0.75em;	border-bottom: 1px solid #609a5c;	width: 47.5%;}#tabijyoshi .profile .detail ul li:nth-child(-n+2) {	border-top: 1px solid #609a5c;}#tabijyoshi .profile .detail ul li p::before {	content: attr(data-label)'';	display: inline-block;	width: 4.5em;	color: #609a5c;}@media screen and (max-width: 960px) {	#tabijyoshi .profile .char figure .bg {		top: 50%;		left: 55%;		width: 720px;		transform: translate(-62%, -50%);	}}@media screen and (max-width: 767px) {	#tabijyoshi .profile .logo { width: 60%; }	#tabijyoshi .profile .char { width: 40%; }	#tabijyoshi .profile .char figure { width: 100%; }	#tabijyoshi .profile .char figure img { width: 280px; }	#tabijyoshi .profile .char figure .bg { width: 640px; }	#tabijyoshi .profile .detail { width: 60%; }	#tabijyoshi .profile .detail h4 { font-size: 2.1rem; }	#tabijyoshi .profile .detail h3 { font-size: 3.6rem; }	#tabijyoshi .profile .detail ul { flex-direction: column; }	#tabijyoshi .profile .detail ul li { width: 100%; }	#tabijyoshi .profile .detail ul li:nth-child(-n+2) { border-top: 0; }	#tabijyoshi .profile .detail ul li:first-child { border-top: 1px solid #609a5c; }}@media screen and (max-width: 640px) {	#tabijyoshi .profile .logo {		margin-left: auto;		margin-right: auto;		width: 100%;		float: none;	}	#tabijyoshi .profile .logo h2 {		margin: 0 auto;		width: 80%;		max-width: 320px;	}	#tabijyoshi .profile .char {		width: 100%;		float: none;	}	#tabijyoshi .profile .char figure {		margin: 0 auto;		width: 90%;	}	#tabijyoshi .profile .char figure img { width: 240px; }	#tabijyoshi .profile .char figure .bg {		width: 480px;		transform: translate(-62%, -50%);	}	#tabijyoshi .profile .detail {		margin: 0 auto;		width: 80%;		float: none;	}	#tabijyoshi .profile .detail h4 { text-align: center; }	#tabijyoshi .profile .detail h3 { font-size: 3.2rem; text-align: center; }	#tabijyoshi .profile .detail > div { width: 100%; }}@media screen and (max-width: 420px) {	#tabijyoshi .profile .char figure img { width: 208px; }	#tabijyoshi .profile .char figure .bg {		width: 360px;		transform: translate(-62%, -40%);	}}/* --------------------------------------------------- *//* BasicBreakPoint *//* --------------------------------------------------- */@media screen and (max-width: 767px) {}@media screen and (max-width: 420px) {}