@charset "UTF-8";
/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

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

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

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

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

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

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

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

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





/*-----------------------------------------------------------------------------------------
00000 ROOTなど
00001 INITIAL VALUE
00002 LAYOUT
00003 TYPOGRAPHY
00004 Aタグ
00005 Humberger
00006 Humberger の時のメニュー
00007 Globalメニュー
00008 LOGO
00009 HEADER
00010 FOOTER


20001 SIDEBAR
20002 pagination
20003 ページャー
20004 404
20005 ぱんくず


30001 ARCHIVE
30002 .page-title
30003 .box-contents


40001 frame-map
40002 .btn-more
40004 article.entry
40005 ul.list-news
40006 ul.zgzg
40007 .fixed-qr
40008 .movie-wrap




50001 TABLE
50002 gallery


60001 #form


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









/*-----------------------------------------------------------------------------------------
00000 ROOTなど
----------------------------------------------------------------------------------------- */
:root {
	--color-font: #111;
	--color-key: #0a3858;
	--color-red: #e90d5b;
	--color-red-dark: #b51833;
	--color-green: #17B198;
	--color-blue: #5690E4;
	--color-gradi: linear-gradient(-45deg, rgba(10, 56, 88, 0.9) 0%, rgba(21, 76, 114, 0.9) 100%);
}


.memo {
	position: fixed;
	z-index: 10000000000;
	bottom: 0;
	right: 0;
	font-size: 12px;
	background: black;
	color: white;
	line-height: 1;
	padding: 0.5em 1em;
	display:none;
}






/*-----------------------------------------------------------------------------------------
00001 INITIAL VALUE
----------------------------------------------------------------------------------------- */
html {
	padding: 0px;
	margin: 0px;
	background: white;
	font-size: 62.5%;
}

body {
	width: 100%;
	height: auto;
	min-width: 1200px;
	height: 100%;
	font-weight: 400;
	font-size: 1.6rem;
	line-height: 1;
	position: relative;
	color: var(--color-font);
	padding: 0;
	margin: 0;
	background: white;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Yu Gothic", sans-serif;
}

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

main {
	display: block;
	padding: 0 0 0 0;
	margin: 90px 0 0 0;
	width: 100%;
	background: white;
	background-size: 100% auto;
	border: 0px solid green;
}

article,
section,
aside,
header,
footer {
	display: block;
	padding: 0;
	margin: 0;
	width: 100%;
	border: 0px solid #42985B;
}

img {
	width: 100%;
	height: auto;
	display: block;
	padding: 0;
	margin: 0 auto;
	vertical-align: bottom;
	image-rendering: -webkit-optimize-contrast;
}

figure {
	border: 0px solid olive;
	width: 100%;
	padding: 0;
	margin-bottom: 0;
}

.clearfix::after,
.row::after {
	content: '';
	display: block;
	clear: both;
}

iframe {
	width: 100%;
	vertical-align: bottom;
	margin: 0 auto;
}

ruby>rt {
	font-size: 0.3em;
	font-weight: 400;
}

hr {
	margin: 4.5rem auto;
	clear: both;
	display: block;
	width: 100%;
	height: 0;
	border-top: 2px solid var(--color-font);
}

hr.narrow {
	margin: 6vw auto;
	width: calc(15% - 1.5rem - 1.5rem);
	border-top: 10px dotted var(--color-font);
	opacity: 1;
}

i {
	font-weight: 600;
}

