@font-face {
	font-family: "Montserrat";
	font-display: swap;
	src: url("../../fonts/Montserrat-Regular.ttf") format("truetype")
}

@font-face {
	font-family: "Montserrat-Light";
	font-display: swap;
	src: url("../../fonts/Montserrat-Light.ttf") format("truetype")
}

@font-face {
	font-family: "Montserrat-Medium";
	font-display: swap;
	src: url("../../fonts/Montserrat-Medium.ttf") format("truetype")
}

@font-face {
	font-family: "Montserrat-Bold";
	font-display: swap;
	src: url("../../fonts/Montserrat-Bold.ttf") format("truetype")
}

/*! sanitize.css v8.0.0 | CC0 License | github.com/csstools/sanitize.css */
*,
::before,
::after {
	background-repeat: no-repeat;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

::before,
::after {
	text-decoration: inherit;
	vertical-align: inherit
}

html {
	cursor: default;
	font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	line-height: 1.15;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	tab-size: 4;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	word-break: break-word;
}

body,
html {
	margin: 0;
	padding: 0;
}

h1 {
	font-size: 2em;
	margin: .67em 0
}

hr {
	height: 0;
	overflow: visible
}

main {
	display: block
}

nav ol,
nav ul {
	list-style: none
}

pre {
	font-family: Menlo, Consolas, Roboto Mono, Ubuntu Monospace, Noto Mono, Oxygen Mono, Liberation Mono, monospace;
	font-size: 1em
}

a {
	background-color: rgba(0, 0, 0, 0)
}

abbr[title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted
}

b,
strong {
	font-weight: bolder
}

code,
kbd,
samp {
	font-family: Menlo, Consolas, Roboto Mono, Ubuntu Monospace, Noto Mono, Oxygen Mono, Liberation Mono, monospace;
	font-size: 1em
}

small {
	font-size: 80%
}

::-moz-selection {
	background-color: #b3d4fc;
	color: #000;
	text-shadow: none
}

::selection {
	background-color: #b3d4fc;
	color: #000;
	text-shadow: none
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle
}

audio,
video {
	display: inline-block
}

audio:not([controls]) {
	display: none;
	height: 0
}

img {
	border-style: none
}

svg:not([fill]) {
	fill: currentColor
}

svg:not(:root) {
	overflow: hidden
}

table {
	border-collapse: collapse
}

button,
input,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit
}

button,
input,
select {
	margin: 0
}

button {
	overflow: visible;
	text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
	-webkit-appearance: button
}

fieldset {
	padding: .35em .75em .625em
}

input {
	overflow: visible
}

legend {
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal
}

progress {
	display: inline-block;
	vertical-align: baseline
}

select {
	text-transform: none
}

textarea {
	margin: 0;
	overflow: auto;
	resize: vertical
}

[type=checkbox],
[type=radio] {
	padding: 0
}

[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto
}

::-webkit-input-placeholder {
	color: inherit;
	opacity: .54
}

::-webkit-search-decoration {
	-webkit-appearance: none
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}

::-moz-focus-inner {
	border-style: none;
	padding: 0
}

:-moz-focusring {
	outline: 1px dotted ButtonText
}

details {
	display: block
}

dialog {
	background-color: #fff;
	border: solid;
	color: #000;
	display: block;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	padding: 1em;
	position: absolute;
	right: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content
}

dialog:not([open]) {
	display: none
}

summary {
	display: list-item
}

canvas {
	display: inline-block
}

template {
	display: none
}

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
	-ms-touch-action: manipulation;
	touch-action: manipulation
}

[hidden] {
	display: none
}

[aria-busy=true] {
	cursor: progress
}

[aria-controls] {
	cursor: pointer
}

[aria-disabled=true],
[disabled] {
	cursor: not-allowed
}

[aria-hidden=false][hidden]:not(:focus) {
	clip: rect(0, 0, 0, 0);
	display: inherit;
	position: absolute
}

html {
	font-size: 62.5%;
	cursor: auto;
	scroll-behavior: smooth;
}

body {
	font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	line-height: 1.5;
	letter-spacing: .03em;
	color: #222;
	font-size: 18px;
	height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	font-weight: inherit;
	font-size: inherit
}

p {
	margin: 0;
	line-height: 1.3;
	text-align: justify
}

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

a,
a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none
}

a {
	color: inherit
}

a.link {
	color: #0067b6;
	font-weight: bold;
	-webkit-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out
}

