@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Yantramanav:wght@100;300;400;500;700;900&display=swap");

@font-face {
	font-family: "icomoon";
	src: url("../fonts/icomoon.eot?cwmq4e");
	src: url("../fonts/icomoon.eot?cwmq4e#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?cwmq4e") format("truetype"), url("../fonts/icomoon.woff?cwmq4e") format("woff"), url("../fonts/icomoon.svg?cwmq4e#icomoon") format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: block
}

[class*=" icon-"], [class^=icon-] {
	font-family: "icomoon" !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
}

.icon-bag:before {
	content: "\e900"
}

.icon-cafe:before {
	content: "\e901"
}

.icon-camera:before {
	content: "\e902"
}

.icon-onsen:before {
	content: "\e903"
}

.icon-ropeway:before {
	content: "\e904"
}

:root {
	--primary: #1c2c6f;
	--secondary: #5fb0a5;
	--light: #f2f2f2;
	--dark: #595757;
	--color-links: #f2937e;
	--font-default: "Helvetica Neue", Helvetica, Arial, Verdana, "Yantramanav", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

* {
	margin: 0;
	padding: 0;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

html {
	font-size: 62.5%
}

body {
	color: #000;
	height: 100%;
	padding-top: 0px;
	font-size: 16px;
	font-family: "Zen Kaku Gothic Antique", -apple-system, BlinkMacSystemFont, Helvetica Neue, Original Yu Gothic, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	font-weight: normal;
	line-height: 1.85;
	-webkit-text-size-adjust: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	word-wrap: break-word;
	letter-spacing: 0.1em;
	background: #ffffff
}

.text-primary {
	color: #5fb0a5 !important
}

.body-inner {
	background: url(../images/sub/background.jpg);
	background-repeat: repeat;
	background-size: contain
}

.zen-kaku-gothic-antique-light {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 300;
	font-style: normal
}

.zen-kaku-gothic-antique-regular {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 400;
	font-style: normal
}

.zen-kaku-gothic-antique-medium {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 500;
	font-style: normal
}

.zen-kaku-gothic-antique-bold {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 700;
	font-style: normal
}

body#intro_body {
	background: linear-gradient(145deg, #f7e95e 0%, #f7e95e 35%, #a6e0df 35%, #a6e0df 100%)
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom
}

.loader {
	margin: 0 0 2em;
	height: 100px;
	width: 20%;
	text-align: center;
	padding: 1em;
	margin: 0 auto 1em;
	display: inline-block;
	vertical-align: top
}

p {
	font-family: "Zen Kaku Gothic Antique", -apple-system, BlinkMacSystemFont, Helvetica Neue, Original Yu Gothic, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	font-weight: 400;
	font-size: 16px;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt"
}

@media screen and (min-width:640px) {
	a[href^="tel:"] {
		pointer-events: none
	}
}

.visible-lg, .visible-md, .visible-sm, .visible-xs {
	display: none !important
}

@media only screen and (max-width:768px) {
	.hidden-xs {
		display: none !important
	}

	.visible-xs {
		display: block !important
	}
}

@media only screen and (min-width:768px) and (max-width:991px) {
	.visible-sm {
		display: block !important
	}
}

@media only screen and (min-width:1200px) {
	.visible-lg {
		display: block !important
	}
}

.col_red {
	color: #e00
}

.fcP {
	color: #1565c0
}

.col_white {
	color: #fff
}

.main_color {
	color: #1565c0
}

.color-spa {
	color: #ac3749 !important
}

.text_shadow {
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1)
}

a {
	background-color: rgba(0, 0, 0, 0);
	outline: none;
	-webkit-transition: color 400ms, background-color 400ms;
	transition: color 400ms, background-color 400ms;
	outline: none
}

:focus, a:focus {
	outline: none
}

a:active, a:hover {
	outline: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

a {
	color: #303030;
	text-decoration: none;
	cursor: pointer
}

a:hover {
	color: #005bac !important;
	text-decoration: none
}

@media screen and (min-width:768px) {
	a:hover {
		color: #c62828;
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease
	}

	a.link_ul:after {
		border-bottom: solid 1px #000 !important;
		bottom: 0;
		content: "";
		display: block;
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		width: 0
	}

	a.link_ul:hover:after {
		width: 100%
	}
}

p {
	margin-bottom: 1rem
}

.num {
	font-family: "Yantramanav", sans-serif;
	font-weight: 400;
	font-size: 1.8rem
}

.num_s {
	font-family: "Yantramanav", sans-serif;
	font-weight: 400
}

.font-alt {
	font-family: "Yantramanav", sans-serif
}

.flex_stretch {
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch
}

.caption {
	font-size: 14px !important;
	line-height: 1.3 !important;
	margin-top: 1em
}

hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: visible;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #fff;
	border-left: none;
	border-right: none;
	line-height: 1;
	height: 1px
}

.text-left {
	text-align: left
}

.text-right {
	text-align: right
}

.text-center {
	text-align: center
}

.text-justify {
	text-align: justify
}

.mt-10 {
	margin-top: -10px !important
}

.mt0 {
	margin-top: 0 !important
}

.mt-80 {
	margin-top: 80px !important
}

.table {
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
	font-size: 1.4rem
}

.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
	padding: 5px;
	line-height: 1.42857143;
	vertical-align: top;
	border-bottom: 1px solid #f2f2f6
}

.table>thead>tr>th {
	vertical-align: bottom;
	border-bottom: 2px solid #ddd
}

.table>tbody>tr>th {
	background: #eee;
	font-weight: normal
}

.table>caption+thead>tr:first-child>td, .table>caption+thead>tr:first-child>th, .table>colgroup+thead>tr:first-child>td, .table>colgroup+thead>tr:first-child>th, .table>thead:first-child>tr:first-child>td, .table>thead:first-child>tr:first-child>th {
	border-top: 0
}

.table>tbody+tbody {
	border-top: 2px solid #ddd
}

.table-responsive {
	overflow-x: auto;
	min-height: 0.01%
}

.table-bordered {
	border: 1px solid #ddd;
	border-collapse: collapse
}

.table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th {
	border: 1px solid #ddd
}

.table-bordered>tbody>tr>td.bg_blue, .table-bordered>tbody>tr>th.bg_blue, .table-bordered>tfoot>tr>td.bg_blue, .table-bordered>tfoot>tr>th.bg_blue, .table-bordered>thead>tr>td.bg_blue, .table-bordered>thead>tr>th.bg_blue {
	background: #ebfafa
}

.table-bordered>tbody>tr>td.td_blue, .table-bordered>tbody>tr>th.td_blue, .table-bordered>tfoot>tr>td.td_blue, .table-bordered>tfoot>tr>th.td_blue, .table-bordered>thead>tr>td.td_blue, .table-bordered>thead>tr>th.td_blue {
	background: #f9fefe
}

.table-bordered>tbody>tr>td.bg_orange, .table-bordered>tbody>tr>th.bg_orange, .table-bordered>tfoot>tr>td.bg_orange, .table-bordered>tfoot>tr>th.bg_orange, .table-bordered>thead>tr>td.bg_orange, .table-bordered>thead>tr>th.bg_orange {
	background: #faeceb
}

.table-bordered>tbody>tr>td.td_orange, .table-bordered>tbody>tr>th.td_orange, .table-bordered>tfoot>tr>td.td_orange, .table-bordered>tfoot>tr>th.td_orange, .table-bordered>thead>tr>td.td_orange, .table-bordered>thead>tr>th.td_orange {
	background: #fefbf9
}

.table-bordered>thead>tr>td, .table-bordered>thead>tr>th {
	border-bottom-width: 2px
}

@media print, screen and (max-width:767px) {
	.table-responsive {
		width: 100%;
		margin-bottom: 15px;
		overflow-y: hidden;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		border: 1px solid #ddd
	}

	.table-responsive>.table {
		margin-bottom: 0
	}

	.table-responsive>.table>tbody>tr>td, .table-responsive>.table>tbody>tr>th, .table-responsive>.table>tfoot>tr>td, .table-responsive>.table>tfoot>tr>th, .table-responsive>.table>thead>tr>td, .table-responsive>.table>thead>tr>th {
		white-space: nowrap
	}

	.table-responsive>.table-bordered>tbody>tr>td:first-child, .table-responsive>.table-bordered>tbody>tr>th:first-child, .table-responsive>.table-bordered>tfoot>tr>td:first-child, .table-responsive>.table-bordered>tfoot>tr>th:first-child, .table-responsive>.table-bordered>thead>tr>td:first-child, .table-responsive>.table-bordered>thead>tr>th:first-child {
		border-left: 0
	}

	.table-responsive>.table-bordered>tbody>tr>td:last-child, .table-responsive>.table-bordered>tbody>tr>th:last-child, .table-responsive>.table-bordered>tfoot>tr>td:last-child, .table-responsive>.table-bordered>tfoot>tr>th:last-child, .table-responsive>.table-bordered>thead>tr>td:last-child, .table-responsive>.table-bordered>thead>tr>th:last-child {
		border-right: 0
	}

	.table-responsive>.table-bordered>tbody>tr:last-child>td, .table-responsive>.table-bordered>tbody>tr:last-child>th, .table-responsive>.table-bordered>tfoot>tr:last-child>td, .table-responsive>.table-bordered>tfoot>tr:last-child>th {
		border-bottom: 0
	}
}

.pagination_wrapper {
	padding: 0em;
	margin: 0 auto;
	text-align: center
}

.pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 30px auto;
	text-align: center;
	width: 100%
}

@media (max-width:767px) {
	.pagination {
		width: 100%
	}
}

.pagination .pg_num {
	width: 30%
}

.pagination .next, .pagination .prev {
	width: 25%
}

.pagination li {
	min-width: 40px;
	height: 30px;
	line-height: 1;
	margin: 10px 10px 0 0;
	text-align: center;
	display: block
}

@media (max-width:767px) {
	.pagination li {
		width: 18px;
		height: 18px;
		line-height: 1;
		margin: 12px
	}
}

.pagination li:last-child {
	margin-right: 0
}

.pagination li a {
	background: #fff;
	color: #303030;
	border: 2px #1565c0 solid;
	padding: 7px 15px;
	line-height: 1.2;
	border-radius: 4px
}

.pagination li a:hover {
	background: #1565c0;
	color: #fff;
	border: 2px #1565c0 solid
}

.pagination li a.active {
	background: #1565c0;
	color: #fff;
	border: 2px #1565c0 solid;
	cursor: default
}

.pagination li a.disable {
	background: #fff;
	color: #777;
	border: 2px #ddd solid;
	cursor: not-allowed
}

#g-nav {
	position: fixed;
	z-index: -1;
	opacity: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background: rgba(21, 101, 192, 0.8);
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

#g-nav.panelactive {
	opacity: 1;
	z-index: 999
}

#g-nav.panelactive #g-nav-list {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch
}

#g-nav ul {
	display: none;
	position: absolute;
	z-index: 999;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%)
}

#g-nav.panelactive ul {
	display: block
}

#g-nav li {
	list-style: none;
	text-align: center
}

#g-nav li a {
	color: #fff;
	text-decoration: none;
	padding: 10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold
}

.btn {
	font-size: 15px !important
}

.btn-ghost {
	background-color: #ffffff !important;
	color: #5fb0a5 !important;
	border-color: #5fb0a5 !important;
	border-radius: 50px !important;
	border-width: 2px !important;
	padding: 20px 40px !important
}

.btn-ghost:hover {
	color: #ffffff !important;
	background-color: #5fb0a5 !important
}

@media screen and (max-width:991px) {
	.btn-ghost {
		padding: 0px 25px !important
	}
}

@media screen and (max-width:575px) {
	.btn-ghost {
		width: 100%;
		margin: 0px auto;
		text-align: center;
		padding: 0px 5px 10px !important;
		line-height: 1.8 !important
	}
}