.none {
	display: none;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

.swiper-container li {
	list-style: none;
}

@media screen and (max-width: 1200px) {
	html {
		font-size: calc(62.5% * 0.950);
	}
}

@media screen and (max-width: 1024px) {
	html {
		font-size: calc(62.5% * 0.900);
	}

	body {
		min-width: 100%;
	}

	main {
		margin-top: 70px;
	}

	.pc {
		display: none;
	}

	.sp {
		display: block;
	}
}

@media screen and (max-width: 840px) {
	html {
		font-size: calc(62.5% * 0.875);
	}
}

@media screen and (max-width: 670px) {
	html {
		font-size: calc(62.5% * 0.850);
	}
}

@media screen and (max-width: 500px) {
	html {
		font-size: calc(62.5% * 0.8250);
	}
}

@media screen and (max-width: 400px) {
	html {
		font-size: calc(62.5% * 0.800);
	}
}









/*-----------------------------------------------------------------------------------------
00002 LAYOUT
----------------------------------------------------------------------------------------- */
.container-fluid {
	border: 0px solid maroon;
	width: 100%;
	min-width: 1200px;
	padding: 0;
	margin: 0 auto;
	background: transparent;
}

.container {
	border: 0px solid olive;
	width: 1200px;
	padding: 0;
	margin: 0 auto;
	background: transparent;
}

.container.narrow {
	max-width: 1000px;
}

.container.narrow-narrow {
	max-width: 900px;
}

.container.narrow-narrow-narrow {
	max-width: 800px;
}

.row {
	clear: both;
	padding: 0;
	margin: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
}

.flexbox {
	width: 100%;
	clear: both;
	display: flex !important;
	flex-wrap: wrap !important;
}

.col-01,
.col-02,
.col-03,
.col-04,
.col-05,
.col-06,
.col-07,
.col-08,
.col-09,
.col-10,
.col-11,
.col-12 {
	border: 0px solid black;
	padding: 0 1.5rem;
	display: block;
	float: none;
	position: relative;
	height: auto;
	list-style: none;
}

.container-fluid .col-01,
.container-fluid .col-02,
.container-fluid .col-03,
.container-fluid .col-04,
.container-fluid .col-05,
.container-fluid .col-06,
.container-fluid .col-07,
.container-fluid .col-08,
.container-fluid .col-09,
.container-fluid .col-10,
.container-fluid .col-11,
.container-fluid .col-12 {
	padding: 0;
}

.col-01 {
	width: calc(100% / 12 * 1);
}

.col-02 {
	width: calc(100% / 12 * 2);
}

.col-03 {
	width: calc(100% / 12 * 3);
}

.col-04 {
	width: calc(100% / 12 * 4);
}

.col-05 {
	width: calc(100% / 12 * 5);
}

.col-06 {
	width: calc(100% / 12 * 6);
}

.col-07 {
	width: calc(100% / 12 * 7);
}

.col-08 {
	width: calc(100% / 12 * 8);
}

.col-09 {
	width: calc(100% / 12 * 9);
}

.col-10 {
	width: calc(100% / 12 * 10);
}

.col-11 {
	width: calc(100% / 12 * 11);
}

.col-12 {
	width: calc(100% / 12 * 12);
}

@media screen and (max-width: 1200px) {
	.container {
		border-color: black;
		width: 100% !important;
	}

	.container-fluid {
		min-width: 100%;
	}

}

@media screen and (max-width: 1024px) {
	.container {
		padding: 0 2.5vw;
		border-color: green
	}

	.container-fluid {
		min-width: 100%;
	}

	.col-01,
	.col-02,
	.col-03,
	.col-04,
	.col-05,
	.col-06,
	.col-07,
	.col-08,
	.col-09,
	.col-10,
	.col-11,
	.col-12 {
		padding: 1.0rem;
	}

	.col-01 {
		width: calc(100% / 12 * 3);
	}

	.col-02 {
		width: calc(100% / 12 * 3);
	}

	.col-03 {
		width: calc(100% / 12 * 3);
	}

	.col-04 {
		width: calc(100% / 12 * 6);
	}

	.col-05 {
		width: calc(100% / 12 * 6);
	}

	.col-06 {
		width: calc(100% / 12 * 12);
	}

	.col-07 {
		width: calc(100% / 12 * 12);
	}

	.col-08 {
		width: calc(100% / 12 * 12);
	}

	.col-09 {
		width: calc(100% / 12 * 12);
	}

	.col-10 {
		width: calc(100% / 12 * 12);
	}

	.col-11 {
		width: calc(100% / 12 * 12);
	}

	.col-12 {
		width: calc(100% / 12 * 12);
	}
}

@media screen and (max-width: 840px) {
	.container {
		border-color: green
	}
}

@media screen and (max-width: 670px) {
	.container {
		border-color: pink;
		padding: 0 3.5vw;
	}
}

@media screen and (max-width: 500px) {
	.container {
		border-color: orange;
		padding: 0 2.5vw;
	}
}

@media screen and (max-width: 400px) {
	.container {
		border-color: purple;
		padding: 0 2.0vw;

	}
}

@media screen and (max-width: 370px) {
	.container {
		border-color: aqua
	}
}



.margin-top-none {
	margin-top: 0 !important;
}

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
00003 TYPOGRAPHY
----------------------------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6,
p,
th,
td {
	padding: 0;
	margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
th,
td,
li,
dt,
dd {
	line-height: 1.5;
	letter-spacing: 0;
	font-weight: 400;
	font-style: normal;
	color: olive;
}

strong,
b {
	font-weight: 600 !important;
}

span {
	font-weight: inherit;
}

small {
	font-size: 0.8em;
	font-weight: inherit;
}

li {
	list-style: none;
}

.txt-font {
	color: var(--color-font);
	;
}

.txt-red {
	color: var(--color-red);
	;
}

.txt-center {
	text-align: center !important;
}

.txt-right {
	text-align: right !important;
}

.txt-left {
	text-align: left !important;
}

.txt-large {
	font-size: 1.2em !important;
	font-weight: inherit
}

.txt-xlarge {
	font-size: 1.4em !important;
	font-weight: inherit
}

.txt-xxlarge {
	font-size: 1.8em !important;
	font-weight: inherit
}

.txt-xxxlarge {
	font-size: 2.2em !important;
	font-weight: inherit
}

.txt-small {
	font-size: 0.9em !important;
	font-weight: inherit
}

.txt-xsmall {
	font-size: 0.8em !important;
	font-weight: inherit
}

.txt-xxsmall {
	font-size: 0.7em !important;
	font-weight: inherit
}

.caution {
	color: gray;
	font-size: 1.3rem;
	line-height: 1.5;
	font-weight: 400;
}

.nothing {
	color: var(--color-key);
	font-size: 1.6rem;
	font-weight: 600;
	padding: 0;
	margin: 1em;
}

.nothing::before {
	content: '※'
}

.mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.signature {
	margin-top: 2.5em !important;
	text-align: right !important;
	line-height: 1.7 !important;
	letter-spacing: 0 !important;
}

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
00004 Aタグ
----------------------------------------------------------------------------------------- */
a {
	color: var(--color-key);
	text-decoration: none;
	transition: 0.2s;
}

a:hover {
	text-decoration: none;
	cursor: pointer;
	opacity: 0.5;
	color: var(--color-font);
}

a:visited {}

a:active {}

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
00005 Humberger
----------------------------------------------------------------------------------------- */
.hamburger,
.hamburger span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
}

.hamburger {
	position: fixed;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 34px;
	z-index: 1001;
	display: none;
}

.hamburger.active {
	z-index: 1003;
}

.hamburger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: var(--color-key);
	border-radius: 0.4rem;
}

.hamburger span:nth-of-type(1) {
	top: 0;
}

.hamburger span:nth-of-type(2) {
	top: 15px;
}

.hamburger span:nth-of-type(3) {
	bottom: 0;
}

.hamburger.active span {
	background-color: white;
}

.hamburger.active span:nth-of-type(1) {
	-webkit-transform: translateY(15px) rotate(-45deg);
	transform: translateY(15px) rotate(-45deg);
}

.hamburger.active span:nth-of-type(2) {
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu-bar02 0.8s forwards;
	animation: active-menu-bar02 0.8s forwards;
}

.hamburger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-15px) rotate(45deg);
	transform: translateY(-15px) rotate(45deg);
}

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

@media screen and (max-width: 1024px) {
	.hamburger {
		display: block;
	}
}

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

@media screen and (max-width: 670px) {
	.hamburger {
		transform: scale(0.8);
	}
}

@media screen and (max-width: 500px) {
	.hamburger {
		transform: scale(0.7);
		right: calc(20px * 0.7);
	}
}

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








/*-----------------------------------------------------------------------------------------
00006 Humberger の時のメニュー
----------------------------------------------------------------------------------------- */
#navigation {
	position: fixed;
	width: 100%;
	height: 100%;
	overflow-y: auto;
	top: 0;
	left: 0;
	z-index: 1002;
	border: 0px solid green;
	background: var(--color-key);
	background: var(--color-gradi);
	color: white;
	font-size: 2.0rem;
	line-height: 1.2;
	display: none;
}

#navigation.blocker {
	display: block
}

#navigation a {
	color: white;
	text-decoration: none;
}

