@charset "UTF-8";

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%
}

body {
	line-height: 1
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block
}

dd,
dl,
dt,
ol,
ul {
	list-style: none
}

nav ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
	content: "";
	content: none
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline
}

a,
img {
	vertical-align: top
}

a img {
	border: none
}

a:hover img {
	opacity: 0.7
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block
}

ins {
	background: #ff9 repeat center center;
	color: #000;
	text-decoration: none
}

mark {
	background: #ff9 repeat center center;
	color: #000;
	font-style: italic;
	font-weight: bold
}

del {
	text-decoration: line-through
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0
}

input,
select {
	margin: 0;
	padding: 0;
	vertical-align: middle
}

html {
	font-size: 62.5%;
	height: 100%
}

body {
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	color: #000;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.5;
	width: 100%;
	min-width: 1080px;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	word-break: break-word;
	overflow-wrap: break-word
}

@media only screen and (max-width:1100px) {
	body {
		min-width: 0
	}
}

body.fixed-body {
	overflow: hidden;
	position: fixed
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
	box-sizing: border-box
}

a {
	transition: all 0.3s;
	text-decoration: none;
	outline-offset: -2px
}

img {
	max-width: 100%
}

a:link,
a:visited {
	color: #323232
}

a:active,
a:hover {
	color: #5CAB75;
	transition: all 0.3s
}

.wrapper {
	display: flex;
	flex-direction: column
}

#contents {
	overflow: hidden;
	flex: 1
}

@media (-ms-high-contrast:none) {
	#contents {
		flex: 1 0 auto
	}
}

.main {
	margin: 4.8rem 0 12.8rem
}

@media only screen and (max-width:1300px) {
	.main {
		margin: 4.8rem 0 4.8rem
	}
}

@media only screen and (max-width:1300px) and (max-width:768px) {
	.main {
		margin: 3.2rem 0 4.8rem
	}
}

.main:has(.static-wrap.border) {
	margin-bottom: 0
}

.inner-l {
	width: 1280px;
	margin: 0 auto
}

@media only screen and (max-width:1380px) {
	.inner-l {
		width: calc(100% - 80px);
		max-width: 1280px
	}
}

@media only screen and (max-width:1300px) {
	.inner-l {
		width: 92%
	}
}

.inner {
	width: 1080px;
	margin: 0 auto
}

@media only screen and (max-width:1380px) {
	.inner {
		width: calc(100% - 80px);
		max-width: 1080px
	}
}

@media only screen and (max-width:1100px) {
	.inner {
		width: 92%
	}
}

.inner-s {
	width: 720px;
	margin: 0 auto
}

@media only screen and (max-width:1380px) {
	.inner-s {
		width: calc(100% - 80px);
		max-width: 720px
	}
}

@media only screen and (max-width:740px) {
	.inner-s {
		width: 92%
	}
}

.pc-block {
	display: block !important
}

.pc-block-inline {
	display: inline-block !important
}

.pc-block-flex {
	display: flex !important
}

@media only screen and (max-width:768px) {

	.pc-block,
	.pc-block-flex,
	.pc-block-inline {
		display: none !important
	}
}

.sp-block,
.sp-block-flex,
.sp-block-inline {
	display: none !important
}

@media only screen and (max-width:768px) {
	.sp-block {
		display: block !important
	}

	.sp-block-inline {
		display: inline-block !important
	}

	.sp-block-flex {
		display: flex !important
	}
}

svg {
	width: 100%;
	height: auto
}

em,
strong {
	font-weight: bold
}

.mt-0 {
	margin-top: 0px !important
}

.mb-0 {
	margin-bottom: 0px !important
}

.mr-0 {
	margin-right: 0px !important
}

.ml-0 {
	margin-left: 0px !important
}

.mx-0 {
	margin-left: 0px !important;
	margin-right: 0px !important
}

.my-0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important
}

.p-0 {
	padding: 0px !important
}

.pt-0 {
	padding-top: 0px !important
}

.pb-0 {
	padding-bottom: 0px !important
}

.pr-0 {
	padding-right: 0px !important
}

.pl-0 {
	padding-left: 0px !important
}

.px-0 {
	padding-left: 0px !important;
	padding-right: 0px !important
}

.py-0 {
	padding-top: 0px !important;
	padding-bottom: 0px !important
}

@media only screen and (max-width:768px) {
	.mt-sp-0 {
		margin-top: 0px !important
	}

	.mb-sp-0 {
		margin-bottom: 0px !important
	}

	.mr-sp-0 {
		margin-right: 0px !important
	}

	.ml-sp-0 {
		margin-left: 0px !important
	}

	.mx-sp-0 {
		margin-left: 0px !important;
		margin-right: 0px !important
	}

	.my-sp-0 {
		margin-top: 0px !important;
		margin-bottom: 0px !important
	}

	.p-sp-0 {
		padding: 0px !important
	}

	.pt-sp-0 {
		padding-top: 0px !important
	}

	.pb-sp-0 {
		padding-bottom: 0px !important
	}

	.pr-sp-0 {
		padding-right: 0px !important
	}

	.pl-sp-0 {
		padding-left: 0px !important
	}

	.px-sp-0 {
		padding-left: 0px !important;
		padding-right: 0px !important
	}

	.py-sp-0 {
		padding-top: 0px !important;
		padding-bottom: 0px !important
	}
}

.post-ttl {
	color: #323232;
	font-size: 4.2rem;
	font-weight: bold;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.post-ttl {
		font-size: 3.2rem
	}
}

.post-ttl span {
	vertical-align: middle;
	margin-left: 1em
}

.post-date-block {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin: 1.6rem 0
}

.post-date-block .icon-new {
	margin: 0 1.6rem
}

.post-date {
	text-align: right;
	display: block
}

.icon-post-block {
	display: flex;
	flex-wrap: wrap
}

@media only screen and (max-width:768px) {
	.icon-post-block {
		font-size: 1.4rem
	}
}

.icon-post-block {
	margin-bottom: 1.6rem
}

.post-sttl-large,
.wysiwyg h2 {
	font-size: 3.2rem;
	font-weight: bold;
	padding: 1.6rem 0;
	margin: 6.4rem 0 2.4rem;
	position: relative
}

@media only screen and (max-width:768px) {

	.post-sttl-large,
	.wysiwyg h2 {
		margin: 4.8rem 0 2.4rem
	}
}

.post-sttl-large:after,
.wysiwyg h2:after {
	content: "";
	background: #5CAB75;
	display: block;
	width: 6rem;
	height: 0.2rem;
	position: absolute;
	left: 0;
	bottom: 0
}

@media only screen and (max-width:768px) {

	.post-sttl-large,
	.wysiwyg h2 {
		font-size: 2.6rem
	}
}

.post-sttl-small,
.wysiwyg h3 {
	color: #5CAB75;
	font-size: 2.6rem;
	font-weight: bold;
	margin: 4.8rem 0 2.4rem
}

@media only screen and (max-width:768px) {

	.post-sttl-small,
	.wysiwyg h3 {
		font-size: 2.2rem
	}
}

.wysiwyg h4 {
	color: #fff;
	background: #5CAB75;
	font-size: 2rem;
	padding: 1.6rem;
	margin: 4rem 0 2.4rem
}

@media only screen and (max-width:768px) {
	.wysiwyg h4 {
		font-size: 1.8rem
	}
}

.wysiwyg h5 {
	border-left: 7px solid #5CAB75;
	font-size: 1.8rem;
	padding: 0.8rem 1.6rem;
	margin: 3.6rem 0 2.4rem
}

@media only screen and (max-width:768px) {
	.wysiwyg h5 {
		font-size: 1.6rem
	}
}

.wysiwyg h6 {
	font-size: 1.8rem;
	font-weight: bold;
	margin: 3rem 0 2.4rem
}

@media only screen and (max-width:768px) {
	.wysiwyg h6 {
		font-size: 1.6rem
	}
}

.post-pht {
	margin-bottom: 1.6rem
}

.post-pht a {
	display: block
}

.post-pht>div {
	width: 100%;
	height: auto;
	max-height: 600px;
	text-align: center
}

@media only screen and (max-width:420px) {
	.post-pht>div {
		max-height: 300px
	}
}

.post-pht img {
	height: auto;
	max-height: 600px;
	max-width: 100%;
	width: auto;
	border-radius: 20px
}

@media only screen and (max-width:420px) {
	.post-pht img {
		max-height: 300px
	}
}

.post-pht figcaption {
	font-size: 1.4rem;
	text-align: center;
	display: block;
	margin-top: 0.8rem
}

.two-post-pht {
	display: flex;
	justify-content: space-between
}

.two-post-pht .post-pht {
	vertical-align: top;
	width: 48%
}

.three-post-pht {
	display: flex;
	justify-content: space-between
}

.three-post-pht .post-pht,
.three-post-pht>figure {
	vertical-align: top;
	width: 31%;
	margin-bottom: 1.6rem
}

.three-post-pht .post-pht>div,
.three-post-pht>figure>div {
	width: 100%;
	height: auto;
	max-height: 600px;
	text-align: center
}

.three-post-pht .post-pht>div img,
.three-post-pht>figure>div img {
	height: auto;
	max-height: 600px;
	max-width: 100%;
	width: auto;
	border-radius: 20px
}

.four-post-pht {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.four-post-pht .post-pht,
.four-post-pht figure {
	vertical-align: top;
	width: 23%
}

@media only screen and (max-width:768px) {

	.four-post-pht .post-pht,
	.four-post-pht figure {
		width: 48%
	}
}

.four-post-pht figure {
	margin-bottom: 1.6rem
}

.four-post-pht figure a {
	display: block
}

.four-post-pht figure>div {
	width: 100%;
	height: auto;
	max-height: 600px;
	text-align: center
}

@media only screen and (max-width:420px) {
	.four-post-pht figure>div {
		max-height: 300px
	}
}

.four-post-pht figure img {
	height: auto;
	max-height: 600px;
	max-width: 100%;
	width: auto;
	border-radius: 20px
}

@media only screen and (max-width:420px) {
	.four-post-pht figure img {
		max-height: 300px
	}
}

.four-post-pht figure figcaption {
	font-size: 1.4rem;
	text-align: center;
	display: block;
	margin-top: 0.8rem
}

.post-pht-txt-row {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.post-pht-txt-row.reverse {
	flex-direction: row-reverse
}

.post-pht-txt-row .post-pht {
	width: 48%
}

@media only screen and (max-width:768px) {
	.post-pht-txt-row .post-pht {
		width: 100%
	}
}

.post-pht-txt-row>div.wysiwyg {
	width: 48%
}

@media only screen and (max-width:768px) {
	.post-pht-txt-row>div.wysiwyg {
		width: 100%
	}
}

.post-pht-txt-row>div.wysiwyg blockquote,
.post-pht-txt-row>div.wysiwyg h2,
.post-pht-txt-row>div.wysiwyg h3,
.post-pht-txt-row>div.wysiwyg h4,
.post-pht-txt-row>div.wysiwyg h5,
.post-pht-txt-row>div.wysiwyg h6 {
	display: flex;
	margin-top: 0
}

.post-pht-txt:after {
	content: "";
	display: block;
	clear: both
}

.post-pht-txt .post-pht {
	float: right;
	width: 48%;
	margin: 0 0 3.2rem 3.2rem;
	z-index: 10;
	position: relative
}

.post-pht-txt .wysiwyg {
	word-wrap: break-word;
	overflow-wrap: break-word
}

.post-pht-txt .wysiwyg h2,
.post-pht-txt .wysiwyg h3,
.post-pht-txt .wysiwyg h4,
.post-pht-txt .wysiwyg h5,
.post-pht-txt .wysiwyg h6,
.post-pht-txt blockquote {
	display: flex;
	margin-top: 0
}

.iframe-area {
	position: relative;
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: contain;
	margin-bottom: 1.6rem
}

.iframe-area iframe {
	filter: saturate(1.2);
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

.iframe-area.short {
	aspect-ratio: 9/16;
	max-width: 315px;
	margin: 0 auto 1.6rem
}

.wysiwyg {
	word-wrap: break-word;
	overflow-wrap: break-word;
	margin-bottom: 4rem
}

.wysiwyg a:link,
.wysiwyg a:visited {
	text-decoration: underline
}

.wysiwyg {}

.wysiwyg p {
	margin-bottom: 1.6rem
}

.wysiwyg {}

.wysiwyg strong {
	color: #FF3333;
	font-weight: bold
}

.wysiwyg {}

.wysiwyg em {
	font-weight: bold
}

.wysiwyg {}

.wysiwyg i {
	font-style: italic
}

.wysiwyg {}

.wysiwyg .underline {
	text-decoration: underline
}

.wysiwyg {}

.wysiwyg .strike {
	text-decoration: line-through
}

.wysiwyg {}

.wysiwyg sub {
	font-size: 0.8rem;
	vertical-align: bottom
}

.wysiwyg {}

.wysiwyg sup {
	font-size: 0.8rem;
	vertical-align: top
}

.wysiwyg {}

.wysiwyg ol {
	list-style-position: outside;
	margin-bottom: 1.6rem
}

.wysiwyg ol[style] {
	padding-left: 1.5em
}

.wysiwyg ol {}

.wysiwyg ol.horizontal-list {
	display: flex
}

.wysiwyg ol.horizontal-list li {
	margin-right: 2.6rem
}

.wysiwyg {}

.wysiwyg ul {
	list-style-position: outside;
	margin-bottom: 1.6rem
}

.wysiwyg ul[style] {
	padding-left: 1em
}

.wysiwyg ul {}

.wysiwyg ul.horizontal-list {
	display: flex
}

.wysiwyg ul.horizontal-list li {
	margin-right: 2.6rem
}

.wysiwyg {}

.wysiwyg dl {
	margin-bottom: 1.6rem
}

.wysiwyg dl dt {
	background: #EEEEEE;
	display: inline-block;
	padding: 0.8rem 1.6rem
}

.wysiwyg dl dd {
	padding: 0.8rem 0;
	margin-bottom: 0.8rem
}

.wysiwyg dl {}

.wysiwyg dl.horizontal-list dt {
	float: left;
	margin-right: 2.4rem
}

.wysiwyg {}

.wysiwyg .txt-indent {
	text-indent: 1em
}

.wysiwyg {}

.wysiwyg blockquote {
	background: #EEEEEE;
	box-sizing: border-box;
	padding: 3.2rem;
	margin-bottom: 1.6rem
}

.wysiwyg blockquote p {
	margin: 0
}

.wysiwyg {}

.wysiwyg .txt-center {
	text-align: center
}

.wysiwyg {}

.wysiwyg .txt-right {
	text-align: right
}

.wysiwyg {}

.wysiwyg .txt-justify {
	text-align: justify
}

.wysiwyg {}

.wysiwyg a[href] {
	color: #0D30B8;
	text-decoration: underline;
	word-break: break-all
}

.wysiwyg a[href][target=_blank] {
	margin-right: 0.8rem
}

.wysiwyg a[href][target=_blank]:after {
	content: "";
	display: inline-block;
	width: 1.6rem;
	height: 1.6rem;
	margin-left: 0.4rem;
	z-index: 2;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #0D30B8
}

.wysiwyg {}

.wysiwyg table {
	width: auto;
	border-collapse: collapse;
	border: 1px solid #EEEEEE;
	word-break: break-word;
	word-wrap: break-word;
	overflow-wrap: break-word;
	margin-bottom: 1.6rem
}

.wysiwyg table caption {
	font-weight: bold;
	text-align: left;
	margin-bottom: 0.8rem
}

.wysiwyg table p {
	margin: 0
}

.wysiwyg table tr th {
	color: #000;
	background: #EEEEEE;
	border: 1px solid #B5B5B5;
	font-weight: bold;
	padding: 1.6rem
}

.wysiwyg table tr td {
	background: #ffffff;
	border: 1px solid #B5B5B5;
	padding: 1.6rem
}

.wysiwyg table .txt-justify {
	text-align-last: justify
}

.wysiwyg table.table-center {
	margin: 0 auto 4rem
}

.wysiwyg table.table-center caption {
	text-align: center
}

.wysiwyg table.table-right {
	margin-left: auto
}

.wysiwyg table.table-left {
	margin-right: auto
}

.wysiwyg .table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	max-width: none;
	margin-bottom: 1.6rem
}

.wysiwyg .table-scroll::-webkit-scrollbar {
	height: 5px
}

.wysiwyg .table-scroll::-webkit-scrollbar-track {
	border-radius: 5px;
	background: #EEEEEE
}

.wysiwyg .table-scroll::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #ccc
}

.wysiwyg .table-scroll table {
	margin: 0;
	max-width: none
}

.wysiwyg .table-scroll table caption {
	text-align: left
}

@media only screen and (max-width:420px) {
	.wysiwyg .table-scroll table {
		min-width: 100%
	}
}

.wysiwyg {}

.wysiwyg .font-size-small {
	font-size: 0.6em
}

.wysiwyg {}

.wysiwyg .font-size-large {
	font-size: 1.75em
}

.wysiwyg {}

.wysiwyg .font-space-small {
	letter-spacing: 0.5em;
	margin-left: 0.5em
}

.wysiwyg {}

.wysiwyg .font-space-medium {
	letter-spacing: 1em;
	margin-left: 1em
}

.wysiwyg {}

.wysiwyg .font-space-large {
	letter-spacing: 1.5em;
	margin-left: 1.5em
}

.wysiwyg {}

.wysiwyg .font-space-xlarge {
	letter-spacing: 2em;
	margin-left: 2em
}

.wysiwyg {}

.wysiwyg address {
	background: #EEEEEE;
	box-sizing: border-box;
	padding: 3.2rem;
	margin-bottom: 1.6rem
}

.wysiwyg {}

.wysiwyg q:before {
	content: '"'
}

.wysiwyg q:after {
	content: '"'
}

.wysiwyg q:lang(ja):before {
	content: "『"
}

.wysiwyg q:lang(ja):after {
	content: "』"
}

.wysiwyg q q:before {
	content: "'"
}

.wysiwyg q q:after {
	content: "'"
}

.wysiwyg q q:lang(ja):before {
	content: "「"
}

.wysiwyg q q:lang(ja):after {
	content: "」"
}

.wysiwyg {}

.wysiwyg cite {
	font-style: italic;
	font-family: Times New Roman, "ＭＳ Ｐゴシック"
}

.related-file,
.related-link {
	margin-bottom: 2.4rem
}

.related-file a,
.related-link a {
	color: #000;
	border: 1px solid #707070;
	border-radius: 12px;
	padding: 2.4rem 2.4rem 2.4rem 6.8rem;
	display: block;
	position: relative
}

.related-file a:before,
.related-link a:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 2.4rem;
	transform: translateY(-50%);
	z-index: 2
}

.related-file a:hover,
.related-link a:hover {
	opacity: 0.7
}

.related-file a:before {
	background: url(../fonts/ico_file.svg) no-repeat center center/contain;
	width: 2rem;
	height: 2rem
}