.btn-ghost.type_spa {
	color: #ac3749 !important;
	border-color: #ac3749 !important
}

.btn-ghost.type_spa:hover {
	color: #ffffff !important;
	background-color: #ac3749 !important
}

.btn-primary {
	background-color: #005bac !important;
	color: #ffffff !important;
	border-color: #005bac !important;
	border-radius: 24px !important;
	border-width: 0px !important;
	padding: 12px 25px !important
}

.btn-primary:hover {
	color: #005bac !important;
	background-color: #e8e8e8 !important
}

@media screen and (max-width:991px) {
	.btn-primary {
		padding: 0px 25px !important
	}
}

.btn-xs {
	font-size: 14px !important;
	padding: 4px 20px !important;
	height: auto !important
}

.btn-download {
	background-color: #5fb0a5 !important;
	color: #ffffff !important;
	border-color: #5fb0a5 !important;
	border-radius: 0px !important;
	border-width: 1px !important;
	padding: 15px 15px !important;
	position: relative
}

.btn-download:hover {
	color: #5fb0a5 !important;
	background-color: #ffffff !important
}

.btn-download:hover:before {
	content: "\f231";
	font-family: "Bootstrap-icons";
	font-size: 12px;
	position: absolute;
	right: 10px;
	top: 14px;
	color: #5fb0a5
}

@media screen and (max-width:991px) {
	.btn-download:hover:before {
		top: 0px
	}
}

.btn-download:before {
	content: "\f231";
	font-family: "Bootstrap-icons";
	font-size: 12px;
	position: absolute;
	right: 10px;
	top: 14px;
	color: #ffffff
}

@media screen and (max-width:991px) {
	.btn-download:before {
		top: 0px
	}
}

@media screen and (max-width:991px) {
	.btn-download {
		padding: 0px 25px !important
	}
}

.btn-download.type_spa {
	background: #eba568 !important;
	border-color: #eba568 !important
}

.btn-download.type_spa:hover {
	color: #eba568 !important;
	background-color: #ffffff !important
}

.btn-download.type_spa:hover:before {
	color: #eba568 !important
}

.bordertop span:after, .bordertop span:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 0;
	background: #3551a1;
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

.bordertop span:before {
	left: 0;
	top: 0
}

.bordertop span:after {
	right: 0;
	top: 0
}

.bordertop:hover span:after, .bordertop:hover span:before {
	height: 100%
}

.bordertop:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 0;
	background: #3551a1;
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

.bordertop:hover:before {
	height: 100%;
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s
}

#page-top2 {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 2;
	mix-blend-mode: difference
}

#page-top img {
	width: 50px;
	height: 50px
}

#page-top {
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 2;
	opacity: 0;
	-webkit-transform: translateY(100px);
	transform: translateY(100px);
	mix-blend-mode: difference
}

#page-top.UpMove {
	-webkit-animation: UpAnime 0.5s forwards;
	animation: UpAnime 0.5s forwards
}

@-webkit-keyframes UpAnime {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px);
		transform: translateY(100px)
	}

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

@keyframes UpAnime {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px);
		transform: translateY(100px)
	}

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

#page-top.DownMove {
	-webkit-animation: DownAnime 0.5s forwards;
	animation: DownAnime 0.5s forwards
}

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

	to {
		opacity: 1;
		-webkit-transform: translateY(100px);
		transform: translateY(100px)
	}
}

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

	to {
		opacity: 1;
		-webkit-transform: translateY(100px);
		transform: translateY(100px)
	}
}

dl {
	margin: 0px;
	width: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #ffffff;
	border-top: 1px #ababab solid;
	gap: 30px
}

dl dt {
	padding: 5px 10px;
	line-height: 1.4
}

dl dd {
	padding: 10px 10px 2px
}

dl.bb {
	border-bottom: 1px #ababab solid
}

dl.form-group {
	width: 100%;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 250px 10px 1fr;
	grid-template-columns: 250px 1fr;
	gap: 10px;
	background: #efefef;
	margin: 0px
}

dl.form-group dt {
	padding: 20px 20px;
	text-align: start;
	background: #efefef
}

dl.form-group dt label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

dl.form-group dt .required:after {
	content: "必須";
	font-size: 12px;
	font-weight: 500;
	padding: 1px 5px;
	background: #c62828;
	color: #ffffff
}

dl.form-group dt .control-label {
	font-size: 15px !important;
	font-weight: 500
}

dl.form-group dd {
	font-size: 16px !important;
	margin: 0px;
	padding: 20px 20px;
	background: #ffffff
}

dl.form-group.bb {
	border-bottom: 1px #ababab solid
}

@media screen and (max-width:767px) {
	dl.form-group {
		display: block
	}
}

.topslider {
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	margin: 0;
	padding: 0
}

.slider1 {
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0
}

.slider1 img {
	width: 100vw;
	height: 100vh;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center center;
	object-position: center center
}

.slide-animation {
	-webkit-animation: fadezoom 8s 0s forwards;
	animation: fadezoom 8s 0s forwards
}

@-webkit-keyframes fadezoom {
	0% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1)
	}

	to {
		-webkit-transform: scale(1);
		transform: scale(1)
	}
}

@keyframes fadezoom {
	0% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1)
	}

	to {
		-webkit-transform: scale(1);
		transform: scale(1)
	}
}

.fadeIn {
	-webkit-animation-name: fadeInAnime;
	animation-name: fadeInAnime;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 0
}

@-webkit-keyframes fadeInAnime {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes fadeInAnime {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

.zoomOut {
	-webkit-animation-name: zoomOutAnime;
	animation-name: zoomOutAnime;
	-webkit-animation-duration: 0.5s;
	animation-duration: 0.5s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

@-webkit-keyframes zoomOutAnime {
	0% {
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
		opacity: 0
	}

	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1
	}
}

@keyframes zoomOutAnime {
	0% {
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
		opacity: 0
	}

	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1
	}
}

.fadeInDownTrigger, .fadeInUpTrigger, .fadeInUpTriggerOnce {
	opacity: 0
}

.delay-time {
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s
}

.zoomOutTrigger {
	opacity: 0
}

.slide-in {
	overflow: hidden;
	display: inline-block;
	padding: 0 10px
}

.slide-in_inner {
	display: inline-block
}

.leftAnime, .rightAnime {
	opacity: 0
}

.slideAnimeLeftRight {
	-webkit-animation-name: slideText-100;
	animation-name: slideText-100;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 0
}

@-webkit-keyframes slideText-100 {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
		opacity: 0
	}

	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1
	}
}

@keyframes slideText-100 {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
		opacity: 0
	}

	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1
	}
}

.slideAnimeRightLeft {
	-webkit-animation-name: slideText100;
	animation-name: slideText100;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 0
}

@-webkit-keyframes slideText100 {
	0% {
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		opacity: 0
	}

	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1
	}
}

@keyframes slideText100 {
	0% {
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		opacity: 0
	}

	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1
	}
}

.blur {
	-webkit-animation-name: blurAnime;
	animation-name: blurAnime;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

@-webkit-keyframes blurAnime {
	0% {
		-webkit-filter: blur(10px);
		filter: blur(10px);
		-webkit-transform: scale(1.02);
		transform: scale(1.02);
		opacity: 0
	}

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

@keyframes blurAnime {
	0% {
		-webkit-filter: blur(10px);
		filter: blur(10px);
		-webkit-transform: scale(1.02);
		transform: scale(1.02);
		opacity: 0
	}

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

.blurTrigger {
	opacity: 0
}

.glowAnime span {
	opacity: 0
}

.glowAnime.glow span {
	-webkit-animation: glow_anime_on 1s ease-out forwards;
	animation: glow_anime_on 1s ease-out forwards
}

@-webkit-keyframes glow_anime_on {
	0% {
		opacity: 0;
		text-shadow: 0 0 0 #fff59d, 0 0 0 #fff59d
	}

	50% {
		opacity: 1;
		text-shadow: 0 0 15px #fff59d, 0 0 20px #fff59d
	}

	to {
		opacity: 1;
		text-shadow: 0px 0px 3px #000, 0 0 8px #000, 0 0 12px #000, 0 0 15px #000, 0 0 30px #000
	}
}

@keyframes glow_anime_on {
	0% {
		opacity: 0;
		text-shadow: 0 0 0 #fff59d, 0 0 0 #fff59d
	}

	50% {
		opacity: 1;
		text-shadow: 0 0 15px #fff59d, 0 0 20px #fff59d
	}

	to {
		opacity: 1;
		text-shadow: 0px 0px 3px #000, 0 0 8px #000, 0 0 12px #000, 0 0 15px #000, 0 0 30px #000
	}
}

span.mask {
	display: block;
	overflow: hidden
}

.circle span.mask {
	position: relative
}

.circle span.mask:before {
	position: absolute;
	content: "";
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.2)
}

.circle span.mask:hover:before {
	-webkit-animation: circle 0.75s;
	animation: circle 0.75s
}

@-webkit-keyframes circle {
	0% {
		-webkit-transform: scale(0);
		transform: scale(0);
		opacity: 1
	}

	30% {
		opacity: 1
	}

	to {
		-webkit-transform: scale(2);
		transform: scale(2)
	}
}

@keyframes circle {
	0% {
		-webkit-transform: scale(0);
		transform: scale(0);
		opacity: 1
	}

	30% {
		opacity: 1
	}

	to {
		-webkit-transform: scale(2);
		transform: scale(2)
	}
}

.bgDU, .bgDU .mask {
	display: block;
	position: relative;
	overflow: hidden
}

.bgDU .mask:before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	opacity: 0;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	background: #e2a2b2;
	width: 100%;
	height: 100%
}

.bgDU:hover .mask:before {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0)
}

.bgDU .cap {
	position: absolute;
	opacity: 0;
	-webkit-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
	z-index: 3;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	color: #fff
}

.bgDU:hover .cap {
	opacity: 1
}

ul.decimal {
	margin-left: 1.5em;
	list-style: decimal
}

ul.circle {
	margin-left: 1.5em;
	list-style: disc
}

.font-lg {
	font-size: 1.4em
}

#header-img {
	position: fixed;
	z-index: 1;
	top: 0;
	width: 100%;
	height: 100vh
}

#container {
	position: relative;
	overflow-x: hidden;
	overflow-y: scroll;
	z-index: 3;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 340px;
	grid-template-columns: 1fr 340px;
	background: #ffffff;
	border-radius: 18px;
	height: calc(100vh - 70px);
	margin: 20px 20px 0px 20px !important
}

@media screen and (max-width:991px) {
	#container {
		height: auto;
		margin: 0px !important;
		border-radius: 0px;
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		-ms-grid-rows: auto;
		grid-template-rows: auto
	}

	#container>:first-child {
		-ms-grid-row: 1;
		-ms-grid-column: 1
	}
}

#footer {
	height: 40px;
	overflow: hidden;
	width: 100%;
	position: absolute;
	bottom: 0px;
	left: 0px
}

#footer.intro_footer {
	padding-left: 15px;
	padding-right: 15px;
	background: none;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 200px 1fr 360px;
	grid-template-columns: 200px 1fr 360px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

#footer.intro_footer ul li {
	display: inline-block;
	margin-bottom: 0px;
	margin-right: 10px;
	padding-left: 10px
}

#footer.intro_footer ul li:after {
	content: "|";
	margin-left: 20px
}

#footer.intro_footer copyright {
	font-size: 13px;
	letter-spacing: 0;
	text-align: end;
	margin-bottom: 0px
}

@media (max-width:1500px) {
	#footer.intro_footer copyright {
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-column: 1/3
	}
}

@media screen and (max-width:991px) {
	#footer.intro_footer copyright {
		grid-column: auto;
		text-align: center
	}
}

#footer.intro_footer .footercontent {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 200px 5px 1fr;
	grid-template-columns: 200px 1fr;
	gap: 5px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 17px;
	letter-spacing: 1px
}

