/*! Yaku Han JP v3.4.1 (OFL-1.1 AND MIT) by Qrac */
@charset "utf-8";  
@font-face {font-family: "HarmonyOS_Sans_SC_Regular";src: url('fonts/HarmonyOS_Sans_SC_Regular.ttf') format('truetype');}
@font-face {font-family: "HarmonyOS_Sans_SC_Bold";src: url('fonts/HarmonyOS_Sans_SC_Bold.ttf') format('truetype');} 
@font-face {font-family: "HarmonyOS_Sans_SC_Light";src: url('fonts/HarmonyOS_Sans_SC_Light.ttf') format('truetype');} 
@font-face {font-family: "HarmonyOS_Sans_SC_Black";src: url('fonts/HarmonyOS_Sans_SC_Black.ttf') format('truetype');} 

html,body {
	font-family: "HarmonyOS_Sans_SC_Light";
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: .01em;
	-webkit-font-smoothing: antialiased
}

.serif {
	font-family: "HarmonyOS_Sans_SC_Light";
}

a {
	color: #000;
	text-decoration: none;
}
a:hover{text-decoration: none;}
strong {
	font-weight: 500
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: .03em
}
.in h4{font-size: 158px; font-weight: normal;font-family: "HarmonyOS_Sans_SC_Light";}
.f-s,
.f-ss,
.ui-btn-follow {
	font-size: clamp(12px, .8vw, 14px)
}

.f-m,
html {
	font-size: clamp(13px, .95vw, 17px)
}

.f-mm {
	font-size: clamp(20px, 1.4em, 1.388vw)
}

.f-l {
	font-size: clamp(24px, 1.48em, 1.666vw)
}

.f-ll {
	font-size: clamp(36px, 1.72em, 2.5vw)
}

.f-lll {
	font-size: clamp(44px, 1.88em, 3.055vw)
}

.f-xl {
	font-size: 5.069vw
}

.f-xxl {
	font-size: 8.333vw
}

.f-marquee,
.marquee li {
	font-size: 11.111vw
}

.f-project-ttl {
	font-size: 4.861vw;
	line-height: 1;
	letter-spacing: .2em
}

.f-ttl,
.ui-btn-a {
	font-size: clamp(12px, 1.24em, .833vw)
}

.site-menu-main .pj-list,
.site-menu-main .pj-list li a,
ul.menu-sub {
	font-size: clamp(20px, 1.4em, 1.388vw)
}

ul.menu-legal {
	font-size: clamp(11px, 1.22em, .763vw)
}

.menu-main {
	font-size: clamp(50px, 2em, 3.472vw)
}

@media (orientation:portrait),
screen and (max-width:1024px) {
	html {
		font-size: max(13px, 1.269vw);
		line-height: 1.8
	}

	.f-ss {
		font-size: 11px
	}

	.f-s,
	.ui-btn-follow {
		font-size: 12px
	}

	.f-m {
		font-size: max(14px, 1.367vw)
	}

	.f-mm {
		font-size: max(15px, 1.464vw)
	}

	.f-l {
		font-size: max(17px, 1.66vw)
	}

	.f-ll {
		font-size: max(28px, 2.734vw)
	}

	.f-lll {
		font-size: max(40px, 3.906vw)
	}

	.f-xl {
		font-size: max(56px, 5.468vw)
	}

	.f-xxl {
		font-size: max(64px, 6.25vw)
	}

	.f-marquee {
		font-size: max(80px, 7.812vw)
	}
}

@media (max-width:900px) and (orientation:landscape),
screen and (max-width:700px) {
	html {
		font-size: 16px;
		line-height: 1.8
	}

	.f-ss {
		font-size: 16px
	}

	.f-s,
	.ui-btn-follow {
		font-size: 16px
	}

	.f-m {
		font-size: 16px;
	}

	.f-mm {
		font-size: 16px;
	}

	.f-l {
		font-size: 16px;
	}

	.f-ll {
		font-size: 16px;
	}

	.f-lll {
		font-size: 16px;
	}

	.f-xl,
	.f-xxl {
		font-size: 16px;
	}

	.f-marquee {
		font-size: 16px;
	}

	.f-ttl,
	.ui-btn-a {
		font-size: 16px;
	}

	.f-project-ttl {
		font-size: 5.833vw
	}

	.site-menu-main .pj-list,
	.site-menu-main .pj-list li a,
	ul.menu-sub {
		font-size: max(17px, 2.428vw)
	}

	ul.menu-legal {
		font-size: 11px
	}

	.menu-main {
		font-size: max(32px, 4.571vw)
	}
}

:root {
	--gw: 4.16667vw;
	--col-white: #fff;
	--col-black: #000;
	--col-line: rgba(0, 0, 0, 0.2);
	--col-grey: #898d87;
	--col-line-light: hsla(0, 0%, 100%, 0.4);
	    --col-bg: url(122-1.jpg);
    background-size: cover;
	--col-bg-dark: #131417;
	--col-mat: #dbe2d7;
	--col-green: #296a46;
	--col-moss: #23352b
}

*,
:after,
:before {
	box-sizing: border-box
}

* {
	margin: 0;
	z-index: 0
}

li,
ul {
	padding: 0
}

li {
	list-style: none
}

body,
html {
	height: 100%;
	width: 100%
}

canvas,
img,
picture,
svg,
video {
	display: block;
	max-width: 100%
}

button,
input,
select,
textarea {
	font: inherit
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
	overflow-wrap: break-word
}

#__next,
#root {
	isolation: isolate
}

html {
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased
}

::-moz-selection {
	background-color: rgba(118, 123, 114, .2)
}

::selection {
	background-color: rgba(118, 123, 114, .2)
}

[data-n="0"] {
	width: 100%;
	height: calc(var(--gw)*0)
}

[data-n="1"] {
	width: 100%;
	height: calc(var(--gw)*1)
}

[data-n="2"] {
	width: 100%;
	height: calc(var(--gw)*2)
}

[data-n="3"] {
	width: 100%;
	height: calc(var(--gw)*3)
}

[data-n="4"] {
	width: 100%;
	height: calc(var(--gw)*4)
}

[data-n="5"] {
	width: 100%;
	height: calc(var(--gw)*5)
}

[data-n="6"] {
	width: 100%;
	height: calc(var(--gw)*6)
}

[data-n="7"] {
	width: 100%;
	height: calc(var(--gw)*7)
}

[data-n="8"] {
	width: 100%;
	height: calc(var(--gw)*8)
}

[data-n="9"] {
	width: 100%;
	height: calc(var(--gw)*9)
}

[data-n="10"] {
	width: 100%;
	height: calc(var(--gw)*10)
}

[data-n="-10"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-10)
}

[data-n="-9"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-9)
}

[data-n="-8"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-8)
}

[data-n="-7"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-7)
}

[data-n="-6"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-6)
}

[data-n="-5"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-5)
}

[data-n="-4"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-4)
}

[data-n="-3"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-3)
}

[data-n="-2"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-2)
}

[data-n="-1"] {
	width: 100%;
	height: 0;
	margin-top: calc(var(--gw)*-1)
}

.no-js body {
	visibility: visible
}

.mb,
.tb {
	display: none !important
}

html {
	background: var(--col-bg);
	color: var(--col-black);
	overflow-x: hidden
}

html.no-scroll {
	overflow-y: hidden
}

.in {
	width: 100%;
	height: 100%;
	position: relative
}

p {
	text-align: justify;
	margin-bottom: 1em
}

.bg-green {
	background: #7ce8b3
}

.tx-row,
.tx-row.link-double,
.tx-row.link-single {
	display: block
}

.tx-word {
	display: inline-block
}

.mark {
	width: 2em;
	height: 2em
}

.ttl-s {
	font-weight: 500
}

.g-tx {
	position: relative
}

.g-tx,
.g-tx .g-ch {
	background: linear-gradient(135deg, #000 35%, rgba(0, 0, 0, .1) 65%);
	background-size: 300% 300%;
	background-position: 100% 100%;
	-webkit-background-clip: text
}

.g-tx,
.g-tx .g-ch,
.sect-dark .g-tx {
	-webkit-text-fill-color: transparent
}

.sect-dark .g-tx {
	background: linear-gradient(135deg, #fff 35%, hsla(0, 0%, 100%, .1) 65%);
	background-size: 300% 300%;
	background-position: 100% 100%;
	-webkit-background-clip: text
}

.sect-dark .g-tx .g-ch {
	background: linear-gradient(135deg, #fff 35%, hsla(0, 0%, 100%, .1) 65%)
}

html {
	scroll-behavior: auto
}

body,
html {
	min-height: calc(var(--vh)*100);
	height: auto
}

.js-bg-img,
.js-bg-video {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--col-mat)
}

.js-bg-img .img,
.js-bg-video .img {
	top: 0
}

.js-bg-img .img img,
.js-bg-video .img img {
	pointer-events: none;
	-o-object-fit: cover;
	object-fit: cover;
	
	height: 100%;
	-o-object-position: 50% 50%;
	object-position: 50% 50%
}

.js-bg-img.no-image .txt,
.js-bg-video.no-image .txt {
	opacity: .6
}

.js-bg-video .video {
	opacity: 0;
	width: 100%;
	height: 100%
}

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

.preload {
	filter: blur(40px);
	transform: scale(1.2)
}

.img,
.preload {
	position: absolute;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: 50%
}

.img {
	opacity: 0;
	background-repeat: no-repeat
}

.js-bg-img.img-loaded .preload {
	visibility: hidden;
	filter: blur(0);
	transition: filter 0s linear 1s, visibility 0s linear 1s
}

.js-bg-img.img-loaded .img {
	opacity: 1;
	transition: opacity .6s ease-in-out
}

@media screen and (min-width:1025px) {
	.plx-img .js-bg-img .img {
		height: 112%;
		top: -12%
	}
}

.fullscreen-img {
	position: relative;
	height: calc(var(--vh)*100)
}

.fullscreen-img .js-bg-img {
	display: flex;
	align-items: center
}

.fullscreen-img .js-bg-img .img {
	height: 120%;
	top: -20%; transform:initial !important;
}

.fullscreen-large {
	height: calc(var(--vh)*120)
}

.fullscreen-video {
	position: relative;
	z-index: 1;
	padding: calc(var(--gw)*2)
}

.fullscreen-video>.js-bg-img,
.fullscreen-video>.js-bg-video {
	display: flex;
	align-items: center;
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0
}

.fullscreen-video>.js-bg-img .img,
.fullscreen-video>.js-bg-img .video,
.fullscreen-video>.js-bg-video .img,
.fullscreen-video>.js-bg-video .video {
	position: absolute;
	height: 110%;
	top: -15%
}

.fullscreen-video .js-cursor {
	top: 50%;
	left: calc(var(--gw)*20)
}

.fullscreen-video .fullscreen-content {
	position: relative
}

.fullscreen-video .video-wrapper {
	z-index: 1;
	margin: 0 auto;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content
}

.fullscreen-video .block-video,
.fullscreen-video .playing-bg {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0)
}

.fullscreen-video .playing-bg {
	background: var(--col-bg-dark);
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0
}

.fullscreen-video .cover-btn.js-video-play {
	z-index: 2
}

.js-cursor {
	transition: opacity .4s ease-in-out
}

.ui-btn-follow {
	transition: transform .4s ease-in-out
}

.is-playing-wrap .js-cursor {
	opacity: 0
}

.is-playing-wrap .js-cursor.magnet .ui-btn-follow {
	transform: translate(-50%, -50%) scale(0)
}

.is-playing-wrap .cover-btn.js-video-play {
	pointer-events: none
}

.block-video {
	width: calc(var(--gw)*18);
	aspect-ratio: 1920/1080;
	margin: 0 auto;
	position: relative
}

.half-img {
	position: relative;
	height: calc(var(--gw)*9)
}

.half-img .js-bg-img {
	display: flex;
	align-items: center
}

.half-img .js-bg-img .img {
	top: -30%;
	height: 130%
}

.fullscreen-content {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	color: var(--col-white);
	width: 100%;
	height: 100%
}

.fullscreen-content.center {
	display: flex;
	align-items: center
}

.fullscreen-content.column {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: calc(var(--gw)*2) var(--gw)
}

.marquee {
	width: 100%;
	overflow: hidden;
	line-height: 1;
	padding: .1em 0 0
}

.marquee .marquee-inner {
	position: relative;
	display: inline-block;
	white-space: nowrap;
	align-items: center;
	transform: translateZ(0);
	font-size: 0;
	left: -25vw;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-animation: marquee 40s linear infinite;
	animation: marquee 40s linear infinite;
	will-change: transform
}

.marquee li,
.marquee li svg {
	display: inline-block;
	vertical-align: text-bottom
}

.marquee li div {
	display: flex;
	box-sizing: border-box
}

.marquee .ja-title li div {
	font-size: .64em;
	margin-top: .24em;
	margin-bottom: .24em;
	letter-spacing: .2em
}

.marquee .spc {
	display: block;
	width: .25em
}

.marquee .sep {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .5em;
	width: 4em
}

.marquee .sep:before {
	content: "";
	display: block;
	width: 1.4vw;
	height: 1.4vw;
	border-radius: 50%;
	background-color: currentColor;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

@-webkit-keyframes marquee {
	0% {
		transform: translateZ(0)
	}

	to {
		transform: translate3d(-50%, 0, 0)
	}
}

@keyframes marquee {
	0% {
		transform: translateZ(0)
	}

	to {
		transform: translate3d(-50%, 0, 0)
	}
}

.js-inview[data-visible="1"] [data-plx] {
	will-change: transform
}

.tx-ef {
	overflow: hidden
}

.tx-ef .tx-ef-in {
	display: block;
	transform: translateY(110%) rotate(12deg);
	transform-origin: 0 0;
	width: 100%;
	height: 100%
}

.start-el {
	opacity: 0
}

.icon-i {
	width: max(calc(var(--gw)*0.5), 2em);
	height: max(calc(var(--gw)*0.5), 2em)
}

.icon-i .fill {
	fill: #000;
	stroke: none
}

.icon-i .stroke {
	fill: none;
	stroke: #000;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 16px
}

.ui-in {
	display: flex;
	justify-content: center;
	align-items: center
}

.ui-in>:last-child {
	margin-left: 2em
}

.ic-reverse {
	transform: rotateY(180deg)
}

.ui-btn-a {
	line-height: 1.6;
	display: block;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content
}

.ui-btn-a .ic {
	display: flex;
	justify-content: center;
	align-items: center;
	width: max(calc(var(--gw)*0.6), 2.5em);
	height: max(calc(var(--gw)*0.6), 2.5em);
	position: relative
}

.ui-btn-a .ic .bd {
	border: 1px solid var(--col-line);
	border-radius: 100%
}

.ui-btn-a .ic .bd,
.ui-btn-a .ic .bg {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	transition: .4s ease-in-out
}

.ui-btn-a .ic .bg {
	border-radius: 100%;
	background-color: #7ce8b3;
	transform: scale(0)
}

.ui-btn-a .ic svg {
	transform: scale(.6);
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%
}

.ui-btn-a .ic svg .fill,
.ui-btn-a .ic svg .stroke {
	transition: .4s ease-in-out
}

.ui-btn-a .tx {
	overflow: hidden
}

a.ui-btn-a:hover .ic .bd,
a:hover .ui-btn-a .ic .bd {
	opacity: 0;
	transform: scale(1.1)
}

a.ui-btn-a:hover .ic .bg,
a:hover .ui-btn-a .ic .bg {
	transform: scale(1)
}

a.ui-btn-a:hover .ic .stroke,
a:hover .ui-btn-a .ic .stroke {
	stroke: var(--col-white)
}

.ui-btn-b {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1em 2.5em;
	white-space: nowrap;
	border-radius: 4em;
	overflow: hidden;
	transition: color .4s ease, transform .4s ease;
	background-color: transparent;
	border: none;
	outline: none;
	color: var(--col-black)
}

.ui-btn-b * {
	pointer-events: none
}

.ui-btn-b .bd,
.ui-btn-b .bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}

.ui-btn-b .bg {
	background: var(--col-green);
	transform-origin: 50% 0;
	transform: scaleY(0);
	transition: transform .6s ease-in-out;
	border-radius: 50%;
	width: 140%;
	height: 140%;
	left: -20%;
	top: -20%
}

.ui-btn-b .bd {
	border: 1px solid var(--col-black);
	border-radius: 4em;
	transition: all .4s ease
}

.ui-btn-b .ic,
.ui-btn-b .tx {
	position: relative
}

.ui-btn-b .ic .fill,
.ui-btn-b .ic .stroke {
	transition: all .4s ease
}

.ui-btn-b .tx+.ic {
	margin-left: 1em
}

.ui-btn-b:hover {
	color: var(--col-white);
	transform: scale3d(1.05, 1.05, 1)
}

.ui-btn-b:hover .bg {
	transform-origin: 50% 100%;
	transform: scaleX(1)
}

.ui-btn-b:hover .bd {
	opacity: 0
}

.ui-btn-b:hover .stroke {
	stroke: var(--col-white)
}

.ui-btn-b:hover .fill {
	fill: var(--col-white)
}

.ui-btn-b:focus {
	color: var(--col-black);
	transform: scaleX(1)
}

.ui-btn-b:focus .bg {
	transform-origin: 50% 0;
	transform: scaleY(0)
}

.ui-btn-b:focus .bd {
	opacity: 1
}

.ui-btn-b:focus .stroke {
	stroke: var(--col-black)
}

.ui-btn-b:focus .fill {
	fill: none
}

.ui-btn-c {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1em 2.5em;
	white-space: nowrap;
	border-radius: 4em;
	overflow: hidden;
	transition: color .4s ease;
	background-color: transparent;
	border: none;
	outline: none;
	color: var(--col-black)
}

.ui-btn-c * {
	pointer-events: none
}

.ui-btn-c .bd,
.ui-btn-c .bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}