.related-file a[href$=".pdf"]:before {
	background: url(../fonts/ico_pdf.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

.related-file a[href$=".doc"]:before,
.related-file a[href$=".docm"]:before,
.related-file a[href$=".docx"]:before,
.related-file a[href$=".dot"]:before,
.related-file a[href$=".dotm"]:before {
	content: "";
	background: url(../fonts/ico_word.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

.related-file a[href$=".xls"]:before,
.related-file a[href$=".xlsb"]:before,
.related-file a[href$=".xlsm"]:before,
.related-file a[href$=".xlsx"]:before,
.related-file a[href$=".xltm"]:before,
.related-file a[href$=".xltx"]:before {
	background: url(../fonts/ico_excel.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

.related-file a[href$=".potm"]:before,
.related-file a[href$=".potx"]:before,
.related-file a[href$=".ppt"]:before,
.related-file a[href$=".pptm"]:before,
.related-file a[href$=".pptx"]:before {
	background: url(../fonts/ico_powerpoint.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

.related-link a:before {
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_link.svg);
	mask-image: url(../fonts/ico_link.svg);
	background: #5CAB75;
	width: 2rem;
	height: 2rem
}

.related-link a[target=_blank]:before {
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #5CAB75
}

.btn-postback {
	text-align: center;
	max-width: 320px;
	margin: 6.4rem auto
}

@media only screen and (max-width:768px) {
	.btn-postback {
		max-width: 100%
	}
}

.wysiwyg-slider {
	margin-bottom: 8rem
}

@media only screen and (max-width:768px) {
	.wysiwyg-slider {
		margin-bottom: 4rem
	}
}

.wysiwyg-slider .swiper-wrapper .swiper-slide figure {
	aspect-ratio: 16/9;
	object-fit: contain;
	overflow: hidden;
	position: relative;
	border-radius: 20px;
	margin-bottom: 0.8rem
}

.wysiwyg-slider .swiper-wrapper .swiper-slide figure>img {
	background: #e2e5ec;
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

.wysiwyg-slider .swiper-wrapper .swiper-slide .caption {
	text-align: center;
	margin-bottom: 1.6rem
}

.wysiwyg-slider .swiper-button-next,
.wysiwyg-slider .swiper-button-prev {
	top: 45%;
	display: none;
	transition: all 0.3s
}

@media only screen and (max-width:768px) {

	.wysiwyg-slider .swiper-button-next,
	.wysiwyg-slider .swiper-button-prev {
		display: flex
	}
}

.wysiwyg-slider:hover .swiper-button-next,
.wysiwyg-slider:hover .swiper-button-prev {
	display: flex
}

.wysiwyg-slider .swiper-pagination {
	position: relative
}

button,
fieldset,
form,
input,
label,
legend,
select,
textarea {
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	padding: 0;
	margin: 0
}

input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text] {
	vertical-align: middle;
	width: 100%;
	background: #fff;
	border-radius: 5px;
	border: #CCC solid 1px;
	box-sizing: border-box;
	padding: 1rem;
	font-weight: 400 !important
}

@media only screen and (max-width:768px) {

	input[type=date],
	input[type=email],
	input[type=number],
	input[type=password],
	input[type=tel],
	input[type=text] {
		padding: 0.8rem;
		font-size: 1.6rem
	}
}

input[type=date]::placeholder,
input[type=email]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=tel]::placeholder,
input[type=text]::placeholder {
	color: #707070
}

input[type=checkbox],
input[type=radio] {
	width: 1.2em;
	height: 1.2em;
	margin-right: 0.8rem
}

input[type=checkbox]+label,
input[type=radio]+label {
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.8rem
}

input[type=file] {
	margin-bottom: 0.8rem
}

select {
	font-size: 1.6rem;
	width: 100%;
	background: none;
	border-radius: 5px;
	border: #CCC solid 1px;
	box-sizing: border-box;
	padding: 1rem
}

@media only screen and (max-width:768px) {
	select {
		padding: 0.85rem;
		font-size: 1.6rem
	}
}

select option[active],
select option[selected] {
	color: #FFF;
	background: #323232
}

fieldset {
	border: none;
	display: block
}

fieldset span {
	display: inline-flex;
	align-items: center;
	margin: 0 0.8rem 0.8rem 0
}

textarea {
	font-size: 1.6rem;
	width: 100%;
	min-height: 7em;
	border: 1px solid #D1D1D1;
	border-radius: 0;
	box-sizing: border-box;
	padding: 1.6rem;
	resize: vertical
}

@media only screen and (max-width:768px) {
	textarea {
		padding: 0.8rem
	}
}

textarea::placeholder {
	color: #707070
}

button {
	cursor: pointer;
	color: #FFF;
	background: #000;
	font-size: 100%;
	vertical-align: middle;
	border-radius: 10px;
	padding: 0.5rem 1.6rem
}

@media only screen and (max-width:768px) {
	button {
		font-size: 1.3rem
	}
}

input.text-l,
select.text-l {
	width: 75%
}

input.text-m,
select.text-m {
	width: 50%
}

input.text-s,
select.text-s {
	width: 25%
}

@media only screen and (max-width:768px) {

	input.text-l,
	input.text-m,
	select.text-l,
	select.text-m {
		width: 100%;
		box-sizing: border-box
	}

	input.text-s,
	select.text-s {
		width: 60%;
		box-sizing: border-box
	}

	input.sp-text-l,
	select.sp-text-l {
		width: 100% !important;
		box-sizing: border-box
	}

	input.sp-text-m,
	select.sp-text-m {
		width: 60% !important;
		box-sizing: border-box
	}

	input.sp-text-s,
	select.sp-text-s {
		width: 30% !important;
		box-sizing: border-box
	}
}

.flow-area {
	margin-bottom: 4.8rem
}

.flow-area .step-bar ul {
	text-align: center;
	display: flex;
	position: relative
}

.flow-area .step-bar ul li {
	font-size: 1.4rem;
	font-weight: bold;
	text-indent: 0.1rem;
	letter-spacing: 0.1rem;
	list-style: none;
	position: relative;
	width: 33.3333333333%
}

@media only screen and (max-width:768px) {
	.flow-area .step-bar ul li {
		font-size: 1.2rem
	}
}

.flow-area .step-bar ul li:after {
	content: "";
	background: #DADADA;
	width: calc(100% - 5em);
	height: 2px;
	position: absolute;
	top: 1.6em;
	left: calc(-50% + 2.5em);
	right: auto;
	z-index: -1
}

@media only screen and (max-width:768px) {
	.flow-area .step-bar ul li:after {
		top: 1.3em
	}
}

.flow-area .step-bar ul li:first-child:after {
	display: none
}

.flow-area .step-bar ul li span {
	color: #000;
	background: #EEEEEE;
	font-size: 1.8rem;
	display: inline-block;
	border-radius: 50%;
	padding: 0.6em 1em;
	margin-bottom: 1.6rem
}

@media only screen and (max-width:768px) {
	.flow-area .step-bar ul li span {
		font-size: 1.3rem
	}
}

.flow-area .step-bar ul .visited:after {
	background: #5CAB75
}

.flow-area .step-bar ul .visited span {
	color: #FFF;
	background: #5CAB75;
	z-index: 10
}

@media only screen and (max-width:768px) {
	.flow-area .step-bar ul {
		width: 100%
	}

	.flow-area .step-bar ul li {
		padding: 0 0.8rem
	}
}

.flow-area .flow-part {
	display: flex;
	justify-content: center
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part {
		display: block
	}
}

.flow-area .flow-part>div {
	width: 35%;
	overflow: hidden
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part>div {
		width: auto
	}
}

.flow-area .flow-part>div p {
	color: #000;
	background: #EEEEEE;
	font-size: 1.6rem;
	line-height: 1.4;
	height: 100%;
	padding: 1.6rem;
	margin: 0 3.2rem 0 0;
	position: relative
}

@media only screen and (max-width:1300px) {
	.flow-area .flow-part>div p {
		font-size: 1.6vw
	}
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part>div p {
		font-size: 1.3rem
	}
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part>div p {
		font-weight: bold;
		text-align: center;
		width: auto;
		height: auto;
		margin: 0;
		position: relative
	}

	.flow-area .flow-part>div p:after {
		display: none
	}
}

.flow-area .flow-part>div p span {
	font-weight: bold;
	display: block
}

.flow-area .flow-part>div p:after {
	content: "";
	width: 0;
	height: 0;
	border-left: 1.7em solid #EEEEEE;
	border-top: 3.5em solid transparent;
	border-bottom: 3.5em solid transparent;
	display: block;
	margin: auto 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: -1.5em
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part>div p:after {
		display: none
	}
}

.flow-area .flow-part>div.visited p {
	color: #FFF;
	background: #5CAB75
}

.flow-area .flow-part>div.visited p:after {
	border-left: 1.6em solid #5CAB75
}

@media only screen and (max-width:768px) {
	.flow-area .flow-part>div:after {
		content: "";
		width: 0;
		height: 0;
		border-left: 15px solid transparent;
		border-right: 15px solid transparent;
		border-top: 10px solid #EEEEEE;
		display: block;
		margin: 0 auto 0.8rem
	}

	.flow-area .flow-part>div.visited:after {
		border-top: 10px solid #5CAB75
	}

	.flow-area .flow-part>div:last-child:after {
		display: none
	}
}

.error-area {
	color: #FF3333;
	background: #F9EBEB;
	border: 1px solid #FF3333;
	font-size: 1.4rem;
	padding: 1.6rem 2.4rem;
	margin-bottom: 4.8rem
}

.error-area .ttl {
	margin-bottom: 2.4rem
}

.error-area a {
	color: #FF3333;
	text-decoration: underline
}

.form-area p.txt-error {
	color: #FF3333;
	font-size: 1.4rem;
	scroll-margin-top: 4em;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:768px) {
	.form-area p.txt-error {
		scroll-margin-top: 5em
	}
}

.form-area p.txt-ex {
	color: #707070;
	font-size: 1.3rem;
	margin-bottom: 0.8rem
}

.form-area p.txt-upload {
	color: #707070;
	font-size: 1.3rem;
	margin-bottom: 0.8rem
}

.form-area strong.txt-required {
	color: #FFF;
	background: #FF3333;
	font-size: 1.2rem;
	font-weight: normal;
	line-height: 1;
	white-space: nowrap;
	display: inline-block;
	padding: 0.4rem 0.8rem;
	margin: 0 0.8rem
}

.form-area .table-form>div>dt,
.form-area .table-form>dl>dt {
	background: #EEEEEE;
	font-weight: bold;
	text-align: left;
	padding: 0.8rem 1.6rem;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:768px) {

	.form-area .table-form>div>dt,
	.form-area .table-form>dl>dt {
		width: 100%;
		min-width: auto
	}
}

.form-area .table-form>div>fieldset,
.form-area .table-form>dl>fieldset {
	display: contents
}

.form-area .table-form>div>fieldset>legend,
.form-area .table-form>dl>fieldset>legend {
	width: 100%;
	background: #EEEEEE;
	text-align: left;
	display: block;
	padding: 0.8rem 1.6rem;
	margin-bottom: 1.6rem
}

@media only screen and (max-width:768px) {

	.form-area .table-form>div>fieldset>legend,
	.form-area .table-form>dl>fieldset>legend {
		width: 100%;
		min-width: auto
	}
}

.form-area .table-form>div .right-fl,
.form-area .table-form>div>dd,
.form-area .table-form>dl .right-fl,
.form-area .table-form>dl>dd {
	text-align: left;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {

	.form-area .table-form>div .right-fl,
	.form-area .table-form>div>dd,
	.form-area .table-form>dl .right-fl,
	.form-area .table-form>dl>dd {
		width: 100%;
		display: block;
		border-bottom: none;
		box-sizing: border-box
	}
}

.form-area .table-form>div .right-fl>div,
.form-area .table-form>dl .right-fl>div {
	margin-bottom: 1.6rem
}

.form-area .table-form>div .right-fl>div label,
.form-area .table-form>dl .right-fl>div label {
	font-weight: bold;
	width: 100%;
	display: flex;
	align-items: center;
	margin-bottom: 0.8rem
}

.form-area .table-form>div .right-fl>div legend,
.form-area .table-form>dl .right-fl>div legend {
	display: none
}

.form-area .agree-part>p {
	margin-bottom: 0.8rem
}

.form-area .agree-part .txt-error {
	margin-bottom: 1.6rem
}

.form-area .agree-part .check-agree fieldset input {
	margin-right: 0.8rem;
	display: inline-block
}

.form-area .agree-part .check-agree fieldset label {
	margin: 0
}

@media only screen and (max-width:420px) {
	.form-area .agree-part .check-agree fieldset label {
		width: calc(100% - 25px);
		margin: 0;
		vertical-align: text-top
	}
}

.form-area .agree-part a:link,
.form-area .agree-part a:visited {
	text-decoration: underline
}

.form-area.confirm .table-form>div>dt,
.form-area.confirm .table-form>dl>dt {
	margin-bottom: 1.6rem
}

.form-area.confirm .table-form>div>dd>dl>dt,
.form-area.confirm .table-form>dl>dd>dl>dt {
	margin-bottom: 0.8rem
}

.form-area.confirm .table-form>div>dd>dl>dd,
.form-area.confirm .table-form>dl>dd>dl>dd {
	margin-bottom: 1.6rem
}

.form-area.confirm .table-form>div>dd a,
.form-area.confirm .table-form>dl>dd a {
	text-decoration: underline
}

.form-area.confirm .table-form>div>dd span,
.form-area.confirm .table-form>dl>dd span {
	display: inline-block;
	margin: 0 1.6rem 0.8rem 0
}

.form-area .complete-part {
	text-align: center
}

@media only screen and (max-width:768px) {
	.form-area .complete-part {
		text-align: left
	}
}

.form-area .complete-part {
	margin-bottom: 5.6rem
}

.form-area .complete-part .ttl-large {
	display: inline-block;
	margin: 4.8rem 0 4rem
}

.form-area .complete-part .ttl-large:after {
	content: none
}

@media only screen and (max-width:768px) {
	.form-area .complete-part .ttl-large {
		margin: 1.6rem 0 1.5rem
	}
}

.form-area .complete-part p {
	line-height: 2
}

.form-area .complete-note ul li {
	margin-bottom: 3.2rem
}

.form-area .btn-block {
	margin: 5.6rem 0
}

fieldset legend {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.5em;
	display: none
}

fieldset.ds-legend legend {
	display: block
}

fieldset.form-list {
	display: flex;
	align-items: center;
	flex-wrap: wrap
}

fieldset.form-list.btn-check div,
fieldset.form-list.btn-check span {
	position: relative;
	margin: 0 0.5em 0.5em 0
}

fieldset.form-list.btn-check div>input,
fieldset.form-list.btn-check span>input {
	opacity: 0
}

fieldset.form-list.btn-check div>input:checked+label,
fieldset.form-list.btn-check span>input:checked+label {
	color: #FFF;
	background: #323232
}

fieldset.form-list.btn-check div>input,
fieldset.form-list.btn-check span>input {
	position: absolute;
	z-index: -1
}

fieldset.form-list.btn-check div>label,
fieldset.form-list.btn-check span>label {
	font-weight: bold;
	text-align: center;
	padding: 0.1em 1.5em;
	margin-right: 0;
	background: #FFF;
	border: 1px solid #5CAB75;
	border-radius: 100px;
	cursor: pointer
}

@media only screen and (max-width:768px) {

	fieldset.form-list.btn-check div>label,
	fieldset.form-list.btn-check span>label {
		font-size: 1.4rem
	}
}

fieldset.form-list.btn-icon {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom: 1em
}

fieldset.form-list.btn-icon legend {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.5em;
	display: none
}

fieldset.form-list.btn-icon.ds-legend legend {
	display: block
}

fieldset.form-list.btn-icon div,
fieldset.form-list.btn-icon span {
	margin: 0;
	display: block
}

fieldset.form-list.btn-icon div>input,
fieldset.form-list.btn-icon span>input {
	opacity: 0
}

fieldset.form-list.btn-icon div>input:checked+label,
fieldset.form-list.btn-icon span>input:checked+label {
	background: #B5B5B5
}

fieldset.form-list.btn-icon div>input,
fieldset.form-list.btn-icon span>input {
	position: absolute;
	z-index: -1
}

fieldset.form-list.btn-icon div>label,
fieldset.form-list.btn-icon span>label {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	font-weight: bold;
	text-align: center;
	padding: 1em 1.5em;
	background: #FFF;
	border: none;
	border-radius: 15px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
	cursor: pointer
}

@media only screen and (max-width:768px) {

	fieldset.form-list.btn-icon div>label,
	fieldset.form-list.btn-icon span>label {
		font-size: 1.6rem
	}
}

fieldset.form-list.btn-icon div>label>span,
fieldset.form-list.btn-icon span>label>span {
	margin-top: 0.4em;
	line-height: 1.8rem
}

.input-search fieldset {
	margin: 0;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
	overflow: hidden;
	border: 1px solid #5CAB75
}

.input-search fieldset legend {
	display: none
}

.input-search fieldset input {
	border: none;
	border-radius: 0;
	background: #FFF;
	flex: 1
}

.input-search fieldset input::placeholder {
	color: #707070
}

.input-search fieldset button {
	color: #FFF;
	padding: 0.5em 1em;
	border-radius: 0;
	border: none;
	background: #5CAB75;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
	white-space: nowrap
}

.input-search fieldset button:hover {
	opacity: 0.7
}

.input-search fieldset button img {
	margin-right: 0.5em
}

.period-search {
	display: flex;
	align-items: center;
	gap: 0 1em
}

@media only screen and (max-width:768px) {
	.period-search {
		flex-direction: column;
		gap: 0.5em 0
	}
}

.period-search>div {
	position: relative
}

@media only screen and (max-width:768px) {
	.period-search>div {
		width: 100%
	}
}

.period-search>div label {
	display: none
}

.period-search>div:before {
	content: "";
	width: 1em;
	height: 1em;
	display: block;
	background: url(../fonts/ico_calendar.svg) no-repeat center center/contain;
	position: absolute;
	left: 0.5em;
	top: 50%;
	transform: translateY(-50%)
}

.period-search>div input {
	padding-left: 2em
}

@media only screen and (max-width:768px) {
	.search-conditions.bg-c {
		padding: 1.5em 1em
	}
}

.search-conditions.toggle .btn-toggle {
	text-align: center
}

.search-conditions.toggle .btn-toggle .ttl {
	font-size: 2rem;
	font-weight: bold;
	display: inline-block;
	background: none;
	border: none;
	cursor: pointer
}

.search-conditions.toggle .btn-toggle .ttl span {
	padding: 0 2em;
	display: block;
	position: relative
}

.search-conditions.toggle .btn-toggle .ttl span:after {
	content: "";
	width: 1em;
	height: 2px;
	border: none;
	background: #323232;
	position: absolute;
	top: 50%;
	right: 0.5em;
	display: block;
	transform: translateY(-50%) rotateZ(0)
}

.search-conditions.toggle .btn-toggle.open-search .ttl span:before {
	content: "";
	width: 1em;
	height: 2px;
	border: none;
	background: #323232;
	position: absolute;
	top: 50%;
	right: 0.5em;
	display: block;
	transform: translateY(-50%) rotateZ(90deg)
}

.search-conditions .search-conditions-inner {
	margin-top: 2em;
	display: grid;
	gap: 1em 1em
}

.search-conditions .search-conditions-inner>dl {
	display: grid;
	grid-template-columns: 1fr 5fr
}

@media only screen and (max-width:768px) {
	.search-conditions .search-conditions-inner>dl {
		display: block
	}
}

.search-conditions .search-conditions-inner>dl dt {
	margin-bottom: 0.5em;
	font-weight: bold;
	display: flex;
	align-items: center
}

@media only screen and (max-width:768px) {
	.search-conditions .search-conditions-inner>dl dt {
		text-align: center;
		display: block
	}
}

.search-block {
	position: relative;
	z-index: 1
}

.search-block .search-btn-sp {
	display: none
}

@media only screen and (max-width:768px) {
	.search-block .search-btn-sp {
		display: flex;
		align-items: stretch;
		gap: 0 1em;
		margin-bottom: 1em
	}
}

.search-block .search-btn-sp .filter-block {
	flex: 1;
	background: #fff
}

.search-block .search-btn-sp .filter-block>div {
	cursor: pointer;
	font-size: 1.6rem;
	text-align: center;
	border: 1px solid #000;
	padding: 0.5em;
	position: relative
}

.search-block .search-btn-sp .filter-block>div:before {
	content: "";
	display: block;
	width: 1.5rem;
	height: 1.3rem;
	position: absolute;
	left: 1em;
	top: 50%;
	transform: translateY(-50%);
	background: url(../fonts/ico_filter.svg) no-repeat center center/cover
}

.search-block .search-btn-sp .sort-block {
	flex: 1;
	border: 1px solid #000;
	margin-bottom: 0;
	font-size: 1.6rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff
}

.search-block .search-btn-sp .sort-block .ac-p {
	width: 100%
}

.search-block form {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1em;
	position: relative;
	z-index: 0
}

.search-block form.open {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 2em 1em;
	background: #fff;
	z-index: 20;
	overflow-y: auto
}

@media only screen and (max-width:768px) {
	.search-block form {
		display: none;
		flex-wrap: wrap
	}
}

.search-block form>.btn-close {
	display: none;
	position: relative
}

.search-block form>.btn-close:before {
	content: "";
	background: url(../fonts/ico_clear.svg) no-repeat center center/contain;
	display: inline-block;
	width: 1rem;
	height: 1rem;
	vertical-align: baseline;
	margin-right: 0.5em;
	z-index: 2
}

@media only screen and (max-width:768px) {
	.search-block form>.btn-close {
		display: block;
		position: absolute;
		top: 1em;
		right: 1em
	}
}

.search-block form .tab {
	display: flex;
	gap: 1em;
	position: relative;
	z-index: 0;
	flex: 1;
	margin-bottom: 4.8rem
}

@media only screen and (max-width:768px) {
	.search-block form .tab {
		flex-wrap: wrap;
		width: 100%;
		gap: 1em 0;
		order: 2
	}
}

.search-block form .tab .search-label {
	font-size: 1.6rem;
	position: relative;
	cursor: pointer;
	background: #fff;
	border: 1px solid #B5B5B5;
	border-radius: 10px;
	padding: 1.6rem 3rem 1.6rem 1.6rem;
	flex: auto;
	min-width: 10rem;
	word-break: keep-all
}

@media only screen and (max-width:1100px) {
	.search-block form .tab .search-label>span {
		display: none
	}
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-label {
		text-align: center;
		background: #EFEFEF;
		border: none;
		border-radius: 0;
		padding: 1rem
	}

	.search-block form .tab .search-label:first-of-type {
		border-radius: 25px 0 0 25px
	}

	.search-block form .tab .search-label:nth-child(5) {
		border-radius: 0 25px 25px 0
	}

	.search-block form .tab .search-label.active {
		color: #fff;
		position: relative;
		z-index: 0
	}

	.search-block form .tab .search-label.active:before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		border-radius: 25px;
		background: #323232;
		z-index: -1
	}
}

.search-block form .tab .search-label:after {
	content: "";
	display: inline-block;
	width: 0.9em;
	height: 0.5em;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%) rotate(90deg);
	background: url(../fonts/ico_arrow_radius.svg) no-repeat center center/contain;
	transition: 0.3s all
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-label:after {
		content: none
	}
}

.search-block form .tab .search-label.active:after {
	transform: translateY(-50%) rotate(-90deg)
}

.search-block form .tab .search-item {
	opacity: 0;
	background: #fff;
	border: 1px solid #323232;
	border-radius: 15px;
	padding: 0 2em 2em 2em;
	position: absolute;
	z-index: 10;
	pointer-events: none
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item {
		width: 100%;
		padding: 2em 1em 2em;
		position: relative;
		transform: none;
		order: 3
	}
}

.search-block form .tab .search-item.open {
	display: block
}

@media screen and (min-width:769px) {
	.search-block form .tab .search-item.open {
		width: 90vw;
		top: 6rem;
		transform: none
	}
}

@media screen and (min-width:769px) and (min-width:1100px) {
	.search-block form .tab .search-item.open {
		max-width: 1080px
	}
}

.search-block form .tab .search-item fieldset.form-list legend {
	display: none
}

.search-block form .tab .search-item fieldset.form-list>span {
	width: calc(25% - 1.6rem)
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item fieldset.form-list>span {
		width: 100%
	}
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item .btn-base {
		font-size: 1.4rem
	}
}

.search-block form .tab .search-item .btn-close {
	cursor: pointer;
	position: absolute;
	top: 0.8rem;
	right: 1.6rem
}

.search-block form .tab .search-item .btn-close:before {
	content: "";
	display: inline-block;
	width: 1rem;
	height: 1rem;
	margin-right: 0.5em;
	background: url(../fonts/ico_clear.svg) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item .btn-close {
		display: none
	}
}

.search-block form .tab .search-item .btn-calender-block {
	display: flex;
	align-items: center;
	gap: 0.5em;
	margin-bottom: 1.6rem
}

.search-block form .tab .search-item .btn-calender-block .btn-calender {
	color: #fff;
	background: #000;
	border-radius: 10px;
	border: 1px solid #707070;
	padding: 0.5em 1em;
	display: block
}

.search-block form .tab .search-item>* {
	display: none !important
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item {
		display: none;
		width: 100%;
		padding: 2em 1em 2em;
		position: relative;
		transform: none;
		order: 3
	}
}

.search-block form .tab .search-item.open {
	display: block;
	opacity: 1;
	pointer-events: inherit;
	transition: 0.3s all
}

.search-block form .tab .search-item.open>:not(.btn-close) {
	display: flex !important
}

.search-block form .tab .search-item.open>.btn-close {
	display: block !important
}

@media only screen and (max-width:768px) {
	.search-block form .tab .search-item.open>.btn-close {
		display: none !important
	}
}

@media screen and (min-width:769px) {
	.search-block form .tab .search-item.open {
		width: 90vw;
		top: 6rem;
		transform: none;
		padding: 2em
	}
}

@media screen and (min-width:769px) and (min-width:1100px) {
	.search-block form .tab .search-item.open {
		max-width: 1080px
	}
}

@media only screen and (max-width:768px) {
	.search-block form .keyword {
		width: 100%;
		order: 1
	}
}

.search-block form .keyword label {
	display: none
}

@media only screen and (max-width:768px) {
	.search-block form .keyword label {
		display: block;
		margin-bottom: 0.8rem
	}
}

.search-block form .keyword input {
	font-size: 1.6rem;
	border: 1px solid #B5B5B5;
	border-radius: 10px;
	padding: 1.6rem
}

.search-block form>.btn-base.search {
	padding: 1.6rem 5.6rem;
	background: #5CAB75;
	border-radius: 10px;
	min-width: auto;
	word-break: keep-all
}

@media only screen and (max-width:768px) {
	.search-block form>.btn-base.search {
		font-size: 1.4rem
	}
}

.search-block form>.btn-base.search:before {
	content: none
}

@media only screen and (max-width:768px) {
	.search-block form>.btn-base.search {
		width: 100%;
		margin: 0 auto;
		order: 4
	}
}

.search-menu {
	border: 1px solid #000;
	padding: 2rem;
	margin-bottom: 4rem
}

@media only screen and (max-width:1380px) {
	.search-menu {
		padding: 2rem 1rem
	}
}

.search-menu .search-ttl {
	font-size: 2rem;
	font-weight: bold;
	position: relative;
	margin-right: auto
}

@media only screen and (max-width:768px) {
	.search-menu .search-ttl {
		font-size: 1.8rem
	}
}

.search-menu .search-ttl:has(~.days),
.search-menu .search-ttl:has(~.season) {
	width: 100%
}

@media only screen and (max-width:768px) {
	.search-menu .search-ttl {
		margin-bottom: 1.6rem
	}
}

.search-menu .search-ttl:before {
	content: "";
	width: 1.2em;
	min-width: 1.2em;
	height: 1.2em;
	display: inline-block;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_search.svg);
	mask-image: url(../fonts/ico_search.svg);
	background: #000;
	margin-right: 1.6rem
}

.search-menu .area dt:before,
.search-menu .genre dt:before,
.search-menu .season dt:before {
	content: "";
	position: fixed;
	background: rgba(0, 0, 0, 0.3);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 11;
	display: none;
	opacity: 0
}

.search-menu .area dt.is-active:before,
.search-menu .genre dt.is-active:before,
.search-menu .season dt.is-active:before {
	display: block;
	opacity: 1
}

.search-menu .area dd {
	display: none
}

.search-menu .area dd.is-active {
	display: flex;
	align-items: flex-start;
	opacity: 1;
	animation: fadeOverlay 0.5s ease 0s 1 normal forwards;
	-webkit-animation: fadeOverlay 0.5s ease 0s 1 normal forwards
}

.search-menu .genre dd,
.search-menu .season dd {
	display: none
}

.search-menu .genre dd.is-active,
.search-menu .season dd.is-active {
	display: block;
	animation: fadeOverlay 0.5s ease 0s 1 normal forwards;
	-webkit-animation: fadeOverlay 0.5s ease 0s 1 normal forwards
}

@keyframes fadeOverlay {
	0% {
		opacity: 0;
		margin-top: -10px
	}

	to {
		opacity: 1;
		margin-top: 0
	}
}

.search-menu .area dd>p:not(.btn-close),
.search-menu .genre dd>p:not(.btn-close),
.search-menu .season dd>p:not(.btn-close) {
	width: 100%;
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {

	.search-menu .area dd>p:not(.btn-close),
	.search-menu .genre dd>p:not(.btn-close),
	.search-menu .season dd>p:not(.btn-close) {
		font-size: 1.6rem
	}
}

.search-menu {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1080px;
	position: relative;
	margin: 20px 0;
	gap: 1rem
}

*+.search-menu {
	margin-top: 10rem
}

.search-menu .select-all {
	display: block;
	width: 100%;
	margin: 5px 0;
	border: 1px solid #707070;
	border-radius: 10px;
	background: #AEDEBD
}

.search-menu .area,
.search-menu .days,
.search-menu .genre,
.search-menu .keyword,
.search-menu .season {
	flex: 1;
	max-width: 250px
}

@media only screen and (max-width:768px) {

	.search-menu .area,
	.search-menu .days,
	.search-menu .genre,
	.search-menu .keyword,
	.search-menu .season {
		max-width: none
	}
}

.search-menu .area dt span,
.search-menu .genre dt span,
.search-menu .season dt span {
	padding: 1rem;
	border-radius: 5px;
	border: #CCC solid 1px;
	cursor: pointer;
	display: block;
	transition: border 0.3s ease;
	position: relative
}

.search-menu .area dt span:after,
.search-menu .genre dt span:after,
.search-menu .season dt span:after {
	content: "";
	display: inline-block;
	width: 0.9em;
	height: 0.5em;
	position: absolute;
	top: 50%;
	right: 0.2em;
	transform: translateY(-50%) rotate(90deg);
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_radius.svg);
	mask-image: url(../fonts/ico_arrow_radius.svg);
	background: #000;
	transition: 0.3s all
}

.search-menu .area dd {
	position: absolute;
	width: 90%;
	height: 80vh;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	padding: 30px 30px 20px;
	border-radius: 5px;
	justify-content: space-between;
	flex-wrap: wrap;
	z-index: 12;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.71);
	overflow-y: auto
}

.search-menu .genre dd,
.search-menu .season dd {
	position: absolute;
	width: 90%;
	height: 80vh;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	min-width: 300px;
	background: #fff;
	padding: 30px 30px 20px;
	border-radius: 5px;
	z-index: 12;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.71);
	overflow-y: auto
}

@media only screen and (max-width:768px) {
	.search-menu .area {
		position: relative
	}

	.search-menu .area dd {
		padding-top: 60px;
		width: 100%;
		right: 0;
		top: 100%
	}

	.search-menu .genre,
	.search-menu .season {
		position: relative
	}

	.search-menu .genre dd,
	.search-menu .season dd {
		padding-top: 60px;
		width: 100%;
		right: 0;
		top: 100%
	}
}

.area-search {
	width: 47%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

.area-search .lage-area {
	font-size: 2rem;
	font-weight: bold;
	display: block;
	border: 1px solid #707070;
	border-radius: 10px;
	padding: 7px 0;
	width: 48%;
	color: #000;
	text-align: center;
	cursor: pointer;
	margin-bottom: 15px
}

@media only screen and (max-width:768px) {
	.area-search .lage-area {
		font-size: 1.6rem
	}
}

.area-search .lage-area.select-all {
	width: 100%;
	background: #AEDEBD
}

.area-search>div {
	width: 48%
}

.area-search>div .lage-area {
	width: 100%
}

.area-search .lage-area:nth-of-type(2) {
	background: #E5E4F6
}

.area-search .lage-area:nth-of-type(3) {
	background: #EDE4BF
}

.area-search .lage-area:nth-of-type(4) {
	background: #A2E7ED
}

.area-search .lage-area:nth-of-type(5) {
	background: #C8EBE3
}

.area-search>div:first-of-type .lage-area {
	background: #FAD9D6
}

.area-search>div:nth-of-type(2) .lage-area {
	background: #F8D8BE
}

.area-search .lage-area.active,
.area-search>div .lage-area.active {
	color: #fff;
	background: #666
}

.area-search .small-area span {
	font-size: 2rem;
	font-weight: bold;
	display: block;
	cursor: pointer;
	border-radius: 10px;
	border: 1px solid #707070;
	text-align: center;
	padding: 0 10px;
	margin-bottom: 10px
}

@media only screen and (max-width:768px) {
	.area-search .small-area span {
		font-size: 1.6rem
	}
}

.map-search {
	width: 50%;
	display: flex;
	align-items: center;
	padding-left: 10px
}

.map-search img {
	width: 100%
}

.search-menu .btn-close {
	position: absolute;
	right: 0;
	top: 0
}

.search-menu .btn-close a {
	display: block;
	padding: 15px 20px 15px 60px;
	color: #fff;
	font-size: 2.6rem;
	font-weight: bold;
	background: #000;
	border-radius: 0 0 0 30px;
	position: relative
}

@media only screen and (max-width:768px) {
	.search-menu .btn-close a {
		font-size: 1.4rem
	}
}

.search-menu .btn-close a:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_clear.svg);
	mask-image: url(../fonts/ico_clear.svg);
	background: #fff;
	display: block;
	width: 2rem;
	height: 2rem;
	position: absolute;
	top: 50%;
	left: 1.6rem;
	transform: translateY(-50%);
	z-index: 2
}

.search-menu .btn-search {
	width: 100%;
	max-width: 375px;
	margin: 2rem auto
}

.search-menu .btn-search a {
	font-size: 1.6rem;
	font-weight: bold;
	position: relative;
	text-align: center;
	color: #fff;
	background: #000;
	border-radius: 33px;
	display: block;
	padding: 1em 2em
}

.search-menu .btn-search a:after {
	content: "";
	width: 1.2em;
	min-width: 1.2em;
	height: 1.2em;
	display: inline-block;
	vertical-align: middle;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_search.svg);
	mask-image: url(../fonts/ico_search.svg);
	background: #E01F06;
	margin-left: 1.6rem
}