@media (max-width:1500px) {
	#footer.intro_footer {
		width: 94%;
		padding: 0px 3%;
		-ms-grid-columns: 200px 1fr;
		grid-template-columns: 200px 1fr;
		-ms-grid-rows: 1fr 1fr;
		grid-template-rows: 1fr 1fr
	}

	#footer.intro_footer>:first-child {
		-ms-grid-row: 1;
		-ms-grid-column: 1
	}

	#footer.intro_footer>:nth-child(2) {
		-ms-grid-row: 1;
		-ms-grid-column: 2
	}

	#footer.intro_footer>:nth-child(3) {
		-ms-grid-row: 2;
		-ms-grid-column: 1
	}

	#footer.intro_footer>:nth-child(4) {
		-ms-grid-row: 2;
		-ms-grid-column: 2
	}
}

@media screen and (max-width:991px) {
	#footer.intro_footer {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		-ms-grid-rows: auto;
		grid-template-rows: auto
	}

	#footer.intro_footer>:first-child {
		-ms-grid-row: 1;
		-ms-grid-column: 1
	}
}

@media (max-width:1500px) {
	#footer {
		height: auto;
		position: relative;
		margin: 30px 20px
	}
}

.slide_box {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1 !important;
	height: 100vh;
	width: 100%;
	margin: 0 0 0 auto;
	padding: 0px;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-o-background-size: cover;
	-ms-background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end
}

@media (max-width:767px) {
	.slide_box {
		height: 640px;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding: 0px
	}
}

.box {
	padding: 20px;
	margin: 0 0px 20px 0px;
	border: 10px #daf1e5 solid;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none
}

.box ul {
	margin-left: 1.5em;
	text-indent: -1.8em
}

.box ul li:before {
	content: "\f4f5";
	font-family: "Bootstrap-icons";
	margin-left: 10px
}

.fadeIn {
	-webkit-animation-name: fadeInAnime;
	animation-name: fadeInAnime;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 0
}

@keyframes fadeInAnime {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

.wrapper {
	overflow: hidden
}

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

.count2 {
	-webkit-animation-iteration-count: 2;
	animation-iteration-count: 2
}

.countinfinite {
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite
}

.delay-time02 {
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s
}

.delay-time04 {
	-webkit-animation-delay: 0.4s;
	animation-delay: 0.4s
}

.delay-time06 {
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s
}

.delay-time08 {
	-webkit-animation-delay: 0.8s;
	animation-delay: 0.8s
}

.delay-time10 {
	-webkit-animation-delay: 1s;
	animation-delay: 1s
}

.delay-time12 {
	-webkit-animation-delay: 1.2s;
	animation-delay: 1.2s
}

.delay-time14 {
	-webkit-animation-delay: 1.4s;
	animation-delay: 1.4s
}

.delay-time16 {
	-webkit-animation-delay: 1.6s;
	animation-delay: 1.6s
}

.delay-time18 {
	-webkit-animation-delay: 1.8s;
	animation-delay: 1.8s
}

.delay-time20 {
	-webkit-animation-delay: 2s;
	animation-delay: 2s
}

.delay-time05 {
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s
}

.delay-time1 {
	-webkit-animation-delay: 1s;
	animation-delay: 1s
}

.delay-time15 {
	-webkit-animation-delay: 1.5s;
	animation-delay: 1.5s
}

.delay-time2 {
	-webkit-animation-delay: 2s;
	animation-delay: 2s
}

.delay-time25 {
	-webkit-animation-delay: 2.5s;
	animation-delay: 2.5s
}

.timeline li {
	position: relative;
	list-style: none;
	padding: 0 0 20px 0
}

.timeline dl {
	margin: 0 0 20px 3em
}

.border-line {
	position: absolute;
	left: 7px;
	top: 10px;
	width: 2px;
	height: 0;
	background: #ccc
}

.timeline li:after {
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	width: 16px;
	height: 16px;
	background: #df1014;
	border-radius: 50%
}

section {
	padding: 0px 0px
}

section.section-padding {
	padding: 80px 0px
}

@media screen and (max-width:991px) {
	section.section-padding {
		padding: 40px 0px
	}
}

@media (max-width:767px) {
	section {
		padding: 0px 0px
	}
}

.sub_bg {
	margin: 50px 0px 0px;
	padding: 70px 0px 50px;
	background: #f0f3f5
}

@media screen and (max-width:575px) {
	.sub_bg {
		margin: 0px;
		padding: 40px 0px 30px
	}
}

.bbq_bg {
	margin: 50px 0px 0px;
	padding: 50px 0px 50px;
	background: url(../images/shop/bbq_bg.svg);
	background-size: cover;
	background-position: bottom center;
	position: relative
}

@media screen and (max-width:575px) {
	.bbq_bg {
		margin: 0px;
		padding: 40px 0px 30px
	}
}

.bbq_bg .bbq_img_top {
	position: absolute;
	width: 20vw;
	top: 0px;
	right: 0px
}

@media screen and (max-width:767px) {
	.bbq_bg .bbq_img_top {
		display: none
	}
}

.bbq_bg .bbq_img_bottom {
	position: absolute;
	width: 14vw;
	bottom: 10px;
	right: 30px
}

@media screen and (max-width:767px) {
	.bbq_bg .bbq_img_bottom {
		display: none
	}
}

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

#blog h2, #menu h2 {
	font-size: 4rem;
	text-align: center;
	margin: 0 0 50px 0;
	font-weight: normal;
	color: #e2a2b1
}

@media screen and (max-width:768px) {
	#blog h2, #menu h2 {
		font-size: 3rem
	}
}

.inner {
	width: 100%;
	margin: 0 auto;
	padding: 70px
}

@media screen and (max-width:940px) {
	.inner {
		padding: 30px
	}
}

.contents_inner {
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	max-width: 1200px
}

@media (max-width:1199px) {
	.contents_inner {
		max-width: 993px
	}
}

@media (max-width:992px) {
	.contents_inner {
		max-width: 768px
	}
}

@media (max-width:767px) {
	.contents_inner {
		width: 92%
	}
}

.header-title {
	text-align: center;
	margin: 0px 20px
}

.header-title h2 {
	font-size: clamp(1.563rem, 2vw + 1rem, 2.625rem);
	font-weight: 700;
	color: #3b4043;
	margin-bottom: 0px
}

.header-title .h2_lead {
	font-size: 16px;
	color: #5fb0a5;
	letter-spacing: 0.1em;
	font-weight: 500
}

#splash-logo p {
	font-size: 1.8rem;
	font-weight: normal;
	white-space: nowrap
}

.s_brightness_01 img {
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out
}

.s_brightness_01 a:hover img {
	-webkit-filter: brightness(0.9);
	filter: brightness(0.9)
}

.s_brightness_02 img {
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out
}

.s_brightness_02:hover img {
	-webkit-filter: brightness(1.1);
	filter: brightness(1.1)
}

.item3 {
	margin: 40px auto 0px;
	width: 80%
}

@media (max-width:991px) {
	.item3 {
		margin: 30px auto 0px;
		width: 100%
	}
}

@media (max-width:767px) {
	#island_photospot {
		padding: 40px 0 40px
	}
}

#inquiry {
	margin: 0px auto 0px;
	padding: 60px 0 60px;
	background-color: #cfe9e9;
	color: #009fe8;
	margin-top: -1px
}

#inquiry .spot_title h2 {
	text-align: center;
	position: relative;
	font-size: 2.6rem;
	padding-bottom: 30px;
	color: #009fe8
}

#inquiry .spot_title h2:after {
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	content: "";
	display: block;
	background-image: url(../images/wave-white.svg);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: contain;
	width: 130px;
	height: 7px
}

@media (max-width:767px) {
	#inquiry .spot_title h2 {
		font-size: 2.4rem;
		padding-top: 0px
	}
}

#inquiry .information {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 50px;
	padding: 10px
}

#inquiry .information .item1 {
	width: 50%;
	text-align: center;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}

@media (max-width:767px) {
	#inquiry .information .item1 {
		width: 100%;
		padding-bottom: 20px
	}
}

#inquiry .information .item1:after {
	position: absolute;
	top: 0;
	left: 100%;
	margin: 0 0rem;
	content: "";
	width: 1px;
	height: 100%;
	background-color: #009fe8
}

@media (max-width:767px) {
	#footer {
		padding-top: 40px;
		padding-bottom: 40px
	}
}

.button {
	position: relative;
	text-decoration: none;
	display: block;
	line-height: 1;
	font-weight: bold;
	background: -webkit-gradient(linear, right top, left top, from(#00a0e9), to(#00a0e9));
	background: linear-gradient(to left, #00a0e9, #00a0e9);
	color: #fff;
	padding: 20px 30px 20px 20px;
	border-radius: 30px;
	text-align: center;
	outline: none;
	-webkit-transition: ease 0.3s;
	transition: ease 0.3s;
	font-family: sans-serif
}

.button:hover {
	background: -webkit-gradient(linear, right top, left top, from(#0089c7), to(#009af3));
	background: linear-gradient(to left, #0089c7, #009af3);
	color: #f0f0f0;
	-webkit-transition: ease 0.3s;
	transition: ease 0.3s
}

.button:after {
	content: "";
	position: absolute;
	top: 45%;
	right: 23px;
	-webkit-transform: translateY(-45%);
	transform: translateY(-45%);
	width: 9px;
	height: 9px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

.button:hover:after {
	right: 21px
}

.button2 {
	position: relative;
	text-decoration: none;
	display: block;
	line-height: 1;
	font-weight: bold;
	background: -webkit-gradient(linear, right top, left top, from(#ff9d00), to(#f52121));
	background: linear-gradient(to left, #ff9d00, #f52121);
	color: #fff;
	padding: 20px 30px 20px 20px;
	border-radius: 30px;
	text-align: center;
	outline: none;
	-webkit-transition: ease 0.2s;
	transition: ease 0.2s;
	font-family: sans-serif
}

.button2:hover {
	background: -webkit-gradient(linear, right top, left top, from(#ff6c00), to(#ea0b0b));
	background: linear-gradient(to left, #ff6c00, #ea0b0b);
	color: #f0f0f0;
	-webkit-transition: ease 0.2s;
	transition: ease 0.2s
}

.button2:after {
	content: "";
	position: absolute;
	top: 45%;
	right: 23px;
	-webkit-transform: translateY(-45%);
	transform: translateY(-45%);
	width: 9px;
	height: 9px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

.button2:hover:after {
	right: 21px
}

.button_back {
	position: relative;
	text-decoration: none;
	display: inline-block;
	background: #1565c0;
	color: #fff;
	padding: 10px 40px 10px 40px;
	border-radius: 6px;
	text-align: center;
	outline: none;
	-webkit-transition: ease 0.2s;
	transition: ease 0.2s;
	font-family: sans-serif
}

.button_back:hover {
	background: #4f98ec;
	color: #fff
}

.button_back:before {
	content: "";
	position: absolute;
	top: 42%;
	left: 13px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}

.button_back:hover:after {
	left: 11px
}

#menu {
	padding: 70px 0
}

#menu section {
	background: #fff;
	margin: 0 0 10px 0
}

#menu section h3 {
	font-size: 0.9rem;
	margin: 0 0 10px 0
}

#menu section p {
	font-size: 0.8rem
}

#menu .menu-area {
	padding: 20px;
	-webkit-box-shadow: 5px 0 10px #ccc;
	box-shadow: 5px 0 10px #ccc
}

#menu .menu-btn {
	text-align: center;
	margin: 50px 0 0 0
}

#g-nav {
	position: fixed;
	z-index: 999;
	top: 0;
	right: -120%;
	width: 100%;
	height: 100vh;
	background: rgba(0, 160, 233, 0.9);
	-webkit-transition: all 0.6s;
	transition: all 0.6s
}

#g-nav.panelactive {
	right: 0
}

#g-nav.panelactive #g-nav-list {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch
}

#g-nav ul {
	position: absolute;
	z-index: 999;
	top: 50%;
	left: 50%;
	width: 90%;
	margin: auto;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%)
}

#g-nav li {
	list-style: none;
	text-align: center
}

#g-nav li a {
	color: #fff;
	text-decoration: none;
	padding: 15px 5px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold
}

.openbtn1 {
	position: fixed;
	z-index: 9999;
	top: 10px;
	right: 10px;
	cursor: pointer;
	width: 50px;
	height: 50px
}

.openbtn1 span {
	display: inline-block;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	position: absolute;
	left: 14px;
	height: 3px;
	border-radius: 2px;
	background-color: #666;
	width: 45%
}

.openbtn1 span:first-of-type {
	top: 15px
}

.openbtn1 span:nth-of-type(2) {
	top: 23px
}

.openbtn1 span:nth-of-type(3) {
	top: 31px
}

.openbtn1.active span:first-of-type {
	top: 18px;
	left: 18px;
	-webkit-transform: translateY(6px) rotate(-45deg);
	transform: translateY(6px) rotate(-45deg);
	width: 30%
}

.openbtn1.active span:nth-of-type(2) {
	opacity: 0
}

.openbtn1.active span:nth-of-type(3) {
	top: 30px;
	left: 18px;
	-webkit-transform: translateY(-6px) rotate(45deg);
	transform: translateY(-6px) rotate(45deg);
	width: 30%
}

@media print {
	#page-top, header {
		display: none !important
	}
}

