@charset "utf-8";

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
p,
h1,
h2,
h3,
h4,
h5,
h6,
th,
td,
pre,
code,
blockquote,
form,
fieldset,
legend,
input,
textarea,
figcaption,
figure {
	margin: 0;
	padding: 0
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

fieldset,
img {
	border: 0
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
	font-style: normal;
	font-weight: normal
}

li {
	list-style: none
}

caption,
th {
	text-align: left
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal
}

q:before,
q:after {
	content: ''
}

abbr,
acronym {
	border: 0;
	font-variant: normal
}

sup {
	vertical-align: text-top
}

sub {
	vertical-align: text-bottom
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit
}

input,
textarea,
select {
	*font-size: 100%
}

legend {
	color: #FFF
}

hr {
	display: none
}

img {
	vertical-align: bottom
}

select,
input,
button,
textarea {
	font-size: 99%
}

table {
	font-size: inherit;
	font: 100%;
	border-collapse: collapse;
	border-spacing: 0
}

pre,
code,
kbd,
samp,
tt {
	font-family: monospace;
	*font-size: 108%;
	line-height: 100%
}

.hd {
	display: block;
	width: 0;
	height: 0;
	overflow: hidden
}

.cf:before,
.cf:after {
	content: "";
	display: table
}

.cf:after {
	clear: both
}

.cf {
	*zoom: 1
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr,
menu,
nav,
section,
main {
	display: block
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	max-height: 999999px;
	outline: none
}

*:focus {
	outline: none
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0
}

:root {
	--font-han-serif: 'source-han-serif-japanese', serif;
	--font-hiragino: "hiragino-kaku-gothic-pron", sans-serif;
	--font-urw: "urw-din-condensed", sans-serif;

	--color-gray: #f0f0f0;
	--color-orange: #f8b500;
	--color-red: #e60012;

	--vw-min: 1200;
}

@media screen and (max-width:768px) {
	:root {
		--vw-min: 375;
	}
}

body {
	-webkit-text-size-adjust: 100%;
	background-color: #0a0a0a;
	color: #FFF;
	font-family: var(--font-han-serif);
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	word-wrap: break-word;
}

a {
	color: #000
}

a:hover {
	text-decoration: none
}

.ah {
	transition: opacity .3s ease
}

.ah:hover {
	opacity: .7
}

::selection {
	background: #6ccfee;
	color: #fff;
}

::-moz-selection {
	background: #6ccfee;
	color: #fff;
}

@media screen and (max-width:768px) {
	html {
		font-size: 62.5%;
	}

	body {
		font-size: calc(12 / var(--vw-min) * 100vw);
		min-width: 320px;
	}

	.pc {
		display: none
	}

	.ah:hover {
		opacity: 1
	}
}

@media screen and (min-width:769px) {
	body {
		scrollbar-gutter: stable;
	}

	.sp {
		display: none
	}

	::-webkit-scrollbar {
		width: 8px;
		height: 8px;
	}

	::-webkit-scrollbar-track {
		border-radius: 0px;
		background: #666;
	}

	::-webkit-scrollbar-thumb {
		background: #fff;
		margin: 2px;
		box-shadow: none;
	}

	@-moz-document url-prefix() {
		html {
			scrollbar-color: #000 #fff;
			scrollbar-width: thin;
		}
	}
}

@keyframes rotate {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(720deg);
	}
}

#loading {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: #000;
	z-index: 100000;
	pointer-events: none;
}

.wf-loading #loading {
	opacity: 1;
}

.full-loading.wf-active #loading,
.loading-delay.full-loading #loading {
	opacity: 0;
	transition: opacity 0.3s ease;
}

#fullWrap {
	position: relative;
}

.header {
	position: absolute;
	z-index: 99999;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	pointer-events: none;
}

.header__inner {
	position: sticky;
	left: 0;
	top: 0;
	width: 100%;
}

@media screen and (max-width:768px) {
	.header__inner {
		position: sticky;
		left: 0;
		top: 0;
		width: 100%;
		height: 100vh;
		height: 100lvh;
	}
}

.header__spParts {
	display: none;
}