.area-search>div:first-of-type .small-area span.active,
.area-search>div:nth-of-type(2) .small-area span.active {
	background: #666;
	color: #fff
}

@media screen and (max-width:600px) {
	.area-search {
		width: 100%
	}

	.map-search {
		width: 70%;
		margin: 20px auto 0;
		padding-left: 0
	}
}

.area-search-nomap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start
}

.area-search-nomap .lage-area {
	display: inline-block;
	background: #FFF;
	border-radius: 30px;
	padding: 0.5em 1em;
	color: #000;
	text-align: center;
	cursor: pointer;
	margin: 3px;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.4)
}

.area-search-nomap .lage-area.active {
	background: #666;
	color: #fff;
	box-shadow: none
}

.search-menu .genre .lage-genre,
.search-menu .season .lage-season {
	display: block;
	background: #FFF;
	border: 1px solid #707070;
	border-radius: 10px;
	padding: 7px 0;
	color: #000;
	text-align: center;
	cursor: pointer;
	margin-bottom: 10px
}

.search-menu .genre .lage-genre.select-all,
.search-menu .season .lage-season.select-all {
	background: #AEDEBD;
	padding: 14px 0
}

.search-menu .genre .lage-genre.active,
.search-menu .season .lage-season.active {
	background: #666;
	color: #fff
}

.search-menu .genre .stack-genre,
.search-menu .season .stack-season {
	display: inline-block;
	background: #FFF;
	border-radius: 30px;
	padding: 0.2em 1em;
	color: #000;
	text-align: center;
	cursor: pointer;
	margin: 3px;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.4)
}

.search-menu .genre .stack-genre.active,
.search-menu .season .stack-season.active {
	background: #666;
	color: #fff;
	box-shadow: none
}

.search-menu .genre .stack-genre,
.search-menu .season .stack-season {
	display: inline-block;
	background: #FFF;
	border-radius: 30px;
	padding: 0.2em 1em;
	color: #000;
	text-align: center;
	cursor: pointer;
	margin: 3px;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.4)
}

.search-menu .genre .stack-genre.active,
.search-menu .season .stack-season.active {
	background: #666;
	color: #fff;
	box-shadow: none
}

.search-menu .genre .small-genre,
.search-menu .season .small-season {
	display: inline-block;
	color: #fff;
	line-height: 1.2;
	padding: 3px 10px;
	border: #fff solid 1px;
	border-radius: 5px;
	font-size: 1.3rem;
	margin: 0 0.2rem 0.5rem 0;
	cursor: pointer
}

.search-menu .genre .small-genre.active,
.search-menu .season .small-season.active {
	background: #666;
	box-shadow: none;
	border: #666 solid 1px
}

.genre-box,
.season-box {
	display: flex;
	flex-wrap: wrap
}

.genre-tree,
.season-tree {
	width: 100%
}

.genre-tree ul,
.season-tree ul {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px
}

.search-menu .genre-tree .lage-genre,
.search-menu .season-tree .lage-season {
	padding: 3px;
	min-width: 18em
}

.search-menu .keyword {
	width: 23%
}

.search-menu .keyword input {
	font-size: 1.6rem;
	padding: 1rem;
	width: 100%;
	border-radius: 5px;
	border: #CCC solid 1px;
	position: relative;
	transition: border 0.3s ease
}

.search-menu .keyword {
	position: relative
}

.search-menu .keyword a {
	font-size: 2rem;
	text-align: center;
	overflow: hidden;
	text-indent: -200%;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%)
}

.search-menu .keyword a:before {
	content: "";
	width: 1.2em;
	min-width: 1.2em;
	height: 1.2em;
	display: inline-block;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_search.svg);
	mask-image: url(../fonts/ico_search.svg);
	background: #000;
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translate(0%, -50%)
}

@media only screen and (max-width:1300px) {
	.search-menu .keyword a:before {
		width: 0.6em;
		min-width: 0.6em;
		height: 0.6em
	}
}

@media only screen and (max-width:768px) {
	.search-menu {
		display: block
	}

	.search-menu .area {
		width: 100%;
		margin-bottom: 10px
	}

	.search-menu .area dd {
		width: 100%
	}

	.search-menu .genre,
	.search-menu .season {
		width: 100%;
		margin-bottom: 10px
	}

	.search-menu .genre-tree .lage-genre,
	.search-menu .season-tree .lage-season {
		min-width: inherit
	}

	.search-menu .keyword {
		width: 100%;
		margin-bottom: 10px
	}

	.search-menu .days {
		width: 100%;
		margin-bottom: 10px
	}

	.search-menu .season {
		width: 100%;
		margin-bottom: 10px
	}
}

#header a:hover {
	opacity: 0.8;
	transition: all 0.3s
}

#header {
	width: 100%;
	position: relative;
	background: #fff;
	z-index: 20
}

#header .pc-block {
	display: block !important
}

@media only screen and (max-width:1000px) {
	#header .pc-block {
		display: none !important
	}
}

#header .sp-block {
	display: none !important
}

@media only screen and (max-width:1000px) {
	#header .sp-block {
		display: block !important
	}
}

#header .btn-lang {
	font-size: 1.2rem;
	display: flex;
	align-items: center
}

@media only screen and (max-width:1000px) {
	#header .btn-lang {
		justify-content: center
	}
}

#header .btn-lang li {
	padding: 0 1.5em;
	position: relative
}

@media only screen and (max-width:1000px) {
	#header .btn-lang li {
		padding: 0 0.5em
	}
}

#header .btn-lang li a {
	text-decoration: underline
}

#header .btn-lang li:after {
	content: "";
	width: 1px;
	height: 1em;
	background: #fff;
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotateZ(10deg)
}

#header .btn-lang li:last-child:after {
	display: none
}

@media only screen and (max-width:1000px) {
	#header .btn-skip {
		display: none
	}
}

#header .btn-skip a {
	color: #fff;
	font-size: 1.5rem;
	text-align: center;
	display: block;
	width: 100%;
	background: #5CAB75;
	text-decoration: none;
	padding: 1em;
	opacity: 1;
	position: absolute;
	left: 0;
	top: -100px;
	z-index: 10
}

#header .btn-skip a:hover {
	background: #323232
}

#header .btn-skip a:focus {
	opacity: 1;
	top: 0
}

#header .header-wrap {
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: auto 1fr;
	flex-wrap: wrap;
	background: #fff
}

@media only screen and (max-width:1000px) {
	#header .header-wrap {
		grid-template-rows: auto;
		grid-template-columns: auto
	}

	#header .header-wrap.active-h {
		position: fixed
	}
}

#header .header-wrap .logo-h {
	grid-row: 1/2;
	grid-column: 1/2;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 500px;
	position: relative
}

@media only screen and (max-width:1000px) {
	#header .header-wrap .logo-h {
		grid-column: 1/3;
		order: 1;
		background: #fff;
		width: calc(100% - 5.5em);
		justify-content: flex-start
	}
}

#header .header-wrap .logo-h a {
	display: block;
	position: absolute;
	left: 1rem;
	top: 0
}

@media only screen and (max-width:1000px) {
	#header .header-wrap .logo-h a {
		display: block
	}
}

@media only screen and (max-width:768px) {
	#header .header-wrap .logo-h a {
		left: 0.5rem;
		top: 0.4rem
	}
}

#header .header-wrap .logo-h a img {
	width: 182px
}

@media only screen and (max-width:768px) {
	#header .header-wrap .logo-h a img {
		width: 28vw
	}
}

#header .header-wrap .logo-h .logo-campaign-txt {
	max-width: 283px;
	padding: 0.8rem 0
}

@media only screen and (max-width:1000px) {
	#header .header-wrap .logo-h .logo-campaign-txt {
		padding: 1.6rem 0;
		margin-left: 26vw
	}
}

@media only screen and (max-width:768px) {
	#header .header-wrap .logo-h .logo-campaign-txt {
		margin-left: 30vw;
		max-width: 44vw
	}
}

#header .header-wrap .header-contents {
	grid-row: 1/3;
	grid-column: 1/3;
	display: grid;
	grid-template-columns: auto 1fr;
	width: calc(100% - 50rem);
	margin: 0 1.6rem 0 auto
}

@media only screen and (max-width:1000px) {
	#header .header-wrap .header-contents {
		grid-template-rows: auto;
		grid-template-columns: auto;
		width: 100%;
		margin: 0
	}
}

#header {}

#header.up-h {
	animation: UpAnime 1s forwards
}

@keyframes UpAnime {
	0% {
		transform: translateY(0)
	}

	to {
		transform: translateY(-300%)
	}
}

#header {}

#header.down-h {
	animation: DownAnime 1s forwards
}

@keyframes DownAnime {
	0% {
		transform: translateY(-105%)
	}

	to {
		transform: translateY(0)
	}
}

#header #navi {
	background: #fff;
	position: relative;
	order: 4;
	width: 100%;
	grid-row: 2/3;
	grid-column: 1/4
}

@media only screen and (max-width:1000px) {
	#header #navi {
		width: 100%;
		height: 100%;
		padding: 9em 1em;
		background: #323232;
		display: none;
		position: absolute;
		z-index: 1
	}
}

#header #navi .gnavi {
	display: flex;
	justify-content: flex-end;
	gap: 2.4rem
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi {
		display: block
	}
}

#header #navi .gnavi>li {
	display: flex;
	position: relative
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li {
		border-bottom: 1px solid #fff;
		display: block
	}
}

#header #navi .gnavi>li.active.navi-hover,
#header #navi .gnavi>li.active>.u-menu {
	display: block
}

#header #navi .gnavi>li>a,
#header #navi .gnavi>li>span {
	width: 100%;
	padding: 1em 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-bottom: 5px solid #fff
}

@media only screen and (max-width:768px) {

	#header #navi .gnavi>li>a,
	#header #navi .gnavi>li>span {
		font-size: 1.3rem
	}
}

@media only screen and (max-width:1000px) {

	#header #navi .gnavi>li>a,
	#header #navi .gnavi>li>span {
		color: #fff;
		padding: 1em 3em 1.2em 0.3em;
		border: none;
		justify-content: flex-start;
		position: relative
	}

	#header #navi .gnavi>li>a:after,
	#header #navi .gnavi>li>span:after {
		content: "";
		width: 0.8em;
		height: 0.8em;
		-webkit-mask-position: center center;
		mask-position: center center;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-size: contain;
		-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
		mask-image: url(../fonts/ico_arrow_square.svg);
		background: #323232;
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 1em;
		transform: translateY(-50%)
	}
}

#header #navi .gnavi>li>a:hover,
#header #navi .gnavi>li>span:hover {
	border-bottom: 5px solid #5CAB75
}

@media only screen and (max-width:1000px) {

	#header #navi .gnavi>li>a:hover,
	#header #navi .gnavi>li>span:hover {
		border: none
	}
}

#header #navi .gnavi>li>a.to-lower,
#header #navi .gnavi>li>span.to-lower {
	position: relative;
	cursor: pointer
}

#header #navi .gnavi>li>a.to-lower:after,
#header #navi .gnavi>li>span.to-lower:after {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	margin-left: 1rem;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #000;
	transform: rotateZ(90deg)
}

@media only screen and (max-width:1000px) {

	#header #navi .gnavi>li>a.to-lower:after,
	#header #navi .gnavi>li>span.to-lower:after {
		content: "";
		width: 1em;
		height: 0.2em;
		margin: 0;
		-webkit-mask-image: unset;
		mask-image: unset;
		background: #fff;
		top: 50%;
		right: 0.5em;
		border: none;
		transform: translateY(-50%) rotateZ(0)
	}

	#header #navi .gnavi>li>a.to-lower:before,
	#header #navi .gnavi>li>span.to-lower:before {
		content: "";
		width: 0.2em;
		height: 1em;
		margin: 0;
		background: #fff;
		position: absolute;
		top: 50%;
		right: 0.9em;
		transform: translateY(-50%) rotateZ(0)
	}

	#header #navi .gnavi>li>a.to-lower.active:before,
	#header #navi .gnavi>li>span.to-lower.active:before {
		content: none
	}
}

#header #navi .gnavi>li>a.to-lower.active+.u-menu,
#header #navi .gnavi>li>span.to-lower.active+.u-menu {
	display: block
}

#header #navi .gnavi>li>a.to-lower.active+.u-menu.navi-none,
#header #navi .gnavi>li>span.to-lower.active+.u-menu.navi-none {
	display: none
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>a:after {
		content: none
	}
}

#header #navi .gnavi>li>.u-menu {
	min-width: 160px;
	padding: 2.4rem 0;
	display: none;
	background: #f5f5f5;
	position: absolute;
	top: 55px;
	left: 50%;
	transform: translateX(-50%)
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu {
		padding: 0;
		position: static;
		background: none;
		min-width: unset;
		transform: translateX(0)
	}
}

#header #navi .gnavi>li>.u-menu .inner {
	gap: 0 5em;
	width: 100%
}

#header #navi .gnavi>li>.u-menu .inner .ttl-u-menu {
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 1.6rem
}

#header #navi .gnavi>li>.u-menu .inner .btn-base {
	text-align: left
}

#header #navi .gnavi>li>.u-menu .inner ul {
	margin: 0 auto
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul {
		width: 100%;
		margin-bottom: 0.5em
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li {
	padding: 0.8rem 0;
	text-align: center
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li {
		width: auto;
		display: block;
		position: relative;
		margin-bottom: 0.2em;
		text-align: left;
		padding: 0
	}

	#header #navi .gnavi>li>.u-menu .inner ul li:last-child {
		margin-bottom: 0
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li.no-arrow a:before {
	content: none
}

#header #navi .gnavi>li>.u-menu .inner ul li.no-arrow a:after {
	content: none
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li.no-arrow a:before {
		content: "";
		width: 0.5em;
		height: 0.5em;
		position: absolute;
		top: 50%;
		left: 0.3em;
		transform: translateY(-50%);
		left: auto;
		right: 0.3em;
		-webkit-mask-position: center center;
		mask-position: center center;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-size: contain;
		-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
		mask-image: url(../fonts/ico_arrow_square.svg);
		background: #fff
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li a {
	font-size: 1.6rem;
	font-weight: bold
}

@media only screen and (max-width:768px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a {
		font-size: 1.2rem
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li a {
	position: relative
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a {
		font-weight: normal;
		color: #fff
	}
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a:before {
		content: "";
		position: absolute;
		width: 0.5em;
		height: 0.5em;
		top: 50%;
		left: 0.3em;
		transform: translateY(-50%);
		padding: 0.4rem;
		-webkit-mask-position: center center;
		mask-position: center center;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: 8px;
		mask-size: 8px;
		left: auto;
		right: 0.3em;
		-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
		mask-image: url(../fonts/ico_arrow_square.svg);
		-webkit-mask-size: contain;
		mask-size: contain;
		background: #fff;
		z-index: 2
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li a[target=_blank]:after {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	vertical-align: baseline;
	margin-left: 1em;
	right: 0;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #323232;
	z-index: 1
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a {
		padding: 1em 3em 1em 1em;
		display: block
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li a:has(figure) {
	padding-left: 0;
	text-align: center
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a:has(figure) {
		text-align: left;
		padding-left: 1em
	}
}

#header #navi .gnavi>li>.u-menu .inner ul li a figure {
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul li a figure {
		display: none
	}
}

#header #navi .gnavi>li>.u-menu .inner ul.col2 {
	flex-wrap: wrap;
	gap: 1.5em 1em
}

#header #navi .gnavi>li>.u-menu .inner ul.col2 li {
	width: calc(50% - 0.5em)
}

@media only screen and (max-width:1000px) {
	#header #navi .gnavi>li>.u-menu .inner ul.col2 li {
		width: 100%
	}
}

#header.no-link {
	padding: 3em 1em 0;
	margin-bottom: 0
}

@media only screen and (max-width:768px) {
	#header.no-link .btn-skip a {
		display: none
	}
}

#header.no-link .site-name {
	font-size: 4rem;
	font-weight: bold;
	text-align: center
}

@media only screen and (max-width:768px) {
	#header.no-link .site-name {
		font-size: 2rem
	}
}

#header.no-link .logo-h {
	text-align: center
}

#header.no-link .logo-h img {
	width: 30%;
	max-width: 182px
}

@media only screen and (max-width:768px) {
	#header.no-link .logo-h img {
		max-width: 150px
	}
}

#header.fixed-h {
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
	position: fixed;
	top: 0
}