.ui-btn-c .bg {
	background: var(--col-black);
	transform-origin: 50% 0;
	transform: scaleY(0);
	transition: transform .6s ease-in-out;
	border-radius: 50%;
	width: 140%;
	height: 140%;
	left: -20%;
	top: -20%
}

.ui-btn-c .bd {
	border: 1px solid var(--col-line);
	border-radius: 4em;
	transition: all .4s ease
}

.ui-btn-c .ic,
.ui-btn-c .tx {
	position: relative
}

.ui-btn-c .ic .fill,
.ui-btn-c .ic .stroke {
	transition: all .4s ease
}

.ui-btn-c .tx+.ic {
	margin-left: 1em
}

.ui-btn-c:hover .bd {
	border: 1px solid var(--col-black)
}

.ui-btn-c.current,
.ui-btn-c:focus {
	color: var(--col-white)
}

.ui-btn-c.current .bg,
.ui-btn-c:focus .bg {
	transform-origin: 50% 100%;
	transform: scaleX(1)
}

.ui-btn-c.current .bd,
.ui-btn-c:focus .bd {
	opacity: 0
}

.ui-btn-c.current .stroke,
.ui-btn-c:focus .stroke {
	stroke: var(--col-white)
}

.ui-btn-c.current .fill,
.ui-btn-c:focus .fill {
	fill: var(--col-white)
}

.ui-link {
	opacity: 1
}

.link-simple {
	background: linear-gradient(0deg, var(--col-line) 1px, transparent 0, transparent);
	transition: background-image .4s ease
}

.link-simple:hover {
	background: linear-gradient(0deg, var(--col-black) 1px, transparent 0, transparent)
}

.link-multi {
	line-height: 1.6;
	background: linear-gradient(var(--col-black), var(--col-black));
	background-size: 0 1px;
	background-position: 100% 100%;
	background-repeat: no-repeat;
	padding-bottom: 0;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone
}

.link-multi,
.link-multi:hover {
	transition: background-size .4s ease
}

.link-multi:hover {
	background-size: 100% 1px;
	background-position: 0 100%;
	box-decoration-break: slice;
	-webkit-box-decoration-break: slice
}

.icon-pop {
	position: relative
}

.icon-pop:hover svg,
a:hover .icon-pop svg {
	-webkit-animation: hop .5s ease-in-out;
	animation: hop .5s ease-in-out
}

@-webkit-keyframes hop {
	0% {
		transform: rotate(0deg)
	}

	20% {
		transform: rotate(6deg) translate3d(0, -.05em, 0)
	}

	60% {
		transform: rotate(-12deg) translate3d(0, -.1em, 0)
	}

	to {
		transform: rotate(0deg)
	}
}

@keyframes hop {
	0% {
		transform: rotate(0deg)
	}

	20% {
		transform: rotate(6deg) translate3d(0, -.05em, 0)
	}

	60% {
		transform: rotate(-12deg) translate3d(0, -.1em, 0)
	}

	to {
		transform: rotate(0deg)
	}
}

.link-single {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: inline-block;
	line-height: 1.6
}

.link-single .tx-ef-in {
	display: inline-block;
	width: auto
}

.link-single:after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: var(--col-black);
	position: absolute;
	bottom: 0;
	left: 0;
	transition: transform .4s ease, background-color .4s ease;
	transform-origin: 100% 50%;
	transform: scaleX(0)
}

.link-single:hover:after,
a:hover .link-single:after {
	transform-origin: 0 50%;
	transform: scaleX(1)
}

.link-double {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: inline-block;
	line-height: 1.6
}

.link-double .tx-ef-in {
	display: inline-block;
	width: auto
}

.link-double:after,
.link-double:before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: var(--col-line);
	position: absolute;
	bottom: 0;
	left: 0
}

.link-double:before {
	transition: transform .4s ease .2s, background-color .4s ease;
	transform-origin: 0 50%;
	transform: scaleX(1)
}

.link-double:after {
	background: var(--col-black)
}

.link-double:after,
.link-double:hover:before,
a:hover .link-double:before {
	transition: transform .4s ease, background-color .4s ease;
	transform-origin: 100% 50%;
	transform: scaleX(0)
}

.link-double:hover:after,
a:hover .link-double:after {
	transition: transform .4s ease .2s, background-color .4s ease;
	transform-origin: 0 50%;
	transform: scaleX(1)
}

.link-news {
	position: relative
}

.link-news .line,
.link-news .line:after,
.link-news .line:before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0
}

.link-news .line {
	transform-origin: 0 50%
}

.link-news .line:before {
	background: var(--col-line);
	transform: scaleX(1)
}

.link-news .line:after {
	background: var(--col-black);
	transform: scaleX(0);
	transition: transform .5s ease-in-out;
	transform-origin: 100% 50%
}

.link-news:hover .line:after,
a:hover .link-news .line:after {
	transform-origin: 0 50%;
	transform: scaleX(1)
}

.link-news .date,
.link-news .ttl {
	background: linear-gradient(135deg, #000 35%, rgba(0, 0, 0, .1) 65%);
	background-size: 300% 300%;
	background-position: 100% 100%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent
}

.site-menu .tx-block {
	display: block;
	overflow: hidden
}

.site-menu .tx-block .tx-in {
	position: relative;
	transform: translateY(1.4em)
}

.sect-dark .ic .bd {
	border-color: var(--col-line-light)
}

.sect-dark svg .stroke {
	stroke: var(--col-white)
}

.sect-dark svg .fill {
	fill: var(--col-white)
}

.sect-dark .link-double:after,
.sect-dark .link-double:before,
.sect-dark .link-single:after,
.sect-dark .link-single:before {
	background: var(--col-line-light)
}

.sect-dark,
.sect-dark a {
	color: var(--col-white)
}

.ui-link-shop {
	display: flex;
	align-items: center
}

.ui-link-shop .ic {
	margin-right: 1em
}

.ui-link-shop .link-double {
	line-height: 1.4
}

.ui-prevnext {
	display: flex;
	position: relative;
	border: 1px solid var(--col-line);
	width: calc(var(--gw)*3);
	height: calc(var(--gw)*1.5);
	margin-top: var(--gw)
}

.ui-prevnext .ui-prevnext-prev {
	border-right: 1px solid var(--col-line)
}

.ui-prevnext .ui-prevnext-next,
.ui-prevnext .ui-prevnext-prev {
	position: relative;
	width: 50%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden
}

.ui-prevnext .ui-prevnext-next svg,
.ui-prevnext .ui-prevnext-prev svg {
	position: relative;
	z-index: 2
}

.ui-prevnext .ui-prevnext-next .stroke,
.ui-prevnext .ui-prevnext-prev .stroke {
	stroke: var(--col-line)
}

.ui-prevnext .ui-prevnext-next:after,
.ui-prevnext .ui-prevnext-next:before,
.ui-prevnext .ui-prevnext-prev:after,
.ui-prevnext .ui-prevnext-prev:before {
	content: "";
	display: block;
	position: absolute
}

.ui-prevnext a.ui-prevnext-next .stroke,
.ui-prevnext a.ui-prevnext-prev .stroke {
	stroke: var(--col-black);
	transition: stroke .4s ease-in-out
}

.ui-prevnext a.ui-prevnext-next:after,
.ui-prevnext a.ui-prevnext-prev:after {
	border: 1px solid #7ce8b3;
	opacity: 0;
	transition: opacity .1s ease-in-out;
	left: -1px;
	bottom: -1px;
	width: calc(100% + 2px);
	height: calc(100% + 2px)
}

.ui-prevnext a.ui-prevnext-next .after,
.ui-prevnext a.ui-prevnext-next .before,
.ui-prevnext a.ui-prevnext-prev .after,
.ui-prevnext a.ui-prevnext-prev .before {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

.ui-prevnext a.ui-prevnext-next .after.ic-reverse,
.ui-prevnext a.ui-prevnext-next .before.ic-reverse,
.ui-prevnext a.ui-prevnext-prev .after.ic-reverse,
.ui-prevnext a.ui-prevnext-prev .before.ic-reverse {
	transform: translate(-50%, -50%) rotateY(180deg)
}

.ui-prevnext a.ui-prevnext-next .after,
.ui-prevnext a.ui-prevnext-prev .after {
	opacity: 0;
	transform: translate(calc(var(--gw)*-0.5 - 50%), -50%)
}

.ui-prevnext a.ui-prevnext-next .after.ic-reverse,
.ui-prevnext a.ui-prevnext-prev .after.ic-reverse {
	transform: translate(calc(var(--gw)*0.5 - 50%), -50%) rotateY(180deg)
}

.ui-prevnext a.ui-prevnext-next:hover:after,
.ui-prevnext a.ui-prevnext-prev:hover:after {
	opacity: 1
}

.ui-prevnext a.ui-prevnext-next:hover .before,
.ui-prevnext a.ui-prevnext-prev:hover .before {
	transition: all .3s ease-in-out;
	opacity: 0;
	transform: translate(calc(var(--gw)*0.5 - 50%), -50%)
}

.ui-prevnext a.ui-prevnext-next:hover .before.ic-reverse,
.ui-prevnext a.ui-prevnext-prev:hover .before.ic-reverse {
	transform: translate(calc(var(--gw)*-0.5 - 50%), -50%) rotateY(180deg)
}

.ui-prevnext a.ui-prevnext-next:hover .after,
.ui-prevnext a.ui-prevnext-prev:hover .after {
	transition: all .3s ease-in-out .1s;
	opacity: 1;
	transform: translate(-50%, -50%)
}

.ui-prevnext a.ui-prevnext-next:hover .after.ic-reverse,
.ui-prevnext a.ui-prevnext-prev:hover .after.ic-reverse {
	transform: translate(-50%, -50%) rotateY(180deg)
}

.cover-btn {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	overflow: hidden
}

.cover-btn .js-cursor.magnet,
.js-cursor {
	pointer-events: none
}

.js-cursor {
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	transform: translate(50%, 50%);
	will-change: transform
}

.js-cursor.magnet {
	position: absolute;
	pointer-events: auto
}

.js-cursor.magnet .ui-btn-follow {
	transform: translate(-50%, -50%) scale(1);
	visibility: visible
}

.ui-btn-follow {
	position: relative;
	min-width: none;
	width: calc(var(--gw)*3);
	height: calc(var(--gw)*3);
	min-width: 12em;
	min-height: 12em;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--col-white);
	text-align: center;
	line-height: 1.4;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	transform: translate(-25%, -25%);
	visibility: hidden;
	transform-origin: 50% 50%;
	transition: all .2s
}

.ui-btn-follow>* {
	pointer-events: none
}

.ui-btn-follow .bg {
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .6);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border-radius: 50%;
	transition: all .4s
}

.ui-btn-follow .tx {
	display: inline-block;
	position: relative
}

.ui-btn-follow .icon-i {
	position: relative;
	width: calc(var(--gw)*0.4);
	height: calc(var(--gw)*0.4);
	left: .2em;
	top: .1em
}

.ui-btn-follow .layout-flex {
	align-items: center
}

.ui-btn-follow .layout-flex>* {
	padding: .25em
}

.layout-a,
.layout-flex {
	display: flex
}

.layout-a {
	align-items: flex-start
}