#intro {
	padding: 80px 0px
}

.swiper {
	overflow: visible
}

.swiper-wrapper {
	overflow: visible
}

.swiper-slide {
	opacity: 0.3;
	-webkit-transform: scale(0.8) !important;
	transform: scale(0.8) !important;
	-webkit-transition: 0.7s;
	transition: 0.7s;
	overflow: visible;
	height: 100%;
	padding: 30px 0
}

.swiper-slide img {
	height: auto;
	width: 100%
}

.swiper-slide-active {
	opacity: 1;
	-webkit-transform: scale(1.2) !important;
	transform: scale(1.2) !important;
	z-index: 1
}

.campaing-header {
	height: 100px;
	display: -ms-grid;
	display: grid;
	place-content: center
}

.inspiro-slider {
	width: calc(100vw - 40px);
	overflow: hidden
}

.slider-fullscreen {
	height: calc(100vh - 70px);
	width: 100%;
	overflow: hidden;
	position: relative
}

.slider-fullscreen .video {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	min-width: 100%;
	min-height: 100%
}

#slider .slide_title {
	position: absolute;
	top: 0px;
	left: -50px;
	z-index: 100;
	text-align: left;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 280px 0px 1fr;
	grid-template-columns: 280px 1fr;
	gap: 0px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start
}

#slider .slide_title h1 {
	font-family: "Zen Kaku Gothic Antique";
	font-weight: 500;
	color: #fff;
	font-size: 30px;
	letter-spacing: 4px;
	line-height: 1;
	margin-left: -50px
}

#slider .slide_title h1 span {
	font-size: 20px;
	letter-spacing: 1px
}

@media screen and (max-width:575px) {
	#slider .slide_title h1 span {
		font-size: 28px
	}
}

@media screen and (max-width:575px) {
	#slider .slide_title h1 {
		-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		font-size: 20px;
		margin-left: -30px;
		line-height: 1.8;
		margin-top: 20px
	}
}

#slider .slide_title img {
	opacity: 0.5
}

@media screen and (max-width:575px) {
	#slider .slide_title {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start;
		-ms-grid-columns: 200px 1fr;
		grid-template-columns: 200px 1fr
	}
}

#Audio-Control {
	position: absolute;
	bottom: 50px;
	left: 80px;
	z-index: 999
}

@media screen and (max-width:767px) {
	#Audio-Control {
		display: none
	}
}

#Audio-Control button {
	border: 1px solid #ddd;
	width: 30px;
	float: left;
	font-size: 13px;
	padding: 2px 0;
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease
}

#Audio-Control button.on {
	border-left: none
}

#Audio-Control button.off {
	border-right: none
}

#Audio-Control button.active {
	background: rgba(254, 254, 254, 0.8)
}

#Audio-Control button:not(.active):hover {
	background: rgba(254, 254, 254, 0.3)
}

.intro_menu {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 260px 80px;
	grid-template-columns: 260px 80px;
	background: rgba(255, 255, 255, 0.8)
}

.intro_menu .gnavs {
	z-index: 10
}

.intro_menu .gnavs h5 {
	font-family: "Zen Kaku Gothic Antique";
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 5px
}

.intro_menu .gnavs .sns {
	margin: 0px 0px 0px 20px;
	padding: 0px
}

.intro_menu .gnavs .sns li {
	display: inline-block;
	margin-right: 2px
}

.intro_menu .gnavs .news {
	margin-top: 40px;
	padding: 20px 10px
}

.intro_menu .gnavs .news p {
	padding: 0px 10px 0px;
	font-size: 14px;
	line-height: 1.5
}

.intro_menu .gnavs .news h4 {
	padding-left: 5px
}

.intro_menu .subnavs {
	background: #acc5d2
}

.intro_menu .subnavs ul {
	font-family: "Zen Kaku Gothic Antique";
	font-weight: 500;
	margin: 0px;
	padding: 0px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 80px;
	grid-template-columns: 80px;
	-ms-grid-rows: 85px 85px 85px;
	grid-template-rows: 85px 85px 85px
}

.intro_menu .subnavs ul>:first-child {
	-ms-grid-row: 1;
	-ms-grid-column: 1
}

.intro_menu .subnavs ul>:nth-child(2) {
	-ms-grid-row: 2;
	-ms-grid-column: 1
}

.intro_menu .subnavs ul>:nth-child(3) {
	-ms-grid-row: 3;
	-ms-grid-column: 1
}

.intro_menu .subnavs ul li {
	margin: 0px;
	padding: 0px;
	background: #369ecc;
	display: -ms-grid;
	display: grid;
	place-content: center;
	-ms-grid-columns: 80px;
	grid-template-columns: 80px;
	-ms-grid-rows: auto;
	grid-template-rows: auto;
	justify-items: center;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	cursor: pointer
}

.intro_menu .subnavs ul li>:first-child {
	-ms-grid-row: 1;
	-ms-grid-column: 1
}

.intro_menu .subnavs ul li a {
	display: -ms-grid;
	display: grid;
	place-content: center;
	-ms-grid-columns: 80px;
	grid-template-columns: 80px;
	-ms-grid-rows: auto;
	grid-template-rows: auto;
	justify-items: center;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	cursor: pointer
}

.intro_menu .subnavs ul li a>:first-child {
	-ms-grid-row: 1;
	-ms-grid-column: 1
}

.intro_menu .subnavs ul li a span {
	font-size: 13px;
	line-height: 1.3;
	font-weight: 500;
	letter-spacing: 0px;
	color: #ffffff;
	text-align: center
}

.intro_menu .subnavs ul li:first-child {
	background: #ac3749
}

.intro_menu .subnavs ul li:last-child {
	background: #5fb0a5
}

.intro_menu .subnavs ul li:hover {
	background: #005bac
}

@media screen and (max-width:991px) {
	.intro_menu .subnavs ul {
		-ms-grid-columns: 80px 80px 80px;
		grid-template-columns: 80px 80px 80px;
		-ms-grid-rows: 85px;
		grid-template-rows: 85px;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: end
	}

	.intro_menu .subnavs ul>:first-child {
		-ms-grid-row: 1;
		-ms-grid-column: 1
	}

	.intro_menu .subnavs ul>:nth-child(2) {
		-ms-grid-row: 1;
		-ms-grid-column: 2
	}

	.intro_menu .subnavs ul>:nth-child(3) {
		-ms-grid-row: 1;
		-ms-grid-column: 3
	}
}

@media screen and (max-width:991px) {
	.intro_menu .subnavs {
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		grid-row: 1/2
	}
}

@media screen and (max-width:991px) {
	.intro_menu {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		-ms-grid-rows: auto;
		grid-template-rows: auto
	}

	.intro_menu>:first-child {
		-ms-grid-row: 1;
		-ms-grid-column: 1
	}
}

.intro_gnav {
	margin: 0px;
	padding: 0px;
	position: relative;
	overflow: visible
}

.intro_gnav li {
	margin: 0px;
	padding: 0px;
	position: relative;
	z-index: 10
}

.intro_gnav li:first-child {
	margin-top: 40px;
	margin-left: -55px
}

@media screen and (max-width:991px) {
	.intro_gnav li:first-child {
		margin: 0px;
		width: 100%
	}
}

.intro_gnav li:nth-child(2) {
	width: 188px;
	margin-left: 122px;
	margin-top: -30px
}

@media screen and (max-width:991px) {
	.intro_gnav li:nth-child(2) {
		margin: 0px;
		width: 100%
	}
}

.intro_gnav li:nth-child(3) {
	width: 165px;
	margin-left: -39px;
	margin-top: -75px
}

@media screen and (max-width:991px) {
	.intro_gnav li:nth-child(3) {
		margin: 0px;
		width: 100%
	}
}

.intro_gnav li img {
	background: #ffffff;
	border-radius: 50%;
	border: 2px #ffffff solid;
	-webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.2);
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.intro_gnav li img:hover {
	background: rgba(0, 91, 172, 0.4);
	-webkit-box-shadow: 2px 10px 20px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 10px 20px 0px rgba(0, 0, 0, 0.2)
}

@media screen and (max-width:991px) {
	.intro_gnav li img {
		margin: 0px;
		width: 100%;
		border-radius: 0px;
		margin: 0px
	}
}

@media screen and (max-width:991px) {
	.intro_gnav {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 10px 1fr 10px 1fr;
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
		margin: 10px auto !important;
		margin-bottom: 10px;
		width: 100%;
		text-align: center
	}
}

.subpage .search_container {
	-ms-grid-columns: 300px 2.5em;
	grid-template-columns: 300px 2.5em
}

.subpage .search_container input[type=text] {
	background: #ffffff;
	border: 1px solid #707f89
}

#topbar {
	background: #f7f7f7;
	border-bottom: 1px #bfbfbf solid
}

.mega-menu-item:after {
	content: "|";
	margin-left: 5px
}

@media screen and (max-width:991px) {
	.mega-menu-item:after {
		content: none
	}
}

.mega-menu-item:last-child:after {
	content: none
}

.mega-menu-item>a {
	font-size: 16px !important;
	font-family: "Zen Kaku Gothic Antique", sans-serif !important;
	font-weight: 700 !important;
	font-style: normal;
	letter-spacing: -1px !important
}

.FormArea input[type=radio] {
	opacity: 0;
	position: absolute
}

.FormArea input[type=radio]+span {
	display: block;
	position: relative;
	width: 70px;
	height: 70px;
	padding: 50px 0.3em 0.3em 0.3em;
	line-height: 1;
	cursor: pointer;
	margin: 5px 2px 15px;
	position: relative;
	text-align: center
}

.FormArea input[type=radio]+span:before {
	content: "";
	width: 70px;
	height: 70px;
	background-color: #fafafa;
	border: 1px #fafafa solid;
	border-radius: 4px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1
}

@media (max-width:1010px) {
	.FormArea input[type=radio]+span {
		margin: 0px
	}
}

.FormArea input[type=radio]:checked+span:before {
	background-color: #d7e9e5
}

.FormArea2 input[type=radio] {
	opacity: 0;
	position: absolute
}

.FormArea2 input[type=radio]+span {
	display: block;
	position: relative;
	width: 100px;
	height: 70px;
	padding: 50px 0.3em 0.3em 0.3em;
	line-height: 1;
	cursor: pointer;
	margin: 5px 2px 15px;
	position: relative;
	text-align: center
}

.FormArea2 input[type=radio]+span:before {
	content: "";
	width: 100px;
	height: 70px;
	background-color: #fafafa;
	border: 1px #fafafa solid;
	border-radius: 4px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1
}

