@charset "utf-8";


.lity,
.lity-wrap {
	z-index: 9990;
	position: fixed;
	top: 0;
	outline: 0 !important
}

.lity-container,
.lity-wrap:before {
	vertical-align: middle;
	display: inline-block
}

.lity,
.lity-container,
.lity-wrap {
	outline: 0 !important
}

.lity-content:after,
.lity-wrap:before {
	content: ''
}

.lity,
.lity-content:after,
.lity-wrap {
	right: 0;
	bottom: 0;
	left: 0
}

.lity {
	white-space: nowrap;
	background: #fefefe;
	opacity: 0;
	-webkit-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease
}

.lity.lity-opened {
	opacity: 1;
	background: rgba(243, 251, 255, .9);
	background: rgb(81, 81, 81);
	width: 100%;
	margin: 0;
}

.lity.lity-closed {
	opacity: 0;
	background: #fefefe
}

.lity * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box
}

.lity-wrap {
	text-align: center
}

.lity-wrap:before {
	height: 100%;
	margin-right: -.25em
}

.lity-loader {
	z-index: 9991;
	color: #fff;
	position: absolute;
	top: 50%;
	margin-top: -.8em;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	opacity: 0;
	-webkit-transition: opacity .3s ease;
	-o-transition: opacity .3s ease;
	transition: opacity .3s ease
}

.lity-loading .lity-loader {
	opacity: 1
}

.lity-container {
	z-index: 9992;
	position: relative;
	text-align: left;
	white-space: normal;
	max-width: 100%;
	max-width: 90%;
	max-height: 100%;
}

.lity-close,
.lity-close:before {
	line-height: 60px;
	text-align: center
}

.lity-content {
	z-index: 9993;
	width: 100%;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: -webkit-transform .5s ease;
	-o-transition: -o-transform .5s ease;
	transition: transform .5s ease;
	color: #000;
}

.lity-closed .lity-content,
.lity-loading .lity-content {
	-webkit-transform: scale(.9);
	-ms-transform: scale(.9);
	-o-transform: scale(.9);
	transform: scale(.9)
}

.lity-content:after {
	position: absolute;
	top: 0;
	display: block;
	width: auto;
	height: auto;
	z-index: -1;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .1);
	box-shadow: 0 0 8px rgba(0, 0, 0, .1)
}

.lity-close {
	z-index: 9994;
	width: 60px;
	height: 60px;
	position: fixed;
	right: 30px;
	top: 30px;
	-webkit-appearance: none;
	cursor: pointer;
	text-decoration: none;
	padding: 0;
	font-size: 0;
	font-style: normal;
	border: 0;
	color: #fefefe;
	background: #111;
	outline: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
}

.lity-close:before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	font-family: 'Font Awesome 6 pro';
	content: "\f00d";
	font-size: 16px;
	text-indent: 0;
	z-index: 1
}

.lity-close::-moz-focus-inner {
	border: 0;
	padding: 0
}

.lity-image img {
	max-width: 100%;
	display: block;
	line-height: 0;
	border: 0
}

.lity-iframe .lity-container {
	width: 100%;
	max-width: 964px
}

.lity-iframe-container {
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: auto;
	pointer-events: auto;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-overflow-scrolling: touch
}

.lity-iframe-container iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	background: #000
}

.lity-hide {
	display: none
}

#inline {
	overflow: auto;
	background: #fefefe;
	padding: 50px 7.5%;
	width: 1200px;
	max-width: 100%
}

/* .profileLeft{float:left;width:35%}.profileRight{float:right;width:60%} */


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

	.lity-close,
	.lity-close:before {
		line-height: 50px;
	}

	.lity-close {
		width: 50px;
		height: 50px;
	}

	.lity-close:before {
		font-size: 14px;
	}
}



/* -----------------------------------------------------------

   メッセージ表示

   ----------------------------------------------------------- */
#inline_1,
#inline_2,
#inline_3,
#inline_4,
#inline_5,
#inline_6,
#inline_7,
#skypark,
#sph,
#highland,
#tatesina,
#van,
#kamuri,
#lodge,
#camp,
#jinpyou,
#hanayuubi,
#gg,
#fujisan,
#yugawara,
#shonan,
#yassa,
#osakaya,
#pension,
#kougen,
#megamiko {
	overflow: auto;
	background: #fefefe;
	padding: 40px 3.5%;
	width: 920px;
	max-width: 100%;
}

/* --- .profileArea --- */
.profileArea {}

/* .profileLeft */
.profileLeft {
	float: left;
	width: 40%;
}

.profileLeft h4 {
	font-size: 20px;
	/* font-family: 'Catamaran', sans-serif; */
	font-weight: 600;
	letter-spacing: 1.5px;
	line-height: 1.7;
	text-align: left;
	border-bottom: 1px solid #ddd;
}

.profileLeft h3.en {
	margin: 5px 0;
	font-size: 16px;
	/* font-family: 'Catamaran', sans-serif; */
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 1;
	vertical-align: 0;
}

.profileLeft h3.en:before {
	color: #666666;
	padding-right: 5px;
	font-family: 'Font Awesome 6 pro';
	content: "\f275";
}

.profileLeft img {
	width: 100%;
	margin: 0 auto;
	-webkit-border-radius: 1%;
	-moz-border-radius: 1%;
	border-radius: 1%;
	padding: 2%;
}

.profileLeft ul {
	font-size: 15px;
	line-height: 1.5
}

.profileLeft p {
	font-size: 14px;
	line-height: 1.5;
}

/* .profileRight */
.profileRight {
	float: right;
	width: 55%;
}

.profileRight h4 {
	font-size: 13px;
	font-family: 'Catamaran', sans-serif;
	font-weight: 700;
	letter-spacing: 1.5px;
	line-height: 1.7;
}

.profileRight h3 {
	display: inline-block;
	position: relative;
	z-index: 1;
}

.profileRight h3.en {
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 2rem;
	/* font-family: 'Catamaran', sans-serif; */
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 1;
	vertical-align: 0;
}

.profileRight h3.en:before {
	color: #666666;
	padding-right: 5px;
	font-family: 'Font Awesome 6 pro';
	content: "\f594";
}

.profileRight h3.jp {
	margin-top: 5px;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 3px;
	vertical-align: 0;
}

.profileRight h3.jp:before {
	content: "/";
	margin: 0 8px 0 10px;
}

/* .txtArea */
.profileLeft .txtArea,
.profileRight .txtArea {
	margin-top: 0px;
	font-size: 15px;
	line-height: 2;
	margin-bottom: 10px;
}



.profileLeft .txtArea p.catch,
.profileRight .txtArea p.catch {
	font-size: 2.0rem;
	font-weight: 600;
}








/* .commentArea */
.profileRight .commentArea {
	margin-top: 15px;
	padding: 10px 0px 10px 0px;
	position: relative;
	z-index: 1;
}

/* .profileRight .commentArea:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	content: "";
	border-top: #242e76 1px solid;
	border-left: #242e76 1px solid;
	z-index: -1;
}

.profileRight .commentArea:after {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 15px;
	height: 15px;
	content: "";
	border-bottom: rgb(2 18 109) 1px solid;
	border-right: rgb(2 18 109) 1px solid;
	z-index: -1;
}
 */
.profileRight .commentArea p a {
	display: inline;
	color: #14357b
}

.profileRight .commentArea p:before {
	content: "\f140";
	font-family: 'FontAwesome';
	padding-right: 10px;
	font-family: 'Font Awesome 6 pro';
	content: "\f682";
	color: #14357b;
}

.profileRight .commentArea p a:after {
	padding-left: 10px;
	font-family: 'Font Awesome 6 pro';
	content: "\f0c1";
	*/padding-left: 5px;
	color: #14357b;
}


/* .snsArea */
.profileRight .snsArea {
	display: block;
	vertical-align: 0;
	margin-top: 5px;
}

.profileRight .snsArea ul {
	list-style: none;
	font-size: 0;
}

.profileRight .snsArea ul li {
	display: inline-block;
	margin: 0 5px 0 0;
}

.profileRight .snsArea ul li a {
	display: block;
	width: auto;
	padding: 0 15px 0 33px;
	height: 40px;
	line-height: 40px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.5px;
	position: relative;
	z-index: 1;
	text-align: center;
	/* -webkit-border-radius: 25px; */
	-moz-border-radius: 25px;
	border-radius: 25px;
	border: 1px solid #FFC107;
	background: #FFC107;
	text-decoration: none;
}

.profileRight .snsArea ul li a:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	font-size: 15px;
	font-family: 'themify';
	font-weight: normal;
	color: #fff;
}

.profileRight .snsArea ul li a:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	/* border: #ddd 1px solid; */
	z-index: -1;
	/* -webkit-border-radius: 25px; */
	-moz-border-radius: 25px;
	/* border-radius: 25px; */
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.profileRight .snsArea ul li a.instagramBtn:before {
	content: "\e60d";
}