a.link:hover {
	opacity: .8
}

dl,
dd,
ul,
ol {
	margin: 0;
	padding: 0
}

ul,
ol {
	list-style: none
}

em {
	font-style: normal
}




/******************************************************************************
common
******************************************************************************/
.l-inner {
	width: min(1000px, 90%);
	margin-inline: auto;
}




#soda {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

h2 {
	width: 100%;
}

h2 img {
	display: block;
	margin-inline: auto;
}

.bg-white {
	background-color: rgba(255, 255, 255, .85);
}

.area-pd {
	padding-top: clamp(3.5em, 4.5vw, 4.5em);
	padding-bottom: clamp(2em, 4vw, 4em);
}

.ff-oswald {
	font-family: "Oswald", sans-serif;
}


/*** none ***/
.c-pcNone {
	display: none;
}

.c-spNone {
	display: block;
}

@media screen and (max-width:768px) {
	.c-pcNone {
		display: block;
		line-height: 0;
	}

	.c-spNone {
		display: none;
	}
}

/******************************************************************************
header
******************************************************************************/


header {
	font-family: "Montserrat", sans-serif;
	height: 80px;
	width: 100%;
	display: grid;
	align-items: center;
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	transition: all 0.3s ease-in-out;
}

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

header.is-show {
	background-color: rgba(255, 255, 255, .85);
	transition: all 0.3s ease-in-out;
}

.header-wrap {
	display: flex;
	justify-content: space-between;
	margin: 0 60px;
	align-items: center;
	position: relative;
}

@media screen and (max-width: 1024px) {
	.header-wrap {
		margin: 0;
		padding: 0 1em;
	}
}

.header-wrap h1 {
	width: 170px;
	position: relative;
	z-index: 100;
}



.header-gnav {
	position: absolute;
	right: 0;
	left: 0;
	top: -1em;
	height: 102vh;
	transform: translateX(100%);
	background-color: #fff;
	transition: ease .4s;
}


@media screen and (min-width: 1024px) {
	.header-gnav {
		position: static;
		transform: initial;
		background-color: inherit;
		height: inherit;
		display: flex;
		justify-content: end;
	}
}


@media screen and (min-width: 1024px) {
	.gnav-list {
		width: 100%;
		display: flex;
		align-items: center;
		height: initial;
		justify-content: space-between;
		column-gap: 1.5em;
	}
}


.gnav-item a {
	color: #29a7e1;
	font-weight: 500;
	line-height: 1;
	display: block;

}

@media screen and (max-width: 1024px) {
	.gnav-list {
		text-align: center;
		display: grid;
		row-gap: 2em;
	}

	.gnav-item a {
		font-size: 24px;
		font-weight: 700;
		line-height: 1;
	}
}

.gnav-item p {
	color: #b9b9b9;
	font-weight: 500;
}

@media screen and (max-width: 1024px) {
	.gnav-item p {
		font-size: 24px;
		font-weight: 700;
		line-height: 1;
	}
}

.nav-items {
	position: absolute;
	top: 46%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 0;
}



@media screen and (min-width: 1024px) {
	.nav-items {
		position: inherit;
		top: 50%;
		left: 0;
		transform: translate(0, 0);

	}
}

/* ナビのリンク */
.nav-items__item a {
	color: black;
	width: 100%;
	display: block;
	text-align: center;
	font-size: 20px;
	margin-bottom: 24px;
	color: black;
}

.nav-items__item:last-child a {
	margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
	.nav-items__item a {
		margin-bottom: 0;
	}
}


/* ハンバーガーメニュー */


.hamburger {
	background-color: transparent;
	border-color: transparent;
	z-index: 9999;
	border: 1px solid #29a0d7;
	border-radius: 50%;
	height: 40px;
	width: 40px;
}

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

/* ハンバーガーメニューの線 */
.hamburger span {
	width: 80%;
	height: 1px;
	background-color: #29a0d7;
	position: relative;
	transition: ease .4s;
	display: block;
	margin-inline: auto;
}

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

.hamburger span:nth-child(2) {
	margin: 6px 0;
	margin-inline: auto;
}

.hamburger span:nth-child(3) {
	top: 0;
}


/* ハンバーガーメニュークリック後のスタイル */
.header-gnav.active {
	transform: translateX(0);
}

.hamburger.active span:nth-child(1) {
	top: 7px;
	transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
	opacity: 0;

}