@media (max-width:1010px) {
	.FormArea2 input[type=radio]+span {
		margin: 0px
	}
}

.FormArea2 input[type=radio]:checked+span:before {
	background-color: #d7e9e5
}

.FormArea .Form_Q_radioinput {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

@media (max-width:1010px) {
	.FormArea .Form_Q_radioinput {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 70px 5px 70px;
		grid-template-columns: 70px 70px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		justify-items: center;
		gap: 5px
	}
}

.FormArea2 .Form_Q_radioinput {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

@media (max-width:1010px) {
	.FormArea2 .Form_Q_radioinput {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 100px;
		grid-template-columns: 100px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		justify-items: center;
		gap: 0px
	}
}

@media (max-width:1010px) {
	.step1 .lead, .step2 .lead, .step3 .lead {
		font-size: 14px !important
	}
}

.ip {
	position: relative
}

.ip:after {
	content: "";
	width: 30px;
	height: 40px;
	display: block;
	position: absolute;
	top: 2px;
	left: 50%;
	margin-left: -15px;
	background: url(../images/index/ippan_s.svg);
	background-size: cover
}

.ks {
	position: relative
}

.ks:after {
	content: "";
	width: 30px;
	height: 40px;
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
	margin-left: -15px;
	background: url(../images/index/kosodate_s.svg);
	background-size: cover
}

.kou {
	position: relative
}

.kou:after {
	content: "";
	width: 30px;
	height: 40px;
	display: block;
	position: absolute;
	top: 2px;
	left: 50%;
	margin-left: -15px;
	background: url(../images/index/kourei_s.svg);
	background-size: cover
}

.jig {
	position: relative
}

.jig:after {
	content: "";
	width: 30px;
	height: 40px;
	display: block;
	position: absolute;
	top: 2px;
	left: 50%;
	margin-left: -15px;
	background: url(../images/index/work_s.svg);
	background-size: cover
}

.topi {
	position: relative
}

.topi:after {
	content: "";
	width: 42px;
	height: 32px;
	display: block;
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -20px;
	background: url(../images/sub/icon_topics.svg);
	background-size: cover
}

.sear {
	position: relative
}

.sear:after {
	content: "";
	width: 38px;
	height: 37px;
	display: block;
	position: absolute;
	top: 8px;
	left: 50%;
	margin-left: -20px;
	background: url(../images/sub/icon_search.svg);
	background-size: cover
}

#search-wrapper {
	width: calc(100% - 100px);
	margin: 30px 50px 50px;
	padding-bottom: 60px;
	background: #ebf4f2
}

#search-wrapper .search-area {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 240px 1fr 1.5fr;
	grid-template-columns: 240px 1fr 1.5fr;
	-ms-grid-rows: 120px auto;
	grid-template-rows: 120px auto;
	padding: 40px
}

#search-wrapper .search-area>:first-child {
	-ms-grid-row: 1;
	-ms-grid-column: 1
}

#search-wrapper .search-area>:nth-child(2) {
	-ms-grid-row: 1;
	-ms-grid-column: 2
}

#search-wrapper .search-area>:nth-child(3) {
	-ms-grid-row: 1;
	-ms-grid-column: 3
}

#search-wrapper .search-area>:nth-child(4) {
	-ms-grid-row: 2;
	-ms-grid-column: 1
}

#search-wrapper .search-area>:nth-child(5) {
	-ms-grid-row: 2;
	-ms-grid-column: 2
}

#search-wrapper .search-area>:nth-child(6) {
	-ms-grid-row: 2;
	-ms-grid-column: 3
}

#search-wrapper .search-area .searchimg {
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-column: 1/2;
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	grid-row: 1/3
}

#search-wrapper .search-area .header-title {
	-ms-grid-column: 2;
	-ms-grid-column-span: 2;
	grid-column: 2/4;
	margin-left: -120px
}

#search-wrapper .search-area .keywords {
	padding: 10px 20px;
	background: #5fb0a5;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 160px 40px 1fr;
	grid-template-columns: 160px 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 40px
}

#search-wrapper .search-area .keywords h5 {
	color: #ffffff;
	line-height: 1.6;
	font-weight: 500;
	border-right: 2px #ffffff solid;
	margin: 0px
}

@media screen and (max-width:767px) {
	#search-wrapper .search-area .keywords h5 {
		border-right: none
	}
}

#search-wrapper .search-area .keywords ul {
	margin: 0px;
	padding: 0px
}

#search-wrapper .search-area .keywords ul li {
	display: inline-block;
	color: #ffffff;
	margin-right: 20px;
	font-size: 15px
}

#search-wrapper .search-area .keywords ul li a {
	color: #ffffff;
	text-decoration: underline
}

@media screen and (max-width:767px) {
	#search-wrapper .search-area .keywords {
		display: block
	}
}

#search-wrapper .search-area .search_container {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 80px;
	grid-template-columns: 1fr 80px;
	z-index: 10;
	overflow: visible;
	margin-left: 20px;
	background: #e4e9eb;
	border-radius: 0 !important
}

@media screen and (max-width:575px) {
	#search-wrapper .search-area .search_container {
		-ms-grid-columns: 1fr 50px;
		grid-template-columns: 1fr 50px
	}
}

#search-wrapper .search-area .search_container input[type=text] {
	background: #ffffff;
	border: none;
	height: 2em;
	font-size: 14px;
	padding: 0px 10px;
	width: 90%;
	margin: auto auto
}

#search-wrapper .search-area .search_container input[type=text]:focus {
	outline: 1
}

#search-wrapper .search-area .search_container input[type=submit] {
	cursor: pointer;
	font-family: FontAwesome;
	border: none;
	background: #707f89;
	color: #fff;
	outline: none;
	width: 80px;
	height: 100%;
	font-size: 1.6em;
	border-radius: 0 !important
}

@media screen and (max-width:575px) {
	#search-wrapper .search-area .search_container input[type=submit] {
		width: 50px
	}
}

@media (max-width:1300px) {
	#search-wrapper .search-area {
		-ms-grid-columns: 240px 1fr;
		grid-template-columns: 240px 1fr
	}

	#search-wrapper .search-area .header-title {
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		margin-left: -120px
	}

	#search-wrapper .search-area .search_container {
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		grid-row: 2/3
	}

	#search-wrapper .search-area .keywords {
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-column: 1/3
	}
}

@media screen and (max-width:767px) {
	#search-wrapper .search-area {
		-ms-grid-columns: 30% 1fr;
		grid-template-columns: 30% 1fr
	}

	#search-wrapper .search-area .searchimg {
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-column: 1/2;
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		grid-row: 1/2
	}

	#search-wrapper .search-area .header-title {
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		margin-left: 0px
	}

	#search-wrapper .search-area .search_container {
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-column: 1/3;
		margin-left: 0px;
		width: 100%
	}

	#search-wrapper .search-area .search_container input[type=text] {
		width: 100%;
		border-left: 4px solid #e4e9eb
	}
}

@media screen and (max-width:575px) {
	#search-wrapper .search-area {
		-ms-grid-rows: 90px auto;
		grid-template-rows: 90px auto;
		padding: 20px 10px 30px
	}
}

#search-wrapper .lifeevent {
	display: -ms-grid;
	display: grid;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
	gap: 10px
}

#search-wrapper .lifeevent .lifecard {
	background: #5fb0a5;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	margin: 0px auto
}

#search-wrapper .lifeevent .lifecard a {
	width: 100%;
	height: 100%;
	display: -ms-grid;
	display: grid;
	place-content: center
}

#search-wrapper .lifeevent .caption {
	font-size: 15px;
	text-align: center;
	margin-top: 5px;
	font-weight: 500
}

@media screen and (max-width:575px) {
	#search-wrapper .lifeevent {
		grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
		gap: 4px
	}

	#search-wrapper .lifeevent .lifecard {
		width: 80px;
		height: 80px
	}
}

#search-wrapper.type2 {
	background: rgba(241, 144, 169, 0.3)
}

#search-wrapper.type2 .btn.btn-primary {
	background: #f190a9 !important;
	border-color: #f190a9 !important
}

#search-wrapper.type2 .keywords {
	background: #f190a9
}

#search-wrapper.type2 .lifecard {
	background: #f190a9
}

#search-wrapper.type2 .h2_lead {
	color: #f190a9
}

#search-wrapper.type3 {
	background: rgba(0, 91, 172, 0.5)
}

#search-wrapper.type3 .btn.btn-primary {
	background: #998cd1 !important;
	border-color: #998cd1 !important
}

#search-wrapper.type3 .keywords {
	background: #998cd1
}

#search-wrapper.type3 .lifecard {
	background: #998cd1
}

#search-wrapper.type3 .h2_lead {
	color: #998cd1
}

#search-wrapper.type4 {
	background: rgba(54, 158, 204, 0.3)
}

#search-wrapper.type4 .btn.btn-primary {
	background: #369ecc !important;
	border-color: #369ecc !important
}

#search-wrapper.type4 .keywords {
	background: #369ecc
}

#search-wrapper.type4 .lifecard {
	background: #369ecc
}

#search-wrapper.type4 .h2_lead {
	color: #369ecc
}

@media screen and (max-width:575px) {
	#search-wrapper {
		width: 100%;
		margin: 30px 0px;
		padding-bottom: 30px
	}
}

h3.h3_title {
	font-size: clamp(1.25rem, 1vw + 1rem, 1.75rem);
	line-height: 1.2;
	border-left: 6px solid;
	-o-border-image: linear-gradient(to bottom, #5fb0a5 0%, #5fb0a5 50%, #a6e0df 51%, #a6e0df 100%) 1;
	border-image: -webkit-gradient(linear, left top, left bottom, from(#5fb0a5), color-stop(50%, #5fb0a5), color-stop(51%, #a6e0df), to(#a6e0df)) 1;
	border-image: linear-gradient(to bottom, #5fb0a5 0%, #5fb0a5 50%, #a6e0df 51%, #a6e0df 100%) 1;
	padding-left: 20px;
	font-weight: 700
}

h3.h3_title a {
	font-size: 16px;
	font-weight: 500;
	text-decoration: underline;
	margin-left: 50px
}

h3.h3_title.type2 {
	-o-border-image: linear-gradient(to bottom, #b6dbfc 0%, #b6dbfc 50%, #a6e0df 51%, #a6e0df 100%) 1;
	border-image: -webkit-gradient(linear, left top, left bottom, from(#b6dbfc), color-stop(50%, #b6dbfc), color-stop(51%, #a6e0df), to(#a6e0df)) 1;
	border-image: linear-gradient(to bottom, #b6dbfc 0%, #b6dbfc 50%, #a6e0df 51%, #a6e0df 100%) 1
}

h3.h3_title.type3 {
	-o-border-image: linear-gradient(to bottom, #eba568 0%, #eba568 50%, #a6e0df 51%, #a6e0df 100%) 1;
	border-image: -webkit-gradient(linear, left top, left bottom, from(#eba568), color-stop(50%, #eba568), color-stop(51%, #a6e0df), to(#a6e0df)) 1;
	border-image: linear-gradient(to bottom, #eba568 0%, #eba568 50%, #a6e0df 51%, #a6e0df 100%) 1
}

.card-wrap {
	display: -ms-grid;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
	gap: 10px;
	margin: 30px 0px 0px
}

.card-wrap .card {
	border-radius: 0px;
	-webkit-box-shadow: none;
	box-shadow: none;
	margin: 0px
}

.card-wrap .card a {
	padding: 20px 5px 10px;
	display: -ms-grid;
	display: grid;
	place-content: center;
	text-align: center;
	height: 130px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	justify-items: center
}

.slider2 .slick-dots {
	bottom: -30px !important
}

.img_hover {
	-webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0);
	box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0);
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.img_hover:hover {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	-webkit-box-shadow: 2px 10px 20px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 10px 20px 0px rgba(0, 0, 0, 0.2)
}

#page-content {
	margin-top: 60px
}

#page-content .nav-tabs {
	border-bottom: 3px solid #5fb0a5
}

#page-content .nav-tabs .nav-link {
	font-size: 15px;
	padding: 4px 30px;
	border-radius: 0px;
	background: #d6d6d6;
	color: #ffffff !important;
	margin-right: 3px;
	border-bottom-color: #5fb0a5;
	font-weight: 500 !important
}

#page-content .nav-tabs .nav-link:hover {
	border-bottom-color: #5fb0a5;
	background: #666
}

@media screen and (max-width:767px) {
	#page-content .nav-tabs .nav-link {
		font-size: 14px;
		padding: 3px 10px
	}
}

@media screen and (max-width:575px) {
	#page-content .nav-tabs .nav-link {
		font-size: 13px;
		padding: 3px 5px;
		margin-right: 2px
	}
}

#page-content .nav-tabs .nav-link.active {
	color: #ffffff !important;
	background-color: #5fb0a5;
	border-color: #5fb0a5;
	font-weight: 500 !important
}

#page-content .nav-tabs .nav-link.active a {
	color: #ffffff !important
}

#page-content ul.news {
	margin: 20px 0px;
	padding: 0px
}

#page-content ul.news li {
	line-height: 1.5;
	padding: 10px 5px 15px;
	border-bottom: 1px #d6d6d6 dotted;
	margin-bottom: 5px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 130px 20px 1fr;
	grid-template-columns: 130px 1fr;
	gap: 20px;
	font-size: 16px
}

#page-content ul.news li span.date {
	font-size: 15px;
	font-weight: 500;
	color: #5fb0a5
}