/* .profileRight .snsArea ul li a:hover { color:#000000; background:#f1f1f1;} */
/* .profileRight .snsArea ul li a:hover:after { border:#cecfcf 1px solid;} */
.profileRight .snsArea ul li a: {}

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

	#inline_1,
	#inline_2,
	#inline_3,
	#inline_4,
	#inline_5,
	#inline_6,
	#inline_7,
	#aomori,
	#yamagata,
	#tokyo,
	#honsya,
	#philippines,
	#hongkong,
	#china,
	#thai,
	#fnpyatsugatake,
	#fnpkanagawa,
	#cps,
	#chinopura,
	#suwa {
		overflow: scroll;
		-webkit-overflow-scrolling: touch
	}
}

@media only screen and (max-width: 800px) {
	.profileRight .snsArea ul li a:hover {
		color: #111;
		background: #fefefe;
	}

	/* .profileRight .snsArea ul li a:hover:after {border:#ddd 1px solid; } */
}

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

	/* .profileLeft */
	.profileLeft {
		float: none;
		width: 100%;
		text-align: center;
	}

	.profileLeft img {
		width: 100%;
		margin: 0 auto;
	}

	/* .profileRight */
	.profileRight {
		float: none;
		width: 100%;
		text-align: center;
	}

	.profileRight h4 {
		font-size: 13px;
		font-family: 'Catamaran', sans-serif;
		font-weight: 700;
		letter-spacing: 1.5px;
		line-height: 1.7;
	}

	.profileRight h3 {
		display: block;
	}

	.profileRight h3.en {
		margin-top: 5px;
		/* font-size: 20px; */
		line-height: 1;
		text-align: left;
	}

	.profileRight h3.jp {
		margin-top: 5px;
		font-size: 13px;
		font-weight: normal;
		letter-spacing: 3px;
		line-height: 1.6;
	}

	.profileRight h3.jp:before {
		display: none;
		margin: 0;
	}

	/* .txtArea */
	.profileLeft .txtArea,
	.profileRight .txtArea {
		margin-top: 10px;
		padding: 0 2.5%;
		text-align: left;
	}

	.profileRight .txtArea br {
		display: none;
	}

	.profileRight .txtArea br.spblock {
		display: block;
	}

	/* .commentArea */
	.profileRight .commentArea {
		margin-top: 20px;
		padding: 10px;
		padding: 0;
	}

	.profileRight .commentArea p a {
		display: inline;
		color: #14357b;
	}

	/* .snsArea */
	.profileRight .snsArea {
		display: block;
		vertical-align: 0;
		margin-top: 10px;
	}

	.profileRight .snsArea ul {
		list-style: none;
		font-size: 0;
	}

	.profileRight .snsArea ul li {
		display: block;
		margin: 0;
		text-align: center;
	}

	.profileRight .snsArea ul li a {
		margin: 0 auto;
		padding: 0;
		width: 150px;
		max-width: 100%;
		height: 30px;
		line-height: 30px;
		color: #111;
		font-size: 13px;
		font-weight: 500;
		letter-spacing: 1px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		border-radius: 30px;
	}

	.profileRight .snsArea ul li a:before {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 10px;
		font-size: 16px;
		font-family: 'themify';
	}

	/* .profileRight .snsArea ul li a:after { -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px;} */

}

/* 

@charset "UTF-8";
/* base
------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Spartan:wght@400;700&display=swap");

:root {
	--easing: cubic-bezier(.2, 1, .2, 1);
	--transition: .8s var(--easing);
	--color-base: #f8f8f8;
	--color-gray: #ddd;
	--color-theme: #f5695f;
	--color-theme-darken: #f12617;
	--box-shadow: .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #fff;
	--box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
	--box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
	--box-shadow-dark: .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff, .2);
}

html {
	font-family: "Spartan", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
	font-size: 62.5%;
	line-height: 1.8;
	height: 100%;
	word-break: break-word;
	color: #333;
	background-color: var(--color-base);
	-webkit-appearance: none;
	-webkit-tap-highlight-color: transparent;
}

@media only screen and (max-width: 1024px) {
	html {
		-webkit-text-size-adjust: 100%;
	}
}

@media only screen and (max-width: 599px) {
	html {
		font-size: 50%;
	}
}

body {
	font-size: 1.6rem;
	margin: 0;
}

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

::-moz-selection {
	color: #fff;
	background: var(--color-theme);
}

::selection {
	color: #fff;
	background: var(--color-theme);
}

img {
	border: 0;
	margin: 0;
}

figure {
	margin: 0;
}

p {
	margin: 0;
	padding: 0;
}

a {
	/* text-decoration: none; */
	/* color: #333; */
}

ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 1.6rem;
	margin: 0;
	padding: 0;
}

main {
	display: block;
}

*/ .l-inner {
	position: relative;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 10rem;
}

@media only screen and (max-width: 1024px) {
	.l-inner {
		padding: 0 4rem;
	}
}

.l-section {
	border-top: 1px solid #eee;
	max-width: 1340px;
	margin: 0 auto;
}

.l-section .l-inner {
	padding-top: 8rem;
	padding-bottom: 8rem;
	max-width: 1300px;
	margin: 0 auto;
	padding: 8rem 10px 8rem;
}

@media only screen and (max-width: 599px) {
	.pc-tab {
		display: none !important;
	}
}

/* design
------------------------------*/
.c-temp {
	line-height: 1;
}

.c-temp .l-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-top: 4rem;
	padding-bottom: 4rem;
}

@media only screen and (max-width: 1024px) {
	.c-temp .l-inner {
		padding: 3.2rem;
	}
}

.c-temp .text {
	font-size: 2.4rem;
	font-weight: bold;
}

.c-temp .button {
	font-size: 1.4rem;
	font-weight: bold;
	display: block;
	width: 12rem;
	padding: 1.6rem 0 1.2rem;
	text-align: center;
	letter-spacing: 0.1em;
	color: #fff;
	border-radius: 100px;
	background-color: var(--color-theme);
}

@media only screen and (max-width: 599px) {
	.c-temp .button {
		font-size: 1.2rem;
		width: 9rem;
	}
}

@media only screen and (min-width: 1025px) {
	.c-temp .button {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.c-temp .button:hover {
		background-color: var(--color-theme-darken);
	}
}

.c-footer .l-inner {
	padding-top: 0;
}

.c-footer .text {
	color: var(--color-gray);
}

.c-info {
	font-size: 1.6rem;
	display: inline-block;
	margin-top: 2rem;
	margin-bottom: 6.4rem;
	max-width: 1000px;
}

@media only screen and (max-width: 1200px) {
	.c-info {
		display: block;
		margin-top: 0;
		margin-bottom: 6.4rem;
	}
}

.c-info li {
	position: relative;
	padding-left: 16px;
}

.c-info li::before {
	position: absolute;
	top: 0.6em;
	left: 0;
	display: inline-block;
	width: 8px;
	height: 2px;
	content: "";
	background-color: var(--color-gray);
}

.c-info li+li {
	margin-top: 0.8rem;
}

.c-title {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.6;
	display: inline-block;
	min-width: 32rem;
	margin-bottom: 0rem;
	vertical-align: top;
}

@media only screen and (max-width: 1200px) {
	.c-title {
		margin-bottom: 3.2rem;
	}
}

@media only screen and (max-width: 599px) {
	.c-title {
		min-width: 100%;
	}
}

.c-title [class*=ico-] {
	font-size: 1.3rem;
	line-height: 1;
	display: block;
	width: 10rem;
	margin-bottom: 1.2rem;
	padding: 0.8rem 0 0.6rem;
	text-align: center;
	letter-spacing: 0.05em;
	border-radius: 100px;
	background-color: var(--color-gray);
}

.c-title .ico-advanced {
	color: #fff;
	background-color: #333;
}

/* slider */
[class*=swiper]:focus {
	outline: none;
}

.slide-media,
.thumb-media {
	position: relative;
	overflow: hidden;
}

.slide-media img,
.thumb-media img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

/* 前へ / 次へボタン */
.swiper-button-prev,
.swiper-button-next {
	display: grid;
	place-content: center;
	width: 6.4rem;
	height: 6.4rem;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
}

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

	.swiper-button-prev::before,
	.swiper-button-next::before {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.swiper-button-prev:hover::before,
	.swiper-button-next:hover::before {
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
}

.swiper-button-prev::before,
.swiper-button-next::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

.swiper-button-prev::after,
.swiper-button-next::after {
	width: 1.2rem;
	height: 1.2rem;
	content: "";
	border: solid var(--color-gray);
	border-width: 3px 3px 0 0;
}

.swiper-button-prev::after {
	margin-left: 0.4rem;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.swiper-button-next::after {
	margin-right: 0.4rem;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.swiper-button-disabled {
	pointer-events: none;
	opacity: 0;
}

.card01 {
	/* コンテナ */
	/* ページネーション */
	/* 前へ / 次へボタン */
	/* スライド */
}

@media only screen and (min-width: 1025px) {
	.card01 .swiper {
		padding-top: 16px;
	}
}

.card01 .swiper-area {
	position: relative;
}

.card01 .swiper-pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1.2rem 0.8rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 3.2rem;
	text-align: center;
}

.card01 .swiper-pagination-bullet {
	width: 1.6rem;
	height: 3px;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	vertical-align: top;
	background-color: var(--color-gray);
}

.card01 .swiper-pagination-bullet-active {
	width: 4rem;
	background-color: var(--color-theme);
}

.card01 .swiper-button-prev,
.card01 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

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

	.card01 .swiper-button-prev::before,
	.card01 .swiper-button-next::before {
		background-color: rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: var(--box-shadow-dark);
		box-shadow: var(--box-shadow-dark);
	}
}

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

	.card01 .swiper-button-prev::after,
	.card01 .swiper-button-next::after {
		border-color: #fff;
	}
}

.card01 .swiper-button-prev {
	right: calc(100% + 2.4rem);
}

@media only screen and (max-width: 1024px) {
	.card01 .swiper-button-prev {
		right: calc(100% - 3.2rem);
	}
}

.card01 .swiper-button-next {
	left: calc(100% + 2.4rem);
}

@media only screen and (max-width: 1024px) {
	.card01 .swiper-button-next {
		left: calc(100% - 3.2rem);
	}
}

@media only screen and (min-width: 1025px) {
	.card01 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card01 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card01 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
	}

	.card01 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.card01 .slide-media {
	padding-top: 62.5%;
	border-radius: 4px;
}

.card01 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}