.hamburger.active span:nth-child(3) {
	top: -7px;
	transform: rotate(-45deg);
}


@media screen and (min-width: 768px) {
	.gnav-item.yellow a {
		color: #0685d7;
		transition: .3s;
	}

	.gnav-item.yellow a:hover {
		color: #fabe00;
		transition: .2s;
	}
}

.gnav-item.gnav-sns {
	display: grid;
	align-items: center;
	grid-template-columns: auto 1fr 1fr;
	column-gap: 1em;
}

@media screen and (max-width: 1024px) {
	.gnav-item.gnav-sns {
		text-align: center;
		grid-template-columns: auto;
		row-gap: 1.5em;
	}
}

.gnav-item.gnav-sns a {
	color: #fff;
	font-size: 11px;
}

@media screen and (max-width: 1024px) {
	.gnav-item.gnav-sns a {
		width: 85%;
		margin-inline: auto;
	}
}

.gnav-item.gnav-sns img {
	margin-right: .4em;
}

.x-share a {
	background-color: #000;
	padding: .4em .3em .3em;
	display: flex;
	align-items: center;
	border-radius: 3px;
	justify-content: center;
	font-weight: 500;
}

.facebook_post a {
	background-color: #0067b6;
	padding: .2em .3em;
	display: flex;
	align-items: center;
	border-radius: 4px;
	justify-content: center;
}

.is-open {
	overflow: hidden;
}

/******************************************************************************
MV
******************************************************************************/
.mv-area {
	margin-top: clamp(4em, 7vw, 7em);
	margin-bottom: clamp(1em, 7vw, 7em);
}

.slide-arrow {
	bottom: 0;
	cursor: pointer;
	margin: auto;
	position: absolute;
	top: 0;
	width: 30px;
}

@media screen and (max-width: 1024px) {
	.slide-arrow {
		display: none !important;
	}
}

.next-arrow {
	right: -5%;
}

.prev-arrow {
	left: -5%;
}

.mv-item-wrap {
	width: min(1300px, 94%);
	margin-inline: auto;
}

.slick-slide img {
	display: block;
	max-width: 1200px;
	margin-inline: auto;
	width: 100%;
}

.slick-initialized .slick-slide {
	margin: 0 .5em;
}

/******************************************************************************
archive
******************************************************************************/
#archive {
	background-color: rgba(41, 167, 225, .28);
	padding: 4em 0;
	margin-bottom: 3em;
}

@media screen and (max-width: 1024px) {
	#archive {
		padding: 2em 0;
	}
}

.archive-txt {
	font-size: clamp(24px, 5vw, 44px);
	font-weight: 800;
	text-align: center;
	margin-top: 1em;
}

#archive img {
	margin-bottom: .5em;
	width: 90%;
	margin-inline: auto;
	display: block;
}



.ticket-link-btn a {
	background-color: #0089e2;
	color: #fff;
	font-weight: 600;
	padding: .6em;
	display: block;
	border-radius: 5em;
	width: min(350px, 70%);
	font-size: clamp(18px, 3vw, 25px);
	text-align: center;
	margin-inline: auto;
	position: relative;
	margin-top: 1em;
	transition: .3s;
}

.ticket-link-btn a:hover {
	opacity: .8;
	transition: .3s;
}

.ticket-link-btn a::after {
	position: absolute;
	padding-right: 10px;
	content: "\f054";
	font-weight: bold;
	color: #fff;
	font-family: "Font Awesome 5 Free";
	right: .4em;
	font-size: clamp(18px, 3vw, 25px);
}

.archive-btn-wrap {
	display: grid;
	grid-template-columns: auto;
	gap: 1em;
	margin-top: 3em;
}

@media screen and (max-width: 1024px) {
	.archive-btn-wrap {
		margin-top: 2em;
	}
}

.archive-btn-wrap .ticket-link-btn a {
	background-color: #0089e2;
	color: #fff;
	font-weight: 600;
	padding: .7em;
	display: block;
	border-radius: 5em;
	width: min(500px, 100%);
	font-size: clamp(18px, 3vw, 25px);
	text-align: center;
	margin-inline: auto;
	position: relative;
	margin-top: 0;
	transition: .3s;
}

#ticket h2 {
	width: min(600px, 90%);
}

.manner-wrap {
	border: 1px solid #1b97e7;
	background-color: #fff;
	width: min(900px, 100%);
	margin-inline: auto;
	margin-top: 5%;
}