.accordion {
	border: 0px solid red;
	height: 100%;
	width: 100%;
	padding: 10vw;
	margin: 0;
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.accordion ul.accordion-container {
	border: 0px solid black;
	width: 100%;
	max-width: 60.0rem;
	padding: 0;
}

.accordion ul.accordion-container li {
	border-top: 1px solid white;
	font-size: 2.0rem;
	line-height: 1.3;
	padding: 0;
	margin: 0;
	color: Red;
}

.accordion ul.accordion-container li a {
	display: block;
	padding: 0.75em 0.25em;
	margin: 0;
}

.accordion ul.accordion-container li.title {
	position: relative;
	cursor: pointer;
	color: white;
	padding: 0.75em 0.25em;
}

.accordion ul.accordion-container li.title::after {
	content: "";
	display: block;
	border-right: solid 3px #fff;
	border-top: solid 3px #fff;
	height: 13px;
	width: 13px;
	right: 20px;
	top: 40%;
	position: absolute;
	transform: rotate(135deg);
	transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
}

.accordion ul.accordion-container li.title.open::after {
	top: 45%;
	transform: rotate(-45deg);
}

.accordion ol.content {
	display: none;
	padding: 0 0 0 1.5em;
	border-top: 1px solid white;
}

.accordion ol.content li a {
	font-size: 0.9em;
	padding: 1em 0.5em 1em 1.5em;
}

.accordion ol.content li a::before {
	content: '\f0da';
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin-right: 0.4em;
	margin-left: -1em;
}

.accordion ul.accordion-container li a,
.accordion ul.accordion-container li.title {
	transition: 0.3s;
}

.accordion ul.accordion-container li a:hover,
.accordion ul.accordion-container li.title:hover {
	background: rgba(255, 255, 255, 0.3);
}

.accordion i {
	margin-right: 0.4em;
}

.accordion ul.accordion-container li:first-child {
	border-top: 5px solid white
}

.accordion ul.accordion-container li:last-child {
	border-bottom: 1px solid white
}

.accordion ol.content li:first-child {
	border-top: none;
}

.accordion ol.content li:last-child {
	border-bottom: none;
}

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

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

@media screen and (max-width: 820px) {
	.accordion ul.accordion-container li {
		font-size: 2.4rem;
	}

	.accordion ol.content {
		padding: 0 0 0 1.5em;
	}

	.accordion ol.content li a {
		font-size: 0.8em;
	}
}

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

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








/*-----------------------------------------------------------------------------------------
00007 Globalメニュー
----------------------------------------------------------------------------------------- */
.navigation {
	width: calc(100% - 26.0rem);
	height: 90px;
	justify-content: flex-end;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	border: 0px solid red;
	padding: 0;
	margin: 0;
}

.navigation ul.upper i {
	margin-right: 0.3em;
}

.navigation ul.upper {
	justify-content: flex-end;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	border: 0px solid red;
	padding: 0;
	margin: 0;
	width: 100%;
}

.navigation ul.upper li {
	border: 0px solid red;
	padding: 0;
	margin: 0;
	width: auto;
	padding: 0 0.5em;
	font-size: 1.5rem;
	line-height: 1;
}

.navigation ul.upper li.banner {
	width: 20.0rem;
}

.navigation ul.upper li.banner-line img {
	height:3.8rem;
	width:auto;
}

.navigation ul.upper li a {
	color: var(--color-key);
	display: block;
}

.navigation ul.upper li a i {
	color: #ff9000;
}

nav.navbar a,
nav.global a {
	text-decoration: nonne;
}

nav.global {
	padding: 0;
	margin: 0;
	border: 0px solid green;
	width: 100%;
}

nav.global ul {
	border: 0px solid blue;
	justify-content: flex-end;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}

nav.global ul li {
	font-size: 1.8rem;
	padding: 0;
	margin: 0;
	line-height: 1.2;
	position: relative;
}

nav.global ul li span {
	padding: 0 1em;
	display: block;
	border-left: 1px solid var(--color-key);
}

nav.global ul li a {
	font-weight: 600;
}

.dropdown {
	overflow: hidden;
	border: 0px solid red;
}

.dropdown .dropbtn {
	font-size: inherit;
	border: none;
	outline: none;
	padding: 0 1em;
	margin: 0;
	line-height: 1.2;
	background: transparent;
	color: var(--color-key);
	border-left: 1px solid var(--color-key);
	font-weight: 600;
}

.dropdown-content {
	position: absolute;
	top: 0;
	left: 100%;
	transform: translate(-100%, 0%);
	z-index: 1;
	font-size: inherit;
	line-height: inherit;
	margin: 0.5em 0 0 0;
	padding: 1em 0 0 0 !important;
	background: transparent;
	min-width: 20em;
	display: none;
	border: 0px solid red;
}

nav.global ul li .dropdown-content li {
	width: auto;
	background: var(--color-key);
	margin: 1px 0;
}

nav.global ul li .dropdown-content li a {
	padding: 0.75em;
	display: block;
	width: 100%;
	height: 100%;
	color: white;
	font-weight: 400;
}

.dropdown:hover {
	cursor: pointer;
}

.dropdown:hover .dropdown-content {
	display: block;
	opacity: 1 !important;
}

nav.global ul li a:hover {
	color: var(--color-blue);
	!important
}

nav.global ul li span,
.dropdown-content {
	padding: 0 1.25em;
}

nav.global ul li:first-child span {
	border: none;
}

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
00008 LOGO
----------------------------------------------------------------------------------------- */
.btn-logo {
	border: 0px solid red;
	max-width: 26.0rem;
	height: auto;
	display: block;
	padding: 0;
	margin: 0;
}

.btn-logo a {
	border: 0px solid green;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: .5rem 0;
	margin: 0;
}

.btn-logo span {
	display: none;
}






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

@media screen and (max-width: 1024px) {
	.btn-logo {
		margin: 0 auto;
	}
}

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

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

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

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









/*-----------------------------------------------------------------------------------------
00009 HEADER
----------------------------------------------------------------------------------------- */
header {
	background: white;
	padding: 0 1.5rem;
	margin: 0;
	position: fixed;
	z-index: 100;
	top: 0;
	width: 100%;
	height: 90px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

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

@media screen and (max-width: 1024px) {
	header {
		height: 70px;
	}

	header .btn-logo {
		height: 70px;
		max-width: 22.0rem;
		margin: 0;
	}
}

@media screen and (max-width: 840px) {
	header .btn-logo {
		margin: 0 0;
	}
}

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

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

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









/*-----------------------------------------------------------------------------------------
00010 FOOTER
----------------------------------------------------------------------------------------- */
footer {
	padding: 6.0rem 0 9.0rem;
	background: var(--color-key);
}

address {
	color: white;
	font-size: 1.4rem;
	line-height: 1.5;
	padding: 0;
	margin: 4.5rem 0 0 0;
	width: fit-content;
}

address span {
	display: block;
	margin-top: 1em;
	letter-spacing: 0.1em;
}

dl.link {
	display: block;
	padding: 0;
	margin: 0;
	width: 100%;
}

dl.link b {
	font-size: 1.3em;
}

dl.link dt {
	display: block;
	padding: 0;
	margin: 0;
	width: 100%;
	color: white;
	font-siZe: 1.2rem;
	line-height: 1.5;
}

/* dl.link li {
	max-width: 26.0rem;
	font-siZe: 1.2rem;
	line-height: 1.4;
	display: block;
	text-align: left;
	color: white;
	padding: 0;
	margin: 0;
}

dl.link li a {
	display: block;
	padding: 1.0rem 1.0rem 0.5rem 0;
	margin: 0;
} */

dl.link li {
	max-width: 26.0rem;
	width: auto;
	height: 6.0rem;
	font-siZe: 1.2rem;
	line-height: 1.4;
	display: block;
	text-align: left;
	color: white;
	padding: 0;
	margin: 0 0.5rem 0 0;
}

dl.link li a {
	display: block;
	padding: 0.5rem 1.0rem;
	margin: 0.5rem 0;
	border: 0pt solid white;
	width: auto;
	height: 100%;
	background: white;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

dl.link li a img {
	width: auto;
	height: 100%;
	display: block;
	padding: 5px;
	background: white;
}


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

@media screen and (max-width: 1024px) {
	footer {
		padding: 6.0rem 0;
	}

	footer .col-12,
	footer .col-07,
	footer .col-05 {
		width: 55%;
		margin-left: auto;
		margin-right: auto;
	}

	footer .col-07 {
		display: none;
	}

	address {
		margin: 1.5rem auto;
		width: fit-content;
		text-align: center;
	}
}

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

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

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

	footer .col-12,
	footer .col-07,
	footer .col-05 {
		width: 100%;
	}
}

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









/*-----------------------------------------------------------------------------------------
20001 SIDEBAR
----------------------------------------------------------------------------------------- */
aside.sidebar {}

aside.sidebar .widget {
	padding: 0;
	margin: 0;
	background: transparent;
}

aside.sidebar h4 {
	border-top: 5px solid var(--color-key);
	border-bottom: 1px double var(--color-key);
	color: var(--color-key);
	width: 100%;
	padding: 0.5em;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	font-size: 2.2rem;
	font-weight: 500;
	font-family: "Roboto", sans-serif;
}

aside.sidebar ul {
	padding: 0;
	margin: 0 0 6.0rem 0;
	width: 100%;
}

aside.sidebar ul li {
	border-bottom: 1px dashed #aaa;
	padding: 0.5em 0.1em;
	margin: 0;
	list-style: none;
	width: 100%;
	position: relative;
	font-size: 1.5rem;
	line-height: 1.6;
	color: var(--color-font);
	transition: 0.3s;
}

aside.sidebar ul li a {
	text-decoration: none;
	display: inline-block;
	padding: 0 0 0 1em;
	margin: 0;
	color: var(--color-font);
	position: relative;
}

aside.sidebar ul li a::before {
	content: '\f0da';
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	color: var(--color-key);
	font-size: inherit;
}

aside.sidebar ul li span.post-date {
	font-size: 1.1rem;
	display: block;
	text-align: left;
	padding: 0.25em 0 0 0;
	margin-left: 1.25em;
	color: var(--color-font);
	opacity: 0.7;
}

aside.sidebar ul li:hover {
	background: rgba(0, 50, 83, 0.1);
	opacity: 1 !important;
}

aside.sidebar ul li a:hover {
	opacity: 1 !important;
}

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

@media screen and (max-width: 1024px) {
	aside.sidebar {
		width: 100%;
		padding-left: 0;
	}
}

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

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

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

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









/*-----------------------------------------------------------------------------------------
20002 pagination
----------------------------------------------------------------------------------------- */
.pagination {
	border: 0px solid black;
	width: 100%;
	padding: 5vw 0;
	margin: 0;
}

.archive .pagination {
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.pagination ul.page-numbers {
	width: 100%;
	padding: 0;
	margin: 0;
	display: block;
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.pagination li {
	list-style: none;
}

a.page-numbers,
span.page-numbers {
	border: 0px solid black;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 30px;
	height: 30px;
	text-decoration: none;
	margin: 4px;
	font-size: 12px;
	line-height: 1;
	font-weight: 400;
	background: var(--color-key);
	border: 1px solid var(--color-key);
	color: white;
}

span.page-numbers,
a.prev.page-numbers,
a.next.page-numbers {
	background: transparent;
	color: var(--color-key);
}

a.prev.page-numbers,
a.next.page-numbers {
	width: auto;
	padding-left: 8px;
	padding-right: 8px;
	border: none;
}

span.page-numbers.dots {
	border: none;
}

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

@media screen and (max-width: 1024px) {
	.navigation {
		display: none;
	}
}

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

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

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

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









/*-----------------------------------------------------------------------------------------
20003 ページャー
----------------------------------------------------------------------------------------- */
.pager {
	padding: 0;
	margin: 2.5vw 0;
	display: block;
	height: auto;
	justify-content: center;
	display: flex;
	flex-wrap: wrap;
	border: 0px solid red;
}

.screen-reader-text {
	display: none;
}

.pager .navigation {
	width: 100%;
	justify-content: flex-start;
	display: flex;
	flex-wrap: wrap;
	border: 0px solid green;
}

.nav-links {
	padding: 0;
	margin: 0;
	display: block;
	width: 100%;
	border: 0px solid blue;
}

.nav-links .nav-previous,
.nav-links .nav-next {
	width: auto;
	display: block;
	padding: 0.5em 0;
	font-size: 1.4rem;
	line-height: 1.3;
	transition: 0.5s;
	color: inherit
}

.nav-links .nav-previous a,
.nav-links .nav-next a {
	color: var(--color-key)
}

.nav-links .nav-previous::before,
.nav-links .nav-next::before {
	content: '\f137';
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin: 0 0.2em;
	color: var(--color-key)
}

.nav-links .nav-next::before {
	content: '\f138';
}

.nav-links .nav-previous:hover,
.nav-links .nav-next:hover {
	opacity: 0.5;
}

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

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
20004 404
----------------------------------------------------------------------------------------- */
.not-found {
	padding: 10vw 0;
	border-bottom: 1px solid #ddd;
}

.not-found-message {
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	overflow: hidden;
}

.not-found-message span {
	display: block;
	width: 100%;
	text-align: center;
	color: var(--color-key);
	line-height: 1;
	font-size: 16px;
	text-align: center;
	padding: 0;
	margin: 0;
	font-weight: 500;
	font-family: 'Oswald', sans-serif;
}

.not-found-message span:first-child {
	font-size: 25vw;
	padding: 0 0 0 0;
}

.not-found-message span:nth-child(2) {
	font-size: calc(25vw * 0.33);
	padding: 0 0 0 0;
}

.not-found-message span:last-child {
	font-size: calc(25vw * 0.08);
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Yu Gothic", sans-serif;
	padding: 0.5em 0 0 0;
}


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

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

@media screen and (max-width: 840px) {
	.not-found {
		padding: 20vw 0;
	}

	.not-found-message span:first-child {
		font-size: 30vw;
	}

	.not-found-message span:nth-child(2) {
		font-size: calc(30vw * 0.33);
	}

	.not-found-message span:last-child {
		font-size: calc(30vw * 0.08);
	}

}

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

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

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








/*-----------------------------------------------------------------------------------------
20005 ぱんくず
----------------------------------------------------------------------------------------- */
.pankuzu {
	width: 100%;
	padding: 0.75em 0;
	margin: 0 auto;
	font-size: 1.2rem;
	text-align: left;
	background: #f5f5f5;
}

.pankuzu span {
	font-size: inherit;
	color: inherit;
	line-height: 1.3;
	margin-right: 0.5em;
}

.pankuzu a {
	color: inherit;
	text-decoration: none;
}

.pankuzu .col-12 {
	padding-top: 0;
	padding-bottom: 0;
}

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
30001 ARCHIVE
----------------------------------------------------------------------------------------- */
.list-archive {
	border: 0px solid red;
	padding: 0 4.5rem 0 0;
	margin: 0;
}

.list-archive a {
	display: block;
	border: 0px solid green;
}

.list-archive a:hover {
	opacity: 1;
}

.list-archive li {
	border-bottom: 1px solid #ddd;
	padding: 3.0rem 1.5rem;
	margin: 0;
	transition: 0.5s;
}

.list-archive li:hover {
	background: #f5f5f5;
}

.list-archive li:first-child {
	border-top: 1px solid #ddd;
}

.list-archive h2 {
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	padding: 0;
	margin: 0;
	color: var(--color-key)
}

.list-archive .date {
	font-size: 1.4rem;
	line-height: 1;
	padding: 0;
	margin: 1.5em 0;
	display: block;
	text-align: right;
	color: var(--color-font);
	border: 0px solid red;
}

.list-archive p {
	font-size: 1.4rem;
	line-height: 1.7;
	padding: 0;
	margin: 0;
	color: var(--color-font)
}

.list-archive dl {
	border: 0px solid red;
	justify-content: space-between;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	marign: 0;
}

.list-archive dl dt {
	border: 0px solid green;
	padding: 0;
	marign: 0;
	width: 25%;
}

.list-archive dl dd {
	border: 0px solid blue;
	padding: 0;
	marign: 0;
	width: calc(75% - 1.5rem);
}


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

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

@media screen and (max-width: 840px) {
	.list-archive {
		padding-right: 0;
	}
}

@media screen and (max-width: 670px) {
	.btn-zennbunn {
		padding: 0.4em 2em 0.45em;
		margin: 3.0rem auto;
	}
}

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

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









/*-----------------------------------------------------------------------------------------
30002 .page-title
----------------------------------------------------------------------------------------- */
.page-title {
	background: url('../img/common/bg-title.jpg') var(--color-key);
	background-position: top right;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 5vw 0;
	margin: 0;
	position: relative;
	z-index: 1;
}

.page-title h2 {
	padding: 0;
	margin: 0;
	letter-spacing: 0.2em;
	color: white;
	font-size: 5.0rem;
	line-height: 1.5;
	text-align: center;
	font-weight: 300;
	text-transform: uppercase
}

.page-title h2 span,
.page-title h2 small {
	display: block;
	font-size: inherit;
	font-weight: 200;
	letter-spacing: 0.2em;
	padding: 0;
	margin: 0;
}

.page-title h2 small {
	font-size: 0.5em;
	font-weight: 300;
}

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

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

@media screen and (max-width: 840px) {
	.page-title {
		padding: 10vw 0;
	}

	.page-title h2 {
		font-size: calc(5.0vw * 1.3);
	}
}

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

@media screen and (max-width: 500px) {
	.page-title h2 {
		font-size: calc(5.0vw * 1.5);
	}
}









/*-----------------------------------------------------------------------------------------
30003 .box-contents
----------------------------------------------------------------------------------------- */
.box-contents {
	border: 0px solid black;
	padding: 2.5vw 0;
	margin: 0;
}

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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
40001 frame-map
----------------------------------------------------------------------------------------- */
.frame-map {
	position: relative;
	padding-bottom: 56.25%;
	margin: 1.5rem 0 3.0rem 0;
	height: 0;
	overflow: hidden;
	border: 6px solid white;
	border-radius: 3.0rem;
	box-shadow: 1.0rem 1.0rem 2.0rem rgba(0, 0, 0, 0.2)
}

.frame-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 3.0rem;
}



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

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

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

@media screen and (max-width: 670px) {
	.frame-map {
		border-radius: 1.5rem;
	}
}

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

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









/*-----------------------------------------------------------------------------------------
40002 .btn-more
----------------------------------------------------------------------------------------- */
.btn-more {
	justify-content: flex-start;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 1.5rem 0;
	width: 100%;
}

.btn-more a {
	font-size: 1.6rem;
	line-height: 1.2;
	text-align: center;
	background: var(--color-font);
	color: white;
	padding: 0.75em 2.5em;
	margin: 0;
	display: block;
	text-indent: 0;
	letter-spacing: 0.05em;
	width: auto;
	border: 1px solid white;
}

.btn-more.center {
	justify-content: center;
}

.btn-more a.dark {
	background: var(--color-font);
}


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

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
40004 article.entry
----------------------------------------------------------------------------------------- */
article.entry {
	border: 0px dashed red;
	padding: 0 4.5rem 0 0;
	margin: 0;
}

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

@media screen and (max-width: 1024px) {
	article.entry {
		padding-right: 0;
	}
}

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

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

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









/*-----------------------------------------------------------------------------------------
40005 ul.list-news
----------------------------------------------------------------------------------------- */
ul.list-news li {
	padding: 0;
	margin: ;
}

ul.list-news li h6 a {
	display: flex;
	flex-wrap: wrap;
	font-size: 1.6rem;
	line-height: 1.5;
	margin: 1em 0
}

ul.list-news h6 span.date {
	display: block;
	width: 20%;
}

ul.list-news h6 span.text {
	display: block;
	width: 80%;
}

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

@media screen and (max-width: 1024px) {
	ul.list-news li h6 a {
		display: block;
		padding-top: 1em;
		border-top: 1px dashed var(--color-key);
	}

	ul.list-news h6 span.date {
		width: 100%;
		font-weight: 600;
	}

	ul.list-news h6 span.text {
		width: 100%;
	}
}

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

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

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

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









/*-----------------------------------------------------------------------------------------
40006 ul.zgzg
----------------------------------------------------------------------------------------- */
ul.zgzg dl {
	border: 0px solid red;
	padding: 0;
	margin: 0 0 calc(20rem + 6.0rem) 0;
	width: 100%;
	justify-content: space-between;
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
}

ul.zgzg dl dt {
	border: 0px solid green;
	padding: 0;
	margin: 0;
	width: calc(100% / 12 * 10);
	border-radius: 3.0rem;
	border: 6px solid white;
	box-shadow: 1.0rem 1.0rem 2.0rem rgba(0, 0, 0, 0.2);
	overflow: hidden;
	order: 1;
	position: relative;
	z-index: 1
}

ul.zgzg dl dd {
	border: 0px solid blue;
	padding: 0;
	margin: 0;
	width: calc(100% / 12 * 8);
	margin-left: calc(100% / 12 * 6 * -1);
	margin-bottom: -20rem;
	order: 2;
	position: relative;
	z-index: 2
}

ul.zgzg blockquote {
	background: rgba(255, 255, 255, 0.9);
	padding: 3.0rem;
	margin: 0;
	position: relative;
}

ul.zgzg blockquote p {
	font-size: 1.4rem;
	line-height: 1.8;
	margin: 0 0 1em 0
}

ul.zgzg li:nth-child(even) dl dt {
	order: 2;
	margin-left: calc(100% / 12 * 6 * -1);
}

ul.zgzg li:nth-child(even) dl dd {
	order: 1;
	margin-left: 0;
}

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

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

@media screen and (max-width: 840px) {
	ul.zgzg li {
		border-bottom: 1px dashed #ddd;
		padding-bottom: 3.0rem;
		margin-bottom: 3.0rem;
	}


	ul.zgzg dl {
		margin: 0;
		display: block;
	}

	ul.zgzg dl dt {
		width: 100%;
	}

	ul.zgzg dl dd {
		width: 100%;
		margin: 3.0rem 0 0 0;
	}

	ul.zgzg blockquote {
		padding: 1.5rem;
	}


	ul.zgzg li:nth-child(even) dl dt {
		margin-left: 0;
	}

}

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

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

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









/*-----------------------------------------------------------------------------------------
40007 .fixed-qr
----------------------------------------------------------------------------------------- */
.fixed-qr {
	box-shadow: 0.5rem 0.5rem 1.0rem rgba(0, 0, 0, 0.2);
	width: 10.0rem;
	position: fixed;
	top: 1.0rem;
	right: -11.0rem;
	z-index: 101;
	transition: 1.0s;
}


.fixed-qr.fixed {
	right: 1.0rem;
}

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

@media screen and (max-width: 1024px) {
	.fixed-qr {
		display: none;
	}
}

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

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

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

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









/*-----------------------------------------------------------------------------------------
40008 .movie-wrap
----------------------------------------------------------------------------------------- */
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	border: 4px solid #C4D8F0;
}

.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



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

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

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

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

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

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








/*-----------------------------------------------------------------------------------------
50001 TABLE
----------------------------------------------------------------------------------------- */
table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 1.0rem 0;
	background: yellow;
}

table th,
table td {
	font-size: 1.6rem;
	line-height: 1.3;
	padding: 0;
	text-align: left;
	vertical-align: middle;
	font-weight: 400;
	color: var(--color-font);
}

.frame-table {
	border-top: 4px solid #ccc;
	overflow: auto;
	margin: 1.0rem 0;
}

.frame-table table {
	width: 100%;
	min-width: 500px;
	border: 1px solid #ccc;
	margin: 0
}

.frame-table-txt {
	font-size: 1.2rem;
	color: var(--color-red);
	line-height: 1;
	display: block;
	padding: 0;
	margin: 0;
	display: none;
}


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

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

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

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

@media screen and (max-width: 840px) {
	table {
		width: 100%;
		min-width: 100%;
	}
}

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

@media screen and (max-width: 500px) {
	.frame-table {
		border: 6px solid rgba(183, 195, 205, 0.3);
	}

	.frame-table-txt {
		display: block;
	}
}

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





table.schedule {
	border-top:1px solid #0B3857;
	background:rgba(255, 255, 255, 0.8);
	margin:0;
	width:100%;
}

table.schedule th,
table.schedule td{
	border:1px solid #0B3857;
	background:transparent;
	padding:0.5em 0.75em;
	margin:0;
	font-size:1.8rem;
	font-weight:600;
	line-height:1.5;
	text-align: center;
	vertical-align: middle;
}

table.schedule th {
	background:rgba(11, 56, 87, 0.2);
}

table.schedule small {
	font-size:1.4rem;
	margin-left:0.4em;
}

.mon,
.tue,
.wed,
.thu,
.fri,
.sat,
.sun {
justify-content : center;
align-items : center;
display : flex;
flex-wrap : wrap;
padding:0;
margin:0 auto;
width:3.0rem;
height:3.0rem;
font-size:1.4rem;
line-height:1;
background:red;
color:white;
border-radius:50%;
}



.sat {
	background:rgba(85, 144, 228, 0.7);
}

.sun {
	background:rgba(219, 13, 86, 0.7);
}

.mon,
.tue,
.wed,
.thu,
.fri {
	background:rgba(21, 166, 143, 0.7);
}






.bg-green {
	background:rgba(0, 127, 0, 0.2) !important
}

.bg-orange {
	background:rgba(255, 165, 0, 0.2) !important
}

.bg-blue {
	background:rgba(85, 144, 228, 0.2) !important
}

.bg-red {
	background:rgba(255, 0, 0, 0.2) !important
}


/*-----------------------------------------------------------------------------------------
50002 gallery
----------------------------------------------------------------------------------------- */
.gallery {
	border: 0px solid red;
	display: flex;
	flex-wrap: wrap;
	pading: 0;
	margin: 1.5rem 0 0 -1.0rem;
	width: calc(100% + 1.0rem + 1.0rem)
}

.gallery li {
	border: 0px solid green;
	width: calc(100% / 12 * 4);
	padding: 1.0rem;
	margin: 0;
}

.gallery figure {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	overflow: hidden;
	border: 0.4rem solid white;
	box-shadow: 1.0rem 1.0rem 1.5rem rgba(0, 0, 0, 0.2);
}

.gallery figure img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.gallery li:first-child {
	width: 100%;
}

.gallery li:first-child figure {
	box-shadow: 1.0rem 1.0rem 2.0rem rgba(0, 0, 0, 0.2);
}

	.gallery figure a {
		pointer-events: none
	}

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

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

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

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

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

@media screen and (max-width: 670px) {
	.gallery {
		margin: 1.0rem 0 0 - 0.5rem;
		width: calc(100% + 0.5rem + 0.5rem)
	}

	.gallery li {
		width: calc(100% / 12 * 4);
		padding: 0.5rem;
		margin: 0;
	}

	.gallery figure {
		box-shadow: 0.25rem 0.25rem 0.75rem rgba(0, 0, 0, 0.2);
	}



}

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

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









/*-----------------------------------------------------------------------------------------
60001 #form
----------------------------------------------------------------------------------------- */
#form {
	padding: 0;
	margin: 0 auto;
	border: 0px solid red;
}

