@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* --------------------------------------------------
	CSS Reset
-------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
html {
	scroll-behavior: smooth;
}
body {
	position: relative;
	line-height: 1;
	background-color: #fff;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display: block;
}
ul,ol {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
a:link,
a:visited {
	color: #fff;
	text-decoration: none;
}
a:hover,
a:active {
	color: #fff;
	text-decoration: underline;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
html {
	font-family: "Noto Sans JP", sans-serif;
}
h1,h2,h3,h4,h5,h6,
dt,dd,li,form,input,select,textarea,
p,address,pre,blockquote,th,td,div {
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.01em;
	color: #000;
	font-feature-settings: "palt";
}
img {
	width: 100%;
	vertical-align: top;
}
a,
a img {
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
a:hover img { opacity: 0.7; }
sup {
	font-size: 60%;
	vertical-align: text-top;
}
sub {
	font-size: 60%;
	vertical-align: text-bottom;
}


/* --------------------------------------------------
	Clearfix
-------------------------------------------------- */
.clearfix:after {
	content: '';
	display: block;
	clear: both;
}
.clearfix { *zoom: 1; }

/* --------------------------------------------------
	.pc-only, .sp-only
-------------------------------------------------- */
@media screen and (min-width: 769px) {
	.sp-only { display: none; }
}
@media screen and (max-width: 768px) {
	.pc-only { display: none; }
}


/* --------------------------------------------------
	.anchor
-------------------------------------------------- */
.anchor { transform: translate(0,0); }
@media screen and (max-width: 768px) {
	.anchor { transform: translate(0,0); }
}

/* --------------------------------------------------
	.inner
-------------------------------------------------- */
.inner {
	position: relative;
	margin: 0 auto;
	max-width: 1000px;
}
@media screen and (max-width: 1040px) {
	.inner {
		margin: 0 20px;
	}
}
@media screen and (max-width: 768px) {
	.inner {
		margin: 0 auto;
	}
}

/* --------------------------------------------------
	.bg-movie
-------------------------------------------------- */
.bg-movie {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.bg-movie video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bg-movie::after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
}

/* --------------------------------------------------
	.header
-------------------------------------------------- */
.header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10;
	width: 100%;
}
.header .inner {
	padding-top: 0;
}
.header h1 {
	position: absolute;
	left: 30px;
	top: 0;
	width: 140px;
	transform-origin: center top;
	transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}
.scrolled .header h1 {
	transform: scale(0.75);
}
@media screen and (max-width: 1440px) {
	.header .inner {
		margin-left: 20px;
		margin-right: 20px;
	}
}
@media screen and (max-width: 768px) {
	.header .inner {
		margin-left: 0;
		margin-right: 0;
	}
	.header h1 {
		left: 4.2667vw;
		top: 4.2667vw;
		width: 21.3334vw;
	}
}

/* --------------------------------------------------
	.main-contents
-------------------------------------------------- */
.main-contents {
	margin: 0 auto;
}
.ttl-border {
	position: relative;
	margin: 0 auto 35px;
	width: 354px;
}
.ttl-border span {
	position: relative;
	display: block;
	font-weight: 500;
	color: #fff;
	line-height: 1;
  text-align-last: justify;
}
.ttl-border span::before,
.ttl-border span::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
  background : -moz-linear-gradient(24.72% 2287.5% 45deg,rgba(60, 185, 185, 1) 0%,rgba(210, 218, 0, 1) 50%,rgba(225, 85, 145, 1) 100%);
  background : -webkit-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  background : -webkit-gradient(linear,24.72% 2287.5% ,75.28% -2187.5% ,color-stop(0,rgba(60, 185, 185, 1) ),color-stop(0.5,rgba(210, 218, 0, 1) ),color-stop(1,rgba(225, 85, 145, 1) ));
  background : -o-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  background : -ms-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#3CB9B9', endColorstr='#E15591' ,GradientType=0)";
  background : linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3CB9B9',endColorstr='#E15591' , GradientType=1);
}
.ttl-border span::before {
	top: 0;
}
.ttl-border span::after {
	bottom: 0;
}
.ttl-border .ttl-sub::before {
	display: none;
}
.ttl-border .ttl-main {
	padding: 8px 0 10px;
	font-size: 48px;
}
.ttl-border .ttl-sub {
	padding: 4px 0 10px;
	font-size: 22px;
}
@media screen and (max-width: 768px) {
	.main-contents {
		overflow: hidden;
	}
	.ttl-border {
		margin-bottom: 6.4vw;
		width: 57.6vw;
	}
	.ttl-border span::before,
	.ttl-border span::after {
		height: 2px;
	}
	.ttl-border .ttl-main {
		padding: 4px 0 5px;
		font-size: 8vw;
	}
	.ttl-border .ttl-sub {
		padding: 2px 0 5px;
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.common-copy
-------------------------------------------------- */
.common-copy {
	position: relative;
	margin: 100px auto;
	padding-top: 66px;
	width: 320px;
	height: 220px;
	box-sizing: border-box;
}
.common-copy-text {
	margin: 0 auto;
	width: 121px;
}
[class^="common-copy-illust"] {
	position: absolute;
  display: inline-block;
  animation: tiltSwing 3s linear infinite;
}
.common-copy-illust1 {
	left: 0;
	top: 40px;
	width: 70px;
}
.common-copy-illust1 img {
   transform: rotate(-10deg);
}
.common-copy-illust2 {
	top: 0;
	right: 0;
	width: 62px;
}
.common-copy-illust2 img {
   transform: rotate(10deg);
}
.common-copy-illust3 {
	right: 31px;
	bottom: 0;
	width: 52px;
}
@keyframes tiltSwing {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-5deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.common-copy {
	transform: translate(0,30px);
	opacity: 0;
}
.common-copy.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.common-copy.delighter.started {
	transform: none;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.common-copy {
		margin-top: 17.0667vw;
		margin-bottom: 17.0667vw;
		padding-top: 12vw;
		width: 56.8vw;
		height: 38.9334vw;
	}
	.common-copy-text {
		width: 25.6vw;
	}
	.common-copy-illust1 {
		top: 4.2667vw;
		width: 10.6667vw;
	}
	.common-copy-illust2 {
		width: 10.6667vw;
	}
	.common-copy-illust3 {
		right: 3.2vw;
		width: 10.6667vw;
	}
}

/* --------------------------------------------------
	.mfp-fade
-------------------------------------------------- */
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
	transform: scale(0.8);
  transition: all 0.3s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
	transform: scale(1);
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

/* --------------------------------------------------
	.kv
-------------------------------------------------- */
.kv {
	width: 100%;
	height: 100vh;
}
.kv .inner {
	width: 100%;
	height: 100%;
}
.kv h1 {
	position: absolute;
	left: 50%;
	top: 40%;
	transform: translate(-50%,-50%);
	width: 520px;
}
.kv .btn-playmovie {
	position: absolute;
	left: 50%;
	top: 40%;
	transform: translate(-50%,-50%);
	margin-top: 210px;
	width: 156px;
	background-color: transparent;
	box-sizing: border-box;
	border: 0;
	cursor: pointer;
}
.kv .btn-playmovie a {
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.kv .btn-playmovie a:hover {
	opacity: 0.6;
}
.kv h1,
.kv .btn-playmovie {
	opacity: 0;
	transform: translate(-50%, calc(-50% + 30px) );
}
.kv.delighter h1 {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0.3s;
}
.kv.delighter .btn-playmovie {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0.6s;
}
.kv.delighter.started h1,
.kv.delighter.started .btn-playmovie {
	transform: translate(-50%,-50%);
	opacity: 1;
}
@media screen and (max-width: 1040px) {
	.kv .inner {
		margin: 0;
	}
}
@media screen and (max-width: 768px) {
	.kv h1 {
		width: 90%;
	}
	.kv .btn-playmovie {
		margin-top: 42.6667vw;
		width: 32vw;
	}
}

/* --------------------------------------------------
	.about
-------------------------------------------------- */
.about h2 {
	margin-bottom: 50px;
	font-size: 36px;
	font-weight: 600;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.about .inner > p {
	font-size: 28px;
	font-weight: 500;
	color: #fff;
	line-height: 2;
	text-align: center;
}
.about p + p {
	margin-top: 2em;
}
.about h2,
.about .inner > p {
	transform: translate(0,30px);
	opacity: 0;
}
.about .delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.about .delighter.started {
	transform: none;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.about h2 {
		margin-bottom: 9.6vw;
		font-size: 6.4vw;
	}
	.about .inner > p {
		font-size: 4.8vw;
	}
}

/* --------------------------------------------------
	.movie
-------------------------------------------------- */
.movie {
	margin-bottom: 100px;
}
.movie-box {
	position: relative;
	margin: 0 auto;
	max-width: 750px;
}
.movie-box + .movie-box {
	margin-top: 100px;
}
.movie-box .icon-new {
	position: absolute;
	right: 0;
	top: 4px;
	width: 120px;
}
.movie-box p {
	margin-bottom: 36px;
	font-size: 22px;
	font-weight: 500;
	color: #fff;
	line-height: 2;
	text-align: center;
}
.movie-box .movie-youtube {
	aspect-ratio: 16 / 9;
}
.movie-box .movie-youtube iframe {
	width: 100%;
	height: 100%;
}
.movie .lyrics {
	margin: 100px auto 0;
	max-width: 750px;
}
.movie .lyrics .lyrics-1 {
	margin: 0 auto 80px;
	width: 520px;
}
.movie .lyrics .lyrics-2 {
	margin: 0 auto 60px;
	width: 480px;
}
.movie .lyrics .lyrics-3 {
	margin: 0 auto 40px;
	width: 480px;
}
.movie .lyrics .lyrics-4 {
	margin: 0 52px 0 auto;
	width: 219px;
}
.movie-box h2,
.movie-box p,
.movie-box .movie-youtube {
	transform: translate(0,30px);
	opacity: 0;
}
.movie-box.delighter h2 {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.movie-box.delighter p {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0.3s;
}
.movie-box.delighter .movie-youtube {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0.6s;
}
.movie-box.delighter.started h2,
.movie-box.delighter.started p,
.movie-box.delighter.started .movie-youtube {
	transform: none;
	opacity: 1;
}
.movie-box .icon-new {
	transform: scale(0.5);
	opacity: 0;
}
.movie-box.delighter .icon-new {
	transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.5s;
}
.movie-box.delighter.started .icon-new {
	transform: none;
	opacity: 1;
}
.movie .lyrics > * {
	transform: translate(0,30px);
	opacity: 0;
}
.movie .lyrics > .delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.movie .lyrics > .delighter.started {
	transform: none;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.movie {
		margin-bottom: 17.0667vw;
	}
	.movie-box {
		max-width: 91.4667vw;
	}
	.movie-box + .movie-box {
		margin-top: 17.0667vw;
	}
	.movie-box .icon-new {
		top: 2px;
		width: 13.3334vw;
	}
	.movie-box p {
		margin-bottom: 5.3334vw;
		font-size: 4.2667vw;
	}
	.movie .lyrics {
		margin-top: 17.0667vw;
		max-width: 100vw;
	}
	.movie .lyrics .lyrics-1 {
		margin-bottom: 8.5334vw;
		width: 81.8667vw;
	}
	.movie .lyrics .lyrics-2 {
		margin-bottom: 8.5334vw;
		width: 74.6667vw;
	}
	.movie .lyrics .lyrics-3 {
		margin-bottom: 4.2667vw;
		width: 74.6667vw;
	}
	.movie .lyrics .lyrics-4 {
		margin-right: 5.3334vw;
		width: 37.3334vw;
	}
}

/* --------------------------------------------------
	.postergallery
-------------------------------------------------- */
.postergallery {
	margin-bottom: 120px;
}
.postergallery h2 {
	margin-bottom: 25px;
	font-size: 36px;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.postergallery .subtitle {
	margin-bottom: 60px;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0.015em;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.postergallery-box {
	margin: 0 auto;
	max-width: 500px;
}
.postergallery-box + .postergallery-box {
	margin-top: 100px;
}
.postergallery-box p {
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
	color: #fff;
	line-height: 1.8;
	text-align: center;
}
.postergallery-box .lead {
	margin-top: 40px;
}
.postergallery-box .place {
	margin-top: 1em;
}
.postergallery hgroup,
.postergallery-box .thumb,
.postergallery-box .lead,
.postergallery-box .place {
	transform: translate(0,30px);
	opacity: 0;
}
.postergallery hgroup.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.postergallery-box .thumb.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.postergallery-box .lead.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.postergallery-box .place.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.postergallery hgroup.delighter.started,
.postergallery-box .thumb.delighter.started,
.postergallery-box .lead.delighter.started,
.postergallery-box .place.delighter.started {
	transform: none;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.postergallery {
		margin-bottom: 120px;
	}
	.postergallery h2 {
		margin-bottom: 4.2667vw;
		font-size: 6.4vw;
	}
	.postergallery .subtitle {
		margin-bottom: 10.6667vw;
		font-size: 4.8vw;
	}
	.postergallery-box {
		max-width: 100vw;
	}
	.postergallery-box + .postergallery-box {
		margin-top: 17.0667vw;
	}
	.postergallery-box .thumb {
		margin: 0 auto;
		max-width: 76vw;
	}
	.postergallery-box p {
		font-size: 4.8vw;
	}
	.postergallery-box .lead {
		margin-top: 6.4vw;
	}
}


/* --------------------------------------------------
	.artist
-------------------------------------------------- */
.artist {
	margin-bottom: 120px;
}
.artist h2 {
	margin-bottom: 55px;
	font-size: 36px;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.artist-profile .thumb {
	margin: 0 auto 50px;
	max-width: 250px;
}
.artist-profile .name span {
	display: block;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.artist-profile .name .ja {
	font-size: 28px;
	font-weight: 500;
}
.artist-profile .name .en {
	margin-top: 1em;
	font-size: 18px;
	font-weight: 900;
}
.artist-profile .career {
	margin-top: 45px;
	margin-bottom: 140px;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.8;
	color: #fff;
	text-align: center;
}
.artist-profile .thumb,
.artist-profile .name,
.artist-profile .career {
	transform: translate(0,30px);
	opacity: 0;
}
.artist-profile.delighter .thumb {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.artist-profile.delighter .name {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0.3s;
}
.artist-profile .career.delighter {
	transition: all 1s cubic-bezier(.33,1,.68,1) 0s;
}
.artist-profile.delighter.started .thumb,
.artist-profile.delighter.started .name,
.artist-profile .career.delighter.started {
	transform: none;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.artist {
		margin-bottom: 17.0667vw;
	}
	.artist h2 {
		margin-bottom: 8.5334vw;
		font-size: 6.4vw;
	}
	.artist-profile .thumb {
		margin-bottom: 8.5334vw;
		max-width: 50vw;
	}
	.artist-profile .name .ja {
		font-size: 5.3334vw;
	}
	.artist-profile .name .en {
		font-size: 4.8vw;
	}
	.artist-profile .career {
		margin-top: 8.5334vw;
		margin-bottom: 0;
		font-size: 3.7334vw;
	}
}

/* --------------------------------------------------
	.contact
-------------------------------------------------- */
.contact h2 {
	margin: 0 auto 60px;
	padding: 1px;
	width: 400px;
	height: 90px;
	border-radius: 45px;
	box-sizing: border-box;
  background : -moz-linear-gradient(24.72% 2287.5% 45deg,rgba(60, 185, 185, 1) 0%,rgba(210, 218, 0, 1) 50%,rgba(225, 85, 145, 1) 100%);
  background : -webkit-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  background : -webkit-gradient(linear,24.72% 2287.5% ,75.28% -2187.5% ,color-stop(0,rgba(60, 185, 185, 1) ),color-stop(0.5,rgba(210, 218, 0, 1) ),color-stop(1,rgba(225, 85, 145, 1) ));
  background : -o-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  background : -ms-linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#3CB9B9', endColorstr='#E15591' ,GradientType=0)";
  background : linear-gradient(45deg, rgba(60, 185, 185, 1) 0%, rgba(210, 218, 0, 1) 50%, rgba(225, 85, 145, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3CB9B9',endColorstr='#E15591' , GradientType=1);
}
.contact h2 span {
	display: grid;
	place-items: center;
	padding-bottom: 0.1em;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border-radius: 44px;
	box-sizing: border-box;
	font-size: 18px;
	font-weight: 900;
	line-height: 1;
	color: #eb648c;
}
.contact dl dt,
.contact dl dd {
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.14em;;
	color: #fff;
	text-align: center;
}
.contact dl dt {
	margin-bottom: 30px;
	font-size: 18px;
}
.contact dl dd {
	font-size: 32px;
}
.contact address p {
	margin-top: 65px;
	font-size: 18px;
	font-weight: 900;
	line-height: 2;
	letter-spacing: 0.14em;;
	text-align: center;
	color: #fff;
}
@media screen and (max-width: 768px) {
	.contact h2 {
		margin-bottom: 10.6667vw;
		width: 74.6667vw;
		height: 13.8667vw;
		border-radius: 6.9334vw;
	}
	.contact h2 span {
		border-radius: 6.6667vw;
		font-size: 4.2667vw;
	}
	.contact dl dt,
	.contact dl dd {
		letter-spacing: 0.08em;;
	}
	.contact dl dt {
		margin-bottom: 4vw;
		font-size: 4.2667vw;
	}
	.contact dl dd {
		font-size: 5.3334vw;
	}
	.contact address p {
		margin-top: 8vw;
		font-size: 3.7334vw;
		letter-spacing: 0.08em;;
	}
}

/* --------------------------------------------------
	.footer
-------------------------------------------------- */
.footer .inner {
	padding-top: 60px;
	padding-bottom: 60px;
	max-width: 100%;
}
.footer .copyright {
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	color: #FFF;
	text-align: center;
}
.footer .footer-banner {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 50px 30px;
}
.footer .footer-banner li img {
	width: auto;
	height: 65px;
}
@media screen and (max-width: 1040px) {
	.footer .inner {
		margin-left: 0;
		margin-right: 0;
	}
}
@media screen and (max-width: 768px) {
	.footer .inner {
		padding-top: 0;
		padding-bottom: 5.3334vw;
	}
	.footer .copyright {
		font-size: 2.9334vw;
		line-height: 1.6;
	}
	.footer .footer-banner {
		gap: 4.2667vw;
	}
	.footer .footer-banner li img {
		width: 34.1334vw;
		height: auto;
	}

}

/* --------------------------------------------------
	.pagetop
-------------------------------------------------- */
.pagetop-wrap {
	position: relative;
	margin-top: 70px;
	margin-bottom: 15px;
	padding-top: 1px;
	width: 100%;
}
.btn-pagetop {
	position: fixed;
	right: 70px;
	bottom: 70px;
	z-index: 7;
	width: 80px;
	opacity: 0;
	pointer-events: none;
	transition: 0.2s linear;
}
.scrolled .btn-pagetop {
	opacity: 1;
	pointer-events: auto;
}
.btn-pagetop.is--bottom {
	position: absolute;
	bottom: 0;
}
.scrolled .btn-pagetop {
	opacity: 1;
	pointer-events: auto;
}
@media screen and (max-width: 1000px) {
	.btn-pagetop {
		right: 30px;
		bottom: 30px;
	}
}
@media screen and (max-width: 768px) {
	.pagetop-wrap {
		margin-top: 12.8vw;
		margin-bottom: 3.2vw;
	}
	.btn-pagetop {
		right: 4.2667vw;
		bottom: 4.2667vw;
		width: 12.8vw;
	}
}