@media only screen and (min-width:1021px) {
	#header.fixed-h .header-wrap .logo-h {
		width: 460px
	}

	#header.fixed-h .header-wrap .logo-h a img {
		width: 150px
	}

	#header.fixed-h #navi .gnavi li a {
		font-size: 1.6rem
	}

	#header.fixed-h #navi .gnavi li .u-menu {
		top: 55px
	}
}

.btn-menu {
	display: none
}

@media only screen and (max-width:1000px) {
	.btn-menu {
		display: block;
		cursor: pointer;
		position: absolute;
		top: 50%;
		right: 3%;
		z-index: 25;
		transform: translateY(-50%)
	}
}

.btn-menu .btn-s {
	display: block;
	text-align: center
}

.btn-menu .btn-s div {
	position: relative;
	width: 28px;
	height: 19px;
	display: inline-block;
	vertical-align: middle
}

.btn-menu .btn-s div span {
	display: inline-block;
	transition: all 0.4s;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
	border-radius: 3px
}

.btn-menu .btn-s div span:first-of-type {
	top: 0
}

.btn-menu .btn-s div span:nth-of-type(2) {
	top: 9px
}

.btn-menu .btn-s div span:nth-of-type(3) {
	bottom: 0
}

.btn-menu .btn-s div span:nth-of-type(2):after {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 2px;
	background-color: #000;
	transition: all 0.4s
}

.btn-menu .btn-s.open span:first-of-type {
	transform: translateY(20px) scale(0)
}

.btn-menu .btn-s.open span:nth-of-type(2) {
	transform: rotate(-45deg)
}

.btn-menu .btn-s.open span:nth-of-type(2):after {
	transform: rotate(90deg)
}

.btn-menu .btn-s.open span:nth-of-type(3) {
	transform: translateY(-20px) scale(0)
}

.btn-menu .btn-s p {
	min-width: 3.5em;
	display: block;
	font-size: 70%;
	width: 100%;
	margin-top: 0.2em;
	padding: 0 0.3em;
	background: none;
	border: none;
	display: block
}

body.fixed-h #header {
	position: fixed;
	top: 0
}

@media only screen and (min-width:1021px) {
	body.fixed-h #header {
		padding: 0.5em
	}
}

@media only screen and (min-width:1021px) {
	body.fixed-h #header .logo-h img {
		width: 150px
	}
}

@media only screen and (min-width:1021px) {
	body.fixed-h #header #navi {
		width: 100%;
		background: #fff;
		position: fixed;
		top: 68px;
		z-index: 20
	}
}

@media only screen and (max-width:1000px) {
	body.fixed-body {
		position: fixed;
		width: 100%;
		height: 100%;
		overflow: hidden
	}

	body.fixed-body #header {
		overflow-y: scroll;
		height: 100vh;
		position: fixed;
		top: 0;
		background: #5CAB75
	}

	body.fixed-body #header .header-wrap {
		width: 100%;
		grid-template-rows: auto;
		grid-template-columns: auto;
		background: none
	}

	body.fixed-body #header .header-wrap .header-contents {
		grid-template-rows: none;
		grid-template-columns: none;
		order: 2
	}

	body.fixed-body #header .header-wrap .header-contents #navi {
		display: block;
		position: relative;
		background: none;
		width: 100%;
		height: 100%;
		grid-row: auto;
		grid-column: auto;
		order: 1
	}

	body.fixed-body #header .header-wrap .header-contents .function-block {
		display: block;
		width: 100%;
		grid-row: auto;
		grid-column: auto;
		padding: 1em 0;
		order: 2
	}
}

@media only screen and (max-width:1000px) and (max-width:768px) {
	body.fixed-body #header .header-wrap .header-contents .function-block {
		padding: 1em 0 15em
	}
}

@media only screen and (max-width:1000px) {
	body.fixed-body #header .header-wrap .header-contents .function-block .list-sns {
		justify-content: center;
		margin-bottom: 1.6rem
	}

	body.fixed-body #header .btn-menu {
		top: 1em;
		transform: none
	}
}

#footer {
	padding: 5.6rem 0 10vw;
	position: relative;
	z-index: 10
}

#footer:after {
	content: "";
	width: 100%;
	height: 28vw;
	position: absolute;
	display: block;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: url(../images/bg_footer.png) no-repeat center center/cover;
	z-index: -1
}

#footer .page-top {
	position: relative;
	z-index: 100
}

#footer .page-top a {
	position: fixed;
	right: 3%;
	bottom: 5%;
	transition: all 0.4s
}

@media only screen and (max-width:768px) {
	#footer .page-top a {
		font-size: 1.3rem
	}
}

#footer .page-top a:hover {
	opacity: 0.7
}

#footer .page-top a span {
	display: block;
	position: relative;
	z-index: 1;
	overflow: hidden;
	color: #fff;
	line-height: 1.3;
	letter-spacing: 0.1em;
	text-align: center;
	border-radius: 20px;
	padding: 6rem 1.5rem 1.5rem;
	background: #5CAB75;
	border: 1px solid #fff
}

#footer .page-top a span:before {
	content: "";
	width: 29px;
	height: 37px;
	position: absolute;
	top: 15px;
	left: 50%;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_pagetop_arrow.svg);
	mask-image: url(../images/ico_pagetop_arrow.svg);
	background: #fff;
	display: inline-block;
	transform: translate(-50%, 0) rotateZ(-90deg)
}

@media only screen and (max-width:768px) {
	#footer .page-top a {
		bottom: 1em
	}
}

#footer .page-top a:after {
	content: "";
	width: 107px;
	height: 106px;
	position: absolute;
	bottom: 5px;
	left: -40px;
	background: url(../images/ico_pagetop.svg) no-repeat center center/cover;
	display: inline-block;
	z-index: 0;
	transition: 0.3s all
}

#footer .page-top a:hover {
	opacity: 1
}

#footer .page-top a:hover:after {
	bottom: 10px;
	left: -45px
}

#footer .link-footer {
	display: flex;
	justify-content: flex-end;
	gap: 0 2em;
	margin-bottom: 7.2rem
}

@media only screen and (max-width:1100px) {
	#footer .link-footer {
		flex-wrap: wrap;
		justify-content: center
	}
}

@media only screen and (max-width:768px) {
	#footer .link-footer {
		margin-bottom: 2.4rem
	}
}

#footer .link-footer li {
	margin-bottom: 2.4rem;
	position: relative
}

#footer .link-footer li:not(:last-child):after {
	content: "|";
	display: inline-block;
	width: auto;
	height: 100%;
	margin-left: 1em
}

#footer .link-footer li a {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center
}

@media only screen and (max-width:768px) {
	#footer .link-footer li a {
		font-size: 1.4rem
	}
}

#footer .info-footer {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 4rem;
	margin-bottom: 7.2rem
}

@media only screen and (max-width:1300px) {
	#footer .info-footer {
		justify-content: center
	}
}

@media only screen and (max-width:768px) {
	#footer .info-footer {
		margin-bottom: 2.4rem
	}
}

#footer .info-footer .logo-footer img {
	width: 22.6rem
}

@media only screen and (max-width:1300px) {
	#footer .info-footer .logo-footer {
		width: 100%
	}

	#footer .info-footer .logo-footer a {
		display: block;
		max-width: 18.5rem;
		margin: 0 auto 2rem
	}
}

@media only screen and (max-width:768px) {
	#footer .info-footer .logo-footer {
		margin: 0 auto 1rem
	}
}

#footer .info-footer .address {
	font-size: 1.8rem;
	line-height: 1.6
}

@media only screen and (max-width:768px) {
	#footer .info-footer .address {
		font-size: 1.4rem
	}
}

@media only screen and (max-width:768px) {
	#footer .info-footer .address {
		margin: 0 auto 2rem;
		margin-bottom: 2.4rem
	}
}

#footer .info-footer .address dt {
	margin-bottom: 0.8rem
}

#footer .copy {
	font-size: 1.6rem;
	text-align: center;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {
	#footer .copy {
		font-size: 1.2rem
	}
}

#footer.no-link {
	padding: 2.4rem 0
}

.page-ttl {
	background: #F0EFEA;
	font-size: 3.7rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.08em;
	padding: 4.8rem 1.6rem;
	border-radius: 0 0 0 80px;
	position: relative;
	margin-bottom: 2.4rem
}

@media only screen and (max-width:768px) {
	.page-ttl {
		padding: 1.6rem;
		border-radius: 0 0 0 40px
	}
}

.page-ttl .ttl {
	position: relative;
	display: inline-block
}

.page-ttl .ttl:after {
	content: "";
	display: inline-block;
	width: 100%;
	height: auto;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%)
}

@media only screen and (max-width:768px) {
	.page-ttl {
		font-size: 2.7rem
	}
}

.page-ttl.spot .ttl {
	text-indent: -200%;
	overflow: hidden;
	min-height: 141px
}

@media only screen and (max-width:768px) {
	.page-ttl.spot .ttl {
		min-height: 80px
	}
}

.page-ttl.spot .ttl:after {
	aspect-ratio: 235/141;
	background: url(../images/page_ttl_spot.png) no-repeat center center/contain
}

.page-ttl.feature .ttl {
	text-indent: -200%;
	overflow: hidden;
	min-height: 141px
}

@media only screen and (max-width:768px) {
	.page-ttl.feature .ttl {
		min-height: 80px
	}
}

.page-ttl.feature .ttl:after {
	aspect-ratio: 376/141;
	background: url(../images/page_ttl_feature.png) no-repeat center center/contain
}

.page-ttl.area .ttl {
	text-indent: -200%;
	overflow: hidden;
	min-height: 141px
}

@media only screen and (max-width:768px) {
	.page-ttl.area .ttl {
		min-height: 80px
	}
}

.page-ttl.area .ttl:after {
	aspect-ratio: 376/141;
	background: url(../images/page_ttl_area.png) no-repeat center center/contain
}

.page-ttl.tickets .ttl {
	text-indent: -200%;
	overflow: hidden;
	min-height: 147px
}

@media only screen and (max-width:768px) {
	.page-ttl.tickets .ttl {
		min-height: 80px
	}
}

.page-ttl.tickets .ttl:after {
	aspect-ratio: 616/147;
	background: url(../images/page_ttl_tickets.png) no-repeat center center/contain
}

.page-ttl.train .ttl {
	text-indent: -200%;
	overflow: hidden;
	min-height: 147px
}

@media only screen and (max-width:768px) {
	.page-ttl.train .ttl {
		min-height: 80px
	}
}

.page-ttl.train .ttl:after {
	aspect-ratio: 616/147;
	background: url(../images/page_ttl_train.png) no-repeat center center/contain
}

.page-sttl {
	position: relative;
	aspect-ratio: 1280/350;
	max-height: 380px;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	margin-bottom: 2.4rem
}

.page-sttl:after {
	content: "";
	display: block;
	width: 100%;
	max-width: 1280px;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: -1
}

.page-sttl .ttl {
	text-indent: -200%;
	overflow: hidden
}

.page-sttl .ttl:after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

@media only screen and (max-width:768px) {
	.page-sttl {
		font-size: 2.7rem
	}
}

.page-sttl.gourmet:after {
	background: url(../images/bg_sttl_gourmet.jpg) no-repeat center center/contain
}

.page-sttl.gourmet .ttl:after {
	width: 25.93%;
	max-width: 332px;
	aspect-ratio: 332/166;
	background: url(../images/sttl_gourmet.png) no-repeat center center/contain
}

.page-sttl.activity:after {
	background: url(../images/bg_sttl_activity.jpg) no-repeat center center/contain
}

.page-sttl.activity .ttl:after {
	width: 26.71%;
	max-width: 342px;
	aspect-ratio: 342/166;
	background: url(../images/sttl_activity.png) no-repeat center center/contain
}

.page-sttl.cultural:after {
	background: url(../images/bg_sttl_cultural.jpg) no-repeat center center/contain
}

.page-sttl.cultural .ttl:after {
	width: 30.15%;
	max-width: 384px;
	aspect-ratio: 384/170;
	background: url(../images/sttl_cultural.png) no-repeat center center/contain
}

.page-sttl.view:after {
	background: url(../images/bg_sttl_view.jpg) no-repeat center center/contain
}

.page-sttl.view .ttl:after {
	width: 23.59%;
	max-width: 302px;
	aspect-ratio: 302/174;
	background: url(../images/sttl_view.png) no-repeat center center/contain
}

.page-sttl.kumamon:after {
	background: url(../images/bg_sttl_kumamon.jpg) no-repeat center center/contain
}

.page-sttl.kumamon .ttl:after {
	width: 27.34%;
	max-width: 350px;
	aspect-ratio: 350/172;
	top: 60%;
	background: url(../images/sttl_kumamon.png) no-repeat center center/contain
}

.ttl-large {
	font-size: 3rem;
	font-weight: bold;
	padding: 1.6rem 0;
	margin: 6.4rem 0 2.4rem;
	position: relative
}

.ttl-large:after {
	content: "";
	background: #5CAB75;
	display: block;
	width: 6rem;
	height: 0.2rem;
	position: absolute;
	left: 0;
	bottom: 0
}

@media only screen and (max-width:768px) {
	.ttl-large {
		margin: 4.8rem 0 2.4rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-large {
		font-size: 2.6rem
	}
}

.ttl-small {
	font-size: 2.6rem;
	font-weight: bold;
	margin: 4rem 0 2.4rem
}

@media only screen and (max-width:768px) {
	.ttl-small {
		font-size: 2.2rem
	}
}

.ttl-border-b {
	color: #5CAB75;
	border-bottom: 4px solid #5CAB75;
	font-size: 2rem;
	font-weight: bold;
	padding: 1.6rem 0;
	margin: 2.4rem 0
}

@media only screen and (max-width:768px) {
	.ttl-border-b {
		font-size: 1.8rem
	}
}

.ttl-border-l {
	border-left: 7px solid #5CAB75;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0.8rem 1.6rem;
	margin: 2.4rem 0
}

@media only screen and (max-width:768px) {
	.ttl-border-l {
		font-size: 1.6rem
	}
}

a.btn-base,
button.btn-base {
	color: #fff;
	background: #000;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.1em;
	border: none;
	border-radius: 100px;
	box-sizing: border-box;
	display: block;
	padding: 2.4rem 3.8rem;
	position: relative;
	min-width: 300px
}

@media only screen and (max-width:768px) {

	a.btn-base,
	button.btn-base {
		width: 100%;
		margin: 0 auto;
		min-width: auto
	}
}

a.btn-base:hover,
button.btn-base:hover {
	opacity: 0.7
}

a.btn-base.normal,
button.btn-base.normal {
	font-size: 1.6rem;
	font-weight: normal;
	padding: 1.6rem 3.2rem
}

a.btn-base.back,
button.btn-base.back {
	padding: 2.4rem 3.8rem 2.4rem 5rem
}

a.btn-base.back:before,
button.btn-base.back:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_red.svg);
	mask-image: url(../fonts/ico_arrow_red.svg);
	background: #E01F06;
	width: 15px;
	height: 25px;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 2.4rem;
	transform: translateY(-50%) rotate(-90deg)
}

a.btn-base.arrow,
button.btn-base.arrow {
	padding: 2.4rem 5rem 2.4rem 3.8rem
}

a.btn-base.arrow:after,
button.btn-base.arrow:after {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_red.svg);
	mask-image: url(../img/common/ico_arrow_red.svg);
	background: #E01F06;
	width: 15px;
	height: 25px;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 2.4rem;
	transform: translateY(-50%)
}

a.btn-base[target=_blank]:after,
button.btn-base[target=_blank]:after {
	content: "";
	width: 1em;
	height: 1em;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #FFF;
	z-index: 1
}

a.btn-base[href$=".pdf"],
button.btn-base[href$=".pdf"] {
	padding: 2.4rem 4.8rem 2.4rem 4rem
}

a.btn-base[href$=".pdf"]:after,
button.btn-base[href$=".pdf"]:after {
	content: "";
	-webkit-mask-image: unset;
	mask-image: unset;
	background: url(../fonts/ico_pdf.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

a.btn-base[href$=".doc"],
a.btn-base[href$=".docm"],
a.btn-base[href$=".docx"],
a.btn-base[href$=".dot"],
a.btn-base[href$=".dotm"],
button.btn-base[href$=".doc"],
button.btn-base[href$=".docm"],
button.btn-base[href$=".docx"],
button.btn-base[href$=".dot"],
button.btn-base[href$=".dotm"] {
	padding: 2.4rem 4.8rem 2.4rem 4rem
}

a.btn-base[href$=".doc"]:after,
a.btn-base[href$=".docm"]:after,
a.btn-base[href$=".docx"]:after,
a.btn-base[href$=".dot"]:after,
a.btn-base[href$=".dotm"]:after,
button.btn-base[href$=".doc"]:after,
button.btn-base[href$=".docm"]:after,
button.btn-base[href$=".docx"]:after,
button.btn-base[href$=".dot"]:after,
button.btn-base[href$=".dotm"]:after {
	content: "";
	-webkit-mask-image: unset;
	mask-image: unset;
	background: url(../fonts/ico_word.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

a.btn-base[href$=".xls"],
a.btn-base[href$=".xlsb"],
a.btn-base[href$=".xlsm"],
a.btn-base[href$=".xlsx"],
a.btn-base[href$=".xltm"],
a.btn-base[href$=".xltx"],
button.btn-base[href$=".xls"],
button.btn-base[href$=".xlsb"],
button.btn-base[href$=".xlsm"],
button.btn-base[href$=".xlsx"],
button.btn-base[href$=".xltm"],
button.btn-base[href$=".xltx"] {
	padding: 2.4rem 4.8rem 2.4rem 4rem
}

a.btn-base[href$=".xls"]:after,
a.btn-base[href$=".xlsb"]:after,
a.btn-base[href$=".xlsm"]:after,
a.btn-base[href$=".xlsx"]:after,
a.btn-base[href$=".xltm"]:after,
a.btn-base[href$=".xltx"]:after,
button.btn-base[href$=".xls"]:after,
button.btn-base[href$=".xlsb"]:after,
button.btn-base[href$=".xlsm"]:after,
button.btn-base[href$=".xlsx"]:after,
button.btn-base[href$=".xltm"]:after,
button.btn-base[href$=".xltx"]:after {
	content: "";
	-webkit-mask-image: unset;
	mask-image: unset;
	background: url(../fonts/ico_excel.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

a.btn-base[href$=".potm"],
a.btn-base[href$=".potx"],
a.btn-base[href$=".ppt"],
a.btn-base[href$=".pptm"],
a.btn-base[href$=".pptx"],
button.btn-base[href$=".potm"],
button.btn-base[href$=".potx"],
button.btn-base[href$=".ppt"],
button.btn-base[href$=".pptm"],
button.btn-base[href$=".pptx"] {
	padding: 2.4rem 4.8rem 2.4rem 4rem
}

a.btn-base[href$=".potm"]:after,
a.btn-base[href$=".potx"]:after,
a.btn-base[href$=".ppt"]:after,
a.btn-base[href$=".pptm"]:after,
a.btn-base[href$=".pptx"]:after,
button.btn-base[href$=".potm"]:after,
button.btn-base[href$=".potx"]:after,
button.btn-base[href$=".ppt"]:after,
button.btn-base[href$=".pptm"]:after,
button.btn-base[href$=".pptx"]:after {
	content: "";
	-webkit-mask-image: unset;
	mask-image: unset;
	background: url(../fonts/ico_powerpoint.svg) no-repeat center center/contain;
	width: 1.2em;
	height: 1.6em
}

a.btn-base.border,
button.btn-base.border {
	color: #000;
	background: #fff;
	border: 1px solid #B5B5B5
}

a.btn-base.border:after,
button.btn-base.border:after {
	background: #323232
}

a.btn-base.clear,
button.btn-base.clear {
	color: #5e606e;
	background: #fff;
	vertical-align: middle;
	border: 1px solid #B5B5B5
}

a.btn-base.print,
button.btn-base.print {
	color: #000;
	background: #fff;
	border: 1px solid #B5B5B5;
	position: relative
}

a.btn-base.print:before,
button.btn-base.print:before {
	content: "";
	width: 2.4rem;
	min-width: 2.4rem;
	height: 2.6rem;
	display: inline-block;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_print.svg);
	mask-image: url(../fonts/ico_print.svg);
	background: #323232;
	position: absolute;
	left: 2.4rem;
	top: 50%;
	transform: translateY(-50%)
}

a.btn-base.grayout,
button.btn-base.grayout {
	background: #dfdfdf;
	pointer-events: none
}

a.btn-base.edit,
button.btn-base.edit {
	color: #000;
	background: #EEEEEE
}

a.btn-base.edit:after,
button.btn-base.edit:after {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #323232;
	width: 0.8em;
	height: 0.8em;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 2.4rem;
	transform: translateY(-50%) rotate(180deg)
}

a.btn-base.search,
button.btn-base.search {
	display: flex;
	align-items: center;
	justify-content: center
}

a.btn-base.search:before,
button.btn-base.search:before {
	content: "";
	width: 1.2em;
	min-width: 1.2em;
	height: 1.2em;
	display: inline-block;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_search.svg);
	mask-image: url(../fonts/ico_search.svg);
	background: #fff;
	margin-right: 1.6rem
}

.icon-new {
	color: #fff;
	background: #FF3333;
	border: 1px solid #FF3333;
	border-radius: 6px;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	padding: 0.3rem 1.6rem;
	margin: 0 0.8rem 0 1.6rem;
	position: relative
}

@media only screen and (max-width:768px) {
	.icon-new {
		margin: 0 0.8rem 0 0.8rem
	}
}

.category {
	color: #FF3333;
	background: #fff;
	border: 1px solid #FF3333;
	border-radius: 6px;
	font-size: 1.2rem;
	text-align: center;
	display: inline-block;
	padding: 0.3rem 1.6rem;
	margin: 0 0.8rem 0.8rem 0
}

.category.color01 {
	color: #fff;
	background: #111111;
	border-color: #111111
}

.category.color02 {
	color: #0568BE;
	background: #fff;
	border-color: #A3A3A3
}

.category.color03 {
	color: #DD2E24;
	background: #fff;
	border-color: #A3A3A3
}

.category.color04 {
	color: #85144B;
	background: #fff;
	border-color: #A3A3A3
}

.category.color05 {
	color: #B10DC9;
	background: #fff;
	border-color: #A3A3A3
}

.category.color06 {
	color: #D71BAC;
	background: #fff;
	border-color: #A3A3A3
}

.category.color07 {
	color: #fff;
	background: #B10DC9;
	border-color: #B10DC9
}

.category.color08 {
	color: #fff;
	background: #85144B;
	border-color: #85144B
}

.category.color09 {
	color: #fff;
	background: #DD2E24;
	border-color: #DD2E24
}

.category.color10 {
	color: #fff;
	background: #0568BE;
	border-color: #0568BE
}

.category.color11 {
	color: #111111;
	background: #F012BE;
	border-color: #F012BE
}

.category.color12 {
	color: #111111;
	background: #FFDC00;
	border-color: #FFDC00
}

.category.color13 {
	color: #111111;
	background: #FF851B;
	border-color: #FF851B
}

.category.color14 {
	color: #111111;
	background: #63CCFF;
	border-color: #63CCFF
}

.category.color15 {
	color: #111111;
	background: #39CCCC;
	border-color: #39CCCC
}

.category.color16 {
	color: #111111;
	background: #3D9970;
	border-color: #3D9970
}

.category.color17 {
	color: #111111;
	background: #2ECC40;
	border-color: #2ECC40
}

.category.color18 {
	color: #111111;
	background: #DB8D66;
	border-color: #DB8D66
}

.category.color19 {
	color: #111111;
	background: #E5E8EB;
	border-color: #E5E8EB
}

.category.color20 {
	color: #111111;
	background: #F3DAAA;
	border-color: #F3DAAA
}

.list-icon {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start
}

.list-icon .icon-new {
	margin: 0 0.8rem 0.8rem 0
}

.list-icon a:hover {
	opacity: 0.7
}

.list-area {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1rem;
	margin-bottom: 0.8rem
}

.list-area li {
	color: #4BBCA3;
	font-size: 1.4rem
}

@media only screen and (max-width:768px) {
	.list-area li {
		font-size: 1.4rem
	}
}

.badge {
	font-size: 1.6rem;
	text-align: center;
	line-height: 4rem;
	display: block;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	z-index: 2
}

.badge.new {
	color: #fff;
	background: #F0EFEA
}

.badge.open {
	color: #fff;
	background: #5CAB75
}

.badge.close {
	color: #fff;
	background: #4E4E4E
}

.badge.rank {
	color: #fff;
	background: #5CAB75
}

.bg-c {
	padding: 3.2rem 0;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {
	.bg-c {
		padding: 1.6rem 0
	}
}

.bg-c.inside {
	padding: 3.2rem
}

@media only screen and (max-width:768px) {
	.bg-c.inside {
		padding: 1.6rem
	}
}

.bg-c.radius {
	border-radius: 58px
}

@media only screen and (max-width:768px) {
	.bg-c.radius {
		border-radius: 29px
	}
}

.bg-c.gray {
	background: #EEEEEE
}

.bg-c.white {
	background: #fff
}

.bg-c.green {
	background: #5CAB75
}

.bg-c.beige {
	background: #F0EFEA
}

ol.list-num {
	margin: 1.6rem 0
}

ol.list-num li {
	text-indent: -1.9em;
	padding-left: 2em;
	list-style-type: none;
	counter-increment: cnt;
	margin-bottom: 0.8rem
}

ol.list-num li:before {
	content: "(" counter(cnt) ")";
	margin-right: 0.8rem
}

.list-circle {
	list-style: disc;
	margin: 1.6rem 0
}

.list-circle li {
	margin-left: 1.5em;
	margin-bottom: 0.8rem
}

.list-square {
	margin: 1.6rem 0
}

.list-square li {
	padding-left: 1.5em;
	list-style-type: none;
	position: relative;
	margin-bottom: 0.8rem
}

.list-square li:before {
	content: "";
	background: #5CAB75;
	width: 1rem;
	height: 1rem;
	display: inline-block;
	position: absolute;
	top: 0.45em;
	left: 0.4rem
}

.list-mark {
	position: relative;
	padding-left: 1.5em;
	margin: 1.6rem 0
}

.list-mark li {
	margin-bottom: 0.8rem
}

.list-mark li .mark {
	position: absolute;
	left: 0
}

.breadCrumbs {
	width: 1080px;
	margin: 0 auto;
	position: relative
}

@media only screen and (max-width:1380px) {
	.breadCrumbs {
		width: 94%;
		max-width: 1080px
	}
}

@media only screen and (max-width:1100px) {
	.breadCrumbs {
		width: 92%
	}
}

.breadCrumbs {
	margin-bottom: 1.6rem
}

.breadCrumbs ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap
}

.breadCrumbs ul li {
	font-size: 1.4rem;
	vertical-align: middle;
	margin-right: 1.6rem;
	display: inline-block
}

@media only screen and (max-width:768px) {
	.breadCrumbs ul li {
		font-size: 1.3rem
	}
}

.breadCrumbs ul li a {
	vertical-align: middle;
	text-decoration: underline;
	margin-right: 0.8em
}

.breadCrumbs ul li a[aria-current] {
	text-decoration: none
}

.breadCrumbs ul li:after {
	content: "";
	background: url(../fonts/ico_arrow_radius.svg) no-repeat center center/contain;
	width: 0.5em;
	height: 0.8em;
	display: inline-block;
	vertical-align: middle
}

.breadCrumbs ul li:last-child:after {
	display: none
}

.conditions {
	display: flex;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {
	.conditions {
		display: block
	}
}

.conditions .paging-result {
	float: right;
	font-weight: bold
}

.conditions dl {
	display: flex
}

@media only screen and (max-width:768px) {
	.conditions dl {
		width: 100%;
		display: block
	}
}

.conditions dl dt {
	white-space: nowrap
}

@media only screen and (max-width:768px) {
	.conditions dl dt {
		margin: 0 0 1.6rem 0
	}
}

.conditions dl dt:after {
	content: ":";
	display: inline-block;
	margin: 0 0.8rem
}

.conditions dl dd .list-conditions {
	display: flex;
	flex-wrap: wrap
}

.conditions dl dd .list-conditions li {
	margin: 0 0.8rem 0.8rem 0
}

.conditions dl dd .list-conditions li a,
.conditions dl dd .list-conditions li span {
	font-size: 1.2rem;
	border: 1px solid #B5B5B5;
	border-radius: 100px;
	vertical-align: middle;
	cursor: pointer;
	position: relative;
	display: inline-block
}

.conditions dl dd .list-conditions li span {
	padding: 0.5rem 1.6rem
}

.conditions dl dd .list-conditions li a {
	padding: 0.5rem 3.2rem 0.5rem 1.6rem
}

.conditions dl dd .list-conditions li a:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_clear.svg);
	mask-image: url(../fonts/ico_clear.svg);
	background: #323232;
	display: block;
	width: 0.8rem;
	height: 0.8rem;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	transform: translateY(-50%)
}

@media only screen and (max-width:768px) {
	.conditions .btn-delete {
		text-align: right
	}
}

.conditions .btn-delete a {
	color: #fff;
	background: #000;
	border-radius: 100px;
	font-size: 1.2rem;
	white-space: nowrap;
	padding: 0.5rem 3.2rem 0.5rem 1.6rem;
	margin: 0;
	display: block;
	position: relative
}

@media only screen and (max-width:768px) {
	.conditions .btn-delete a {
		margin: 0.8rem 0;
		display: inline-block
	}
}

.conditions .btn-delete a:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_clear.svg);
	mask-image: url(../fonts/ico_clear.svg);
	background: #fff;
	display: block;
	width: 0.8rem;
	height: 0.8rem;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	transform: translateY(-50%);
	z-index: 2
}

.sort-block {
	position: relative;
	text-align: right;
	margin-bottom: 2.4rem
}

.sort-block .ac-p {
	background: #fff;
	display: inline-block;
	position: relative;
	cursor: pointer
}

.sort-block .ac-p:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_sort.svg);
	mask-image: url(../fonts/ico_sort.svg);
	background: #323232;
	display: inline-block;
	width: 1.5rem;
	height: 1.3rem;
	margin-right: 0.8rem
}

