/* Theme Name: mv */

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}
a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.25ch;
}
a:hover,
a:focus {
	text-decoration-style: dashed;
}
a:active {
	text-decoration: none;
}
.wp-block-navigation .wp-block-navigation-item a:hover,
.wp-block-navigation .wp-block-navigation-item a:focus {
	text-decoration: underline;
	text-decoration-style: solid;
}
.wp-block-search__button,
.wp-block-file .wp-block-file__button {
	background-color: var(--wp--preset--color--primary);
	border-radius: 0;
	border: none;
	color: var(--wp--preset--color--background);
	font-size: var(--wp--preset--font-size--medium);
	padding: calc(.667em + 2px) calc(1.333em + 2px);
}
.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link:hover {
	opacity: 0.90;
}
.wp-site-blocks,
body>.is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-group.has-background,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align="full"]>.wp-block-group,
.is-root-container .wp-block[data-align="full"]>.wp-block-cover {
	padding-left: var(--wp--custom--spacing--outer);
	padding-right: var(--wp--custom--spacing--outer);
}
.wp-site-blocks .alignfull,
.wp-site-blocks>.wp-block-group.has-background,
.wp-site-blocks>.wp-block-cover,
.wp-site-blocks>.wp-block-template-part>.wp-block-group.has-background,
.wp-site-blocks>.wp-block-template-part>.wp-block-cover,
body>.is-root-container>.wp-block-cover,
body>.is-root-container>.wp-block-template-part>.wp-block-group.has-background,
body>.is-root-container>.wp-block-template-part>.wp-block-cover,
.is-root-container .wp-block[data-align="full"] {
	margin-left: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	margin-right: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	width: unset;
}
/* Blocks inside columns don't have negative margins. */
.wp-site-blocks .wp-block-columns .wp-block-column .alignfull,
.is-root-container .wp-block-columns .wp-block-column .wp-block[data-align="full"],
/* We also want to avoid stacking negative margins. */
.wp-site-blocks .alignfull:not(.wp-block-group) .alignfull,
.is-root-container .wp-block[data-align="full"]>*:not(.wp-block-group) .wp-block[data-align="full"] {
	margin-left: auto !important;
	margin-right: auto !important;
	width: inherit;
}
.wp-block-navigation__responsive-container.is-menu-open {
	padding-top: var(--wp--custom--spacing--outer);
	padding-bottom: var(--wp--custom--spacing--large);
	padding-right: var(--wp--custom--spacing--outer);
	padding-left: var(--wp--custom--spacing--outer);
}

html {
	scroll-padding-top: 120px;
}
body {
	color: #121212;
	font-size:20px;
	font-weight:400;
	letter-spacing:0;
	line-height:1.5;
	font-family: "Poppins", sans-serif;
	font-style: normal;
}
p + p {
	margin-top:1.5em;
}
a, a::before, a::after {
	text-decoration: none;
	display: block;
	transition: 0.5s;
}
a:hover, a:hover::before, a:hover::after {
	transition: 0.5s;
}
a.no-link {
	pointer-events: none;
}
.right {
	text-align: right;
}
.mt0 {
	margin-top: 0 !important;
}
ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}
.inline-block,
.inline-block-pc {
	display: inline-block;
}
.section {
	padding:80px 0;
	margin: 0 auto;
	position: relative;
}
.container {
	width: 100%;
	max-width: 1440px;
	padding: 0 56px;
	margin: 0 auto;
}
.page-title {
	color:#fff;
	font-size:32px;
	font-weight:400;
	letter-spacing:0.005em;
	line-height:1.5;
}
.section-title {
	font-size:48px;
	font-weight:400;
	letter-spacing:0;
	line-height:1.1;
}
.section-usecase .section-title,
.section-team .section-title,
.section-contact .section-title {
	font-weight:400;
}
.section.bg-dark {
	background-color:#020202;
}
.section.bg-dark .container * {
	color:#fff;
}
.section.bg-gray {
	background-color:#F4F4F4;
}
@media screen and (max-width:1200px) {
	.section {
		padding:60px 0;
	}
	.container {
		padding: 0 40px;
	}
}
@media screen and (max-width:750px) {
	body {
		font-size:16px;
	}
	.inline-block-pc {
		display: inline;
	}
	.section {
		padding:40px 0;
	}
	.container {
		padding: 0 24px;
	}
	.section-title {
		font-size:32px;
		font-weight:400;
		letter-spacing:0.005em;
		line-height:1.3;
	}
}
.flex-container {
	display: flex;
	flex-wrap: wrap;
	gap:16px;
}
.flex_c2,
.flex_c3 {
	gap:40px 16px;
}
.flex_c4 {
	gap:70px 16px;
}
.flex-container.flex_c2 .flex-item {
	width:calc( ( 100% - 16px ) / 2 );
}
.flex-container.flex_c3 .flex-item {
	width:calc( ( 100% - 32px ) / 3 );
}
.flex-container.flex_c4 .flex-item {
	width:calc( ( 100% - 48px ) / 4 );
}
.sp-block {
	display: none;
}
.under1000,
.under500,
.under370 {
	display: none;
}
.scale {
	overflow: hidden;
}
.scale img {
	transition: 0.3s;
}
.scale:hover img {
	transform: scale(1.1);
	transition: 0.3s;
}
.btn a {
	position: relative;
	z-index:0;
}
.btn a.gr {
	color:#fff;
	font-size:14px;
	line-height:24px;
	width:fit-content;
	padding:12px 16px;
	border-radius:25px;
}
.btn a.gr::before,
.btn a.gr::after {
	content:"";
	display:block;
	width:100%;
	height:100%;
	border-radius:25px;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}