.card01 .slide-content {
	padding: 3.2rem 0;
}

.card01 .slide-date {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}



.card01 .slide-title {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 1.6rem;
}

.card02 {
	/* コンテナ */
	overflow: hidden;
	/* コントローラー */
	/* ページネーション */
	/* 前へ / 次へボタン */
	/* スライド */
}

.card02 .swiper {
	overflow: visible;
}

.card02 .swiper-controller {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.6rem;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin-top: 3.2rem;
}

.card02 .swiper-pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1.2rem 0.8rem;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	margin: 0 auto 0 0;
	text-align: center;
}

.card02 .swiper-pagination-bullet {
	width: 1.6rem;
	height: 3px;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	vertical-align: top;
	background-color: var(--color-gray);
}

.card02 .swiper-pagination-bullet-active {
	width: 4rem;
	background-color: var(--color-theme);
}

.card02 .swiper-button-prev,
.card02 .swiper-button-next {
	position: relative;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin: 0;
}

.card02 .swiper-button-disabled {
	pointer-events: none;
	opacity: 0.5;
}

.card02 .swiper-button-disabled::before {
	-webkit-box-shadow: var(--box-shadow-inset);
	box-shadow: var(--box-shadow-inset);
}

.card02 .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}

.card02 .slide {
	overflow: hidden;
	width: 36rem;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

@media only screen and (max-width: 599px) {
	.card02 .slide {
		width: 24rem;
	}
}

@media only screen and (min-width: 1025px) {
	.card02 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card02 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card02 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}

	.card02 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.card02 .slide-media {
	padding-top: 62.5%;
}

.card02 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}

.card02 .slide-content {
	padding: 3.2rem;
}

.card02 .slide-date {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}

.card02 .slide-title {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 1.6rem;
}

.card03 {
	/* コンテナ */
	overflow: hidden;
	/* 前へ / 次へボタン */
	/* スライド */
	/* スライド アクティブ時 */
}

.card03 .swiper {
	overflow: visible;
}

@media only screen and (max-width: 1024px) {
	.card03 .swiper {
		padding: 0 3.2rem;
	}
}

.card03 .swiper-button-prev,
.card03 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

.card03 .swiper-button-prev::before,
.card03 .swiper-button-next::before {
	background-color: rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: var(--box-shadow-dark);
	box-shadow: var(--box-shadow-dark);
}

.card03 .swiper-button-prev::after,
.card03 .swiper-button-next::after {
	border-color: #fff;
}

.card03 .swiper-button-prev {
	right: calc(100% - 1.6rem);
}

@media only screen and (max-width: 1024px) {
	.card03 .swiper-button-prev {
		right: calc(100% - 5.2rem);
	}
}

.card03 .swiper-button-next {
	left: calc(100% - 1.6rem);
}

@media only screen and (max-width: 1024px) {
	.card03 .swiper-button-next {
		left: calc(100% - 5.2rem);
	}
}

.card03 .slide {
	overflow: hidden;
	-webkit-transition: var(--transition), opacity 1s;
	transition: var(--transition), opacity 1s;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

@media only screen and (min-width: 1025px) {
	.card03 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card03 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}

	.card03 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.card03 .slide-media {
	padding-top: 62.5%;
}

.card03 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}

.card03 .slide-content {
	padding: 3.2rem;
}

.card03 .slide-date {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}

.card03 .slide-title {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 1.6rem;
}

.card03 .swiper-slide:not(.swiper-slide-visible) .slide {
	pointer-events: none;
	opacity: 0.3;
}

.card04 {
	/* コンテナ */
	overflow: hidden;
	/* 前へ / 次へボタン */
	/* スライダー非活性時 */
	/* スライダー非活性時 */
	/* スライド */
}

.card04 .swiper {
	overflow: visible;
}

@media only screen and (max-width: 1024px) {
	.card04 .swiper {
		padding: 0 3.2rem;
	}
}

.card04 .swiper-button-prev,
.card04 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

.card04 .swiper-button-prev::before,
.card04 .swiper-button-next::before {
	background-color: rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: var(--box-shadow-dark);
	box-shadow: var(--box-shadow-dark);
}

.card04 .swiper-button-prev::after,
.card04 .swiper-button-next::after {
	border-color: #fff;
}

.card04 .swiper-button-prev {
	right: calc(100% - 1.6rem);
}

@media only screen and (max-width: 1024px) {
	.card04 .swiper-button-prev {
		right: calc(100% - 5.2rem);
	}
}

.card04 .swiper-button-next {
	left: calc(100% - 1.6rem);
}

@media only screen and (max-width: 1024px) {
	.card04 .swiper-button-next {
		left: calc(100% - 5.2rem);
	}
}

.card04 .swiper-a:not(.swiper-initialized) {
	padding: 0;
}

.card04 .swiper-a:not(.swiper-initialized) .swiper-button-prev,
.card04 .swiper-a:not(.swiper-initialized) .swiper-button-next {
	display: none;
}

.card04 .swiper-a:not(.swiper-initialized) .swiper-wrapper {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
}

.card04 .swiper-b:not(.swiper-initialized) {
	padding: 0;
}

.card04 .swiper-b:not(.swiper-initialized) .swiper-button-prev,
.card04 .swiper-b:not(.swiper-initialized) .swiper-button-next {
	display: none;
}