.layout-a .layout-a-side {
	width: calc(var(--gw)*10);
	padding: var(--gw) calc(var(--gw)*2) var(--gw) var(--gw)
}

.layout-a .layout-a-main {
	flex: 1;
	padding: var(--gw) var(--gw) var(--gw) 0
}

.layout-a p {
	margin-bottom: 1em
}

@media screen and (min-width:1025px) {

	.layout-a+.layout-a .layout-a-main,
	.layout-a+.layout-a .layout-a-side {
		padding-top: 0
	}
}

.layout-c {
	display: flex
}

.layout-c .layout-c-item {
	position: relative;
	width: 50%;
	padding: var(--gw)
}

.layout-c p {
	margin-bottom: 1em
}

.body-content {
	margin-left: 55%;
	width: calc(var(--gw)*10)
}

.body-content :last-child {
	margin-bottom: 0
}

[class^=layout-] .body-content {
	margin-left: 0
}

.dot-header {
	display: flex;
	align-items: center;
	line-height: 1.2
}

.dot-header .dot {
	width: max(calc(var(--gw)*0.6), 2.5em);
	height: max(calc(var(--gw)*0.6), 2.5em);
	margin-right: 1.5em;
	background: #7ce8b3;
	border-radius: 50%
}

.dot-header .tx {
	font-weight: 500
}

.dot-header .tx.normal {
	font-weight: 400
}

.sect-dark .dot-header .dot {
	background: var(--col-mat)
}

.pj-list {
	line-height: 1.4
}

.pj-list li {
	display: flex;
	align-items: baseline
}

.pj-list .number {
	position: relative;
	display: block;
	width: var(--gw)
}

.pj-list a.current-link,
.site-menu-main a.current-link {
	opacity: .6
}

.hr {
	position: absolute;
	background: var(--col-line);
	width: 100%;
	height: 1px;
	top: 0;
	left: 0
}

.hr.right {
	left: auto;
	right: 0
}

.hr.bottom {
	top: auto;
	bottom: 0
}

.vr {
	background: var(--col-line);
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0
}

.vr.right {
	left: auto;
	right: 0
}
.ui-link-shop{display: none}
.vr.bottom {
	top: auto;
	bottom: 0
}

.header-space {
	height: min(calc(var(--gw)*2.5), 200px)
}

.site-header--el {
	position: fixed;
	width: 100%;
	top: min(var(--gw), 70px)
}

.site-header--el.logo {
	z-index: 9;
	transition: filter .4s;

	max-width: 215px;
	max-height: 60px;
	left: var(--gw);
	display: flex;
	align-items: center
}

.site-header--el.logo .logo-svg {
	width: 100%;
	height: calc(var(--gw)*0.3)
}

.site-header--el.logo svg {
	transition: fill .4s
}

.site-header--el.header-ui {
	z-index: 11;
	height: calc(var(--gw)*0.5);
	max-height: 30px;
	width: 0;
	right: var(--gw);
	display: flex;
	align-items: center;
	justify-content: flex-end
}

.site-header--el .ui-link-shop {
	position: absolute;
	right: calc(var(--gw)*2);
	top: 50%;
	transform: translateY(-50%);
	transition: color .4s;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	white-space: nowrap;
	justify-content: flex-end
}

.site-header--el .ui-link-shop .ic {
	width: 1.8em
}

.site-header--el .ui-link-shop .icon-i {
	width: 1.8em;
	height: 1.8em
}

.site-header--el .ui-link-shop .stroke {
	transition: .4s ease
}

.site-header--el .ui-toggle {
	cursor: pointer;
	width: max(calc(var(--gw)*0.8), 3.5em);
	height: max(calc(var(--gw)*0.8), 3.5em);
	max-width: 60px;
	max-height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%)
}

.site-header--el .ui-toggle .bg {
	width: 100%;
	height: 100%;
	background: #7ce8b3;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 0;
	transition: background .4s
}

.site-header--el .ui-toggle .icon {
	position: relative;
	width: 100%
}

.site-header--el .ui-toggle .icon .bd {
	width: 33%;
	height: 2px;
	overflow: hidden;
	position: absolute;
	left: 50%;
	top: 50%;
	transition: .4s ease-in-out
}

.site-header--el .ui-toggle .icon .bd:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	border-radius: 2px;
	background: var(--col-white);
	transition: .4s ease-in-out
}

.site-header--el .ui-toggle .icon .bd:first-child {
	transform: translate(-50%, -5px)
}

.site-header--el .ui-toggle .icon .bd:nth-child(2) {
	transform: translate(-50%, -1px)
}

.site-header--el .ui-toggle .icon .bd:nth-child(3) {
	transform: translate(-50%, 3px)
}

.mode-dark .site-header--el,
.mode-dark .site-header--el a {
	color: var(--col-white)
}

.mode-dark .site-header--el.logo svg {
	fill: var(--col-white)
}

.mode-dark .site-header--el .icon-i .stroke {
	stroke: var(--col-white)
}

.mode-dark .site-header--el .ui-toggle .bg {
	background: var(--col-white)
}

.mode-dark .site-header--el .ui-toggle .icon .bd:after {
	background: var(--col-black)
}

.mode-dark .ui-link-shop .link-double:after,
.mode-dark .ui-link-shop .link-double:before {
	background: var(--col-line-light)
}

.mode-dark .sub-pagename {
	color: var(--col-white)
}

.is-menu-open .window {
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none
}

.is-menu-open .pointer {
	will-change: top
}

.is-menu-open .site-header--el,
.is-menu-open .site-header--el a {
	color: var(--col-black)
}

.is-menu-open .site-header--el .icon-i .stroke {
	stroke: var(--col-black)
}

.is-menu-open .site-header--el .link-double:after,
.is-menu-open .site-header--el .link-double:before {
	background: var(--col-black)
}

.is-menu-open .site-header--el .ui-toggle .bg {
	background: #7ce8b3
}

.is-menu-open .site-header--el .ui-toggle .icon .bd:after {
	background: var(--col-white)
}

.is-menu-open .site-header--el .ui-toggle .bd:first-child {
	transform: translate(-50%, -1px) rotate(45deg)
}

.is-menu-open .site-header--el .ui-toggle .bd:nth-child(2) {
	transform: translate(-50%, -1px)
}

.is-menu-open .site-header--el .ui-toggle .bd:nth-child(2):after {
	transform: translate(100%)
}

.is-menu-open .site-header--el .ui-toggle .bd:nth-child(3) {
	transform: translate(-50%, -1px) rotate(-45deg)
}

@media screen and (min-width:1025px) {
	.site-header--el .ui-toggle:hover .bd:first-child {
		transform: translate(-60%, -5px)
	}

	.site-header--el .ui-toggle:hover .bd:nth-child(2) {
		transform: translate(-30%, -1px)
	}

	.site-header--el .ui-toggle:hover .bd:nth-child(3) {
		transform: translate(-60%, 3px)
	}

	.is-menu-open .site-header--el .ui-toggle:hover .bd:first-child {
		transform: translate(-50%, -1px) rotate(30deg)
	}

	.is-menu-open .site-header--el .ui-toggle:hover .bd:nth-child(3) {
		transform: translate(-50%, -1px) rotate(-30deg)
	}
}

.site-menu {
	visibility: hidden;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 10
}

.site-menu .overlay {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	background: rgba(0, 0, 0, .6);
	opacity: 0
}

.site-menu-side {
	position: relative;
	z-index: 1;
	width: calc(var(--gw)*14);
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center
}

.site-menu-side .logo {
	width: calc(var(--gw)*4);
	height: calc(var(--gw)*1.5);
	fill: var(--col-white);
	filter: blur(20px);
	opacity: 0
}

.site-menu-logo {
	display: inline-block
}

.site-menu-main {
	position: absolute;
	left: auto
}

.site-menu-main,
.site-menu-main .bg {
	top: 0;
	right: 0;
	width: calc(var(--gw)*10);
	height: 100%
}

.site-menu-main .bg {
	position: fixed;
	background: var(--col-bg);
	-webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%)
}

.site-menu-main .in {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: calc(var(--vh)*100);
	padding: calc(var(--gw)*2) 0 calc(var(--gw)*1.75) calc(var(--gw)*2)
}

.site-menu-main .pointer {
	position: absolute;
	width: .7em;
	height: .7em;
	background: var(--col-black);
	border-radius: 50%;
	left: calc(var(--gw)*1.5);
	top: 0;
	transform: translate(-50%, -50%) scale(0)
}

.site-menu-main .menu-main {
	font-weight: 500;
	margin-top: .25em;
	margin-bottom: .25em;
	line-height: 1.3
}

.site-menu-main .pj-list {
	line-height: 1.5;
	margin-bottom: 1.5em
}

.site-menu-main .pj-list li {
	align-items: center
}

.site-menu-main .pj-list .number {
	color: var(--col-grey);
	width: calc(var(--gw)*0.5);
	min-width: 2.5em
}

.site-menu-main .pj-list a {
	font-weight: 500;
	flex: 1
}

.site-menu-main .menu-sub {
	font-weight: 500;
	margin-bottom: 1.5em;
	line-height: 1.5
}

.site-menu-main .menu-legal {
	margin-bottom: 1.5em;
	line-height: 1.8
}

.site-footer[data-visible="1"] .plx-footer {
	will-change: transform
}

.site-footer {
	position: relative;
	
	overflow: hidden
}

.site-footer a.link-single,
.site-footer a:not(.ui-link-shop) .link-single {
	display: inline-block;
	line-height: 1.6;
	margin-bottom: .2em
}

.site-footer .plx-footer {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}

.site-footer .l-figure {
	position: absolute;
	left: 0; display: none;
	bottom: 0;
	width: 202.5vh;
	height: 45vh;
	min-width: 118vw;
	transform: translate(-20.25vh, 5vw)
}

.site-footer .l-figure svg {
	width: 100%;
	height: 100%
}

.footer-body {
	position: relative;
	z-index: 1;
	background-color: var(--col-bg);
	display: flex
}

.footer-body .footer-box-a,
.footer-body .footer-box-b,
.footer-body .footer-box-c {
	position: relative;
	padding: var(--gw)
}

.footer-body .footer-box-a {
	width: calc(var(--gw)*8)
}

.footer-body .footer-box-a .mark {
	width: calc(var(--gw)*0.4);
	transform: translate(30%, -30%)
}

.footer-body .footer-box-a .in {
	display: flex;
	justify-content: space-between
}

.footer-body .footer-box-b {
	width: calc(var(--gw)*5)
}

.footer-body .footer-box-c {
	width: calc(var(--gw)*6)
}

.footer-body .ui-link-shop {
	margin-left: -.7em
}

.footer-body .footer-logo {
	position: absolute;
	left: 0;
	bottom: 0;
	width: calc(var(--gw)*4);
	height: calc(var(--gw)*1.5)
}

.footer-body .footer-logo svg {
	width: 100%;
	height: 100%
}

.m-scroller {
	scroll-behavior: auto;
	overscroll-behavior: contain;
	overflow-y: scroll
}

.m-container {
	min-height: 100%;
	height: auto
}

.sub-pagename {
	z-index: 4;
	left: calc(var(--gw)*4);
	height: calc(var(--gw)*0.5);
	max-height: 30px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: flex;
	align-items: center;
	letter-spacing: .05em
}

.splash,
.splash-webgl {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0
}

.splash {
	z-index: 100
}

.splash-bg {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: rgb(15.3, 17.85, 22.95);
	background-size: 100vw 100vh;
	background-position: 0 0
}

.splash-logo {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: calc(var(--gw)*2);
	height: calc(var(--gw)*0.5);
	overflow: hidden;
	color: var(--col-bg)
}

.splash-logo>div {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: translateY(100%)
}

.splash-logo svg {
	width: 100%;
	height: 100%;
	fill: currentColor
}

.sSlider-section {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-touch-callout: none
}

.sSlider-body {
	width: 100%;
	height: 100%;
	overflow: hidden
}

[data-scroll-mode=hr] .sSlider-body {
	display: flex
}

[data-scroll-mode=hr] .sSlider-contents {
	height: 100%;
	white-space: nowrap;
	display: flex;
	align-items: center
}

.sSlider-control {
	width: 4px;
	position: absolute;
	right: 0;
	bottom: 0;
	height: 100%;
	z-index: 100
}

.sSlider-thumb {
	width: 100%;
	height: 125%;
	top: 0;
	position: relative;
	transform-origin: left top;
	transform: translateY(-80%)
}

.sSlider-thumb .pivot {
	width: 100%;
	height: 100%;
	position: absolute
}

.sSlider-thumb .pivot:after,
.sSlider-thumb .pivot:before {
	content: "";
	display: block;
	width: 100%;
	height: 20%;
	position: absolute;
	background: var(--col-bg)
}

.sSlider-thumb .pivot:before {
	top: 0
}

.sSlider-thumb .pivot:after {
	bottom: 0
}

[data-scroll-mode=hr] .sSlider-control {
	width: 100%;
	height: 10px
}

[data-scroll-mode=hr] .sSlider-thumb {
	transform: translate(-120%)
}

[data-scroll-infinite=false] .sSlider-thumb {
	transform: translate(0)
}

.section-fv {
	position: relative;
	height: 100vh;
	color: var(--col-white);
	background: var(--col-bg-dark);
	/*overflow-x: hidden*/
}

.section-fv:after {
	content: "";
	display: block;
	width: 100%;
	height: 50%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(0deg, var(--col-bg-dark), rgba(0, 0, 0, .2) 70%, transparent)
}

.section-fv a {
	color: var(--col-white)
}

.section-fv .body {
	height: calc(var(--vh)*100);
	padding: var(--gw);
	position: relative;
	z-index: 2
}

.section-fv .in {
	height: 100%;
	display: flex;
	align-items: center
}

.section-fv .fv-title {
	width: 100%; text-align: center;
	transition: none; font-family: "HarmonyOS_Sans_SC_Bold";
}

.section-fv .fv-title .tagline {
	display: block;
	margin-bottom: 1.25vw;
	opacity: 0
}

.section-fv .fv-title .tagline svg {
	width: 100%;
	fill: var(--col-white)
}

.section-fv .fv-title .tagline-1 {
	transform: translate(-6%)
}

.section-fv .fv-title .tagline-2 {
	transform: translate(6%)
}

.section-fv .fv-kana {
	position: absolute;
	left: 0;
	top: calc(var(--gw)*3);
	writing-mode: vertical-rl;
	letter-spacing: .5em
}

.section-fv .fv-box-side {
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex
}