.btn a.gr::before {
	background: linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%);
}
.btn a.gr::after {
	background: linear-gradient(87.51deg, #6437EC 11.69%, #007AFF 94.24%);
	opacity:0;
}
.btn a.gr:hover::before {
	opacity:0;
}
.btn a.gr:hover::after {
	opacity:1;
}
.btn a.gr_circle {
	color:#fff;
	font-size:14px;
	line-height:24px;
	width:fit-content;
	padding:8px 16px;
	border-radius:24px;
	background-color:rgba(28, 31, 40, 1);
}
.btn a.gr_circle::before,
.btn a.gr_circle::after {
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border:2px solid transparent;
	border-radius:24px;
	-webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
	-webkit-mask-composite: destination-out;
	mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
	mask-composite: exclude;
}
.btn a.gr_circle::before {
	background: linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%) border-box border-box;
}
.btn a.gr_circle::after {
	background: linear-gradient(87.51deg, #6437EC 11.69%, #007AFF 94.24%) border-box border-box;
	opacity:0;
}
.btn a.gr_circle:hover::before {
	opacity:0;
}
.btn a.gr_circle:hover::after {
	opacity:1;
}
.btn a.gr_line {
	color: #020202;
	width: fit-content;
	border-bottom: 1px solid;
	border-image: linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%) 1;
}
.btn a.gr_line:hover {
	border-image: linear-gradient(87.51deg, #6437EC 11.69%, #007AFF 94.24%) 1;
}
.image-area {
	border-radius:16px;
	overflow:hidden;
	position:relative;
}
@media screen and (max-width:1000px) {
	.flex-container.flex_c4 .flex-item {
    width: calc((100% - 32px) / 3);
	}
	.over1000 {
		display: none;
	}
	.under1000 {
		display: block;
	}
}
@media screen and (max-width:750px) {
	.pc-block {
		display: none !important;
	}
	.sp-block {
		display: block !important;
	}
}
@media screen and (max-width:500px) {
	.over500 {
		display: none;
	}
	.under500 {
		display: block;
	}
}
@media screen and (max-width:370px) {
	.over370 {
		display: none;
	}
	.under370 {
		display: block;
	}
}

/* parts */
header {
	height: 120px;
}
header .container {
	max-width:none;
	padding-top:40px;
	padding-bottom:40px;
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
	z-index: 9000;
	background-color:#000;
	transition: 0.5s;
	backdrop-filter: blur(44px);
	-webkit-backdrop-filter: blur(44px);
}
header .header-nav {
	width: 100%;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
header .header-nav .logo img {
	width: auto;
	height:40px;
}
header .header-nav .btn_menu,
header .header-nav .sp-wrap,
header .header-nav nav .menu-header {
	display: none;
}
header .header-nav nav {
	width:calc( 100% - 237px );
	max-width:874px;
	max-width:820px;
}
header .nav-ul {
	justify-content:space-between;
	align-items: center;
	padding-right:114.5px;
	position:relative;
}
.nav-ul li a {
	color:#fff;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.5;
	position: relative;
}
.nav-ul li.current a {
	color:#92959C;
	pointer-events:none;
}
.nav-ul li.btn_contact a {
	font-size:14px;
	font-weight:400;
}
.nav-ul li.level-list.btn_lang {
	position:absolute;
	top:50%;
	right:0;
	transform:translateY(-50%);
}
.nav-ul li.btn_lang a {
	font-weight:400;
}
.nav-ul li.level-list {
	cursor: pointer;
	position: relative;
}
.nav-ul li.level-list>a {
	padding-right:22px;
	pointer-events: none;
	position: relative;
}
.nav-ul li.level-list>a::after {
	content: "";
	display: inline-block;
	text-align: center;
	width: 18px;
	height: 18px;
	background-image: url('./assets/img/icon_down_w.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: 0.5s;
	position:absolute;
	top:50%;
	right:0;
	transform:translateY(-50%);
}
/* .pc .nav-ul li.level-list:hover>a::after {
	background-image: url('./assets/img/icon_up_w.svg');
} */
.nav-ul li.level-list.opened > a::after {
	transform:translateY(-50%) rotate3d(1, 0, 0, 180deg);
}
header .nav-ul .sub-menu {
	display: none;
	width:fit-content;
	padding:24px;
	background: linear-gradient(rgba(0,0,0,1) 0%, rgba(0,0,0,0.5) 100%);
	/* background-color:#000; */
	backdrop-filter: blur(44px);
	-webkit-backdrop-filter: blur(44px);
	border-radius: 16px;
	overflow: hidden;
	position: absolute;
	top:100%;
	left:50%;
	transform:translateX(-50%);
}
header .nav-ul .sub-menu li {
	margin-top:16px;
}
header .nav-ul .sub-menu li a {
	white-space:nowrap;
	width:fit-content;
	padding: 0;
}
.nav-ul li > a:not(.gr)::before {
	content:"";
	display:none;
	width:100%;
	height:2px;
	background:linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%);
	position:absolute;
	bottom:-2px;
	left:0;
	z-index:1;
	transition:0.5s;
}
.nav-ul li:hover > a:not(.gr)::before {
	display:block;
	transition:0.5s;
}
.nav-ul li.btn_contact a.gr {
	padding:8px 16px;
}
.nav-ul li.btn_lang .active {
	display:none;
}
.nav-ul li.btn_lang a,
.nav-ul li.btn_lang .sub-menu li a {
	padding-left:24px;
	position:relative;
}
.nav-ul li.btn_lang a::before {
	content:"";
	display:block;
	width:16px;
	height:12px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
}
.nav-ul li.btn_lang a.en::before {
	background-image:url('./assets/img/flag_eng.png');
}
.nav-ul li.btn_lang a.ja::before {
	background-image:url('./assets/img/flag_jpn.png');
}
footer {
	background-color:#000;
}
footer .container {
	max-width:none;
	padding:40px 32px;
}
footer .container > .flex-container {
	justify-content:space-between;
	align-items:flex-end;
}
footer .logo-area {
	width: auto;
	height:40px;
}
footer .text-area {
	gap:10px 32px;
}
footer .text-area .copyright,
footer .nav-ul li a {
	color:#fff;
	font-size:16px;
	font-weight:400;
	letter-spacing:0;
	line-height:22px;
}
footer .nav-ul {
	justify-content:center;
	align-items:center;
	gap:16px;
}
footer .sns-area {
	justify-content:center;
	gap:24px;
}
footer .sns-area a {
	width: 32px;
	height: 32px;
	border-radius:50%;
	display: flex;
	justify-content: center;
	align-items: center;
	position:relative;
}
footer .sns-area a::before,
footer .sns-area a::after {
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:50%;
	transition:0.5s;
}
footer .sns-area a::before {
	border:1px solid #fff;
}
footer .sns-area a::after {
	border:1px solid transparent;
	background: linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%) border-box border-box;
	-webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
	-webkit-mask-composite: destination-out;
	mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
	mask-composite: exclude;
	opacity:0;
}
footer .sns-area a:hover::before {
	opacity:0;
	transition:0.5s;
}
footer .sns-area a:hover::after {
	opacity:1;
	transition:0.5s;
}
footer .sns-area a img {
	width: 16px;
}
@media screen and (max-width:1000px) {
	header .header-nav .btn_menu {
		display: block;
		width: 24px;
		height: 24px;
		cursor: pointer;
		position:relative;
	}
	header .header-nav .btn_menu span {
		display: block;
		width: 20px;
		height: 1px;
		border-radius:0.5px;
		background-color:#fff;
		position:absolute;
		left:50%;
		transform:translate(-50%,-50%);
	}
	header .header-nav .btn_menu span:nth-of-type(1) {
		top:calc( 50% - 7px );
	}
	header .header-nav .btn_menu span:nth-of-type(2) {
		top:50%;
	}
	header .header-nav .btn_menu span:nth-of-type(3) {
		top:calc( 50% + 7px );
	}
	header .header-nav nav {
		width:100%;
		max-width:375px;
		height:100dvh;
		overflow: scroll;
		padding: 20px 24px;
		background-color: #000;
		position: fixed;
		top: 0;
		right:-375px;
		z-index: 500;
		transition: 0.5s;
		-ms-overflow-style: none;
	}
	header .header-nav.opened nav {
		right: 0;
		transition: 0.5s;
	}
	header .header-nav nav::-webkit-scrollbar {
		display: none;
	}
	header .header-nav.opened .sp-wrap {
		display: block;
		width: 100vw;
		height: 100vh;
		background-color: rgba(0, 0, 0, 0.3);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
	}
	header .header-nav nav .menu-header {
		height:40px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	header .header-nav nav .menu-header .btn_close {
		width: 24px;
		height: 24px;
		position:relative;
		cursor: pointer;
	}
	header .header-nav nav .menu-header .btn_close span {
		display:block;
		width: 17px;
		height: 1px;
		border-radius:0.5px;
		background-color:#fff;
		position:absolute;
		top:50%;
		left:50%;
	}
	header .header-nav nav .menu-header .btn_close span:nth-of-type(1) {
		transform:translate(-50%,-50%) rotate(45deg);
	}
	header .header-nav nav .menu-header .btn_close span:nth-of-type(2) {
		transform:translate(-50%,-50%) rotate(-45deg);
	}
	header .nav-ul {
		width:fit-content;
		padding: 0;
		margin: 140px auto 0;
		flex-direction:column;
		gap:40px;
	}
	.nav-ul li.level-list.btn_lang {
		position:initial;
		transform:none;
	}
	header .nav-ul li a {
		display: inline-block;
	}
	.nav-ul li.level-list.opened > a::after {
		transform:translateY(-50%) rotate3d(1, 0, 0, 180deg);
	}
	header .nav-ul .sub-menu {
		width: 100%;
		padding: 0;
		padding-left:1em;
		position: static;
		transform:none;
		background: transparent;
		overflow:visible;
	}
	header .nav-ul .sub-menu li a {
		margin-left: 1em;
		position: relative;
	}
	header .nav-ul .sub-menu li a:hover {
		text-decoration: none;
	}
	header .nav-ul .sub-menu li a::after {
		content: "-";
		color: #fff;
		display: block;
		width: 1em;
		position: absolute;
		top: 0;
		left: -1em;
	}
	footer .container > .flex-container {
		align-items:center;
	}
	footer .text-area {
		flex-direction:column;
		align-items:flex-start;
	}
}
@media screen and (max-width:750px) {
	footer .container {
		padding:40px 24px;
	}
	footer .container > .flex-container {
		width:fit-content;
		/* margin:0 auto; */
		align-items:flex-start;
		flex-direction:column;
		gap:36px;
	}
	footer .text-area {
		order:1;
	}
	footer .sns-area {
		margin-top:30px;
	}
}

/* FRONT PAGE */
.section:not(.section-keyvisual) .container {
	display:flex;
	flex-direction:column;
	gap:40px;
}
.section-keyvisual {
	width:100%;
	padding:0;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.section-keyvisual .container {
	height:480px;
	display:flex;
	align-items:center;
}
.page-top .section-keyvisual {
	background-image:url('./assets/img/kv_top.jpg');
	background:#00141e url('./assets/img/kv_top.jpg');
	background-position:calc( 50% + 300px ) center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-jp .section-keyvisual {
	background-image:url('./assets/img/kv_top_jp.jpg');
	background:#00141e url('./assets/img/kv_top_jp.jpg');
	background-position:calc( 50% + 300px ) center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-top .section-keyvisual .container {
	height:720px;
}
.section-keyvisual .container .text-area {
	width:100%;
	max-width:544px;
	padding:40px;
	border-radius:16px;
	background-color:rgba(0,0,0,0.5);
	backdrop-filter: blur(44px);
	-webkit-backdrop-filter: blur(44px);
}
.page-top .page-title {
	font-size:48px;
	line-height:1.1;
}
.section-keyvisual .container .text-area p {
	color:#fff;
	font-size:16px;
	margin-top:32px;
}
.section-keyvisual .container .text-area .btn {
	margin-top:32px;
}
.section-keyvisual .container .text-area .btn a.gr_circle {
	padding:12px 16px;
}
.section-usecase .flex_c2 .btn {
	margin-top:40px;
}
.section-usecase .flex_c3 {
	margin-top:40px;
}
.section-usecase .flex_c3 .flex-item .image-area .hover-area {
	width:100%;
	height:100%;
	background-color: rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	display:flex;
	align-items:center;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	transition:0.5s;
}
.section-usecase .flex_c3 .flex-item:hover .image-area .hover-area {
	opacity:1;
	transition:0.5s;
}
.section-usecase .flex_c3 .flex-item .image-area .hover-area .hover_text {
	color:#fff;
	text-align:center;
	padding:32px;
}
.section-usecase .flex_c3 .flex-item h3 {
	font-size:24px;
	font-weight:600;
	margin-top:1em;
}
.section-usecase .flex_c3 .flex-item .btn {
	margin-top:16px;
}
.section-team .container .flex-container {
	align-items:center;
}
.section-team .container p {
	width:100%;
	max-width:540px;
	padding-right:24px;
	margin-top:40px;
}
.section-team .container .btn {
	margin-top:40px;
}
.section .title-flex {
	justify-content:space-between;
	align-items:flex-end;
}
.section-article .flex_c3 .flex-item .a-date,
.single .title-area .a-date {
	color:rgba(18, 18, 18, 0.4);
	font-size:14px;
	line-height:1.1;
	margin-top:24px;
}
.section-article .flex_c3 .flex-item .image-area {
	width:100%;
	aspect-ratio:864 / 576;
}
.section-article .flex_c3 .flex-item .image-area img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.section-article .flex_c3 .flex-item .a-cat-area,
.single .title-area .a-cat-area {
	display:flex;
	gap:16px;
	margin-top:16px;
}
.single .title-area .a-cat-area {
	margin-bottom:16px;
}
.section-article .flex_c3 .flex-item .a-cat-area .a-cat,
.single .title-area .a-cat-area .a-cat {
	color:#fff;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.01em;
	width:fit-content;
	padding:4px 8px;
	background-color:#121212;
	border-radius:4px;
}
.section-article .flex_c3 .flex-item .a-title {
	font-size:24px;
	font-weight:600;
	margin-top:16px;
}
.section-article .flex_c3 .flex-item .a-text p {
	font-size:20px;
	margin-top:8px;
}
.section-article .flex_c3 .flex-item .btn {
	margin-top:16px;
}
.section-form-link {
	padding:160px 0;
}
.section-form-link h3 {
	font-size:32px;
	font-weight:400;
}
.section-form-link.section-application h3 {
	font-weight:500;
}
.ja .section-form-link.section-application p {
	font-size:16px;
}
.section-form-link.section-contact p {
	font-size:16px;
	line-height:1.1;
	width:100%;
	max-width:450px;
	margin-top:1em;
}
.section-form-link.section-contact .btn {
	margin-top:24px;
}
.section-form-link.section-application .btn {
	margin-top:40px;
}

@media screen and (max-width:1440px) {
	.section-usecase .flex_c3 .flex-item .image-area .hover-area .hover_text {
		font-size:calc(16px + ( 16 - 10 ) * (100vw - 1440px) / ( 1440 - 750 ) );
	}
}

@media screen and (max-width:1000px) {
	.section .flex_c2 {
		flex-direction:column;
	}
	.section .flex_c2 .flex-item {
		width:100%;
	}
	.section-usecase .flex_c2 .btn {
		margin-top:24px;
	}
	.section-usecase .flex_c3 {
		margin-top:20px;
	}
	.section-usecase .flex_c3 .flex-item .image-area .hover-area .hover_text {
		font-size:11px;
		padding:16px;
	}
	.section-usecase .flex_c3 .flex-item h3 {
		font-size:16px;
		margin-top:1.5em;
	}
	.section-usecase .flex_c3 .flex-item .btn,
	.section-article .flex_c3 .flex-item .btn {
		margin-top:8px;
	}
	.section-usecase .flex_c3 .flex-item .btn a.gr_line,
	.section-article .flex_c3 .flex-item .btn a.gr_line {
		font-size:12px;
	}
	.section-article .flex_c3 .flex-item .a-cat-area,
	.single .title-area .a-cat-area {
		gap:8px;
		margin-top:8px;
	}
	.single .title-area .a-cat-area {
		margin-bottom:8px;
	}
	.section-article .flex_c3 .flex-item .a-cat-area .a-cat,
	.single .title-area .a-cat-area .a-cat {
		font-size:10px;
		line-height:12px;
		padding:4px;
	}
	.section-article .flex_c3 .flex-item .a-title {
		font-size:16px;
		margin-top:8px;
	}
	.section-article .flex_c3 .flex-item .a-text p {
		font-size:14px;
		margin-top:8px;
	}
	.section-team .container p {
		max-width:none;
		padding-right:0;
	}
	.section-team .container .btn {
		margin-top:24px;
	}
	.section-form-link {
		padding:60px 0;
	}
	.section-form-link h3 {
		font-size:26px;
	}
	.section-form-link p {
		max-width:none;
	}
}
@media screen and (max-width:750px) {
	.section-keyvisual .container {
		height:400px;
	}
	.page-top .section-keyvisual {
		background-image:url('./assets/img/kv_top.jpg');
		background-position:35% center;
	}
	.page-jp .section-keyvisual {
		background-image:url('./assets/img/kv_top_jp.jpg');
		background-position:35% center;
	}
	.page-top .section-keyvisual .container {
		height:480px;
		padding-bottom:24px;
		align-items:flex-end;
	}
	.section-keyvisual .container .text-area {
		padding:16px;
	}
	.page-top .section-keyvisual .container .text-area {
		max-width:330px;
	}
	.page-title {
		font-size:28px;
		line-height:1.3;
	}
	.page-top .page-title {
		font-size:32px;
	}
	.section-keyvisual .container .text-area p,
	.section-keyvisual .container .text-area .btn {
		margin-top:24px;
	}
	.section-usecase .flex_c3 {
		margin-top:0;
	}
	.section .sp-slider {
		width:calc( 100% + 24px );
		padding-bottom:64px;
	}
	.section .sp-slider .flex-item {
		width:240px;
	}
	.section .sp-slider .flex-item + .flex-item {
		margin-left:16px;
	}
	.section .sp-slider .slick-arrow,
	.section .usecase-slider .slick-arrow {
		width:40px;
		height:40px;
		border-radius:50%;
		background-color:#B7BBC5;
		top:auto;
		bottom:0;
		transform:none;
	}
	.section .sp-slider .slick-arrow::before,
	.section .usecase-slider .slick-arrow::before {
		content:"";
		display:block;
		width:4px;
		height:8px;
		background-position:center;
		background-repeat:no-repeat;
		background-size:contain;
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%,-50%);
	}
	.section .sp-slider .slick-arrow.slick-disabled,
	.section .usecase-slider .slick-arrow.slick-desabled {
		background-color:#CED2DC;
	}
	.section .sp-slider .slick-arrow.slick-disabled::before,
	.section .usecase-slider .slick-arrow.slick-disabled::before {
		opacity:1;
	}
	.section .sp-slider .slick-prev,
	.section .usecase-slider .slick-prev {
		left:0;
	}
	.section .sp-slider .slick-next,
	.section .usecase-slider .slick-next {
		right:auto;
		left:64px;
	}
	.section .sp-slider .slick-prev::before,
	.section .usecase-slider .slick-prev::before {
		background-image:url('./assets/img/icon_arrow_l_b.svg');
	}
	.section .sp-slider .slick-next::before,
	.section .usecase-slider .slick-next::before {
		background-image:url('./assets/img/icon_arrow_r_b.svg');
	}
	.section .title-flex .btn {
		position:absolute;
		bottom:60px;
		right:24px;
		transform:translateY(50%);
		z-index:1;
	}
	.section .title-flex .btn a.gr_line {
		font-size:12px;
		font-weight:500;
		letter-spacing:0.01em;
		line-height:16px;
	}
	.section-form-link {
		padding:40px 0;
	}
	.section-form-link .flex_c2 {
		gap:24px;
	}
	.section-form-link h3 {
		font-size:20px;
	}
	.section-form-link.section-application .btn {
		margin-top:24px;
	}
}

.page .lead-text {
	font-size:32px;
	width:100%;
	max-width:550px;
	padding-right:24px;
}
@media screen and (max-width:750px) {
	.page .lead-text {
		font-size:24px;
	}
}

/* page-about */
.page-about .section-keyvisual {
	background-image:url('./assets/img/kv_about.jpg');
}
.page-about .section-vision .section-title,
.page-about .section-mission .section-title,
.page-about .section-value .section-title {
	font-weight:500;
}
.page-about .section-vision .flex-container.flex_c3,
.page-about .section-story .story-image-flex,
.page-about .section-story .story-period-flex {
	margin-top:40px;
}
.page-about .section-vision .flex_c3 .flex-item .image-area {
	aspect-ratio:54 / 31;
}
.page-about .section-vision .flex_c3 .flex-item .image-area img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.page-about .section-vision .flex_c3 .flex-item .image-cr {
	font-size:8px;
	font-weight:300;
	display:block;
	margin-top:0.5em;
}
.page-about .section-vision .flex_c3 .flex-item h3 {
	font-size:24px;
	font-weight:600;
	margin-top:24px;
}
.page-about .section-vision .flex_c3 .flex-item p {
	margin-top:8px;
}
.page-about .section-mission {
	background:url('./assets/img/bg_about_mission.png'), linear-gradient(105.43deg, #007AFF 3.46%, #6437EC 88.43%);
	background:url('./assets/img/bg_about_mission.png'), linear-gradient(#888, #888), linear-gradient(105.43deg, #007AFF 3.46%, #6437EC 88.43%);
	background-blend-mode: multiply;
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:cover;
}
.page-about .section-value .lead-text {
	font-size:20px;
	margin-top:40px;
}
.page-about .section-value .image-area {
	height:calc( 100% + 160px );
	margin:-80px -56px -80px 0;
	border-radius:0;
}
.page-about .section-value .image-area img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.page-about .section-story .story-image-flex .flex-item {
	width:124px;
	height:468px;
	border-radius:32px;
	overflow:hidden;
	position:relative;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.page-about .section-story .story-image-flex .flex-item.active {
	width:calc( 100% - ( 124px + 16px ) * 4 );
}
.page-about .section-story .story-image-flex .flex-item:nth-of-type(1) {
	background-image:url('./assets/img/story_period01.jpg');
}
.page-about .section-story .story-image-flex .flex-item:nth-of-type(2) {
	background-image:url('./assets/img/story_period02.jpg');
}
.page-about .section-story .story-image-flex .flex-item:nth-of-type(3) {
	background-image:url('./assets/img/story_period03.jpg');
}
.page-about .section-story .story-image-flex .flex-item:nth-of-type(4) {
	background-image:url('./assets/img/story_period04.jpg');
}
.page-about .section-story .story-image-flex .flex-item:nth-of-type(5) {
	background-image:url('./assets/img/story_period05.jpg');
}
/* .page-about .section-story .story-image-flex .flex-item img {
	width:100%;
	height:100%;
	object-fit:cover;
} */
.page-about .section-story .story-image-flex .flex-item .hover-area {
	color:#fff;
	width:100%;
	height:100%;
	padding:40px 24px 24px 24px;
	background-color:rgba(0,0,0,0.4);
	backdrop-filter: blur(44px);
	-webkit-backdrop-filter: blur(44px);
	/* position:absolute;
	top:0;
	left:0; */
	display:flex;
	flex-direction:column;
	opacity:0;
	transition:0.5s;
}
.page-about .section-story .story-image-flex .flex-item.active .hover-area {
	opacity:1;
	transition:0.5s;
}
.page-about .section-story .story-image-flex .flex-item .hover-area::after {
	content:"";
	display:block;
	width:195px;
	/* height:76px; */
	margin-top:auto;
	background-image:url('./assets/img/logo_story.png');
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	width:calc( 100% * 195 / 720 );
	padding-top:calc( 100% * 76 / 720 );
}
.page-about .section-story .story-image-flex .flex-item .hover-area h3 {
	font-size:32px;
	font-weight:400;
}
.page-about .section-story .story-image-flex .flex-item .hover-area .text-area {
	width:100%;
	max-width:640px;
	margin-top:24px;
}
.page-about .section-story .story-image-flex .flex-item .hover-area .text-area * {
	font-size:16px;
}
.page-about .section-story .story-image-flex .flex-item .hover-area .text-area ul {
	padding-left:1em;
}
.page-about .section-story .story-image-flex .flex-item .hover-area .text-area ul li {
	position:relative;
}
.page-about .section-story .story-image-flex .flex-item .hover-area .text-area ul li::before {
	content:"";
	display:block;
	width:4px;
	height:4px;
	background-color:#fff;
	border-radius:50%;
	position:absolute;
	top:0.75em;
	left:-0.5em;
	transform:translate(-50%,-50%);
}
.page-about .section-story .story-image-flex .flex-item .btn {
	width:40px;
	height:40px;
	padding:11px;
	border-radius:50%;
	background-color:rgba(222, 222, 222, 0.6);
	position:absolute;
	bottom:24px;
	right:24px;
	z-index:10;
	cursor:pointer;
}
.page-about .section-story .story-image-flex .flex-item .btn img {
	transform:rotate(180deg);
	transition:0.5s;
}
.page-about .section-story .story-image-flex .flex-item.active .btn img {
	transform:rotate(0deg);
	transition:0.5s;
}
.page-about .section-story .story-period-flex {
	justify-content:space-between;
	gap:12px 16px;
}
.page-about .section-story .story-period-flex .flex-item {
	color:#727992;
	text-align:center;
	position:relative;
	cursor:pointer;
}
.page-about .section-story .story-period-flex .flex-item.active {
	color:#1C1F28;
}
.page-about .section-story .story-period-flex .flex-item.active::after {
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-radius:50%;
	background: linear-gradient(87.51deg, #007AFF 11.69%, #6437EC 94.24%);
	position:absolute;
	bottom:-16px;
	left:50%;
	transform:translateX(-50%);
}
.page-about .section-story .story-period-flex .flex-item .period-title {
	font-size:16px;
}
.page-about .section-story .story-period-flex .flex-item .period-span {
	font-size:20px;
	font-weight:500;
	letter-spacing:0.16px;
	margin-top:4px;
}
.page-about .section-story .story-period-bar {
	width:100%;
	height:1px;
	background-color:#DEE7FA;
}
.page-about .section-story .story-period-bar .progress-bar {
	width:67.23px;
	width:53.7px;
	height:1px;
	background-color:#727992;
}
@media screen and (max-width:1440px) {
	.page-about .section-story .story-image-flex .flex-item .hover-area h3 {
		font-size:32px;
		font-size:calc(32px + ( 32 - 24 ) * (100vw - 1440px) / ( 1440 - 750 ) );
	}
	.page-about .section-story .story-image-flex .flex-item .hover-area .text-area * {
		font-size:calc(16px + ( 16 - 14 ) * (100vw - 1440px) / ( 1440 - 750 ) );
	}
}
@media screen and (max-width:1200px) {
	.page-about .section-vision .flex-container.flex_c3,
	.page-about .section-story .story-image-flex,
	.page-about .section-story .story-period-flex {
		margin-top:20px;
	}
	.page-about .section-value .image-area {
		height:calc( 100% + 120px );
		margin:-60px -40px -60px 0;
	}
}
@media screen and (max-width:1060px) {
	.page-about .section-story .story-image-flex {
		margin-top:0;
		flex-direction:column;
		order:1;
	}
	.page-about .section-story .story-image-flex .flex-item {
		width:100%;
		height:128px;
		border-radius:24px;
	}
	.page-about .section-story .story-image-flex .flex-item.active {
		width:100%;
		height:auto;
	}
	.page-about .section-story .story-image-flex .flex-item .hover-area {
		padding:40px 24px 88px 24px;
	}
	.page-about .section-story .story-image-flex .flex-item .hover-area::after {
		content:"";
		display:none;
	}
	.page-about .section-story .sp-scroll {
		overflow-x:scroll;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	.page-about .section-story .sp-scroll::-webkit-scrollbar {
		display: none;
	}
	.page-about .section-story .story-period-flex {
		min-width:780px;
		gap:unset;
	}
	.page-about .section-story .story-period-flex .flex-item {
		padding-bottom:2px;
	}
	.page-about .section-story .story-period-flex .flex-item .period-title {
		display:none;
	}
	.page-about .section-story .story-period-flex .flex-item.active::after {
		width:100%;
		height:1px;
		border-radius:none;
		bottom:0;
	}
	.page-about .section-story .story-period-flex .flex-item .period-span {
		margin-top:0;
	}
	.page-about .section-story .story-period-bar {
		display:none;
	}
}
@media screen and (max-width:1000px) {
	.page .lead-text {
		max-width:none;
		padding-right:0;
	}
	.page-about .section-value .image-area {
		height:auto;
		margin:0 -40px -60px;
	}
}
@media screen and (max-width:750px) {
	.page-about .section-vision .flex-container.flex_c3,
	.page-about .section-story .story-image-flex,
	.page-about .section-story .story-period-flex {
		margin-top:0;
	}
	.page-about .section-value .image-area {
		margin:0 -24px -40px;
	}
}

/* page-team */
.page-team .section-keyvisual {
	background-image:url('./assets/img/kv_team.jpg');
}
.page-team .section-application .section-title {
	font-weight:500;
}
.page-team .section-member .group-title {
	font-size: 36px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.1;
}
.page-team .section-member .flex_c4 .flex-item {
	cursor:pointer;
}
.page-team .section-member .flex_c4 .image-area {
	aspect-ratio: 320 / 248;
	border-radius:16px;
	overflow:hidden;
}
.page-team .section-member .flex_c4 .image-area img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.page-team .section-member .flex_c4 .text-area {
	margin-top:24px;
}
.page-team .section-member .flex_c4 .text-area .member-name {
	font-size:24px;
	font-weight:600;
}
.bg_modal-area {
	display:none;
	width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
	cursor:pointer;
}
.bg_modal-area::before,
.bg_modal-area::after {
	content:"";
	display:block;
	width:30px;
	height:1px;
	background-color:#fff;
  position: fixed;
  top: 145px;
  right: 25px;
	z-index: 10;
}
.bg_modal-area::before {
	transform:translate(50%,-50%) rotate(45deg);
}
.bg_modal-area::after {
	transform:translate(50%,-50%) rotate(-45deg);
}
.modal-area {
	display: none;
	width:calc( 100% - 100px );
  max-width: 690px;
	height:auto;
	max-height:calc( 100dvh - 220px );
  padding: 25px;
  position: fixed;
  top:calc( 50% + 60px );
  left: 50%;
  transform:translate(-50%,-50%);
	z-index: 15;
	overflow-y:scroll;
	-ms-overflow-style: none;
  scrollbar-width: none;
	border-radius:25px;
	background-color:#fff;
}
.modal-area::-webkit-scrollbar{
  display:none;
}
.modal-area .modal-inner {
	display:none;
}
.modal-area .text-area .member-name {
	font-size:36px;
	font-weight:600;
	margin-top:30px;
}
.modal-area .text-area .member-position {
	font-size:30px;
}
@media screen and (max-width:1000px) {
	.page-team .section-member .flex_c4 .image-area {
		aspect-ratio: 240 / 156;
	}
	.page-team .section-member .flex_c4 .text-area .member-name {
		font-size:16px;
	}
	.page-team .section-member .flex_c4 .text-area .member-position {
		font-size:14px;
	}
}
@media screen and (max-width:750px) {
	.page-team .section-member .group-title {
		font-size: 24px;
		font-weight: 400;
		letter-spacing: 0.005em;
		line-height: 1.3;
	}
	.page-team .section-member .flex_c4 .image-area img {
		object-position:top center;
	}
	.bg_modal-area::before,
	.bg_modal-area::after {
		width:20px;
		top:140px;
		right:20px;
	}
	.modal-area {
		width:calc( 100% - 60px );
		max-width: 520px;
		max-height:calc( 100dvh - 180px );
		padding: 20px;
	}
	.modal-area .text-area .member-name {
		font-size:24px;
		margin-top:24px;
	}
	.modal-area .text-area .member-position {
		font-size:20px;
	}
}

/* page-service */
.page-service .section-keyvisual {
	background-image:url('./assets/img/kv_service.jpg');
}
.page-service .section-initiative .flex_c2 {
	gap:16px;
}
.page-service .section-initiative .flex_c2 .flex-item {
	padding:16px 16px 16px 142px;
	border-radius:16px;
	background-color:#F9FBFF;
	overflow:hidden;
	position:relative;
}
.page-service .section-initiative .flex_c2 .flex-item::before {
	content:"";
	display:block;
	width:95px;
	height:140px;
	background-position:center right;
	background-repeat:no-repeat;
	background-size:cover;
	position:absolute;
	bottom:24px;
	left:0;
}
.page-service .section-initiative .flex_c2 .flex-item:nth-of-type(1)::before {
	background-image:url('./assets/img/icon_service_01.svg');
}
.page-service .section-initiative .flex_c2 .flex-item:nth-of-type(2)::before {
	background-image:url('./assets/img/icon_service_02.svg');
}
.page-service .section-initiative .flex_c2 .flex-item:nth-of-type(3)::before {
	background-image:url('./assets/img/icon_service_03.svg');
}
.page-service .section-initiative .flex_c2 .flex-item:nth-of-type(4)::before {
	background-image:url('./assets/img/icon_service_04.svg');
}
.page-service .section-initiative .flex_c2 .flex-item h3 {
	font-size:32px;
	font-weight:400;
}
.page-service .section-initiative .flex_c2 .flex-item p {
	margin-top:16px;
}
.page-service .section-impact .flex_c3 .flex-item {
	display:flex;
	justify-content:center;
	align-items:center;
	padding:80px 40px;
	border-radius:16px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	overflow:hidden;
	position:relative;
}
.page-service .section-impact .flex_c3 .flex-item:nth-of-type(1) {
	background-image:url('./assets/img/image_social_01.jpg');
}
.page-service .section-impact .flex_c3 .flex-item:nth-of-type(2) {
	background-image:url('./assets/img/image_social_02.jpg');
}
.page-service .section-impact .flex_c3 .flex-item:nth-of-type(3) {
	background-image:url('./assets/img/image_social_03.jpg');
}
.page-service .section-impact .flex_c3 .flex-item:nth-of-type(4) {
	width:calc( ( 100% - 16px ) / 2 );
	background-image:url('./assets/img/image_social_04.jpg');
}
.page-service .section-impact .flex_c3 .flex-item:nth-of-type(5) {
	width:calc( ( 100% - 16px ) / 2 );
	background-image:url('./assets/img/image_social_05.jpg');
}
.page-service .section-impact .flex_c3 .flex-item::after {
	content:"";
	display:block;
	width:100%;
	height:100%;
	background:rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	position:absolute;
	top:0;
	left:0;
	z-index: 0;
}
.page-service .section-impact .flex_c3 .flex-item h3 {
	font-size:32px;
	font-weight:400;
	text-align:center;
	position:relative;
	z-index:1;
}
@media screen and (max-width:1000px) {
	.page-service .section-initiative .flex_c2 {
		flex-direction:row;
	}
	.page-service .section-initiative .flex_c2 .flex-item {
		width:calc( ( 100% - 16px ) / 2 );
		padding:16px 16px 16px 66px;
	}
	.page-service .section-initiative .flex_c2 .flex-item::before {
		width:54px;
		height:100px;
		bottom:22px;
		left:0;
	}
	.page-service .section-initiative .flex_c2 .flex-item h3 {
		font-size:24px;
	}
	.page-service .section-initiative .flex_c2 .flex-item p {
		font-size:16px;
	}
}
@media screen and (max-width:750px) {
	.page-service .section-initiative .flex_c2 {
		flex-direction:column;
	}
	.page-service .section-initiative .flex_c2 .flex-item {
		width:100%;
	}
	.page-service .section-impact .flex_c3 .flex-item {
		width:100% !important;
	}
}


/* page-use-case */
.page-use-case .section-keyvisual {
	background-image:url('./assets/img/kv_usecase.jpg');
}
.page-use-case .section-usecase-detail:not(:last-of-type) {
	padding-bottom:40px;
}
.page-use-case .section-usecase-detail .flex_c2 {
	gap:80px;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item {
	width:calc( ( 100% - 80px ) / 2 );
	position:relative;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item::before {
	color:#F9FBFF;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.01em;
	line-height:56px;
	text-align:center;
	display:block;
	width:165px;
	border-radius:8px 0 0 0;
	background-color:#0058B7;
	position:absolute;
	top:0;
	left:0;
	z-index:10;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item.before-area::before {
	content:"Before";
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item.after-area::before {
	content:"After";
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .image-area {
	width:100%;
	aspect-ratio: 624 / 444;
	border-radius:16px;
	overflow:hidden;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .image-area img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area {
	color:#020202;
	margin-top:40px;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area h3 {
	font-size:32px;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area p:first-of-type {
	color:#020202;
	margin-top:24px;
}
.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area p .bold {
	font-weight:700;
}
@media screen and (max-width:1200px) {
	.page-use-case .section-usecase-detail:not(:last-of-type) {
		padding-bottom:30px;
	}
}
@media screen and (max-width:1000px) {
	.page-use-case .section-usecase-detail .flex_c2 {
		flex-direction:row;
		gap:40px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item {
		width:calc( ( 100% - 40px ) / 2 );
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item::before {
		font-size:10px;
		font-weight:400;
		line-height:28px;
		width:57px;
		border-radius:8px;
		background-color:#0058B7;
		position:absolute;
		top:0;
		left:0;
		z-index:10;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .image-area {
		border-radius:8px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area {
		margin-top:24px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area h3 {
		font-size:28px;
		font-weight:400;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area p {
		font-size:16px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area p:first-of-type {
		margin-top:16px;
	}
}
@media screen and (max-width:750px) {
	.page-use-case .section-usecase-detail:not(:last-of-type) {
		padding-bottom:20px;
	}
	.page-use-case .section-usecase-detail .flex_c2 {
		gap:16px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item {
		width:calc( ( 100% - 16px ) / 2 );
	}
	.ja .page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area h3 {
		font-size:24px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .text-area p {
		display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    overflow: hidden;
		transition:0.5s;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item.opened .text-area p {
		display:block;
		transition:0.5s;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item .btn-more {
		font-size:14px;
		font-weight:500;
		text-decoration:underline;
		margin-top:4px;
		cursor:pointer;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item.opened .btn-more {
		display:none !important;
	}
}
@media screen and (max-width:544px) {
	.page-use-case .section-usecase-detail:not(:last-of-type) {
		padding-bottom:0;
	}
	.page-use-case .section-usecase-detail .usecase-slider {
		width:calc( 100% + 24px );
		padding-bottom:64px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item {
		width:240px;
	}
	.page-use-case .section-usecase-detail .flex_c2 .flex-item + .flex-item {
		margin-left:16px;
	}
}

/* archive */
.post-type-archive-news .section-keyvisual,
.post-type-archive-interview .section-keyvisual,
.single-news .section-keyvisual,
.single-interview .section-keyvisual,
.page-contact .section-keyvisual,
.error404 .section-keyvisual {
	background-image:url('./assets/img/kv_news.jpg');
}
.post-type-archive .section-archive .section-title {
	font-weight:500;
}
.post-type-archive .filter-area {
	display:flex;
	justify-content:flex-end;
	align-items:center;
	gap:16px;
}
.post-type-archive .filter-area p {
	margin-right:8px;
}
.post-type-archive .filter-area .filter-btn {
	color:#fff;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.01em;
	width:fit-content;
	padding:4px 8px;
	background-color:#CED2DC;
	border-radius:4px;
	cursor:pointer;
}
.post-type-archive .filter-area .filter-btn.active {
	background-color:#121212;
	cursor:unset;
}
.post-type-archive .flex_c3 .flex-item {
	display:none;
}
.post-type-archive .flex_c3 .flex-item.active {
	display:block;
}

/* page-contact */
.page-contact .section-contact .require {
	color:#007AFF;
	font-size:20px;
}
.form-area * {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
}
.form-area dl {
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}
.form-area dl + dl {
	margin-top:24px;
}
.form-area dl dt {
	font-size:24px;
	font-weight:500;
	padding:0.5em 0;
}
.form-area dl dt small {
	color: #007AFF;
	font-size:20px;
	margin-left:0.25em;
}
.form-area dl dd {
	width:calc( 100% - 280px );
}
.form-area dl dd input,
.form-area dl dd textarea {
	border: 1px solid #121212;
	padding: 0.5em;
	width: 100%;
	border-radius: unset;
	box-sizing: border-box;
}
.form-area .acceptance {
	text-align: center;
	line-height: 1.8;
	margin: 0 auto 30px;
	text-align:left;
}
.form-area .acceptance .wpcf7-list-item {
	margin:0;
}
.form-area .acceptance .wpcf7-list-item label {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}
.form-area .acceptance input {
	width: 20px;
	height: 20px;
	margin: 0;
	margin-top:calc( 0.9em - 10px );
	margin-right: 8px;
	border: 1px solid #121212;
	position:relative;
}
.form-area .acceptance .wpcf7-list-item-label {
	width:calc( 100% - 28px );
	position:relative;
}
.form-area .acceptance .wpcf7-list-item input:checked + .wpcf7-list-item-label::before {
	content: "";
	display: block;
	width: 22px;
	height: 12px;
	border-bottom: 1.5px solid #007AFF;
	border-left: 1.5px solid #007AFF;
	position: absolute;
	top: 30%;
	top:0.54em;
	left: -26px;
	transform: translateY(-50%) rotate(-45deg);
}
.form-area .acceptance a {
	display:inline;
	text-decoration: underline;
}
.form-area .sendbutton {
	width:100%;
	max-width:300px;
	margin:0 auto;
}
.form-area .sendbutton .wpcf7-spinner {
	display:none;
}
.form-area .sendbutton input {
	font-size:20px;
	font-weight:500;
	letter-spacing:0;
	line-height:1.5;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	outline: none;
	background-color: #fff;
	border: 1px solid #121212;
	width: 100%;
	padding: 1em;
	font-weight: bold;
	letter-spacing: 0.1em;
	cursor:pointer;
}
.form-area .sendbutton input:disabled {
	opacity: 0.4;
}
.form-area .sendbutton input::before,
.form-area .sendbutton input::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.form-area .sendbutton input,
.form-area .sendbutton input::before,
.form-area .sendbutton input::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.form-area .sendbutton input:hover {
	background-color: #121212;
	border-color: #121212;
	color: #fff;
}
.form-area .wpcf7-not-valid-tip {
	color: #007AFF;
	margin-top: 8px;
}
.wpcf7 form .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
	text-align:center;
	width: fit-content;
	padding: 0.5em 1em;
	margin: 2em auto 0;
	border-color:#007AFF;
}
@media screen and (max-width:750px) {
	.form-area dl {
		flex-direction:column;
	}
	.form-area dl dd {
		width:100%;
	}
}
@media screen and (max-width:350px) {
	.en .form-area .acceptance .wpcf7-list-item label {
		font-size:14px;
	}
}

.error404 .section-keyvisual .container .text-area {
	height:calc( 100% - 200px );
	max-height:250px;
	display:flex;
	align-items:center;
}

.parts_c89 {
	width:100%;
	margin:0 auto;
	background-color:#fff;
	background-color:rgba(145,145,145,0.75);
	/* background-color:#7b7b7b; */
}
.parts_c89 .flex-container {
	width:100%;
	max-width:920px;
	max-width:970px;
	padding-top:30px;
	padding-bottom:30px;
	justify-content:space-between;
	align-items:center;
}
.en .parts_c89 .flex-container {
	max-width:920px;
}
.parts_c89 .image-area {
	width:100%;
	/* max-width:240px; */
	width:180px;
}
.parts_c89 .text-area {
	width:calc( 100% - 220px );
	max-width:580px;
	max-width:630px;
}
.en .parts_c89 .text-area {
	max-width:580px;
}
.parts_c89 p {
	color:#141E28;
	font-size:12px;
	line-height:1.6;
}
.parts_c89 p a {
	color:#96BE00;
	color:#0000ee;
	text-decoration:underline;
	display:inline;
}
.parts_c89 p a:hover {
	color:#fff;
}
.parts_c89 p.annotation {
	font-size:10px;
	padding-left:1em;
	margin-top:1.5em;
	position:relative;
	/* text-indent:-1em; */
}
.parts_c89 p.annotation::before {
	content:"\203b";
	display:block;
	width:1em;
	position:absolute;
	top:0;
	left:0;
}
.en .parts_c89 p.annotation {
	width:100%;
	max-width:520px;
}
.en .parts_c89 p.annotation::before {
	content:"*";
}

@media screen and (max-width:900px) {
	.parts_c89 .container.flex-container {
		flex-direction:column;
	}
	.parts_c89 .text-area {
		text-align:center;
		width:100%;
		max-width:none;
		margin-top:20px;
	}
	.parts_c89 .text-area p.annotation {
		padding-left:0;
	}
	.parts_c89 .text-area p.annotation::before {
		display:inline;
		position:relative;
	}
	.en .parts_c89 p.annotation {
		margin-left:auto;
		margin-right:auto;
	}
}


.section-company .flex-container {
	width:100%;
}
.flex-container.flex_c2 .flex-item.title-area {
	width:400px;
}
.flex-container.flex_c2 .flex-item.table-area {
	width:calc( 100% - 416px );
	border-top:1px solid #121212;
}
.section-company .table-area dl {
	width:100%;
	padding:21px 0;
	border-bottom:1px solid #121212;
	display:flex;
}
.section-company .table-area dl dt {
	font-size:14px;
	font-weight:500;
	letter-spacing:0.2em;
	line-height:30px;
	width:115px;
	width:250px;
}
.section-company .table-area dl dd {
	font-size:14px;
	font-weight:400;
	letter-spacing:0.050em;
	line-height:30px;
	width:calc( 100% - 115px );
	width:calc( 100% - 250px );
}
.section-company .table-area dl dd li {
	padding-left:1.2em;
	position:relative;
}
.section-company .table-area dl dd li::before {
	content:"";
	display:block;
	width:3px;
	height:3px;
	border-radius:50%;
	background-color:#121212;
	position:absolute;
	top:15px;
	left:0.6em;
	transform:translate(-50%,-50%);
}
.ja .section-company .table-area dl dt {
	width:150px;
}
.ja .section-company .table-area dl dd {
	width:calc( 100% - 150px );
}
@media screen and (max-width:1200px) {
	.flex-container.flex_c2 .flex-item.title-area {
		width:320px;
	}
	.flex-container.flex_c2 .flex-item.table-area {
		width:calc( 100% - 336px );
	}
	/* .section-company .table-area dl dt {
		width:90px;
	}
	.section-company .table-area dl dd {
		width:calc( 100% - 90px );
	} */
}
@media screen and (max-width:1000px) {
	.flex-container.flex_c2 .flex-item.title-area,
	.flex-container.flex_c2 .flex-item.table-area {
		width:100%;
	}
}
@media screen and (max-width:750px) {
	.section-company .table-area dl {
		padding:14px 0;
	}
}
@media screen and (max-width:600px) {
	.section-company .table-area dl {
		flex-direction:column;
	}
	.section-company .table-area dl dd,
	.ja .section-company .table-area dl dd {
		width:100%;
	}
}

/* クッキー使用同意ポップアップ */
.cc-window.cc-banner {
	width:100%;
	left:0;
}