#form dl {
	padding: 0;
	margin: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #D9E3E7;
}

#form dl dt,
#form dl dd {
	font-size: 1.6rem;
	line-height: 1.5;
	padding: 1em;
	margin: 0;
	color: var(--color-font);
}

#form dl dt {
	width: 33.33333%;
	justify-content: flexd-start;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	background: rgba(217, 227, 231, 0.4);
}

#form dl dd {
	width: 66.66666%;
	justify-content: flex-start;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

#form p {
	margin: 1em 0;
	color: var(--color-font);
}

#form dl dt div {
	font-weight: 600;
}

.require {
	color: darkred;
	font-size: 0.8em;
	display: inline-block;
	width: fit-content;
	vertical-align: super;
	margin-left: 0.5em;
}

#form dl.last {
	border-bottom: 1px solid #D9E3E7;
}



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

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

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

@media screen and (max-width: 1024px) {
	#form {
		border-color: green;
	}
}

@media screen and (max-width: 840px) {
	#form {
		border-color: blue;
	}
}

@media screen and (max-width: 670px) {
	#form {
		border-color: orange;
	}

	#form dl dt,
	#form dl dd {
		width: 100%;
	}

	#form dl dd {
		padding-left: 0.5em;
		padding-right: 0.5em;
	}
}