.sort-block .ac-c {
	display: none;
	background: #fff;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.32);
	position: absolute;
	top: calc(100% + 0.8rem);
	right: 0;
	z-index: 10;
	min-width: 9em
}

@media only screen and (max-width:768px) {
	.sort-block .ac-c {
		width: 100%
	}
}

.sort-block .ac-c a {
	color: #000;
	text-align: left;
	padding: 1.6rem 1.6rem 1.6rem 3.2rem;
	border-top: 1px solid #EEEEEE;
	display: block;
	position: relative
}

.sort-block .ac-c a.active {
	background: #f5f5f5
}

.sort-block .ac-c a.active:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_sort_check.svg);
	mask-image: url(../fonts/ico_sort_check.svg);
	background: #323232;
	display: inline-block;
	width: 0.9rem;
	height: 0.7rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 1.6rem
}

.sort-block .ac-c a:hover {
	background: #f5f5f5
}

.count-disp {
	display: block;
	margin-bottom: 1.6rem
}

.count-disp.count-col {
	display: flex;
	justify-content: space-between
}

@media only screen and (max-width:768px) {
	.count-disp.count-col {
		display: block
	}
}

.paging {}

.paging .word {
	letter-spacing: 0.1em;
	margin-bottom: 1.6rem
}

.paging .word .count,
.paging .word .search-word {
	color: #000;
	font-size: 2.4rem
}

@media only screen and (max-width:768px) {

	.paging .word .count,
	.paging .word .search-word {
		font-size: 2rem
	}
}

.paging .word .count {
	margin-right: 0.8rem
}

.paging {}

.paging .count {
	margin-bottom: 2.4rem
}

.paging .count span {
	margin: 0 0.8rem
}

.paging {}

.paging .pagingIn {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap
}

@media only screen and (max-width:768px) {
	.paging .pagingIn {
		flex-wrap: nowrap;
		justify-content: center
	}
}

.paging .pagingIn.center {
	justify-content: center
}

.paging .pagingIn>span {
	margin-bottom: 0.8rem
}

.paging span a {
	color: #323232;
	background: #fff;
	border: 1px solid #5CAB75;
	border-radius: 8px;
	display: inline-block;
	padding: 0.8rem 1.55rem;
	margin: 0 0.8rem
}

@media only screen and (max-width:768px) {
	.paging span a {
		display: none
	}
}

.paging span a:hover {
	color: #fff;
	background: #5CAB75;
	opacity: 1
}

.paging span a:hover:before {
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #fff
}

.paging .current {
	color: #fff;
	background: #5CAB75;
	display: inline-block;
	border-radius: 8px;
	padding: 0.8rem 1.55rem;
	margin: 0 0.8rem
}

@media only screen and (max-width:768px) {
	.paging .current {
		display: none
	}
}

.paging .next a,
.paging .prev a {
	padding: 0.8rem 2.4rem;
	position: relative
}

@media only screen and (max-width:768px) {

	.paging .next a,
	.paging .prev a {
		display: block
	}
}

.paging .next a:before,
.paging .prev a:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #323232;
	width: 0.8em;
	height: 0.8em;
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%)
}

.paging .prev a {
	padding-left: 4rem
}

.paging .prev a:before {
	left: 1.6rem;
	transform: translateY(-50%) rotateZ(180deg)
}

.paging .next a {
	padding-right: 4rem
}

.paging .next a:before {
	right: 1.6rem
}

.list-sns {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	margin: 0 2rem
}

@media only screen and (max-width:768px) {
	.list-sns {
		justify-content: center
	}
}

.list-sns li a {
	display: block;
	padding: 0.5em
}

.list-sns li img {
	width: 32px
}

.share-block {
	background: #f6f6f9;
	padding: 1.6rem;
	width: fit-content
}

@media only screen and (max-width:1300px) {
	.share-block {
		padding: 1.6rem
	}
}

@media only screen and (max-width:1100px) {
	.share-block {
		background: none;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0;
		width: 100%;
		margin-bottom: 4rem
	}
}

.share-block .btn-bookmark {
	color: #000;
	background: #fff;
	border: none;
	border-radius: 50%;
	text-align: center;
	width: 8rem;
	height: 8rem;
	word-break: keep-all;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding-top: 0.8rem;
	margin: 0 auto;
	margin-bottom: 2.4rem
}

@media only screen and (max-width:768px) {
	.share-block .btn-bookmark {
		width: 6rem;
		height: 6rem
	}
}

@media only screen and (max-width:1100px) {
	.share-block .btn-bookmark {
		margin: 0;
		border: 1px solid #B5B5B5
	}
}

@media only screen and (max-width:1300px) {
	.share-block .btn-bookmark img {
		width: 100%;
		max-width: 16px;
		display: block
	}
}

.share-block .btn-bookmark span {
	font-size: 1.3rem;
	font-weight: bold;
	display: block;
	width: 100%
}

@media only screen and (max-width:1100px) {
	.share-block>dl {
		display: flex;
		align-items: center
	}
}

.share-block>dl dt {
	font-weight: bold;
	text-align: center;
	margin-bottom: 0.8rem;
	word-break: keep-all
}

@media only screen and (max-width:1100px) {
	.share-block>dl dt {
		margin: 0
	}
}

.share-block>dl dd .list-sns {
	flex-direction: column
}

@media only screen and (max-width:1100px) {
	.share-block>dl dd .list-sns {
		flex-direction: unset
	}
}

.share-block>dl dd .list-sns li {
	margin: 0;
	margin-bottom: 2.4rem
}

.share-block>dl dd .list-sns li:last-child {
	margin: 0
}

@media only screen and (max-width:1100px) {
	.share-block>dl dd .list-sns li {
		margin: 0
	}
}

.share-block.side-btn {
	position: relative;
	left: 0;
	z-index: 11
}

@media only screen and (max-width:1100px) {
	.share-block.side-btn {
		position: relative !important;
		bottom: 0 !important
	}
}

.share-block.side-btn .list-sns li {
	max-width: none;
	margin-bottom: 0
}

.share-block.fixed {
	position: fixed
}

.anchor-link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 2.4rem
}

.anchor-link>li {
	width: 23%;
	margin: 0 2.6666666667% 1.5em 0
}

@media only screen and (max-width:768px) {
	.anchor-link>li {
		width: 48%;
		margin: 0 4% 1em 0
	}
}

@media only screen and (max-width:768px) {
	.anchor-link>li:nth-child(2n) {
		margin-right: 0 !important
	}
}

.anchor-link>li:nth-child(4n) {
	margin-right: 0
}

@media only screen and (max-width:768px) {
	.anchor-link>li:nth-child(4n) {
		margin: 0 4% 2em 0
	}
}

.anchor-link>li a {
	border: 1px solid #9a9a9a;
	width: 100%;
	height: 100%;
	padding: 1.6rem 3.2rem 1.6rem 1.6rem;
	display: flex;
	align-items: center;
	border-radius: 10px;
	position: relative
}

@media only screen and (max-width:768px) {
	.anchor-link>li a {
		font-size: 1.3rem
	}
}

@media only screen and (max-width:768px) {
	.anchor-link>li a {
		padding: 0.8rem
	}
}

.anchor-link>li a:after {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #323232;
	width: 0.8em;
	height: 0.8em;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	transform: translateY(-50%) rotate(90deg)
}

.anchor-link>li a:hover {
	opacity: 0.7
}

.tab-list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2.4rem
}

.tab-list>li {
	margin-right: 2%;
	flex: 1;
	display: flex
}

.tab-list>li:last-child {
	margin-right: 0
}

.tab-list>li a {
	color: #fff;
	background: #323232;
	width: 100%;
	padding: 1.6rem;
	display: grid;
	place-content: center
}

@media only screen and (max-width:768px) {
	.tab-list>li a {
		font-size: 1.3rem
	}
}

@media only screen and (max-width:768px) {
	.tab-list>li a {
		padding: 0.8rem
	}
}

.tab-list>li a:hover {
	opacity: 0.7
}

.tab-article {
	display: flex;
	justify-content: center;
	margin-bottom: 4rem
}

.tab-article>li {
	margin-right: 2%;
	min-width: 10.5em;
	display: flex
}

.tab-article>li:last-child {
	margin-right: 0
}

.tab-article>li a {
	border: 1px solid #B5B5B5;
	border-radius: 100px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	width: 100%;
	padding: 0.8rem 1.6rem;
	display: grid;
	place-content: center
}

.tab-article>li a.active,
.tab-article>li a:hover {
	color: #fff;
	background: #4E4E4E;
	border: 1px solid #4E4E4E
}

.tab-wrap {
	position: relative
}

.tab-wrap:before {
	content: "";
	background: #323232;
	width: 106%;
	height: 2px;
	position: absolute;
	left: -3%;
	bottom: 0
}

@media only screen and (max-width:768px) {
	.tab-wrap:before {
		width: 100%;
		left: 0;
		overflow: auto
	}
}

.tab-wrap .tab-area {
	display: flex;
	justify-content: space-between
}

.tab-wrap .tab-area>li {
	margin-right: 2%;
	display: flex;
	flex: 1
}

@media only screen and (max-width:768px) {
	.tab-wrap .tab-area>li {
		margin: 0 2%
	}
}

.tab-wrap .tab-area>li:last-child {
	margin-right: 0
}

@media only screen and (max-width:768px) {
	.tab-wrap .tab-area>li:last-child {
		margin-right: 2%
	}
}

.tab-wrap .tab-area>li a {
	background: #B5B5B5;
	border: 2px solid #323232;
	border-bottom: none;
	font-weight: bold;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.6rem
}

@media only screen and (max-width:768px) {
	.tab-wrap .tab-area>li a {
		font-size: 1.4rem
	}
}

.tab-wrap .tab-area>li a.active {
	background: #fff;
	border: 2px solid #323232;
	border-bottom: none;
	position: relative;
	z-index: 1
}

.tab-wrap .tab-area>li a:not(.active) {
	margin-bottom: 0.1rem
}

.tab-contents {
	padding: 2.4rem 0
}

.tab-contents>div {
	display: none
}

.tab-contents>div.active {
	display: block
}

@media only screen and (max-width:768px) {
	.sp-tab-btn {
		display: flex;
		flex-wrap: wrap
	}

	.sp-tab-btn>li {
		flex: auto !important;
		margin-bottom: 2%
	}

	.sp-tab-btn.col2>li {
		width: 48%
	}

	.sp-tab-btn.col2>li:nth-child(2n) {
		margin-right: 0
	}

	.sp-tab-btn.col3>li {
		width: 31.3333333333%
	}

	.sp-tab-btn.col3>li:nth-child(3n) {
		margin-right: 0
	}

	.sp-tab-scroll {
		overflow: auto
	}

	.sp-tab-scroll>li {
		white-space: nowrap
	}
}

.btn-block {
	margin: 2.4rem 0 0;
	display: flex;
	flex-wrap: wrap
}

@media only screen and (max-width:768px) {
	.btn-block {
		display: block
	}
}

.btn-block button,
.btn-block p {
	margin: 0 1.2rem 2.4rem
}

@media only screen and (max-width:768px) {

	.btn-block button,
	.btn-block p {
		width: 90%;
		margin: 1.6rem auto
	}
}

.btn-block.center {
	justify-content: center
}

@media only screen and (max-width:768px) {
	.btn-block.center {
		display: block
	}
}

.btn-block.right {
	justify-content: flex-end
}

@media only screen and (max-width:768px) {
	.btn-block.right {
		display: block
	}
}

.btn-block.to-back {
	display: flex
}

@media only screen and (max-width:768px) {

	.btn-block.to-back button,
	.btn-block.to-back p {
		margin: 0.5em auto;
		width: 100%
	}
}

@media only screen and (max-width:768px) and (max-width:768px) {

	.btn-block.to-back button,
	.btn-block.to-back p {
		width: 90%
	}
}

@media only screen and (max-width:768px) {
	.btn-block.to-back button {
		order: 1
	}

	.btn-block.to-back button.back,
	.btn-block.to-back button.clear,
	.btn-block.to-back button.edit {
		order: 2
	}

	.btn-block.to-back p {
		order: 2
	}
}

.btn-block.to-clear {
	display: flex
}

@media only screen and (max-width:768px) {

	.btn-block.to-clear button,
	.btn-block.to-clear p {
		margin: 0.5em auto;
		width: 100%
	}
}

@media only screen and (max-width:768px) and (max-width:768px) {

	.btn-block.to-clear button,
	.btn-block.to-clear p {
		width: 90%
	}
}

@media only screen and (max-width:768px) {
	.btn-block.to-clear button {
		order: 1
	}

	.btn-block.to-clear button.back,
	.btn-block.to-clear button.clear,
	.btn-block.to-clear button.edit {
		order: 2
	}

	.btn-block.to-clear p {
		order: 2
	}
}

.btn-block.col1 {
	display: block
}

.btn-block.col1 button .btn-base,
.btn-block.col1 p .btn-base {
	display: inline-block
}

.btn-block.col1.center button,
.btn-block.col1.center p {
	text-align: center
}

.btn-block.col2,
.btn-block.col3 {
	flex-wrap: nowrap
}

.sentence-block {
	margin-bottom: 4rem
}

.sentence-block.center {
	text-align: center
}

.sentence-block.line-height {
	line-height: 2.25
}

.sentence-block p {
	margin-bottom: 1.6rem
}

.sentence-block p.mb0 {
	margin-bottom: 0rem
}

.sentence-block p.indent {
	text-indent: 1em
}

.sentence-block p.txt-bold {
	font-weight: bold
}

.sentence-block a {
	color: #0D30B8;
	text-decoration: underline
}

.sentence-block a[target=_blank] {
	margin-right: 0.8rem
}

.sentence-block a[target=_blank]:after {
	content: "";
	display: inline-block;
	width: 1.6rem;
	height: 1.6rem;
	margin-left: 0.4rem;
	z-index: 2;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #0D30B8
}

.scroll-text {
	background: #EEEEEE;
	border: 2px solid #323232;
	border-radius: 20px;
	padding: 2.4rem 3.2rem;
	overflow: hidden;
	margin-bottom: 2.4rem
}

@media only screen and (max-width:768px) {
	.scroll-text {
		padding: 1.6rem
	}
}

.scroll-text>div {
	overflow-y: scroll;
	height: 160px;
	padding-right: 1em
}

@media only screen and (max-width:768px) {
	.scroll-text>div {
		height: 200px
	}
}

.scroll-text>div p:not(:first-child) {
	margin-top: 1em
}

.pht-single {
	text-align: center;
	margin-bottom: 2em
}

.pht-single.bnr-tumulus {
	margin-top: 3.5em
}

@media only screen and (max-width:768px) {
	.pht-single.bnr-tumulus {
		margin-top: 1em
	}
}

.block-lr {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap
}

.block-lr a {
	display: block
}

.block-lr>div {
	box-sizing: border-box
}

.block-lr.list-movie {
	margin: 3em 0 4em
}

@media only screen and (max-width:768px) {
	.block-lr.list-movie {
		margin: 1em 0 2em
	}
}

.block-lr.center>div {
	text-align: center
}

.block-lr.col2>div {
	width: 48%;
	margin: 0 4% 2em 0
}

.block-lr.col2>div:nth-child(2n) {
	margin-right: 0
}

.block-lr.col2.w-l03>div {
	width: 30%;
	margin: 0 3% 2em 0
}

.block-lr.col2.w-l03>div:nth-child(2n) {
	width: 67%;
	margin-right: 0
}

.block-lr.col2.w-l04>div {
	width: 40%;
	margin: 0 3% 2em 0
}

.block-lr.col2.w-l04>div:nth-child(2n) {
	width: 57%;
	margin-right: 0
}

.block-lr.col3>div {
	width: 31%;
	margin: 0 3.5% 2em 0
}

.block-lr.col3>div:nth-child(3n) {
	margin-right: 0
}

.block-lr.col4>div {
	width: 23%;
	margin: 0 2.6666666667% 2em 0
}

.block-lr.col4>div:nth-child(4n) {
	margin-right: 0
}

.block-lr.col5>div {
	width: 18%;
	margin: 0 2.5% 2em 0
}

.block-lr.col5>div:nth-child(5n) {
	margin-right: 0
}

@media only screen and (max-width:768px) {
	.block-lr.sp-col01>div {
		width: 100% !important;
		margin-right: 0
	}

	.block-lr.sp-col02>div {
		width: 47% !important;
		margin: 0 6% 2em 0 !important
	}

	.block-lr.sp-col02>div:nth-child(2n) {
		margin-right: 0 !important
	}

	.block-lr.sp-col03>div {
		width: 31% !important;
		margin: 0 3.5% 2em 0 !important
	}

	.block-lr.sp-col03>div:nth-child(3n) {
		margin-right: 0 !important
	}
}

.list-thumb {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap
}

.list-thumb a {
	display: block
}

.list-thumb.col2>li {
	width: 48%;
	margin: 0 4% 2em 0
}

.list-thumb.col2>li:nth-child(2n) {
	margin-right: 0
}