@media screen and (max-width:767px) {
	#page-content ul.news li {
		display: block;
		font-size: 15px
	}

	#page-content ul.news li span.date {
		font-size: 13px;
		display: block;
		line-height: 1.6
	}
}

#page-content.type2 .h2_lead {
	color: #f190a9
}

#page-content.type2 .nav-tabs {
	border-color: #f190a9
}

#page-content.type2 .nav-tabs .nav-link.active {
	color: #ffffff !important;
	background-color: #f190a9;
	border-color: #f190a9
}

#page-content.type2 .nav-tabs .nav-link {
	border-bottom-color: #f190a9
}

#page-content.type2 .nav-tabs .nav-link:hover {
	border-bottom-color: #f190a9
}

#page-content.type2 ul.news li span.date {
	color: #f190a9
}

#page-content.type3 .h2_lead {
	color: #998cd1
}

#page-content.type3 .nav-tabs {
	border-color: #998cd1
}

#page-content.type3 .nav-tabs .nav-link.active {
	color: #ffffff !important;
	background-color: #998cd1;
	border-color: #998cd1
}

#page-content.type3 .nav-tabs .nav-link {
	border-bottom-color: #998cd1
}

#page-content.type3 .nav-tabs .nav-link:hover {
	border-bottom-color: #998cd1
}

#page-content.type3 ul.news li span.date {
	color: #998cd1
}

#page-content.type4 .h2_lead {
	color: #369ecc
}

#page-content.type4 .nav-tabs {
	border-color: #369ecc
}

#page-content.type4 .nav-tabs .nav-link.active {
	color: #ffffff !important;
	background-color: #369ecc;
	border-color: #369ecc
}

#page-content.type4 .nav-tabs .nav-link {
	border-bottom-color: #369ecc
}

#page-content.type4 .nav-tabs .nav-link:hover {
	border-bottom-color: #369ecc
}

#page-content.type4 ul.news li span.date {
	color: #369ecc
}

#about {
	padding: 60px 0px 60px;
	position: relative
}

#about .header-title {
	margin-left: 0px;
	padding-left: 0px
}

@media screen and (max-width:575px) {
	#about {
		padding: 100px 0px 30px
	}
}

.jinkou-wrapper {
	background: #eaf1f7;
	padding: 20px 40px 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 40px
}

.jinkou-wrapper .jinkou {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 20px
}

.jinkou-wrapper .jinkou p {
	font-weight: 700;
	font-family: "Yantramanav"sans-serif !important;
	font-size: 40px;
	line-height: 1;
	color: #00642a
}

.jinkou-wrapper .jinkou p.font-alt {
	font-size: 50px !important
}

@media screen and (max-width:767px) {
	.jinkou-wrapper .jinkou p.font-alt {
		font-size: 34px !important
	}
}

.jinkou-wrapper .jinkou p span {
	font-family: "Zen Kaku Gothic Antique";
	font-size: 20px
}

@media screen and (max-width:767px) {
	.jinkou-wrapper .jinkou p {
		font-size: 26px
	}

	.jinkou-wrapper .jinkou p span {
		font-size: 16px
	}
}

@media screen and (max-width:767px) {
	.jinkou-wrapper .jinkou {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 5px
	}
}

@media screen and (max-width:991px) {
	.jinkou-wrapper {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr
	}

	.jinkou-wrapper h4 {
		font-size: 15px
	}
}

@media screen and (max-width:575px) {
	.jinkou-wrapper {
		padding: 20px 20px 10px;
		gap: 30px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start
	}
}

#aboutnavi {
	padding: 0px 0px 120px
}

@media screen and (max-width:991px) {
	#aboutnavi .kouhou {
		width: 50%;
		margin: 30px auto
	}
}

@media screen and (max-width:575px) {
	#aboutnavi .kouhou {
		width: 70%
	}
}

.navtile {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr 10px 1fr;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
	margin-bottom: 30px
}

@media screen and (max-width:575px) {
	.navtile {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr
	}
}

.naviitem .card {
	border-radius: 0px;
	-webkit-box-shadow: none;
	box-shadow: none;
	margin: 0px;
	padding: 20px 5px 10px;
	border-color: #9d9d9d;
	display: -ms-grid;
	display: grid;
	place-content: center;
	text-align: center;
	height: 150px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	justify-items: center
}

.add {
	margin-top: 30px;
	display: -ms-grid;
	display: grid;
	grid-template-columns: repeat(auto-fill, 300px);
	gap: 10px
}

#scrollT {
	display: block;
	width: 100%;
	height: 40px;
	background: #1c2c6f;
	color: #ffffff;
	text-align: center;
	line-height: 40px;
	font-weight: 500;
	position: relative;
	overflow: visible
}

#scrollT:after {
	content: "";
	display: block;
	height: 20px;
	width: 40px;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	background: #005bac;
	position: absolute;
	top: -18px;
	left: 50%;
	z-index: 10;
	margin-left: -20px
}

.footer {
	background: #005bac;
	padding: 60px 0px 20px
}

.footer p {
	font-size: 15px;
	color: #ffffff;
	font-weight: 500
}

@media screen and (max-width:575px) {
	.footer p {
		font-size: 14px
	}
}

.footer ul {
	margin: 10px 0px;
	padding: 0px
}

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

.footer ul li a {
	font-size: 15px;
	color: #ffffff;
	font-weight: 500
}

.footer ul li a:after {
	content: "|";
	margin-left: 10px
}

@media screen and (max-width:575px) {
	.footer ul li a:after {
		content: none
	}
}

@media screen and (max-width:575px) {
	.footer ul li a {
		font-size: 14px
	}
}

.footer ul li:last-child a:after {
	content: none
}

.footer ul.f_sns li {
	margin: 0px 0px 0px 2px
}

.footer ul.f_sns li a:after {
	content: none
}

.footer copyright {
	display: block;
	width: 100%;
	color: #ffffff;
	font-size: 14px;
	font-weight: 500;
	font-family: "Yantramanav"sans-serif;
	text-align: end
}

@media screen and (max-width:575px) {
	.footer copyright {
		font-size: 11px;
		text-align: center;
		letter-spacing: 0
	}
}

.footer.type_spa {
	background: #005bac
}

.side_sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.side_sns span {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	margin-top: 50px;
	font-size: 13px
}

.side_sns ul {
	margin-top: 50px
}

.side_sns:before {
	content: "";
	width: 1px;
	height: 100px;
	display: block;
	background: #000
}

.side_sns {
	position: fixed;
	right: -25px;
	top: 30%;
	z-index: 100
}

@media screen and (max-width:575px) {
	.side_sns {
		display: none
	}
}

.side_sns_intro_page {
	width: 110px;
	height: auto;
	position: absolute;
	bottom: 20px;
	right: -30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	align-items: center
}

.side_sns_intro_page span {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	font-size: 13px;
	color: #005bac;
	line-height: 1;
	padding-top: 15px;
	margin-left: 10px;
}

.side_sns_intro_page ul {
	margin-top: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	gap: 3px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}

.breadcrumb {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-negative: -1;
	flex-shrink: -1;
	padding: 5px 20px;
	background: #f2f2f2
}

.breadcrumb .breadcrumb-item {
	font-size: 13px !important;
	font-weight: 400 !important
}

.breadcrumb .breadcrumb-item a {
	font-size: 13px !important;
	font-weight: 400 !important;
	text-decoration: underline
}

h2.h2_title {
	padding: 20px 30px;
	border: 2px #369ecc solid;
	border-left-width: 10px;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 700;
	color: #333
}

.topics_list {
	margin: 30px auto
}

.topics_list ul li {
	padding: 20px 10px;
	border-bottom: 1px solid #d6d6d6
}

.topics_list ul li a {
	font-size: 18px;
	font-weight: 500
}

@media screen and (max-width:767px) {
	.topics_list ul li a {
		font-size: 15px
	}
}

.topics_list ul li span {
	display: inline-block;
	padding: 1px 10px;
	background: #d6d6d6;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	margin-left: 10px;
	border-radius: 14px
}

.archive_info {
	text-align: end
}

.archive_info .sns_post {
	margin: 0px;
	padding: 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end
}

.archive {
	margin: 40px auto
}

.archive p, .archive ul {
	margin-bottom: 30px;
	padding-left: 1em
}

.archive h2 {
	font-size: clamp(1.5rem, 2vw + 1rem, 2.25rem);
	border-bottom: solid 3px #a1a7ac;
	position: relative;
	padding-bottom: 15px
}

.archive h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #005bac;
	bottom: -3px;
	width: 20%
}

.archive .h2_lead {
	font-weight: 500;
	font-size: 18px
}

@media screen and (max-width:991px) {
	.archive .h2_lead {
		font-size: 16px
	}
}

.archive ul li {
	margin-left: 1em;
	list-style: disc
}

.otoiawase {
	margin: 60px auto;
	border: 10px solid #f0f3f5;
	padding: 0px 0px 20px
}

.otoiawase .otoiawaseheader {
	padding: 20px;
	background: #f0f3f5;
	font-size: 20px;
	font-weight: 500
}

@media screen and (max-width:575px) {
	.otoiawase .otoiawaseheader {
		text-align: center
	}
}

.otoiawase p {
	padding: 10px 20px 0px
}

h3 {
	font-size: clamp(1.25rem, 1vw + 1rem, 1.5rem);
	font-weight: 700;
	line-height: 1.6;
	background: #f7f7f7;
	padding: 10px 20px
}