@media screen and (max-width: 500px) {
	#form {
		border-color: pink;
	}
}

@media screen and (max-width: 400px) {
	#form {
		border-color: olive;
	}
}









#form input,
#form input[type="text"],
#form input[type="email"] {
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
}

#form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	background: transparent;
}

#form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	resize: none;
	padding: 0;
	border: 0;
	outline: none;
	background: transparent;
}

#form input[type="text"],
#form input[type="email"],
#form textarea,
#form select {
	width: 100% !important;
	border: 2px solid #D9E3E7;
	font-size: 1.5rem;
	line-height: 1.8;
	padding: 5px 15px;
	margin: 2.5px;
	color: #666;
	background: linear-gradient(#fafafa 0%, #fff 100%);
	border-radius: 2px;
}

#form input.tel-number {
	width: 5em !important;
}

#form textarea {
	height: 10em !important;
	width: 100%;
	border: 2px solid #D9E3E7;
}

#form input[type="button"] {
	border: none;
	background: #59493F;
	background: gradient(linear, center top, center bottom, from(#3f3d3d), to(#242323));
	background: -webkit-gradient(linear, center top, center bottom, from(#3f3d3d), to(#242323));
	background: -moz-linear-gradient(top, #3f3d3d, #242323);
	background: -ms-linear-gradient(top, #3f3d3d 0%, #242323 100%);
	background: -webkit-linear-gradient(#3f3d3d 0%, #242323 100%);
	text-shadow: none;
	font-size: 1.1rem;
	line-height: 1;
	color: white;
	cursor: pointer;
	outline: none;
	padding: 0.4em 1em 0.5em 1em;
	margin: 0 0.5em;
	width: 13em;
	border-radius: 20px;
	text-align: center;
}

#form input[type="submit"],
#form input[type="reset"] {
	border: none;
	background: #242323;
	background: linear-gradient(180deg, #3f3d3d 0%, #242323 100%);
	text-shadow: none;
	font-size: 1.8rem;
	line-height: 1;
	color: white;
	cursor: pointer;
	outline: none;
	letter-spacing: 0.01em;
	text-indent: 0.5em;
	padding: 1em 3em;
	width: calc(6em + 6em);
	border-radius: 4px;
	text-align: center;
}

#form input[type="submit"]:hover,
#form input[type="reset"]:hover {
	opacity: 0.5;
	transition: 0.8s;
}

#form .area-btn {
	border: 0px solid blue;
	padding: 0;
	margin: 60px 0;
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	background: transparent
}

.mw_wp_form .error {
	color: darkred !important;
	font-weight: 400;
	display: block;
	margin-top: 0;
	width: 100%;
	font-size: 0.7em !important;
}

.mw_wp_form .error:before {
	content: '※';
	margin-right: 0.2em;
}

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

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

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

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

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

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

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

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




.anker {
	border: 0px solid red;
	display: block;
	padding-top: 90px;
	margin-top: -90px;
	width:1px;
}








.btn-season {
	display: none;
}

@media screen and (max-width: 1024px) {
	.btn-season {
		justify-content: center;
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		background: white;
		position: fixed;
		top: 18px;
		right: 80px;
		width: auto;
		height: 38px;
		border-radius: 3px;
	}

	.btn-season a {
		background: #2E5823;
		width: 100%;
		height: 100%;
		justify-content: center;
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		padding: 0.1em 1em;
		color: white;
		font-size: 16px;
		line-height: 1;
		border-radius: 3px;
		font-weight:600;
	}
}

@media screen and (max-width: 670px) {
	.btn-season {
		top: 19px;
		right: 70px;
		width: auto;
		height: 36px;
	}


	.btn-season a {
		padding: 0.1em 0.75em;
		font-size: 13px;
	}
}

@media screen and (max-width: 500px) {
	.btn-season {
		right: 60px;
	}


	.btn-season a {
		font-size: 12px;
	}
}



.btn-line {
	display: none;
}

@media screen and (max-width: 1024px) {
	.btn-line {
		justify-content: center;
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		background: transparent;
		position: fixed;
		bottom: 20px;
		right: 20px;
		width: auto;
		height: 60px;
		z-index: 100;
	}

	.btn-line a {
		width: 100%;
		height: 100%;
		justify-content: center;
		align-items: center;
		display: flex;
		flex-wrap: wrap;
	}

	.btn-line a img {
		width: auto;
		height: 100%
	}
}

@media screen and (max-width: 670px) {
	.btn-line {

		bottom: 15px;
		right: 15px;
	}
}

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





/**
 * Swiper 6.3.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 30, 2020
 */

@font-face {
  font-family: 'swiper-icons';
  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA') format('woff');
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}
.swiper-button-lock {
  display: none;
}
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}
.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
@charset 'UTF-8';
/* Slider */
.slick-loading .slick-list
{
    background: #fff url('./ajax-loader.gif') center center no-repeat;
}

/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

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

.slick-prev
{
    left: -25px;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: '←';
}
[dir='rtl'] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: -25px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}
.slick-next:before
{
    content: '→';
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}
body.lb-disable-scrolling {
  overflow: hidden;
}

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 60000;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none;
}

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 70000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
  outline: none;
}

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;

  /* Image border */
  border: 4px solid white;
}