.section-fv .fv-box-side .box {
	position: relative;
	line-height: 1.6;
	padding: 1.5em 1.75em;
	min-width: 19em;
	max-width: 280px
}

.section-fv .fv-box-side .link-single {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content
}

.section-fv .vr {
	background: linear-gradient(0deg, hsla(0, 0%, 100%, .2), hsla(0, 0%, 100%, .3) 50%, hsla(0, 0%, 100%, .2))
}

.section-fv .hr {
	background: linear-gradient(90deg, hsla(0, 0%, 100%, .2), hsla(0, 0%, 100%, .3) 50%, hsla(0, 0%, 100%, .2))
}

.section-fv .js-cursor {
	left: calc(var(--gw)*21.5);
	bottom: 0;
	top: auto
}

.s-fv-bg {
	position: absolute;
	left: 0;
	top: -10%;
	width: 100%;
	height: 110%
}

.s-fv-bg .img {
	background-position: 50% 100%
}

.s-fv-middle {
	position: absolute;
	left: 0;
	top: -5%;
	width: 100%;
	height: 105%
}

.s-fv-middle .img {
	filter: blur(2px);
	background-position: 50% 100%;
	bottom: 0
}

.s-fv-front {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}

.s-fv-front .img {

	background-position: 50% 100%;
	bottom: -2%
}

.section-about {
	position: relative;
	z-index: 1;
	background: var(--col-bg);;
	color: var(--col-white);
	min-height: calc(var(--vh)*100);
	display: flex;
	align-items: center; background-size: cover;
}

.section-about .s-about-bg {
	position: absolute;
	left: 0;
	top: 50%;
	width: calc(var(--gw)*12);
	height: 100%;
	transform: translateY(-50%) scale(.95);
	opacity: 0
}

.section-about .s-about-bg .img {
	background-position: 90% 50%
}

.section-about .s-about-title {
	margin-bottom: calc(var(--gw)*0.5)
}

.section-about .body-content {
	padding: 0 var(--gw) 0 0
}

.section-about .ui-btn-a {
	margin-left: auto;
	margin-top: var(--gw)
}

.s-about-over {
	position: absolute;
	z-index: 1;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: calc(var(--gw)*5);
	aspect-ratio: 3/4
}

.section-projects {
	width: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.section-projects .body-content {
	padding: 0 var(--gw) 0 0
}

.carousel-wrapper {
	position: relative;
	display: flex
}

.carousel-wrapper .carousel-side {
	padding: 0 var(--gw);
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.carousel-wrapper .carousel-side .number {
	color: #7ce8b3;
	line-height: 1;
	margin-bottom: .4em
}

.carousel-wrapper .carousel-side .info h4 {
	font-weight: 500;
	margin-bottom: .75em; font-size: 60px;
}

.carousel-wrapper .carousel-side .info p {
	margin-bottom: .5em;
	line-height: 1.4em
}

.carousel-wrapper .carousel-side .info p br {
	display: none
}

.carousel-wrapper .carousel-side-content {
	position: absolute;
	left: 0;
	top: 0
}

.carousel-wrapper .ui-prevnext {
	position: absolute;
	left: 0;
	bottom: 0
}

.carousel-wrapper .carousel-body {
	position: relative;
	width: calc(var(--gw)*16)
}

.carousel-wrapper .carousel-item {
	position: relative;
	padding-right: var(--gw);
	width: calc(var(--gw)*7);
	height: calc(var(--gw)*7.5);
	color: var(--col-white);
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none
}

.carousel-wrapper .carousel-item .img {
	width: 100%;
	transform: inherit !important;
}

.carousel-wrapper .carousel-item-inner {
	position: relative;
	width: 100%;
	height: 100%
}

.carousel-wrapper .carousel-item-inner .js-bg-img {
	align-items: start;
	justify-content: start
}

.carousel-wrapper .carousel-item-content {
	position: relative;
	padding: 2.5em;
	line-height: 1.4
}

.carousel-wrapper .carousel-item-text {
	color: var(--col-white);
	opacity: .6;
	transition: opacity .4s
}

.carousel-wrapper .carousel-item-text .number {
	position: relative;
	margin-right: 1em
}

.carousel-wrapper .carousel-item-text .link-single {
	opacity: 0;
	transition: opacity .4s
}

.carousel-wrapper .carousel-item-text .link-single:after,
.carousel-wrapper .carousel-item-text .link-single:before {
	background: var(--col-white)
}

.carousel-wrapper .carousel-item:hover .carousel-item-text,
.carousel-wrapper .carousel-item:hover .carousel-item-text .link-single,
.carousel-wrapper .current.carousel-item .carousel-item-text,
.carousel-wrapper .current.carousel-item .link-single {
	opacity: 1
}

.carousel-wrapper .ui-btn-follow {
	width: calc(var(--gw)*2);
	height: calc(var(--gw)*2)
}

.section-news {
	position: relative
}

.section-news .mb.ui-btn-a {
	display: none
}

.section-news .s-news-layout {
	display: flex
}

.section-news .s-news-main {
	position: relative;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.section-news .s-news-main .layout-a {
	align-items: center;
	margin-top: var(--gw)
}

.section-news .s-news-main .layout-a-main {
	display: flex;
	justify-content: flex-end
}

.section-news .s-news-latest {
	padding: var(--gw) var(--gw) calc(var(--gw)*2)
}

.section-news .s-news-list a {
	display: flex;
	justify-content: space-between;
	padding: 2em 0;
	position: relative
}

.section-news .s-news-list a .ln:after {
	transform: translate(-110%)
}

.section-news .s-news-list a:hover .ln:before {
	transform: translate(110%)
}

.section-news .s-news-list a:hover .ln:after {
	transform: translate(0)
}

.section-news .s-news-list a:hover .ln:after,
.section-news .s-news-list a:hover .ln:before {
	transition: .8s ease-in-out
}

.section-news .news-thumb {
	position: relative;
	width: calc(var(--gw)*9);
	height: calc(var(--gw)*12);
	padding: var(--gw) var(--gw) calc(var(--gw)*2)
}

.section-news .news-thumb .news-mat {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--col-mat);
	padding: var(--gw);
	height: 100%
}

.section-news .news-thumb .active-thumb {
	width: calc(var(--gw)*5);
	height: calc(var(--gw)*5);
	overflow: hidden;
	position: relative
}

.section-news .news-thumb .active-thumb a {
	display: block;
	position: absolute;
	left: 0;
	top: 0
}

.section-news .news-thumb .img img {
	-o-object-fit: contain;
	object-fit: contain
}

.section-contact .s-contact-body {
	padding: var(--gw) var(--gw) calc(var(--gw)*0.5);
	position: relative;
	display: flex;
	justify-content: flex-end
}

.section-contact .s-contact-img {
	position: absolute;
	left: var(--gw);
	bottom: 0;
	width: calc(var(--gw)*5);
	aspect-ratio: 3/4
}

#canvas {
	pointer-events: none;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 5%;
	width: 100%;
	height: 95%;
	opacity: .8
}

.p-fv {
	position: relative;
	height: calc(var(--vh)*100)
}

.p-fv .p-fv-bg {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0
}

.p-fv .p-fv-body {
	position: relative;
	z-index: 1;
	height: 100%;
	display: flex;
	align-items: center;
	padding: calc(var(--gw)*2)
}

.p-fv .js-bg-img .img {
	transition: none;
	height: 110%;
	top: -10%
}

.legalpage-container {
	display: flex;
	position: relative
}

.legalpage-main {
	position: relative;
	flex: 1;
	counter-reset: sectionNumber 0
}

.legalpage-body {
	width: calc(var(--gw)*10);
	margin: 0 auto 0 calc(var(--gw)*4)
}

.legalpage-body .hr {
	position: relative
}

.legalpage-body h3 {
	padding: var(--gw) 0 0
}

.legalpage-body .legal-section h3 {
	padding: calc(var(--gw)*1.5) 0 3rem
}

.legalpage-title {
	position: relative;
	margin: var(--gw) 0;
	text-transform: uppercase
}

.legalpage-title h2 {
	line-height: 1.1
}

.legalpage-title .mark {
	position: absolute;
	right: 0;
	bottom: .75em
}

.legal-lead {
	margin: var(--gw) 0
}

.legalpage-privacy-policy .legal-section h3:before,
.legalpage-tokusho .legal-section h3:before {
	counter-increment: sectionNumber 1;
	content: counter(sectionNumber, decimal-leading-zero) "";
	color: var(--col-grey);
	display: inline-block;
	font-size: .8em;
	padding-right: 1em;
	letter-spacing: 0;
	white-space: nowrap
}

.legalpage-side {
	position: sticky;
	top: 0;
	right: 0;
	width: calc(var(--gw)*6);
	padding: var(--gw);
	height: calc(var(--vh)*100);
	counter-reset: navigationNumber 0
}

.legalpage-side .legal-navigation {
	position: absolute;
	left: 0;
	bottom: 0;
	line-height: 1.4
}

.legalpage-side .legal-navigation a {
	line-height: 1.4
}

.legalpage-side .legal-navigation li {
	position: relative;
	margin-top: .5em;
	padding-left: 2em
}

.legalpage-side .legal-navigation li:before {
	position: absolute;
	left: 0;
	top: 0;
	counter-increment: navigationNumber 1;
	content: counter(navigationNumber) "";
	display: inline-block;
	margin-right: 1em;
	width: 2em;
	color: var(--col-grey);
	white-space: nowrap
}

.about-fv-title {
	line-height: .9
}

.p-about-summary .layout-a-side {
	padding: calc(var(--gw)*3) calc(var(--gw)*2) 0
}

.p-about-summary .layout-a-main {
	padding-right: 0
}

.p-about-summary .about-summary-simg {
	position: absolute;
	width: calc(var(--gw)*4);
	aspect-ratio: 3/4
}

.p-about-summary .about-summary-simg:first-child {
	top: calc(var(--gw)*0.5);
	left: calc(var(--gw)*-1 - 10px)
}

.p-about-summary .about-summary-simg:last-child {
	top: 0;
	left: calc(10px + 50%)
}

.p-about-summary .about-summary-image {
	aspect-ratio: 10/10
}

.p-about-summary .about-summary-image .img {
	height: 120%;
	top: -20%
}

.p-about-hakusan,
.p-about-team {
	position: relative
}

.p-about-team .about-team-images {
	margin-left: calc(var(--gw)*-9);
	display: flex;
	-moz-column-gap: 20px;
	column-gap: 20px
}

.p-about-team .about-team-image {
	width: 50%;
	aspect-ratio: 3/2
}

.p-about-team .members {
	position: relative
}

.p-about-team .members>ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: calc(var(--gw)*10);
	width: calc(var(--gw)*12);
	line-height: 1.4
}

.p-about-team .members>ul>li {
	width: calc(var(--gw)*4);
	padding: 3em 3em 4em 0
}

.p-about-team .members .role {
	font-weight: 500
}

.p-about-team .members .staff li {
	margin-top: .5em
}

.p-about-hakusan .about-hakusan-images {
	align-items: flex-end
}

.p-about-hakusan .about-hakusan-map {
	width: calc(var(--gw)*4);
	height: calc(var(--gw)*5)
}

.p-about-hakusan .about-hakusan-image {
	aspect-ratio: 13/9
}

.section-next {
	height: calc(var(--vh)*100);
	background-color: var(--col-bg-dark);
	overflow: hidden
}

.section-next .next-bg {
	position: absolute;
	left: 0;
	top: -30%;
	width: 100%;
	height: 130%;
	overflow: hidden;
	opacity: .4
}

.section-next .next-ul .img {
	top: 0;
	height: 100%
}

.section-next.js-inview[data-visible="1"] .next-ul {
	animation: marquee 50s linear infinite reverse
}

.section-next.js-inview[data-visible="1"] .next-wrap:last-of-type .next-ul {
	-webkit-animation: marquee 50s linear infinite;
	animation: marquee 50s linear infinite
}

.next-wrap {
	width: 120vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, calc(-100% - var(--gw)*1.5)) rotate(-15deg);
	white-space: nowrap;
	font-size: 0
}

.next-item,
.next-ul {
	display: inline-block
}

.next-item {
	width: calc(var(--gw)*8);
	height: calc(var(--gw)*11);
	margin-right: calc(var(--gw)*2)
}

.next-wrap:last-of-type {
	transform: translate(-50%, calc(var(--gw))) rotate(-15deg)
}

.js-projects-scroll {
	width: 100vw;
	height: calc(var(--vh)*100);
	position: fixed;
	top: 0;
	left: 0;
	background: #7ce8b3
}

.projects-list-section {
	position: relative;
	width: 100vw;
	height: calc(var(--vh)*100);
	overflow: hidden;
	background: var(--col-bg-dark)
}

.projects-list-section .js-bg-img {
	position: absolute;
	opacity: .8
}

.projects-list-section .contents-body {
	position: relative;
	width: 100%;
	height: 100%;
	padding: calc(var(--gw)*1.25) var(--gw);
	display: flex;
	align-items: flex-end
}

.projects-list-section .contents-inner {
	width: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: space-between
}

.projects-list-section .contents-inner>* {
	transform: translateZ(0)
}

.projects-list-section .header .layout-flex {
	align-items: baseline
}

.projects-list-section .number {
	width: 6em;
	padding-right: 1em;
	padding-left: .5em
}

.projects-list-section .number .sep {
	display: inline-block;
	margin: 0 .1em 0 .2em
}

.projects-list-section .description br {
	display: none
}

.projects-list-section .projects-list-title {
	margin-top: .25em
}

.projects-list-section .action {
	position: relative;
	z-index: 1;
	margin-bottom: 2em
}

.projects-list-section[data-visible="1"],
.projects-list-section[data-visible="1"] .img {
	will-change: transform
}

.project-fv-title {
	height: calc(var(--gw)*1.5);
	margin: 0 auto 1rem
}

.project-fv-title.ja-title {
	height: 1em
}

.project-logo {
	width: auto;
	max-width: 90%;
	height: 100%;
	margin: 0 auto;
	fill: var(--col-white)
}

.p-project-article .layout-a .layout-a-side {
	padding-left: calc(var(--gw)*3)
}

.p-project-summary .project-headline {
	margin-top: calc(var(--gw)*0.5);
	margin-bottom: calc(var(--gw)*0.5)
}

.p-project-summary .project-headline p {
	display: inline-block;
	margin: 0
}

.p-project-summary .p-project-thumb {
	width: calc(var(--gw)*5);
	aspect-ratio: 3/4
}

.p-project-summary .layout-a {
	align-items: center
}