@media screen and (max-width:768px) {
	.header__spParts {
		height: calc(60 / var(--vw-min) * 100vw);
		display: flex;
		padding: calc(12 / var(--vw-min) * 100vw) calc(12 / var(--vw-min) * 100vw) 0;
		justify-content: space-between;
		position: relative;
		z-index: 50000;
		filter: drop-shadow(0px 0px calc(12 / var(--vw-min) * 100vw) rgba(0, 0, 0, 0.4));
	}

	.header__spLogo {
		width: calc(114 / var(--vw-min) * 100vw);
		pointer-events: auto;
	}

	.header__spLogoLink {
		display: block;
		height: calc(48 / var(--vw-min) * 100vw);
		background: url(../img/common/logo_red.svg) no-repeat left top / contain;
	}

	.header__spMenuBtn {
		width: calc(48 / var(--vw-min) * 100vw);
		pointer-events: auto;
	}

	.header__spMenuLink {
		display: block;
		position: relative;
		height: calc(48 / var(--vw-min) * 100vw);
		border: calc(2 / var(--vw-min) * 100vw) solid #fff;
		background: url(../img/common/menubtn_bg-off.png) no-repeat center center / contain;
		font-size: calc(10 / var(--vw-min) * 100vw);
		padding-top: calc(28 / var(--vw-min) * 100vw);
		text-align: center;
		font-weight: 700;
		text-decoration: none;
		color: #fff;
		line-height: 1;
		font-family: var(--font-urw);
		transition: all 0.3s ease;
	}

	.header__spMenuLink.is-active {
		color: #000;
		background-image: url(../img/common/menubtn_bg-on.png);
	}

	.header__spMenuLink:before,
	.header__spMenuLink:after {
		content: '';
		position: absolute;
		left: calc(10 / var(--vw-min) * 100vw);
		width: calc(24 / var(--vw-min) * 100vw);
		top: calc(14 / var(--vw-min) * 100vw);
		height: calc(2 / var(--vw-min) * 100vw);
		background: #fff;
		transition: all 0.3s ease;
	}

	.header__spMenuLink:before {
		transform: translateY(calc(-4 / var(--vw-min) * 100vw));
	}

	.header__spMenuLink:after {
		transform: translateY(calc(4 / var(--vw-min) * 100vw));
	}

	.header__spMenuLink.is-active:before {
		transform: rotate(28deg);
		background: #000;
	}

	.header__spMenuLink.is-active:after {
		transform: rotate(-28deg);
		background: #000;
	}
}

.header__cont {
	width: 100%;
	pointer-events: auto;
}

@media screen and (max-width:768px) {
	.header__cont {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		overflow: auto;
		overscroll-behavior: contain;
		transform: translateY(-101%);
		transition: all 0.3s ease-in-out;
	}

	.header.is-active .header__cont {
		transform: translateY(0);
	}
}

.header__contin {
	display: flex;
	justify-content: space-between;
	height: min(calc(96 / var(--vw-min) * 100vw), 96px);
	padding: min(calc(24 / var(--vw-min) * 100vw), 24px);
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.header__contin {
		display: block;
		background: rgba(0, 0, 0, .95);
		height: auto;
		min-height: calc(100vh + 1px);
		min-height: calc(100lvh + 1px);
		padding: calc(90 / var(--vw-min) * 100vw) calc(12 / var(--vw-min) * 100vw) calc(180 / var(--vw-min) * 100vw);
		padding: calc(90 / var(--vw-min) * 100vw) calc(12 / var(--vw-min) * 100vw) calc((100lvh - 100dvh) + (180 / var(--vw-min) * 100vw));
	}
}

@media screen and (min-width:769px) {
	body.is-headerThin .header__contin {
		height: min(calc(80 / var(--vw-min) * 100vw), 80px);
		padding: min(calc(16 / var(--vw-min) * 100vw), 16px) min(calc(24 / var(--vw-min) * 100vw), 24px);
		background: #000;
	}
}

.header__left {
	display: flex;
}

@media screen and (max-width:768px) {
	.header__left {
		display: block;
	}
}

.header__logo {
	width: min(calc(114 / var(--vw-min) * 100vw), 114px);
}

@media screen and (max-width:768px) {
	.header__logo {
		display: none;
	}
}

.header__logoLink {
	display: block;
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	background: url(../img/common/logo_red.svg) no-repeat center center / contain;
}

.nav {
	margin-left: min(calc(28 / var(--vw-min) * 100vw), 28px);
}

@media screen and (max-width:768px) {
	.nav {
		margin: 0;
	}
}

.nav__lists {
	display: flex;
}

@media screen and (max-width:768px) {
	.nav__lists {
		flex-wrap: wrap;
		flex-direction: column;
		height: calc(240 / var(--vw-min) * 100vw);
	}
}

.nav__list {}

@media screen and (max-width:768px) {
	.nav__list {
		width: 50%;
	}
}

.nav__listLink {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	text-decoration: none;
	color: #fff;
	padding: 0 min(calc(12 / var(--vw-min) * 100vw), 12px);
	transition: all 0.3s ease;
	z-index: 100;
}

@media screen and (max-width:768px) {
	.nav__listLink {
		align-items: flex-start;
		height: calc(60 / var(--vw-min) * 100vw);
		padding: 0 calc(12 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.nav__listLink:hover {
		color: var(--color-red);
	}
}

.nav__listLink.is-active {
	color: var(--color-red);
}

@media screen and (min-width:769px) {
	.nav__listLink:before {
		content: '';
		position: absolute;
		left: 50%;
		top: 50%;
		width: min(calc(47 / var(--vw-min) * 100vw), 47px);
		height: min(calc(64 / var(--vw-min) * 100vw), 64px);
		margin-top: max(calc(-32 / var(--vw-min) * 100vw), -32px);
		margin-left: max(calc(-28 / var(--vw-min) * 100vw), -28px);
		background: url(../img/common/ashiato.svg) no-repeat center center / contain;
		opacity: 0;
		z-index: -1;
		transition: all 0.3s ease;
	}
}

@media screen and (hover:hover) {
	.nav__listLink:hover:before {
		opacity: .4;
	}
}

.nav__listLink.is-active:before {
	opacity: .4;
}

.nav__listLink.is-soon {
	opacity: .3;
	pointer-events: none;
}

.nav__listLink--en {
	font-family: var(--font-urw);
	font-weight: 400;
	letter-spacing: 0.025;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	line-height: 1;
	display: block;
	margin-bottom: min(calc(6 / var(--vw-min) * 100vw), 6px);
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.nav__listLink--en {
		font-size: calc(20 / var(--vw-min) * 100vw);
		margin-bottom: calc(6 / var(--vw-min) * 100vw);
	}
}

.nav__listLink--en:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 8%, rgba(0, 0, 0, 1) 8%, rgba(0, 0, 0, 1) 96%, rgba(0, 0, 0, 0) 96%, rgba(0, 0, 0, 0) 100%);
	z-index: -1;
	transform: scale(0, 1);
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.nav__listLink:hover .nav__listLink--en:before {
		transform: scale(1, 1);
	}
}