h4.h4_title {
	font-size: 14px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

h4.h4_title:before {
	content: "";
	width: 14px;
	height: 14px;
	display: block;
	background: url(../images/sub/h4.svg) no-repeat;
	background-size: cover;
	margin-right: 10px
}

@media screen and (max-width:991px) {
	h4.h4_title {
		font-size: 15px
	}

	h4.h4_title:before {
		content: "";
		width: 12px;
		height: 12px;
		display: block;
		background: url(../images/sub/h4.svg) no-repeat;
		background-size: cover;
		margin-right: 5px
	}
}

header {
	position: fixed;
	top: 0px;
	left: 20px;
	width: calc(100vw - 40px);
	z-index: 10
}

header .header-inner {
	margin-top: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

header .header-inner .logosp {
	width: 380px;
	padding: 10px 20px;
	background: #ffffff;
	border-radius: 50px;
	position: relative;
	z-index: 1
}

@media screen and (max-width:575px) {
	header .header-inner .logosp {
		width: 300px
	}
}

header .mainmenu {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 30px 60px;
	grid-template-columns: 1fr 60px;
	background: #ffffff;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 20px;
	border-radius: 50px;
	gap: 30px;
	position: relative;
	z-index: 10
}

header .mainmenu .weather {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 40px 10px auto;
	grid-template-columns: 1fr 40px auto;
	gap: 10px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

header .mainmenu .weather span {
	font-size: 24px;
	line-height: 1
}

@media screen and (max-width:767px) {
	header .mainmenu .weather {
		display: none
	}
}

.g_nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 10px
}

.g_nav li a {
	font-family: --font-default;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	font-weight: 600;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 14px;
	gap: 5px
}

.g_nav li a span {
	font-size: 24px
}

@media screen and (max-width:1150px) {
	.g_nav {
		display: none
	}

	header .mainmenu {
		display: block;
		width: 60px;
		height: 60px;
		padding: 0px
	}

	header .mainmenu .x {
		width: 60px;
		height: 60px
	}

	header .mainmenu .lines-button {
		right: 20px
	}

	.lines-button:after {
		bottom: 10px
	}
}

.overlay {
	display: none;
	opacity: 0;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: url(../images/slider/slide2.jpg);
	background-size: cover;
	background-position: left center;
	z-index: 5
}

.overlay.open {
	display: block;
	-webkit-animation: fadeIn 0.5s 0s forwards;
	animation: fadeIn 0.5s 0s forwards
}

.overlay .nav {
	width: 70%;
	height: 100%;
	position: absolute;
	top: 0;
	right: -70%;
	padding: 100px 50px 50px;
	background: rgba(254, 254, 254, 0.9);
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 30px 1fr 30px 1fr;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	place-content: center
}

.overlay .nav.open {
	right: 0;
	-webkit-animation: fadeRightAnime 1s 0s forwards;
	animation: fadeRightAnime 1s 0s forwards
}

.overlay .nav .inquiry_wrapper {
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-column: 1/4;
	text-align: center;
	margin-top: 20px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 5px 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 5px
}

.overlay .nav .inquiry_wrapper a {
	padding: 5px 10px;
	display: -ms-grid;
	display: grid;
	place-content: center;
	border: 1px #333333 solid;
	background: #efefef
}

@media screen and (max-width:767px) {
	.overlay .nav .inquiry_wrapper {
		display: block
	}

	.overlay .nav .inquiry_wrapper a {
		margin-bottom: 5px
	}
}

@media screen and (max-width:767px) {
	.overlay .nav {
		width: 80%;
		padding: 50px 20px 20px;
		display: block;
		gap: 20px;
		overflow: scroll
	}

	.overlay .nav>div {
		margin-bottom: 20px
	}
}

.x.toggle-active {
	z-index: 9999
}

#mainVisual .slide_title {
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 1;
	text-align: left;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 480px 0px 1fr;
	grid-template-columns: 480px 1fr;
	gap: 0px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start
}

#mainVisual .slide_title h1 {
	font-family: "Zen Kaku Gothic Antique";
	font-weight: 500;
	color: #fff;
	font-size: 40px;
	letter-spacing: 4px;
	line-height: 1;
	margin-left: -50px
}

#mainVisual .slide_title h1 span {
	font-size: 26px;
	letter-spacing: 1px
}

@media screen and (max-width:575px) {
	#mainVisual .slide_title h1 span {
		font-size: 28px
	}
}

@media screen and (max-width:575px) {
	#mainVisual .slide_title h1 {
		-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		font-size: 20px;
		margin-left: -30px;
		line-height: 1.8;
		margin-top: 20px
	}
}

#mainVisual .slide_title img {
	opacity: 0.5
}

@media screen and (max-width:575px) {
	#mainVisual .slide_title {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start;
		bottom: 50px;
		left: -40px;
		-ms-grid-columns: 320px 1fr;
		grid-template-columns: 320px 1fr
	}
}

#mainVisual .slide_title.type_spa {
	width: 100vw;
	height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	place-content: center
}

#mainVisual .slide_title.type_spa img {
	display: block;
	width: 600px;
	height: auto
}

@media screen and (max-width:575px) {
	#mainVisual .slide_title.type_spa img {
		width: 80%
	}
}

@media screen and (max-width:575px) {
	#mainVisual .slide_title.type_spa {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center
	}
}

#subVisual {
	position: relative
}

#subVisual .topslider {
	width: 100vw;
	height: 50vh !important
}

#subVisual .slider1 {
	width: 100vw;
	height: 50vh !important;
	margin: 0;
	padding: 0
}

#subVisual .slider1 img {
	width: 100vw;
	height: 50vh !important;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center center;
	object-position: center center
}

#subVisual .h1 {
	font-family: --font-default;
	display: inline-block;
	position: relative;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
	padding: 20px 50px;
	margin-left: 50px;
	background: #ffffff;
	margin-top: -100px;
	z-index: 2;
	clip-path: inset(0 100% 0 0);
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
	-webkit-transition-delay: 0.5s;
	transition-delay: 0.5s
}

#subVisual .h1.is_active {
	clip-path: inset(0)
}

#subVisual .h1.h1_bg {
	background: url(../images/sub/background.jpg);
	background-position: center center
}

.video_media {
	width: 100%;
	aspect-ratio: 4/3
}

.video_media video {
	width: 100%;
	height: 100%
}

.video_media16 {
	width: 100%;
	aspect-ratio: 16/9
}

.video_media16 video {
	width: 100%;
	height: 100%
}

.title_flex {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 85px 10px 1fr;
	grid-template-columns: 85px 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 10px
}

@media screen and (max-width:767px) {
	.title_flex {
		-ms-grid-columns: 45px 10px 1fr;
		grid-template-columns: 45px 1fr;
		gap: 10px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start
	}

	.title_flex h2 {
		margin-bottom: 0px;
		line-height: 1.2
	}
}

.title_flex_center {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 100px 10px auto;
	grid-template-columns: 100px auto;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 10px
}

@media screen and (max-width:767px) {
	.title_flex_center {
		-ms-grid-columns: 45px 10px 1fr;
		grid-template-columns: 45px 1fr;
		gap: 10px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start
	}

	.title_flex_center h2 {
		margin-bottom: 0px;
		line-height: 1.2
	}
}

.title_flex_center_s {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 60px 20px auto;
	grid-template-columns: 60px auto;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 20px
}

@media screen and (max-width:767px) {
	.title_flex_center_s {
		-ms-grid-columns: 40px 10px 1fr;
		grid-template-columns: 40px 1fr;
		gap: 10px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start
	}

	.title_flex_center_s h2 {
		margin-bottom: 0px;
		line-height: 1.2
	}
}

.title_flex_s {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 60px 10px auto;
	grid-template-columns: 60px auto;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start;
	gap: 10px
}

.title_flex_s h2 {
	font-size: 30px
}

@media screen and (max-width:767px) {
	.title_flex_s {
		-ms-grid-columns: 40px 10px 1fr;
		grid-template-columns: 40px 1fr;
		gap: 10px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start
	}

	.title_flex_s h2 {
		margin-bottom: 0px;
		line-height: 1.2
	}
}

.sub_bannar {
	margin: 0px auto 30px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 230px 30px 1fr;
	grid-template-columns: 230px 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 30px
}

.sub_bannar .sub_bannar_title {
	text-align: center;
	font-size: 18px;
	font-weight: 600
}

@media screen and (max-width:575px) {
	.sub_bannar .sub_bannar_title {
		font-size: 16px;
		line-height: 1.4
	}
}

.sub_bannar .img_area {
	width: 100%;
	height: 100%;
	overflow: hidden
}

.sub_bannar .img_area img {
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.sub_bannar:hover .img_area img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1)
}

@media screen and (max-width:575px) {
	.sub_bannar {
		-ms-grid-columns: 180px 1fr;
		grid-template-columns: 180px 1fr;
		margin-bottom: 20px
	}
}

.calendar {
	position: relative;
	background: #f8f8f8;
	width: 100%;
	padding: 5px 10px;
	margin: 20px 0px 10px
}

.calendar h4 {
	text-align: left;
	font-size: 20px;
	font-weight: 600
}

.calendar table {
	width: 100%;
	margin: 10px 0px
}

.calendar table tr th {
	font-family: Roboto, sans-serif;
	width: 14.2857142857%;
	font-size: 12px;
	padding: 4px;
	border: 2px #ffffff solid
}

.calendar table tr td {
	font-family: Roboto, sans-serif;
	width: 14.2857142857%;
	font-size: 11px !important;
	padding: 4px;
	border: 2px #ffffff solid;
	vertical-align: top
}

.calendar table tr td.youbi {
	border: none;
	text-align: center;
	font-weight: 600
}

.calendar table tr td.date span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	font-size: 12px !important
}

.calendar table tr td span.num {
	width: 100%;
	text-align: end
}

.calendar table tr td.ful {
	background: #f2f2f2
}

.calendar table tr td.pinks {
	background: #e5abbe
}

.calendar table tr td.etu {
	background: #5fb0a5
}

.calendar table tr td.spa {
	background: #ac3749
}

.calendar table tr td .non {
	margin: 3px 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-weight: 600;
	color: #ffffff
}

.calendar .prev {
	position: absolute;
	top: 15px;
	right: 10px;
	font-size: 13px;
	font-family: Roboto, sans-serif
}

.calendar .prev:hover {
	text-decoration: underline
}

.calendar .nex {
	position: absolute;
	top: 15px;
	right: 10px;
	font-size: 13px;
	font-family: sans-serif;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s
}

.calendar .pre {
	position: absolute;
	top: 15px;
	left: 10px;
	font-size: 13px;
	font-family: sans-serif;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s
}

.calendar .nex:hover, .calendar .pre:hover {
	opacity: 0.4
}

.calendar .calendar-caption {
	font-size: 12px;
	line-height: 1.5
}

.calendar .calendar-caption .gray {
	color: #ababab
}

.calendar .calendar-caption .pinks {
	color: #e5abbe
}

.calendar .calendar-caption .red {
	color: #ac3749
}

.calendar .calendar-caption .green {
	color: #2f5d50
}

.calendar .calendar-caption .brown {
	color: #5fb0a5
}

.calendar .calendar-caption .dblue {
	color: #011e7e
}

.swell-block-fullWide {
	position: relative;
	z-index: 1;
	margin-top: -10vw
}

.swell-block-fullWide:after {
	content: "";
	width: 100%;
	height: 4px;
	background: #ffffff;
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 10
}

#video-area {
	position: fixed;
	z-index: -1;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	overflow: hidden
}

#video {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 177.77777778vh;
	height: 56.25vw;
	min-height: 100%;
	min-width: 100%
}

.bg_white {
	background: #ffffff
}

#spa {
	padding: 80px 0px 0px;
	position: relative
}

#spa .wave-btm {
	margin-top: -10vw
}

#spa .swell-block-fullWide {
	margin-top: 6vw
}

#kouyou {
	padding: 140px 0px;
	background-attachment: fixed;
	background: url(../images/season/kouyou.jpg);
	background-size: cover;
	background-position: center center
}

.table {
	font-size: 15px
}

.table tr th {
	font-weight: 600 !important;
	text-align: center;
	padding: 10px 10px 10px !important;
	white-space: nowrap;
	vertical-align: middle !important
}

.table tr td {
	font-weight: 500 !important;
	padding: 10px 10px 10px !important;
	vertical-align: middle !important
}

.table-spa tr {
	border-color: #ac3749 !important
}

.table-spa tr th {
	background: #ac3749 !important;
	color: #ffffff
}

.table-spa tr td {
	background: rgba(254, 254, 254, 0.8);
	border-color: #ac3749 !important
}

.price {
	font-size: 26px;
	font-weight: 600;
	color: #ac3749
}