.p-project-summary .layout-a-side {
	padding: var(--gw) calc(var(--gw)*2) var(--gw) calc(var(--gw)*3)
}

.p-project-summary .layout-a-main {
	padding-right: calc(var(--gw)*4)
}

.p-project-summary .layout-a-main div>div div {
	margin-bottom: 1em
}

.p-project-summary .project-name {
	margin-bottom: 2em;
	font-weight: 500;
	letter-spacing: .05em
}

.p-project-summary p {
	margin-bottom: 1em
}

.p-project-marquee {
	position: relative;
	padding: calc(var(--gw)*0.5) 0;
	color: #7ce8b3
}

.p-project-marquee .project-logo {
	height: calc(var(--gw)*2.5);
	max-width: none;
	fill: currentColor
}

.p-project-marquee .sep {
	padding: .4em .8em
}

.z1,
.z2 {
	z-index: 1
}

.layout-pj-a {
	position: relative;
	padding: 0 calc(var(--gw))
}

.layout-pj-a .pj-item {
	margin: var(--gw) 0
}

.layout-pj-a .pj-img {
	aspect-ratio: 16/9
}

.layout-pj-b {
	position: relative;
	padding: 0 calc(var(--gw)*2);
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.layout-pj-b .pj-item {
	position: relative;
	margin: 0 0 calc(var(--gw)*2);
	width: calc(var(--gw)*9)
}

.layout-pj-b .pj-item:nth-child(2n) {
	top: calc(var(--gw)*4)
}

.layout-pj-b .pj-item:last-of-type {
	margin-bottom: 0
}

.layout-pj-b .pj-img {
	aspect-ratio: 3/2
}

.layout-pj-c {
	position: relative;
	padding: var(--gw) calc(var(--gw));
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.layout-pj-c .pj-item {
	margin: var(--gw) 0;
	width: calc(var(--gw)*6)
}

.layout-pj-c .pj-img {
	aspect-ratio: 3/4
}

.layout-pj-d {
	position: relative;
	padding: var(--gw);
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.layout-pj-d .pj-item {
	width: 50%
}

.layout-pj-d .pj-img {
	aspect-ratio: 11/12
}

.layout-pj-d .pj-text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: var(--gw) calc(var(--gw)*2) var(--gw) var(--gw)
}

.layout-pj-d .pj-text-inner {
	margin-left: var(--gw)
}

.layout-pj-d .ui-btn-a {
	margin-top: 3rem
}

.restaurant-menu-index {
	writing-mode: vertical-lr;
	margin: 0 0 0 auto;
	white-space: nowrap
}

.restaurant-menu-index .num {
	writing-mode: horizontal-tb;
	display: none
}

.restaurant-menu-index .slash {
	transform: rotate(120deg);
	display: inline-block;
	margin: .5rem 0
}

.restaurant-menu-item {
	margin-top: 1rem;
	line-height: 1.4;
	padding: 1rem var(--gw)
}

.restaurant-menu-item,
.restaurant-menu-item>div {
	display: flex;
	align-items: center
}

.restaurant-menu-item .num {
	margin-right: 1.5rem;
	letter-spacing: .25em;
	color: var(--col-grey);
	opacity: .6;
	white-space: nowrap
}

.restaurant-menu-item .ttl {
	margin-right: 2rem
}

.restaurant-menu-item .txt br {
	display: none
}

.p-project-cta {
	position: relative
}

.p-project-cta .layout-c-item {
	position: relative;
	min-height: calc(var(--vh)*75);
	display: flex;
	align-items: center
}

.p-project-cta .project-mat {
	padding: calc(var(--gw)*2);
	background: var(--col-mat)
}

.p-project-cta .project-mat .p-project-thumb {
	width: calc(var(--gw)*6);
	aspect-ratio: 3/4
}

.p-project-cta .project-info {
	padding: calc(var(--gw)*2);
	height: 100%;
	display: flex;
	align-items: center
}

.p-project-cta .prod-title {
	margin-bottom: 1em
}

.p-project-cta .prod-desc {
	margin-bottom: 4em
}

.p-project-cta .layout-flex {
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap
}

.p-project-cta .price-container {
	margin: 1em 2em 1em 0
}

.section-other {
	height: calc(var(--vh)*100);
	overflow: hidden
}

.section-other .plx-footer {
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.section-other .layout-a {
	position: relative
}

.section-other .s-other-head * {
	padding-bottom: 0
}

.section-other .pj-list li {
	display: flex
}

.section-other .pj-list .number {
	bottom: .5em;
	color: var(--col-line-light);
	margin-left: calc(var(--gw)*-1)
}

.section-other .pj-list .ja-title a>span {
	font-size: .925em
}

.section-other .other-pj-thumbs {
	width: calc(var(--gw)*3);
	aspect-ratio: 3/4;
	position: absolute;
	left: var(--gw);
	bottom: calc(var(--gw) + 1em)
}

.section-other .other-pj-thumbs .js-bg-img {
	position: absolute;
	left: 0;
	top: 0
}

.section-other .l-figure {
	position: absolute;
	left: 0;
	top: 100%;
	width: 116vw;
	height: 24.94vw;
	transform: translate(-8vw, calc(var(--vh)*-18));
	background: url(../img/logo.svg) no-repeat 50% 50%/contain;
	opacity: .1
}

@media screen and (max-width:1300px) {
	.p-project-cta .project-info {
		padding: calc(var(--gw)*2) var(--gw) var(--gw)
	}
}

.p-news-archive {
	position: relative;
	padding: 0 var(--gw)
}

.news-archive-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap
}

.news-archive-header .news-archive-category,
.news-archive-header .news-archive-title {
	padding-bottom: 2em
}

.news-archive-header .news-archive-category h2,
.news-archive-header .news-archive-title h2 {
	line-height: 1;
	margin-right: 2em
}

.news-archive-header .category-list {
	padding: .5em 0 0
}

.news-archive-header .category-list li {
	display: inline-block;
	margin: 0 0 0 1em;
	height: 3em
}

.news-archive-header .category-list [data-term],
.news-archive-header .category-list a {
	cursor: pointer;
	position: relative;
	display: block;
	line-height: 1.4;
	border-radius: 2em;
	overflow: hidden;
	padding: .5em 1.25em
}

.news-archive-body {
	position: relative
}

.news-archive-body .more-btn {
	cursor: pointer;
	position: relative;
	width: calc(var(--gw)*4);
	height: calc(var(--gw)*1);
	margin-top: var(--gw);
	margin-left: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden
}

.news-archive-body .more-btn.disabled {
	pointer-events: none;
	height: 0;
	padding: 0;
	opacity: 0;
	overflow: hidden
}

.news-archive-external-link .ui-btn-a .ic svg {
	transform: scale(.6) rotate(-30deg)
}

.ajax-post-all {
	position: fixed;
	height: 0;
	visibility: hidden
}

.news-archive-footer {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap
}

.news-archive-footer .page-label {
	padding: 0
}

.news-archive-footer .ui-prevnext {
	margin-top: 0
}

.page-label {
	display: flex;
	align-items: baseline;
	line-height: 1;
	padding: 4em 0 2em
}

.page-label .page-label-h {
	margin-right: 1.5em
}

.page-label .page-label-b {
	display: flex;
	align-items: baseline
}

.page-label .page-label-b:before,
.page-label .sep {
	display: inline-block;
	padding: 0 .15em
}

.page-label .page-label-b:before {
	content: "("
}

.page-label .page-label-b:after {
	content: ")";
	display: inline-block;
	padding: 0 .15em
}

.news-archive-list {
	margin-bottom: var(--gw);
	min-height: calc(var(--gw)*5*4/5 + 4rem)
}

.news-archive-list li {
	position: relative
}

.news-archive-list .post-links>li {
	opacity: 0
}

.news-archive-list .news-archive-post {
	display: flex;
	padding: 2em 0
}

.news-archive-list .news-archive-post .news-archive-post-side {
	width: calc(var(--gw)*7);
	padding-right: calc(var(--gw)*1.5)
}

.news-archive-list .news-archive-post .news-archive-post-thumb {
	width: 100%;
	aspect-ratio: 5/4;
	max-height: 20rem;
	background: var(--col-mat);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2em
}

.news-archive-list .news-archive-post .news-archive-post-thumb .img img {
	-o-object-fit: contain;
	object-fit: contain
}

.news-archive-list .news-archive-post .news-archive-post-body {
	flex: 1;
	padding: calc(var(--gw)*0.5) 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.news-archive-list .news-archive-post .archive-post-title {
	max-width: 100%;
	line-height: 1.6
}

.news-archive-list .news-archive-post .archive-post-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 2em
}

.news-archive-list .news-archive-post .archive-post-data {
	display: flex;
	align-items: center
}

.news-archive-list .news-archive-post .archive-post-data .date {
	min-width: calc(var(--gw)*2);
	padding-right: 2em;
	color: var(--col-grey)
}

.news-archive-list .news-archive-post .archive-post-data .category {
	position: relative;
	padding-left: .5em;
	line-height: 1.4;
	display: flex
}

.news-archive-list .news-archive-post .archive-post-data .category:before {
	content: "";
	display: inline-block;
	width: .5em;
	height: .5em;
	background: var(--col-grey);
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%)
}

.news-archive-list .news-archive-post .archive-post-data .category li {
	padding-left: 1em
}

.news-half-img {
	opacity: 0
}

.news-post-aside .back,
.news-post-main .layout-a-main .back {
	width: calc(var(--gw)*3);
	line-height: 1;
	transform: translate(-.3rem)
}

.news-post-aside .back .ui-btn-a .link-double,
.news-post-main .layout-a-main .back .ui-btn-a .link-double {
	position: relative;
	padding: 0
}

.news-post-aside .back .ui-btn-a .ui-in,
.news-post-main .layout-a-main .back .ui-btn-a .ui-in {
	justify-content: flex-start
}

.news-post-aside .back .ui-btn-a .ui-in>:last-child,
.news-post-main .layout-a-main .back .ui-btn-a .ui-in>:last-child {
	margin-left: 1.5em
}

.news-post-aside .back .ui-btn-a .ic,
.news-post-main .layout-a-main .back .ui-btn-a .ic {
	width: max(calc(var(--gw)*0.5), 2.5em);
	height: max(calc(var(--gw)*0.5), 2.5em)
}

.news-post-aside {
	position: relative;
	margin: 0 var(--gw);
	height: 4rem
}

.news-post-aside .news-post-aside-layout {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 1em
}

.news-post-aside .date {
	flex: 1
}

.news-post-aside .category {
	position: relative;
	padding: 0 .5em;
	line-height: 1.4;
	display: flex
}

.news-post-aside .category:before {
	content: "";
	display: inline-block;
	width: .5em;
	height: .5em;
	background: var(--col-grey);
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%)
}

.news-post-aside .category li {
	padding-left: 1em
}

.news-post-main {
	margin-bottom: var(--gw)
}

.news-post-main .layout-a-side {
	position: sticky;
	top: 0;
	width: calc(var(--gw)*8);
	padding-right: calc(var(--gw)*1.5)
}

.news-post-thumb {
	display: flex;
	aspect-ratio: 3/4
}

.news-post-thumb .img img {
	-o-object-fit: contain;
	object-fit: contain
}

.news-post-mat {
	padding: var(--gw) 2em;
	background: var(--col-mat);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%
}

.news-post-nav {
	position: relative;
	padding-top: 2em;
	opacity: 0
}

.news-post-nav .news-post-nav-title {
	padding: 0 0 4em
}

.news-post-header .news-post-title {
	margin: 4rem 0
}

.news-post-header .news-post-title h2 {
	letter-spacing: 0
}

.news-post-header .sepdots {
	margin: 4rem 0
}

.news-post-header .sepdots span {
	display: inline-block;
	margin-left: .2em;
	margin-right: .2em;
	width: .2em;
	height: .2em;
	border-radius: 50%;
	background: var(--col-grey)
}

#js-leaf {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1
}

.notfound-page {
	min-height: calc(var(--vh)*90);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative
}

.notfound-body {
	display: flex;
	flex-direction: column;
	padding: calc(var(--gw)*1.5) 0 var(--gw)
}

.notfound-body h2 {
	font-size: 24vw;
	white-space: nowrap;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -46%)
}

.notfound-body .marquee-inner {
	-webkit-animation: marquee 60s linear infinite;
	animation: marquee 60s linear infinite
}

.notfound-body .marquee-inner li {
	font-size: 20vw
}

.notfound-body .marquee-inner .sep {
	width: 2em
}

.notfound-button {
	padding: 0 var(--gw);
	position: absolute;
	left: 0;
	top: calc(var(--gw)*3);
	z-index: 1
}

