@charset "utf-8";
/* -----------------------------------------------
= common
----------------------------------------------- */
body {
	opacity: 0;
	transition: opacity .8s;
}
body.visible {
	opacity: 1;
}
/* -----------------------------------------------
= header
----------------------------------------------- */
.header {
	color: #fff;
}
.header::before {
	background: rgba(0,0,0,.3);
}
.header .logo a {
	color: #fff;
}
.header.nav_header {
	display: none;
}
.is-nav_opened .header.nav_header {
	display: block;
}
.is-nav_opened .header.nav_header .logo a {
	display: block;
	color: #080808;
}
/* -----------------------------------------------
= gnav
----------------------------------------------- */
@media print, screen and (min-width: 768px) {/* PC */
.gnav .category a {
	color: #fff;
}
.gnav_sub {
	background: rgba(0,0,0,.3);
}
.gnav_sub .inner::-webkit-scrollbar-track {
	background-color: rgba(255,255,255,.2);
}
.gnav_sub .inner::-webkit-scrollbar-thumb {
	background-color: rgba(255,255,255,.4);
}
.gnav .nav_index a {
	color: #fff;
}
.gnav .nav_index a::after {
	background: url(../../img/shared/icon_nav_arrow_white.svg) no-repeat 50% / cover;
}
.gnav .gnav_project li a {
	color: #fff;
}
}/* @media */
/* -----------------------------------------------
= fix_link
----------------------------------------------- */
@media print, screen and (min-width: 768px) {/* PC */
.fix_link a {
	color: #fff;
	border-color: #fff;
	background: rgba(36,36,36,.7);
}
}/* @media */
/* -----------------------------------------------
= nav
----------------------------------------------- */
.nav_btn button span,
.nav_btn button span::before,
.nav_btn button span::after {
	border-top-color: #fff;
}
.is-nav_opened .nav_btn button span,
.is-nav_opened .nav_btn button span::before,
.is-nav_opened .nav_btn button span::after {
	border-top-color: #1c1c1c;
}
.recruit {
	position: relative;
	z-index: 1;
}
/* -----------------------------------------------
= bg_movie
----------------------------------------------- */
.bg_movie {
	position: fixed;
	inset: 0;
	z-index: -2;
	overflow: hidden;
	opacity: 0;
	transition: opacity .8s;
}
.visible .bg_movie {
	opacity: 1;
}
.bg_movie::before,
.bg_movie::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: radial-gradient(rgba(0,0,0,.36), rgba(123,123,123,.36));
	mix-blend-mode: multiply;
	pointer-events: none;
}
.bg_movie_inner {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}
.bg_movie iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 177.05vw;
	min-width: 56.48vh;
	min-height: 100vh;
	border: none;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition: opacity 1s;
}
.bg_movie iframe.is-active {
	opacity: 1;
}
@media print, screen and (min-width: 768px) {/* PC */
.bg_movie iframe {
	height: 56.25vw;
	min-width: 177.78vh;
}
}/* @media */
/* -----------------------------------------------
= main
----------------------------------------------- */
.main {
	position: relative;
	z-index: 1;
	height: 100svh;
	color: #fff;
	overflow: hidden;
}
.main .inner {
	position: absolute;
	top: 50%;
	left: 3rem;
	width: calc(100% - 3rem);
	transform: translateY(-60%);
}
.main h1 {
	position: absolute;
	right: 2.6rem;
	bottom: 1.5em;
	width: 3.9rem;
}
.main .en .row {
	display: block;
	overflow: hidden;
}
.main .en .row span {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: calc(64 / 390 * 100vw);
	font-weight: 200;
	line-height: calc(72 / 64);
	letter-spacing: .03em;
	transform: translateY(110%);
	transition: transform .8s ease;
}
.visible .main .en .row span {
	transform: translateY(0);
}
.visible .main .en .row:nth-child(1) span {
	transition-delay: .8s;
}
.visible .main .en .row:nth-child(2) span {
	transition-delay: 1s;
}
.visible .main .en .row:nth-child(3) span {
	transition-delay: 1.2s;
}
.visible .main .en .row:nth-child(4) span {
	transition-delay: 1.4s;
}
.main .swiper {
	position: relative;
	height: 100svh;
}
.main .swiper-horizontal>.swiper-pagination-bullets,
.main .swiper-pagination-bullets.swiper-pagination-horizontal,
.main .swiper-pagination-custom,
.main .swiper-pagination-fraction {
	position: absolute;
	left: auto;
	right: 2.2rem;
	bottom: 10em;
	z-index: 2;
	width: 8.5rem;
	height: 8.4rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 300;
	letter-spacing: .06em;
}
.main .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.main .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	width: 100%;
	height: 2.1rem;
	padding-left: 2.3rem;
	border-top: none;
	border-left: .1rem dotted #fff;
	line-height: 2.1rem;
	text-align: left;
}
.main .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
.main .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
	border-top: none;
	border-left: .1rem solid #fff;
}
@media print, screen and (min-width: 768px) {/* PC */
.main {
	height: 100vh;
}
.main .inner {
	left: 13.6rem;
	width: calc(100% - 13.6rem);
	transform: translateY(-40%);
}
.main h1 {
	right: 18rem;
	top: 3.3rem;
	bottom: auto;
	width: 5.3rem;
}
.main .en .row span {
	font-size: 13rem;
	line-height: calc(138 / 130);
}
.main .swiper {
	height: 100vh;
}
.main .swiper-horizontal>.swiper-pagination-bullets,
.main .swiper-pagination-bullets.swiper-pagination-horizontal,
.main .swiper-pagination-custom,
.main .swiper-pagination-fraction {
	right: 13.8rem;
	bottom: 7.8rem;
	width: 10.8rem;
	height: 10rem;
	font-size: 1.3rem;
}
.main .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.main .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	height: 2.4rem;
	padding-left: 2.8rem;
	line-height: 2.4rem;
}
}/* @media */
/* -----------------------------------------------
= swiper-pagination
----------------------------------------------- */
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	position: static;
	width: auto;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	width: 2.1rem;
	height: 1px;
	margin: 0;
	background: transparent;
	border-top: .1rem dotted #fff;
	border-radius: 0;
	opacity: .6;
	vertical-align: middle;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
	border-top: .1rem solid #fff;
	opacity: 1;
}
/* -----------------------------------------------
= swiper-button
----------------------------------------------- */
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
	opacity: 0;
}
.swiper-button-prev {
	left: .8rem;
}
.swiper-button-next {
	right: .8rem;
}
.swiper-button-prev,
.swiper-button-next {
	width: 4.5rem;
	height: 4.5rem;
	background: rgba(38,38,38,.5);
	backdrop-filter: blur(30px);
}
.swiper-button-prev::after,
.swiper-button-next::after {
	content: "";
	position: absolute;
	top: calc(50% - .4rem);
	width: .4rem;
	height: .4rem;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.swiper-button-prev::after {
	left: calc(50% - .2rem);
	transform: rotate(-135deg);
}
.swiper-button-next::after {
	left: calc(50% - .4rem);
	transform: rotate(45deg);
}
@media print, screen and (min-width: 768px) {/* PC */
.swiper-button-prev {
	left: 5.9rem;
}
.swiper-button-next {
	right: 5.9rem;
}
.swiper-button-prev,
.swiper-button-next {
	width: 6.4rem;
	height: 6.4rem;
}
.swiper-button-prev::after,
.swiper-button-next::after {
	top: calc(50% - .5rem);
	width: .5rem;
	height: .5rem;
}
.swiper-button-prev::after {
	left: calc(50% - .3rem);
}
.swiper-button-next::after {
	left: calc(50% - .5rem);
}
}/* @media */
/* -----------------------------------------------
= fix_menu
----------------------------------------------- */
.fix_menu {
	position: fixed;
	left: 1.6rem;
	bottom: 10rem;
	z-index: 5;
	width: 18.2rem;
}
.fix_menu button {
	position: relative;
	width: 100%;
	padding: 1.4rem 1.8rem;
	color: #fff;
	background: #262626;
	border: 1px solid #707070;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.1rem;
	text-align: left;
	letter-spacing: .03em;
}
.fix_menu button::after {
	content: "";
	position: absolute;
	top: calc(50% - .4rem);
	right: 1.8rem;
	width: .4rem;
	height: .4rem;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(45deg);
}
.fix_menu button[aria-expanded="true"]::after {
	top: calc(50% - .2rem);
	transform: rotate(-135deg);
}
.fix_menu ul {
	position: absolute;
	left: 0;
	bottom: 4.5rem;
	width: 100%;
	padding: 1.6rem 1rem 1.6rem 1.8rem;
	box-sizing: border-box;
	color: #fff;
	background: #262626;
	border: 1px solid #707070;
	opacity: 0;
	pointer-events: none;
	transition: opacity .4s;
}
.fix_menu button[aria-expanded="true"] + ul {
	opacity: 1;
	pointer-events: auto;
}
.fix_menu ul li + li {
	margin-top: 1.2rem;
}
.fix_menu ul li a {
	display: inline-block;
	position: relative;
	padding-left: 1.2rem;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.1rem;
	line-height: 1.3;
	letter-spacing: .03em;
	opacity: .2;
}
.fix_menu ul li.is-active a {
	opacity: 1;
}
.fix_menu ul li a::before {
	content: "";
	position: absolute;
	top: calc(50% - .4rem);
	left: 0;
	width: .4rem;
	height: .4rem;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(45deg);
}
@media print, screen and (min-width: 768px) {/* PC */
.fix_menu {
	left: 3.2rem;
	bottom: 3.2rem;
	width: 23.5rem;
}
.fix_menu button {
	padding: 2rem 4rem;
	font-size: 1.4rem;
}
.fix_menu button::after {
	top: calc(50% - .5rem);
	right: 3rem;
	width: .5rem;
	height: .5rem;
}
.fix_menu ul {
	bottom: 6rem;
	padding: 2.3rem 1rem 2.5rem 2.5rem;
}
.fix_menu ul li + li {
	margin-top: 1.2rem;
}
.fix_menu ul li a {
	padding-left: 1.6rem;
	font-size: 1.4rem;
}
.fix_menu ul li a::before {
	top: calc(50% - .5rem);
	width: .5rem;
	height: .5rem;
}
}/* @media */
@media (hover:hover) {
.fix_menu::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 100%;
	width: 100%;
	height: 2rem;
}
.fix_menu ul li a {
	transition: opacity .3s;
}
.fix_menu ul li a:hover {
	opacity: 1;
}
}/* @media */
/* -----------------------------------------------
= block sub_title
----------------------------------------------- */
.block .sub_title {
	margin-bottom: 2.4rem;
}
.block .sub_title .jp {
	display: block;
	margin-bottom: 1rem;
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: .06em;
}
.block .sub_title .en {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: min(4.2rem, calc(42 / 390 * 100vw));
	font-weight: 200;
	line-height: calc(36 / 32);
}
.block .sub_title .row {
	display: block;
	overflow: hidden;
}
.block .sub_title .row span {
	display: block;
	transform: translateY(110%);
	transition: transform .8s ease;
}
.block .sub_title.visible .row span {
	transform: translateY(0);
}
.block .sub_title.visible .row:nth-child(1) span {
	transition-delay: .8s;
}
.block .sub_title.visible .row:nth-child(2) span {
	transition-delay: 1s;
}
.block .sub_title.visible .row:nth-child(3) span {
	transition-delay: 1.2s;
}
.block .sub_title.visible .row:nth-child(4) span {
	transition-delay: 1.4s;
}
@media print, screen and (min-width: 768px) {/* PC */
.block .sub_title {
	margin-bottom: 7.3rem;
}
.block .sub_title .jp {
	margin-bottom: 1.6rem;
	font-size: 1.8rem;
}
.block .sub_title .en {
	font-size: min(9.1rem, calc(91 / 1440 * 100vw));
	font-weight: 200;
	line-height: calc(103 / 91);
}
}/* @media */
/* -----------------------------------------------
= data
----------------------------------------------- */
.data {
	position: relative;
	z-index: 1;
	padding-block: 21.2rem 12rem;
	color: #fff;
}
.data::before,
.data::after {
	content: "";
	position: absolute;
	left: 0;
	z-index: -1;
	width: 100%;
}
.data::before {
	top: 0;
	height: 22.8rem;
	background: linear-gradient(transparent,rgba(38,38,38,.8));
}
.data::after {
	bottom: 0;
	height: calc(100% - 22.8rem);
	background: linear-gradient(rgba(38,38,38,.8),rgba(0,0,0,.8));
}
.data .intro {
	margin-bottom: 10.8rem;
}
.data .intro .text_set {
	padding: 0 2rem 8.5rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.data .intro .text_set.visible {
	opacity: 1;
	transform: translateY(0);
}
.data .intro .text_set p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: calc(30 / 14);
	letter-spacing: .06em;
}
.data .intro .text_set p + p {
	margin-top: 2em;
}
.data .intro .item {
	position: relative;
	padding: 2.8rem 5.9rem 0 0;
}
.data .intro .item .text {
	position: absolute;
	top: 0;
	right: 3rem;
	width: 15.5rem;
}
.data .intro .item .text img {
	max-width: none;
	width: 100%;
}
.data .intro .img_set {
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.data .intro .img_set.visible {
	opacity: 1;
	transform: translateY(0);
}
.data .intro .item .img {
	display: block;
	height: 26.3rem;
	border-radius: 0 19rem 19rem 0;
	object-fit: cover;
}
.slide-number {
	display: flex;
	align-items: center;
	gap: 0 1.1rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.1rem;
}
.data .slide-number {
	margin: 2rem 3rem 0;
}
.data .history .sub_title {
	padding-left: 3.3rem;
}
.data .history .sub_title .en {
	font-size: min(3.2rem, calc(32 / 390 * 100vw));
}
.data .history .swiper {
	padding-left: 1.6rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.data .history .swiper.visible {
	opacity: 1;
	transform: translateY(0);
}
.data .history .year {
	position: relative;
	font-family: 'Montserrat', sans-serif;
	font-size: 4rem;
	font-weight: 200;
}
.data .history .year::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: calc(100% + 8px);
	height: 1px;
	border-bottom: 1px dotted #fff;
}
.data .history .box {
	position: relative;
	z-index: 1;
	margin-top: 3.6rem;
	padding: 2.4rem 2rem 0;
}
.data .history .box::before {
	content: '';
	position: absolute;
	top: -2.4rem;
	left: 6.5rem;
	width: 1px;
	height: 1.6rem;
	border-left: 1px dotted #fff;
}
.data .history .box::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 5rem);
	z-index: -1;
	background: rgba(255,255,255,0.2);
	backdrop-filter: blur(50px);
}
.data .history h3 {
	margin-bottom: 1.6rem;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: calc(28 / 16);
	letter-spacing: .06em;
}
.data .history p {
	margin-bottom: 1.6rem;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: calc(19 / 12);
	letter-spacing: .06em;
}
.data .history .item {
	position: relative;
	z-index: 1;
	padding: 1.6rem;
}
.data .history .item + .item {
	margin-block: .4rem;
}
.data .history .item::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255,255,255,0.6);
	backdrop-filter: blur(30px);
}
.data .history h4 {
	margin-bottom: .8rem;
	padding-bottom: .8rem;
	color: #262626;
	border-bottom: 1px solid rgba(38,38,38,.1);
	font-size: 1.2rem;
	font-weight: 300;
	line-height: calc(22 / 12);
	letter-spacing: .06em;
}
.data .history li {
	color: #262626;
	font-size: 1.1rem;
	font-weight: 300;
	line-height: calc(20 / 11);
	letter-spacing: .06em;
}
.data .history .initiatives {
	margin-left: 1em;
	text-indent: -1em;
}
.data .history .historical li {
	display: flex;
}
.data .history .historical li span:first-child {
	width: 4.5em;
}
.data .history .historical.type01 li span:first-child {
	width: 7em;
}
.data .history .historical.type02 li span:first-child {
	width: 6em;
}
.data .history .historical.type03 li span:first-child {
	width: 7.5em;
}
.data .history .historical li span:last-child {
	flex: 1;
}
.data .history .swiper-button-prev,
.data .history .swiper-button-next {
	background: rgba(0,0,0,.7);
}
@media print, screen and (min-width: 768px) {/* PC */
.data {
	padding-block: 30.7rem 25rem;
}
.data .intro {
	display: flex;
	align-items: end;
	gap: 5rem 17.6rem;
	margin-bottom: 37rem;
}
.data .intro .text_set {
	order: 2;
	flex: 1;
	padding: 0 9rem 0 0;
}
.data .intro .text_set_in {
	display: table;
	margin-inline: auto;
}
.data .intro .text_set p {
	font-size: 1.8rem;
	line-height: calc(44 / 18);
}
.data .intro .text_set p + p {
	margin-top: 2em;
}
.data .intro .img_set {
	max-width: 62rem;
}
.data .intro .item {
	padding: 2.3rem 3.3rem 0 0;
}
.data .intro .item .text {
	right: 0;
	width: 17.6rem;
}
.data .intro .item .img {
	height: 52.8rem;
	border-radius: 0 30rem 30rem 0;
}
.slide-number {
	gap: 0 1.3rem;
	font-size: 1.3rem;
}
.data .slide-number {
	justify-content: end;
	margin: 1rem 0 0;
}
.data .history .sub_title {
	padding-left: 9.2rem;
}
.data .history .sub_title .en {
	font-size: min(9.1rem, calc(91 / 1440 * 100vw));
}
.data .history .swiper {
	padding-left: 9rem;
}
.data .history .swiper-slide {
	width: 62.8rem;
}
.data .history .year {
	padding-left: 1rem;
	font-size: 5.3rem;
}
.data .history .year::after {
	width: calc(100% + 16px);
}
.data .history .box {
	padding: 4.5rem 5rem 0;
}
.data .history .box::before {
	top: -2.7rem;
	height: 1.8rem;
}
.data .history h3 {
	margin-bottom: 2.4rem;
	font-size: 2.4rem;
	line-height: calc(40 / 24);
}
.data .history p {
	margin-bottom: 4rem;
	font-size: 1.3rem;
	line-height: calc(26 / 13);
}
.data .history .item_wrap {
	display: flex;
	gap: 0 .8rem;
}
.data .history .item {
	width: 100%;
	padding-bottom: 3.6rem;
}
.data .history .item + .item {
	margin-block: 0;
}
.data .history h4 {
	margin-bottom: 1.8rem;
}
.data .history li {
	font-size: 1.2rem;
	line-height: calc(22 / 12);
}
}/* @media */
/* -----------------------------------------------
= play_btn
----------------------------------------------- */
.play_btn {
	display: grid;
	place-content: center;
	position: relative;
	z-index: 1;
	width: 8rem;
	height: 8rem;
	margin-inline: auto;
	color: #fff;
	border-radius: 50%;
}
.play_btn::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255,255,255,0.2);
	border: 1px solid rgba(255,255,255,.6);
	border-radius: 50%;
	filter: brightness(70%);
	backdrop-filter: blur(10px);
}
.play_btn::after {
	content: '';
	position: absolute;
	top: calc(50% - 1rem);
	left: calc(50% - .5rem);
	width: 1rem;
	height: 1rem;
	background: #fff;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.play_btn span {
	display: block;
	margin-top: 3rem;
	font-size: 1rem;
	font-weight: 300;
	text-align: center;
	letter-spacing: .03em;
}
@media print, screen and (min-width: 768px) {/* PC */
.play_btn {
	width: 12rem;
	height: 12rem;
}
.play_btn::after {
	top: calc(50% - 1.1rem);
	left: calc(50% - 1rem);
	width: 2rem;
	height: 2.2rem;
}
.play_btn span {
	position: relative;
	bottom: -8rem;
	font-size: 1.5rem;
}
}/* @media */
@media (hover:hover) {
.play_btn::before {
	transition: transform .3s;
}
.play_btn:hover::before {
	transform: scale(1.83333);
}
.play_btn span {
	transition: .3s;
}
.play_btn:hover span {
	bottom: -4rem;
}
}/* @media */
/* -----------------------------------------------
= project
----------------------------------------------- */
.project {
	padding-block: 9.2rem 5.9rem;
	color: #fff;
	background: url(../../img/special/global_project_bg_sp.jpg) no-repeat 50% 0 / cover;
}
.project .sub_title {
	margin-bottom: 4rem;
	padding-left: 2.6rem;
}
.project .item {
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.project .item.visible {
	opacity: 1;
	transform: translateY(0);
}
.project .item.london {
	background: url(../../img/special/global_project_img01_sp.jpg) no-repeat 50% 0 / cover;
}
.project .item.indonesia {
	background: url(../../img/special/global_project_img02_sp.jpg) no-repeat 50% 0 / cover;
}
.project .item a {
	display: block;
	color: #fff;
}
.project .item .inner {
	position: relative;
	padding: 2.4rem 2.9rem 1.4rem 2.7rem;
	aspect-ratio: 390 / 222;
	font-family: 'Montserrat', sans-serif;
}
.project .item .inner .city {
	margin-bottom: 1.5rem;
	font-size: 1.8rem;
	font-weight: 200;
	text-align: right;
	letter-spacing: .03em;
}
.project .item .row {
	display: block;
	overflow: hidden;
}
.project .item .row span {
	display: block;
	transform: translateY(110%);
	transition: transform .8s ease .8s;
}
.project .item.visible .row span {
	transform: translateY(0);
}
.project .item .inner .num {
	margin-block: 1rem 1.6rem;
	font-size: 1rem;
	font-weight: 300;
	letter-spacing: .03em;
}
.project .item .inner h3 {
	font-size: 2.6rem;
	font-weight: 200;
	letter-spacing: .03em;
}
.project .item .inner h3 .row {
	padding-bottom: 1rem;
}
.project .item .text {
	padding: 2.6rem 3.2rem 8rem;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: calc(30 / 14);
	letter-spacing: .06em;
}
@media print, screen and (min-width: 768px) {/* PC */
.project {
	padding-block: 17.5rem 3.2rem;
	background: url(../../img/special/global_project_bg_pc.jpg) no-repeat 50% 0 / cover;
}
.project .sub_title {
	margin-bottom: 7.3rem;
	padding-left: 9.2rem;
}
.project .item {
	position: relative;
	margin-right: 3.2rem;
}
.project .item.london {
	background: url(../../img/special/global_project_img01.jpg) no-repeat 50% 0 / cover;
}
.project .item.indonesia {
	margin-top: .2rem;
	background: url(../../img/special/global_project_img02.jpg) no-repeat 50% 0 / cover;
}
.project .item a {
	height: 47.8rem;
	padding: 6.8rem 3.9rem 3rem 9.8rem;
	box-sizing: border-box;
	overflow: hidden;
}
.project .item .inner {
	position: static;
	width: calc(460 / 1270 * 100%);
	padding: 0;
	aspect-ratio: auto;
}
.project .item .inner .city {
	font-size: 4.1rem;
	text-align: left;
}
.project .item .inner .btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.project .item .inner .set {
	position: absolute;
	left: 9.8rem;
	bottom: 6.8rem;
}
.project .item .inner .num {
	margin-block: 0 2.4rem;
	font-size: 1.6rem;
}
.project .item .inner h3 {
	font-size: 6.2rem;
}
.project .item .text {
	position: absolute;
	right: 4rem;
	bottom: 6.8rem;
	max-width: 50%;
	padding: 0;
	font-size: 1.6rem;
	line-height: calc(36 / 16);
	opacity: 0;
	pointer-events: none;
}
}/* @media */
@media (hover:hover) and (min-width: 768px) {
.project .item a {
	transition: .5s ease;
}
.project .item a:hover {
	height: 80rem;
}
.project .item a + .text {
	transition: opacity .5s ease;
}
.project .item a:hover + .text {
	opacity: 1;
}
}/* @media */
/* -----------------------------------------------
= modal-movie
----------------------------------------------- */
.modal-movie.fade .modal_in {
	padding: 7.5rem 2.5rem 0;
}
.modal_btn_close {
	top: 4rem;
	right: 2.5rem;
}
.modal-movie .embed {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
	margin-bottom: 2.5rem;
}
.modal-movie .embed iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media print, screen and (min-width: 768px) {/* PC */
.modal-movie.fade .modal_in {
	max-width: 72rem;
	margin: 0 auto;
	padding: 12rem 4rem 0;
}
.modal_btn_close {
	top: 8rem;
	right: 4rem;
}
}/* @media */
/* -----------------------------------------------
= films
----------------------------------------------- */
.films {
	padding: 8.8rem 1.5rem 25.3rem;
	color: #fff;
	background: url(../../img/special/global_films_bg_sp.jpg) no-repeat 50% 0 / cover;
}
.films .sub_title {
	margin-bottom: 4rem;
	padding-left: 1.1rem;
}
.films .item {
	margin-bottom: 4rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.films .item.visible {
	opacity: 1;
	transform: translateY(0);
}
.films .item a {
	display: block;
	position: relative;
	color: #fff;
}
.films .item .play_btn {
	position: absolute;
	top: 6.1rem;
	left: calc(50% - 4rem);
}
.films .item .set {
	display: flex;
	justify-content: space-between;
	padding-bottom: 2rem;
	margin-inline: 1rem;
	border-bottom: 1px solid rgba(255,255,255,.2);
	font-family: 'Montserrat', sans-serif;
}
.films .item .set .num {
	position: relative;
	margin-top: -2.6rem;
	font-size: 1rem;
	font-weight: 300;
}
.films .item .set .num span {
	display: block;
	font-size: 4.3rem;
	font-weight: 200;
}
.films .item .set .city {
	margin-top: 2rem;
	font-size: 1.4rem;
	font-weight: 300;
}
@media print, screen and (min-width: 768px) {/* PC */
.films {
	padding: 29.4rem 0 23.7rem;
	background: url(../../img/special/global_films_bg_pc.jpg) no-repeat 50% 0 / cover;
}
.films .sub_title {
	margin-bottom: 7rem;
	padding-left: 9.2rem;
}
.films .item-wrap {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 11.2rem 1.2rem;
	margin-bottom: 25.8rem;
}
.films .item {
	margin-bottom: 0;
}
.films .item img {
	width: 100%;
}
.films .item .play_btn {
	top: calc(147 / 1440 * 100vw);
	left: calc(50% - 6rem);
}
.films .item .set {
	padding-bottom: 4.4rem;
}
.films .item:nth-child(odd) .set {
	margin-inline: 7rem 4rem;
}
.films .item:nth-child(even) .set {
	margin-inline: 4rem 7rem;
}
.films .item .set .num {
	margin-top: -5rem;
	font-size: 1.9rem;
}
.films .item .set .num span {
	font-size: 8rem;
}
.films .item .set .city {
	margin-top: 2rem;
	font-size: 2.1rem;
}
}/* @media */
/* -----------------------------------------------
= strategy
----------------------------------------------- */
.strategy {
	margin-top: -21.8rem;
	padding-top: 5rem;
	color: #fff;
}
.strategy .sub_title {
	margin-bottom: 4rem;
	padding-left: 2.6rem;
}
.strategy .swiper {
	padding: 7.6rem 1.5rem 5.8rem;
	background: rgba(38,38,38,.9);
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.strategy .swiper.visible {
	opacity: 1;
	transform: translateY(0);
}
.strategy a {
	display: block;
	color: #fff;
	height: 100%;
}
.strategy .head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	margin-bottom: 4rem;
	padding-inline: 1.1rem;
	font-family: 'Montserrat', sans-serif;
}
.strategy .head .num {
	font-size: 5.2rem;
	font-weight: 200;
}
.strategy .head .num span {
	font-size: 1.9rem;
	font-weight: 300;
	letter-spacing: .03em;
	vertical-align: top;
}
.strategy .head .city {
	font-size: 1.9rem;
	font-weight: 200;
	letter-spacing: .03em;
}
.strategy .set {
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.strategy .set img {
	max-width: none;
	width: 100%;
}
.strategy .box {
	padding: 2.9rem 1.1rem 6.6rem;
}
.strategy .box .country {
	margin-bottom: 2.4rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.3rem;
	font-weight: 300;
	letter-spacing: .03em;
}
.strategy .box h3 {
	margin-bottom: 1.6rem;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: calc(28 / 18);
	letter-spacing: .06em;
}
.strategy .box .text {
	margin-bottom: 1.6rem;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: calc(30 / 12);
	letter-spacing: .06em;
}
.strategy .slide-number {
	justify-content: center;
}
@media print, screen and (min-width: 768px) {/* PC */
.strategy {
	margin-top: -30.8rem;
	padding-top: 10rem;
}
.strategy .sub_title {
	margin-bottom: 6.2rem;
	padding-left: 9.2rem;
}
.strategy .swiper {
	position: relative;
	height: 100vh;
	overflow: hidden;
	opacity: 1;
	transform: translateY(0);
	transition: none;
}
.strategy .swiper-wrapper {
	display: block;
	position: relative;
	height: 100%;
}
.strategy .swiper-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity .3s;
}
.strategy .swiper-slide.is-active {
	opacity: 1;
	z-index: 2;
}
.strategy .swiper-slide a {
	pointer-events: none;
}
.strategy .swiper-slide.is-active a {
	pointer-events: auto;
}
.strategy .item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
	padding: 11rem calc(98 / 1440 * 100vw) 11rem;
	box-sizing: border-box;
}
.strategy .item a {
	position: relative;
	border: 1px solid #f00;
}
.strategy .head {
	display: block;
	margin-bottom: 0;
	padding-inline: 0;
}
.strategy .head .num {
	font-size: 12.2rem;
}
.strategy .head .num span {
	font-size: 3.9rem;
}
.strategy .head .city {
	position: absolute;
	right: calc(98 / 1440 * 100vw);
	bottom: 7.4rem;
	font-size: 4.4rem;
}
.strategy .set {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: min(56.9rem, calc(569 / 1440 * 100vw));
}
.strategy .box {
	padding: 0;
	width: min(28.3rem, calc(283 / 1440 * 100vw));
}
.strategy .box .country {
	margin-bottom: 3.2rem;
	font-size: 2rem;
}
.strategy .box h3 {
	margin-bottom: 2.4rem;
	font-size: 2.4rem;
	line-height: calc(44 / 24);
}
.strategy .box .text {
	margin-bottom: 0;
	font-size: 1.4rem;
	line-height: calc(30 / 14);
}
.strategy .slide-number {
	flex-direction: column;
	gap: 13rem 0;
	position: absolute;
	top: 50%;
	right: min(13.7rem, calc(137 / 1440 * 100vw));
	transform: translateY(-50%);
}
.strategy .swiper-pagination {
	display: flex;
	flex-direction: column;
	height: 8.4rem;
}
.strategy .swiper-pagination-bullet {
	width: 1px;
	height: 2.1rem;
	margin: 0;
	background: transparent;
	border-top: none;
	border-left: .1rem dotted #fff;
	border-radius: 0;
	opacity: .6;
}
.strategy .swiper-pagination-bullet-active {
	border-top: none;
	border-left: .1rem solid #fff;
	opacity: 1;
}
}/* @media */
@media (hover:hover) {
.strategy .set img {
	transition: .3s;
}
.strategy .set:hover img {
	transform: scale(1.05);
}
}/* @media */
/* -----------------------------------------------
= nanimono
----------------------------------------------- */
.nanimono {
	padding-block: 12.2rem 6rem;
	color: #fff;
	background: url(../../img/special/global_nanimono_bg_sp.jpg) no-repeat 50% 0 / 100% auto;
}
.nanimono .sub_title {
	margin-bottom: 4rem;
	padding-left: 2.6rem;
}
.nanimono .swiper {
	padding: 0 0 8rem 1.6rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.nanimono .swiper.visible {
	opacity: 1;
	transform: translateY(0);
}
.nanimono .swiper a {
	display: block;
	color: #fff;
}
.nanimono .swiper-slide img {
	max-width: none;
	width: 100%;
}
.nanimono .division {
	display: inline-block;
	position: relative;
	z-index: 1;
	margin-block: -.9rem .8rem;
	padding: .6rem .8rem;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.4;
}
.nanimono .division::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(38,38,38,0.5);
	filter: brightness(70%);
	backdrop-filter: blur(30px);
}
.nanimono .name .jp {
	display: block;
	margin-bottom: .4rem;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.4;
	letter-spacing: .06em;
}
.nanimono .name .en {
	display: block;
	margin-bottom: .8rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 200;
	line-height: 1.4;
	letter-spacing: .06em;
}
.nanimono .year {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.4;
	letter-spacing: .06em;
}
.nanimono .swiper-button-prev {
	top: auto;
	bottom: 0;
	right: 6.9rem;
	left: auto;
}
.nanimono .swiper-button-next {
	top: auto;
	bottom: 0;
	right: 1.8rem;
}
.nanimono .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: end;
	position: absolute;
	left: .8rem;
	bottom: 0;
	width: calc(100% - 15.4rem);
	height: 4.5rem;
}
@media print, screen and (min-width: 768px) {/* PC */
.nanimono {
	padding-block: 23.7rem 11rem;
	background: url(../../img/special/global_nanimono_bg_pc.jpg) no-repeat 50% 0 / 100% auto;
}
.nanimono .sub_title {
	margin-bottom: 7.2rem;
	padding-left: 9.2rem;
}
.nanimono .swiper {
	padding: 0 0 12.8rem 3.2rem;
}
.nanimono .swiper-slide {
	width: 52rem;
}
.nanimono .swiper-slide img {
	filter: grayscale(100);
}
.nanimono .division {
	margin-block: -1.8rem 2.4rem;
	padding: 1.6rem 2.6rem;
	font-size: 1.4rem;
}
.nanimono .name {
	display: flex;
	gap: 0 1.6rem;
	margin-bottom: 1.6rem;
}
.nanimono .name .jp {
	margin-bottom: 0;
	font-size: 2.4rem;
}
.nanimono .name .en {
	margin-bottom: 0;
	font-size: 1.4rem;
}
.nanimono .year {
	font-size: 1.4rem;
}
.nanimono .swiper-button-prev {
	right: 17.2rem;
}
.nanimono .swiper-button-next {
	right: 10rem;
}
.nanimono .swiper-pagination {
	left: auto;
	right: 28.3rem;
	width: calc(100% - 30rem);
}
}/* @media */
@media (hover:hover) {
.nanimono .swiper-slide a img {
	transition: filter .3s;
}
.nanimono .swiper-slide a:hover img {
	filter: grayscale(0);
}
}/* @media */
/* -----------------------------------------------
= portfolio
----------------------------------------------- */
.portfolio {
	padding-block: 6rem 11rem;
	color: #fff;
	background: url(../../img/special/global_nanimono_bg_sp.jpg) no-repeat 50% 100% / 100% auto;
}
.portfolio .sub_title {
	margin-bottom: 4rem;
	padding-left: 2.6rem;
}
.portfolio .swiper {
	padding: 0 0 8rem 1.6rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.portfolio .swiper.visible {
	opacity: 1;
	transform: translateY(0);
}
.portfolio .swiper a {
	display: block;
	color: #fff;
}
.portfolio .swiper a p {
	padding: .8rem 0 0 .8rem;
	font-size: 1.2rem;
	font-weight: 300;
	letter-spacing: .06em;
}
.portfolio .swiper-slide .img {
	display: flex;
	align-items: end;
	height: 14.6rem;
	overflow: hidden;
}
.portfolio .swiper-slide .img img {
	width: 20rem;
	height: 11.2rem;
	object-fit: cover;
	transition: 1s ease;
}
.portfolio .swiper-slide-active .img img {
	width: 26rem;
	height: 14.6rem;
}
.portfolio .swiper-button-prev {
	top: auto;
	bottom: 0;
	right: 6.9rem;
	left: auto;
}
.portfolio .swiper-button-next {
	top: auto;
	bottom: 0;
	right: 1.8rem;
}
.portfolio .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: end;
	position: absolute;
	left: .8rem;
	bottom: 0;
	width: calc(100% - 15.4rem);
	height: 4.5rem;
}
@media print, screen and (min-width: 768px) {/* PC */
.portfolio {
	position: relative;
	padding-block: 11rem 21.6rem;
	background: url(../../img/special/global_nanimono_bg_pc.jpg) no-repeat 50% 100% / 100% auto;
}
.portfolio .sub_title {
	position: absolute;
	top: 11rem;
	right: 7.5rem;
	margin: 0;
	padding: 0;
}
.portfolio .swiper {
	padding: 13rem 0 12.8rem 19.2rem;
}
.portfolio .swiper-slide {
	width: 48.7rem;
}
.portfolio .swiper-slide-active {
	width: 64.8rem;
}
.portfolio .swiper a p {
	padding: 2.4rem 0 0 2.2rem;
	font-size: 1.8rem;
}
.portfolio .swiper-slide .img {
	height: 36.4rem;
}
.portfolio .swiper-slide .img img {
	width: 48.7rem;
	height: 27.4rem;
}
.portfolio .swiper-slide-active .img img {
	width: 64.8rem;
	height: 36.4rem;
}
.portfolio .swiper-button-prev {
	right: 17.2rem;
}
.portfolio .swiper-button-next {
	right: 10rem;
}
.portfolio .swiper-pagination {
	left: auto;
	right: 28.3rem;
	width: calc(100% - 30rem);
}
}/* @media */
/* -----------------------------------------------
= modal-portfolio
----------------------------------------------- */
.modal-portfolio-backdrop {
	background-color: rgba(29,29,29,.9);
}
.modal-portfolio.fade .modal_in {
	padding: 7.5rem 2.5rem 0;
}
.modal-portfolio .inner {
	color: #fff;
}
.modal-portfolio .name {
	margin-bottom: 1rem;
	font-size: 1.6rem;
	line-height: 1.3;
}
.modal-portfolio .location {
	margin-bottom: 2rem;
	font-size: 1.2rem;
	line-height: 1.3;
}
.modal-portfolio .text {
	margin-bottom: 3rem;
	font-size: 1.3rem;
	line-height: 2;
}
@media print, screen and (min-width: 768px) {/* PC */
.modal-portfolio.fade .modal_in {
	max-width: 115.7rem;
	margin: 0 auto;
	padding: 12rem 4rem 0;
}
.modal-portfolio .name {
	margin-bottom: 1rem;
	font-size: 3rem;
}
.modal-portfolio .location {
	margin-bottom: 1rem;
	font-size: 1.4rem;
}
.modal-portfolio .location {
	margin-bottom: 8.4rem;
}
.modal-portfolio .inner .set {
	display: flex;
}
.modal-portfolio .inner .set .text {
	flex: 1;
	margin-right: calc(56 / 1440 * 100vw);
}
.modal-portfolio .inner .set .img {
	max-width: calc(728 / 1440 * 100vw);
}
}/* @media */
/* -----------------------------------------------
= support
----------------------------------------------- */
.support {
	margin-bottom: -14.1rem;
	padding-block: 8.38rem 21rem;
	color: #fff;
	background: url(../../img/special/global_support_bg_sp.jpg) no-repeat 50% 0 / cover;
}
.support .sub_title {
	margin-bottom: 6rem;
	padding-left: 2.6rem;
}
.support .system {
	margin: 0 1.5rem 4.8rem;
}
.support .system .list {
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.support .system .list.visible {
	opacity: 1;
	transform: translateY(0);
}
.support .system .item_wrap {
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.support .system .item_wrap.visible {
	opacity: 1;
	transform: translateY(0);
}
.support .system .item + .item {
	margin-top: 6.8rem;
}
.support .system .item {
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.support .system .item.visible {
	opacity: 1;
	transform: translateY(0);
}
.support .system .item a {
	display: block;
	position: relative;
	color: #fff;
}
.support .system .item a::before {
	content: "";
	position: absolute;
	top: calc(144 / 390 * 100vw);
	right: calc(16 / 390 * 100vw);
	width: calc(40 / 390 * 100vw);
	height: calc(40 / 390 * 100vw);
	background: rgba(255,255,255,.4);
	backdrop-filter: blur(30px);
}
.support .system .item a::after {
	content: "";
	position: absolute;
	top: calc(160.5 / 390 * 100vw);
	right: calc(32.4 / 390 * 100vw);
	width: .5rem;
	height: .5rem;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
.support .system .item .num {
	position: absolute;
	top: -2rem;
	left: 1.1rem;
	z-index: 1;
	font-family: 'Montserrat', sans-serif;
	font-size: 4.2rem;
	font-weight: 200;
	letter-spacing: .03em;
}
.support .system .item h3 {
	margin: 2.4rem 1.1rem 1.6rem;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: calc(26 / 16);
	letter-spacing: .06em;
}
.support .system .item .text {
	margin-inline: 1.1rem;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: calc(22 / 12);
	letter-spacing: .06em;
}
.support .voice {
	margin-inline: 1.5rem;
}
.support .voice h3 {
	display: flex;
	align-items: end;
	gap: 0 .6rem;
	margin-bottom: 3.2rem;
}
.support .voice h3 .row {
	display: block;
	overflow: hidden;
}
.support .voice h3 .row span {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: calc(64 / 390 * 100vw);
	font-weight: 200;
	line-height: calc(72 / 64);
	letter-spacing: .03em;
	transform: translateY(110%);
	transition: transform .8s ease .8s;
}
.support .voice h3.visible .row span {
	transform: translateY(0);
}
.support .voice h3 .en .row span {
	font-family: 'Montserrat', sans-serif;
	font-size: 2.7rem;
	font-weight: 200;
}
.support .voice h3 .jp {
	margin-bottom: .4rem;
}
.support .voice h3 .jp .row span {
	font-size: 1.2rem;
	font-weight: 300;
}
.support .voice .item_wrap {
	position: relative;
	z-index: 1;
	padding: 0 1.8rem 2.4rem;
}
.support .voice .item_wrap::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255,255,255,0.1);
	backdrop-filter: blur(50px);
}
.support .voice .item {
	position: relative;
	padding-top: 2.8rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.support .voice .item.visible {
	opacity: 1;
	transform: translateY(0);
}
.support .voice .item + .item {
	margin-top: 2.8rem;
	border-top: 1px solid rgba(255,255,255,.2);
}
.support .voice .item .num {
	position: absolute;
	top: 2.8rem;
	left: 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.8rem;
	font-weight: 300;
	letter-spacing: .03em;
}
.support .voice .item h4 {
	margin: 0 0 1.4rem 6rem;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.3;
	letter-spacing: .06em;
}
.support .voice .item .division {
	margin: 0 0 2rem 6rem;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: calc(23 / 12);
	letter-spacing: .06em;
}
.support .voice .item .text {
	font-size: 1.3rem;
	font-weight: 300;
	line-height: calc(26 / 13);
	letter-spacing: .06em;
}
@media print, screen and (min-width: 768px) {/* PC */
.support {
	margin-bottom: -28.6rem;
	padding-block: 16rem 38.6rem;
	background: url(../../img/special/global_support_bg_pc.jpg) no-repeat 50% 0 / cover;
}
.support .sub_title {
	margin-bottom: 4.7rem;
	padding-left: 9.2rem;
}
.support .system {
	display: flex;
	align-items: end;
	gap: 0 6.8rem;
	margin: 0 10rem 10.5rem 0;
}
.support .system .img_set {
	position: relative;
	width: 50%;
	height: 74rem;
	opacity: 0;
	transform: translateY(4rem);
	transition: .8s .4s;
}
.support .system .img_set.visible {
	opacity: 1;
	transform: translateY(0);
}
.support .system .img_set img {
	display: block;
	position: absolute;
	inset: 0;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity .3s;
}
.support .system .img_set img.is-active {
	z-index: 1;
	opacity: 1;
}
.support .system .list {
	flex: 1;
}
.support .system .list .num {
	padding-bottom: 3rem;
	border-bottom: 1px solid #656565;
	font-family: 'Montserrat', sans-serif;
	font-size: 2.4rem;
	font-weight: 200;
	letter-spacing: .03em;
	text-align: right;
}
.support .system .list .num span {
	font-size: 7.2rem;
}
.support .system .item + .item {
	margin-top: 0;
}
.support .system .item a {
	padding: 3.2rem 14.8rem 3.2rem 0;
	border-bottom: 1px solid #656565;
}
.support .system .item a::before {
	top: auto;
	bottom: 3.2rem;
	right: 0;
	width: 6.4rem;
	height: 6.4rem;
}
.support .system .item a::after {
	top: auto;
	bottom: 6.04rem;
	right: 2.84rem;
}
.support .system .item:last-child a {
	padding-bottom: 0;
	border-bottom: none;
}
.support .system .item h3 {
	margin: 0 0 1.6rem;
	font-size: 1.8rem;
	line-height: calc(32 / 18);
}
.support .system .item .text {
	margin-inline: 0;
	font-size: 1.4rem;
	line-height: calc(30 / 14);
}
.support .voice {
	max-width: 124rem;
	margin-inline: auto;
}
.support .voice h3 {
	gap: 0 2rem;
	margin-bottom: 2.8rem;
	padding-left: 8rem;
}
.support .voice h3 .en {
	font-size: 4.4rem;
}
.support .voice h3 .jp {
	margin-bottom: .8rem;
	font-size: 1.4rem;
}
.support .voice .item_wrap {
	padding: 6rem 8rem;
}
.support .voice .item {
	display: flex;
	align-items: end;
	gap: 0 4rem;
	padding-top: 0;
}
.support .voice .item + .item {
	margin-top: 7.2rem;
	padding-top: 7.2rem;
}
.support .voice .item .set {
	width: 30%;
}
.support .voice .item .num {
	position: static;
	margin-bottom: 5.4rem;
	font-size: 2rem;
}
.support .voice .item h4 {
	margin: 0 0 2.9rem;
	font-size: 2.4rem;
}
.support .voice .item .division {
	margin: 0;
	font-size: 1.4rem;
	line-height: calc(28 / 14);
}
.support .voice .item .text {
	flex: 1;
	font-size: 1.4rem;
	line-height: calc(30 / 14);
}
}/* @media */
@media (hover:hover) {
.support .system .item a {
	transition: .3s;
}
.support .system .item a:hover {
	border-bottom-color: #989898;
}
.support .system .item a::before {
	transition: .3s;
}
.support .system .item a:hover::before {
	background: transparent;
	border: 1px solid rgba(255,255,255,.4);
}
}/* @media */

/* -----------------------------------------------
= print
----------------------------------------------- */
@media print {
.data .intro .text_set,
.data .intro .img_set,
.data .history .swiper,
.project .item,
.films .item,
.nanimono .swiper,
.portfolio .swiper,
.support .system .list,
.support .system .item_wrap,
.support .system .item,
.support .voice .item,
.row span {
	opacity: 1;
	transform: translateY(0);
}
}/* @media */