.gallery {
	margin: 40px 0px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr 10px 1fr;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px
}

.gallery .gallery-item01 {
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-column: 1/4;
	aspect-ratio: 3/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item01 a {
	display: block;
	width: 100%;
	aspect-ratio: 3/1;
	position: relative
}

.gallery .gallery-item01 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item01 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item01 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item02 {
	-ms-grid-column: 1;
	-ms-grid-column-span: 2;
	grid-column: 1/3;
	aspect-ratio: 2/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item02 a {
	display: block;
	width: 100%;
	aspect-ratio: 2/1;
	position: relative
}

.gallery .gallery-item02 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item02 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item02 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item03 {
	aspect-ratio: 1/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item03 a {
	display: block;
	width: 100%;
	aspect-ratio: 1/1;
	position: relative
}

.gallery .gallery-item03 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item03 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item03 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item04 {
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-column: 1/2;
	-ms-grid-row: 3;
	-ms-grid-row-span: 2;
	grid-row: 3/5;
	aspect-ratio: 1/2.1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item04 a {
	display: block;
	width: 100%;
	aspect-ratio: 1/2.1;
	position: relative
}

.gallery .gallery-item04 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item04 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item04 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item05 {
	-ms-grid-column: 2;
	-ms-grid-column-span: 2;
	grid-column: 2/4;
	aspect-ratio: 2/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item05 a {
	display: block;
	width: 100%;
	aspect-ratio: 2/1;
	position: relative
}

.gallery .gallery-item05 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item05 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item05 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item06 {
	-ms-grid-column: 2;
	-ms-grid-column-span: 2;
	grid-column: 2/4;
	aspect-ratio: 2/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item06 a {
	display: block;
	width: 100%;
	aspect-ratio: 2/1;
	position: relative
}

.gallery .gallery-item06 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item06 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item06 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item07 {
	aspect-ratio: 1/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item07 a {
	display: block;
	width: 100%;
	aspect-ratio: 1/1;
	position: relative
}

.gallery .gallery-item07 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item07 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item07 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item08 {
	aspect-ratio: 1/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item08 a {
	display: block;
	width: 100%;
	aspect-ratio: 1/1;
	position: relative
}

.gallery .gallery-item08 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item08 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item08 a:hover .f_caption {
	opacity: 1
}

.gallery .gallery-item09 {
	aspect-ratio: 1/1;
	overflow: hidden;
	position: relative
}

.gallery .gallery-item09 a {
	display: block;
	width: 100%;
	aspect-ratio: 1/1;
	position: relative
}

.gallery .gallery-item09 a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .gallery-item09 a:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery .gallery-item09 a:hover .f_caption {
	opacity: 1
}

.gallery img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center center;
	object-position: center center
}

.gallery .f_caption {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: -ms-grid;
	display: grid;
	place-content: center;
	text-align: center;
	z-index: 10;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	opacity: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery .f_caption i {
	font-size: 20px
}

.gallerys {
	margin: 20px 0px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 10px
}

.gallery_s {
	margin: 40px 0px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr 10px 1fr 10px 1fr;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px
}

.gallery_s .gallery-item {
	width: calc(25% - 10px) !important;
	margin: 5px 5px 5px
}

@media screen and (max-width:991px) {
	.gallery_s .gallery-item {
		width: calc(33% - 10px) !important
	}
}

@media screen and (max-width:767px) {
	.gallery_s .gallery-item {
		width: calc(50% - 10px) !important
	}
}

.gallery_s .gallery-item img {
	width: 100% !important
}

.gallery-item {
	position: relative
}

.gallery-item:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery-item:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

.gallery-item:hover .f_caption {
	opacity: 1
}

.gallery-item .f_caption {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: -ms-grid;
	display: grid;
	place-content: center;
	text-align: center;
	z-index: 10;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	opacity: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.gallery-item .f_caption i {
	font-size: 20px
}

.clipping {
	-webkit-transition: 0.5s clip-path;
	transition: 0.5s clip-path
}

.animeLeft {
	clip-path: inset(0 100% 0 0)
}

.is_active {
	clip-path: inset(0 0 0 0)
}

.clipping img {
	width: 100%
}

.fadeUp {
	opacity: 0;
	position: relative;
	top: 100px
}

.kumo1 {
	position: relative;
	overflow: visible
}

.kumo1 .container {
	position: relative;
	z-index: 0
}

.kumo1 .bg_kumo1 {
	width: 40vw;
	position: absolute;
	z-index: -1;
	bottom: -50px;
	left: -10vw
}

@media screen and (max-width:575px) {
	.kumo1 .bg_kumo1 {
		display: none
	}
}

.kumo2 {
	position: relative;
	overflow: hidden
}

.kumo2 .container {
	position: relative;
	z-index: 0
}

.kumo2 .bg_kumo2 {
	width: 50vw;
	position: absolute;
	z-index: 0;
	bottom: 10px;
	right: -10vw
}

@media screen and (max-width:575px) {
	.kumo2 .bg_kumo2 {
		display: none
	}
}

.nami1 {
	position: relative;
	overflow: visible
}

.nami1 .container {
	position: relative;
	z-index: 0
}

.nami1 .bg_nami1 {
	width: 30vw;
	position: absolute;
	z-index: 1;
	top: 0px;
	left: calc(-4vw - 100px);
	-webkit-transform-origin: left bottom;
	transform-origin: left bottom;
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg);
	opacity: 0.5
}

@media screen and (max-width:575px) {
	.nami1 .bg_nami1 {
		display: none
	}
}

.nami2 {
	position: relative;
	overflow: hidden
}

.nami2 .container {
	position: relative;
	z-index: 1
}

.nami2 .bg_nami2 {
	width: 40vw;
	position: absolute;
	z-index: 0;
	bottom: 30px;
	right: calc(-2vw - 100px);
	-webkit-transform-origin: right bottom;
	transform-origin: right bottom;
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
	opacity: 0.5
}

@media screen and (max-width:575px) {
	.nami2 .bg_nami2 {
		display: none
	}
}

#access {
	position: relative;
	overflow: hidden
}

#access:after {
	content: "";
	position: absolute;
	top: 20px;
	right: -20px;
	width: 50vw;
	aspect-ratio: 1/3;
	background: url(../images/access/access.svg);
	background-repeat: no-repeat;
	background-size: contain;
	z-index: -2
}

@media screen and (max-width:991px) {
	#access:after {
		content: none
	}
}

.sightseeing {
	margin: 40px auto;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 50px 1fr 50px 1fr;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px
}

.sightseeing p {
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 0px
}

.sightseeing p.category {
	text-align: center;
	color: #5fb0a5;
	line-height: 2;
	margin: 5px 0px 0px;
	font-weight: 500
}

.sightseeing p.category:before {
	content: "|";
	margin-right: 10px
}

.sightseeing p.category:after {
	content: "|";
	margin-left: 10px
}

.sightseeing a.url {
	font-size: 13px;
	color: #f190a9
}

.sightseeing a.imgs {
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	overflow: hidden
}

.sightseeing a.imgs img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center center;
	object-position: center center;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

.sightseeing a.imgs img:hover {
	-webkit-transform: scale(1.1);
	transform: scale(1.1)
}

@media screen and (max-width:991px) {
	.sightseeing {
		-ms-grid-columns: 1fr 30px 1fr;
		grid-template-columns: repeat(2, 1fr);
		gap: 30px
	}
}

@media screen and (max-width:767px) {
	.sightseeing {
		-ms-grid-columns: 1fr;
		grid-template-columns: repeat(1, 1fr);
		gap: 10px
	}
}

ul.news_wrapper {
	margin: 20px 0px;
	padding: 0px
}

ul.news_wrapper li {
	line-height: 1.5;
	padding: 20px 5px 15px;
	border-bottom: 1px #d6d6d6 dotted;
	margin-bottom: 5px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 220px 20px 1fr;
	grid-template-columns: 220px 1fr;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 20px;
	font-size: 18px;
	font-weight: 500;
	width: 100%;
	overflow: hidden
}

ul.news_wrapper li span.date {
	font-size: 15px;
	font-weight: 500;
	color: #5fb0a5;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 130px 1fr;
	grid-template-columns: 130px 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

ul.news_wrapper li span.date.date_spa {
	color: #eba568
}

ul.news_wrapper li span.date.flag1:after {
	content: "お知らせ";
	font-size: 12px;
	font-weight: 500;
	width: 100%;
	padding: 2px 10px;
	background: #a6e0df;
	border-radius: 10px;
	text-align: center;
	color: #ffffff
}

@media screen and (max-width:767px) {
	ul.news_wrapper li span.date.flag1:after {
		font-size: 11px
	}
}

ul.news_wrapper li span.date.flag2:after {
	content: "イベント";
	font-size: 12px;
	font-weight: 500;
	width: 100%;
	padding: 2px 10px;
	background: #e0b4a6;
	border-radius: 10px;
	text-align: center;
	color: #ffffff
}

@media screen and (max-width:767px) {
	ul.news_wrapper li span.date.flag2:after {
		font-size: 11px
	}
}

@media screen and (max-width:767px) {
	ul.news_wrapper li {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		gap: 5px;
		font-size: 15px
	}

	ul.news_wrapper li span.date {
		font-size: 13px;
		display: block;
		line-height: 1.6
	}
}

ul.news_wrapper li a {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	overflow: hidden
}

ul.news_wrapper li a .info_detail {
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 400;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 100%
}

ul.news_wrapper li:last-child {
	border-bottom: none
}


/*****

.news_detail img {
	width: 40%
}

@media screen and (max-width:767px) {
	.news_detail img {
		width: 100%
	}
}

*****/


.pagination {
	margin: 60px auto 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.pagination li {
	-ms-flex-preferred-size: 40px;
	flex-basis: 40px;
	height: 40px !important
}

.pagination li a {
	font-family: "Roboto";
	display: -ms-grid;
	display: grid;
	place-content: center;
	font-weight: 700;
	font-size: 14px;
	line-height: 40px;
	width: 40px;
	height: 40px;
	background: #ffffff;
	border-radius: 4px;
	border: none !important
}

.pagination li a:hover {
	background: #e4e9eb
}

.pagination li:first-child a, .pagination li:last-child a {
	background: none
}

.pagination li.active a {
	background: #e4e9eb;
	color: #ffffff
}

#item_gallery .gallery-item {
	position: relative;
	margin-bottom: 20px
}

#item_gallery .gallery-item:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

#item_gallery .gallery-item:hover:after {
	background: rgba(0, 0, 0, 0.6)
}

#item_gallery .gallery-item:hover .f_caption {
	opacity: 1
}

#item_gallery .gallery-item .f_caption {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: -ms-grid;
	display: grid;
	place-content: center;
	text-align: center;
	z-index: 10;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	opacity: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s
}

#item_gallery .gallery-item .f_caption i {
	font-size: 20px
}

.item-info {
	text-align: center;
	margin: 5px 0px 10px
}

.item-info h5, .item-info p {
	line-height: 1.4
}

.item-info .prices {
	font-weight: 600
}

.item-info .prices span {
	font-size: 24px;
	font-family: "Yantramanav", sans-serif;
	color: #c62828
}

.h4_flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 5px
}

.sub_sticky {
	position: sticky;
	top: 50px
}

.table-layout-fixed {
	table-layout: fixed
}

.table-layout-fixed tr th {
	white-space: normal !important
}

.table-flowers {
	font-size: 14px !important
}

.table-flowers tr th {
	padding: 2px 5px !important;
	width: 80px !important
}

.filter-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 10px;
	margin: 30px 0px 10px
}

.filter-list li a {
	color: #ffffff;
	font-weight: 600;
	background: #0089c7;
	padding: 8px 12px;
	border-radius: 20px
}

.filter-list li a:hover {
	background: #efefef
}

.indent {
	margin-left: 1.5em
}

.scrollable table {
	min-width: 640px
}