@media screen and (max-width:1024px) {
	[data-n-tb="0"] {
		width: 100%;
		height: calc(var(--gw)*0)
	}

	[data-n-tb="1"] {
		width: 100%;
		height: calc(var(--gw)*1)
	}

	[data-n-tb="2"] {
		width: 100%;
		height: calc(var(--gw)*2)
	}

	[data-n-tb="3"] {
		width: 100%;
		height: calc(var(--gw)*3)
	}

	[data-n-tb="4"] {
		width: 100%;
		height: calc(var(--gw)*4)
	}

	[data-n-tb="5"] {
		width: 100%;
		height: calc(var(--gw)*5)
	}

	[data-n-tb="6"] {
		width: 100%;
		height: calc(var(--gw)*6)
	}

	[data-n-tb="7"] {
		width: 100%;
		height: calc(var(--gw)*7)
	}

	[data-n-tb="8"] {
		width: 100%;
		
	}

	[data-n-tb="9"] {
		width: 100%;
		height: calc(var(--gw)*9)
	}

	[data-n-tb="10"] {
		width: 100%;
		height: calc(var(--gw)*10)
	}

	.pc {
		display: none
	}

	.tb {
		display: block !important
	}

	html {
		overflow: hidden scroll
	}

	.fullscreen-img {
		height: calc(var(--gw)*16);
		max-height: calc(var(--vh)*60)
	}

	.fullscreen-video {
		margin: 0 auto
	}

	.fullscreen-video>.js-bg-img .img,
	.fullscreen-video>.js-bg-video .video {
		height: 100%;
		top: 0
	}

	.half-img .js-bg-img .img {
		top: -10%;
		height: 110%
	}

	.is-any .fullscreen-video .js-cursor {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: none !important
	}

	.js-bg-video .video,
	.plx-footer,
	.plx-img .js-bg-img .img {
		transform: none !important
	}

	.ui-btn-follow {
		width: calc(var(--gw)*5);
		height: calc(var(--gw)*5);
		min-width: auto;
		min-height: auto
	}

	.body-content {
		width: 100%; margin-left: 0;
	}

	.layout-a .layout-a-side {
		width: calc(var(--gw)*8)
	}

	.layout-a .body-content {
		margin-left: 0;
		width: calc(var(--gw)*13)
	}

	.dot-header .dot {
		width: max(calc(var(--gw)*0.6), 2em);
		height: max(calc(var(--gw)*0.6), 2em)
	}

	.pj-list a {
		line-height: 1.6
	}

	.marquee-inner {
		left: 0
	}

	.header-space {
		height: calc(var(--gw)*5)
	}

	.site-header--el.logo {
		width: calc(var(--gw)*2.4);
		height: var(--gw)
	}

	.site-header--el.logo .logo-svg {
		height: calc(var(--gw)*0.56)
	}

	.site-header--el.header-ui {
		height: var(--gw)
	}

	.site-header--el .ui-link-shop {
		right: calc(var(--gw)*3)
	}

	.site-header--el .ui-link-shop .ic {
		margin-right: .25em
	}

	.site-header--el .ui-toggle {
		right: calc(var(--gw)*-0.25)
	}

	.site-menu-main,
	.site-menu-main .bg {
		width: calc(var(--gw)*15)
	}

	.site-menu-side {
		width: calc(100vw - var(--gw)*15)
	}

	.site-footer {
		height: auto;
		
	}

	.site-footer .l-figure {
		width: 120vw;
		height: 25.8vw;
		transform: translate(-10vw, 5vw)
	}

	.footer-body .footer-box-a .mark {
		width: calc(var(--gw)*0.8)
	}

	.sub-pagename {
		height: var(--gw);
		left: calc(var(--gw)*5)
	}
}
.js-bg-img .img img{width: 100%}
@media screen and (max-width:1024px) {
	.splash-logo {
		width: calc(var(--gw)*3);
		height: calc(var(--gw)*0.75)
	}
	.section-about{display: block;}
	.section-fv {
		height: 100vh
	}

	.section-fv .body {
		height: 100vh
	}

	.section-fv .fv-title {
			}

	.section-fv .fv-box-side {
		bottom: var(--gw);
		border: none
	}

	.section-fv .fv-box-side .box {
		padding: 0;
		width: auto
	}

	.section-fv .fv-box-side .hr,
	.section-fv .fv-box-side .vr {
		display: none
	}

	.section-fv .js-cursor {
		left: calc(var(--gw)*20); display: none
	}

	.section-fv .js-cursor>* {
		transform: translate(0)
	}

	

	.section-about .s-about-bg {
		width: 100%;transform:initial !important; position: initial;
	}
	.section-about .preload{display: none}
	.section-about .img,.section-about .preload{position: initial;}
	.section-about .s-about-bg .img {
		background-position: 30% 50%
	}

	.section-about .body-content,
	.section-about .s-about-title {
		padding: 0
	}
	
	.section-about .body-content{padding: 0 15px}
	.section-about .ui-btn-a {
		margin-top: calc(var(--gw)*2)
	}

	.fullscreen-img .s-about-over {
		width: calc(var(--gw)*6)
	}
	.js-inview .carousel-side{display: block; }
	.fullscreen-img .s-about-over .img {
		height: 100%;
		top: 0
	}

	.section-projects {
		min-height: auto;
		padding: 0
	}

	.carousel-wrapper .carousel-item {
		width: calc(var(--gw)*9);
		height: calc(var(--gw)*10)
	}
	.carousel-wrapper{display: block;}
	.carousel-wrapper .carousel-body {
		width: 100%
	}
	.carousel-wrapper .carousel-side .info h4{font-size: 30px}
	.carousel-wrapper .carousel-side {
		height: 260px;
	}

	.carousel-wrapper .carousel-side .number {
		margin-bottom: 1em
	}

	.carousel-wrapper .carousel-drag-cursor,
	.section-news .news-thumb,
	.section-news .vr {
		display: none
	}

	.section-news .s-news-layout {
		flex-direction: column
	}

	.section-news .s-news-latest {
		padding: 0 var(--gw)
	}

	.section-contact .s-contact-body {
		padding: calc(var(--gw)*1.5) var(--gw) 0 calc(var(--gw)*0.5)
	}

	.section-contact .s-contact-img {
		width: calc(var(--gw)*6)
	}

	.p-fv,
	.p-fv .p-fv-bg {
		height: calc(var(--vh)*100)
	}

	.p-fv .p-fv-body {
		padding: calc(var(--gw)*4) calc(var(--gw)*2)
	}

	.legalpage-main .legalpage-body {
		width: 100%;
		max-width: calc(var(--gw)*16);
		margin: 0 auto
	}

	.legalpage-side .legal-navigation li {
		padding-left: 2em
	}

	.about-fv-body {
		padding: 0 var(--gw)
	}

	.p-about-summary {
		min-height: auto
	}

	.p-about-summary .layout-a {
		display: block
	}

	.p-about-summary .layout-a-side {
		padding: 0 calc(var(--gw)*3);
		width: 100%
	}

	.p-about-summary .layout-flex {
		justify-content: space-between
	}

	.p-about-summary .about-summary-simg {
		position: relative;
		width: calc(var(--gw)*8.5);
		transform: none !important
	}

	.p-about-summary .about-summary-simg:first-child,
	.p-about-summary .about-summary-simg:last-child {
		left: 0;
		top: 0
	}

	.p-about-summary .layout-a .layout-a-main {
		padding: 0
	}

	.p-about-summary .about-summary-image {
		transform: none !important;
		aspect-ratio: auto;
		height: calc(var(--gw)*16);
		max-height: calc(var(--vh)*60)
	}

	.p-about-team .about-team-images {
		margin-left: calc(var(--gw)*-7);
		-moz-column-gap: var(--gw);
		column-gap: var(--gw)
	}

	.p-about-team .members>ul {
		margin-left: calc(var(--gw)*8);
		width: auto
	}

	.p-about-team .members>ul>li {
		width: calc(var(--gw)*5)
	}

	.p-about-hakusan .about-hakusan-map {
		width: calc(var(--gw)*6);
		height: calc(var(--gw)*8)
	}

	.section-next {
		height: calc(var(--vh)*50)
	}

	.section-next .js-cursor {
		position: absolute;
		left: calc(var(--gw)*20);
		top: 50%;
		transform: none !important
	}

	.section-next .js-cursor .ui-btn-follow {
		visibility: visible !important;
		transform: translate(-50%, -50%) !important;
		opacity: 1 !important
	}

	.section-next .next-ul {
		animation: marquee 30s linear infinite reverse
	}

	.section-next .next-wrap:last-of-type .next-ul {
		-webkit-animation: marquee 30s linear infinite;
		animation: marquee 30s linear infinite
	}

	.js-projects-scroll .js-cursor {
		display: none
	}

	.projects-list-section {
		height: calc(var(--vh)*96)
	}

	.projects-list-section .contents-body {
		padding: calc(var(--gw)*2)
	}

	.projects-list-section .contents-inner {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-end
	}

	.projects-list-section .action .ui-btn-a {
		margin-top: 1.5em
	}

	.projects-list-section .layout-flex {
		display: block
	}

	.projects-list-section .number {
		margin-bottom: .5em
	}

	.projects-list-section .projects-list-title {
		margin-top: .4em;
		margin-bottom: .6em;
		line-height: 1.2
	}

	.projects-list-section .js-cursor {
		display: none
	}

	.project-fv-title {
		height: calc(var(--gw)*1.75)
	}

	.p-project-summary .layout-a-side {
		padding: var(--gw) calc(var(--gw)*2)
	}

	.p-project-summary .layout-a-main {
		padding-right: calc(var(--gw)*3);
		padding-left: var(--gw)
	}

	.p-project-cta .layout-c-item {
		min-height: auto
	}

	.p-project-cta .dot-header,
	.p-project-cta .project-info {
		padding: var(--gw)
	}

	.p-project-cta .prod-desc {
		margin-bottom: 2em
	}

	.p-project-cta .button-container {
		width: 100%;
		margin-top: 1rem;
		margin-bottom: 1rem
	}

	.p-project-cta .project-mat {
		height: 100%;
		display: flex;
		align-items: center
	}

	.section-other .s-other-head {
		margin-bottom: calc(var(--gw)*-2)
	}

	.section-other .pj-list .f-xl {
		font-size: 6vw
	}

	.section-other .other-pj-thumbs {
		display: none
	}

	.section-other .l-figure {
		transform: translate(-8vw, -20vw)
	}

	.layout-pj-c {
		padding: var(--gw) calc(var(--gw)*2)
	}

	.layout-pj-d .pj-item {
		flex: 1
	}

	.layout-pj-d .pj-img {
		width: calc(var(--gw)*8);
		aspect-ratio: 3/3.25;
		margin: 0 auto
	}

	.layout-pj-d .pj-text {
		padding: 0 var(--gw)
	}

	.layout-pj-d .ttl-s {
		margin-bottom: var(--gw)
	}

	.layout-pj-d .pj-text-inner {
		margin-left: 0
	}

	.layout-pj-d .ui-btn-a {
		margin-top: var(--gw)
	}

	.restaurant-menu-index {
		margin-right: 0
	}

	.restaurant-menu-item {
		padding: 0 .25rem 1rem
	}

	.restaurant-menu-item .num {
		margin-right: 1rem
	}

	.restaurant-menu-item .ttl {
		margin-right: 1.5rem
	}

	.news-archive-header .news-archive-category {
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
		margin: 0 calc(var(--gw)*-1);
		padding-right: var(--gw);
		padding-left: var(--gw)
	}

	.news-archive-header .news-archive-category::-webkit-scrollbar {
		height: 1px
	}

	.news-archive-header .category-list {
		white-space: nowrap;
		margin-right: 1em
	}

	.news-archive-header .category-list li {
		margin: 0 .5em 0 0
	}

	.news-archive-list {
		margin-left: 0
	}

	.news-archive-list .news-archive-post .news-archive-post-side {
		padding-right: var(--gw)
	}

	.news-archive-list .news-archive-post .news-archive-post-thumb {
		aspect-ratio: 5/4
	}

	.news-archive-list .news-archive-post .news-archive-post-body {
		height: auto
	}

	.news-archive-list .news-archive-post .archive-post-title {
		width: auto
	}

	.news-post-aside {
		height: auto
	}

	.news-post-aside .back,
	.news-post-main .layout-a-main .back {
		width: calc(var(--gw)*4)
	}

	.news-post-main {
		padding-top: var(--gw)
	}

	.news-post-main .layout-a-side {
		padding: var(--gw)
	}

	.news-post-header .sepdots {
		margin: 2rem 0
	}

	.notfound-page {
		min-height: calc(var(--vh)*90)
	}

	.notfound-button {
		top: calc(var(--gw)*5)
	}
}

@media screen and (max-width:750px) {
	[data-n-mb="0"] {
		width: 100%;
		height: calc(var(--gw)*0)
	}

	[data-n-mb="1"] {
		width: 100%;
		height: calc(var(--gw)*1)
	}

	[data-n-mb="2"] {
		width: 100%;
		height: calc(var(--gw)*2)
	}

	[data-n-mb="3"] {
		width: 100%;
		height: calc(var(--gw)*3)
	}

	[data-n-mb="4"] {
		width: 100%;
		height: calc(var(--gw)*4)
	}

	[data-n-mb="5"] {
		width: 100%;
		height: calc(var(--gw)*5)
	}

	[data-n-mb="6"] {
		width: 100%;
		height: calc(var(--gw)*6)
	}

	[data-n-mb="7"] {
		width: 100%;
		height: calc(var(--gw)*7)
	}

	[data-n-mb="8"] {
		width: 100%;
		height: calc(var(--gw)*8)
	}

	[data-n-mb="9"] {
		width: 100%;
		height: calc(var(--gw)*9)
	}

	[data-n-mb="10"] {
		width: 100%;
		height: calc(var(--gw)*10)
	}

	:root {
		--gw: 8.33333vw
	}

	.mb {
		display: block !important
	}

	.no-mb {
		display: none !important
	}

	.fullscreen-img {
		height: calc(var(--gw)*14);
		max-height: calc(var(--vh)*80)
	}

	.fullscreen-video {
		padding: 0;
		width: 100%;
		height: calc(56.25vw + var(--gw)*2)
	}

	.fullscreen-video .js-cursor {
		top: 50%;
		left: 50%
	}

	.fullscreen-video>.js-bg-img,
	.fullscreen-video>.js-bg-video {
		width: calc(var(--gw)*10);
		height: auto;
		aspect-ratio: 1920/1080;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%)
	}

	.block-video {
		width: 100vw;
		margin-bottom: var(--gw)
	}

	.is-playing-wrap .block-video .cover-btn,
	.is-playing-wrap .video-wrapper {
		position: fixed;
		height: 100vh;
		width: 100vw;
		left: 0;
		top: 0;
		z-index: 21
	}

	.is-playing-wrap .video-wrapper {
		display: flex;
		align-items: center
	}

	.is-playing-wrap .playing-bg {
		position: absolute;
		height: 100vh;
		width: 100vw;
		left: 0;
		top: 0
	}

	.marquee .marquee-inner {
		left: -50vw
	}

	.marquee .project-logo {
		height: calc(var(--gw)*1.5)
	}

	.marquee .ja-title li div {
		font-size: 1em;
		margin-top: 0;
		margin-bottom: 0
	}

	.marquee .sep {
		width: 30vw
	}

	.marquee .sep:before {
		width: 2vw;
		height: 2vw
	}

	.icon-i {
		width: calc(var(--gw)*0.75);
		height: calc(var(--gw)*0.75)
	}

	.icon-i .stroke {
		stroke-width: 12px
	}

	.ui-btn-a {
		position: relative;
		display: block;
		width: 100%
	}

	.ui-btn-a .ui-in {
		justify-content: space-between
	}

	.ui-btn-a .ic {
		width: var(--gw);
		height: var(--gw)
	}

	.ui-btn-a .ic svg {
		transform: scale(.7)
	}

	.ui-btn-a .link-double {
		position: static;
		padding: 2em 0 1.75em
	}

	.ui-prevnext {
		width: calc(var(--gw)*2);
		height: var(--gw);
		margin-top: 0
	}

	.ui-btn-follow {
		width: calc(var(--gw)*3);
		height: calc(var(--gw)*3)
	}

	.layout-a {
		display: block
	}

	.layout-a .layout-a-side {
		width: auto;
		padding: 30px 15px;
	}

	.layout-a .layout-a-main {
		padding: 30px 15px;
	}

	.layout-c p {
		margin-bottom: .25em
	}

	.body-content {
		margin: 0 calc(var(--gw)*2);
		width: auto
	}

	.layout-a .body-content {
		margin: 0;
		width: auto
	}

	.dot-header {
		letter-spacing: .02em
	}

	.dot-header .dot {
		width: calc(var(--gw) - .8em);
		height: calc(var(--gw) - .8em);
		margin-right: .8em;
		background: #7ce8b3;
		border-radius: 50%
	}

	.site-header--el {
		top: calc(var(--gw)*0.75)
	}

	.site-header--el.logo {
		left: var(--gw);
		width: 100px;
		margin-top: 0;
	}

	.site-header--el.logo .logo-svg {
		height: calc(var(--gw)*0.38)
	}

	.site-header--el.header-ui {
		height: calc(var(--gw)*0.75)
	}

	.site-header--el .ui-link-shop {
		right: calc(var(--gw)*2.25);
		transform: translateY(-50%)
	}

	.site-header--el .ui-toggle {
		width: min(calc(var(--gw)*1.4), 3.5em);
		height: min(calc(var(--gw)*1.4), 3.5em)
	}

	.site-menu-side {
		display: none
	}

	.site-menu-main,
	.site-menu-main .bg {
		width: calc(var(--gw)*10)
	}

	.site-menu-main .pointer {
		left: calc(var(--gw) + .35em)
	}

	.site-menu-main .in {
		justify-content: flex-start;
		padding: calc(var(--gw)*2) calc(var(--gw)*1.75) calc(var(--gw)*1.75) calc(var(--gw)*2)
	}

	.site-menu-main .menu-main {
		margin-top: 1em;
		margin-bottom: .5em
	}

	.site-menu-main .menu-legal {
		line-height: 1.5;
		margin-bottom: 2em
	}

	.site-menu-main .menu-legal>li {
		margin-bottom: .5em
	}

	.sub-pagename {
		position: absolute;
		transform: none !important;
		height: auto;
		left: var(--gw);
		top: calc(var(--gw)*3)
	}

	.site-footer {
		padding-bottom: calc(var(--gw)*4)
	}

	.footer-body {
		display: block
	}

	.footer-body .vr {
		display: none
	}

	.footer-body .footer-box-b,
	.footer-body .footer-box-c {
		width: auto;
		padding: 30px 15px;
		border-top: 1px solid var(--col-line)
	}

	.footer-body .footer-box-a {
		width: auto;
		padding: 30px 15px;
		border: none
	}

	.footer-body .footer-box-a .mark {
		width: calc(var(--gw)*0.6);
		transform: translate(0)
	}

	.footer-body .footer-box-a .in {
		background-size: calc(var(--gw)*8) auto;
		padding-bottom: calc(var(--gw)*3.5);
		align-items: center
	}

	.footer-body li a {
		display: inline-block;
		margin: .3em 0
	}

	.footer-body .footer-logo {
		width: calc(var(--gw)*8);
		height: calc(var(--gw)*2.75)
	}
}