.card04 .swiper-b:not(.swiper-initialized) .swiper-wrapper {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {
	.card04 .swiper-b:not(.swiper-initialized) .swiper-wrapper {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}
}

@media only screen and (max-width: 599px) {
	.card04 .swiper-b:not(.swiper-initialized) .swiper-wrapper {
		grid-template-columns: repeat(1, 1fr);
	}
}

.card04 .slide {
	overflow: hidden;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

@media only screen and (min-width: 1025px) {
	.card04 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card04 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card04 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}

	.card04 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.card04 .slide-media {
	padding-top: 62.5%;
}

.card04 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}

.card04 .slide-content {
	padding: 2.2rem 2.2rem 3.2rem;
}

.card04 .slide-date {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: #111;
}

.card04 .cate {
	font-size: 1.6rem;
	/* background: #1b86ca; */
	width: 5em;
	text-align: center;
	position: absolute;
	top: 0;
	/* color: #fff; */
	right: 0;
	/* letter-spacing: 0.3em; */
	padding-left: 0.5em;
}

.card04 .cate p.nagano {
	background: #1b86ca;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 長野 */
.card04 .cate p.cateA {
	background: #1b86ca;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

.card04 .cate p.cateB {
	background: #ea6288;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 神奈川 */
.card04 .cate p.cateC {
	background: #7a5a99;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 山梨 */
.card04 .cate p.cateD {
	background: #1fb8d7;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 広島 */
.card04 .cate p.cateE {
	background: #e9465b;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 山形 */
.card04 .cate p.cateF {
	background: #d98e00;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}

/* 宮城 */
.card04 .cate p.cateG {
	background: #51b35f;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}


.card04 .cate p.cateH {
	background: #1b86ca;
	color: #fff;
	border-radius: 0 0.3em 0 1em;
}





.card04 .hotel-nm {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: #111;
}





.card04 .slide-title {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	/* height: 3.2em; */
	margin-top: 0rem;
}


.card04 .slide-caption {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 0.6rem;
	font-size: 1.4rem;
}




.card05 {
	/* コンテナ */
	overflow: hidden;
	/* スライド */
	/* スライド ホバー時 */
}

.card05 .swiper {
	overflow: visible;
}

.card05 .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}

.card05 .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}

.card05 .slide {
	overflow: hidden;
	width: 36rem;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

@media only screen and (max-width: 599px) {
	.card05 .slide {
		width: 24rem;
	}
}

@media only screen and (min-width: 1025px) {
	.card05 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card05 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}

	.card05 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}

	.card05 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.card05 .slide-media {
	padding-top: 62.5%;
}

.card05 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}

.card05 .slide-content {
	padding: 3.2rem;
}

.card05 .slide-date {
	font-size: 1.2rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}

.card05 .slide-title {
	line-height: 1.6;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 1.6rem;
}

@media only screen and (min-width: 1025px) {
	.card05 .swiper:hover .slide:not(:hover) {
		opacity: 0.3;
	}
}

.gallery01 {
	/* コンテナ */
	overflow: hidden;
	/* フェードモード時 共通調整 */
	/* コントローラー */
	/* 前へ / 次へボタン */
	/* スクロールバー */
	/* スライド */
	/* サムネイル */
	/* サムネイル アクティブ時 */
}

.gallery01 .swiper {
	max-width: 720px;
	margin: auto;
}

.gallery01 .swiper-main {
	overflow: visible;
}

.gallery01 .swiper-thumb {
	padding-top: 8px;
}

.gallery01 .swiper-fade .swiper-slide {
	-webkit-transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, transform !important;
	transition-property: opacity, transform, -webkit-transform !important;
	pointer-events: none;
}

.gallery01 .swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.gallery01 .swiper-controller {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 62.5%;
}

.gallery01 .swiper-button-prev,
.gallery01 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

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

	.gallery01 .swiper-button-prev::before,
	.gallery01 .swiper-button-next::before {
		background-color: rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: var(--box-shadow-dark);
		box-shadow: var(--box-shadow-dark);
	}
}

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

	.gallery01 .swiper-button-prev::after,
	.gallery01 .swiper-button-next::after {
		border-color: #fff;
	}
}

.gallery01 .swiper-button-prev {
	right: calc(100% + 3.2rem);
}

@media only screen and (max-width: 1024px) {
	.gallery01 .swiper-button-prev {
		right: calc(100% - 3.2rem);
	}
}

.gallery01 .swiper-button-next {
	left: calc(100% + 3.2rem);
}

@media only screen and (max-width: 1024px) {
	.gallery01 .swiper-button-next {
		left: calc(100% - 3.2rem);
	}
}

.gallery01 .swiper-scrollbar {
	position: relative;
	margin-top: 1.6rem;
}

.gallery01 .swiper-scrollbar::after {
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	margin: auto;
	content: "";
	background-color: #eee;
}

.gallery01 .swiper-scrollbar-drag {
	height: 20px;
	padding: 8px 0;
	cursor: pointer;
	background-color: var(--color-theme);
	background-clip: content-box;
}

@media only screen and (min-width: 1025px) {
	.gallery01 .swiper-scrollbar-drag:hover {
		background-color: var(--color-theme-darken);
	}
}

.gallery01 .swiper-scrollbar-drag:active {
	background-color: var(--color-theme-darken);
}

.gallery01 .slide {
	display: block;
	overflow: hidden;
}

.gallery01 .slide-media {
	padding-top: 62.5%;
	border-radius: 4px;
}

.gallery01 .slide-media img {
	-o-object-fit: contain;
	object-fit: contain;
}

.gallery01 .slide-title {
	font-weight: bold;
	line-height: 1.6;
	padding: 3.2rem 0;
}

.gallery01 .thumb-media {
	padding-top: 100%;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	border-radius: 4px;
}

@media only screen and (min-width: 1025px) {
	.gallery01 .thumb-media:hover {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}

	.gallery01 .thumb-media:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.gallery01 .thumb-media img {
	height: calc(100% + 8px);
	-webkit-transition: var(--transition);
	transition: var(--transition);
	-webkit-transform: translateY(-8px);
	transform: translateY(-8px);
}

.gallery01 .swiper-slide-thumb-active {
	-webkit-transition: var(--transition);
	transition: var(--transition);
	opacity: 0.3;
}

.gallery01 .swiper-slide-thumb-active .thumb-media {
	-webkit-transform: translateY(-8px);
	transform: translateY(-8px);
}

.gallery01 .swiper-slide-thumb-active .thumb-media img {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.gallery02 {
	/* コンテナ */
	overflow: hidden;
	/* フェードモード時 共通調整 */
	/* コントローラー */
	/* 前へ / 次へボタン */
	/* スライド */
	/* サムネイル */
}

.gallery02 .swiper,
.gallery02 .thumb-wrapper {
	max-width: 720px;
	margin: auto;
}

.gallery02 .swiper {
	overflow: visible;
}

.gallery02 .swiper-fade .swiper-slide {
	-webkit-transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, transform !important;
	transition-property: opacity, transform, -webkit-transform !important;
	pointer-events: none;
}

.gallery02 .swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.gallery02 .swiper-controller {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 62.5%;
}

.gallery02 .swiper-button-prev,
.gallery02 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

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

	.gallery02 .swiper-button-prev::before,
	.gallery02 .swiper-button-next::before {
		background-color: rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: var(--box-shadow-dark);
		box-shadow: var(--box-shadow-dark);
	}
}

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

	.gallery02 .swiper-button-prev::after,
	.gallery02 .swiper-button-next::after {
		border-color: #fff;
	}
}

.gallery02 .swiper-button-prev {
	right: calc(100% + 3.2rem);
}

@media only screen and (max-width: 1024px) {
	.gallery02 .swiper-button-prev {
		right: calc(100% - 3.2rem);
	}
}

.gallery02 .swiper-button-next {
	left: calc(100% + 3.2rem);
}

@media only screen and (max-width: 1024px) {
	.gallery02 .swiper-button-next {
		left: calc(100% - 3.2rem);
	}
}

.gallery02 .slide {
	display: block;
	overflow: hidden;
}

.gallery02 .slide-media {
	display: block;
	padding-top: 62.5%;
	border-radius: 4px;
}

.gallery02 .slide-media img {
	-o-object-fit: contain;
	object-fit: contain;
}

.gallery02 .slide-title {
	font-weight: bold;
	line-height: 1.6;
	padding: 3.2rem 0;
}

.gallery02 .thumb-wrapper {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 8px;
}

@media only screen and (max-width: 599px) {
	.gallery02 .thumb-wrapper {
		grid-template-columns: repeat(5, 1fr);
	}
}

.gallery02 .thumb-media {
	padding-top: 100%;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	border-radius: 4px;
}

@media only screen and (min-width: 1025px) {
	.gallery02 .thumb-media:hover {
		-webkit-transform: scale(0.9);
		transform: scale(0.9);
	}

	.gallery02 .thumb-media:hover img {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
}

.gallery02 .thumb-media img {
	-webkit-transition: var(--transition);
	transition: var(--transition);
}

.gallery02 .thumb-media-active {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	opacity: 0.3;
}

.gallery02 .thumb-media-active img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.gallery03 {
	margin-bottom: 16rem;
	/* コンテナ */
	/* スライド */
}

@media only screen and (max-width: 599px) {
	.gallery03 {
		margin-bottom: 8rem;
	}
}

.gallery03 .l-inner {
	padding-bottom: 0;
}

.gallery03 .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}

.gallery03 .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}

.gallery03 .slide {
	width: var(--slide-width);
	-webkit-transition: var(--transition);
	transition: var(--transition);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	--slide-width: 200px;
}

@media only screen and (max-width: 599px) {
	.gallery03 .slide {
		--slide-width: 120px;
	}
}

.gallery03 .slide-media {
	height: var(--slide-width);
}

.gallery03 .slide-content {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 3.2rem 1.6rem 1.6rem;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	opacity: 0;
	color: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.3)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 50%);
}

.gallery03 .slide-title {
	font-size: 1.4rem;
	line-height: 1.4;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.gallery03 .slide:hover {
	width: calc(var(--slide-width) * 1.5);
}

.gallery03 .slide:hover .slide-content {
	opacity: 1;
}

.flow01 {
	/* コンテナ */
	overflow: hidden;
	/* ページネーション（親） */
	/* ページネーション（子） */
	/* 前へ / 次へボタン（親） */
	/* スライド（親） */
	/* スライド（子） */
}

.flow01 .swiper-main {
	overflow: visible;
}

.flow01 .swiper-main,
.flow01 .swiper-pagination-main {
	max-width: 600px;
	margin: auto;
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {

	.flow01 .swiper-main,
	.flow01 .swiper-pagination-main {
		max-width: calc(100% - 6.4rem);
	}
}

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

	.flow01 .swiper-main,
	.flow01 .swiper-pagination-main {
		max-width: calc(100% - 3.2rem);
	}
}

.flow01 .swiper-pagination-main {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 6.4rem;
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet {
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1;
	position: relative;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding-bottom: 2.4rem;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	text-align: center;
	color: var(--color-gray);
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet::before,
.flow01 .swiper-pagination-main .swiper-pagination-bullet::after {
	position: absolute;
	content: "";
	-webkit-transition: var(--transition);
	transition: var(--transition);
	background-color: var(--color-theme);
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet::before {
	z-index: 1;
	right: 0;
	bottom: -6px;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	margin: auto;
	border-radius: 100px;
	-webkit-box-shadow: 0 0 0 5px var(--color-base);
	box-shadow: 0 0 0 5px var(--color-base);
}

@media only screen and (max-width: 599px) {
	.flow01 .swiper-pagination-main .swiper-pagination-bullet::before {
		bottom: -5px;
	}
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet::after {
	right: 50%;
	bottom: 0;
	width: 100%;
	height: 3px;
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet:first-child::after {
	display: none;
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet .step {
	font-size: 1.6rem;
}

@media only screen and (max-width: 599px) {
	.flow01 .swiper-pagination-main .swiper-pagination-bullet .step {
		font-size: 1.4rem;
		display: block;
		margin-bottom: 0.5em;
		text-indent: 0.5em;
	}
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet-active {
	color: var(--color-theme);
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet-active::before {
	-webkit-box-shadow: 0 0 0 4px var(--color-base), 0 0 0 7px var(--color-theme);
	box-shadow: 0 0 0 4px var(--color-base), 0 0 0 7px var(--color-theme);
}

.flow01 .swiper-pagination-main .swiper-pagination-bullet-active~*::before,
.flow01 .swiper-pagination-main .swiper-pagination-bullet-active~*::after {
	background-color: var(--color-gray);
}

.flow01 .swiper-pagination-sub {
	font-size: 0;
	text-align: center;
}

.flow01 .swiper-pagination-sub .swiper-pagination-bullet {
	display: inline-block;
	width: 8px;
	height: 8px;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	vertical-align: top;
	background-color: var(--color-gray);
}

.flow01 .swiper-pagination-sub .swiper-pagination-bullet:not(:first-child) {
	margin-left: 8px;
}

.flow01 .swiper-pagination-sub .swiper-pagination-bullet-active {
	background-color: var(--color-theme);
}

.flow01 .swiper-button-prev,
.flow01 .swiper-button-next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}

.flow01 .swiper-button-prev::before,
.flow01 .swiper-button-next::before {
	display: none;
}

.flow01 .swiper-button-prev::after,
.flow01 .swiper-button-next::after {
	position: relative;
	width: 1.6rem;
	height: 1.6rem;
	content: "";
	border: solid var(--color-gray);
	border-width: 3px 3px 0 0;
}

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

	.flow01 .swiper-button-prev::after,
	.flow01 .swiper-button-next::after {
		width: 3.2rem;
		height: 3.2rem;
	}
}

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

	.flow01 .swiper-button-prev::after,
	.flow01 .swiper-button-next::after {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
}

.flow01 .swiper-button-prev {
	right: calc(100% + 0.6rem);
}

@media only screen and (max-width: 1024px) {
	.flow01 .swiper-button-prev {
		right: calc(100% - 4rem);
	}
}

@media only screen and (min-width: 1025px) {
	.flow01 .swiper-button-prev:hover::after {
		-webkit-transform: translateX(-0.8rem) rotate(-135deg);
		transform: translateX(-0.8rem) rotate(-135deg);
	}
}

.flow01 .swiper-button-next {
	left: calc(100% + 0.6rem);
}

@media only screen and (max-width: 1024px) {
	.flow01 .swiper-button-next {
		left: calc(100% - 4rem);
	}
}

@media only screen and (min-width: 1025px) {
	.flow01 .swiper-button-next:hover::after {
		-webkit-transform: translateX(0.8rem) rotate(45deg);
		transform: translateX(0.8rem) rotate(45deg);
	}
}

.flow01 .swiper-slide {
	height: auto;
}

.flow01 .mainslide {
	width: 100%;
	height: 100%;
	padding: 6.4rem 0 4.8rem;
	text-align: center;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

.flow01 .mainslide-title {
	font-size: 2.4rem;
	line-height: 1.6;
	display: inline-block;
	border-bottom: 3px solid currentColor;
}

.flow01 .subslide {
	padding: 4.8rem;
}

.flow01 .subslide-media {
	margin-bottom: 3.2rem;
}

.flow01 .subslide-media img {
	width: 12rem;
	height: 12rem;
}

.mv01 {
	margin-bottom: 16rem;
	/* フェードモード時 共通調整 */
	/* ページネーション */
	/* スライド */
	/* スライド アクティブ時 */
}

@media only screen and (max-width: 1024px) {
	.mv01 {
		margin-bottom: 8rem;
	}
}

.mv01 .l-inner {
	padding-bottom: 0;
}

.mv01 .swiper-fade .swiper-slide {
	-webkit-transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, transform !important;
	transition-property: opacity, transform, -webkit-transform !important;
	pointer-events: none;
}

.mv01 .swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.mv01 .swiper-pagination {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 3.2rem;
	height: -webkit-max-content;
	height: -moz-max-content;
	height: max-content;
	margin: auto;
}

.mv01 .swiper-pagination-bullet {
	display: block;
	width: 3px;
	height: 4rem;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	background-color: rgba(255, 255, 255, 0.4);
}

.mv01 .swiper-pagination-bullet:not(:first-child) {
	margin-top: 0.8rem;
}

.mv01 .swiper-pagination-bullet-active {
	background-color: var(--color-theme);
}

.mv01 .slide-media {
	height: 800px;
}

@media only screen and (max-width: 1024px) {
	.mv01 .slide-media {
		height: max(70vh, 70vw);
	}
}

.mv01 .slide-media img {
	-webkit-transition: 7s 1s ease-out;
	transition: 7s 1s ease-out;
}

.mv01 .slide-title {
	font-size: 4rem;
	font-weight: normal;
	line-height: 1.6;
	position: absolute;
	right: 8rem;
	bottom: 15%;
	margin-left: 16rem;
	text-align: right;
	color: #fff;
}

@media only screen and (max-width: 599px) {
	.mv01 .slide-title {
		font-size: 2.8rem;
		right: 4rem;
		margin-left: 6rem;
	}
}

.mv01 .swiper-slide[class*=-active] .slide-media img {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.mv01 .swiper-slide[class*=-active] .slide-title {
	-webkit-animation: mv01-fadeIn 2s 0.5s var(--easing) both;
	animation: mv01-fadeIn 2s 0.5s var(--easing) both;
}

@-webkit-keyframes mv01-fadeIn {
	0% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
		opacity: 0;
		-webkit-filter: blur(300px);
		filter: blur(300px);
	}

	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		-webkit-filter: blur(0);
		filter: blur(0);
	}
}

@keyframes mv01-fadeIn {
	0% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
		opacity: 0;
		-webkit-filter: blur(300px);
		filter: blur(300px);
	}

	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		-webkit-filter: blur(0);
		filter: blur(0);
	}
}

.mv02 {
	margin-bottom: 16rem;
	/* ページネーション */
	/* フェードモード時 共通調整 */
	/* スライド */
	/* スライド アクティブ時 */
}

@media only screen and (max-width: 1024px) {
	.mv02 {
		margin-bottom: 8rem;
	}
}

.mv02 .l-inner {
	padding-bottom: 0;
}

.mv02 .swiper-pagination {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	height: -webkit-max-content;
	height: -moz-max-content;
	height: max-content;
	margin: auto;
}

.mv02 .swiper-pagination-bullet {
	display: block;
	width: 1.6rem;
	height: 2px;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	background-color: #fff;
}

.mv02 .swiper-pagination-bullet:not(:first-child) {
	margin-top: 1.6rem;
}

.mv02 .swiper-pagination-bullet-active {
	width: 4rem;
	background-color: var(--color-theme);
}

.mv02 .swiper-fade .swiper-slide {
	-webkit-transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, transform !important;
	transition-property: opacity, transform, -webkit-transform !important;
	pointer-events: none;
}

.mv02 .swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.mv02 .slide {
	display: grid;
	place-content: center;
	height: 800px;
	padding: 0 8rem;
	text-align: center;
}

@media only screen and (max-width: 1024px) {
	.mv02 .slide {
		height: max(70vh, 70vw);
	}
}

.mv02 .slide-media {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.mv02 .slide-media img {
	-webkit-transition: 7s 1s linear;
	transition: 7s 1s linear;
	-webkit-transform: translateX(-1.5%) scale(1.1);
	transform: translateX(-1.5%) scale(1.1);
}

.mv02 .slide-title,
.mv02 .slide-text,
.mv02 .slide-link {
	-webkit-animation: 2s var(--easing) both;
	animation: 2s var(--easing) both;
	opacity: 0;
}

.mv02 .slide-title {
	font-size: 6rem;
	line-height: 1.1;
	color: var(--color-theme);
}

@media only screen and (max-width: 1024px) {
	.mv02 .slide-title {
		font-size: 4rem;
	}
}

.mv02 .slide-text {
	font-size: 1.8rem;
	margin: 4rem 0;
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
	color: #fff;
}

@media only screen and (max-width: 1024px) {
	.mv02 .slide-text {
		font-size: 1.6rem;
		margin: 3.2rem 0;
	}
}

.mv02 .slide-link {
	-webkit-animation-delay: 0.4s;
	animation-delay: 0.4s;
}

.mv02 .slide-button {
	font-size: 1.2rem;
	font-weight: bold;
	display: inline-block;
	color: var(--color-theme);
}

.mv02 .slide-button::before {
	display: inline-block;
	width: 6rem;
	height: 1px;
	margin: -2px 1.6rem 0 0;
	content: "";
	vertical-align: middle;
	background-color: currentColor;
}

.mv02 .swiper-slide[class*=-active] .slide-media img {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transform: translateX(1.5%) scale(1.05);
	transform: translateX(1.5%) scale(1.05);
}

.mv02 .swiper-slide.anm-started .slide-title,
.mv02 .swiper-slide.anm-started .slide-text,
.mv02 .swiper-slide.anm-started .slide-link {
	-webkit-animation-name: mv02-fadeIn;
	animation-name: mv02-fadeIn;
}

.mv02 .swiper-slide.anm-finished .slide-title,
.mv02 .swiper-slide.anm-finished .slide-text,
.mv02 .swiper-slide.anm-finished .slide-link {
	-webkit-animation-name: mv02-fadeOut;
	animation-name: mv02-fadeOut;
}

@-webkit-keyframes mv02-fadeIn {
	0% {
		-webkit-transform: translateY(6rem);
		transform: translateY(6rem);
		opacity: 0;
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes mv02-fadeIn {
	0% {
		-webkit-transform: translateY(6rem);
		transform: translateY(6rem);
		opacity: 0;
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@-webkit-keyframes mv02-fadeOut {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	100% {
		-webkit-transform: translateY(-6rem);
		transform: translateY(-6rem);
		opacity: 0;
	}
}

@keyframes mv02-fadeOut {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	100% {
		-webkit-transform: translateY(-6rem);
		transform: translateY(-6rem);
		opacity: 0;
	}
}

.mv03 {
	margin-bottom: 16rem;
	/* コンテナ */
	/* スライド */
	/* スライド アクティブ時 */
	/* サムネイル */
	/* サムネイル アクティブ時 */
}

.mv03 .l-inner {
	padding-bottom: 0;
}

.mv03 .swiper-area {
	position: relative;
}

.mv03 .swiper-main {
	height: 800px;
	margin-right: min(40rem, 25vw);
	border-radius: 0 5rem 5rem 0;
}

@media only screen and (max-width: 1024px) {
	.mv03 .swiper-main {
		height: max(70vh, 70vw);
	}
}

@media only screen and (max-width: 599px) {
	.mv03 .swiper-main {
		margin-right: 4rem;
	}
}

.mv03 .swiper-thumb {
	position: absolute;
	top: 10rem;
	right: 0;
	bottom: 10rem;
	width: min(48rem, 30vw);
}

@media only screen and (max-width: 599px) {
	.mv03 .swiper-thumb {
		top: auto;
		bottom: -6rem;
		width: 20rem;
		height: 24rem;
		border-radius: 1rem 0 0 1rem;
	}
}

.mv03 .slide {
	display: grid;
	height: 100%;
	padding: 0 4rem;
	text-align: center;
	color: #fff;
}

@media only screen and (min-width: 600px) {
	.mv03 .slide {
		place-content: center;
	}
}

@media only screen and (max-width: 599px) {
	.mv03 .slide {
		padding-top: 20%;
	}
}

@media only screen and (min-width: 1025px) {
	.mv03 .slide img {
		-webkit-transition: 2s var(--easing);
		transition: 2s var(--easing);
	}

	.mv03 .slide:hover img {
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
		opacity: 0.9;
	}
}

.mv03 .slide-media {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}

.mv03 .slide-content {
	-webkit-transition: 3s 0.5s var(--easing);
	transition: 3s 0.5s var(--easing);
	-webkit-transform: translateY(-6rem);
	transform: translateY(-6rem);
	opacity: 0;
}

.mv03 .slide-title {
	font-size: 5rem;
	line-height: 1.1;
	color: var(--color-theme);
}

@media only screen and (max-width: 1024px) {
	.mv03 .slide-title {
		font-size: 3.2rem;
	}
}

.mv03 .slide-text {
	font-size: 1.8rem;
	margin: 4rem 0 6rem;
}

@media only screen and (max-width: 1024px) {
	.mv03 .slide-text {
		font-size: 1.6rem;
		margin: 2.4rem 0 3.2rem;
	}
}

.mv03 .slide-date {
	font-size: 2rem;
	font-weight: bold;
	display: block;
	padding: 1rem 2rem 0.8rem;
	letter-spacing: 0.1em;
	border: solid currentColor;
	border-width: 2px 0;
}

@media only screen and (max-width: 1024px) {
	.mv03 .slide-date {
		font-size: 1.8rem;
	}
}

.mv03 .swiper-slide[class*=-active] .slide-content {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

.mv03 .thumb {
	font-weight: bold;
	position: relative;
	display: grid;
	overflow: hidden;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	height: 100%;
	padding: 0 4rem;
	cursor: pointer;
	-webkit-transition: 2s var(--easing);
	transition: 2s var(--easing);
	color: #fff;
}

@media only screen and (min-width: 600px) {
	.mv03 .thumb {
		border-radius: 4px 0 0 4px;
	}
}

@media only screen and (max-width: 1024px) {
	.mv03 .thumb {
		padding: 0 2.4rem;
	}
}

.mv03 .thumb::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 6px;
	content: "";
	-webkit-transition: 1s var(--easing);
	transition: 1s var(--easing);
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	background-color: var(--color-theme);
}

.mv03 .thumb-media {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}

.mv03 .thumb-media img {
	-webkit-transition: 2s var(--easing);
	transition: 2s var(--easing);
}

.mv03 .thumb-title {
	font-size: 2rem;
	line-height: 1.5;
	position: relative;
	z-index: 1;
}

@media only screen and (max-width: 1024px) {
	.mv03 .thumb-title {
		font-size: 1.4rem;
	}
}

.mv03 .thumb-date {
	font-size: 1.2rem;
	margin-top: 0.3em;
	letter-spacing: 0.1em;
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {
	.mv03 .thumb-date {
		font-size: 1rem;
	}
}

@media only screen and (max-width: 599px) {
	.mv03 .thumb-date {
		display: none;
	}
}

.mv03 .swiper-slide-thumb-active .thumb {
	color: var(--color-theme);
}

.mv03 .swiper-slide-thumb-active .thumb::before {
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
}

.mv03 .swiper-slide-thumb-active .thumb-media img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	opacity: 0.3;
	-webkit-filter: blur(3px);
	filter: blur(3px);
	mix-blend-mode: hard-light;
}

.mv04 {
	margin-bottom: 16rem;
	/* コンテナ */
	/* フェードモード時 共通調整 */
	/* プログレスバー */
	/* スライド */
	/* スライド アクティブ時 */
}

@media only screen and (max-width: 599px) {
	.mv04 {
		margin-bottom: 8rem;
	}
}

.mv04 .l-inner {
	padding-bottom: 0;
}

.mv04 .swiper {
	background-color: #333;
}

.mv04 .swiper-fade .swiper-slide {
	-webkit-transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, -webkit-transform !important;
	transition-property: opacity, transform !important;
	transition-property: opacity, transform, -webkit-transform !important;
	pointer-events: none;
}

.mv04 .swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.mv04 .progressbar {
	position: relative;
	width: 100%;
	height: 4px;
	background-color: var(--color-gray);
}

.mv04 .progressbar-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left top;
	transform-origin: left top;
	background-color: var(--color-theme);
}

.mv04 .swiper-slide {
	height: auto;
}

.mv04 .slide-media {
	height: 800px;
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {
	.mv04 .slide-media {
		height: max(60vh, 60vw);
	}
}

@media only screen and (max-width: 599px) {
	.mv04 .slide-media {
		height: max(45vh, 45vw);
	}
}

@media only screen and (min-width: 600px) {
	.mv04 .slide-media::after {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 40%;
		content: "";
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.5)));
		background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%);
		mix-blend-mode: soft-light;
	}
}

.mv04 .slide-media img {
	-webkit-transition-delay: 1s;
	transition-delay: 1s;
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.mv04 .slide-content {
	color: #fff;
}

@media only screen and (min-width: 600px) {
	.mv04 .slide-content {
		position: absolute;
		bottom: 0;
		left: 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: end;
		-webkit-align-items: flex-end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
}

@media only screen and (min-width: 1025px) {
	.mv04 .slide-content {
		padding: 6.4rem;
	}
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {
	.mv04 .slide-content {
		padding: 3.2rem;
	}
}

@media only screen and (max-width: 599px) {
	.mv04 .slide-content {
		position: relative;
	}
}

.mv04 .slide-title {
	line-height: 1.6;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 599px) {
	.mv04 .slide-title {
		font-weight: normal;
		padding: 3.2rem 4rem;
	}
}

.mv04 .slide-fraction {
	font-weight: bold;
	position: relative;
	text-align: center;
	--size: 96px;
}

@media only screen and (max-width: 1024px) {
	.mv04 .slide-fraction {
		--size: 64px;
	}
}

@media only screen and (min-width: 1025px) {
	.mv04 .slide-fraction {
		margin-right: 6.4rem;
	}
}

@media only screen and (max-width: 1024px) and (min-width: 600px) {
	.mv04 .slide-fraction {
		margin-right: 3.2rem;
	}
}

@media only screen and (max-width: 599px) {
	.mv04 .slide-fraction {
		position: absolute;
		bottom: calc(100% + 1rem);
		left: 4rem;
	}
}

.mv04 .slide-fraction .circle {
	display: block;
	width: var(--size);
	height: var(--size);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.mv04 .slide-fraction .circle svg {
	width: 100%;
	height: 100%;
	fill: none;
}

.mv04 .slide-fraction .circle-01 {
	stroke: rgba(255, 255, 255, 0.3);
	stroke-width: 1px;
}

.mv04 .slide-fraction .circle-02 {
	stroke: var(--color-theme);
	stroke-width: 2px;
	stroke-dasharray: 201.056px;
	stroke-dashoffset: 201.056px;
}

.mv04 .slide-fraction .current {
	font-size: 2.4rem;
	line-height: var(--size);
	position: absolute;
	top: 0.05em;
	left: 0;
	width: var(--size);
	text-align: center;
	color: var(--color-theme);
}

.mv04 .slide-fraction .total {
	font-size: 1.6rem;
}

.mv04 .slide-fraction .total::before {
	position: relative;
	display: block;
	width: 3px;
	height: 1em;
	margin: -3px auto 0.5em;
	content: "";
	background-color: var(--color-theme);
}

@media only screen and (max-width: 1024px) {
	.mv04 .slide-fraction .total::before {
		width: 2px;
		margin-top: -2px;
	}
}

.mv04 .swiper-slide[class*=-active] .slide-media img {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transform: scale(1);
	transform: scale(1);
}

.mv04 .swiper-slide[class*=-active] .slide-fraction .circle-02 {
	-webkit-animation: mv04-circle linear both;
	animation: mv04-circle linear both;
}

@-webkit-keyframes mv04-circle {
	100% {
		stroke-dashoffset: 0;
	}
}

@keyframes mv04-circle {
	100% {
		stroke-dashoffset: 0;
	}
}

.mv05 {
	margin-bottom: 16rem;
	/* スライド */
	/* 前後のスライド */
	/* スライド外コンテンツ */
	/* ページネーション（分数） */
	/* マーカーアニメーション */
}

@media only screen and (max-width: 599px) {
	.mv05 {
		margin-bottom: 8rem;
	}
}

.mv05 .l-inner {
	padding-bottom: 0;
}

.mv05 .slide-media {
	height: 800px;
}

@media only screen and (max-width: 1024px) {
	.mv05 .slide-media {
		height: max(70vh, 70vw);
	}
}

.mv05 .slide-media img {
	-webkit-transition: 3s;
	transition: 3s;
}

.mv05 .slide-media.clip {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	-webkit-filter: contrast(1.1);
	filter: contrast(1.1);
	--stroke-width: 1.2rem;
	--out: 2.4rem;
	--in: calc(var(--out) + var(--stroke-width));
	-webkit-clip-path: polygon(var(--out) var(--out), calc(100% - var(--out)) var(--out), calc(100% - var(--out)) calc(100% - var(--out)), var(--out) calc(100% - var(--out)), var(--out) var(--in), var(--in) var(--in), var(--in) calc(100% - var(--in)), calc(100% - var(--in)) calc(100% - var(--in)), calc(100% - var(--in)) var(--in), var(--out) var(--in));
	clip-path: polygon(var(--out) var(--out), calc(100% - var(--out)) var(--out), calc(100% - var(--out)) calc(100% - var(--out)), var(--out) calc(100% - var(--out)), var(--out) var(--in), var(--in) var(--in), var(--in) calc(100% - var(--in)), calc(100% - var(--in)) calc(100% - var(--in)), calc(100% - var(--in)) var(--in), var(--out) var(--in));
}

.mv05 .swiper-slide {
	overflow: hidden;
}

.mv05 .swiper-slide[class*=-active] .slide-media.clip img {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.mv05 .swiper-slide[class*=-prev] .slide-media img {
	-webkit-transform: translateX(80vw);
	transform: translateX(80vw);
}

.mv05 .swiper-slide[class*=-next] .slide-media img {
	-webkit-transform: translateX(-80vw);
	transform: translateX(-80vw);
}

.mv05 .content,
.mv05 .fraction {
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	height: -webkit-max-content;
	height: -moz-max-content;
	height: max-content;
	margin: auto;
}

.mv05 .content {
	pointer-events: none;
}

@media only screen and (min-width: 1025px) {
	.mv05 .content {
		left: 24rem;
	}
}

@media only screen and (max-width: 1024px) {
	.mv05 .content {
		top: calc(20% + 6rem);
		right: 6rem;
		bottom: auto;
		left: 6rem;
	}
}

.mv05 .content-title {
	font-size: 6rem;
	line-height: 1.1;
	color: var(--color-theme);
}

@media only screen and (max-width: 1024px) {
	.mv05 .content-title {
		font-size: 3.2rem;
	}
}

.mv05 .content-text {
	font-size: 1.8rem;
	margin: 4rem 0;
	color: #fff;
}

@media only screen and (max-width: 1024px) {
	.mv05 .content-text {
		font-size: 1.6rem;
		margin: 2.4rem 0;
	}
}

.mv05 .content-button {
	font-size: 1.2rem;
	font-weight: bold;
	display: inline-block;
	color: var(--color-theme);
}

.mv05 .content-button::before {
	display: inline-block;
	width: 6rem;
	height: 1px;
	margin: -2px 1.6rem 0 0;
	content: "";
	vertical-align: middle;
	background-color: currentColor;
}

.mv05 .content.anm-started .content-button {
	pointer-events: auto;
}

.mv05 .fraction {
	font-weight: bold;
	line-height: 1.2;
	color: #fff;
}

@media only screen and (min-width: 1025px) {
	.mv05 .fraction {
		left: 8rem;
	}
}

@media only screen and (max-width: 1024px) {
	.mv05 .fraction {
		font-size: 1.2rem;
		top: 20%;
		bottom: auto;
		left: 6rem;
	}
}

.mv05 .fraction .current {
	font-size: 3.2rem;
	display: inline-block;
	overflow: hidden;
	width: 6rem;
}

.mv05 .fraction .current .num {
	display: inline-block;
}

.mv05 .fraction .current .num.anm-started {
	-webkit-animation: mv05-fraction 1s var(--easing);
	animation: mv05-fraction 1s var(--easing);
}

.mv05 .fraction .total {
	vertical-align: 0.5em;
}

.mv05 .fraction .total::before {
	content: " / ";
}

.mv05 .marker {
	position: relative;
	display: inline-block;
	-webkit-clip-path: inset(0 100% 0 0);
	clip-path: inset(0 100% 0 0);
}

.mv05 .marker::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #fff;
}

.mv05 .anm-started .marker {
	-webkit-animation: mv05-marker 1s 0.5s both;
	animation: mv05-marker 1s 0.5s both;
}

.mv05 .anm-started .marker::after {
	-webkit-animation: mv05-markerBg 1s 0.5s both;
	animation: mv05-markerBg 1s 0.5s both;
}

.mv05 .anm-started .content-text .marker,
.mv05 .anm-started .content-text .marker::after {
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s;
}

.mv05 .anm-started .content-link .marker,
.mv05 .anm-started .content-link .marker::after {
	-webkit-animation-delay: 0.7s;
	animation-delay: 0.7s;
}

.mv05 .anm-finished .marker {
	-webkit-animation: mv05-markerHide 0.5s both;
	animation: mv05-markerHide 0.5s both;
}

.mv05 .anm-finished .marker::after {
	-webkit-clip-path: inset(0 0 0 100%);
	clip-path: inset(0 0 0 100%);
}

@-webkit-keyframes mv05-marker {

	60%,
	100% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}
}

@keyframes mv05-marker {

	60%,
	100% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}
}

@-webkit-keyframes mv05-markerBg {
	60% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}

	100% {
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%);
	}
}

@keyframes mv05-markerBg {
	60% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}

	100% {
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%);
	}
}

@-webkit-keyframes mv05-markerHide {
	0% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}

	100% {
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%);
	}
}

@keyframes mv05-markerHide {
	0% {
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}

	100% {
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%);
	}
}

@-webkit-keyframes mv05-fraction {

	0%,
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	50% {
		-webkit-transform: translateY(-110%);
		transform: translateY(-110%);
		opacity: 1;
	}

	50.1% {
		-webkit-transform: translateY(110%);
		transform: translateY(110%);
		opacity: 0;
	}
}

@keyframes mv05-fraction {

	0%,
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	50% {
		-webkit-transform: translateY(-110%);
		transform: translateY(-110%);
		opacity: 1;
	}

	50.1% {
		-webkit-transform: translateY(110%);
		transform: translateY(110%);
		opacity: 0;
	}
}


.contactBox .txtArea {
	/*     background: url(../images/common/noise.png) repeat #f5f5f5; */
}


/* dl */

.contactBox .txtArea dl {
	padding: 5px 0 5px 5px;
	text-align: left;
	font-size: 14px;
	letter-spacing: 1px;
	line-height: 1.1;
	border-top: #ddd 1px solid;
}

.contactBox .txtArea dl:last-child {
	border-bottom: #ddd 1px solid;
	/* text-align: center; */
}


.contactBox .txtArea dt {
	display: block;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
}

.contactBox .txtArea dd {
	display: inline-block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	color: #111;
	/* border: #111 2px solid; */
	/* line-height: 55px; */
	font-size: 14px;
	/* text-align: center; */
	position: relative;
}

.contactBox .txtArea .en_txt {
	line-height: 1.6;
	font-family: "Century Gothic", sans-serif;
}




.contactBox .txtArea dd a {
	/*     display: inline-block; */
	/*     margin: 10px 0 0; */
	/*     width: 300px; */
	max-width: 100%;
	padding: 0;
	color: #111;
	font-size: 14px;
	line-height: 1.1;
	/* text-align: left; */
	position: relative;
}

.contactBox .txtArea dd a:hover {
	/*     color: #fefefe;
    background: #14357b;
    border-color: #14357b; */
}



.contactBox .txtArea dd a.btnTel {
	color: #14357b;
	text-align: left;
	font-size: 15px;
}

.contactBox .txtArea dd a.btnTel:hover {
	/*     border-bottom: #14357b 1px solid; */
	opacity: 0.6;
}

.contactBox .txtArea dd a.btnTel:before {
	font-family: 'Font Awesome 6 pro';
	content: "\f87b";
	font-size: 15px;
	padding-right: 10px;
}

/* 
.contactBox .txtArea dd.btnFax {
    color: #14357b;
    text-align: left;
} */

.contactBox .txtArea dd a {
	display: inline;
}

.contactBox .txtArea dd span.btnFax {
	font-size: 15px;
}


.contactBox .txtArea dd span.btnFax:before {
	display: inline;
	font-family: 'Font Awesome 6 pro';
	content: "\f1ac";
	font-size: 14px;
	padding-right: 8px;
	padding-left: 10px;
}



/* #about_access .contactBox .txtArea dd.btnFax:hover {
    border-bottom: #14357b 1px solid;
} */

.contactBox .txtArea dd.btnFax:before {
	font-size: 12px;
	font-family: 'Font Awesome 6 pro';
	content: "\f1ac";
	font-size: 15px;
	padding-right: 10px;
}

.contactBox .txtArea dd a.iconWeb {
	color: #14357b;
	/* background: #14357b; */
	/* border-color: #14357b; */
	text-align: center;
	/* width: 300px; */
	margin: 0 auto;
	display: inline;
}

.contactBox .txtArea dd a.iconWeb:hover {
	color: #31424e;
	/*     background: #f5f5f5;
    border: #14357b 1px solid; */
}

.contactBox .txtArea dd a.iconWeb:before {
	font-family: 'Font Awesome 6 pro';
	content: "\f0ac";
	font-size: 16px;
	padding-right: 10px;
}

/* googlemap */

.contactBox .txtArea dd a.iconGmap {
	color: #14357b;
	/* background: #14357b; */
	/* border-color: #14357b; */
	text-align: center;
	/* width: 300px; */
	margin: 0 auto;
	display: inline;
}

.contactBox .txtArea dd a.iconGmap:hover {
	color: #31424e;
	/*     background: #f5f5f5;
    border: #14357b 1px solid; */
}

.contactBox .txtArea dd a.iconGmap:before {
	font-family: 'Font Awesome 6 pro';
	content: "\f3c5";
	font-size: 16px;
	padding-right: 10px;
	padding-left: 2px;
}







a.btnGoogle:after {
	font-family: 'themify';
	/*     content: "\e649"; */
	font-size: 14px;
	content: "\e693"
}



/* pdf_dl */

.contactBox .txtArea dd a.iconDl {
	color: #14357b;
	/* background: #14357b; */
	/* border-color: #14357b; */
	text-align: center;
	/* width: 300px; */
	margin: 0 auto;
	display: inline;
}

.contactBox .txtArea dd a.iconDl:hover {
	color: #31424e;
	/*     background: #f5f5f5;
    border: #14357b 1px solid; */
}

.contactBox .txtArea dd a.iconDl:before {
	font-family: 'Font Awesome 6 pro';
	content: "\f019";
	font-size: 16px;
	padding-right: 10px;
	padding-left: 2px;
}



/* ======== table.tableOther ======== */
table.company {
	border-collapse: collapse;
	text-align: left;
	letter-spacing: 1px;
	line-height: 2;
	width: 100%;
	color: #000;
}

table.company tr {
	font-size: 2rem;
}

table.company th {
	width: 46%;
	padding: 10px;
	vertical-align: 0;
	border: #ddd 1px solid;
	border-right: #ddd 1px dashed;
	border-right: #ddd 1px solid;
}

table.company td {
	padding: 10px;
	vertical-align: 0;
	border: #ddd 1px solid;
	border-left: none;
	width: 50%;
}

table.company td .linkArea {
	margin-top: 10px;
	text-align: left;
}

table.company td .linkArea a.btn {
	margin: 0;
}

/* --- #map_canvas --- */
#map_canvas {
	width: 100%;
	margin-top: 70px;
	height: 400px;
	position: relative;
	z-index: 1;
	border: #ededed 1px solid;
}



@media only screen and (max-width: 950px) {
	table.company th {
		width: 50%;
		/* padding: 20px; */
	}

	table.company td {
		padding: 10px;
	}
}

@media only screen and (max-width: 800px) {
	table.company {
		font-size: 13px;
	}
}

@media only screen and (max-width: 738px) {
	#outline .imgArea {
		/* float:none; */
		width: 100%;
		display: block;
	}

	#outline .txtArea {
		float: none;
		width: 100%;
		/* margin-top:25px; */
	}

	table.company {
		/* font-size:12px; */
	}

	/*	#map_canvas { display:none; }*/
}

@media only screen and (max-width: 600px) {
	table.company th {
		width: 50%;
		padding: 10px;
	}

	table.company td {
		padding: 10px;
	}
}



.plan_btn {
	position: relative;
	display: inline-block;
	min-width: 280px;
	background-color: #14357b;
	padding: 12px 10px 12px 24px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-size: 16px;
	color: #fff;
	text-align: left;
	margin: 0 10px;
	transition: all .5s;
	text-decoration: none;
}


/*--- 矢印 ---*/
.plan_btn::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 30px;
	width: 34px;
	height: 1px;
	background: #fff;
	transition: all .5s;
}

.plan_btn::after {
	content: '';
	position: absolute;
	top: 40%;
	right: 31px;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	transition: all .5s;
}

.plan_btn:hover {
	opacity: .8;
	color: #fff !important;
}

.plan_btn2:hover {
	opacity: .8;
	color: #fff !important;
}

.plan_btn:hover::before {
	right: 23px;
}

.plan_btn:hover::after {
	right: 24px;
}

@media only screen and (max-width:768px) {
	.plan_btn {
		margin-top: 14px;
		margin-bottom: 15px;
	}
}






/* -----------------------------------------------
* Moduledates エントリーポイント
-------------------------------------------------- */