@charset "utf-8";

.hamburger {
	display: none;
}

#loading {
	width: 100%;
	height: 100vh;
	background-color: #F2F3EC;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2000;
	transition: .5s;
	opacity: 1;
}

#loading.loaded {
	pointer-events: none;
	opacity: 0;
}

.loading__contents {
	width: 100%;
	height: 100vh;
	height: 100svh;
	position: absolute;
	top: 0;
	left: 0;
}

.loading__logo {
	width: 250px;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.loading__logo__obj {
	position: absolute;
}

.loading__logo__obj._01 {
	width: calc((60.13 / 175) * 100%);
	height: auto;
	top: 0;
	right: calc((33.3 / 175) * -100%);
	transform: translate(0%, -100%);
	animation: loading__logo__obj_01 2.4s infinite ease-in-out;
}

.loading__logo__obj._02 {
	width: calc((80.18 / 175) * 100%);
	height: auto;
	top: calc((16 / 369.57) * -100%);
	left: calc((33 / 175) * -100%);
	transform: translate(0%, -100%);
	animation: loading__logo__obj_02 3s infinite ease-in-out;
}

@keyframes loading__logo__obj_01 {
	0% {
		transform: translate(0%, -100%);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translate(10px, calc((-100%) - 10px));
		opacity: 0;
	}
}

@keyframes loading__logo__obj_02 {
	0% {
		transform: translate(0%, -100%);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translate(-10px, calc((-100%) - 10px));
		opacity: 0;
	}
}

#cloud_mask {
	width: calc(100vw - (100vw - 100%));
	height: 100vh;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 60;
	pointer-events: none;
}

#cloud_mask.on_mask {
	opacity: 1;
}

.cloud_mask__inner {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.cloud_mask_obj {
	height: auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	transition: 1s;
	transition-timing-function: ease;
}

.on_mask .cloud_mask_obj {
	opacity: 1;
}

.cloud_mask_obj._01 {
	width: calc((842 / 1280) * 100vw);
	aspect-ratio: 842 / 643.94;
	background-image: url('../image/index/mask-cloud_01.webp');
	top: calc((105.4 / 800) * -100%);
	left: calc((219 / 1280) * 100%);
	transform: translate(calc((1086 / 842) * -100%), 0%);
	z-index: 10;
}

.on_mask .cloud_mask_obj._01 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._02 {
	width: calc((786 / 1280) * 100vw);
	aspect-ratio: 786 / 601.94;
	background-image: url('../image/index/mask-cloud_02.webp');
	top: calc((99 / 800) * 100%);
	right: calc((120 / 1280) * -100%);
	transform: translate(calc((933 / 786) * 100%), 0%);
	z-index: 9;
}

.on_mask .cloud_mask_obj._02 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._03 {
	width: calc((651 / 1280) * 100vw);
	aspect-ratio: 651 / 565;
	background-image: url('../image/index/mask-cloud_03.webp');
	top: calc((193 / 800) * 100%);
	left: calc((225 / 1280) * -100%);
	transform: translate(calc((524 / 651) * -100%), 0%);
	z-index: 8;
}

.on_mask .cloud_mask_obj._03 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._04 {
	width: calc((540 / 1280) * 100vw);
	aspect-ratio: 540 / 373;
	background-image: url('../image/index/mask-cloud_04.webp');
	bottom: calc((25 / 800) * -100%);
	right: calc((27 / 1280) * -100%);
	transform: translate(100%, 0%);
	z-index: 7;
}

.on_mask .cloud_mask_obj._04 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._05 {
	width: calc((1279 / 1280) * 100vw);
	aspect-ratio: 1279 / 742;
	background-image: url('../image/index/mask-cloud_05.webp');
	bottom: calc((307 / 800) * -100%);
	left: calc((70 / 1280)* -100%);
	transform: translate(-100%, 0%);
	z-index: 6;
}

.on_mask .cloud_mask_obj._05 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._06 {
	width: calc((1535.64 / 1280) * 100vw);
	aspect-ratio: 1535.64 / 1126.92;
	background-image: url('../image/index/mask-cloud_06.webp');
	bottom: calc((338.5 / 800) * -100%);
	left: calc((156 / 1280) * 100%);
	transform: translate(calc((1080 / 1535.65) * 100%), 0%);
	z-index: 5;
}

.on_mask .cloud_mask_obj._06 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._07 {
	width: calc((1535.65 / 1280) * 100vw);
	aspect-ratio: 1535.65 / 1126.94;
	background-image: url('../image/index/mask-cloud_07.webp');
	top: calc((538.9 / 800) * -100%);
	left: calc((140 / 1280) * -100%);
	transform: translate(100%, 0%) rotate(-5deg);
	z-index: 4;
}

.on_mask .cloud_mask_obj._07 {
	transform: translate(0%, 0%) rotate(-5deg);
}

.cloud_mask_obj._08 {
	width: calc((503 / 1280) * 100vw);
	aspect-ratio: 503 / 605;
	background-image: url('../image/index/mask-cloud_08.webp');
	top: calc((17 / 800) * -100%);
	right: calc((503 / 1280) * -100%);
	transform: translate(calc((519 / 503) * 100%), 0%);
	z-index: 3;
}

.on_mask .cloud_mask_obj._08 {
	transform: translate(0%, 0%);
}

.cloud_mask_obj._09 {
	width: calc((261 / 1280) * 100vw);
	aspect-ratio: 261 / 236;
	background-image: url('../image/index/mask-cloud_09.webp');
	bottom: 0;
	left: 0;
	transform: translate(-100%, 0%);
	z-index: 2;
}

.on_mask .cloud_mask_obj._09 {
	transform: translate(0%, 0%);
}

#op {
	width: 100%;
	height: auto;
	margin-bottom: -100vh;
	overflow: hidden;
	position: relative;
	z-index: 50;
}

.op__trigger {
	width: 100%;
	height: 100%;
}

.op__inner {
	width: 100%;
}