.list-thumb.col3>li {
	width: 31%;
	margin: 0 3.5% 2em 0
}

@media only screen and (max-width:768px) {
	.list-thumb.col3>li {
		margin-bottom: 0.8em
	}
}

.list-thumb.col3>li:nth-child(3n) {
	margin-right: 0
}

.list-thumb.col4>li {
	width: 23%;
	margin: 0 2.6666666667% 2em 0
}

.list-thumb.col4>li:nth-child(4n) {
	margin-right: 0
}

.list-thumb.col5>li {
	width: 18%;
	margin: 0 2.5% 2em 0
}

.list-thumb.col5>li:nth-child(5n) {
	margin-right: 0
}

@media only screen and (max-width:768px) {
	.list-thumb.sp-col01>li {
		width: 100% !important;
		margin-right: 0
	}

	.list-thumb.sp-col02>li {
		width: 47% !important;
		margin: 0 6% 0.8em 0 !important
	}

	.list-thumb.sp-col02>li:nth-child(2n) {
		margin-right: 0 !important
	}

	.list-thumb.sp-card>li {
		width: 100% !important;
		margin-right: 0;
		display: flex;
		align-items: flex-start
	}

	.list-thumb.sp-card>li>div.ph-part {
		width: 35%;
		min-width: 35%;
		margin: 0 5% 1.6rem 0
	}
}

@media only screen and (max-width:768px) and (max-width:768px) {
	.list-thumb.sp-card>li>div.txt-part {
		padding: 0
	}
}

.list-thumb.ratio-1-1 .ph-part {
	aspect-ratio: 1/1 !important;
	object-fit: contain !important
}

.list-thumb.ratio-3-2 .ph-part {
	aspect-ratio: 3/2 !important;
	object-fit: contain !important
}

.list-thumb.ratio-3-4 .ph-part {
	aspect-ratio: 3/4 !important;
	object-fit: contain !important
}

.list-thumb.ratio-4-3 .ph-part {
	aspect-ratio: 4/3 !important;
	object-fit: contain !important
}

.list-thumb.ratio-16-9 .ph-part {
	aspect-ratio: 16/9 !important;
	object-fit: contain !important
}

.list-thumb li {
	position: relative
}

.list-thumb li:has(a:hover) .ph-part img {
	transform: translate(-50%, -50%) scale(1.1)
}

.list-thumb li a,
.list-thumb li>div {
	width: 100%;
	position: relative
}

.list-thumb li a.ph-part,
.list-thumb li a.txt-part,
.list-thumb li>div.ph-part,
.list-thumb li>div.txt-part {
	width: 100%;
	text-align: left;
	position: relative;
	z-index: 1;
	overflow: hidden;
	box-sizing: border-box
}

.list-thumb li a.ph-part,
.list-thumb li>div.ph-part {
	background: #e2e5ec;
	border-radius: 6px;
	aspect-ratio: 4/3;
	object-fit: contain;
	margin-bottom: 1.6rem
}

.list-thumb li a.ph-part>img,
.list-thumb li>div.ph-part>img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {

	.list-thumb li a.ph-part>img,
	.list-thumb li>div.ph-part>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-thumb li a .add-parts>.txt-add,
.list-thumb li>div .add-parts>.txt-add {
	font-size: 1.4rem;
	background: #fff;
	width: 80%;
	padding: 0.8rem 1.6rem;
	opacity: 0;
	position: absolute;
	bottom: 4em;
	right: 0.6em;
	z-index: 5;
	display: block;
	transition: all 0.5s
}

.list-thumb li a .add-parts>.txt-add:before,
.list-thumb li>div .add-parts>.txt-add:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1em 0.4em 0 0.4em;
	border-color: #fff transparent transparent transparent;
	position: absolute;
	bottom: -0.9em;
	right: 0.8em;
	z-index: -1
}

@media only screen and (max-width:1100px) {

	.list-thumb li a .add-parts>.txt-add:before,
	.list-thumb li>div .add-parts>.txt-add:before {
		bottom: -10px
	}
}

.list-thumb li a .add-parts>.btn-add,
.list-thumb li>div .add-parts>.btn-add {
	line-height: 1;
	padding: 0.5em;
	background: #fff;
	border: 1px solid #707070;
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.5s;
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
	z-index: 5
}

.list-thumb li a .add-parts>.btn-add:focus+.txt-add,
.list-thumb li a .add-parts>.btn-add:hover+.txt-add,
.list-thumb li>div .add-parts>.btn-add:focus+.txt-add,
.list-thumb li>div .add-parts>.btn-add:hover+.txt-add {
	display: block;
	opacity: 1
}

.list-thumb li a.txt-part,
.list-thumb li>div.txt-part {
	padding: 0 0 1.6rem;
	position: unset
}

.list-thumb li a.txt-part .date,
.list-thumb li>div.txt-part .date {
	font-size: 1.3rem;
	margin-bottom: 0.8rem
}

.list-thumb li a.txt-part .ttl,
.list-thumb li>div.txt-part .ttl {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.6rem
}

.list-thumb li a.txt-part .ttl a,
.list-thumb li>div.txt-part .ttl a {
	position: unset
}

.list-thumb li a.txt-part .ttl a:before,
.list-thumb li>div.txt-part .ttl a:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3
}

.list-thumb li a.txt-part .txt,
.list-thumb li>div.txt-part .txt {
	font-size: 1.4rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden
}

.list-thumb li a.txt-part .calendar,
.list-thumb li>div.txt-part .calendar {
	font-size: 1.3rem;
	position: relative;
	padding-left: 2rem;
	margin-bottom: 1.6rem
}

.list-thumb li a.txt-part .calendar:before,
.list-thumb li>div.txt-part .calendar:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_calendar.svg);
	mask-image: url(../fonts/ico_calendar.svg);
	background: #323232;
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	position: absolute;
	top: 0.2rem;
	left: 0;
	z-index: 1
}

.list-thumb li a.txt-part .writer,
.list-thumb li>div.txt-part .writer {
	display: flex;
	align-items: center;
	margin-bottom: 1.6rem
}

.list-thumb li a.txt-part .writer .w-ph,
.list-thumb li>div.txt-part .writer .w-ph {
	width: 50px;
	border-radius: 50%;
	margin-right: 1.6rem;
	overflow: hidden;
	aspect-ratio: 1/1;
	position: relative
}

.list-thumb li a.txt-part .writer .w-ph img,
.list-thumb li>div.txt-part .writer .w-ph img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: cover
}

@media (-ms-high-contrast:none) {

	.list-thumb li a.txt-part .writer .w-ph img,
	.list-thumb li>div.txt-part .writer .w-ph img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-thumb li a.txt-part .writer .w-txt,
.list-thumb li>div.txt-part .writer .w-txt {
	font-size: 1.3rem
}

.list-thumb li a.txt-part .list-icon,
.list-thumb li>div.txt-part .list-icon {
	position: relative;
	z-index: 10
}

.list-thumb li .fav-part {
	position: absolute;
	top: 0.8rem;
	right: 0.8rem;
	z-index: 5
}

.list-thumb li .fav-part .icon-fav {
	display: block;
	width: 3.6rem;
	height: 3.6rem;
	border-radius: 50%;
	background: url(../fonts/ico_btn_off.svg) no-repeat center/18px auto, #fff;
	border: 1px solid #707070;
	transition: 0.3s;
	white-space: nowrap;
	overflow: hidden;
	text-indent: 100%;
	padding: 0
}

.list-thumb li .fav-part .icon-fav.active {
	background: url(../fonts/ico_btn_on.svg) no-repeat center/18px auto, #fff;
	display: none
}

.list-thumb.fav-wrap>li {
	position: relative;
	display: block
}

.list-thumb.fav-wrap>li>div {
	position: relative
}

.list-thumb.fav-wrap>li>div .ph-part {
	width: 100%;
	text-align: left;
	position: relative;
	z-index: 1;
	overflow: hidden;
	box-sizing: border-box;
	background: #e2e5ec;
	border-radius: 20px;
	aspect-ratio: 4/3;
	object-fit: contain;
	margin-bottom: 1.6rem
}

.list-thumb.fav-wrap>li>div .ph-part>img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {
	.list-thumb.fav-wrap>li>div .ph-part>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-thumb.fav-wrap>li .txt-part {
	position: unset
}

.list-thumb.fav-wrap>li a {
	position: unset
}

.list-thumb.fav-wrap>li a:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3
}

.list-thumb.ph-thumb>li {
	display: block
}

.list-thumb.ph-thumb>li .ph-part {
	border-radius: 20px;
	position: relative;
	aspect-ratio: 4/3;
	object-fit: contain;
	overflow: hidden
}

.list-thumb.ph-thumb>li .ph-part>img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {
	.list-thumb.ph-thumb>li .ph-part>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-thumb.ph-thumb>li .txt-part {
	padding: 1.6rem 0
}

.list-thumb.ph-thumb>li .txt-part .date {
	font-size: 1.3rem;
	margin-bottom: 0.8rem
}

.list-thumb.ph-thumb>li .txt-part .ttl {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1.6rem
}

.list-thumb.ph-thumb>li .txt-part .txt {
	font-size: 1.4rem
}

.list-thumb.ph-thumb>li .txt-part .calendar {
	font-size: 1.3rem;
	position: relative;
	padding-left: 2rem;
	margin-bottom: 1.6rem
}

.list-thumb.ph-thumb>li .txt-part .calendar:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_calendar.svg);
	mask-image: url(../fonts/ico_calendar.svg);
	background: #323232;
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	position: absolute;
	top: 0.2rem;
	left: 0;
	z-index: 1
}

.list-thumb.feature li>div.txt-part .ttl {
	margin-bottom: 0.8rem
}

.list-rank {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap
}

.list-rank.ratio-1-1 .ph-part {
	aspect-ratio: 1/1 !important;
	object-fit: contain !important
}

.list-rank.ratio-3-2 .ph-part {
	aspect-ratio: 3/2 !important;
	object-fit: contain !important
}

.list-rank.ratio-3-4 .ph-part {
	aspect-ratio: 3/4 !important;
	object-fit: contain !important
}

.list-rank.ratio-4-3 .ph-part {
	aspect-ratio: 4/3 !important;
	object-fit: contain !important
}

.list-rank.ratio-16-9 .ph-part {
	aspect-ratio: 16/9 !important;
	object-fit: contain !important
}

.list-rank>li {
	width: 100%;
	position: relative;
	margin: 1.6rem 0
}

.list-rank>li:first-child {
	margin-top: 2.4rem
}

.list-rank>li .badge {
	position: absolute;
	top: -20px;
	left: 0
}

.list-rank>li a {
	width: 100%;
	position: relative;
	display: flex;
	align-items: flex-start
}

.list-rank>li a .ph-part,
.list-rank>li a .txt-part {
	width: 100%;
	text-align: left;
	position: relative;
	z-index: 1;
	overflow: hidden;
	box-sizing: border-box
}

.list-rank>li a .ph-part {
	background: #e2e5ec;
	border-radius: 10px;
	aspect-ratio: 4/3;
	object-fit: contain;
	width: 45%;
	min-width: 45%;
	margin-right: 2.4rem
}

.list-rank>li a .ph-part>img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {
	.list-rank>li a .ph-part>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-rank>li a:hover .ph-part>img {
	transform: translate(-50%, -50%) scale(1.1)
}

.list-rank>li a .txt-part .ttl {
	font-size: 1.6rem;
	font-weight: bold
}

.list-writer>li a {
	background: #EEEEEE;
	display: flex;
	align-items: center;
	padding: 2.4rem;
	margin-bottom: 1.6rem
}

.list-writer>li a .ph-part {
	width: 35%;
	min-width: 35%;
	border-radius: 50%;
	overflow: hidden;
	aspect-ratio: 1/1;
	position: relative;
	margin-right: 2.4rem
}

.list-writer>li a .ph-part img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: cover
}

@media (-ms-high-contrast:none) {
	.list-writer>li a .ph-part img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.list-writer>li a .txt-part .name {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.8rem
}

.list-writer>li a .txt-part .txt {
	font-size: 1.4rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden
}

.writer-block {
	background: #EEEEEE;
	display: flex;
	align-items: center;
	padding: 3.2rem 4rem;
	margin-bottom: 1.6rem
}

@media only screen and (max-width:768px) {
	.writer-block {
		display: block;
		padding: 2.4rem 1.6rem
	}
}

.writer-block .ph-part {
	width: 150px;
	min-width: 150px;
	border-radius: 50%;
	overflow: hidden;
	aspect-ratio: 1/1;
	position: relative;
	margin-right: 3.2rem
}

@media only screen and (max-width:768px) {
	.writer-block .ph-part {
		margin: 0 auto 2.4rem
	}
}

.writer-block .ph-part img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: cover
}

@media (-ms-high-contrast:none) {
	.writer-block .ph-part img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.writer-block .txt-part {
	width: calc(100% - 180px)
}

@media only screen and (max-width:768px) {
	.writer-block .txt-part {
		width: 100%
	}
}

.writer-block .txt-part .name {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 0.8rem
}

.writer-block .txt-part .txt {
	font-size: 1.4rem;
	margin-bottom: 2.4rem
}

.writer-block .btn-part {
	display: flex;
	flex-wrap: wrap
}

.writer-block .btn-part>button,
.writer-block .btn-part>p {
	width: 48%;
	margin: 0 4% 1.6rem 0
}

.writer-block .btn-part>button:nth-child(2n),
.writer-block .btn-part>p:nth-child(2n) {
	margin-right: 0
}

@media only screen and (max-width:1100px) {

	.writer-block .btn-part>button,
	.writer-block .btn-part>p {
		width: 100%;
		margin: 0;
		margin-bottom: 1.6rem
	}
}

.writer-block .btn-part .btn-base {
	color: #000;
	background: #fff;
	padding: 2.4rem;
	min-width: auto
}

.writer-block .btn-part .btn-base.writer:before {
	content: "";
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #323232;
	width: 0.8em;
	height: 0.8em;
	display: inline-block;
	vertical-align: baseline;
	margin-right: 1.6rem
}

.writer-block .btn-part .btn-base.instagram:before {
	content: "";
	width: 32px;
	height: 32px;
	background: url(../fonts/ico_instagram.svg) no-repeat center center/contain;
	display: inline-block;
	vertical-align: middle;
	margin-right: 1.6rem
}

.post-writer {
	display: flex;
	align-items: center;
	margin: 1.6rem 0
}

.post-writer .ph-part {
	width: 50px;
	min-width: 50px;
	border-radius: 50%;
	overflow: hidden;
	aspect-ratio: 1/1;
	position: relative;
	margin-right: 1.6rem
}

.post-writer .ph-part img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: cover
}

@media (-ms-high-contrast:none) {
	.post-writer .ph-part img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.post-writer .txt-part {
	font-size: 1.3rem;
	width: calc(100% - 55px);
	display: flex
}

@media only screen and (max-width:768px) {
	.post-writer .txt-part {
		display: block;
		width: 100%
	}
}

.post-writer .txt-part .name {
	margin-right: 1.6rem
}

@media only screen and (max-width:768px) {
	.post-writer .txt-part .name {
		margin: 0
	}
}

.col-block {
	display: flex;
	flex-wrap: wrap;
	margin: 2.4rem 0
}

.col-block .ph-part {
	width: 40%;
	margin-right: 5%;
	background: #e2e5ec;
	position: relative;
	aspect-ratio: 4/3;
	object-fit: contain
}

@media only screen and (max-width:768px) {
	.col-block .ph-part {
		width: 100%;
		margin-right: 0
	}
}

.col-block .ph-part>img {
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {
	.col-block .ph-part>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.col-block .txt-part {
	width: 55%
}

@media only screen and (max-width:768px) {
	.col-block .txt-part {
		width: 100%
	}
}

.col-block .txt-part .btn-block {
	margin-bottom: 0
}

.col-block.reverse {
	flex-direction: row-reverse
}

.col-block.reverse .ph-part {
	margin-right: 0;
	margin-left: 5%
}

@media only screen and (max-width:768px) {
	.col-block.reverse .ph-part {
		margin-left: 0
	}
}

.col-block.overlap {
	position: relative;
	flex-wrap: nowrap;
	align-items: flex-start
}

@media only screen and (max-width:768px) {
	.col-block.overlap {
		flex-wrap: wrap
	}
}

.col-block.overlap .ph-part {
	width: 60%;
	position: relative;
	z-index: -1;
	margin: 0
}

@media only screen and (max-width:768px) {
	.col-block.overlap .ph-part {
		width: 100%
	}
}

.col-block.overlap .txt-part {
	background: #fff;
	border-radius: 30px;
	width: 60%;
	padding: 3.2rem;
	margin: 3.2rem 0;
	margin-left: -20%
}

@media only screen and (max-width:768px) {
	.col-block.overlap .txt-part {
		width: 100%;
		margin: -2em 0 2em !important
	}
}

.col-block.overlap.reverse .txt-part {
	margin-left: 0;
	margin-right: -20%
}

.col-block.ratio-1-1 .ph-part {
	aspect-ratio: 1/1 !important;
	object-fit: contain !important
}

.col-block.ratio-3-2 .ph-part {
	aspect-ratio: 3/2 !important;
	object-fit: contain !important
}

.col-block.ratio-3-4 .ph-part {
	aspect-ratio: 3/4 !important;
	object-fit: contain !important
}

.col-block.ratio-4-3 .ph-part {
	aspect-ratio: 4/3 !important;
	object-fit: contain !important
}

.col-block.ratio-16-9 .ph-part {
	aspect-ratio: 16/9 !important;
	object-fit: contain !important
}

.list-article {
	margin-bottom: 3.2rem
}

.list-article li a {
	padding: 2.4rem 0;
	border-bottom: 1px solid #B5B5B5;
	display: block;
	position: relative
}

.list-article li a:hover {
	opacity: 0.7
}

.list-article li a .date-part {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:768px) {
	.list-article li a .date-part {
		display: block
	}
}

.list-article li a .date-part .date-post {
	font-weight: bold;
	text-decoration: none;
	margin-right: 1.6rem;
	margin-bottom: 0.8rem
}

.list-article li a .ttl {
	text-decoration: underline;
	margin-bottom: 0.8rem
}

.list-article li a .txt {
	font-size: 1.4rem
}

ul.list-search {
	margin-bottom: 4.8rem;
	margin-bottom: 4.8rem
}

ul.list-search li {
	border-bottom: 1px solid #B5B5B5
}

ul.list-search li a {
	font-size: 1.4rem;
	padding: 2.4rem 0;
	display: block
}

ul.list-search li a .list-search-ttl {
	font-size: 1.6rem;
	font-weight: bold;
	text-decoration: underline;
	margin-bottom: 1.6rem
}

ul.list-search li a .list-search-ttl span {
	background: #e5ff3e
}

ul.list-search li a p span {
	background: #e5ff3e
}

ul.list-search li a:hover {
	text-decoration: underline
}

.spot-data {
	margin-bottom: 4rem
}

.spot-data dl {
	background: #EEEEEE;
	border-bottom: 1px solid #B5B5B5;
	display: flex;
	flex-wrap: wrap
}

.spot-data dl:first-child {
	border-top: 1px solid #B5B5B5
}

.spot-data dl>dt {
	background: #EEEEEE;
	font-weight: bold;
	width: 12em;
	min-width: 12em;
	padding: 2.4rem;
	display: flex;
	justify-content: center
}

@media only screen and (max-width:768px) {
	.spot-data dl>dt {
		width: 8em;
		min-width: 8em;
		text-align: center;
		padding: 1.6rem 0.8rem
	}
}

.spot-data dl>dd {
	background: #fff;
	width: calc(100% - 12em);
	padding: 2.4rem;
	margin-left: auto
}

@media only screen and (max-width:768px) {
	.spot-data dl>dd {
		width: calc(100% - 8em);
		padding: 1.6rem
	}
}

.spot-data dl>dd a {
	color: #0D30B8;
	text-decoration: underline
}

.spot-data dl>dd a[target=_blank]:after {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	vertical-align: baseline;
	margin-left: 1em;
	right: 0;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_blank.svg);
	mask-image: url(../fonts/ico_blank.svg);
	background: #000;
	z-index: 1
}

.spot-data .spot-note {
	font-size: 1.4rem;
	text-align: right;
	margin-top: 1.6rem;
	width: 100%
}

.access-block .access-map {
	position: relative;
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: contain;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.access-block .access-map {
		padding-top: 60%
	}
}

.access-block .access-map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

.access-block .btn-block {
	margin-bottom: 4rem
}

.map-block .map {
	position: relative;
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: contain;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.map-block .map {
		padding-top: 60%
	}
}

.map-block .map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

.list-mappin {
	display: flex;
	flex-wrap: wrap
}

.list-mappin>li {
	font-size: 1.6rem;
	font-weight: bold;
	width: 23%;
	margin: 0 2.6666666667% 1em 0
}

.list-mappin>li:nth-child(4n) {
	margin-right: 0
}

@media only screen and (max-width:768px) {
	.list-mappin>li {
		width: 100% !important;
		margin-right: 0
	}
}

.mappin {
	font-size: 1.6rem;
	font-weight: normal;
	width: 2em;
	height: 2em;
	color: #fff;
	background: #5CAB75;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 1.6rem
}

.mappin-block {
	display: inline-block
}

.view-block .view-map>.ac-list .view-ttl {
	background: #EEEEEE;
	font-size: 1.8rem;
	font-weight: bold;
	cursor: pointer;
	display: block;
	width: 100%;
	padding: 2.4rem 4.8rem 2.4rem 2.4rem;
	position: relative
}

.view-block .view-map>div:not(.ac-list) {
	background: #4BBCA3;
	padding: 4rem
}

@media only screen and (max-width:768px) {
	.view-block .view-map>div:not(.ac-list) {
		padding: 2.4rem
	}
}

.view-block .view-map.toggle-arrow .view-ttl:after {
	content: "";
	width: 0.7rem;
	height: 1.4rem;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_square.svg);
	mask-image: url(../fonts/ico_arrow_square.svg);
	background: #323232;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 1.5em;
	transform: translateY(-50%) rotateZ(90deg)
}

@media only screen and (max-width:768px) {
	.view-block .view-map.toggle-arrow .view-ttl:after {
		right: 5%
	}
}

.view-block .view-map.toggle-arrow .view-ttl.active:after {
	transform: translateY(-50%) rotateZ(-90deg)
}

.view-block .view-map.toggle-plus .view-ttl:after,
.view-block .view-map.toggle-plus .view-ttl:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #323232;
	border-radius: 10px
}

.view-block .view-map.toggle-plus .view-ttl:before {
	width: 2rem;
	height: 0.3rem;
	right: 2rem
}

@media only screen and (max-width:768px) {
	.view-block .view-map.toggle-plus .view-ttl:before {
		right: 1.5rem
	}
}

.view-block .view-map.toggle-plus .view-ttl:after {
	width: 0.3rem;
	height: 2rem;
	right: 2.8rem
}

@media only screen and (max-width:768px) {
	.view-block .view-map.toggle-plus .view-ttl:after {
		right: 2.4rem
	}
}

.view-block .view-map.toggle-plus .view-ttl.active:after {
	display: none
}

.view-block {
	margin-bottom: 4rem
}

.view-block .view-note {
	font-size: 1.4rem;
	text-align: right;
	margin-top: 1.6rem;
	width: 100%
}

.category-block {
	background: #EEEEEE;
	padding: 2.4rem 3.2rem 0;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.category-block {
		padding: 2.4rem 2.4rem 0
	}
}

.category-block dl {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap
}