@media screen and (max-width:750px) {
	.section-fv .body {
		padding: var(--gw) var(--gw) calc(var(--gw)*1.5)
	}

	.section-fv .fv-title {
		margin: 0;
		width: 100%
	}
	.section-fv .fv-title span{font-size: 36px !important;}
	.section-fv .fv-kana {
		margin-left: -.25em
	}

	.section-fv .fv-box-side {
		bottom: 0
	}

	.section-fv .js-cursor {
		left: calc(var(--gw)*9.75);
		top: auto;
		bottom: var(--gw)
	}

	.section-about .s-about-bg {
		position: relative;
		top: auto;
		left: auto;
		width: calc(var(--gw)*12);
		height: calc(var(--gw)*8);
		margin: 0 auto;
		transform: translate(0)
	}

	.section-about .s-about-bg .img {
		background-position: 50% 50%
	}

	.section-about .body-content {
		padding: 0; margin: 30px 15px;
	}
	.section-about{min-height: auto}
	.section-about .ui-btn-a {
		margin: var(--gw) 0 0
	}

	.section-projects .body-content {
		padding: 0; 
	}

	.carousel-wrapper {
		flex-direction: column-reverse
	}

	.carousel-wrapper .carousel-side {
		position: relative;
		margin: var(--gw) 0; padding: 30px 15px;
		flex-direction: row
	}

	.carousel-wrapper .carousel-side .in {
		height: 10em
	}

	.carousel-wrapper .carousel-side .carousel-side-content {
		display: flex;
		width: 100%
	}

	.carousel-wrapper .carousel-side .number {
		position: relative;
		width: var(--gw);
		font-size: 3vw;
		top: .5vw
	}

	.carousel-wrapper .carousel-side .info {
		flex: 1;
		padding-right: calc(var(--gw) + 4em)
	}

	.carousel-wrapper .carousel-side .info a {
		position: absolute;
		right: var(--gw);
		top: 0
	}

	.carousel-wrapper .carousel-side .info p {
		margin-bottom: 1em
	}

	.carousel-wrapper .carousel-controller {
		position: absolute;
		left: var(--gw);
		bottom: 0
	}

	.carousel-wrapper .carousel-item-content {
		padding: 1.5em
	}

	.carousel-wrapper .carousel-body {
		width: calc(var(--gw)*10);
		margin-left: calc(var(--gw)*2)
	}

	.carousel-wrapper .carousel-item {
		width: calc(var(--gw)*9);
		height: calc(var(--gw)*10)
	}

	.section-news .s-news-main .layout-a-main {
		display: none
	}

	.section-news .mb.ui-btn-a {
		display: block
	}

	.section-news .s-news-latest {
		padding: 30px 15px;
	}

	.section-news .s-news-list {
		border-top: 1px solid var(--col-line);
		margin-bottom: var(--gw)
	}

	.section-news .s-news-list a {
		padding: 1em 0 0;
		flex-direction: column
	}

	.section-news .s-news-list .date {
		opacity: .6;
		padding: .25em 0 1.5em
	}

	.section-contact .s-contact-body {
		padding: calc(var(--gw)*3.5) calc(var(--gw)*2) 0;
		flex-direction: column
	}

	.section-contact .s-contact-img {
		position: relative;
		bottom: 0;
		left: 0;
		width: calc(var(--gw)*6);
		margin: calc(var(--gw)*-6) auto var(--gw)
	}

	.p-fv .p-fv-body {
		padding: calc(var(--gw)*2.5) var(--gw) calc(var(--gw)*2)
	}

	.legalpage-container {
		display: block
	}

	.legalpage-main {
		padding: 0 var(--gw)
	}

	.legalpage-main .legalpage-body {
		width: auto
	}

	.legalpage-main .legalpage-title {
		padding: 0;
		margin: var(--gw) 0
	}

	.legalpage-main .legalpage-title h2 {
		line-height: 1.2
	}

	.legalpage-main .legalpage-title .mark {
		position: absolute;
		right: 0;
		bottom: .25em
	}

	.legal-lead {
		margin: var(--gw) 0
	}

	.legalpage-privacy-policy,
	.legalpage-tokusho {
		padding: calc(var(--gw)*2) 0 calc(var(--gw)*0.75)
	}

	.about-fv-lead.pc,
	.legalpage-side {
		display: none
	}

	.about-fv-body,
	.p-about-summary p {
		padding: 0 var(--gw)
	}

	.p-about-summary .layout-a-main {
		padding: 0
	}

	.p-about-summary .layout-a-main .p-about-image {
		height: calc(var(--vh)*90) !important
	}

	.p-about-summary .about-summary-image {
		height: calc(var(--gw)*14);
		max-height: calc(var(--vh)*80)
	}

	.p-about-hakusan .layout-a-main,
	.p-about-team .layout-a-main {
		padding: var(--gw)
	}

	.p-about-hakusan .body-content,
	.p-about-team .body-content {
		padding: 0 var(--gw)
	}

	.p-about-team .about-team-images {
		width: auto;
		margin-left: 0;
		flex-wrap: wrap;
		row-gap: var(--gw)
	}

	.p-about-team .about-team-image {
		width: 100%
	}

	.p-about-team .hr {
		display: none
	}

	.p-about-team .role {
		text-align: center
	}

	.p-about-team .members>ul {
		margin: 0 calc(var(--gw)*2);
		display: block;
		text-align: center
	}

	.p-about-team .members>ul>li {
		border-top: 1px solid var(--col-line);
		width: auto;
		padding: 2em 0
	}

	.p-about-hakusan .about-hakusan-images {
		padding: 0 var(--gw)
	}

	.p-about-hakusan .about-hakusan-image,
	.p-about-hakusan .about-hakusan-map {
		width: calc(var(--gw)*8);
		height: calc(var(--gw)*6)
	}

	.p-about-hakusan .layout-a .layout-a-side {
		padding-bottom: 0
	}

	.section-next {
		height: calc(var(--vh)*90)
	}

	.section-next .js-cursor {
		display: none
	}

	.section-next .next-footer {
		padding: var(--gw)
	}

	.next-wrap {
		transform: translate(-50%, calc(-100% - var(--gw))) rotate(-15deg)
	}

	.next-item {
		width: calc(var(--gw)*6);
		height: calc(var(--gw)*8);
		margin-right: var(--gw)
	}

	.next-wrap:last-of-type {
		transform: translate(-50%, calc(var(--gw)*0.5)) rotate(-15deg)
	}

	.project-fv-title {
		height: calc(var(--gw)*1.05)
	}

	.projects-list-section .contents-body {
		padding: calc(var(--gw)*2) var(--gw)
	}

	.projects-list-section .action {
		width: 100%
	}

	.projects-list-section .action .ui-btn-a {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content
	}

	.projects-list-section .action .ui-btn-a .link-double {
		transform: none;
		position: relative;
		padding: 0
	}

	.projects-list-section .action .ui-in>:last-child {
		margin-left: 1em
	}

	.projects-list-section .number {
		padding: 0;
		margin-bottom: .5em
	}

	.projects-list-section .projects-list-title {
		margin-bottom: .5em;
		margin-top: .5em
	}

	.project-fv-inner {
		width: calc(var(--gw)*10)
	}

	.project-fv-inner .project-logo {
		max-width: 100%
	}

	.p-project-summary .layout-a-side {
		padding: var(--gw)
	}

	.p-project-summary .p-project-thumb {
		margin: 0 auto
	}

	.p-project-summary .layout-a-main {
		padding: var(--gw) calc(var(--gw)*2)
	}

	.p-project-summary .project-headline {
		margin-top: var(--gw);
		margin-bottom: var(--gw)
	}

	.p-project-article .layout-a .layout-a-side {
		padding-left: calc(var(--gw)*2)
	}

	.layout-pj-a {
		padding: 0
	}

	.layout-pj-b {
		display: block;
		padding: 0
	}

	.layout-pj-b .pj-item {
		width: calc(var(--gw)*10);
		margin: var(--gw) auto
	}

	.layout-pj-b .pj-item:nth-child(2n) {
		top: 0
	}

	.layout-pj-b .pj-item:last-of-type {
		margin-bottom: 0
	}

	.layout-pj-c {
		display: block;
		padding: 0 var(--gw)
	}

	.layout-pj-c .pj-item {
		margin: calc(var(--gw)*-2.5) 0 0;
		width: calc(var(--gw)*4.5)
	}

	.layout-pj-c .pj-item:first-child {
		margin-top: 0
	}

	.layout-pj-c .pj-item:nth-child(2n) {
		margin-left: auto
	}

	.layout-pj-d .pj-item {
		width: 100%
	}

	.layout-pj-d .pj-img {
		width: calc(var(--gw)*10)
	}

	.layout-pj-d .pj-text {
		margin-bottom: calc(var(--gw)*2)
	}

	.layout-pj-d .pj-text-inner {
		margin-left: 0
	}

	.layout-pj-d .ui-btn-a {
		margin-top: var(--gw)
	}

	.p-project-cta .hr,
	.p-project-cta .pc,
	.p-project-cta .vr {
		display: none
	}

	.p-project-cta .dot-header.mb {
		padding: calc(var(--gw)*1.5) var(--gw);
		display: flex !important
	}

	.p-project-cta .layout-c {
		display: block
	}

	.p-project-cta .layout-c-item {
		min-height: auto;
		width: 100%;
		padding: 0
	}

	.p-project-cta .layout-c-item div {
		width: 100%
	}

	.p-project-cta .project-mat {
		width: 100%;
		padding: var(--gw)
	}

	.p-project-cta .project-mat .p-project-thumb {
		width: calc(var(--gw)*6);
		height: calc(var(--gw)*8);
		margin: 0 auto
	}

	.p-project-cta .project-info {
		padding: var(--gw) var(--gw) calc(var(--gw)*2)
	}

	.p-project-cta .prod-title {
		padding: 0 var(--gw);
		margin-top: 1em
	}

	.p-project-cta .prod-desc {
		padding: 0 var(--gw);
		margin-bottom: 1em
	}

	.p-project-cta .layout-flex {
		padding: 0 var(--gw)
	}

	.p-project-cta .price-container {
		margin-bottom: 2em
	}

	.p-project-cta .button-container {
		width: 100%
	}

	.p-project-cta .button-container .ic {
		top: 0
	}

	.section-other .pj-list .number {
		margin-left: 0
	}

	.restaurant-menu-item {
		padding: 1rem var(--gw) var(--gw)
	}

	.restaurant-menu-item .ttl {
		font-size: 1.5em
	}

	.restaurant-menu-item .num {
		margin-right: 3rem
	}

	.restaurant-menu-item .ttl {
		margin-right: 3.5rem
	}

	.restaurant-menu-item .txt br {
		display: block
	}

	.news-archive-header {
		margin-top: 2em
	}

	.news-archive-header .news-archive-category {
		padding-bottom: 1.5em
	}

	.page-label .page-label-h {
		margin-right: 1em
	}

	.page-label .sep {
		padding: 0;
		font-weight: 400
	}

	.page-label .total {
		font-weight: 400
	}

	.page-label .current {
		font-size: unset;
		font-weight: 400
	}

	.news-archive-list {
		margin-bottom: var(--gw)
	}

	.news-archive-list .news-archive-post {
		flex-direction: column;
		align-items: center;
		padding: var(--gw) 0 0
	}

	.news-archive-list .news-archive-post .news-archive-post-side {
		width: calc(var(--gw)*10);
		padding: 0
	}

	.news-archive-list .news-archive-post .news-archive-post-thumb {
		aspect-ratio: 5/3;
		padding: 2em var(--gw)
	}

	.news-archive-list .news-archive-post .news-archive-post-body {
		width: 100%;
		padding: calc(var(--gw)*0.5) var(--gw) var(--gw);
		margin-left: 0
	}

	.news-archive-list .news-archive-post .archive-post-title {
		width: auto
	}

	.news-archive-list .news-archive-post .archive-post-footer {
		margin: 2em 0 1em;
		padding-right: 0;
		align-items: flex-end
	}

	.news-archive-list .news-archive-post .archive-post-footer .ui-btn-a {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content
	}

	.news-archive-list .news-archive-post .archive-post-data {
		flex-direction: column;
		align-items: flex-start
	}

	.news-archive-list .news-archive-post .archive-post-data .date {
		margin-bottom: .5em
	}

	.news-archive-list .news-archive-post .ui-btn-a .tx {
		display: none
	}

	.news-archive-list .news-archive-post .ui-btn-a .ic {
		width: var(--gw);
		height: var(--gw)
	}

	.news-archive-footer {
		align-items: center
	}

	.news-post-main .layout-a-main .back {
		width: auto
	}

	.news-post-aside {
		height: auto; margin: 0 15px;
	}

	.news-post-aside .back {
		display: none;
		transform: none
	}

	.news-post-aside .category {
		display: block
	}

	.news-post-main .layout-a-side {
		position: relative;
		padding: 15px
	}

	.news-post-main.layout-a .layout-a-main {
		padding: var(--gw)
	}

	.news-post-thumb {
		margin: 0 auto;
		width: 100%;
		height: calc(var(--gw)*9)
	}

	.news-post-mat {
		width: 100%;
		padding: var(--gw)
	}

	.news-post-header {
		padding: 0
	}

	.news-post-header .news-post-title {
		margin: 0
	}

	.news-post-header .sepdots {
		margin: 4em auto
	}

	.archive-post-footer {
		align-items: flex-end
	}

	.news-post-body {
		margin: 0
	}

	.news-archive-body .more-btn {
		width: 100%
	}

	.news-post-nav {
		display: none
	}

	.notfound-button {
		width: 100%;
		top: 70%
	}
}