.manner-wrap dt {
	color: #fff;
	text-align: center;
	background-color: #1b97e7;
	padding: .8em;
	font-weight: 700;
	font-size: clamp(18px, 3vw, 22px);
}

.manner-item-ttl span {
	border-bottom: 2px solid #1b97e7;
}

.manner-wrap dd {
	padding: 5%;
}

.manner-wrap li {
	text-indent: -1em;
	padding-left: 1em;
	font-size: clamp(14px, 3vw, 17px);
	margin-bottom: 1em;
}

.manner-wrap li:last-child {
	margin-bottom: 0;
}

.manner-item-ttl {
	text-align: center;
	font-weight: 700;
	font-size: clamp(18px, 3vw, 22px);
	color: #1b97e7;
	margin-bottom: 1em;
}

.manner-item-txt {
	font-size: clamp(14px, 3vw, 17px);
}

.manner-item-end {
	text-align: center;
	font-weight: 600;
	font-size: clamp(14px, 3vw, 18px);
}

@media screen and (max-width: 768px) {
	.manner-item-end {
		text-align: left;
	}
}

/******************************************************************************
message
******************************************************************************/
#message h2 {
	margin-bottom: 1.5em;
}

#message dl {
	text-align: center;
}

#message dt {
	font-size: clamp(30px, 5vw, 48px);
	font-weight: 800;
	margin-bottom: .8em;
	letter-spacing: .09em;
}

#message dd {
	line-height: 2;
	font-size: clamp(16px, 3vw, 18px);
}

@media screen and (max-width: 768px) {
	#message dd {
		text-align: left;
	}
}


/******************************************************************************
info
******************************************************************************/
h2 {
	width: min(500px, 74%);
	margin-inline: auto;
	margin-bottom: clamp(2em, 5vw, 4.5em);
}

.info_sub {
	margin-top: 1em;
	width: 120px;
}

@media screen and (max-width: 768px) {
	.info_sub {
		width: 90px;
	}
}

.info-list {
	width: min(900px, 100%);
	margin-inline: auto;
}

.info-item {
	background-color: #fff;
	border: 1px solid #1b97e7;
	padding: 2em;
	text-align: center;
	margin-bottom: .6em;
}

@media screen and (max-width:1024px) {
	.info-item {
		padding: 1.5em 1em;
	}
}

.info-item dt {
	font-size: clamp(14px, 2vw, 18px);
	color: #1b97e7;
	font-weight: 700;
	padding-bottom: 1em;
}

.info-item dd {
	font-size: clamp(16px, 2vw, 20px);
	color: #222;
	font-weight: 700;
}




/******************************************************************************
artist
******************************************************************************/
.artist_group {
	margin-bottom: 6em;
}

.artist_group:last-child {
	margin-bottom: 0;
}

.artist_group dt img {
	display: block;
	margin-inline: auto;
}

.artist_group dt {
	margin-bottom: 3em;
}

@media screen and (max-width:768px) {
	.artist_group dt {
		margin-bottom: 2em;
	}
}

.artist_list {
	display: flex;
	column-gap: 2em;
	row-gap: 2em;
	justify-content: center;
	flex-wrap: wrap;
}

@media screen and (max-width:768px) {
	.artist_list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 1.5em;
		column-gap: 1em;
	}
}

.artist_item p {
	text-align: center;
	font-size: clamp(14px, 2vw, 16px);
	color: #1b97e7;
	font-weight: 600;
	padding-top: .5em;
	line-height: 1.2;
}

.artist_item p span {
	text-align: center;
	font-size: clamp(10px, 2vw, 13px);
}

@media (hover: hover) {
	.artist_item img {
		transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
	}

	.artist_item img:hover {
		-webkit-transform: translateY(-10px);
		transform: translateY(-10px);
	}

}

.artist_andmore {
	text-align: center;
	font-family: "Oswald", sans-serif;
	font-weight: 800;
	font-size: clamp(19px, 3vw, 26px);
	color: #bcbcbc;
	margin-top: 2em;
}

/******************************************************************************
artist　モーダル
******************************************************************************/
.remodal {
	padding: 3em 7%;
	border-radius: 10px;
}

@media only screen and (min-width: 641px) {
	.remodal {
		max-width: 900px;
		border-radius: 10px;
	}
}

.remodal-wrapper {
	padding: 2em;
}

@media only screen and (max-width: 768px) {
	.remodal-wrapper {
		padding: 1em;
	}
}