.nav__listLink.is-active .nav__listLink--en:before {
	transform: scale(1, 1);
}

.nav__listLink--ja {
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
	line-height: 1;
	display: block;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.nav__listLink--ja {
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}

.nav__listLink--ja:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: -1px;
	z-index: -1;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 8%, rgba(0, 0, 0, 1) 8%, rgba(0, 0, 0, 1) 100%);
	transform: scale(0, 1);
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.nav__listLink:hover .nav__listLink--ja:before {
		transform: scale(1, 1);
	}
}

.nav__listLink.is-active .nav__listLink--ja:before {
	transform: scale(1, 1);
}

.header__right {}

@media screen and (max-width:768px) {
	.header__right {
		position: absolute;
		bottom: 0;
		bottom: calc(100lvh - 100dvh);
		padding: 0 calc(12 / var(--vw-min) * 100vw);
	}
}

.header__rightin {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

@media screen and (max-width:768px) {
	.header__rightin {
		display: block;
	}
}

.header__official {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: min(calc(72 / var(--vw-min) * 100vw), 72px);
	margin-right: min(calc(32 / var(--vw-min) * 100vw), 32px);
}

@media screen and (max-width:768px) {
	.header__official {
		justify-content: flex-start;
		align-items: center;
		width: unset;
		flex-wrap: nowrap;
		margin-right: calc(12 / var(--vw-min) * 100vw);
		margin-bottom: calc(40 / var(--vw-min) * 100vw);
	}
}

.header__official dt {
	width: 100%;
	text-align: center;
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	color: #fff;
	font-family: var(--font-urw);
	line-height: 1;
	margin-bottom: min(calc(4 / var(--vw-min) * 100vw), 4px);
}

@media screen and (max-width:768px) {
	.header__official dt {
		width: calc(57 / var(--vw-min) * 100vw);
		text-align: left;
		font-size: calc(16 / var(--vw-min) * 100vw);
		margin-bottom: 0;
	}
}

.header__official dd {
	width: min(calc(36 / var(--vw-min) * 100vw), 36px);
}

@media screen and (max-width:768px) {
	.header__official dd {
		width: calc(36 / var(--vw-min) * 100vw);
	}
}

.header__official dd a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: min(calc(36 / var(--vw-min) * 100vw), 36px);
}

@media screen and (max-width:768px) {
	.header__official dd a {
		height: calc(36 / var(--vw-min) * 100vw);
	}
}

.header__official dd a:before {
	content: '';
	position: relative;
	display: block;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(20 / var(--vw-min) * 100vw), 20px);
	background: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.header__official dd a:before {
		width: calc(20 / var(--vw-min) * 100vw);
		height: calc(20 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.header__official dd a:hover:before {
		background: var(--color-red);
	}
}

.icon-x:before {
	-webkit-mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
}

.icon-youtube:before {
	-webkit-mask: url(../img/common/icon_youtube.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_youtube.svg) no-repeat center center / contain;
}

.header__language {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-bottom: min(calc(6 / var(--vw-min) * 100vw), 6px);
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
}

@media screen and (max-width:768px) {
	.header__language {
		justify-content: flex-start;
		align-items: center;
		padding-bottom: calc(48 / var(--vw-min) * 100vw);
		width: unset;
		flex-wrap: nowrap;
	}
}

.header__language dt {
	width: 100%;
	text-align: center;
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	color: #fff;
	font-family: var(--font-urw);
	line-height: 1;
	margin-bottom: min(calc(10 / var(--vw-min) * 100vw), 10px);
}

@media screen and (max-width:768px) {
	.header__language dt {
		width: calc(76 / var(--vw-min) * 100vw);
		text-align: left;
		font-size: calc(16 / var(--vw-min) * 100vw);
		margin-bottom: 0;
	}
}

.header__language dd {
	width: min(calc(40 / var(--vw-min) * 100vw), 40px);
}

@media screen and (max-width:768px) {
	.header__language dd {
		width: calc(40 / var(--vw-min) * 100vw);
	}
}

.header__language dd a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	background: rgba(255, 255, 255, .2);
	color: #fff;
	text-decoration: none;
	transition: all 0.3s ease;
	font-family: var(--font-urw);
}