.lightbox a img {
  border: none;
}

.lb-outerContainer {
  position: relative;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;

  /* Background color behind image.
     This is visible during transitions. */
  background-color: white;
}

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../images/loading.gif) no-repeat;
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}

.lb-container > .nav {
  left: 0;
}

.lb-nav a {
  outline: none;
  background-image: url('data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
}

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block;
}

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(../images/prev.png) left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(../images/next.png) right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-data {
  padding: 0 4px;
  color: #ccc;
}

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em;
}

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: bold;
  line-height: 1em;
}

.lb-data .lb-caption a {
  color: #4ae;
}

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999999;
}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}
@charset "UTF-8";

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

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

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

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

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

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

10001 SINGLE - TYPOなど
10002 SINGLE - 画像など

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









/*-----------------------------------------------------------------------------------------
10001 SINGLE - TYPOなど
----------------------------------------------------------------------------------------- */
.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6 {
	padding: 0;
	margin: 1.0em 0;
	color: var(--color-font);
	text-align: left;
}

.entry h1::after,
.entry h2::after,
.entry h3::after,
.entry h4::after,
.entry h5::after,
.entry h6::after {
	display: none;
}

.entry h1::before,
.entry h2::before,
.entry h3::before,
.entry h4::before,
.entry h5::before,
.entry h6::before {
	display: none;
}