.artist_modal-txt {
	font-size: clamp(14px, 2vw, 16px);
	letter-spacing: 0.04em;
	line-height: 1.6;
	font-weight: 500;
}

.modal_artist_img {
	display: block;
	margin-bottom: 2em;
	margin-inline: auto;
}

@media only screen and (max-width: 768px) {
	.modal_artist_img {
		margin-bottom: 1.5em;
	}
}

.modal_artist_name {
	color: #0067b6;
	font-weight: 700;
	font-size: clamp(22px, 2vw, 30px);
	text-align: center;
	margin-bottom: 1em;
}

.modal_artist_name.opening {
	line-height: 1;
}

.modal_artist_name span {
	font-size: clamp(13px, 2vw, 17px);
}

.remodal-close {
	position: absolute;
	top: .5em;
	right: .5em;
	left: initial;
	color: #fabe00;
	transition: .3s;
}

.remodal-close:hover {
	color: #fabe00;
	opacity: .8;
	transition: .3s;
}

.remodal-close:before {
	font-size: 50px;
}

.modal-sns {
	border-top: 1px solid #dfdfdf;
	margin-top: 2em;
	padding-top: 2em;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: clamp(14px, 3vw, 18px);
}

.modal-sns img {
	display: block;
	width: 40px;
}

@media only screen and (max-width: 768px) {
	.modal-sns img {
		width: 30px;
	}
}

.modal-sns a {
	font-weight: 600;
}

/******************************************************************************
ticket
******************************************************************************/

.ticket-list {
	width: min(900px, 100%);
	margin-inline: auto;
}

.ticket-item {
	background-color: #fff;
	border: 1px solid #1b97e7;
	padding: 2em;
	text-align: center;
	margin-bottom: .6em;
}

@media screen and (max-width: 1024px) {
	.ticket-item {
		padding: 1.5em 1em;
	}
}

.ticket-item dt {
	font-size: clamp(14px, 2vw, 18px);
	color: #1b97e7;
	font-weight: 700;
	padding-bottom: 1em;
}

.ticket-item dd {
	font-size: clamp(16px, 2vw, 18px);
	color: #222;
	font-weight: 600;
}

.ticket-item em {
	font-size: clamp(20px, 2vw, 28px);
}

.ticket-item dd.ticket-item-Ltxt {
	font-size: clamp(16px, 3vw, 24px);
	font-weight: 800;
}

.ticket-item dd.ticket-item-Mtxt {
	font-size: clamp(12px, 2vw, 16px);
}

.ticket-item dd.ticket-item-Mtxt .ff-oswald {
	font-size: clamp(25px, 2vw, 28px);
	color: #1b97e7;
}

.ticket-item dd.ticket-item-Stxt {
	font-size: clamp(13px, 2vw, 16px);
	margin-top: 1em;
}

.ticket-item dd.ticket-item-Stxt a {
	font-weight: 900;
	color: #1b97e7;
}

.ticket-item a {
	color: #1b97e7;
	border-bottom: 1px solid #1b97e7;
}

.ticket-item a:hover {
	border-bottom: none;
}

.mb-2 {
	margin-bottom: 2em;
}

/******************************************************************************
staff
******************************************************************************/


.staff-wrap li {
	padding-bottom: 1em;
	text-align: center;
	color: #1b97e7;
	font-weight: 600;
	font-size: clamp(14px, 2vw, 18px);
}

.staff-wrap span {
	background-color: #1b97e7;
	color: #fff;

	border-radius: 3px;
	padding: .1em .2em;
	margin-right: .5em;
}

/******************************************************************************
バンドメンバー
******************************************************************************/
.band-list {
	display: flex;
	flex-wrap: wrap;
	gap: 2em;
	justify-content: center;

}

@media screen and (max-width: 768px) {
	.band-list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 1.5em;
		column-gap: 1em;
	}
}

.band-item p {
	text-align: center;
	font-size: clamp(14px, 2vw, 16px);
	color: #1b97e7;
	font-weight: 600;
	padding-top: .5em;
	line-height: 1.2;
}

/******************************************************************************
access
******************************************************************************/

#access .access-map {
	margin-bottom: 2em;
	width: min(900px, 100%);
	margin-inline: auto;
}

#access .access-map iframe {
	width: 100%;
	display: block;
}

@media screen and (max-width:768px) {
	#access .access-map iframe {
		height: 300px;
	}
}