@media screen and (max-width:768px) {
	.header__language dd a {
		height: calc(24 / var(--vw-min) * 100vw);
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.header__language dd a:hover {
		background: rgba(230, 0, 18, .2);
	}
}

.header__language dd a.is-active {
	background: var(--color-red);
	color: #000;
	pointer-events: none;
}

.inContents {
	position: relative;
}

.inContents__fixed {
	position: absolute;
	left: 0;
	right: 0;
	top: max(calc(-120 / var(--vw-min) * 100vw), -120px);
	bottom: 0;
	pointer-events: none;
	mix-blend-mode: difference;
	opacity: .12;
}

@media screen and (max-width:768px) {
	.inContents__fixed {
		top: 0;
	}
}

.inContents__fixedin {
	position: sticky;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
}

@media screen and (max-width:768px) {
	.inContents__fixedin {
		overflow: hidden;
	}
}

.inContents__fixedin:before {
	content: '';
	position: absolute;
	right: 0;
	top: min(calc(40 / var(--vw-min) * 100vw), 40px);
	width: min(calc(357 / var(--vw-min) * 100vw), 357px);
	height: min(calc(479 / var(--vw-min) * 100vw), 479px);
	-webkit-mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	background: #fff;
	z-index: 5;
}

@media screen and (max-width:768px) {
	.inContents__fixedin:before {
		right: calc(-31 / var(--vw-min) * 100vw);
		top: calc(24 / var(--vw-min) * 100vw);
		width: calc(179 / var(--vw-min) * 100vw);
		height: calc(239 / var(--vw-min) * 100vw);
	}
}

.inContents__bg1 {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: url(../img/common/bg_texture1.png);
	pointer-events: none;
}

.inContents__bg2 {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: url(../img/common/bg_texture2.png) repeat center top;
	opacity: .12;
	mix-blend-mode: difference;
	pointer-events: none;
}

.contact {
	padding: min(calc(160 / var(--vw-min) * 100vw), 160px) 0 min(calc(80 / var(--vw-min) * 100vw), 80px);
	background: #000;
}

@media screen and (max-width:768px) {
	.contact {
		padding: calc(48 / var(--vw-min) * 100vw) calc(24 / var(--vw-min) * 100vw);
	}
}

.contact__btn {
	width: min(calc(500 / var(--vw-min) * 100vw), 500px);
	margin: 0 auto;
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.contact__btn {
		width: 100%;
	}
}

.contact__btnLink {
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #fff;
	text-decoration: none;
	color: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.contact__btnLink {
		height: calc(56 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.contact__btnLink:hover {
		background: #fff;
		color: #000;
	}
}

/*.contact__btnLink:before,
.contact__btnLink:after{
	content:'';
	position:relative;
	display:block;
	width:min(calc(8 / var(--vw-min) * 100vw),8px);
	height:min(calc(8 / var(--vw-min) * 100vw),8px);
}
@media screen and (max-width:768px){
	.contact__btnLink:before,
	.contact__btnLink:after{
		width:calc(8 / var(--vw-min) * 100vw);
		height:calc(8 / var(--vw-min) * 100vw);
	}
}
.contact__btnLink:after{
	-webkit-mask:url(../img/common/icon_newlink.svg) no-repeat center center / contain;
	mask:url(../img/common/icon_newlink.svg) no-repeat center center / contain;
	background:#fff;
	transition:all 0.3s ease;
}
@media screen and (hover:hover){
	.contact__btnLink:hover:after{
		background:#000;
	}
}*/
.contact__btnText {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	letter-spacing: 0.05em;
	margin: 0 min(calc(12 / var(--vw-min) * 100vw), 12px);
}

@media screen and (max-width:768px) {
	.contact__btnText {
		margin: 0 calc(12 / var(--vw-min) * 100vw);
	}
}

.contact__btnText--en {
	display: block;
	line-height: 0.72;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	font-family: var(--font-urw);
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw), 8px);
}

@media screen and (max-width:768px) {
	.contact__btnText--en {
		font-size: calc(16 / var(--vw-min) * 100vw);
		margin-bottom: calc(8 / var(--vw-min) * 100vw);
	}
}

.contact__btnText--ja {
	display: block;
	line-height: 1;
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
}

@media screen and (max-width:768px) {
	.contact__btnText--ja {
		font-size: calc(10 / var(--vw-min) * 100vw);
	}
}

.footer {
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px) 3.3333%;
	position: relative;
	clip-path: inset(0);
}

@media screen and (max-width:768px) {
	.footer {
		padding: calc(48 / var(--vw-min) * 100vw) calc(12 / var(--vw-min) * 100vw);
	}
}

.footer:before {
	content: '';
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: url(../img/top/fv_bg.jpg) no-repeat center center / cover;
}

.footer__inner {
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width:768px) {
	.footer__inner {
		display: block;
	}
}

.footer__c {
	width: min(calc(400 / var(--vw-min) * 100vw), 400px);
	order: 1;
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.footer__c {
		width: 100%;
	}
}

.footer__logo {
	width: min(calc(190 / var(--vw-min) * 100vw), 190px);
	margin: 0 auto min(calc(68 / var(--vw-min) * 100vw), 68px);
}

@media screen and (max-width:768px) {
	.footer__logo {
		width: calc(143 / var(--vw-min) * 100vw);
		margin-bottom: calc(36 / var(--vw-min) * 100vw);
	}
}

.footer__logoLink {
	display: block;
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	background: url(../img/common/logo_red.svg) no-repeat center center / contain;
}

@media screen and (max-width:768px) {
	.footer__logoLink {
		height: calc(60 / var(--vw-min) * 100vw);
	}
}

.footer__share {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: min(calc(64 / var(--vw-min) * 100vw), 64px);
}