.category-block dl>dt {
	font-size: 1.8rem;
	font-weight: bold;
	width: 25%;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:768px) {
	.category-block dl>dt {
		width: 100%;
		margin-bottom: 1.6rem
	}
}

.category-block dl>dd {
	width: 75%;
	margin-bottom: 1.6rem
}

@media only screen and (max-width:768px) {
	.category-block dl>dd {
		width: 100%
	}
}

.category-block .btn-block {
	margin-bottom: 4rem
}

.list-qa .col-qa-warp {
	margin-bottom: 4rem
}

.list-qa .col-qa-warp .col-qa-middle-ttl {
	color: #fff;
	background: #5CAB75;
	font-size: 2.6rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	position: relative;
	cursor: pointer;
	display: block;
	width: 100%;
	padding: 1.6rem 5.6rem 1.6rem 2.4rem;
	margin-bottom: 2.4rem
}

@media only screen and (max-width:768px) {
	.list-qa .col-qa-warp .col-qa-middle-ttl {
		font-size: 2.2rem
	}
}

.list-qa .col-qa-warp .col-qa-middle-ttl:before {
	content: "";
	background: #fff;
	display: block;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	transform: translateY(-50%)
}

.list-qa .col-qa-warp .col-qa-middle-ttl:after {
	content: "";
	width: 1rem;
	height: 1.8rem;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_radius.svg);
	mask-image: url(../fonts/ico_arrow_radius.svg);
	background: #323232;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 2.85rem;
	transform: translateY(-50%) rotateZ(90deg)
}

.list-qa .col-qa-warp .col-qa-middle-ttl.active:after {
	transform: translateY(-50%) rotateZ(-90deg)
}

.list-qa .col-qa {
	margin-bottom: 0.8rem
}

.list-qa .col-qa .ac-list>.col-qa-ttl {
	background: #EEEEEE;
	font-size: 1.8rem;
	font-weight: bold;
	display: block;
	padding: 2.4rem 4.8rem 2.4rem 2.4rem;
	position: relative;
	cursor: pointer
}

.list-qa .col-qa .ac-list>.col-qa-ttl span {
	color: #5CAB75;
	width: 3em;
	min-width: 3em;
	font-size: 2rem;
	font-weight: bold;
	margin-right: 2.4rem
}

@media only screen and (max-width:768px) {
	.list-qa .col-qa .ac-list>.col-qa-ttl span {
		width: 4em;
		min-width: 4em
	}
}

.list-qa .col-qa>div:not(.ac-list) {
	padding: 2.4rem 2.4rem 4rem;
	display: flex
}

@media only screen and (max-width:768px) {
	.list-qa .col-qa>div:not(.ac-list) {
		display: block
	}
}

.list-qa .col-qa>div:not(.ac-list)>span {
	color: #5CAB75;
	width: 3em;
	min-width: 3em;
	font-size: 2rem;
	font-weight: bold;
	margin-right: 2.4rem
}

@media only screen and (max-width:768px) {
	.list-qa .col-qa>div:not(.ac-list)>span {
		width: 4em;
		min-width: 4em
	}
}

.list-qa .col-qa>div:not(.ac-list)>div {
	width: calc(100% - 3.8em)
}

@media only screen and (max-width:768px) {
	.list-qa .col-qa>div:not(.ac-list)>div {
		width: 100%
	}
}

.list-qa.toggle-arrow .col-qa-ttl:after {
	content: "";
	width: 1rem;
	height: 1.8rem;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_radius.svg);
	mask-image: url(../fonts/ico_arrow_radius.svg);
	background: #323232;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 1.5em;
	transform: translateY(-50%) rotateZ(90deg)
}

.list-qa.toggle-arrow .col-qa-ttl.active:after {
	transform: translateY(-50%) rotateZ(-90deg)
}

.list-qa.toggle-plus .col-qa-ttl:after,
.list-qa.toggle-plus .col-qa-ttl:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #323232;
	border-radius: 10px
}

.list-qa.toggle-plus .col-qa-ttl:before {
	width: 2rem;
	height: 0.3rem;
	right: 2rem
}

@media only screen and (max-width:768px) {
	.list-qa.toggle-plus .col-qa-ttl:before {
		right: 1.5rem
	}
}

.list-qa.toggle-plus .col-qa-ttl:after {
	width: 0.3rem;
	height: 2rem;
	right: 2.8rem
}

@media only screen and (max-width:768px) {
	.list-qa.toggle-plus .col-qa-ttl:after {
		right: 2.4rem
	}
}

.list-qa.toggle-plus .col-qa-ttl.active:after {
	display: none
}

.list-bnr {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1.5em 2em
}

@media only screen and (max-width:768px) {
	.list-bnr {
		flex-wrap: wrap
	}
}

.list-bnr li {
	border-radius: 10px;
	overflow: hidden;
	width: calc(25% - 1.5em)
}

.list-bnr li:first-child {
	width: 100%
}

@media only screen and (max-width:768px) {
	.list-bnr li {
		width: calc(50% - 1em)
	}
}

.list-bnr li a {
	aspect-ratio: 16/9;
	object-fit: contain
}