.op__container {
	width: 100%;
	height: 100vh;
	background-image: url('../image/index/op-bg.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	overflow: hidden;
}

.op__makimono {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	pointer-events: none;
}

.op__makimono__wrap {
	width: 0;
	height: 340px;
	aspect-ratio: 518 / 340;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.op__makimono__wrap.magnification_w {
	height: auto !important;
}

.op__makimono__wrap.magnification_h {
	width: auto !important;
}

.op__makimono__body {
	height: calc((404 / 340) * 100%);
	aspect-ratio: 107 / 404;
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.op__makimono__body__inner {
	width: 100%;
	height: 100%;
	position: relative;
	opacity: 0;
	overflow: hidden;
}

.loaded .op__makimono__body__inner {
	animation: poyoyon-makimono 1.2s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;
	opacity: 1;
}

@keyframes poyoyon-makimono {
	0% {
		transform: scale(0.9, 1.2) translate(0%, -50vh);
		opacity: 0;
	}

	10% {
		transform: scale(0.9, 1.2) translate(0%, -15vh);
	}

	20% {
		transform: scale(1.2, 0.9) translate(0%, 3vh);
		opacity: 1;
	}

	30% {
		transform: scale(1, 1) translate(0%, -1vh);
	}

	40% {
		transform: scale(1, 1) translate(0%, -3vh);
	}

	50% {
		transform: scale(1, 1) translate(0%, -1vh);
	}

	60% {
		transform: scale(1, 1) translate(0%, 0vh);
	}

	70% {
		transform: scale(1.0, 1.0) translate(0%, 0vh);
	}

	100% {
		transform: scale(1.0, 1.0) translate(0%, 0vh);
	}
}

.op__makimono__kemuri {
	position: absolute;
	opacity: 0;
}

.op__makimono__kemuri._01 {
	width: 101px;
	height: auto;
	margin-left: -100%;
	position: absolute;
	left: -6px;
	bottom: 5px;
}

.loaded .op__makimono__kemuri._01 {
	animation: kemuri_01 .8s ease 1 forwards;
	animation-delay: .24s;
}

@keyframes kemuri_01 {
	0% {
		transform: scale(0.9, 0.9) translate(0%, 0%);
		opacity: 0;
	}

	30% {
		transform: scale(1.0, 1.0) translate(-15px, -20px);
		opacity: 1;
	}

	100% {
		transform: scale(1.0, 1.0) translate(-15px, -20px);
		opacity: 0;
	}
}

.op__makimono__kemuri._02 {
	width: 96px;
	height: auto;
	margin-right: -100%;
	position: absolute;
	right: -6px;
	bottom: 0px;
}

.loaded .op__makimono__kemuri._02 {
	animation: kemuri_02 .8s ease 1 forwards;
	animation-delay: .24s;
}

@keyframes kemuri_02 {
	0% {
		transform: scale(0.9, 0.9) translate(0%, 0%);
		opacity: 0;
	}

	30% {
		transform: scale(1.0, 1.0) translate(15px, -20px);
		opacity: 1;
	}

	100% {
		transform: scale(1.0, 1.0) translate(15px, -20px);
		opacity: 0;
	}
}

.op__makimono__body__image {
	width: auto;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.op__makimono__image {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
	overflow: hidden;
	pointer-events: none;
}

.op__makimono__image__frame {
	width: auto;
	height: 100%;
	aspect-ratio: 518 / 340;
	background-image: url('../image/index/op-makimono_image_frame.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%, -50%);
	z-index: 2;
}

.op__makimono_scroll {
	display: none;
	width: auto;
	height: auto;
	position: absolute;
	bottom: 50%;
	left: 50.3%;
	transform: translate(-50%, calc(((223 / 800) * 100vh) + 100%));
}

.op__makimono_scroll__inner {
	width: 100%;
	height: auto;
	position: relative;
	transition: opacity .5s;
	opacity: 1;
}

.fade.op__makimono_scroll__inner {
	opacity: 0;
	pointer-events: none;
}

.op__makimono_scroll__txt {
	width: auto;
	height: calc((43 / 800) * 100vh);
}

.op__makimono_scroll__txt img {
	width: auto;
	height: 100%;
}

.op__makimono_scroll__arrow {
	width: calc((44 / 800) * 100vh);
	height: auto;
	margin: calc((13 / 800) * 100vh) auto 0;
	animation: op__makimono_scroll__arrow 2s infinite ease-in-out;
}

@keyframes op__makimono_scroll__arrow {
	0% {
		transform: translate(0%, 0vh);
	}

	50% {
		transform: translate(0%, 1vh);
	}

	100% {
		transform: translate(0%, 0vh);
	}
}

.op__makimono_skip {
	display: none;
	width: auto;
	height: auto;
	position: absolute;
	bottom: 50%;
	left: calc((76.5 / 1280) * 100%);
	transform: translate(0%, calc(((223 / 800) * 100vh) + 100%));
	pointer-events: auto;
}

.op__makimono_skip__inner {
	width: 100%;
	height: auto;
	position: relative;
	opacity: 1;
	transition: opacity .5s;
	cursor: pointer;
}

.fade.op__makimono_skip__inner {
	opacity: 0;
	pointer-events: none;
}

.op__makimono_skip__txt {
	width: auto;
	height: calc((43 / 800) * 100vh);
}

.op__makimono_skip__txt img {
	width: auto;
	height: 100%;
}

.op__makimono_skip__arrow {
	width: calc((44 / 800) * 100vh);
	height: auto;
	margin: calc((19 / 800) * 100vh) auto 0;
	animation: op__makimono_skip__arrow 2s infinite ease-in-out;
	transform: translate(-0.5vh, 0%) rotate(90deg);
}

@keyframes op__makimono_skip__arrow {
	0% {
		transform: translate(0.5vh, 0%) rotate(90deg);
	}

	50% {
		transform: translate(-0.5vh, 0%) rotate(90deg);
	}

	100% {
		transform: translate(0.5vh, 0%) rotate(90deg);
	}
}

.op__tominojo {
	display: none;
	width: auto;
	height: auto;
	position: absolute;
	top: calc((40 / 800) * 100vh);
	right: calc((50 / 1280) * 100%);
}
.op__tominojo__link {
	display: block;
	width: calc((130 / 800) * 100vh);
	height: auto;
	aspect-ratio: 1 / 1;
	border-radius: 9999px;
	overflow: hidden;
	transition: opacity .5s;
	opacity: 1;
}

.fade.op__tominojo__link {
	opacity: 0;
	pointer-events: none;
}

.op__other_link {
	display: none;
	width: auto;
	height: auto;
	position: absolute;
	bottom: calc((50 / 800) * 100vh);
	right: calc((50 / 1280) * 100%);
	pointer-events: auto;
}

.op__other_link__inner {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: calc((22 / 800) * 100vh);
	width: auto;
	height: auto;
	transition: opacity .5s;
}

.fade.op__other_link__inner {
	opacity: 0;
	pointer-events: none;
}

.op__other_link__item {
	width: calc((130 / 800) * 100vh);
	height: auto;
}

.op__other_link__item a,
.op__other_link__item span {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	border-radius: 45%;
	cursor: pointer;
}

@media (any-hover: hover) {
	.op__other_link__item a,
	.op__other_link__item span {
		transition: .3s;
		opacity: 1;
	}
	.op__other_link__item a:hover,
	.op__other_link__item span:hover {
		transform: scale(1.05);
		opacity: 0.85;
	}
}

.op__other_link__item a img,
.op__other_link__item span img {
	border-radius: 45%;
}

.op__story {
	width: 100%;
	height: 100%;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
}

.op__story__wrap {
	width: 0;
	height: 292px;
	aspect-ratio: 460 / 292;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.op__story__wrap.magnification_w {
	height: auto !important;
}

.op__story__wrap.magnification_h {
	width: auto !important;
}

.op__story__container {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.op__story__container__inner {
	width: 100%;
	min-width: 460px;
	height: 100%;
	min-height: 292px;
	position: absolute;
	top: 0;
	right: 0;
}

.op__story__contents {
	display: flex;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.op__story__contents__inner {
	width: auto;
	height: 100vh;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%, -50%);
}

.op__story__contents__wrap {
	width: calc((5465 / 1280) * 100vw);
	height: 100vh;
	position: relative;
}

.op__story__contents__wrap::before {
	left: 0;
}

.op__story__contents__wrap::after {
	right: 0;
}

.op__story__contents__obj,
.op__story__contents__txt_wrap,
.op__story__contents__main {
	position: absolute;
	opacity: 0;
}

.op__story__contents__txt_wrap {
	width: fit-content;
	transition: opacity .6s;
	visibility: hidden;
}

.show.op__story__contents__txt_wrap {
	visibility: visible;
	opacity: 1;
}

.op__story__contents__txt {
	filter: blur(5px);
	transition: 1.4s;
	opacity: 0;
}

.op__story__contents__txt._ja {
	width: auto;
	height: auto;
	margin: 0 auto;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: 24px;
	font-weight: 500;
	line-height: 2.2;
	letter-spacing: 0.28em;
	white-space: nowrap;
	color: var(--color--black);
}

.op__story__contents__txt._en {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.54;
	letter-spacing: 0.06em;
	text-align: center;
	white-space: nowrap;
}

.show .op__story__contents__txt {
	opacity: 1;
	filter: blur(0px);
}

.op__story__contents__obj img,
.op__story__contents__main img {
	width: auto;
	height: 100%;
}

.op__story__contents__obj._01 {
	width: auto;
	height: calc((355.75 / 800) * 100%);
	bottom: calc((559 / 800) * 100%);
	right: calc((81.5 / 1280) * -100vw);
	transform: translate(2vw, -1vh);
	z-index: 5;
}

.op__story__contents__obj._02 {
	width: auto;
	height: calc((305.24 / 800) * 100%);
	bottom: calc((545.5 / 800) * 100%);
	right: calc((16 / 1280) * -100vw);
	transform: translate(1vw, -1vh);
	z-index: 3;
}

.op__story__contents__obj._03 {
	width: auto;
	height: calc((289.13 / 800) * 100%);
	bottom: calc((339.4 / 800) * 100%);
	right: calc((26 / 1280) * -100vw);
	transform: translate(2vw, 0vh);
	z-index: 4;
}

.op__story__contents__main._01 {
	width: auto;
	height: calc((333.49 / 800) * 100%);
	aspect-ratio: 326.59 / 333.49;
	bottom: calc((23 / 800) * 100%);
	right: calc((51.2 / 1280 * 100vw));
	transform: translate(0vw, 2vh);
	z-index: 5;
}

.op__story__contents__main_01_01 {
	width: auto;
	height: calc((280 / 333.49) * 100%);
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}

.op__story__contents__main_01_02 {
	width: auto;
	height: calc((94.49 / 333.49) * 100%);
	position: absolute;
	top: 0;
	right: calc((40 / 333.49) * 100%);
	z-index: 2;
	opacity: 0;
	animation: makimono_startop__story__contents__main_01_02 2s infinite ease-in-out;
}

.op__story__contents__main_01_03 {
	width: auto;
	height: calc((126.56 / 333.49) * 100%);
	position: absolute;
	top: calc((14.5 / 333.49) * 100%);
	left: 0;
	z-index: 2;
	animation: makimono_startop__story__contents__main_01_02 3s infinite ease-in-out;
	animation-delay: 0.3s;
}

@keyframes makimono_startop__story__contents__main_01_02 {
	0% {
		transform: translateY(0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translateY(-20px);
		opacity: 0;
	}
}

.op__story__contents__obj._04 {
	width: auto;
	height: calc((216 / 800) * 100%);
	bottom: calc((9 / 800) * -100%);
	right: calc((36.3 / 1280 * -100vw));
	transform: translate(2vw, 1vh);
	z-index: 3;
}

.op__story__contents__obj._05 {
	width: auto;
	height: calc((484.49 / 800) * 100%);
	bottom: calc((281.3 / 800) * -100%);
	right: calc((196.2 / 1280 * 100vw));
	transform: translate(0vw, 1vh);
	z-index: 2;
}

.op__story__contents__txt_wrap._01 {
	top: calc((398 / 800) * 100%);
	right: 50vw;
	transform: translate(50%, -50%);
	z-index: 10;
}

.op__story__contents__txt_wrap._01 .op__story__contents__txt._en {
	margin: calc((24 / 1280) * 100vw) auto 0;
}

.op__story__contents__obj._06 {
	width: auto;
	height: calc((305.16 / 800) * 100%);
	top: calc((177.2 / 800) * -100%);
	right: calc((508.9 / 1280 * 100vw));
	transform: translate(2vw, -1vh);
	z-index: 2;
}

.op__story__contents__main._02 {
	width: auto;
	height: calc((211.9 / 800) * 100%);
	aspect-ratio: 194 / 211.9;
	bottom: calc((20.9 / 800) * 100%);
	right: calc((718 / 1280) * 100vw);
	transform: translate(0vw, 2vh);
	z-index: 5;
}

.op__story__contents__main_02_01 {
	width: auto;
	height: calc((211.9 / 211.9) * 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.op__story__contents__obj._07 {
	width: auto;
	height: calc((282.44 / 800) * 100%);
	bottom: calc((98.5 / 800) * -100%);
	right: calc((692.4 / 1280) * 100vw);
	transform: translate(0vw, 2vh);
	z-index: 3;
}

.op__story__contents__obj._08 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	top: calc((120.9 / 800) * -100%);
	right: calc((845.4 / 1280) * 100vw);
	transform: translate(2vw, -1vh);
	z-index: 3;
}

.op__story__contents__main._03 {
	width: auto;
	height: calc((532.77 / 800) * 100%);
	aspect-ratio: 714.08 / 532.77;
	top: calc((50.6 / 800) * -100%);
	right: calc((829.4 / 1280) * 100vw);
	transform: translate(-4vw, 0vh);
	z-index: 5;
}

.op__story__contents__main_03_01 {
	width: auto;
	height: calc((251.73 / 532.77) * 100%);
	position: absolute;
	top: calc((78.4 / 532.77) * 100%);
	left: 0;
	z-index: 3;
	animation: makimono_startop__story__contents__main_03_01 8s infinite ease-in-out;
}

@keyframes makimono_startop__story__contents__main_03_01 {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(10px);
	}

	100% {
		transform: translateY(0);
	}
}

.op__story__contents__main_03_02 {
	width: auto;
	height: calc((499.96 / 532.77) * 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	transform-origin: 0% 50%;
	animation: makimono_startop__story__contents__main_03_02 5s infinite ease-in-out;
}

@keyframes makimono_startop__story__contents__main_03_02 {

	0%,
	100% {
		transform: rotate(0deg);
	}

	50% {
		transform: rotate(-7deg);
	}
}

.op__story__contents__main_03_03 {
	width: auto;
	height: calc((180.99 / 499.96) * 100%);
	position: absolute;
	bottom: calc((32.8 / 499.96) * -100%);
	right: calc((10.9 / 714.08) * 100%);
	z-index: -1;
}

.op__story__contents__obj._09 {
	width: auto;
	height: calc((218 / 800) * 100%);
	bottom: calc((86 / 800) * -100%);
	right: calc((956.9 / 1280) * 100vw);
	transform: translate(0vw, 2vh);
	z-index: 2;
}

.op__story__contents__obj._10 {
	width: auto;
	height: calc((430.95 / 800) * 100%);
	bottom: calc((194.6 / 800) * -100%);
	right: calc((1031 / 1280) * 100vw);
	transform: translate(-2vw, 2vh);
	z-index: 1;
}

.op__story__contents__main._04 {
	width: auto;
	height: calc((507.38 / 800) * 100%);
	aspect-ratio: 827.78 / 507.38;
	bottom: calc((119 / 800) * -100%);
	right: calc((1146.1 / 1280) * 100vw);
	transform: translate(0vw, 5vh);
	z-index: 4;
}

.op__story__contents__main_04_01 {
	width: auto;
	height: calc((347 / 507.38) * 100%);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 3;
}

.op__story__contents__main_04_02 {
	width: auto;
	height: calc((357.91 / 507.38) * 100%);
	position: absolute;
	top: calc((39.5 / 507.38) * 100%);
	right: 0;
	z-index: 2;
}

.op__story__contents__main_04_03 {
	width: auto;
	height: calc((182.15 / 507.38) * 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	animation: makimono_startop__story__contents__main_04_03 4s infinite ease-in-out;
}

@keyframes makimono_startop__story__contents__main_04_03 {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-20px);
	}

	100% {
		transform: translateY(0);
	}
}

.op__story__contents__obj._11 {
	width: auto;
	height: calc((578.48 / 800) * 100%);
	top: calc((350.4 / 800) * -100%);
	right: calc((1413.5 / 1280) * 100vw);
	transform: translate(-2vw, -10vh);
	z-index: 1;
}

.op__story__contents__obj._12 {
	width: auto;
	height: calc((251.73 / 800) * 100%);
	top: calc((85.8 / 800) * -100%);
	right: calc((1755.8 / 1280) * 100vw);
	transform: translate(-2vw, -6vh);
	z-index: 2;
}

.op__story__contents__txt_wrap._02 {
	width: calc((105.6 / 1280) * 100vw);
	top: calc((348 / 800) * 100%);
	right: calc((1691 / 1280) * 100vw);
	transform: translate(50%, -50%);
	z-index: 10;
}

.op__story__contents__txt_wrap._02 .op__story__contents__txt._en {
	position: absolute;
	top: calc((169 / 275) * 100%);
	right: calc((64.7 / 109) * -100%);
	transform: translate(100%, 0%);
	z-index: 1;
}

.op__story__contents__main._05 {
	width: auto;
	height: calc((352.22 / 800) * 100%);
	aspect-ratio: 421.84 / 352.22;
	bottom: calc((58.8 / 800) * 100%);
	right: calc((1685 / 1280) * 100vw);
	transform: translate(50%, 0%);
	z-index: 5;
	transition: opacity .6s;
}

.active.op__story__contents__main._05 {
	opacity: 1;
}

.op__story__contents__main_05_01 {
	width: auto;
	height: calc((187.22 / 352.22) * 100%);
	position: absolute;
	bottom: 0;
	right: calc((69.5 / 421.84) * 100%);
	z-index: 3;
}

.active .op__story__contents__main_05_01 {
	animation: op__story__contents__main_05_01 1s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;
}

@keyframes op__story__contents__main_05_01 {
	0% {
		transform: scale(1, 1) translate(0%, -10vh);
		opacity: 0;
	}

	10% {
		transform: scale(1, 1) translate(0%, -3vh);
	}

	20% {
		transform: scale(1.05, 0.95) translate(0%, 0.6vh);
		opacity: 1;
	}

	30% {
		transform: scale(1, 1) translate(0%, -0.2vh);
	}

	40% {
		transform: scale(1, 1) translate(0%, -0.6vh);
	}

	50% {
		transform: scale(1, 1) translate(0%, -0.2vh);
	}

	60% {
		transform: scale(1, 1) translate(0%, 0vh);
	}

	70% {
		transform: scale(1, 1) translate(0%, 0vh);
	}

	100% {
		transform: scale(1, 1) translate(0%, 0vh);
	}
}

.op__story__contents__main_05_02 {
	width: auto;
	height: calc((94.49 / 352.22) * 100%);
	position: absolute;
	top: calc((89 / 352.22) * 100%);
	right: 0;
	z-index: 2;
	animation: op__story__contents__main_05_03 2.2s infinite ease-in-out;
}

.op__story__contents__main_05_03 {
	width: auto;
	height: calc((155.69 / 352.22) * 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	animation: op__story__contents__main_05_03 3s infinite ease-in-out;
	animation-delay: 0.3s;
}

@keyframes op__story__contents__main_05_03 {
	0% {
		transform: translateY(0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translateY(-20px);
		opacity: 0;
	}
}

.op__story__contents__obj._13 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	top: calc((158.5 / 800) * -100%);
	right: calc((1913.2 / 1280) * 100vw);
	transform: translate(-2vw, -7vh);
	z-index: 3;
}

.op__story__contents__main._06 {
	width: auto;
	height: calc((434 / 800) * 100%);
	aspect-ratio: 409.8 / 434;
	bottom: calc((86.5 / 800) * 100%);
	right: calc((1997.1 / 1280) * 100vw);
	transform: translate(0vw, 30vh);
	z-index: 5;
}

.op__story__contents__main_06_01 {
	width: auto;
	height: calc((434 / 434) * 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: 3;
}

.op__story__contents__main_06_02 {
	width: auto;
	height: calc((156.19 / 434) * 100%);
	position: absolute;
	top: calc((74.5 / 434) * 100%);
	left: 0;
	z-index: 2;
	opacity: 0;
	transform: scale(0.4);
}

.active.op__story__contents__main_06_02 {
	animation: op__story__contents__main_06_02_in .4s forwards ease-in-out;
	opacity: 1;
}

.op__story__contents__main_06_02:not(.active) {
	animation: op__story__contents__main_06_02_out .3s forwards ease-in-out;
}

@keyframes op__story__contents__main_06_02_in {
	0% {
		transform: scale(0.9);
		opacity: 0;
	}

	50% {
		transform: scale(1.1);
	}

	100% {
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes op__story__contents__main_06_02_out {
	0% {
		transform: scale(1);
		opacity: 1;
	}

	100% {
		transform: scale(0.4);
		opacity: 0;
	}
}

.op__story__contents__obj._14 {
	width: auto;
	height: calc((308 / 800) * 100%);
	bottom: calc((119 / 800) * -100%);
	right: calc((1881.9 / 1280) * 100vw);
	transform: translate(-2vw, 8vh);
	z-index: 6;
}

.op__story__contents__obj._15 {
	width: auto;
	height: calc((319.95 / 800) * 100%);
	top: calc((91.9 / 800) * -100%);
	right: calc((2161.7 / 1280) * 100vw);
	transform: translate(-2vw, -4vh);
	z-index: 1;
}

.op__story__contents__txt_wrap._03 {
	width: calc((158.39 / 1280) * 100vw);
	top: calc((362 / 800) * 100%);
	right: calc((2504 / 1280) * 100vw);
	transform: translate(50%, -50%);
	z-index: 10;
}

.op__story__contents__txt_wrap._03 .op__story__contents__txt._en {
	position: absolute;
	top: calc((10 / 800) * 100vh);
	right: calc((30 / 162) * -100%);
	transform: translate(100%, 0%);
	z-index: 1;
}

.op__story__contents__obj._16 {
	width: auto;
	height: calc((328.59 / 800) * 100%);
	bottom: calc((121.6 / 800) * -100%);
	right: calc((2151.2 / 1280) * 100vw);
	transform: translate(2vw, -1vh);
	z-index: 2;
}

.op__story__contents__obj._17 {
	width: auto;
	height: calc((282.44 / 800) * 100%);
	top: calc((85.8 / 800) * -100%);
	right: calc((2427.6 / 1280) * 100vw);
	transform: translate(3vw, -5vh);
	z-index: 2;
}

.op__story__contents__obj._18 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	bottom: calc((166.9 / 800) * -100%);
	right: calc((2217.8 / 1280) * 100vw);
	transform: translate(5vw, 4vh);
	z-index: 7;
}

.op__story__contents__obj._19 {
	width: auto;
	height: calc((251.73 / 800) * 100%);
	top: calc((125.9 / 800) * -100%);
	right: calc((2674.7 / 1280) * 100vw);
	transform: translate(0vw, -4vh);
	z-index: 3;
}

.op__story__contents__txt_wrap._04 {
	top: calc((384 / 800) * 100%);
	right: calc((2849 / 1280) * 100vw);
	transform: translate(50%, -50%);
	z-index: 10;
}

.op__story__contents__txt_wrap._04 .op__story__contents__txt._en {
	margin: 47.5px auto 0;
}

.op__story__contents__obj._20 {
	width: auto;
	height: calc((299.59 / 800) * 100%);
	bottom: calc((167.6 / 800) * -100%);
	right: calc((2804.7 / 1280) * 100vw);
	transform: translate(5vw, 1vh);
	z-index: 2;
}

.op__story__contents__obj._21 {
	width: auto;
	height: calc((578.48 / 800) * 100%);
	top: calc((375 / 800) * -100%);
	right: calc((2796.6 / 1280) * 100vw);
	transform: translate(-3vw, -2vh);
	z-index: 2;
}

.op__story__contents__ten_no_meshi {
	width: auto;
	height: calc((859.67 / 800) * 100%);
	aspect-ratio: 564.16 / 859.67;
	position: absolute;
	top: 0;
	right: calc((3379 / 1280) * 100vw);
	transform: translate(50%, 0%);
	z-index: 5;
}

.op__story__contents__ten_no_meshi__bg {
	width: 100%;
	height: 0%;
	margin: 0 auto;
	position: relative;
	z-index: 1;
	transition: 1.4s;
	overflow: hidden;
}

.active .op__story__contents__ten_no_meshi__bg {
	height: 100%;
}

.op__story__contents__ten_no_meshi__bg img {
	width: auto;
	height: 100vh;
	aspect-ratio: 503 / 800;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0%);
}

.op__story__contents__ten_no_meshi__ttl {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	width: auto;
	height: auto;
	position: absolute;
	top: calc((199 / 800) * 100%);
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 4;
}

.op__story__contents__ten_no_meshi__ttl__logo {
	width: auto;
	height: calc((202.03 / 800) * 100vh);
	margin-right: 25px;
}

.op__story__contents__ten_no_meshi__ttl__logo img {
	width: auto;
	height: 100%;
}

.op__story__contents__ten_no_meshi__ttl__txt {
	width: auto;
	height: auto;
	margin: 0 auto;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.28em;
	white-space: nowrap;
	color: var(--color--black);
}

.op__story__contents__ten_no_meshi__ttl__logo,
.op__story__contents__ten_no_meshi__ttl__txt {
	opacity: 0;
	transition: .8s;
}

.active .op__story__contents__ten_no_meshi__ttl__logo,
.active .op__story__contents__ten_no_meshi__ttl__txt {
	opacity: 1;
}

.op__story__contents__ten_no_meshi__ttl__en {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.54;
	letter-spacing: 0.06em;
	text-align: center;
	white-space: nowrap;
	position: absolute;
	bottom: calc((30 / 202.03) * 100%);
	left: calc((40 / 1280) * -100vw);
	transform: translate(-100%, 0%);
}

.op__story__contents__ten_no_meshi__ttl__en {
	opacity: 0;
	transition: .8s;
	transition-delay: .2s;
}

.active .op__story__contents__ten_no_meshi__ttl__en {
	opacity: 1;
}

.op__story__contents__ten_no_meshi__tendon {
	width: auto;
	height: calc((368 / 859.67) * 100%);
	aspect-ratio: 338 / 368;
	position: absolute;
	bottom: calc((98.7 / 859.67) * 100%);
	left: 50%;
	transform: translate(-50%, 4vh);
	z-index: 3;
	opacity: 0;
	transition: .4s;
	transition-delay: .4s;
}

.active .op__story__contents__ten_no_meshi__tendon {
	transform: translate(-50%, 0vh);
	opacity: 1;
}

.op__story__contents__ten_no_meshi__tendon_01 {
	width: 100%;
	height: auto;
	position: absolute;
	bottom: 0;
	left: 0;
}

.op__story__contents__ten_no_meshi__tendon_02 {
	width: auto;
	height: calc((141.13 / 368) * 100%);
	position: absolute;
	top: calc((90 / 368) * -100%);
	right: calc((84 / 338) * -100%);
	z-index: 3;
	animation: op__story__contents__ten_no_meshi__tendon 3s infinite ease-in-out;
}

.op__story__contents__ten_no_meshi__tendon_03 {
	width: auto;
	height: calc((85.65 / 368) * 100%);
	position: absolute;
	top: calc((83 / 368) * 100%);
	right: calc((36.5 / 338) * -100%);
	z-index: 2;
	animation: op__story__contents__ten_no_meshi__tendon 2.2s infinite ease-in-out;
	animation-delay: 0.3s;
}

.op__story__contents__ten_no_meshi__tendon_04 {
	width: auto;
	height: calc((85.65 / 368) * 100%);
	position: absolute;
	top: calc((7 / 368) * 100%);
	left: calc((39.1 / 338) * -100%);
	z-index: 1;
	animation: op__story__contents__ten_no_meshi__tendon 2.4s infinite ease-in-out;
	animation-delay: 0.15s;
}

@keyframes op__story__contents__ten_no_meshi__tendon {
	0% {
		transform: translateY(0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translateY(-20px);
		opacity: 0;
	}
}

.op__story__contents__ten_no_meshi__tendon_02 img,
.op__story__contents__ten_no_meshi__tendon_03 img,
.op__story__contents__ten_no_meshi__tendon_04 img {
	width: auto;
	height: 100%;
}

.op__story__contents__ten_no_meshi__hand {
	width: 48.932624%;
	height: auto;
	position: absolute;
	bottom: 0;
	z-index: 2;
	transform: translate(0vw, 8vh);
	opacity: 0;
	transition: .6s;
}

.op__story__contents__ten_no_meshi__hand._left {
	left: 0;
}

.op__story__contents__ten_no_meshi__hand._right {
	right: 0;
}

.active .op__story__contents__ten_no_meshi__hand {
	transform: translate(0vw, 0vh);
	opacity: 1;
}

.op__story__contents__obj._22 {
	width: auto;
	height: calc((257.45 / 800) * 100%);
	top: calc((123 / 800) * -100%);
	right: calc((3491.9 / 1280) * 100vw);
	transform: translate(3vw, 2vh);
	z-index: 1;
}

.op__story__contents__obj._23 {
	width: auto;
	height: calc((282.44 / 800) * 100%);
	bottom: calc((142.4 / 800) * -100%);
	right: calc((3476.6 / 1280) * 100vw);
	transform: translate(-2vw, 4vh);
	z-index: 6;
}

.op__story__contents__obj._24 {
	width: auto;
	height: calc((350.09 / 800) * 100%);
	top: calc((175 / 800) * -100%);
	right: calc((3769.7 / 1280) * 100vw);
	transform: translate(2vw, 1vh);
	z-index: 2;
}

.op__story__contents__txt_wrap._05 {
	top: calc((378 / 800) * 100%);
	right: calc((4069 / 1280) * 100vw);
	transform: translate(50%, -50%);
	z-index: 10;
}

.op__story__contents__txt_wrap._05 .op__story__contents__txt._en {
	margin: calc((26 / 1280) * 100vw) auto 0;
}

.op__story__contents__obj._25 {
	width: auto;
	height: calc((359 / 800) * 100%);
	bottom: calc((154 / 800) * -100%);
	right: calc((3797.7 / 1280) * 100vw);
	transform: translate(-4vw, -1vh);
	z-index: 7;
}

.op__story__contents__obj._26 {
	width: auto;
	height: calc((502.2 / 800) * 100%);
	bottom: calc((199.1 / 800) * -100%);
	right: calc((3887.7 / 1280) * 100vw);
	transform: translate(-3vw, 2vh);
	z-index: 6;
}

.op__story__contents__obj._27 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	top: calc((148.6 / 800) * -100%);
	left: calc(100vw + ((32.2 / 1280) * 100vw));
	transform: translate(calc(-100% - 3vw), -1vh);
	z-index: 3;
}

.op__story__contents__obj._28 {
	width: auto;
	height: calc((578.48 / 800) * 100%);
	top: calc((323.9 / 800) * -100%);
	left: calc(100vw + ((17.8 / 1280) * -100vw));
	transform: translate(-100%, -2vh);
	z-index: 2;
}

.op__story__contents__obj._29 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	top: calc((148.6 / 800) * -100%);
	left: calc((32.2 / 1280) * -100vw);
	transform: translate(3vw, -1vh);
	z-index: 3;
}

.op__story__contents__obj._30 {
	width: auto;
	height: calc((578.48 / 800) * 100%);
	top: calc((323.9 / 800) * -100%);
	left: calc((32.2 / 1280) * -100vw);
	transform: translate(0vw, -2vh);
	z-index: 2;
}

.op__story__contents__logo {
	width: auto;
	height: calc((454.12 / 800) * 100%);
	aspect-ratio: 430.2 / 454.12;
	position: absolute;
	top: calc((370 / 800) * 100%);
	left: 50vw;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition: opacity .6s;
	z-index: 1;
}

.show.op__story__contents__logo {
	opacity: 1;
}

.op__story__contents__logo__mark {
	width: auto;
	height: calc((279.12 / 454.12) * 100%);
	aspect-ratio: 282 / 279.12;
	margin: 0 auto calc((45 / 454.12) * 100%);
	filter: blur(5px);
	transition: .8s;
	opacity: 0;
	transform: translate(0vw, -2vh);
}

.show .op__story__contents__logo__mark {
	opacity: 1;
	filter: blur(0px);
	transform: translate(0vw, 0vh);
}

.op__story__contents__logo__mark img {
	width: auto;
	height: 100%;
	transform: translate(0vw, 0vh);
}

.op__story__contents__logo__other_link {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: calc((20 / 800) * 100vh);
	filter: blur(5px);
	transition: .8s;
	opacity: 0;
	transition-delay: .3s;
}

.show .op__story__contents__logo__other_link {
	opacity: 1;
	filter: blur(0px);
}

.op__story__contents__logo__other_link__item {
	width: calc((120 / 800) * 100vh);
	height: auto;
}

.op__story__contents__logo__other_link__item a,
.op__story__contents__logo__other_link__item span {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	border-radius: 45%;
	pointer-events: auto;
	cursor: pointer;
}

@media (any-hover: hover) {
	.op__story__contents__logo__other_link__item a,
	.op__story__contents__logo__other_link__item span {
		transition: .3s;
	}
	.op__story__contents__logo__other_link__item a:hover,
	.op__story__contents__logo__other_link__item span:hover {
		transform: scale(1.05);
	}
}

.op__story__contents__logo__other_link__item a img,
.op__story__contents__logo__other_link__item span img {
	border-radius: 45%;
}

.op__story__contents__obj._31 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	bottom: calc((187.8 / 800) * -100%);
	left: calc(100vw + ((2.9 / 1280) * -100vw));
	transform: translate(calc(-100% + 3vw), 0vh);
	z-index: 8;
}

.op__story__contents__obj._32 {
	width: auto;
	height: calc((375.51 / 800) * 100%);
	bottom: calc((187.8 / 800) * -100%);
	left: calc(((2.9 / 1280) * 100vw));
	transform: translate(-3vw, 0vh);
	z-index: 8;
}

.op__story__contents__obj._33 {
	width: auto;
	height: calc((190 / 800) * 100%);
	bottom: calc((15 / 800) * -100%);
	left: calc((17.2 / 1280) * -100vw);
	z-index: 2;
}

.op__story__first_txt_wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: opacity .6s;
	opacity: 0;
	pointer-events: none;
}

.op__story__first_txt_wrap.show {
	opacity: 1;
}

.op__story__first_txt {
	white-space: nowrap;
	color: var(--color--black);
}

.op__story__first_txt._ja {
	width: auto;
	height: auto;
	margin: 0 auto 40px;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: 24px;
	font-weight: 500;
	line-height: 2.4;
	letter-spacing: 0.3em;
}

.op__story__first_txt._en {
	width: auto;
	height: auto;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.06em;
	white-space: nowrap;
	color: var(--color--black);
}

.op__story__first_txt span {
	transform: scale(0.6);
	opacity: 0;
	filter: blur(5px);
	transition: 1.4s;
}

.show .op__story__first_txt span {
	transform: scale(1);
	opacity: 1;
	filter: blur(0px);
}

.op__story__cloud__wrap {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	transition: opacity .8s;
	pointer-events: none;
	filter: blur(0px);
}

.op__story__cloud {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
}

.op__story__cloud._01 {
	width: calc((327.5 / 492) * 100%);
	background-image: url('../image/index/story-cloud_01.webp');
	aspect-ratio: 327.5 / 250.46;
	top: calc((44.7 / 324) * 100%);
	left: calc((77 / 492) * 100%);
	z-index: 9;
}

.op__story__cloud._02 {
	display: none;
	width: calc((210 / 492) * 100%);
	background-image: url('../image/index/story-cloud_02.webp');
	aspect-ratio: 210 / 145;
	bottom: calc((3 / 324) * -100%);
	right: calc((8 / 492) * -100%);
	z-index: 8;
}

.op__story__cloud._03 {
	width: calc((328 / 492) * 100%);
	background-image: url('../image/index/story-cloud_03.webp');
	aspect-ratio: 328 / 285;
	top: calc((20.6 / 324) * -100%);
	left: calc((137.3 / 492) * 100%);
	z-index: 7;
}

.op__story__cloud._04 {
	width: calc((254 / 492) * 100%);
	background-image: url('../image/index/story-cloud_04.webp');
	aspect-ratio: 254 / 220;
	top: calc((81 / 324) * 100%);
	left: calc((68 / 492) * -100%);
	z-index: 6;
}

.op__story__cloud._05 {
	width: calc((497 / 492) * 100%);
	background-image: url('../image/index/story-cloud_05.webp');
	aspect-ratio: 497 / 277;
	bottom: calc((112 / 324) * -100%);
	left: calc((18 / 492) * -100%);
	z-index: 5;
}

.op__story__cloud._06 {
	width: calc((552 / 492) * 100%);
	background-image: url('../image/index/story-cloud_06.webp');
	aspect-ratio: 552 / 278.34;
	bottom: calc((47 / 324) * -100%);
	left: calc((15 / 492) * -100%);
	z-index: 4;
}

.op__story__cloud._07 {
	width: calc((552 / 492) * 100%);
	background-image: url('../image/index/story-cloud_07.webp');
	aspect-ratio: 552 / 279;
	top: calc((114 / 324) * -100%);
	left: calc((7 / 492) * 100%);
	z-index: 3;
}

.op__story__cloud._08 {
	display: none;
	width: calc((195 / 492) * 100%);
	background-image: url('../image/index/story-cloud_08.webp');
	aspect-ratio: 195 / 235;
	top: 0;
	right: calc((4 / 492) * -100%);
	z-index: 2;
}

.op__story__cloud._09 {
	display: none;
	width: calc((101 / 492) * 100%);
	background-image: url('../image/index/story-cloud_09.webp');
	aspect-ratio: 101 / 91;
	bottom: calc((7 / 324) * -100%);
	left: calc((8 / 492) * -100%);
	z-index: 1;
}

.op__story__wrap__bg {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.op__story__wrap__bg__inner {
	display: block;
	content: '';
	width: 200%;
	height: 100%;
	background-image: url('../image/index/story-bg@pc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0%;
	right: 0%;
	z-index: 1;
}

#hero_mask {
	width: calc(100vw - (100vw - 100%));
	height: 100vh;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 60;
	pointer-events: none;
}

.hero_mask__inner {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.hero_mask_obj {
	height: auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	opacity: 0;
}

.hero_mask_obj._01 {
	width: calc((1535.65 / 1280) * 100vw);
	aspect-ratio: 1535.65 / 1155.45;
	background-image: url('../image/index/mask-cloud_01_large.webp');
	top: calc((17 / 800) * -100%);
	right: calc((165.7 / 1280) * -100%);
	transform: translate(100%, 0%);
	z-index: 9;
}

.hero_mask_obj._02 {
	width: calc((1279 / 1280) * 100vw);
	aspect-ratio: 1279 / 742;
	background-image: url('../image/index/mask-cloud_02_large.webp');
	bottom: calc((371 / 800) * -100%);
	left: calc((98 / 1280) * -100%);
	transform: translate(-100%, 0%);
	z-index: 10;
}

.hero_mask_obj._03 {
	width: calc((1548.69 / 1280) * 100vw);
	aspect-ratio: 1548.69 / 1165.47;
	background-image: url('../image/index/mask-cloud_03_large.webp');
	top: calc((407.5 / 800) * -100%);
	left: calc((152 / 1280) * -100%);
	transform: translate(-100%, 0%);
	z-index: 8;
}

#l_wrapper {
	opacity: 0;
}

#hero {
	width: 100%;
	height: 100vh;
	position: relative;
	z-index: 52;
}

.hero__video {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.hero__video::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--color--black);
	opacity: .3;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.hero__logo {
	width: calc((157.53 / 1280) * 100%);
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.hero__video video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.hero__cloud_wrap {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.hero__cloud {
	height: auto;
	position: absolute;
}

.hero__cloud._01 {
	height: calc((340.23 / 800) * 100%);
	top: calc((117.6 / 800) * -100%);
	right: calc((105.9 / 1280) * -100%);
	z-index: 2;
}

.hero__cloud._02 {
	height: calc((372 / 800) * 100%);
	top: calc((11 / 800) * -100%);
	right: calc((38 / 1280) * -100%);
	z-index: 1;
}

.hero__cloud._03 {
	height: calc((291 / 800) * 100%);
	bottom: calc((35 / 800) * -100%);
	right: calc((26 / 1280) * -100%);
	z-index: 1;
}

.hero__cloud._04 {
	height: calc((282.44 / 800) * 100%);
	bottom: calc((150.7 / 800) * -100%);
	right: calc((17.6 / 1280) * -100%);
	z-index: 2;
}

.hero__cloud._05 {
	height: calc((662.42 / 800) * 100%);
	top: calc((316.4 / 800) * -100%);
	left: calc((49.5 / 1280) * -100%);
	z-index: 1;
}

.hero__cloud._06 {
	display: none;
	z-index: 2;
}

.hero__cloud._07 {
	height: calc((218 / 800) * 100%);
	bottom: calc((59 / 800) * 100%);
	left: calc((29 / 1280) * -100%);
	z-index: 1;
}

.hero__cloud._08 {
	height: calc((335.75 / 800) * 100%);
	bottom: calc((167.9 / 800) * -100%);
	left: calc((39.2 / 1280) * -100%);
	z-index: 2;
}

.hero__cloud img {
	width: auto;
	height: 100%;
}

#about {
	width: 100%;
	height: auto;
	background-image: url('../image/page-bg@pc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	z-index: 51;
}

.about__inner {
	width: 100%;
	height: auto;
	padding: calc((217 / 1280) * 100vw) 0 calc((115 / 1280) * 100vw);
	position: relative;
}

.about__contents {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	height: auto;
}

.about__contents__details {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	width: calc((880 / 1280) * 100%);
	height: auto;
	padding-top: calc((47 / 1280) * 100vw);
}

.about__contents__logo {
	width: calc((61 / 1280) * 100vw);
	height: auto;
	margin-left: calc((32 / 1280) * 100vw);
}

.about__contents__details__txt_ja {
	width: auto;
	height: auto;
	padding-top: calc((18 / 1280) * 100vw);
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: var(--16px);
	font-weight: 500;
	line-height: 2.625;
	letter-spacing: 0.3em;
	white-space: nowrap;
}

.about__contents__details__txt_en {
	width: auto;
	height: auto;
	padding-right: calc((105 / 1280) * 100vw);
	margin-top: calc((43.6 / 1280) * 100vw);
	font-size: var(--14px);
	font-weight: 500;
	line-height: 1.43;
	letter-spacing: 0.06em;
	color: var(--color--black);
}

.about__contents__image {
	width: calc((400 / 1280) * 100%);
	height: auto;
	aspect-ratio: 400 / 470;
	background-image: url('../image/index/about-image_01.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.about__image_wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	height: auto;
	margin-top: calc((6 / 1280) * -100vw);
}

.about__image {
	height: auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.about__image._01 {
	width: calc((409 / 1280) * 100%);
	aspect-ratio: 409 / 409;
	margin-left: calc((90 / 1280) * 100vw);
	background-image: url('../image/index/about-image_02.webp');
}

.about__image._02 {
	width: calc((687 / 1280) * 100%);
	aspect-ratio: 687 / 485;
	background-image: url('../image/index/about-image_03.webp');
}

#menu {
	width: 100%;
	height: auto;
	padding: calc((50 / 1280) * 100vw) 0 calc((100 / 1280) * 100vw);
	background-image: url('../image/page-bg@pc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.menu__image {
	position: absolute;
}

.menu__image._01 {
	width: calc((334.34 / 1280) * 100vw);
	height: auto;
	top: calc((0 / 1280) * -100vw);
	left: calc((8.1 / 1280) * -100vw);
}

.menu__image_01__01 {
	width: 100%;
	height: auto;
	transform-origin: 0% 50%;
	animation: menu__image_01__01 5s infinite ease-in-out;
}

@keyframes menu__image_01__01 {

	0%,
	100% {
		transform: rotate(10deg);
	}

	50% {
		transform: rotate(17deg);
	}
}

.menu__image._02 {
	width: calc((185.29 / 1280) * 100vw);
	height: auto;
	aspect-ratio: 185.29 / 200.77;
	bottom: calc((183.3 / 1280)* -100vw);
	right: calc((29 / 1280) * 100vw);
}

.menu__image_02__01 {
	width: calc((60.45 / 185.29) * 100%);
	height: auto;
	position: absolute;
	top: 0;
	left: calc((3.2 / 185.29) * 100%);
	animation: menu__image_02__01 3s infinite ease-in-out;
	animation-delay: 0.3s;
}

.menu__image_02__02 {
	width: calc((45.33 / 185.29) * 100%);
	height: auto;
	position: absolute;
	top: calc((38.4 / 200.77) * 100%);
	right: 0;
	animation: menu__image_02__01 2.2s infinite ease-in-out;
}

@keyframes menu__image_02__01 {
	0% {
		transform: translateY(0);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translateY(-20px);
		opacity: 0;
	}
}

.menu__image_02__03 {
	width: calc((177 / 185.29) * 100%);
	height: auto;
	position: absolute;
	bottom: 0;
	left: 0;
}

.menu__inner {
	width: 100%;
	height: auto;
}

.menu__heading {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	height: auto;
	margin: 0 auto calc((104 / 1280) * 100vw);
}

.menu__heading__txt {
	width: auto;
	height: auto;
	margin: 0 auto;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: var(--30px);
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.28em;
	color: var(--color--black);
	position: relative;
}

.menu__heading__txt::before {
	content: 'menu';
	font-size: var(--16px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.05em;
	color: var(--color--gray);
	position: absolute;
	top: 0;
	right: calc((26 / 1280) * -100vw);
}

.menu__contents {
	width: 100%;
	height: auto;
}

.menu__course {
	width: 100%;
	height: auto;
	margin: 0 auto calc((150 / 1280) * 100vw);
	position: relative;
}

.course__list__container {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	row-gap: calc((100 / 1280) * 100vw);
	width: 85%;
	height: auto;
	margin: 0 auto;
}

.course__list__wrap {
	width: 45%;
	height: auto;
}

.course__name {
	width: 100%;
	height: auto;
	margin: 0 auto calc((30 / 1280) * 100vw);
}

.course__name__ja {
	width: 100%;
	height: auto;
	margin: 0 auto calc((6 / 1280) * 100vw);
	font-size: var(--26px);
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0em;
}

.course__name__en {
	width: 100%;
	height: auto;
	font-size: var(--13px);
	font-weight: 500;
	line-height: 1.46;
	letter-spacing: 0.06em;
}

.course__list {
	width: 100%;
	height: auto;
	margin: 0 auto calc((20 / 1280) * 100vw);
	counter-reset: number 0;
}

.course__list:nth-of-type(2) {
	padding-left: calc((26 / 1280) * 100vw);
}

.course__list__item {
	width: 100%;
	height: auto;
	padding-left: calc((52 / 1280) * 100vw);
	position: relative;
}

.course__list__item:not(:last-of-type) {
	margin-bottom: calc((20 / 1280) * 100vw);
}

.course__list__item.none {
	visibility: hidden;
	opacity: 0;
}

.course__list__item::before {
	display: block;
	counter-increment: number 1;
	content: ""counter(number) "";
	width: calc((30 / 1280) * 100vw);
	height: auto;
	font-size: var(--26px);
	font-weight: 500;
	line-height: 1.423;
	letter-spacing: 0em;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%, -50%);
}

.menu__cuisine_ja {
	font-size: var(--16px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
}

.menu__cuisine_en {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: var(--13px);
	font-weight: 500;
	line-height: 1.46;
	letter-spacing: 0.06em;
}

.course__price {
	width: 100%;
	height: auto;
	padding-right: calc((30 / 1280) * 100vw);
	margin: 0 auto;
	font-size: var(--26px);
	font-weight: 500;
	line-height: 1.423;
	letter-spacing: 0em;
	text-align: right;
}

.course__price small {
	display: inline-block;
	margin-left: calc((9 / 1280) * 100vw);
	font-size: var(--16px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
}

.course__note {
	text-align: right;
	width: 100%;
	height: auto;
	margin: calc((10 / 1280) * 100vw) auto 0;
	font-size: var(--14px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
}

.menu__rice_bowl {
	width: 100%;
	height: auto;
}

.menu__rice_bowl__heading {
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: calc((37.5 / 1280) * 100vw);
	width: calc((1000 / 1280) * 100vw);
	height: auto;
	margin: 0 auto calc((54 / 1280) * 100vw);
	font-size: var(--36px);
	font-weight: 400;
	line-height: 1.3;
	letter-spacing: 0.05em;
	text-align: center;
}

.menu__rice_bowl__heading::before,
.menu__rice_bowl__heading::after {
	content: '';
	display: block;
	flex: 1;
	height: 1px;
	margin-top: calc((5 / 1280) * 100vw);
	background-color: var(--color--black);
}

.rice_bowl__list__container {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	column-gap: calc((127 / 1280) * 100vw);
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.rice_bowl__list__wrap {
	width: auto;
	height: auto;
}

.rice_bowl__name {
	width: 100%;
	height: auto;
	margin: 0 auto calc((30 / 1280) * 100vw);
}

.rice_bowl__name__ja {
	width: 100%;
	height: auto;
	margin: 0 auto calc((5 / 1280) * 100vw);
	font-size: var(--26px);
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0em;
	text-align: center;
}

.rice_bowl__name__en {
	width: 100%;
	height: auto;
	font-size: var(--13px);
	font-weight: 500;
	line-height: 1.46;
	letter-spacing: 0.06em;
	text-align: center;
}

.rice_bowl__list {
	display: flex;
	justify-content: left;
	align-items: center;
	flex-wrap: wrap;
	column-gap: calc((40 / 1280) * 100vw);
	row-gap: calc((10 / 1280) * 100vw);
	width: calc((412 / 1280) * 100vw);
	height: auto;
	margin: 0 auto calc((26 / 1280) * 100vw);
}

.seafood .rice_bowl__list {
	width: calc((332 / 1280) * 100vw);
}

.rice_bowl__list__item {
	width: auto;
	height: auto;
}

.rice_bowl__list .rice_bowl__list__item:nth-of-type(odd) {
	width: calc((154 / 1280) * 100vw);
}

.seafood .rice_bowl__list .rice_bowl__list__item:nth-of-type(odd) {
	width: calc((160 / 1280) * 100vw);
}

.rice_bowl__cuisine_ja {
	font-size: var(--16px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
}

.rice_bowl__cuisine_en {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: var(--13px);
	font-weight: 500;
	line-height: 1.46;
	letter-spacing: 0.06em;
}

.rice_bowl__price {
	height: auto;
	margin: 0 auto;
	font-size: var(--26px);
	font-weight: 500;
	line-height: 1.423;
	letter-spacing: 0em;
	text-align: center;
}

.rice_bowl__price small {
	display: inline-block;
	margin-left: calc((9 / 1280) * 100vw);
	font-size: var(--16px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
}

#gallery {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.gallery__inner {
	width: 100%;
	height: auto;
}

.gallery__slider {
	width: 100%;
	height: auto;
	aspect-ratio: 1280 / 645;
}

.gallery_swiper {
	width: 100%;
	height: 100%;
}

.gallery_swiper_slide {
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.gallery_swiper_slide._01 {
	background-image: url('../image/index/gallery-swiper_image_01.webp');
}

.gallery_swiper_slide._02 {
	background-image: url('../image/index/gallery-swiper_image_02.webp');
}

.gallery_swiper_slide._03 {
	background-image: url('../image/index/gallery-swiper_image_03.webp');
}

.swiper-horizontal>.gallery_swiper-pagination {
	display: block;
	width: calc((50 / 1280) * 100%);
	height: auto;
	top: calc((20 / 1280) * 100vw);
	bottom: initial;
	right: calc((20 / 1280) * 100vw);
	left: initial;
	counter-reset: number 0;
}

.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	margin: 0 0 calc((10 / 1280) * 100vw);
	aspect-ratio: 1 / 1;
	border-radius: 9999px;
	border: solid 1px var(--color--white);
	background: initial;
	opacity: 1;
	position: relative;
	transition: 1.2s;
}

.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: rgba(255, 255, 255, 0.2);
}

.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet::before {
	counter-increment: number 1;
	content: counter(number) "";
	font-size: var(--20px);
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0em;
	color: var(--color--white);
	position: relative;
	z-index: 2;
}

.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet::after {
	content: '';
	display: block;
	width: calc((20 / 1280) * 100vw);
	height: 1px;
	background-color: var(--color--white);
	position: absolute;
	top: 50%;
	left: 100%;
	z-index: 2;
	transform: scale(0, 1);
	transform-origin: left center;
	transition: 1.2s;
}

.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
	transform: scale(1, 1);
}

.gallery__contents_wrap {
	width: 100%;
	height: auto;
	background-image: url('../image/page-bg@pc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.gallery__contents {
	width: 100%;
	height: auto;
}

.gallery__contents__inner {
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	width: auto;
	height: 100vh;
}

.gallery__image {
	height: auto;
	margin-right: calc((10 / 1280) * 100vw);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.gallery__image:last-of-type {
	margin-right: 0;
}

.gallery__image._01 {
	height: calc((530 / 800) * 100%);
	aspect-ratio: 375 / 530;
	background-image: url('../image/index/gallery-image_01@pc.webp');
	top: calc((50 / 800) * -100vh);
}

.gallery__image._02 {
	height: calc((399.09 / 800) * 100%);
	aspect-ratio: 282.38 / 399.09;
	background-image: url('../image/index/gallery-image_02@pc.webp');
	top: calc((79 / 800) * -100vh);
}

.gallery__image._03 {
	height: calc((489 / 800) * 100%);
	aspect-ratio: 346 / 489;
	background-image: url('../image/index/gallery-image_03@pc.webp');
	top: calc((19 / 800) * -100vh);
}

.gallery__image._04 {
	height: calc((489 / 800) * 100%);
	aspect-ratio: 346 / 489;
	background-image: url('../image/index/gallery-image_04@pc.webp');
	top: calc((60 / 800) * -100vh);
}

.gallery__image._05 {
	height: calc((593.68 / 800) * 100%);
	aspect-ratio: 420.07 / 593.68;
	background-image: url('../image/index/gallery-image_05@pc.webp');
	top: calc((19 / 800) * 100vh);
}

.gallery__image._06 {
	height: calc((489 / 800) * 100%);
	aspect-ratio: 346 / 489;
	background-image: url('../image/index/gallery-image_06@pc.webp');
	top: calc((60 / 800) * -100vh);
}

.gallery__image._07 {
	height: calc((499 / 800) * 100%);
	aspect-ratio: 345.55 / 499;
	background-image: url('../image/index/gallery-image_07@pc.webp');
	top: calc((12 / 800) * 100vh);
}

.gallery__image._08 {
	height: calc((593.68 / 800) * 100%);
	aspect-ratio: 420.07 / 593.68;
	background-image: url('../image/index/gallery-image_08@pc.webp');
	top: calc((19 / 800) * 100vh);
}

.gallery__image._09 {
	height: calc((489 / 800) * 100%);
	aspect-ratio: 277 / 489;
	background-image: url('../image/index/gallery-image_09@pc.webp');
	top: calc((60 / 800) * -100vh);
}

.gallery__image.ratio_none {
	aspect-ratio: initial;
}

#instagram {
	width: 100%;
	height: auto;
	background-image: url('../image/page-bg@pc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.instagram__inner {
	width: 100%;
	height: auto;
	padding: calc((182.9 / 1280) * 100vw) 0 calc((131.6 / 1280) * 100vw);
}

.instagram__contents {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	height: auto;
}

.instagram__heading {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: calc((355 / 1280) * 100%);
	height: auto;
}

.instagram__heading__txt {
	width: auto;
	height: auto;
	margin: 0 auto;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: var(--30px);
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.28em;
	color: var(--color--black);
	position: relative;
}

.instagram__heading__txt::before {
	content: 'instagram';
	font-size: var(--16px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.05em;
	color: var(--color--gray);
	position: absolute;
	top: 0;
	right: calc((26 / 1280) * -100vw);
}

.instagram__heading__btn_wrap {
	width: calc((111.5 / 1280) * 100vw);
	height: auto;
	aspect-ratio: 111.5 / 34.91;
}

.instagram__heading__btn {
	color: var(--color--black);
}

.instagram__image_loop {
	flex: 1;
	height: auto;
	overflow: hidden;
}

.instagram__image_loop__wrap {
	display: flex;
	width: calc((2280 / 1280) * 100vw);
	height: auto;
	white-space: nowrap;
	position: relative;
}

.instagram__image_loop__group {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding-right: calc((20 / 1280) * 100vw);
	height: auto;
	position: relative;
}

.instagram__image_loop__group._right {
	position: absolute;
	left: calc((2280 / 1280) * 100vw);
}

.instagram__image {
	width: calc((360 / 1280) * 100vw);
	height: auto;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

#news {
	width: 100%;
	height: auto;
	background-color: var(--color--dark_gray);
	position: relative;
}

.news__obj {
	position: absolute;
	z-index: 1;
	pointer-events: none;
}

.news__obj._01 {
	width: calc((253.27 / 1280) * 100vw);
	height: auto;
	top: calc((97.1 / 1280) * -100vw);
	left: calc((38 / 1280) * -100vw);
	transform: scale(-1, 1);
}

.news__obj._02 {
	width: calc((318.51 / 1280) * 100vw);
	height: auto;
	bottom: calc((83.4 / 1280) * -100vw);
	right: calc((40.2 / 1280) * -100vw);
	transform: scale(-1, 1);
}

.news__inner {
	width: calc((1100 / 1280) * 100%);
	height: auto;
	padding: calc((161.3 / 1280) * 100vw) 0 calc((131.2 / 1280) * 100vw);
	margin: 0 auto;
}

.news__contents {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	height: auto;
}

.news__heading {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: calc((170 / 1100) * 100%);
	height: auto;
	padding-top: calc((30 / 1280) * 100vw);
}

.news__heading__txt {
	width: auto;
	height: auto;
	margin: 0 auto calc((59 / 1280) * 100vw);
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: var(--30px);
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.28em;
	color: var(--color--white);
	position: relative;
}

.news__heading__txt::before {
	content: 'news';
	font-size: var(--16px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.05em;
	color: var(--color--gray);
	position: absolute;
	top: 0;
	right: calc((26 / 1280) * -100vw);
}

.news__heading__btn_wrap {
	width: calc((120 / 1280) * 100vw);
	height: auto;
	aspect-ratio: 120 / 35;
}

.news__heading__btn {
	color: var(--color--white);
}

.news__heading__btn .btn_txt {
	font-weight: 400;
}

.news__list_wrap {
	width: calc((876 / 1100) * 100%);
	height: auto;
}

.news__list {
	width: 100%;
	height: auto;
}

.news__list__item {
	width: 100%;
	height: auto;
}

.news__list__item {
	border-bottom: solid 1px var(--color--white);
}

.news__list__item__wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: auto;
	padding: calc((30 / 1280) * 100vw) 0 calc((29 / 1280) * 100vw);
	font-weight: 400;
	line-height: 1.43;
}

.news__list__item__date {
	width: calc((94 / 1280) * 100vw);
	height: auto;
	font-size: var(--16px);
	letter-spacing: 0.05em;
	color: var(--color--gray);
}

.news__list__item__ttl {
	flex: 1;
	height: auto;
	font-size: var(--14px);
	letter-spacing: 0.08em;
	color: var(--color--white);
}

@media all and (min-width: 1281px) {
	.hero_mask_obj._05 {
		display: none;
	}

	.hero_mask_obj._06 {
		display: none;
	}

	.hero_mask_obj._07 {
		display: none;
	}

	.hero_mask_obj._08 {
		display: none;
	}
}

@media all and (max-width: 1280px) {
	.hero_mask_obj._01 {
		width: calc((842 / 1280) * 100vw);
		aspect-ratio: 842 / 643.94;
		background-image: url('../image/index/mask-cloud_01.webp');
		top: calc((105.4 / 800) * -100%);
		left: calc((439 / 1280)* 100%);
		transform: translate(calc((1086 / 842) * -100%), 0%);
		z-index: 10;
	}

	.hero_mask_obj._02 {
		width: calc((786 / 1280) * 100vw);
		aspect-ratio: 786 / 601.94;
		background-image: url('../image/index/mask-cloud_02.webp');
		top: calc((99 / 800) * 100%);
		right: calc((120 / 1280) * -100%);
		transform: translate(calc((933 / 786) * 100%), 0%);
		z-index: 9;
	}

	.hero_mask_obj._03 {
		width: calc((651 / 1280) * 100vw);
		aspect-ratio: 651 / 565;
		background-image: url('../image/index/mask-cloud_03.webp');
		top: calc((193 / 800) * 100%);
		left: calc((152 / 1280) * -100%);
		transform: translate(calc((535 / 651) * -100%), 0%);
		z-index: 8;
	}

	.hero_mask_obj._05 {
		width: calc((1279 / 1280) * 100vw);
		aspect-ratio: 1279 / 742;
		background-image: url('../image/index/mask-cloud_05.webp');
		bottom: calc((307 / 800) * -100%);
		left: calc((70 / 1280) * 100%);
		transform: translate(0%, calc((498 / 742) * 100%));
		z-index: 6;
	}

	.hero_mask_obj._06 {
		width: calc((1535.64 / 1280) * 100vw);
		aspect-ratio: 1535.64 / 1126.92;
		background-image: url('../image/index/mask-cloud_06.webp');
		bottom: calc((338.5 / 800) * -100%);
		left: calc((156 / 1280) * 100%);
		transform: translate(calc((1080 / 1535.65) * 100%), 0%);
		z-index: 5;
	}

	.hero_mask_obj._07 {
		width: calc((1535.65 / 1280) * 100vw);
		aspect-ratio: 1535.65 / 1126.94;
		background-image: url('../image/index/mask-cloud_07.webp');
		top: calc((538.9 / 800) * -100%);
		left: calc((140 / 1280) * -100%);
		transform: translate(0%, calc((515 / 1126.94) * -100%));
		z-index: 4;
	}

	.hero_mask_obj._08 {
		width: calc((503 / 1280) * 100vw);
		aspect-ratio: 503 / 605;
		background-image: url('../image/index/mask-cloud_08.webp');
		top: calc((17 / 800) * -100%);
		right: calc((503 / 1280) * -100%);
		transform: translate(calc((519 / 503) * 100%), 0%);
		z-index: 3;
	}
}

@media all and (min-width: 769px) and (max-width: 1280px) {
	.cloud_mask_obj._01 {
		min-width: 842px;
	}

	.cloud_mask_obj._02 {
		min-width: 786px;
	}

	.cloud_mask_obj._03 {
		min-width: 651px;
	}

	.cloud_mask_obj._04 {
		min-width: 540px;
	}

	.cloud_mask_obj._05 {
		min-width: 1279px;
	}

	.cloud_mask_obj._06 {
		min-width: 1535.64px;
	}

	.cloud_mask_obj._07 {
		min-width: 1535.65px;
	}

	.cloud_mask_obj._08 {
		min-width: 503px;
	}

	.cloud_mask_obj._09 {
		min-width: 261px;
	}

	.hero_mask_obj._01 {
		min-width: 842px;
	}

	.hero_mask_obj._02 {
		min-width: 786px;
	}

	.hero_mask_obj._03 {
		min-width: 651px;
	}

	.hero_mask_obj._05 {
		min-width: 1279px;
	}

	.hero_mask_obj._06 {
		min-width: 1535.64px;
	}

	.hero_mask_obj._07 {
		min-width: 1535.65px;
	}

	.hero_mask_obj._08 {
		min-width: 503px;
	}
}

@media all and (min-width: 769px) {
	.news__heading__btn_wrap._sp {
		display: none;
	}
}

@media all and (max-width: 768px) {
	.cloud_mask__inner {
		height: auto;
		aspect-ratio: 430 / 932;
	}

	.cloud_mask_obj._01 {
		width: calc((438.21 / 430) * 100vw);
		top: calc((187.4 / 932) * 100%);
		left: auto;
		right: calc((62.7 / 430) * -100%);
		transform: translate(calc((528 / 438.21) * -100%), 0%);
	}

	.cloud_mask_obj._02 {
		width: calc((409.06 / 430) * 100vw);
		top: calc((322.6 / 932) * 100%);
		right: calc((86.9 / 430) * -100%);
		transform: translate(calc((337 / 409.06) * 100%), 0%);
	}

	.cloud_mask_obj._03 {
		width: calc((378.95 / 430) * 100vw);
		top: calc((240.2 / 932) * 100%);
		left: calc((106.3 / 430) * -100%);
		transform: translate(calc((255 / 338.95)* -100%), 0%);
	}

	.cloud_mask_obj._05 {
		width: calc((667 / 430) * 100vw);
		bottom: calc((106 / 932) * -100%);
		left: calc((220 / 430) * -100%);
		transform: translate(0%, calc((352 / 387) * 100%));
	}

	.cloud_mask_obj._06 {
		width: calc((799.21 / 430) * 100vw);
		bottom: calc((-35 / 932)* 100%);
		left: auto;
		right: calc((226.9 / 430) * -100%);
		transform: translate(calc((591 / 799.21) * 100%), 0%);
	}

	.cloud_mask_obj._07 {
		width: calc((799.21 / 430) * 100vw);
		top: calc((145.2 / 932) * -100%);
		left: calc((87.2 / 430) * -100%);
		transform: translate(0%, -100%);
	}

	.cloud_mask_obj._08 {
		width: calc((261.13 / 430) * 100vw);
		top: calc((11.4 / 932) * -100%);
		right: calc((17 / 430) * -100%);
		transform: translate(calc((266 / 261.13) * 100%), 0%);
	}

	.loading__logo {
		width: 130px;
		height: auto;
		aspect-ratio: 250 / 247.45;
	}

	.op__container {
		height: 100vh;
	}

	.op__makimono {
		height: 100vh;
		transform: translate(0%, -5vh);
	}

	.op__makimono__wrap {
		height: calc(340px * 0.7);
	}

	.op__makimono__kemuri._01 {
		width: calc(101px * 0.7);
	}

	.op__makimono__kemuri._02 {
		width: calc(96px * 0.7);
	}

	.op__makimono_scroll {
		transform: translate(-50%, calc((((300 / 667) * 100vh) * 0.7) + 100%));
	}

	.op__makimono_scroll__txt {
		height: calc((23 / 667) * 100vh);
	}

	.op__makimono_scroll__arrow {
		width: calc((24.12 / 667) * 100vh);
		margin: calc((7.7 / 667) * 100vh) auto 0;
	}

	.op__makimono_skip {
		left: calc((25 / 375) * 100%);
		transform: translate(0%, calc((((300 / 667) * 100vh) * 0.7) + 100%));
	}

	.op__makimono_skip__txt {
		height: calc((23 / 667) * 100vh);
	}

	.op__makimono_skip__arrow {
		width: calc((24.12 / 667) * 100vh);
		margin: calc((12.7 / 667) * 100vh) auto 0;
	}

	.op__tominojo {
		top: 60px;
		right: 15px;
	}
	.op__tominojo__link {
		width: calc((65 / 375) * 100vw);
		max-width: 95px;
	}

	.op__other_link {
		bottom: 3px;
		right: 15px;
	}
	
	.op__other_link__inner {
		gap: 10px;
	}
	
	.op__other_link__item {
		width: calc((65 / 375) * 100vw);
		max-width: 95px;
		height: auto;
	}

	.op__story {
		transform: translate(0%, -5vh);
		/* z-index: 2; */
		pointer-events: none;
	}

	.op__story__wrap {
		height: calc(292px * 0.7);
	}

	.op__story__container__inner {
		min-width: calc(492px * 0.7);
		min-height: calc(324px * 0.7);
	}

	.op__story__contents {
		display: block;
	}

	.op__story__contents__inner {
		width: 100vw;
		height: 100vh;
	}

	.op__story__contents__wrap {
		width: 100vw;
	}

	.op__story__contents__wrap::before {
		font-size: 24px;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0em;
		color: var(--color--black);
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 10;
		pointer-events: none;
	}

	.op__story__contents__obj,
	.op__story__contents__txt_wrap,
	.op__story__contents__main {
		transition: .8s;
		position: absolute;
		opacity: 0;
	}

	.op__story__contents__txt_wrap {
		width: fit-content;
		visibility: initial;
	}

	.show.op__story__contents__txt_wrap {
		visibility: initial;
		opacity: 1;
	}

	.op__story__contents__txt {
		filter: blur(0px);
		transition: 1.4s;
		opacity: 1;
	}

	.op__story__contents__txt._ja {
		font-size: 20px;
		line-height: 2;
	}

	.op__story__contents__txt._en {
		font-size: 13px;
	}

	.op__story__contents__obj._01 {
		width: auto;
		height: calc((227.75 / 667) * 100%);
		bottom: calc((670 / 800) * 100%);
		right: calc((44.2 / 375) * -100%);
		transform: translate(4vw, -2vh);
	}

	.step1 .op__story__contents__obj._01 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._02 {
		height: calc((210.21 / 667) * 100%);
		bottom: calc((670 / 800) * 100%);
		right: calc((19.9 / 375) * -100%);
		transform: translate(1vw, -1vh);
	}

	.step1 .op__story__contents__obj._02 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._03 {
		height: calc((178.13 / 667) * 100%);
		bottom: calc((641 / 800) * 100%);
		right: calc((10 / 375) * -100%);
		transform: translate(2vw, 0vh);
	}

	.step1 .op__story__contents__obj._03 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__main._01 {
		height: calc((197.18 / 667) * 100%);
		bottom: calc((41.2 / 800) * 100%);
		right: calc((9.8 / 375 * 100%));
		transform: translate(0vw, 2vh);
	}

	.step1 .op__story__contents__main._01 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._04 {
		height: calc((147.56 / 667) * 100%);
		bottom: calc((13.6 / 800) * -100%);
		right: calc((19 / 375 * -100%));
		transform: translate(2vw, 1vh);
	}

	.step1 .op__story__contents__obj._04 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._05 {
		height: calc((328.05 / 667) * 100%);
		bottom: calc((194.6 / 800) * -100%);
		right: calc((19 / 375 * 100%));
		transform: translate(0vw, 1vh);
	}

	.step1 .op__story__contents__obj._05 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__txt_wrap._01 {
		top: calc((190 / 800) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step1 .op__story__contents__txt_wrap._01 {
		opacity: 1;
	}

	.op__story__contents__txt_wrap._01 .op__story__contents__txt._en {
		margin: calc((16 / 800) * 100vh) auto 0;
	}

	.op__story__contents__obj._06 {
		display: none;
		height: calc((219.54 / 667) * 100%);
		top: calc((109.8 / 800) * -100%);
		right: calc((53.6 / 375 * 100%));
		transform: translate(2vw, -1vh);
	}

	.op__story__contents__main._02 {
		height: calc((153.39 / 667) * 100%);
		bottom: calc((7.7 / 800) * 100%);
		left: calc((12.5 / 375) * 100%);
		right: auto;
		transform: translate(0vw, 2vh);
	}

	.step1 .op__story__contents__main._02 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._07 {
		height: calc((338.44 / 667) * 100%);
		bottom: calc((169.2 / 800) * -100%);
		right: calc((37 / 375) * -100%);
		transform: translate(0vw, 2vh);
	}

	.step2 .op__story__contents__obj._07 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._08 {
		display: none;
		height: calc((243.51 / 667) * 100%);
		top: calc((43.2 / 800) * -100%);
		right: calc((45.5 / 375) * -100%);
		transform: translate(2vw, -1vh);
	}

	.op__story__contents__main._03 {
		height: calc((388.63 / 667) * 100%);
		top: calc((93.4 / 800) * -100%);
		right: calc((17.4 / 375) * -100%);
		transform: translate(-4vw, 0vh);
	}

	.step2 .op__story__contents__main._03 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._10 {
		display: none;
		height: calc((327.86 / 667) * 100%);
		bottom: calc((140.9 / 800) * -100%);
		right: calc((48.8 / 375) * -100%);
		transform: translate(-2vw, 2vh);
	}

	.op__story__contents__main._04 {
		display: none;
		height: calc((321.97 / 667) * 100%);
		bottom: calc((40 / 800) * -100%);
		right: calc((153 / 375) * 100%);
		transform: translate(0vw, 5vh);
	}

	.op__story__contents__obj._09 {
		display: none;
		height: calc((165.76 / 667) * 100%);
		bottom: calc((58.2 / 800) * -100%);
		right: calc((31 / 375) * -100%);
		transform: translate(0vw, 2vh);
	}

	.op__story__contents__obj._11 {
		height: calc((445.43 / 667) * 100%);
		top: calc((297 / 800) * -100%);
		right: auto;
		left: 0;
		transform: translate(-2vw, -10vh);
	}

	.step2 .op__story__contents__obj._11 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._12 {
		height: calc((193.83 / 667) * 100%);
		top: calc((83.2 / 800) * -100%);
		right: auto;
		left: calc((57 / 375) * -100%);
		transform: translate(-2vw, -6vh);
	}

	.step2 .op__story__contents__obj._12 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__txt_wrap._02 {
		width: calc((150 / 375) * 100vw);
		top: calc((190 / 800) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step2 .op__story__contents__txt_wrap._02 {
		opacity: 1;
	}

	.op__story__contents__txt_wrap._02 .op__story__contents__txt._en {
		margin: calc((16 / 800) * 100vh) auto 0;
		position: initial;
		transform: translate(0%, 0%);
	}

	.op__story__contents__main._05 {
		height: calc((261.13 / 667) * 100%);
		bottom: calc((25 / 800) * 100%);
		right: calc((179 / 375) * 100%);
		transform: translate(50%, 0%);
	}

	.step2 .op__story__contents__main._05 {
		opacity: 1;
	}

	.op__story__contents__main_05_01 {
		animation: op__story__contents__main_05_01 1s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;
	}

	.op__story__contents__obj._13 {
		height: calc((255.8 / 667) * 100%);
		top: calc((173 / 800) * -100%);
		right: calc((123.6 / 375) * -100%);
		transform: translate(-2vw, -7vh);
	}

	.step3 .op__story__contents__obj._13 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__main._06 {
		height: calc((253.22 / 667) * 100%);
		bottom: calc((40 / 800) * 100%);
		right: calc((15 / 375) * 100%);
		transform: translate(0vw, 30vh);
		transition-delay: 0s;
	}

	.step3 .op__story__contents__main._06 {
		transform: translate(0%, 0%);
		opacity: 1;
		transition-delay: .4s;
	}

	.active.op__story__contents__main_06_02 {
		animation-delay: .8s;
		opacity: 0;
	}

	.op__story__contents__obj._14 {
		height: calc((205.76 / 667) * 100%);
		bottom: calc((96.8 / 800) * -100%);
		right: calc((62 / 375) * -100%);
		transform: translate(-2vw, 8vh);
	}

	.step3 .op__story__contents__obj._14 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._15 {
		height: calc((217.95 / 667) * 100%);
		top: calc((147.5 / 800) * -100%);
		right: calc((105.7 / 375) * 100%);
		transform: translate(-2vw, -4vh);
	}

	.step3 .op__story__contents__obj._15 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__txt_wrap._03 {
		width: calc((200 / 375) * 100vw);
		top: calc((190 / 800) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step3 .op__story__contents__txt_wrap._03 {
		opacity: 1;
	}

	.op__story__contents__txt_wrap._03 .op__story__contents__txt._en {
		margin: calc((16 / 800) * 100vh) auto 0;
		position: initial;
		transform: translate(0%, 0%);
	}

	.op__story__contents__obj._16 {
		height: calc((219.41 / 667) * 100%);
		bottom: calc((98.4 / 800) * -100%);
		right: calc((117.8 / 375) * 100%);
		transform: translate(-2vw, 3vh);
	}

	.step3 .op__story__contents__obj._16 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._18 {
		height: calc((250.74 / 667) * 100%);
		bottom: calc((128.7 / 800) * -100%);
		right: calc((162.3 / 375) * 100%);
		transform: translate(5vw, 4vh);
	}

	.step3 .op__story__contents__obj._18 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._17 {
		height: calc((231.08 / 667) * 100%);
		bottom: auto;
		top: calc((89.2 / 800) * -100%);
		right: calc((32.7 / 375) * -100%);
		transform: translate(5vw, 1vh);
	}

	.step4 .op__story__contents__obj._17 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._19 {
		height: calc((175.8 / 667) * 100%);
		top: calc((77.2 / 800) * -100%);
		right: auto;
		left: calc((92.4 / 375) * -100%);
		transform: translate(0vw, -4vh);
	}

	.step4 .op__story__contents__obj._19 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__txt_wrap._04 {
		top: calc((190 / 800) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step4 .op__story__contents__txt_wrap._04 {
		opacity: 1;
	}

	.op__story__contents__txt_wrap._04 .op__story__contents__txt._en {
		margin: calc((16 / 800) * 100vh) auto 0;
	}

	.op__story__contents__obj._20 {
		height: calc((226.01 / 667) * 100%);
		top: auto;
		bottom: calc((109.8 / 800) * -100%);
		right: calc((65.5 / 375) * -100%);
		transform: translate(-3vw, 5vh);
	}

	.step4 .op__story__contents__obj._20 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._21 {
		height: calc((366.48 / 667) * 100%);
		top: calc((258.7 / 800) * -100%);
		right: calc((175 / 375) * -100%);
		transform: translate(-3vw, -2vh);
		z-index: 6;
	}

	.op__story__contents__obj._23 {
		height: calc((227.95 / 667) * 100%);
		bottom: calc((86 / 800) * -100%);
		right: auto;
		left: calc((49.5 / 375) * -100%);
		transform: translate(-2vw, 4vh);
	}

	.step4 .op__story__contents__obj._23 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.step5 .op__story__contents__obj._21 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__ten_no_meshi {
		height: calc((667 / 667) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step5 .op__story__contents__obj._21 {
		opacity: 1;
	}

	.op__story__contents__ten_no_meshi__ttl {
		top: calc((120 / 800) * 100%);
		transform: translate(-50%, 0%);
	}

	.op__story__contents__ten_no_meshi__ttl__logo {
		width: auto;
		height: calc((202.03 / 667) * 100vh);
		margin-right: calc((25 / 375) * 100vw);
	}

	.op__story__contents__ten_no_meshi__ttl__logo img {
		width: auto;
		height: 100%;
	}

	.op__story__contents__ten_no_meshi__ttl__en {
		position: absolute;
		bottom: calc((64 / 800) * -100vh);
		left: 50%;
		transform: translate(-50%, 0%);
	}

	.op__story__contents__ten_no_meshi__tendon {
		height: calc((266.51 / 667) * 100%);
		bottom: calc((28.5 / 800) * 100vh);
		transform: translate(-50%, 4vh);
	}

	.op__story__contents__ten_no_meshi__hand {
		bottom: calc((64 / 800)* -100vh);
	}

	.op__story__contents__obj._22 {
		height: calc((163.1 / 667) * 100%);
		top: calc((51 / 800) * -100%);
		right: auto;
		left: calc((176.5 / 375) * -100%);
		transform: translate(3vw, -2vh);
		z-index: 6;
	}

	.step5 .op__story__contents__obj._22 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._24 {
		height: calc((237.67 / 667) * 100%);
		top: calc((118.8 / 800) * -100%);
		right: calc((84.3 / 375) * -100%);
		transform: translate(2vw, 1vh);
	}

	.step6 .op__story__contents__obj._24 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__txt_wrap._05 {
		width: calc((200 / 375) * 100vw);
		top: calc((190 / 800) * 100%);
		right: 50%;
		transform: translate(50%, 0%);
	}

	.step6 .op__story__contents__txt_wrap._05 {
		opacity: 1;
	}

	.op__story__contents__txt_wrap._05 .op__story__contents__txt._en {
		margin: calc((16 / 800) * 100vh) auto 0;
	}

	.op__story__contents__obj._25 {
		height: calc((247 / 667) * 100%);
		bottom: calc((96 / 800) * -100%);
		right: calc((36 / 375) * -100%);
		transform: translate(-4vw, -1vh);
	}

	.step6 .op__story__contents__obj._25 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._26 {
		height: calc((345.89 / 667) * 100%);
		bottom: calc((126.9 / 800) * -100%);
		right: auto;
		left: calc((14.8 / 375) * -100%);
		transform: translate(-3vw, 2vh);
	}

	.step6 .op__story__contents__obj._26 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._27 {
		height: calc((213.16 / 667) * 100%);
		top: calc((83 / 800) * -100%);
		left: auto;
		right: calc((140 / 375) * -100%);
		transform: translate(-3vw, 0vh);
	}

	.step7 .op__story__contents__obj._27 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._28 {
		height: calc((328.38 / 667) * 100%);
		top: calc((182.5 / 800) * -100%);
		left: auto;
		right: calc((132.6 / 375) * -100%);
		transform: translate(-2vw, 0vh);
	}

	.step7 .op__story__contents__obj._28 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._29 {
		height: calc((213.17 / 667) * 100%);
		top: calc((83 / 800) * -100%);
		left: calc((140 / 375) * -100%);
		transform: translate(3vw, 0vh);
	}

	.step7 .op__story__contents__obj._29 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._30 {
		height: calc((328.38 / 667) * 100%);
		top: calc((182.5 / 800) * -100%);
		left: calc((132.6 / 375) * -100%);
		transform: translate(2vw, 0vh);
	}

	.step7 .op__story__contents__obj._30 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__logo {
		height: auto;
		aspect-ratio: initial;
		top: calc((370 / 800) * 100%);
	}

	.step7 .op__story__contents__logo {
		opacity: 1;
	}

	.op__story__contents__logo__mark {
		height: 192px;
		margin: 0 auto 30px;
	}

	.op__story__contents__logo__other_link {
		gap: 10px;
	}

	.op__story__contents__logo__other_link__item {
		width: 80px;
	}

	.op__story__contents__obj._31 {
		height: calc((210.51 / 667) * 100%);
		bottom: calc((70.3 / 800) * -100%);
		left: calc((57.6 / 375) * -100%);
		transform: translate(3vw, 0vh);
	}

	.step7 .op__story__contents__obj._31 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._32 {
		height: calc((210.51 / 667) * 100%);
		bottom: calc((70.3 / 800) * -100%);
		left: auto;
		right: calc((57.6 / 375) * -100%);
		transform: translate(-3vw, 0vh);
	}

	.step7 .op__story__contents__obj._32 {
		transform: translate(0%, 0%);
		opacity: 1;
	}

	.op__story__contents__obj._33 {
		display: none;
	}

	.op__story__first_txt_wrap {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		transition: opacity .6s;
		opacity: 0;
	}

	.op__story__first_txt_wrap.show {
		opacity: 1;
	}

	.op__story__first_txt {
		white-space: nowrap;
		color: var(--color--black);
	}

	.op__story__first_txt._ja {
		margin: 0 auto calc((16 / 800)* 100vh);
		font-size: 20px;
	}

	.op__story__first_txt._en {
		font-size: 13px;
	}

	.op__story__cloud {
		min-width: initial !important;
	}

	.op__story__wrap__bg__inner {
		width: 100%;
		height: 300%;
		background-image: url('../image/index/story-bg@sp.webp');
	}

	#hero_mask {
		height: 100vh;
	}

	.hero_mask__inner {
		height: auto;
		aspect-ratio: 430 / 932;
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.hero_mask_obj._01 {
		width: calc((438.21 / 430) * 100vw);
		top: calc((187.4 / 932) * 100%);
		left: auto;
		right: calc((62.7 / 430) * -100%);
		transform: translate(calc((528 / 438.21) * -100%), 0%);
	}

	.hero_mask_obj._02 {
		width: calc((409.06 / 430) * 100vw);
		bottom: auto;
		top: calc((322.6 / 932) * 100%);
		right: calc((86.9 / 430) * -100%);
		left: auto;
		transform: translate(calc((337 / 409.06) * 100%), 0%);
	}

	.hero_mask_obj._03 {
		width: calc((378.95 / 430) * 100vw);
		top: calc((240.2 / 932) * 100%);
		left: calc((106.3 / 430) * -100%);
		transform: translate(calc((255 / 338.95)* -100%), 0%);
	}

	.hero_mask_obj._05 {
		width: calc((667 / 430) * 100vw);
		bottom: calc((106 / 932) * -100%);
		left: calc((220 / 430) * -100%);
		transform: translate(0%, calc((352 / 387) * 100%));
	}

	.hero_mask_obj._06 {
		width: calc((799.21 / 430) * 100vw);
		bottom: calc((-35 / 932)* 100%);
		left: auto;
		right: calc((226.9 / 430) * -100%);
		transform: translate(calc((591 / 799.21) * 100%), 0%);
	}

	.hero_mask_obj._07 {
		width: calc((799.21 / 430) * 100vw);
		top: calc((145.2 / 932) * -100%);
		left: calc((87.2 / 430) * -100%);
		transform: translate(0%, -100%);
	}

	.hero_mask_obj._08 {
		width: calc((261.13 / 430) * 100vw);
		top: calc((11.4 / 932) * -100%);
		right: calc((17 / 430) * -100%);
		transform: translate(calc((266 / 261.13) * 100%), 0%);
	}

	#hero {
		height: auto;
		aspect-ratio: 375 / 482;
	}

	.hero__logo {
		width: calc((112.38 / 375) * 100%);
	}

	.hero__cloud {
		height: auto !important;
	}

	.hero__cloud._01 {
		width: calc((211.72 / 375) * 100%);
		height: auto;
		top: calc((69.6 / 482) * -100%);
		right: calc((64.3 / 375) * -100%);
	}

	.hero__cloud._02 {
		width: calc((147.57 / 375) * 100%);
		top: calc((19.2 / 482) * -100%);
		right: calc((32.9 / 375) * -100%);
	}

	.hero__cloud._03 {
		width: calc((167.76 / 375) * 100%);
		bottom: calc((9.6 / 482) * -100%);
		right: calc((2.8 / 375) * -100%);
	}

	.hero__cloud._04 {
		width: calc((146.82 / 375) * 100%);
		bottom: calc((55 / 482) * -100%);
		right: calc((0.6 / 375) * 100%);
	}

	.hero__cloud._05 {
		width: calc((371.68 / 375) * 100%);
		top: calc((127.3 / 482) * -100%);
		left: calc((74.6 / 375) * -100%);
		transform: rotate(3deg);
	}

	.hero__cloud._06 {
		display: block;
		width: calc((151.5 / 375) * 100%);
		top: calc((74.3 / 482) * 100%);
		left: calc((59.7 / 375) * -100%);
		transform: rotate(-12deg);
	}

	.hero__cloud._07 {
		width: calc((119 / 375) * 100%);
		bottom: calc((3 / 482) * 100%);
		left: calc((12 / 375) * -100%);
	}

	.hero__cloud._08 {
		width: calc((224.67 / 375) * 100%);
		bottom: calc((55 / 482) * -100%);
		left: calc((25.1 / 375) * -100%);
		transform: scale(1, -1);
	}

	.hero__cloud img {
		width: 100%;
		height: auto;
	}

	#about {
		background-image: url('../image/page-bg@sp.webp');
	}

	.about__inner {
		padding: calc((98 / 375) * 100vw) 0 calc((25 / 375) * 100vw);
	}

	.about__contents {
		display: block;
	}

	.about__contents__details {
		display: block;
		width: 100%;
		padding-top: 0;
	}

	.about__contents__logo {
		width: calc((161 / 375) * 100vw);
		margin-left: auto;
		margin-right: auto;
		margin-bottom: calc((46 / 375) * 100vw);
	}

	.about__contents__details__txt_ja {
		padding-top: 0;
		margin: 0 auto;
		font-size: 14px;
		line-height: 3;
	}

	.about__contents__details__txt_en {
		width: calc((315 / 375) * 100%);
		max-width: 515px;
		padding-right: 0;
		margin-top: 40px;
		margin-left: auto;
		margin-right: auto;
		font-size: 14px;
	}

	.about__contents__image {
		width: calc((345 / 375) * 100vw);
		aspect-ratio: 345 / 244;
		margin: calc((68 / 375) * 100vw) 0 0 auto;
		background-image: url('../image/index/about-image_03.webp');
	}

	.about__image_wrap {
		display: block;
		aspect-ratio: 375 / 391;
		margin-top: 0;
		position: relative;
	}

	.about__image {
		position: absolute;
	}

	.about__image._01 {
		width: calc((193 / 375) * 100vw);
		aspect-ratio: 193 / 227;
		margin-left: 0;
		background-image: url('../image/index/about-image_01.webp');
		top: calc((40 / 375) * 100vw);
		left: 0;
		z-index: 2;
	}

	.about__image._02 {
		width: calc((198 / 375) * 100vw);
		aspect-ratio: 198 / 198;
		background-image: url('../image/index/about-image_02.webp');
		bottom: calc((25 / 375) * 100vw);
		right: 0;
		z-index: 1;
	}

	#menu {
		padding: 45px 0 calc((52.5 / 375) * 100vw);
		background-image: url('../image/page-bg@sp.webp');
	}

	.menu__image._01 {
		width: 223.02px;
		top: 0px;
		left: calc((21 / 375) * -100vw);
	}

	@keyframes menu__image_01__01 {

		0%,
		100% {
			transform: rotate(0deg);
		}

		50% {
			transform: rotate(7deg);
		}
	}

	.menu__image._02 {
		width: 112.14px;
		aspect-ratio: 112.14 / 121.77;
		top: -20px;
		left: calc((7 / 375) * -100vw);
		bottom: auto;
		right: auto;
		transform: translate(0%, -100%);
	}

	.menu__inner {
		width: 100%;
		height: auto;
	}

	.menu__heading {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
		height: auto;
		padding: 0 52px 0 0;
		margin: 0 auto 100px;
	}

	.menu__heading__txt {
		margin: 0 0 0 auto;
		font-size: 24px;
		line-height: 1.8;
		letter-spacing: 0.3em;
	}

	.menu__heading__txt::before {
		font-size: 12px;
		top: 10px;
		right: -24px;
	}

	.menu__contents {
		width: 85%;
		margin: 0 auto;
	}

	.menu__course {
		margin: 0 auto 72px;
	}

	.course__list__container {
		display: block;
		width: 100%;
		padding-left: 0;
	}

	.course__list__wrap {
		width: 100%;
	}

	.course__list__wrap:not(:last-of-type) {
		margin-bottom: 65px;
	}

	.course__name {
		margin: 0 auto 22px;
	}

	.course__name__ja {
		margin: 0 auto 4px;
		font-size: 26px;
	}

	.course__name__en {
		font-size: 13px;
	}

	.course__list {
		margin: 0 auto 20px;
	}

	.course__list__item {
		padding-left: 43px;
	}

	.course__list__item.none {
		display: none;
	}

	.course__list__item:not(:last-of-type) {
		margin-bottom: 10px;
	}

	.course__list__item::before {
		width: 24px;
		font-size: 22px;
		line-height: 1.4545;
		margin-right: 22px;
	}

	.menu__cuisine_ja {
		font-size: 16px;
	}

	.menu__cuisine_en {
		font-size: 13px;
	}

	.course__price {
		width: 100%;
		padding-right: 0;
		margin: 0 auto;
		font-size: 26px;
	}

	.course__price small {
		margin-left: 9px;
		font-size: 16px;
	}

	.menu__rice_bowl__heading {
		column-gap: 7.5px;
		width: 100%;
		margin: 0 auto 48px;
		font-size: 26px;
		letter-spacing: 0em;
	}

	.menu__rice_bowl__heading::before,
	.menu__rice_bowl__heading::after {
		margin-top: 3px;
	}

	.rice_bowl__list__container {
		display: block;
	}

	.rice_bowl__list__wrap {
		width: 100%;
	}

	.rice_bowl__list__wrap:not(:last-of-type) {
		margin-bottom: 60px;
	}

	.rice_bowl__name {
		margin: 0 auto 30px;
	}

	.rice_bowl__name__ja {
		margin: 0 auto 6px;
		font-size: 26px;
		text-align: left;
	}

	.rice_bowl__name__en {
		font-size: 13px;
		text-align: left;
	}

	.rice_bowl__list {
		column-gap: 36px;
		row-gap: 10px;
		width: 328px;
		margin: 0 auto 12px;
	}

	.seafood .rice_bowl__list {
		width: 328px;
	}

	.rice_bowl__list .rice_bowl__list__item:nth-of-type(odd) {
		width: 156px;
	}

	.seafood .rice_bowl__list .rice_bowl__list__item:nth-of-type(odd) {
		width: 156px;
	}

	.rice_bowl__cuisine_ja {
		font-size: 16px;
	}

	.rice_bowl__cuisine_en {
		font-size: 13px;
	}

	.rice_bowl__price {
		font-size: 26px;
		text-align: right;
	}

	.rice_bowl__price small {
		margin-left: 9px;
		font-size: 16px;
	}

	.gallery__slider {
		aspect-ratio: 375 / 189;
	}

	.swiper-horizontal>.gallery_swiper-pagination {
		width: calc((28 / 375) * 100%);
		top: calc((6 / 375) * 100vw);
		right: calc((11 / 375) * 100vw);
	}

	.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet {
		margin: 0 0 calc((5.6 / 375) * 100vw);
	}

	.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet::before {
		font-size: var(--12px);
	}

	.swiper-horizontal>.gallery_swiper-pagination .swiper-pagination-bullet::after {
		width: calc((11 / 375) * 100vw);
	}

	.gallery__contents_wrap {
		background-image: url('../image/page-bg@sp.webp');
	}

	.gallery__contents {
		padding: calc((50 / 375) * 100vw) 0;
	}

	.gallery__contents__inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		flex-wrap: wrap;
		row-gap: calc((14.4 / 375) * 100vw);
		width: 100%;
		height: auto;
	}

	.gallery__image {
		margin-right: initial;
		aspect-ratio: initial !important;
		top: initial !important;
	}

	.gallery__image._01 {
		width: calc((193.66 / 375) * 100vw);
		height: calc((273.7 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_01@sp.webp');
	}

	.gallery__image._02 {
		width: calc((166.95 / 375) * 100vw);
		height: calc((235.95 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_02@sp.webp');
	}

	.gallery__image._03 {
		width: calc((157.18 / 375) * 100vw);
		height: calc((220.72 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_03@sp.webp');
	}

	.gallery__image._04 {
		width: calc((203.47 / 375) * 100vw);
		height: calc((220.72 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_04@sp.webp');
	}

	.gallery__image._05 {
		width: calc((216.93 / 375) * 100vw);
		height: calc((306.58 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_05@sp.webp');
	}

	.gallery__image._06 {
		width: calc((143.63 / 375) * 100vw);
		height: calc((306.58 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_06@sp.webp');
	}

	.gallery__image._07 {
		width: calc((375 / 375) * 100vw);
		height: calc((545.1 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_07@sp.webp');
	}

	.gallery__image._08 {
		width: calc((216.93 / 375) * 100vw);
		height: calc((306.58 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_08@sp.webp');
	}

	.gallery__image._09 {
		width: calc((143.72 / 375) * 100vw);
		height: calc((252.52 / 375) * 100vw);
		background-image: url('../image/index/gallery-image_09@sp.webp');
		top: calc((54.1 / 375) * -100vw) !important;
	}

	.gallery__image.ratio_none {
		aspect-ratio: initial;
	}

	#instagram {
		background-image: url('../image/page-bg@sp.webp');
	}

	.instagram__inner {
		padding: calc((48 / 375) * 100vw) 0 calc((118 / 375) * 100vw);
	}

	.instagram__contents {
		display: block;
	}

	.instagram__heading {
		display: block;
		width: calc((315 / 375) * 100%);
		margin: 0 auto 28px;
	}

	.instagram__heading__txt {
		width: 100%;
		-webkit-writing-mode: initial;
		-moz-writing-mode: initial;
		-ms-writing-mode: initial;
		-ms-writing-mode: initial;
		writing-mode: initial;
		font-size: 24px;
		line-height: 1.9;
		letter-spacing: 0.14em;
	}

	.instagram__heading__txt::before {
		-webkit-writing-mode: vertical-rl;
		-moz-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-ms-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		font-size: 12px;
		top: 50%;
		right: 0;
		transform: translate(0%, -50%);
	}

	.instagram__heading__btn_wrap {
		width: 111.5px;
		aspect-ratio: 111.5 / 34.91;
		margin: 15.3px 0 0 auto;
	}

	.instagram__image_loop {
		flex: initial;
		width: 100%;
	}

	.instagram__image_loop__wrap {
		width: calc((960 / 375) * 100vw);
	}

	.instagram__image_loop__group {
		padding-right: calc((10 / 375) * 100vw);
		animation: infinity_scroll 80s infinite linear 0.5s both;
	}

	@keyframes infinity_scroll {
		from {
			transform: translateX(0);
		}

		to {
			transform: translateX(-100%);
		}
	}

	.instagram__image_loop__group._right {
		left: calc((960 / 375) * 100vw);
	}

	.instagram__image {
		width: calc((150 / 375) * 100vw);
	}

	#news {}

	.news__obj._01 {
		width: calc((171.85 / 375) * 100vw);
		top: calc((36.3 / 375) * -100vw);
		left: auto;
		right: calc((39.7 / 375) * -100vw);
		transform: scale(1, 1);
	}

	.news__obj._02 {
		width: calc((216.13 / 375) * 100vw);
		bottom: calc((52.7 / 375) * -100vw);
		right: auto;
		left: calc((46.2 / 375) * -100vw);
		transform: scale(1, 1);
	}

	.news__inner {
		width: calc((315 / 375) * 100vw);
		padding: calc((45.7 / 375) * 100vw) 0 calc((60 / 375) * 100vw);
	}

	.news__contents {
		display: block;
	}

	.news__heading {
		display: block;
		width: auto;
		padding-top: 0;
		padding-right: 15.2px;
		margin: 0 auto 32px;
	}

	.news__heading__txt {
		margin: 0 auto;
		font-size: 24px;
	}

	.news__heading__txt::before {
		font-size: 12px;
		right: -10px;
	}

	.news__heading__btn_wrap._pc {
		display: none;
	}

	.news__heading__btn_wrap._sp {
		width: 120px;
		aspect-ratio: 112.7 / 31.08;
		margin: 35.3px auto 0;
	}

	.news__list_wrap {
		width: 100%;
	}

	.news__list__item__wrap {
		display: block;
		padding: 30px 19px 29px;
	}

	.news__list__item__date {
		display: block;
		width: 100%;
		margin: 0 auto 10px;
		font-size: 16px;
	}

	.news__list__item__ttl {
		display: block;
		width: 100%;
		flex: initial;
		font-size: 14px;
	}
}

@media all and (max-width: 575px) {}