@media screen and (max-width:768px) {
	.footer__share {
		margin-bottom: calc(46 / var(--vw-min) * 100vw);
	}
}

.footer__shareTitle {
	width: min(calc(60 / var(--vw-min) * 100vw), 60px);
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-family: var(--font-urw);
	color: #fff;
	letter-spacing: 0.05em;
	text-align: center;
}

@media screen and (max-width:768px) {
	.footer__shareTitle {
		width: calc(60 / var(--vw-min) * 100vw);
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}

.footer__shareData {
	width: min(calc(44 / var(--vw-min) * 100vw), 44px);
}

@media screen and (max-width:768px) {
	.footer__shareData {
		width: calc(48 / var(--vw-min) * 100vw);
	}
}

.footer__shareLink {
	height: min(calc(44 / var(--vw-min) * 100vw), 44px);
	display: flex;
	justify-content: center;
	align-items: center;
}

@media screen and (max-width:768px) {
	.footer__shareLink {
		height: calc(48 / var(--vw-min) * 100vw);
	}
}

.footer__shareLink:before {
	content: '';
	position: relative;
	display: block;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(20 / var(--vw-min) * 100vw), 20px);
	background: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.footer__shareLink:before {
		width: calc(24 / var(--vw-min) * 100vw);
		height: calc(24 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.footer__shareLink:hover:before {
		transform: scale(1.1);
	}
}

.footer__shareLink--x:before {
	-webkit-mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
}

.footer__shareLink--facebook:before {
	-webkit-mask: url(../img/common/icon_facebook.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_facebook.svg) no-repeat center center / contain;
}

.footer__shareLink--line:before {
	background: url(../img/common/icon_line.svg) no-repeat center center / contain;
	width: min(calc(28 / var(--vw-min) * 100vw), 28px);
	height: min(calc(28 / var(--vw-min) * 100vw), 28px);
}

@media screen and (max-width:768px) {
	.footer__shareLink--line:before {
		width: calc(33 / var(--vw-min) * 100vw);
		height: calc(33 / var(--vw-min) * 100vw);
	}
}

.footer__comLists {
	width: min(calc(370 / var(--vw-min) * 100vw), 370px);
	display: flex;
	justify-content: space-between;
	margin-bottom: min(calc(38 / var(--vw-min) * 100vw), 38px);
}

@media screen and (max-width:768px) {
	.footer__comLists {
		width: 100%;
		display: block;
		margin-bottom: calc(48 / var(--vw-min) * 100vw);
	}
}

.footer__comList {
	display: flex;
	align-items: flex-start;
}

@media screen and (max-width:768px) {
	.footer__comList {
		justify-content: center;
		margin-bottom: calc(16 / var(--vw-min) * 100vw);
	}
}

.footer__comList dt {
	height: min(calc(40 / var(--vw-min) * 100vw), 40px);
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
	display: flex;
	align-items: center;
	letter-spacing: 0.05em;
	color: #fff;
	margin-right: min(calc(16 / var(--vw-min) * 100vw), 16px);
}

@media screen and (max-width:768px) {
	.footer__comList dt {
		height: calc(40 / var(--vw-min) * 100vw);
		font-size: calc(12 / var(--vw-min) * 100vw);
		margin-right: calc(12 / var(--vw-min) * 100vw);
	}
}

.footer__comList a {
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.footer__comList a:hover {
		opacity: 0.6;
	}
}

.footer__comList--bushiroad {
	display: block;
	width: min(calc(161 / var(--vw-min) * 100vw), 161px);
	height: min(calc(32 / var(--vw-min) * 100vw), 32px);
	background: url(../img/common/logo_bushiroad.svg) no-repeat center center / contain;
}

@media screen and (max-width:768px) {
	.footer__comList--bushiroad {
		width: calc(161 / var(--vw-min) * 100vw);
		height: calc(32 / var(--vw-min) * 100vw);
	}
}

.footer__comList--yuhodo {
	display: block;
	width: min(calc(89 / var(--vw-min) * 100vw), 89px);
	height: min(calc(40 / var(--vw-min) * 100vw), 40px);
	background: url(../img/common/logo_yuhodo.svg) no-repeat center center / contain;
}

@media screen and (max-width:768px) {
	.footer__comList--yuhodo {
		width: calc(89 / var(--vw-min) * 100vw);
		height: calc(40 / var(--vw-min) * 100vw);
	}
}

.footer__policies {
	display: flex;
	justify-content: center;
	margin-bottom: min(calc(72 / var(--vw-min) * 100vw), 72px);
	letter-spacing: 0.05em;
}

@media screen and (max-width:768px) {
	.footer__policies {
		margin-bottom: calc(48 / var(--vw-min) * 100vw);
	}
}

.footer__policy {
	padding: 0 min(calc(24 / var(--vw-min) * 100vw), 24px);
	position: relative;
}

@media screen and (max-width:768px) {
	.footer__policy {
		padding: 0 calc(12 / var(--vw-min) * 100vw);
		position: relative;
	}
}

.footer__policy:before {
	content: '';
	position: absolute;
	right: 0;
	top: .5em;
	bottom: .5em;
	width: 1px;
	background: #fff;
}

.footer__policy:last-child:before {
	display: none;
}

.footer__policy a {
	color: #fff;
	text-decoration: none;
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
}

@media screen and (max-width:768px) {
	.footer__policy a {
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.footer__policy a:hover {
		text-decoration: underline;
	}
}

.footer__copyright {
	text-align: center;
	font-family: var(--font-urw);
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
	letter-spacing: 0.05em;
}

@media screen and (max-width:768px) {
	.footer__copyright {
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}

.footer__l {
	width: min(calc(320 / var(--vw-min) * 100vw), 320px);
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.footer__l {
		width: 100%;
		margin-bottom: calc(48 / var(--vw-min) * 100vw);
	}
}

.footer__nav {
	margin-top: max(calc(-10 / var(--vw-min) * 100vw), -10px);
	margin-bottom: min(calc(32 / var(--vw-min) * 100vw), 32px);
}

@media screen and (max-width:768px) {
	.footer__nav {
		margin-top: 0;
		margin-bottom: calc(28 / var(--vw-min) * 100vw);
	}
}

.footer__navLists {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	height: min(calc(240 / var(--vw-min) * 100vw), 240px);
}

@media screen and (max-width:768px) {
	.footer__navLists {
		height: calc(240 / var(--vw-min) * 100vw);
	}
}

.footer__navList {
	width: min(calc(130 / var(--vw-min) * 100vw), 130px);
}

@media screen and (max-width:768px) {
	.footer__navList {
		width: 50%;
	}
}

.footer__navLink {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	height: min(calc(60 / var(--vw-min) * 100vw), 60px);
	text-decoration: none;
	color: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.footer__navLink {
		align-items: flex-start;
		height: calc(60 / var(--vw-min) * 100vw);
		padding: 0 calc(12 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.footer__navLink:hover {
		color: var(--color-red);
	}
}

.footer__navLink.is-soon {
	opacity: .3;
	pointer-events: none;
}

.footer__navLink--en {
	letter-spacing: 0.025em;
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	font-family: var(--font-urw);
	display: block;
	line-height: 1;
	position: relative;
	z-index: 10;
	margin-bottom: min(calc(6 / var(--vw-min) * 100vw), 6px);
}

@media screen and (max-width:768px) {
	.footer__navLink--en {
		font-size: calc(20 / var(--vw-min) * 100vw);
		margin-bottom: calc(6 / var(--vw-min) * 100vw);
	}
}

.footer__navLink--en:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 8%, rgba(0, 0, 0, 1) 8%, rgba(0, 0, 0, 1) 96%, rgba(0, 0, 0, 0) 96%, rgba(0, 0, 0, 0) 100%);
	z-index: -1;
	transform: scale(0, 1);
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.footer__navLink:hover .footer__navLink--en:before {
		transform: scale(1, 1);
	}
}

.footer__navLink--ja {
	font-size: min(calc(12 / var(--vw-min) * 100vw), 12px);
	display: block;
	line-height: 1;
	position: relative;
	z-index: 10;
}

@media screen and (max-width:768px) {
	.footer__navLink--ja {
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}

.footer__navLink--ja:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: -1px;
	z-index: -1;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 8%, rgba(0, 0, 0, 1) 8%, rgba(0, 0, 0, 1) 100%);
	transform: scale(0, 1);
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.footer__navLink:hover .footer__navLink--ja:before {
		transform: scale(1, 1);
	}
}

.footer__official {
	display: flex;
	align-items: center;
	margin-bottom: min(calc(80 / var(--vw-min) * 100vw), 80px);
}

@media screen and (max-width:768px) {
	.footer__official {
		justify-content: flex-start;
		margin-right: calc(12 / var(--vw-min) * 100vw);
		margin-bottom: calc(40 / var(--vw-min) * 100vw);
		padding-left: calc(12 / var(--vw-min) * 100vw);
	}
}

.footer__official dt {
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	width: min(calc(58 / var(--vw-min) * 100vw), 58px);
	font-family: var(--font-urw);
	color: #fff;
}

@media screen and (max-width:768px) {
	.footer__official dt {
		width: calc(57 / var(--vw-min) * 100vw);
		text-align: left;
		font-size: calc(16 / var(--vw-min) * 100vw);
		margin-bottom: 0;
	}
}

.footer__official dd {
	width: min(calc(36 / var(--vw-min) * 100vw), 36px);
}

@media screen and (max-width:768px) {
	.footer__official dd {
		width: calc(36 / var(--vw-min) * 100vw);
	}
}

.footer__official dd a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(calc(36 / var(--vw-min) * 100vw), 36px);
	height: min(calc(36 / var(--vw-min) * 100vw), 36px);
}

@media screen and (max-width:768px) {
	.footer__official dd a {
		height: calc(36 / var(--vw-min) * 100vw);
	}
}

.footer__official dd a:before {
	content: '';
	position: relative;
	display: block;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(20 / var(--vw-min) * 100vw), 20px);
	background: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.footer__official dd a:before {
		width: calc(20 / var(--vw-min) * 100vw);
		height: calc(20 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.footer__official dd a:hover:before {
		background: var(--color-red);
	}
}

.footer__official dd a.icon-x:before {
	-webkit-mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_x.svg) no-repeat center center / contain;
}

.footer__official dd a.icon-youtube:before {
	-webkit-mask: url(../img/common/icon_youtube.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_youtube.svg) no-repeat center center / contain;
}

.footer__language {
	display: flex;
	align-items: center;
}

@media screen and (max-width:768px) {
	.footer__language {
		padding-left: calc(12 / var(--vw-min) * 100vw);
	}
}

.footer__language dt {
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-family: var(--font-urw);
	width: min(calc(76 / var(--vw-min) * 100vw), 76px);
}

@media screen and (max-width:768px) {
	.footer__language dt {
		width: calc(76 / var(--vw-min) * 100vw);
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}

.footer__language dd {
	width: min(calc(40 / var(--vw-min) * 100vw), 40px);
}

@media screen and (max-width:768px) {
	.footer__language dd {
		width: calc(40 / var(--vw-min) * 100vw);
	}
}

.footer__language dd a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	background: rgba(255, 255, 255, .2);
	color: #fff;
	text-decoration: none;
	transition: all 0.3s ease;
	font-family: var(--font-urw);
}

@media screen and (max-width:768px) {
	.footer__language dd a {
		height: calc(24 / var(--vw-min) * 100vw);
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.footer__language dd a:hover {
		background: rgba(230, 0, 18, .2);
	}
}

.footer__language dd a.is-active {
	background: var(--color-red);
	color: #000;
	pointer-events: none;
}

.footer__r {
	position: relative;
	order: 2;
	width: min(calc(320 / var(--vw-min) * 100vw), 320px);
}

@media screen and (max-width:768px) {
	.footer__r {
		width: 100%;
	}
}

.footer__bnrLists {
	margin-left: auto;
	width: min(calc(240 / var(--vw-min) * 100vw), 240px);
}

@media screen and (max-width:768px) {
	.footer__bnrLists {
		margin-left: 0;
		width: 100%;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		margin-bottom: calc(32 / var(--vw-min) * 100vw);
	}
}

.footer__bnrList {
	width: min(calc(240 / var(--vw-min) * 100vw), 240px);
	margin-bottom: min(calc(24 / var(--vw-min) * 100vw), 24px);
}

@media screen and (max-width:768px) {
	.footer__bnrList {
		width: 50%;
		padding: 0 calc(12 / var(--vw-min) * 100vw);
		margin-bottom: calc(24 / var(--vw-min) * 100vw);
	}
}

.footer__bnrList a {
	display: block;
}

.footer__bnrList a img {
	width: 100%;
	height: auto;
	transition: all 0.3s ease;
}

@media screen and (hover:hover) {
	.footer__bnrList a:hover img {
		opacity: 0.6;
	}
}

.footer__totop {
	position: absolute;
	right: min(calc(28 / var(--vw-min) * 100vw), 28px);
	bottom: min(calc(28 / var(--vw-min) * 100vw), 28px);
	width: min(calc(103 / var(--vw-min) * 100vw), 103px);
	height: min(calc(103 / var(--vw-min) * 100vw), 103px);
	z-index: 50;
}

@media screen and (max-width:768px) {
	.footer__totop {
		right: calc(18 / var(--vw-min) * 100vw);
		top: calc(18 / var(--vw-min) * 100vw);
		bottom: unset;
		width: calc(62 / var(--vw-min) * 100vw);
		height: calc(62 / var(--vw-min) * 100vw);
	}
}

.footer__totopLink {
	display: block;
	height: min(calc(103 / var(--vw-min) * 100vw), 103px);
	position: relative;
}

@media screen and (max-width:768px) {
	.footer__totopLink {
		height: calc(62 / var(--vw-min) * 100vw);
	}
}

.footer__totopLink:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	-webkit-mask: url(../img/common/bttop_circle.svg) no-repeat center center / contain;
	mask: url(../img/common/bttop_circle.svg) no-repeat center center / contain;
	background: #fff;
	animation: rotate 20s ease infinite;
	transition: all 0.3s ease;
}

.footer__totopLink:after {
	content: '';
	position: absolute;
	left: min(calc(25 / var(--vw-min) * 100vw), 25px);
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	width: min(calc(47 / var(--vw-min) * 100vw), 47px);
	height: min(calc(63 / var(--vw-min) * 100vw), 63px);
	-webkit-mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	background: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.footer__totopLink:after {
		left: calc(15 / var(--vw-min) * 100vw);
		top: calc(12 / var(--vw-min) * 100vw);
		width: calc(28 / var(--vw-min) * 100vw);
		height: calc(38 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {

	.footer__totopLink:hover:before,
	.footer__totopLink:hover:after {
		background: var(--color-red);
	}
}

.genBtn {
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
}

.genBtn__link {
	display: flex;
	justify-content: center;
	align-items: center;
	height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	text-decoration: none;
	border: 1px solid #fff;
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	transition: all 0.3s ease;
	color: #fff !important;
	line-height: 0.05em;
}

@media screen and (max-width:768px) {
	.genBtn__link {
		height: calc(36 / var(--vw-min) * 100vw);
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {
	.genBtn__link:hover {
		background: #fff;
		color: #000 !important;
	}
}

.genBtn__link.--en {
	font-family: var(--font-urw), sans-serif;
}

.genBtn__link.--k {
	border: 1px solid #000;
	color: #000 !important;
}

@media screen and (hover:hover) {
	.genBtn__link.--k:hover {
		background: #000;
		color: #fff !important;
	}
}

.movie__playCircle {
	display: block;
	position: absolute;
	width: min(calc(103 / var(--vw-min) * 100vw), 103px);
	height: min(calc(103 / var(--vw-min) * 100vw), 103px);
	z-index: 100;
	left: 50%;
	top: 50%;
	margin-top: max(calc(-52 / var(--vw-min) * 100vw), -52px);
	margin-left: max(calc(-52 / var(--vw-min) * 100vw), -52px);
}

@media screen and (max-width:768px) {
	.movie__playCircle {
		width: calc(62 / var(--vw-min) * 100vw);
		height: calc(62 / var(--vw-min) * 100vw);
		margin-top: calc(-31 / var(--vw-min) * 100vw);
		margin-left: calc(-31 / var(--vw-min) * 100vw);
	}
}

.movie__playCircle:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	-webkit-mask: url(../img/common/movie_playcircle.svg) no-repeat center center / contain;
	mask: url(../img/common/movie_playcircle.svg) no-repeat center center / contain;
	background: #fff;
	animation: rotate 20s ease infinite;
	transition: all 0.3s ease;
}

.movie__playCircle:after {
	content: '';
	position: absolute;
	left: min(calc(25 / var(--vw-min) * 100vw), 25px);
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	width: min(calc(47 / var(--vw-min) * 100vw), 47px);
	height: min(calc(63 / var(--vw-min) * 100vw), 63px);
	-webkit-mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	mask: url(../img/common/ashiato.svg) no-repeat center center / contain;
	background: #fff;
	transition: all 0.3s ease;
}

@media screen and (max-width:768px) {
	.movie__playCircle:after {
		left: calc(15 / var(--vw-min) * 100vw);
		top: calc(12 / var(--vw-min) * 100vw);
		width: calc(28 / var(--vw-min) * 100vw);
		height: calc(38 / var(--vw-min) * 100vw);
	}
}

@media screen and (hover:hover) {

	.footer__totopLink:hover:before,
	.footer__totopLink:hover:after {
		background: var(--color-red);
	}
}

.modal {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 160000;
	background: rgba(0, 0, 0, .6);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	display: none;
}

.modal__inner {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
	overscroll-behavior: contain;
}

.modal__cont {
	padding: min(calc(80 / var(--vw-min) * 100vw), 80px);
	min-height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	pointer-events: none;
}

@media screen and (max-width:768px) {
	.modal__cont {
		padding: min(calc(48 / var(--vw-min) * 100vw), 48px) 0;
		min-height: 100vh;
	}

	@media (orientation:landscape) {
		.modal__cont {
			padding: 0 min(calc(48 / var(--vw-min) * 100vw), 48px) 0 0;
		}
	}
}

.modal__movie {
	max-width: calc(163.933vh - min(calc(160 / var(--vw-min) * 100vw), 160px));
	width: 100%;
	position: relative;
}

@media screen and (max-width:768px) {
	.modal__movie {
		max-width: calc(163.933vh - min(calc(96 / var(--vw-min) * 100vw), 96px));
		width: 100%;
		position: relative;
	}

	@media (orientation:landscape) {
		.modal__movie {
			max-width: calc(177.7777vh);
		}
	}
}

.modal__movie:before {
	content: '';
	position: relative;
	display: block;
	width: 100%;
	padding-top: 56.25%;
}

.modal__movie iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: auto;
}

.modal__img {
	width: 100%;
	height: calc(100vh - min(calc(160 / var(--vw-min) * 100vw), 160px));
	max-width: min(calc(600 / var(--vw-min) * 100vw), 600px);
	max-height: min(calc(838 / var(--vw-min) * 100vw), 838px);
}

@media screen and (max-width:768px) {
	.modal__img {
		width: 100%;
		height: calc(100vh - min(calc(96 / var(--vw-min) * 100vw), 96px));
		max-width: 80%;
		max-height: 100vh;
	}

	@media (orientation:landscape) {
		.modal__img {
			padding: 0 0 0 min(calc(48 / var(--vw-min) * 100vw), 48px);
			height: 90vh;
		}
	}
}

.modal__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	pointer-events: auto;
}

.modal__inclose {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
}

.modal__close {
	position: absolute;
	right: 0;
	top: 0;
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
}

.modal__close a {
	display: block;
	position: relative;
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	height: min(calc(80 / var(--vw-min) * 100vw), 80px);
	overflow: hidden;
}

.modal__close a:before,
.modal__close a:after {
	content: '';
	position: absolute;
	left: -20px;
	right: -20px;
	top: 50%;
	height: 1px;
	background: #FFF;
	transition: all 0.3s ease;
}

.modal__close a:before {
	transform: rotate(45deg)
}

.modal__close a:after {
	transform: rotate(-45deg)
}

@media screen and (hover:hover) {

	.modal__close a:hover:before,
	.modal__close a:hover:after {
		background: var(--color-red);
	}
}

@media screen and (max-width:768px) {
	.modal__close {
		width: min(calc(48 / var(--vw-min) * 100vw), 48px);
		height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	}

	.modal__close a {
		width: min(calc(48 / var(--vw-min) * 100vw), 48px);
		height: min(calc(48 / var(--vw-min) * 100vw), 48px);
	}
}
.grecaptcha-badge {
    visibility: hidden !important;
}