body.wp-autoresize.my-editor-class {
	padding: var(--gw) !important
}

.my-editor-class {
	background: var(--col-bg);
	color: var(--col-black);
	font-family: YakuHanJPs, neue-haas-grotesk-text, noto-sans-cjk-jp, sans-serif;
	font-weight: 400;
	letter-spacing: .01em;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	height: auto;
	overflow: auto;
	padding: var(--gw);
	margin-left: 0;
	margin-right: 0;
	font-size: 15px
}

.legalpage-body h3 {
	font-size: clamp(24px, 1.48em, 1.666vw)
}

.legal-body>div,
.legal-body>p {
	margin: 1rem 0
}

.legal-body ol,
.legal-body ul {
	margin: 2rem 0
}

.legal-body>:first-child {
	margin-top: 0
}

.legal-body>:last-child {
	margin-bottom: 0
}

.legal-body *,
.my-editor-class *,
.news-post-body * {
	margin-bottom: 2em;
	line-height: 1.8;
	max-width: 100%
}

.legal-body ol,
.legal-body ul,
.my-editor-class ol,
.my-editor-class ul,
.news-post-body ol,
.news-post-body ul {
	padding: 0
}

.legal-body ol li,
.legal-body ul li,
.my-editor-class ol li,
.my-editor-class ul li,
.news-post-body ol li,
.news-post-body ul li {
	position: relative;
	margin: .5em 0;
	padding-left: calc(var(--gw)*0.5)
}

.legal-body ol li:before,
.legal-body ul li:before,
.my-editor-class ol li:before,
.my-editor-class ul li:before,
.news-post-body ol li:before,
.news-post-body ul li:before {
	display: inline-block;
	position: absolute
}

.legal-body ol,
.my-editor-class ol,
.news-post-body ol {
	counter-reset: listNumber 0
}

.legal-body ol>li:before,
.my-editor-class ol>li:before,
.news-post-body ol>li:before {
	counter-increment: listNumber 1;
	content: counters(listNumber, "-") ". ";
	white-space: nowrap;
	left: .25em;
	top: 0
}

.legal-body ol ol li,
.my-editor-class ol ol li,
.news-post-body ol ol li {
	padding-left: var(--gw)
}

.legal-body ul>li:before,
.my-editor-class ul>li:before,
.news-post-body ul>li:before {
	content: "";
	width: 5px;
	height: 5px;
	background: var(--col-black);
	border-radius: 50%;
	left: .25em;
	top: .75em
}

.legal-body a:not(.link-double):not(.link-single):not(.link-multi),
.my-editor-class a:not(.link-double):not(.link-single):not(.link-multi),
.news-post-body a:not(.link-double):not(.link-single):not(.link-multi) {
	background-image: linear-gradient(0deg, var(--col-line), var(--col-line) 1px, transparent 0, transparent);
	transition: background-image .4s ease
}

.legal-body a:not(.link-double):not(.link-single):not(.link-multi):hover,
.my-editor-class a:not(.link-double):not(.link-single):not(.link-multi):hover,
.news-post-body a:not(.link-double):not(.link-single):not(.link-multi):hover {
	background-image: linear-gradient(0deg, var(--col-black), var(--col-black) 1px, transparent 0, transparent)
}

.my-editor-class,
.news-post-body,
.news-post-header {
	width: 54em
}

.my-editor-class h3,
.my-editor-class h4,
.my-editor-class h5,
.news-post-body h3,
.news-post-body h4,
.news-post-body h5 {
	font-family: YakuHanMPs, neue-haas-grotesk-text, 游明朝体, Yu Mincho, YuMincho, serif;
	font-weight: 400
}

.my-editor-class h3,
.news-post-body h3 {
	font-size: 2.2em
}

.my-editor-class h4,
.news-post-body h4 {
	font-size: 1.8em
}

.my-editor-class h5,
.news-post-body h5 {
	font-size: 1.2em
}

.my-editor-class h6,
.news-post-body h6 {
	font-size: 1em
}

.my-editor-class p,
.news-post-body p {
	margin-bottom: 2em
}

.my-editor-class h3,
.news-post-body h3 {
	line-height: 1.5;
	padding-top: 1em;
	margin-top: 3.5em;
	margin-bottom: 1.25em;
	border-top: 2px solid var(--col-black)
}

.my-editor-class h4,
.news-post-body h4 {
	line-height: 1.6;
	margin-top: 3.5em;
	margin-bottom: 1.75em
}

.my-editor-class h5,
.news-post-body h5 {
	margin-top: 3em;
	margin-bottom: 1em
}

.my-editor-class h6,
.news-post-body h6 {
	line-height: 1.6;
	margin-top: 4em;
	margin-bottom: 2em;
	position: relative;
	display: flex;
	align-items: center;
	padding-left: max(calc(var(--gw)*0.3 + .8em), 2.3em)
}

.my-editor-class h6:before,
.news-post-body h6:before {
	content: "";
	display: block;
	width: max(calc(var(--gw)*0.3), 1.5em);
	height: max(calc(var(--gw)*0.3), 1.5em);
	background: #7ce8b3;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 0
}

.my-editor-class img,
.news-post-body img {
	margin: 3em auto;
	height: auto
}

.my-editor-class .wp-caption,
.news-post-body .wp-caption {
	margin-bottom: 3.5em
}

.my-editor-class .wp-caption img[aria-describedby^=caption-attachment],
.news-post-body .wp-caption img[aria-describedby^=caption-attachment] {
	margin-bottom: .75em
}

.my-editor-class .wp-caption .wp-caption-text,
.news-post-body .wp-caption .wp-caption-text {
	opacity: .6
}

.my-editor-class .wp-video,
.my-editor-class .wp-video-shortcode,
.my-editor-class video,
.news-post-body .wp-video,
.news-post-body .wp-video-shortcode,
.news-post-body video {
	background: var(--col-black);
	height: auto
}

.my-editor-class iframe[src^="https://www.youtube.com"],
.news-post-body iframe[src^="https://www.youtube.com"] {
	width: 100%;
	max-width: 100%;
	height: auto;
	aspect-ratio: 500/281
}

.my-editor-class .alignleft,
.news-post-body .alignleft {
	width: 50%;
	padding-right: 1em;
	float: left;
	margin: 0
}

.my-editor-class .alignright,
.news-post-body .alignright {
	width: 50%;
	padding-left: 1em;
	float: right;
	margin: 0
}

.my-editor-class:after,
.news-post-body:after {
	content: "";
	display: block;
	clear: both
}

.my-editor-class blockquote,
.news-post-body blockquote {
	position: relative;
	padding: var(--gw);
	margin-top: 3em;
	margin-bottom: 3em;
	background: #7ce8b3;
	color: var(--col-white);
	border-radius: 4px
}

.my-editor-class blockquote a,
.news-post-body blockquote a {
	color: var(--col-white)
}

.my-editor-class blockquote p,
.news-post-body blockquote p {
	margin-bottom: 1em;
	font-size: .95em
}

.my-editor-class blockquote img,
.news-post-body blockquote img {
	margin-top: 2em;
	margin-bottom: 2em
}

.my-editor-class blockquote :first-child img,
.news-post-body blockquote :first-child img {
	margin-top: 0
}

.my-editor-class blockquote h6:before,
.news-post-body blockquote h6:before {
	background: var(--col-mat)
}

.my-editor-class blockquote ul,
.news-post-body blockquote ul {
	margin-left: .25em
}

.my-editor-class blockquote ul>li:before,
.news-post-body blockquote ul>li:before {
	background: var(--col-bg);
	left: .3em;
	opacity: .5
}

.my-editor-class blockquote:after,
.news-post-body blockquote:after {
	content: "";
	display: block;
	width: 1px;
	height: calc(100% - 1em);
	position: absolute;
	top: .5em;
	border: 1px solid var(--col-line-light);
	width: calc(100% - 1em);
	pointer-events: none;
	border-radius: 4px
}

.my-editor-class blockquote:before,
.news-post-body blockquote:before {
	left: .25em
}

.my-editor-class blockquote:after,
.news-post-body blockquote:after {
	right: .25em;
	right: .5em
}

.my-editor-class blockquote>:first-child,
.news-post-body blockquote>:first-child {
	margin-top: 0
}

.my-editor-class blockquote>:last-child,
.news-post-body blockquote>:last-child {
	margin-bottom: 0
}

.my-editor-class>:first-child,
.my-editor-class>:first-child :first-child,
.news-post-body>:first-child,
.news-post-body>:first-child :first-child {
	margin-top: 0
}

.my-editor-class>:last-child,
.my-editor-class>:last-child :last-child,
.news-post-body>:last-child,
.news-post-body>:last-child :last-child {
	margin-bottom: 0
}

@media screen and (min-width:2060px) {

	.news-post-body,
	.news-post-header {
		width: calc(var(--gw)*12);
		max-width: 1200px
	}
}

@media (orientation:portrait),
screen and (max-width:1024px) {
	.news-post-main .layout-a-main {
		width: calc(100% - var(--gw)*12)
	}

	.news-post-body,
	.news-post-header {
		width: 100%
	}

	.news-post-body img,
	.news-post-header img {
		max-width: 100%
	}
}

@media screen and (max-width:750px) {
	.news-post-main .layout-a-main {
		width: auto
	}

	.legal-body ol,
	.legal-body ul {
		margin: 2rem 0
	}

	.legal-body ol li,
	.legal-body ul li,
	.my-editor-class ol li,
	.my-editor-class ul li,
	.news-post-body ol li,
	.news-post-body ul li {
		margin: .5em 0;
		padding-left: calc(var(--gw)*0.5)
	}

	.legal-body ol ol li,
	.my-editor-class ol ol li,
	.news-post-body ol ol li {
		padding-left: calc(var(--gw)*0.75)
	}

	.my-editor-class h3,
	.my-editor-class h4,
	.my-editor-class h5,
	.my-editor-class h6,
	.news-post-body h3,
	.news-post-body h4,
	.news-post-body h5,
	.news-post-body h6 {
		letter-spacing: 0
	}

	.my-editor-class h3,
	.news-post-body h3 {
		font-size: 1.8em
	}

	.my-editor-class h4,
	.news-post-body h4 {
		font-size: 1.6em
	}

	.my-editor-class h5,
	.news-post-body h5 {
		font-size: 1.2em
	}

	.my-editor-class p,
	.news-post-body p {
		margin-bottom: 1em
	}

	.my-editor-class h3,
	.news-post-body h3 {
		max-width: none;
		margin-top: 5em
	}

	.my-editor-class h4,
	.news-post-body h4 {
		margin-top: 5em;
		margin-bottom: 2em
	}

	.my-editor-class h6,
	.news-post-body h6 {
		padding-top: calc(var(--gw)*0.025);
		padding-left: max(calc(var(--gw)*0.3 + 1em), 2.6em)
	}

	.my-editor-class h6:before,
	.news-post-body h6:before {
		width: max(calc(var(--gw)*0.3), 1.6em);
		height: max(calc(var(--gw)*0.3), 1.6em)
	}

	.my-editor-class .alignleft,
	.news-post-body .alignleft {
		padding-right: .5em
	}

	.my-editor-class .alignright,
	.news-post-body .alignright {
		padding-left: .5em
	}

	.my-editor-class blockquote,
	.news-post-body blockquote {
		line-height: 1.6;
		font-size: .9em
	}

	.my-editor-class blockquote ul li,
	.news-post-body blockquote ul li {
		padding-left: calc(var(--gw)*1)
	}

	.my-editor-class blockquote:after,
	.news-post-body blockquote:after {
		height: calc(100% - 1em);
		top: .5em;
		width: calc(100% - 1em)
	}

	.my-editor-class blockquote:before,
	.news-post-body blockquote:before {
		left: .25em
	}

	.my-editor-class blockquote:after,
	.news-post-body blockquote:after {
		right: .25em;
		right: .5em
	}

	.my-editor-class blockquote h6,
	.news-post-body blockquote h6 {
		margin-left: 0;
		margin-right: 0
	}

	.my-editor-class blockquote>:first-child,
	.news-post-body blockquote>:first-child {
		margin-top: 0
	}

	.my-editor-class blockquote>:last-child,
	.news-post-body blockquote>:last-child {
		margin-bottom: 0
	}

	.my-editor-class>:first-child,
	.news-post-body>:first-child {
		margin-top: 0
	}

	.my-editor-class>:last-child,
	.news-post-body>:last-child {
		margin-bottom: 0
	}
}