div.list-sitemap-td,
ul.list-sitemap-lr {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

div.list-sitemap-td>li>a,
div.list-sitemap-td>ul>li>a,
ul.list-sitemap-lr>li>a,
ul.list-sitemap-lr>ul>li>a {
	border-top: 1px solid #B5B5B5;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 2.4rem 3.2rem;
	position: relative;
	display: block
}

@media only screen and (max-width:768px) {

	div.list-sitemap-td>li>a,
	div.list-sitemap-td>ul>li>a,
	ul.list-sitemap-lr>li>a,
	ul.list-sitemap-lr>ul>li>a {
		padding: 1.6rem 2.4rem 1.6rem 1.6rem;
		font-size: 1.6rem
	}
}

div.list-sitemap-td>li>a:after,
div.list-sitemap-td>ul>li>a:after,
ul.list-sitemap-lr>li>a:after,
ul.list-sitemap-lr>ul>li>a:after {
	content: "";
	width: 1rem;
	height: 1.5rem;
	margin: 0 0.5em 0.2em auto;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url(../fonts/ico_arrow_radius.svg);
	mask-image: url(../fonts/ico_arrow_radius.svg);
	background: #323232;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0.8rem;
	transform: translateY(-50%)
}

div.list-sitemap-td>li>a+.u-layer,
div.list-sitemap-td>ul>li>a+.u-layer,
ul.list-sitemap-lr>li>a+.u-layer,
ul.list-sitemap-lr>ul>li>a+.u-layer {
	border-top: 1px solid #B5B5B5;
	padding: 0.8rem 0 0.8rem 3.2rem
}

@media only screen and (max-width:768px) {

	div.list-sitemap-td>li>a+.u-layer,
	div.list-sitemap-td>ul>li>a+.u-layer,
	ul.list-sitemap-lr>li>a+.u-layer,
	ul.list-sitemap-lr>ul>li>a+.u-layer {
		padding: 0.8rem 0 0.8rem 1.6rem
	}
}

div.list-sitemap-td>li>a+.u-layer li,
div.list-sitemap-td>ul>li>a+.u-layer li,
ul.list-sitemap-lr>li>a+.u-layer li,
ul.list-sitemap-lr>ul>li>a+.u-layer li {
	margin: 2.4rem 0
}

div.list-sitemap-td>li>a+.u-layer li a,
div.list-sitemap-td>ul>li>a+.u-layer li a,
ul.list-sitemap-lr>li>a+.u-layer li a,
ul.list-sitemap-lr>ul>li>a+.u-layer li a {
	font-weight: bold;
	display: block;
	padding-left: 4rem;
	position: relative
}

div.list-sitemap-td>li>a+.u-layer li a:before,
div.list-sitemap-td>ul>li>a+.u-layer li a:before,
ul.list-sitemap-lr>li>a+.u-layer li a:before,
ul.list-sitemap-lr>ul>li>a+.u-layer li a:before {
	content: "";
	width: 0.8em;
	height: 0.8em;
	position: absolute;
	top: 50%;
	left: 0.3em;
	transform: translateY(-50%);
	border-radius: 50%;
	padding: 0.4rem;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: 8px;
	mask-size: 8px;
	-webkit-mask-image: url(../fonts/ico_arrow.svg);
	mask-image: url(../fonts/ico_arrow.svg);
	background: #323232;
	z-index: 2
}

ul.list-sitemap-lr>li {
	width: 49%
}

@media only screen and (max-width:768px) {
	ul.list-sitemap-lr>li {
		width: 100%
	}
}

ul.list-sitemap-lr>li:last-child {
	border-bottom: 1px solid #B5B5B5
}

ul.list-sitemap-lr>li:nth-last-child(2) {
	border-bottom: 1px solid #B5B5B5
}

@media only screen and (max-width:768px) {
	ul.list-sitemap-lr>li:nth-last-child(2) {
		border: none
	}
}

div.list-sitemap-td>ul {
	width: 49%
}

@media only screen and (max-width:768px) {
	div.list-sitemap-td>ul {
		width: 100%
	}
}

div.list-sitemap-td>ul:nth-last-child(2)>li:last-child {
	border-bottom: 1px solid #B5B5B5
}

@media only screen and (max-width:768px) {
	div.list-sitemap-td>ul:nth-last-child(2)>li:last-child {
		border: none
	}
}

.static-wrap {
	text-align: center;
	margin: 8rem 0
}

@media only screen and (max-width:768px) {
	.static-wrap {
		min-height: inherit
	}
}

.static-wrap.border {
	border: 1px solid #707070;
	border-radius: 20px
}

.static-wrap .page-ttl {
	background: none
}

.static-wrap .static-ttl {
	font-size: 4rem;
	font-weight: bold;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {
	.static-wrap .static-ttl {
		font-size: 2.6rem
	}
}

.static-wrap .static-txt {
	font-weight: bold;
	line-height: 1.8;
	margin: 0 1.6rem 5.6rem
}

main:has(.static-wrap.border)+#footer {
	color: #000;
	background: none
}

.table-data {
	border-collapse: collapse;
	border: 1px solid #B5B5B5
}

.table-data.active {
	white-space: inherit
}

.table-data caption {
	font-weight: bold;
	text-align: center;
	margin-bottom: 0.8rem
}

.table-data tr th {
	color: #000;
	background: #EEEEEE;
	border: 1px solid #B5B5B5;
	font-weight: bold;
	padding: 0.8rem
}

.table-data tr td {
	background: #fff;
	border: 1px solid #B5B5B5;
	padding: 0.8rem
}

@media only screen and (max-width:1100px) {
	.table-scroll .table-data {
		width: auto;
		white-space: nowrap
	}
}

.table-scroll .scroll-bar {
	overflow-x: auto;
	overflow-y: hidden
}

.table-scroll .scroll-bar .scroll-in {
	height: 10px
}

.table-scroll .scroll-table {
	overflow: auto;
	position: relative
}

.table-scroll .scroll-table:before {
	content: "";
	display: block;
	position: absolute;
	background: url(../fonts/pct_scrollhint.svg) no-repeat center center/contain;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

.table-scroll .pct-scrollhint {
	display: none;
	font-size: 1.1rem;
	padding: 1em;
	background: rgba(50, 50, 50, 0.6);
	text-align: center;
	border-radius: 10px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

.table-scroll .pct-scrollhint span {
	color: #fff;
	margin-top: 0.4em;
	display: block;
	white-space: nowrap
}

.table-scroll .pct-scrollhint.active {
	display: block
}

.list-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1em 1em
}

.list-gallery li a {
	display: block
}

@media only screen and (max-width:768px) {
	.list-gallery {
		grid-template-columns: repeat(2, 1fr)
	}
}

@media only screen and (max-width:768px) {
	.modaal-wrapper .modaal-gallery-control {
		top: 50%;
		transform: translateY(-50%) scale(0.6)
	}

	.modaal-wrapper .modaal-gallery-control.modaal-gallery-prev {
		left: -15px
	}

	.modaal-wrapper .modaal-gallery-control.modaal-gallery-next {
		right: -15px
	}
}

.back-number {
	background: #EEEEEE;
	text-align: center;
	position: relative;
	padding: 1.6rem
}

.back-number .back-number-ttl {
	font-size: 2rem;
	font-weight: bold;
	display: inline-block;
	width: 100%;
	padding: 0.8rem 0;
	margin-bottom: 1.6rem
}

@media only screen and (max-width:768px) {
	.back-number .back-number-ttl {
		cursor: pointer;
		padding: 0;
		margin-bottom: 0
	}

	.back-number .back-number-ttl:after,
	.back-number .back-number-ttl:before {
		content: "";
		display: block;
		position: absolute;
		background: #323232;
		border-radius: 10px
	}

	.back-number .back-number-ttl:before {
		width: 20px;
		height: 3px;
		right: 25px;
		top: 1.5em
	}
}

@media only screen and (max-width:768px) and (max-width:768px) {
	.back-number .back-number-ttl:before {
		right: 15px
	}
}

@media only screen and (max-width:768px) {
	.back-number .back-number-ttl:after {
		width: 3px;
		height: 20px;
		right: 33px;
		top: 1.05em
	}
}

@media only screen and (max-width:768px) and (max-width:768px) {
	.back-number .back-number-ttl:after {
		right: 24px
	}
}

@media only screen and (max-width:768px) {
	.back-number .back-number-ttl.active:after {
		display: none
	}
}

.back-number .list-year {
	position: relative
}

@media only screen and (max-width:768px) {
	.back-number .list-year {
		margin-top: 1em;
		display: none
	}
}

.back-number .list-year li {
	margin-bottom: 0.8rem
}

.back-number .list-year li a {
	padding: 1.6rem 0;
	display: block;
	background: #fff
}

.access-wrap .inner-l {
	position: relative
}

.access-wrap .inner-l:after {
	content: "";
	display: inline-block;
	width: 20vw;
	height: 47vh;
	max-width: 302px;
	max-height: 186px;
	position: absolute;
	right: 5%;
	top: 0;
	bottom: auto;
	aspect-ratio: 302/186;
	background: url(../images/access_kumamon.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l:after {
		width: 40vw;
		top: -10%
	}
}

.access-wrap .inner-l .ttl-access h2 {
	position: relative;
	display: block;
	text-indent: -200%;
	overflow: hidden;
	min-height: 98px;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .ttl-access h2 {
		margin-bottom: 0.8rem
	}
}

.access-wrap .inner-l .ttl-access h2:after {
	content: "";
	display: inline-block;
	width: auto;
	height: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	aspect-ratio: 316/97;
	background: url(../images/ttl_access.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .ttl-access h2:after {
		height: 60%
	}
}

.access-wrap .inner-l .sttl-access {
	font-size: 2.2rem;
	font-weight: bold;
	border-left: 5px solid #5CAB75;
	padding-left: 1em;
	max-width: 1080px;
	margin: 0 auto;
	margin-bottom: 3.2rem
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .sttl-access {
		font-size: 1.8rem
	}
}

.access-wrap .inner-l .bg-c {
	border-radius: 8px;
	padding: 6rem 3.2rem
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .bg-c {
		padding: 1.6rem
	}
}

.access-wrap .inner-l .bg-c figure {
	max-width: 1080px;
	margin: 0 auto;
	margin-bottom: 3.2rem
}

.access-wrap .inner-l .bg-c .time-access-block {
	max-width: 1080px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1em;
	margin-bottom: 4rem
}

.access-wrap .inner-l .bg-c .time-access-block .time-access {
	width: calc(50% - 1em);
	font-size: 2rem;
	font-weight: bold;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .bg-c .time-access-block .time-access {
		font-size: 1.6rem
	}
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .bg-c .time-access-block .time-access {
		width: 100%
	}
}

.access-wrap .inner-l .bg-c .time-access-block .time-access dt {
	width: 70%;
	white-space: nowrap
}

.access-wrap .inner-l .bg-c .time-access-block .time-access dd {
	width: 30%;
	white-space: nowrap;
	position: relative
}

.access-wrap .inner-l .bg-c .time-access-block .time-access dd:before {
	content: "";
	display: inline-block;
	width: 20rem;
	height: 1px;
	position: absolute;
	top: 50%;
	left: -1em;
	transform: translate(-100%, -50%);
	background: #707070
}

@media only screen and (max-width:768px) {
	.access-wrap .inner-l .bg-c .time-access-block .time-access dd:before {
		width: 7rem
	}
}

.access-wrap .inner-l .bg-c .list-mark {
	font-weight: bold;
	max-width: 930px;
	margin: 0 auto;
	margin-bottom: 3.2rem
}

.access-wrap .link-access {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1em;
	margin-bottom: 3.2rem
}

.access-wrap .link-access li {
	width: calc(33% - 0.5em)
}

@media screen and (max-width:600px) {
	.access-wrap .link-access li {
		width: 100%;
		margin-bottom: 1.6rem
	}
}

.access-wrap .link-access li a {
	font-weight: bold;
	text-align: center;
	display: block;
	background: #F5F5F5;
	border-radius: 16px;
	padding: 4.5em 1.5em 1.5em;
	position: relative
}

.access-wrap .link-access li a:before {
	content: "";
	display: inline-block;
	width: 58px;
	height: 51px;
	position: absolute;
	top: 1em;
	left: 50%;
	transform: translateX(-50%);
	transition: 0.3s all
}

.access-wrap .link-access li a:hover:before {
	top: 0.8em
}

.access-wrap .link-access li.kumamoto a:before {
	background: url(../images/ico_kumamoto.svg) no-repeat center center/contain
}

.access-wrap .link-access li.train a:before {
	background: url(../fonts/ico_train.svg) no-repeat center center/contain
}

.access-wrap .link-access li.ticket a:before {
	background: url(../fonts/ico_ticket.svg) no-repeat center center/contain
}

.ttl-gourmet {
	margin-top: 10rem
}

@media only screen and (max-width:768px) {
	.ttl-gourmet {
		margin-top: 4rem
	}
}

.ttl-gourmet>* {
	position: relative;
	display: block;
	text-indent: -200%;
	overflow: hidden;
	min-height: 110px;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.ttl-gourmet>* {
		margin-bottom: 0.8rem
	}
}

.ttl-gourmet>:before {
	content: "";
	display: inline-block;
	width: auto;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	aspect-ratio: 446/107;
	background: url(../images/ttl_gourmet.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-gourmet>:before {
		height: 60%
	}
}

.ttl-gourmet>:after {
	content: "";
	display: inline-block;
	width: 7.22%;
	aspect-ratio: 78/91;
	position: absolute;
	right: calc(50% - 280px);
	transform: translateX(50%);
	bottom: 0;
	background: url(../images/ico_kumamon_gourmet.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-gourmet>:after {
		top: 20%;
		right: 5%
	}
}

.ttl-sweets {
	margin-top: 10rem
}

@media only screen and (max-width:768px) {
	.ttl-sweets {
		margin-top: 4rem
	}
}

.ttl-sweets>* {
	position: relative;
	display: block;
	text-indent: -200%;
	overflow: hidden;
	min-height: 110px;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.ttl-sweets>* {
		margin-bottom: 0.8rem
	}
}

.ttl-sweets>:after {
	content: "";
	display: inline-block;
	width: auto;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	aspect-ratio: 281/107;
	background: url(../images/ttl_sweets.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-sweets>:after {
		height: 60%
	}
}

.ttl-sweets>:before {
	content: "";
	display: inline-block;
	width: 5.555%;
	aspect-ratio: 60/92;
	position: absolute;
	left: calc(50% - 210px);
	transform: translateX(-50%);
	bottom: 0;
	background: url(../images/ico_kumamon_sweets.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-sweets>:before {
		top: 50%;
		left: 10%;
		transform: translate(50%, -50%)
	}
}

.bnr-gourmet,
.bnr-sweets {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {

	.bnr-gourmet,
	.bnr-sweets {
		max-width: 640px;
		margin: 0 auto
	}
}

.bnr-gourmet li,
.bnr-sweets li {
	width: calc(33.3333333333% - 7px);
	text-align: center
}

@media only screen and (max-width:768px) {

	.bnr-gourmet li,
	.bnr-sweets li {
		width: calc(50% - 7px)
	}
}

.bnr-gourmet li a,
.bnr-sweets li a {
	transition: 0.3s all
}

.ttl-bnr-gourmet {
	width: 100vw;
	max-width: 1280px;
	margin: 0 calc(50% - 640px) 2.4rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: url(../images/bg_ttl-bnr-gourmet.png) no-repeat center center/cover;
	overflow: hidden
}

@media only screen and (max-width:1300px) {
	.ttl-bnr-gourmet {
		max-width: none;
		margin: 0 calc(50% - 50vw) 2.4rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet {
		width: 100%;
		flex-direction: column;
		margin: 0 auto
	}
}

.ttl-bnr-gourmet:after,
.ttl-bnr-gourmet:before {
	content: "";
	display: inline-block;
	width: 40rem;
	height: 50rem
}

@media only screen and (max-width:1380px) {

	.ttl-bnr-gourmet:after,
	.ttl-bnr-gourmet:before {
		width: 27rem;
		height: 32rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet:before {
		width: 100%;
		height: 30rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet:after {
		content: none
	}
}

.ttl-bnr-gourmet.kumamoto-ramen:before {
	background: url(../images/pht_ttl-bnr-gourmet01-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.kumamoto-ramen:before {
		background: url(../images/pht_ttl-bnr-gourmet01-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.kumamoto-ramen:after {
	background: url(../images/pht_ttl-bnr-gourmet01-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.akaushi:before {
	background: url(../images/pht_ttl-bnr-gourmet02-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.akaushi:before {
		background: url(../images/pht_ttl-bnr-gourmet02-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.akaushi:after {
	background: url(../images/pht_ttl-bnr-gourmet02-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.taipien:before {
	background: url(../images/pht_ttl-bnr-gourmet03-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.taipien:before {
		background: url(../images/pht_ttl-bnr-gourmet03-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.taipien:after {
	background: url(../images/pht_ttl-bnr-gourmet03-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.karashi-renkon:before {
	background: url(../images/pht_ttl-bnr-gourmet04-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.karashi-renkon:before {
		background: url(../images/pht_ttl-bnr-gourmet04-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.karashi-renkon:after {
	background: url(../images/pht_ttl-bnr-gourmet04-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.dago-takana:before {
	background: url(../images/pht_ttl-bnr-gourmet05-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.dago-takana:before {
		background: url(../images/pht_ttl-bnr-gourmet05-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.dago-takana:after {
	background: url(../images/pht_ttl-bnr-gourmet05-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.kaisendon:before {
	background: url(../images/pht_ttl-bnr-gourmet06-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.kaisendon:before {
		background: url(../images/pht_ttl-bnr-gourmet06-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.kaisendon:after {
	background: url(../images/pht_ttl-bnr-gourmet06-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.ikinari-dango:before {
	background: url(../images/pht_ttl-bnr-gourmet07-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.ikinari-dango:before {
		background: url(../images/pht_ttl-bnr-gourmet07-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.ikinari-dango:after {
	background: url(../images/pht_ttl-bnr-gourmet07-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.soft-cream:before {
	background: url(../images/pht_ttl-bnr-gourmet08-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.soft-cream:before {
		background: url(../images/pht_ttl-bnr-gourmet08-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.soft-cream:after {
	background: url(../images/pht_ttl-bnr-gourmet08-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet.kuri-sweets:before {
	background: url(../images/pht_ttl-bnr-gourmet09-1.png) no-repeat center center/cover
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet.kuri-sweets:before {
		background: url(../images/pht_ttl-bnr-gourmet09-1_sp.png) no-repeat center center/cover
	}
}

.ttl-bnr-gourmet.kuri-sweets:after {
	background: url(../images/pht_ttl-bnr-gourmet09-2.png) no-repeat center center/cover
}

.ttl-bnr-gourmet .txt-block {
	color: #fff;
	width: calc(100% - 80rem);
	padding: 1.6rem 0
}

@media only screen and (max-width:1380px) {
	.ttl-bnr-gourmet .txt-block {
		width: calc(100% - 45rem)
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet .txt-block {
		width: 100%;
		padding: 0 1.6rem 1.6rem
	}
}

.ttl-bnr-gourmet .txt-block .ttl {
	font-size: 5rem;
	font-weight: bold;
	margin-bottom: 2.4rem
}

@media only screen and (max-width:1380px) {
	.ttl-bnr-gourmet .txt-block .ttl {
		font-size: 3.2rem;
		margin-bottom: 0.8rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet .txt-block .ttl {
		font-size: 2rem
	}
}

.ttl-bnr-gourmet .txt-block p {
	font-size: 2rem
}

@media only screen and (max-width:1380px) {
	.ttl-bnr-gourmet .txt-block p {
		font-size: 1.6rem
	}
}

@media only screen and (max-width:768px) {
	.ttl-bnr-gourmet .txt-block p {
		font-size: 1.2rem
	}
}

.wrapper-layout {
	display: flex;
	justify-content: space-between
}

.wrapper-layout .side-contents {
	width: 25%;
	z-index: 0
}

@media only screen and (max-width:768px) {
	.wrapper-layout .side-contents {
		width: 100%
	}
}

.wrapper-layout .side-contents .side-ttl {
	font-size: 2.4rem;
	font-weight: bold;
	margin: 1.6rem 0
}

@media only screen and (max-width:768px) {
	.wrapper-layout .side-contents .side-ttl {
		font-size: 2rem
	}
}

.wrapper-layout .side-contents .side-block {
	margin-top: 6rem;
	margin-bottom: 4rem
}

.wrapper-layout .main-contents {
	width: 72%
}

@media only screen and (max-width:768px) {
	.wrapper-layout .main-contents {
		width: 100%
	}
}

@media only screen and (max-width:768px) {
	.wrapper-layout {
		display: block
	}
}

.list-train {
	display: flex
}

.list-train>dd,
.list-train>dt {
	font-weight: bold;
	letter-spacing: 0;
	background: #fff;
	border: 2px solid #000;
	border-radius: 10px 0 0 10px;
	padding: 1.3rem 1.6rem;
	display: flex;
	align-items: center
}

@media only screen and (max-width:768px) {

	.list-train>dd,
	.list-train>dt {
		padding: 1rem 1.6rem
	}
}

.list-train>dt {
	min-width: 11rem
}

.list-train>dd {
	border-left: none;
	border-radius: 0 10px 10px 0
}

.ttl-train {
	margin-top: 10rem
}

@media only screen and (max-width:768px) {
	.ttl-train {
		margin-top: 4rem
	}
}

.ttl-train>* {
	position: relative;
	display: block;
	text-indent: -200%;
	overflow: hidden;
	min-height: 65px;
	margin-bottom: 4rem
}

@media only screen and (max-width:768px) {
	.ttl-train>* {
		margin-bottom: 0.8rem
	}
}

.ttl-train>:after {
	content: "";
	display: inline-block;
	width: auto;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	aspect-ratio: 285/64;
	background: url(../images/ttl_train.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-train>:after {
		height: 60%
	}
}

.ttl-train.ds>:after {
	aspect-ratio: 768/64;
	background: url(../images/ttl_train_ds.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-train.ds>:after {
		background: url(../images/ttl_train_ds_sp.png) no-repeat center center/contain;
		height: 100%
	}
}

.ttl-train.local>:after {
	aspect-ratio: 652/64;
	background: url(../images/ttl_train_local.png) no-repeat center center/contain
}

@media only screen and (max-width:768px) {
	.ttl-train.local>:after {
		background: url(../images/ttl_train_local_sp.png) no-repeat center center/contain;
		height: 100%
	}
}

.train-block {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 4rem;
	padding: 6.4rem 0;
	margin: 8rem auto;
	position: relative
}

@media only screen and (max-width:768px) {
	.train-block {
		gap: 2.4rem;
		padding: 4rem 0;
		margin: 4rem auto
	}
}

.train-block:before {
	content: "";
	background: #F0EFEA;
	border-radius: 80px 0 0 80px;
	width: 150vw;
	height: 100%;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -100px;
	z-index: -1
}

.train-block .ph-part {
	width: 35%;
	order: 2
}

@media only screen and (max-width:768px) {
	.train-block .ph-part {
		width: 100%;
		order: 1
	}
}

.train-block .ph-part.slider-block .swiper .swiper-slide {
	border-radius: 10px
}

.train-block .ph-part.slider-block .swiper .swiper-pagination {
	position: unset;
	margin: 2.4rem auto 0
}

.train-block .ph-part.slider-block .swiper .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #fff;
	border: 1px solid #707070;
	opacity: 1
}

.train-block .ph-part.slider-block .swiper .swiper-pagination-bullet-active {
	background: #DCDBDB
}

.train-block .txt-part {
	width: calc(65% - 4rem);
	order: 1
}

@media only screen and (max-width:768px) {
	.train-block .txt-part {
		width: 100%;
		order: 2
	}
}

.train-block .txt-part .ttl {
	font-size: 3rem;
	font-weight: bold;
	padding-left: 3.2rem;
	position: relative;
	margin-bottom: 2.4rem
}

.train-block .txt-part .ttl:before {
	content: "";
	background: #5CAB75;
	width: 18px;
	height: 3px;
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0
}

.train-block .txt-part .txt {
	font-weight: bold;
	text-indent: 1em;
	line-height: 2.25;
	letter-spacing: 0
}

.train-block .txt-part .list-train {
	margin-top: 2.4rem
}

.train-block .txt-part .btn-block {
	margin: 4rem 0 0
}

.train-block .txt-part .btn-block>p {
	margin: 0
}

@media only screen and (max-width:768px) {
	.train-block .txt-part .btn-block>p {
		margin: 1.6rem auto
	}
}

.train-block.reverse:before {
	border-radius: 0 80px 80px 0;
	right: -100px;
	left: auto
}

.train-block.reverse .ph-part {
	order: 1
}

.train-block.reverse .txt-part {
	order: 2
}

.train-map-block {
	padding: 8rem 0 0;
	margin: 4rem auto 1.6rem;
	position: relative
}

@media only screen and (max-width:768px) {
	.train-map-block {
		padding: 0;
		margin: 4rem auto
	}
}

.train-map-block .train-map {
	text-align: center;
	position: relative
}

@media only screen and (max-width:768px) {
	.train-map-block .train-map {
		max-width: 400px !important;
		margin: 0 auto 2.4rem
	}
}

.train-map-block .train-map:after {
	content: "";
	width: 100vw;
	height: 110px;
	display: block;
	margin: 6.4rem calc(50% - 50vw) 0
}

@media only screen and (max-width:1100px) {
	.train-map-block .train-map:after {
		height: 60px;
		margin: 0 calc(50% - 50vw)
	}
}

.train-map-block .train-info-wrap {
	list-style: none
}

@media only screen and (max-width:1100px) {
	.train-map-block .train-info-wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1.6rem;
		margin: 4rem auto
	}
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap {
		margin: 1.6rem auto
	}
}

@media only screen and (max-width:1100px) {
	.train-map-block .train-info-wrap .train-info {
		display: flex;
		flex: 1
	}
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info {
		flex: auto;
		width: 100%
	}
}

.train-map-block .train-info-wrap .train-info>a {
	color: #323232;
	background: #fff;
	border: 5px solid #940D84;
	border-radius: 20px;
	max-width: 290px;
	padding: 1.6rem;
	display: inline-block;
	position: absolute;
	top: 0
}

@media only screen and (max-width:1100px) {
	.train-map-block .train-info-wrap .train-info>a {
		position: unset
	}
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a {
		position: unset;
		width: 100%;
		max-width: 100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto 1fr;
		align-items: flex-start;
		gap: 0 1rem
	}
}

.train-map-block .train-info-wrap .train-info>a .ttl {
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 0;
	padding-left: 2rem;
	position: relative;
	margin-bottom: 0.8rem
}

@media only screen and (max-width:1100px) {
	.train-map-block .train-info-wrap .train-info>a .ttl {
		font-size: 2rem
	}
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a .ttl {
		grid-area: 1/1/2/3
	}
}

.train-map-block .train-info-wrap .train-info>a .ttl:before {
	content: "";
	width: 5px;
	height: 80%;
	background: #940D84;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a .list-train {
		grid-area: 2/1/3/2;
		display: block
	}
}

.train-map-block .train-info-wrap .train-info>a .list-train>dd,
.train-map-block .train-info-wrap .train-info>a .list-train>dt {
	padding: 0.8rem
}

.train-map-block .train-info-wrap .train-info>a .list-train>dt {
	min-width: 9rem
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a .list-train>dt {
		border-radius: 10px 10px 0 0
	}
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a .list-train>dd {
		border-radius: 0 0 10px 10px;
		border: 2px solid #000;
		border-top: none
	}
}

.train-map-block .train-info-wrap .train-info>a .ph-part {
	border-radius: 6px;
	display: inline-block;
	overflow: hidden;
	margin-top: 1.6rem
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a .ph-part {
		grid-area: 2/2/3/3;
		margin-top: 0
	}
}

.train-map-block .train-info-wrap .train-info>a:hover {
	transform: scale(1.05)
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info>a:hover {
		transform: none
	}
}

.train-map-block .train-info-wrap .train-info>a:hover img {
	opacity: 1
}

.train-map-block .train-info-wrap .train-info.ds01>a {
	border-color: #221815;
	top: 150px;
	right: 0
}

.train-map-block .train-info-wrap .train-info.ds01>a .ttl:before {
	background: #221815
}

.train-map-block .train-info-wrap .train-info.ds02>a {
	border-color: #E89211;
	top: auto;
	left: 50px;
	bottom: 100px
}

.train-map-block .train-info-wrap .train-info.ds02>a .ttl:before {
	background: #E89211
}

.train-map-block .train-info-wrap .train-info.ds03>a {
	max-width: 330px;
	border-color: #DA3A15;
	top: 0;
	left: 0
}

@media only screen and (max-width:768px) {
	.train-map-block .train-info-wrap .train-info.ds03>a {
		width: 100%;
		max-width: 100%
	}
}

.train-map-block .train-info-wrap .train-info.ds03>a .ttl:before {
	background: #DA3A15
}

.train-map-block .train-info-wrap .train-info.local01>a {
	top: 0;
	right: 0
}

.train-map-block .train-info-wrap .train-info.local02>a {
	top: 80px;
	left: 0
}

.train-map-block .train-info-wrap .train-info.local03>a {
	top: auto;
	right: 0;
	bottom: 100px
}

@media only screen and (max-width:1300px) {
	.train-map-block.ds .train-map {
		max-width: 65vw;
		margin: 0 auto
	}
}

@media only screen and (max-width:1100px) {
	.train-map-block.ds .train-map {
		max-width: inherit
	}
}

.train-map-block.ds .train-map:after {
	background: url(../images/txt_trainmap_ds.svg) no-repeat center left/contain
}

.train-map-block.ds .train-map img {
	padding-left: 10rem
}

@media only screen and (max-width:1100px) {
	.train-map-block.ds .train-map img {
		padding: 0
	}
}

.train-map-block.local .train-map:after {
	background: url(../fonts/txt_trainmap_local.svg) no-repeat center right/contain;
	margin: 1.6rem calc(50% - 50vw) 0
}

@media only screen and (max-width:768px) {
	.train-map-block.local .train-map:after {
		margin: 0 calc(50% - 50vw)
	}
}

.train-map-block.local .train-map img {
	padding-right: 20rem
}

@media only screen and (max-width:1100px) {
	.train-map-block.local .train-map img {
		padding: 0
	}
}

.slider-block .swiper-button-next,
.slider-block .swiper-button-prev {
	position: absolute;
	z-index: 10;
	cursor: pointer
}

.slider-block .swiper-button-next:before,
.slider-block .swiper-button-prev:before {
	content: "";
	width: 8rem;
	height: 8rem;
	background: #5CAB75;
	position: absolute;
	border-radius: 50%;
	transition: all 0.3s
}

@media only screen and (max-width:1100px) {

	.slider-block .swiper-button-next:before,
	.slider-block .swiper-button-prev:before {
		width: 6rem;
		height: 6rem
	}
}

@media only screen and (max-width:768px) {

	.slider-block .swiper-button-next:before,
	.slider-block .swiper-button-prev:before {
		width: 3rem;
		height: 3rem
	}
}

.slider-block .swiper-button-next:after,
.slider-block .swiper-button-prev:after {
	content: "";
	width: 3rem;
	height: 2rem;
	display: block;
	border: none;
	transform: rotate(0);
	background: url(../fonts/ico_arrow_w.svg) no-repeat center center/contain
}

@media only screen and (max-width:1100px) {

	.slider-block .swiper-button-next:after,
	.slider-block .swiper-button-prev:after {
		width: 2.5rem;
		height: 1.5rem
	}
}

@media only screen and (max-width:768px) {

	.slider-block .swiper-button-next:after,
	.slider-block .swiper-button-prev:after {
		width: 2rem;
		height: 1rem
	}
}

.slider-block .swiper-button-next,
.slider-block .swiper-button-prev {}

.slider-block .swiper-button-next.swiper-button-disabled,
.slider-block .swiper-button-prev.swiper-button-disabled {
	opacity: 0
}

.slider-block .swiper-button-next {
	right: 4rem
}

@media only screen and (max-width:768px) {
	.slider-block .swiper-button-next {
		right: 1rem
	}
}

.slider-block .swiper-button-prev {
	left: 4rem
}

@media only screen and (max-width:768px) {
	.slider-block .swiper-button-prev {
		left: 1rem
	}
}

.slider-block .swiper-button-prev:after {
	transform: rotate(-180deg)
}

.slider-block .stopbtn {
	color: #FFF;
	background: #333;
	border-radius: 10px;
	font-size: 1.4rem;
	text-align: center;
	padding: 0.2em 0.8em;
	display: block;
	position: absolute;
	bottom: 0.5em;
	left: 0;
	z-index: 15;
	cursor: pointer
}

.slider-block .stopbtn:hover {
	opacity: 1
}

.slider-block .stopbtn:before {
	content: "";
	width: 12px;
	height: 12px;
	display: inline-block;
	border: none;
	background: url(../fonts/ico_play_w.svg) no-repeat center center/contain;
	margin-right: 0.5em
}

.slider-block .stopbtn.stop:before {
	background: url(../fonts/ico_stop_w.svg) no-repeat center center/contain
}

.slider-block .stopbtn02 {
	width: 2.5em;
	height: 2.5em;
	color: #FFF;
	text-indent: -200px;
	background: #fff;
	border: none;
	border-radius: 0;
	padding: 0.5em;
	display: flex;
	align-items: center;
	position: absolute;
	left: 1em;
	bottom: 0.5em;
	z-index: 15
}

.slider-block .stopbtn02.play:after,
.slider-block .stopbtn02.stop:after {
	content: "";
	width: 0.8em;
	height: 0.8em;
	display: block;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../fonts/ico_stop_b.svg) no-repeat center center/contain
}

.slider-block .stopbtn02.play:after {
	background: url(../fonts/ico_play_b.svg) no-repeat center center/contain
}

.slider-block .btn-swiper {
	display: flex;
	align-items: center;
	position: absolute;
	left: 0.5em;
	bottom: 0.5em;
	z-index: 15
}

.slider-block .btn-swiper p+p {
	margin-left: 0.5em
}

.slider-block .btn-swiper p button.btn {
	width: 2.5em;
	height: 2.5em;
	color: #FFF;
	background: #323232;
	text-indent: -200px;
	padding: 0.5em;
	border-radius: 50%;
	display: flex;
	align-items: center;
	border: none
}

@media only screen and (max-width:768px) {
	.slider-block .btn-swiper p button.btn {
		width: 2em;
		height: 2em
	}
}

.slider-block .btn-swiper p button.btn.play:after,
.slider-block .btn-swiper p button.btn.stop:after {
	content: "";
	width: 0.8em;
	height: 0.8em;
	display: block;
	margin: 0 auto;
	background: url(../fonts/ico_stop_w.svg) no-repeat center center/contain
}

@media only screen and (max-width:768px) {

	.slider-block .btn-swiper p button.btn.play:after,
	.slider-block .btn-swiper p button.btn.stop:after {
		width: 0.6em;
		height: 0.6em
	}
}

.slider-block .btn-swiper p button.btn.play:after {
	background: url(../fonts/ico_play_w.svg) no-repeat center center/contain
}

.slider-block .btn-swiper p button.btn.active {
	background: #5CAB75
}

.slider-block .swiper-pagination-bullet-active {
	background: #5CAB75
}

.slider-block {
	width: 100%;
	position: relative
}

.slider-block .swiper .swiper-wrapper {
	height: auto
}

.slider-block .swiper .swiper-slide {
	overflow: hidden
}

.slider-block .swiper .swiper-slide img {
	width: 100%
}

.slider-block.slider-ratio .swiper-slide a>iframe,
.slider-block.slider-ratio .swiper-slide a>img,
.slider-block.slider-ratio .swiper-slide>iframe,
.slider-block.slider-ratio .swiper-slide>img {
	background: #e2e5ec;
	width: 100%;
	height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.7s;
	object-fit: contain
}

@media (-ms-high-contrast:none) {

	.slider-block.slider-ratio .swiper-slide a>iframe,
	.slider-block.slider-ratio .swiper-slide a>img,
	.slider-block.slider-ratio .swiper-slide>iframe,
	.slider-block.slider-ratio .swiper-slide>img {
		width: auto;
		height: auto;
		max-width: 130%;
		max-height: 130%
	}
}

.slider-block.ratio-1-1 .swiper-slide {
	aspect-ratio: 1/1 !important;
	object-fit: contain !important
}

.slider-block.ratio-3-2 .swiper-slide {
	aspect-ratio: 3/2 !important;
	object-fit: contain !important
}

.slider-block.ratio-3-4 .swiper-slide {
	aspect-ratio: 3/4 !important;
	object-fit: contain !important
}

.slider-block.ratio-4-3 .swiper-slide {
	aspect-ratio: 4/3 !important;
	object-fit: contain !important
}

.slider-block.ratio-16-9 .swiper-slide {
	aspect-ratio: 16/9 !important;
	object-fit: contain !important
}

.slider-bnr {
	padding: 2em;
	background: #B5B5B5
}

.slider-bnr .list-bnr {
	justify-content: flex-start
}

.slider-bnr .list-bnr li {
	margin: 0;
	height: auto
}

.slider-bnr .swiper-button-next {
	right: 0
}

.slider-bnr .swiper-button-prev {
	left: 0
}

.slider-thumb {
	margin: 2em 0
}

.slider-thumb .slider-inner {
	position: relative;
	margin-bottom: 1.6rem
}

.slider-thumb .list-thumb {
	margin-bottom: 2em;
	height: auto;
	flex-wrap: nowrap
}

.slider-thumb .swiper-button-next {
	right: -1rem
}

@media only screen and (max-width:768px) {
	.slider-thumb .swiper-button-next {
		right: -0.5em
	}
}

.slider-thumb .swiper-button-prev {
	left: -1rem
}

@media only screen and (max-width:768px) {
	.slider-thumb .swiper-button-prev {
		left: -0.5em
	}
}

.gallery-top .swiper-slide a>img,
.gallery-top .swiper-slide>img {
	object-fit: cover !important
}

.gallery-thumbs .swiper-slide>img {
	object-fit: cover !important
}

.slider-thumb-vertical {
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: 80% 1fr;
	grid-template-areas: "left right"
}

@media only screen and (max-width:1100px) {
	.slider-thumb-vertical {
		grid-template-columns: 73% 1fr
	}
}

@media only screen and (max-width:768px) {
	.slider-thumb-vertical {
		display: block;
		height: auto
	}
}

.slider-thumb-vertical .slider-inner {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	position: relative;
	margin-right: 7%;
	grid-area: left;
	height: fit-content
}

@media only screen and (max-width:768px) {
	.slider-thumb-vertical .slider-inner {
		width: 100%;
		margin-bottom: 1.6rem
	}
}

.slider-thumb-vertical .gallery-thumbs {
	-ms-grid-row: 1;
	-ms-grid-column: 2;
	width: 100%;
	height: 600px;
	grid-area: right
}

@media only screen and (max-width:768px) {
	.slider-thumb-vertical .gallery-thumbs {
		width: 100%;
		height: auto
	}
}

.slider-thumb-vertical .swiper-button-next {
	right: -1rem
}

@media only screen and (max-width:768px) {
	.slider-thumb-vertical .swiper-button-next {
		right: -0.5em
	}
}

.slider-thumb-vertical .swiper-button-prev {
	left: -1rem
}

@media only screen and (max-width:768px) {
	.slider-thumb-vertical .swiper-button-prev {
		left: -0.5em
	}
}

.slider-scroll-wrap .slider-scroll {
	margin-right: calc(50% - 50vw)
}

@media only screen and (max-width:768px) {
	.slider-scroll-wrap .slider-scroll {
		margin-right: 0
	}
}

.slider-scroll-wrap .slider-scroll .slider-block {
	max-width: 100%;
	padding-bottom: 4em
}

.slider-scroll-wrap .slider-scroll .swiper-button-next,
.slider-scroll-wrap .slider-scroll .swiper-button-prev {
	top: auto;
	bottom: 0;
	left: 0;
	right: auto
}

.slider-scroll-wrap .slider-scroll .swiper-button-next {
	left: 2.5em
}

.slider-scroll-wrap .slider-scroll .swiper-button-prev {
	left: 0
}

.slider-scroll-wrap .slider-scroll .swiper-button-next:after,
.slider-scroll-wrap .slider-scroll .swiper-button-next:before,
.slider-scroll-wrap .slider-scroll .swiper-button-prev:after,
.slider-scroll-wrap .slider-scroll .swiper-button-prev:before {
	display: none
}

@media only screen and (max-width:768px) {

	.slider-scroll-wrap .slider-scroll .swiper-button-next:after,
	.slider-scroll-wrap .slider-scroll .swiper-button-next:before,
	.slider-scroll-wrap .slider-scroll .swiper-button-prev:after,
	.slider-scroll-wrap .slider-scroll .swiper-button-prev:before {
		display: block
	}
}

.slider-scroll-wrap.ipad .slider-scroll {
	margin-right: 0
}

.slider-scroll-wrap.ipad .slider-scroll .slider-block {
	max-width: 100%;
	padding-bottom: 4em
}

.slider-scroll-wrap.ipad .slider-scroll .swiper-button-next,
.slider-scroll-wrap.ipad .slider-scroll .swiper-button-prev {
	top: auto;
	bottom: 0;
	left: 0;
	right: auto
}

.slider-scroll-wrap.ipad .slider-scroll .swiper-button-next {
	left: 4.5em
}

.slider-scroll-wrap.ipad .slider-scroll .swiper-button-prev {
	left: 1em
}

.slider-scroll-wrap.ipad .slider-scroll .swiper-button-next:after,
.slider-scroll-wrap.ipad .slider-scroll .swiper-button-next:before,
.slider-scroll-wrap.ipad .slider-scroll .swiper-button-prev:after,
.slider-scroll-wrap.ipad .slider-scroll .swiper-button-prev:before {
	display: block
}

.slider-scroll-wrap.ipad .slider-scroll .list-scroll li {
	border: none
}

/*# sourceMappingURL=common.css.map */