#access .info-item dd {
	font-size: clamp(16px, 2vw, 18px);
	color: #222;
	font-weight: 600;
}

#access .info-item a {
	color: #1b97e7;
	border-bottom: 1px solid #1b97e7;
}

#access .info-item a:hover {
	border-bottom: none;
}





/******************************************************************************
footer
******************************************************************************/
footer {
	position: relative;
}

.page-top {
	position: absolute;
	right: 2em;
	top: -1.5em;
}

@media screen and (max-width: 768px) {
	.page-top {
		position: absolute;
		right: 1em;
		top: -1em;
	}
}

.page-top img {
	width: 60px;
}

@media screen and (max-width: 768px) {
	.page-top img {
		width: 40px;
	}
}

.footer-logo {
	background-color: #4ab2e2;
	padding: 2em;
}

.footer-logo img {
	display: block;
	margin-inline: auto;
}

@media screen and (max-width: 768px) {
	.footer-logo img {
		width: 100px;
	}
}

.footer-item {
	background-color: #0685d7;
	padding: 4em 4em 1em;
	color: #fff;
	text-align: center;
	font-size: 12px;
	display: grid;
	row-gap: 2em;
}

@media screen and (max-width: 1024px) {
	.footer-item {
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 768px) {
	.footer-item {
		padding: 4em 2em 1em;
	}
}

.footer-item a {
	display: block;
}

.footer-left {
	display: flex;
	align-items: end;
}

@media screen and (max-width: 1024px) {
	.footer-left {
		display: block;
		text-align: right;
		margin-top: 3em;
	}
}

.footer-right {
	text-align: right;
}

@media screen and (max-width: 1024px) {
	.footer-right {
		text-align: center;
	}
}

.footer-right a.contact {
	font-family: "Montserrat", sans-serif;
	border: 1px solid #fff;
	display: inline-block;
	padding: .8em 1.5em;
	font-weight: 600;
	border-radius: 3em;
	line-height: 1.3;
	margin-bottom: 1.5em;
	transition: .3s;
}

.footer-right a.contact:hover {
	background-color: #fabe00;
	transition: .3s;
}

.footer-right p {
	margin-bottom: 1em;
}

@media screen and (max-width: 1024px) {
	.footer-right p {
		text-align: center;
	}
}


/******************************************************************************
goods
******************************************************************************/

#goods {
	margin-top: 6%;
}

#goods-top .goods-wrap {
	margin-top: 0;
}

.goods-wrap {
	width: min(1100px, 90%);
	margin-inline: auto;
	margin-top: 2%;
}

#goods-top .goods-list {
	margin-top: 0;
}

.goods-list {
	margin-top: 12%;
}

#goods-top .goods-item {
	margin-bottom: 7%;
}

.goods-item {
	background-color: rgba(27, 151, 231, 0.7);
	border-radius: 2em;
	margin-bottom: 11%;
}

@media screen and (max-width: 768px) {
	.goods-item {
		border-radius: .8em;
	}
}

.goods-item dt {
	font-size: clamp(17px, 4.5vw, 35px);
	font-weight: 800;
	text-align: center;
	color: #fff;
	padding: .8em;
}

.good-def-item {
	border: 1px solid #0685d7;
	padding: 4% 6%;
	background-color: #fff;
	margin-bottom: 2em;
}

@media screen and (max-width: 768px) {
	.good-def-item {
		padding: 6% 5%;
	}
}

.good-def-item dt {
	font-size: clamp(20px, 3vw, 24px);
	font-weight: 800;
	color: #0685d7;
	text-align: center;
	padding-bottom: 1.5em;
}

@media screen and (max-width: 768px) {
	.good-def-item dt {
		padding-bottom: 1em;
	}
}

.good-def-item dt span {
	display: block;
	font-size: clamp(14px, 3vw, 18px);
	font-weight: 600;
	text-align: center;
	color: #222;
	margin-top: .5em;
}


.good-def-item li {
	margin-bottom: .8em;
	font-weight: 600;
	font-size: clamp(14px, 3vw, 18px);
}

.indent-body {
	text-indent: -1em;
	padding-left: 1em;
}

.good-time {
	text-align: center;
}

.good-time span {
	font-size: clamp(14px, 2vw, 16px);
	margin-top: .5em;
	display: block;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.good-time span {
		text-align: left;
	}
}

.good-time.def {
	margin-top: 1.5em;

}