.entry a {
	color: var(--color-key);
	text-decoration: underline
}

.entry hr {
	margin: 5vw auto;
	clear: both;
}

.entry h1 {
	font-size: 3.0rem;
	font-weight: 500;
	line-height: 1.3;
}

.entry h2,
.entry h3 {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 500;
}

.entry h3 {
	font-weight: 400;
}

.entry h4 {
	font-size: 1.8rem;
	line-height: 1.7;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
}

.entry h5,
.entry h6 {
	font-size: 1.4rem;
	line-height: 1.7;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Yu Gothic", sans-serif;
	font-weight: 500;
}

.entry h5 {
	font-weight: 600;
}

.entry h6 {
	font-weight: 400;
}

.entry strong {
	font-weight: 600 !important;
	color: inherit;
}

.entry p {
	font-size: 1.6rem;
	line-height: 2;
	padding: 0;
	margin: 1em 0;
	color: var(--colot-font);
}

.entry ul,
.entry ol {
	font-size: 1.5rem;
	padding: 0 0 0 1.8em;
	margin: 2em 0;
}

.entry ul li,
.entry ol li {
	list-style-type: disc;
	list-style-position: outside;
	font-size: inherit;
	line-height: 1.5;
	padding: 0;
	margin: 1em 0;
	color: var(--colot-font);
}

.entry ol li {
	list-style-type: decimal;
}


.entry blockquote {
	border: 4px solid #f7f7f7;
	background: #fcfcfc;
	padding: 4.5rem;
	margin: 3.0rem 0;
}

.entry blockquote *:first-child {
	margin-top: 0;
}

.entry blockquote *:last-child {
	margin-bottom: 0;
}

.entry pre {
	font-size: 1.6rem;
	color: #333;
	background: #f3f3f3;
	padding: 1.0em 0.5em;
	margin: 1em 0;
	width: 100%;
	overflow: auto;
	border-right: 1em solid #ddd;
	border-left: 1em solid #ddd;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

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

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

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

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

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









.entry .title {
	display: block;
	padding: 0;
	margin: 0 0 3.0rem 0;
}

.entry .title h1 {
	font-size: 4.0rem;
	border-bottom: 4px solid var(--color-font);
	padding: 0 0 0.25em 0;
	margin: 0 0 0.25em 0;
}

.entry time {
	display: block;
	padding: 0;
	margin: 0;
	height: auto;
	display: flex;
	flex-wrap: wrap;
}

.entry .date,
.entry .category-name {
	font-size: 1.4rem;
	margin-right: 1em;
	line-height: 1;
	display: block;
}

.entry .category-name a {
	text-decoration: none;
	color: var(--color-font);
	font-weight: 600;
}

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

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

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

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

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









/*-----------------------------------------------------------------------------------------
10002 SINGLE - 画像など
----------------------------------------------------------------------------------------- */
.entry img {
	width: auto;
	max-width: 100%;
	height: auto;
	padding: 0;
	margin: 5px 0;
}

.entry img.size-thumbnail {}

.entry img.size-medium {}

.entry img.size-large {}

.entry img.size-full {}

.entry img.alignleft {
	float: left;
	margin: 15px 15px 15px 0 !important;
	clear: both;
}

.entry img.alignright {
	float: right;
	margin: 15px 0 15px 15px !important;
	clear: both;
}

.entry img.aligncenter {
	margin: 15px auto !important;
	clear: both;
	display: block;
}

.entry .wp-caption {
	border: 0px solid green;
	display: block;
	width: 100% !important;
}

.entry .wp-caption-text {
	background: white;
	display: block;
	font-size: 14px;
	line-height: 1.4;
	padding: 0.5em 0;
	margin: 1em 0 2em;
	text-align: center;
	color: #999;
	display: inline-block;
}

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

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

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

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

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





