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

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
	vertical-align: baseline;
	margin: 0;
	border: 0;
	padding: 0;
	font: inherit;
	font-size: 100%;
}

html {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

li,
dd {
	list-style-type: none;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
	display: block;
}

img {
	vertical-align: bottom;
	border: none;
}

html {
	scroll-padding-top: 80px;
}

body {
	-webkit-font-smoothing: antialiased;
	position: relative;
	color: #000000;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Noto Sans JP", sans-serif;
}

body#top::after {
	position: absolute;
	top: -50rem;
	left: 0;
	z-index: -1;
	background: #012FA6;
	width: 100%;
	height: 68.75rem;
	content: "";
}

body#price::after {
	position: absolute;
	top: -50rem;
	left: 0;
	z-index: -1;
	background: #E7ECFB;
	width: 100%;
	height: 68.75rem;
	content: "";
}

body.no-scroll {
	overflow: hidden;
}

a {
	transition: 0.3s;
	color: #000000;
	text-decoration: none;
}

picture,
img {
	display: inline-block;
}

img {
	width: 100%;
	height: 100%;
}

#loom-companion-mv3 {
	height: 0;
}

.l-header {
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	justify-content: space-between;
	align-items: center;
	z-index: 100;
	background: #012FA6;
	padding: 0 1.75rem;
	width: 100%;
	height: 80px;
}

.l-header__wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: inherit;
}

.l-header__left {
	-moz-column-gap: 1.6875rem;
	display: flex;
	column-gap: 1.6875rem;
	align-items: center;
}

.l-header__logo svg {
	width: 9.6875rem;
	height: 2.3125rem;
}

.l-header__logo .change-white {
	display: none;
}

.l-header__logo .change-white.js-active {
	display: block;
}

.l-header__logo .change-base {
	display: none;
}

.l-header__logo .change-base.js-active {
	display: block;
}

.l-header__language {
	display: flex;
	align-items: center;
	font-family: "Noto Sans JP", sans-serif;
}

.l-header__language a {
	display: inline-block;
	padding-bottom: 0.25rem;
	color: #C1CADF;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__language a:first-of-type {
	margin-right: 0.625rem;
}

.l-header__language a.current {
	border-bottom: 2px solid #ffffff;
	pointer-events: none;
	color: #ffffff;
}

.l-header__nav {
	display: flex;
	align-items: center;
}

.l-header__list {
	-moz-column-gap: 0.5rem;
	display: flex;
	column-gap: 0.5rem;
	align-items: center;
}

.l-header__item {
	position: relative;
}

.l-header__item.subMenu > a {
	position: relative;
	padding: 0.375rem 1.5rem 0.375rem 0.625rem;
}

.l-header__item.subMenu > a::after {
	position: absolute;
	top: calc(50% - 0.0625rem);
	right: 0.625rem;
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.3s ease;
	border-bottom: 1.5px solid #fff;
	border-left: 1.5px solid #fff;
	aspect-ratio: 1;
	width: 0.3125rem;
	height: auto;
	content: "";
}

.l-header__item a {
	display: inline-block;
	position: relative;
	transition: all 0.3s ease;
	border-radius: 8px;
	padding: 0.375rem 0.625rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__subList {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.2);
	border-radius: 0.5rem;
	background: #fff;
	padding: 0.75rem 0.25rem;
	width: auto;
}

.l-header__subItem.in-item {
	position: relative;
	padding-left: 1.25rem;
}

.l-header__subItem.in-item.sub-head {
	padding-left: 2.1875rem;
	color: #969696;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__subItem.in-item::after {
	position: absolute;
	top: 0;
	left: 1.25rem;
	background: #EBEEFE;
	width: 1px;
	height: 100%;
	content: "";
}

.l-header__subItem.sub-head {
	padding-left: 1rem;
	color: #969696;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__subItem.sub-head.--pl0 {
	padding-left: 0.5rem;
}

.l-header__subItem.sub-head.--mt12 {
	margin-top: 0.75rem;
}

.l-header__subItem a {
	display: inline-block;
	position: relative;
	border-radius: 4px;
	padding: 0.4375rem 6.25rem 0.4375rem 0.625rem;
	width: 100%;
	color: #000;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.l-header__subItem a svg circle {
	fill: #EAF0F8;
	transition: all 0.3s ease;
}

.l-header__subItem a::after {
	position: absolute;
	top: 50%;
	right: 0.625rem;
	transform: translateY(-50%);
	background: url(../img/chevron_right.svg) no-repeat center center/cover;
	aspect-ratio: 1;
	width: 1.5rem;
	height: auto;
	content: "";
}

.l-header__subItem a .lazuli-pdp {
	width: 13.625rem;
	height: auto;
}

.l-header__subItem a .lazuli-pdp.--en {
	width: 18.75rem;
}

.l-header__subItem a.illust-item {
	-moz-column-gap: 0.75rem;
	display: flex;
	column-gap: 0.75rem;
	align-items: center;
}

.l-header__subItem a.illust-item svg {
	aspect-ratio: 1;
	width: 3.0625rem;
	height: auto;
}

.l-header__subItem a.illust-item .sub {
	display: block;
	color: #84899E;
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__subItem a.illust-item .main {
	display: block;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-header__subItem.subSubMenu {
	-moz-column-gap: 1rem;
	display: flex;
	column-gap: 1rem;
}

.l-header__subItem.subSubMenu:first-of-type {
	position: relative;
	padding-bottom: 0.75rem;
}

.l-header__subItem.subSubMenu:first-of-type::after {
	position: absolute;
	bottom: -0.375rem;
	left: 1.25rem;
	background: #E7ECFB;
	width: calc(100% - 2.5rem);
	height: 1px;
	content: "";
}

.l-header__subItem.subSubMenu:last-of-type {
	padding-top: 0.75rem;
}

.l-header__subItem.subSubMenu .head {
	margin-left: 1.25rem;
	width: -moz-fit-content;
	width: fit-content;
	color: #515f87;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.l-header__subItem.subSubMenu .wrap {
	width: -moz-fit-content;
	width: fit-content;
}

.l-header__subItem.subSubMenu .wrap a {
	display: inline-block;
	color: #000;
}

.l-header__subItem.subSubMenu .wrap a:not(:last-of-type) {
	margin-bottom: 0.75rem;
}

.l-header__btn:first-of-type {
	margin-right: 0.5rem;
	margin-left: 2rem;
}

.l-header__btn a {
	display: inline-block;
	border-radius: 0.5rem;
	padding: 0.625rem 0.875rem;
	min-width: 8.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.l-header__btn.contact a {
	border: 1px solid #ffffff;
	background: #ffffff;
	color: #012FA6;
}

.l-header__btn.contact a:hover {
	opacity: 0.7;
}

.l-header__btn.download a {
	border: 1px solid #ffffff;
	background: transparent;
	color: #ffffff;
}

.l-header__btn.download a:hover {
	opacity: 0.7;
}

.l-header--lightBlue {
	background-color: #E7ECFB;
}

.l-header--lightBlue .l-header__item a {
	color: #000000;
}

.l-header--lightBlue .l-header__language a.current {
	border-bottom: 1px solid #000000;
	color: #000000;
}

.l-header--lightBlue .l-header__item.subMenu > a::after {
	border-bottom: 1.5px solid #000;
	border-left: 1.5px solid #000;
}

.l-header--lightBlue .l-header__btn.download a {
	border: 1px solid #012FA6;
	background: transparent;
	color: #012FA6;
}

.l-header--lightBlue .l-header__btn.contact a {
	border: 1px solid #012FA6;
	background: #012FA6;
	color: #ffffff;
}

.l-header--lightBlue .l-drawer__icon .bar {
	background: #012FA6;
}

.l-header--white {
	background-color: #ffffff;
}

.l-header--white .l-header__item a {
	color: #000000;
}

.l-header--white .l-header__language a.current {
	border-bottom: 2px solid #012FA6;
	color: #012FA6;
}

.l-header--white .l-header__item.subMenu > a::after {
	border-bottom: 1.5px solid #000;
	border-left: 1.5px solid #000;
}

.l-header--white .l-header__btn.download a {
	border: 1px solid #012FA6;
	background: transparent;
	color: #012FA6;
}

.l-header--white .l-header__btn.contact a {
	border: 1px solid #012FA6;
	background: #012FA6;
	color: #ffffff;
}

.l-header--white .l-drawer__icon .bar {
	background: #012FA6;
}

.l-drawer__icon {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	padding: 1.125rem 0.5rem;
	width: 3.75rem;
	height: 3.75rem;
}

.l-drawer__icon .bar {
	transition: all 0.3s ease;
	background: #ffffff;
	width: 100%;
	height: 0.125rem;
}

.l-drawer__icon.js-open .bar1 {
	transform: translateY(0.6875rem) rotate(30deg);
}

.l-drawer__icon.js-open .bar2 {
	display: none;
}

.l-drawer__icon.js-open .bar3 {
	transform: translateY(-0.6875rem) rotate(-30deg);
}

.l-drawer__menu {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	border-top: 1px solid #E7ECFB;
	background: #fff;
	padding-top: 60px;
	width: 100%;
	height: 100vh;
	height: 100svh;
	overflow-y: scroll;
}

.l-drawer__container {
	background: #ffffff;
	width: 100%;
	height: -moz-fit-content;
	height: fit-content;
}

.l-drawer__item {
	border-bottom: 1px solid #E7ECFB;
}

.l-drawer__item .l-header__subItem a {
	color: #000;
}

.l-drawer__item a {
	display: block;
	padding: 1rem 1rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1;
	letter-spacing: 0em;
}

.l-drawer__item a.no-link {
	position: relative;
}

.l-drawer__item a.no-link::after {
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%) rotate(45deg);
	transition: all 0.3s ease;
	border-right: 0.125rem solid #012FA6;
	border-bottom: 0.125rem solid #012FA6;
	width: 0.625rem;
	height: 0.625rem;
	content: "";
}

.l-drawer__item a.no-link.js-open::after {
	transform: translateY(calc(-50% + 0.25rem)) rotate(-135deg);
}

.l-drawer__subList {
	display: none;
	padding-bottom: 1.5rem;
}

.l-drawer__subItem > a {
	position: relative;
	margin-left: 1rem;
	padding-left: 0;
	padding-block: 0.5rem;
	color: #000;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-drawer__subItem > a::after {
	position: absolute;
	top: 50%;
	right: 0.625rem;
	transform: translateY(-50%);
	background: url(../img/chevron_right.svg) no-repeat center center/cover;
	aspect-ratio: 1;
	width: 1.5rem;
	height: auto;
	content: "";
}

.l-drawer__subItem.in-item {
	margin-left: 0.375rem;
}

.l-drawer__subItem.in-item a {
	border-left: 1px solid #E7ECFB;
	padding-left: 1rem;
	padding-block: 0.5rem;
}

.l-drawer__subItem.subSubMenu {
	-moz-column-gap: 1.25rem;
	display: flex;
	position: relative;
	column-gap: 1.25rem;
	padding-left: 2.25rem;
}

.l-drawer__subItem.subSubMenu::after {
	position: absolute;
	bottom: 0;
	left: 2.25rem;
	background: #E7ECFB;
	width: calc(100% - 2.25rem);
	height: 1px;
	content: "";
}

.l-drawer__subItem.subSubMenu .head {
	padding: 1rem 0 0 0;
	width: -moz-fit-content;
	width: fit-content;
	color: #515f87;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-drawer__subItem.subSubMenu .wrap {
	flex: 1;
}

.l-drawer__subItem.subSubMenu .wrap .link:last-of-type {
	border-bottom: none;
}

.l-drawer__subItem.subSubMenu .wrap a {
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-drawer__subItem.subSubMenu a {
	padding-left: 0;
}

.l-drawer__subItem.subSubMenu:first-of-type {
	border-top: 1px solid #E7ECFB;
}

.l-drawer__btn-wrap {
	-moz-column-gap: 0.75rem;
	display: flex;
	column-gap: 0.75rem;
	justify-content: space-between;
	align-items: center;
	padding: 1.25rem 1rem;
}

.l-drawer__btn {
	flex: 1;
}

.l-drawer__btn a {
	display: inline-block;
	border: 1px solid #012FA6;
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 0.625rem 0.75rem;
	width: 100%;
	color: #ffffff;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.l-drawer__btn.download a {
	background: transparent;
	color: #012FA6;
}

.l-main {
	margin-top: 80px;
}

.l-main__features {
	margin-top: 6.875rem;
}

.l-main__news {
	margin-bottom: 7.5rem;
}

.l-main__single {
	margin-bottom: 7.5rem;
}

.l-main__form {
	margin: 7.5rem 0 7.5rem;
}

.l-main__service {
	margin: 7.5rem 0 7.5rem;
}

.l-inner {
	position: relative;
	margin: 0 auto;
	padding: 0 2.5rem;
	width: 100%;
	max-width: 1120px;
	height: inherit;
}

.l-footer {
	position: relative;
	background: #012FA6;
	padding: 6.25rem 0 0;
}

.l-footer .ninja-icon {
	position: absolute;
	right: 6.25rem;
	bottom: calc(100% - 5rem);
	z-index: -1;
	animation-duration: 10s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-direction: normal;
	animation-fill-mode: forwards;
	animation-name: ninja;
	background: transparent;
	width: 9.375rem;
	height: 5rem;
}

.l-footer.about {
	background: #00237C;
	padding-top: 0;
	color: #B4C2E5;
}

.l-footer.about a {
	color: #B4C2E5;
}

.l-footer.about.en {
	padding-top: 0;
}

.l-footer__head .title {
	margin-bottom: 2rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1.8125rem;
	line-height: 1.3103448276;
	letter-spacing: 0em;
	text-align: center;
}

.l-footer__head .subtitle {
	margin-bottom: 2rem;
	color: #ffffff;
	font-weight: 300;
	font-size: 1.125rem;
	line-height: 1.7777777778;
	letter-spacing: 0em;
	text-align: center;
}

.l-footer__btn-wrap {
	-moz-column-gap: 1.75rem;
	display: flex;
	column-gap: 1.75rem;
	justify-content: center;
	align-items: center;
	margin-bottom: 10rem;
}

.l-footer__btn-wrap a {
	display: inline-block;
	border: 1px solid #ffffff;
	border-radius: 0.5rem;
	background: #ffffff;
	padding: 1.125rem 1.25rem;
	width: 17.5rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.l-footer__btn-wrap a:hover {
	opacity: 0.7;
}

.l-footer__btn-wrap a:first-of-type {
	background: transparent;
	color: #ffffff;
}

.l-footer .--list1 {
	margin-right: 3.125rem;
}

.l-footer .--list2 {
	margin-right: 0.875rem;
}

.l-footer .--list2.--en {
	width: 10.75rem;
}

.l-footer .--list3 {
	margin-right: 6.0625rem;
}

.l-footer .--list4 {
	margin-right: 5.8125rem;
}

.l-footer__list {
	display: flex;
	margin-bottom: 5rem;
}

.l-footer__item:not(:first-of-type) {
	margin-top: 1.75rem;
}

.l-footer__item a {
	display: inline-block;
	color: #B4C2E5;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.8461538462;
	letter-spacing: 0em;
	text-align: center;
}

.l-footer__subitem {
	margin-top: 0.75rem;
}

.l-footer__subitem.in-item {
	margin-left: 1rem;
}

.l-footer__subitem a {
	display: inline-block;
	position: relative;
	padding-left: 1rem;
	color: #B4C2E5;
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 1.8461538462;
	letter-spacing: 0em;
}

.l-footer__subitem a::after {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: #B4C2E5;
	width: 0.5rem;
	height: 0.125rem;
	content: "";
}

.l-footer__bottom {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.l-footer__bottom--left {
	-moz-column-gap: 1rem;
	display: flex;
	column-gap: 1rem;
	align-items: center;
}

.l-footer__bottom--left .logo a svg {
	width: 7.75rem;
	height: 2rem;
}

.l-footer__bottom--left .copyright {
	color: #A2B6E9;
	font-weight: 400;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: "Sofia Pro" "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Noto Sans JP", sans-serif;
	letter-spacing: 0em;
}

.l-footer__bottom--right {
	-moz-column-gap: 2.5rem;
	display: flex;
	column-gap: 2.5rem;
	align-items: center;
	font-family: "Sofia Pro" "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Noto Sans JP", sans-serif;
}

.l-footer__bottom--right a {
	color: #B4C2E5;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1;
	letter-spacing: 0em;
}

.l-footer__bottom-wrap {
	background: #00237C;
	padding: 3.75rem 0 1.5rem;
}

.c-section__title-wrap .title {
	margin-bottom: 0.75rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.1111111111;
	letter-spacing: 0em;
}

.c-section__title-wrap .title > span {
	display: inline-block;
	position: relative;
}

.c-section__title-wrap .title > span .label {
	position: absolute;
	top: 50%;
	left: calc(100% + 0.75rem);
	transform: translateY(-50%);
	border-radius: 2.5rem;
	background: #FEF0A6;
	padding: 0.375rem 0.625rem;
	width: auto;
	color: #D7560E;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.c-section__title-wrap .subtext {
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-section__title-wrap.en .title {
	font-weight: 800;
	font-size: 1.125rem;
	line-height: 1.3;
	letter-spacing: 0em;
}

.c-section__title-wrap.en .subtext {
	font-weight: 800;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-section__title-wrap--features .title {
	margin-bottom: 0.625rem;
}

.c-section__title-wrap--features .subtext {
	font-weight: 600;
	font-size: 2.75rem;
	line-height: 1.5;
}

.c-section__title-wrap--contact .subtext {
	font-weight: 600;
	font-size: 2.25rem;
	line-height: 1.5;
}

.c-btn {
	text-align: center;
}

.c-btn a {
	display: inline-block;
	border: 1px solid #012FA6;
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 1.0625rem 5rem;
	width: 17.5rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.c-btn a:hover {
	opacity: 0.7;
}

.c-btn__large a {
	padding: 1.0625rem 2.375rem;
	width: 17.5rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-btn__large a:hover {
	opacity: 0.7;
}

.c-btn__mini a {
	padding: 0.4375rem 0.3125rem;
	width: 8.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.7142857143;
	letter-spacing: 0em;
}

.view-more-button {
	display: inline-block;
	transition: all 0.3s ease;
	border: 1px solid #012FA6;
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 1.0625rem 5rem;
	width: 17.5rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.view-more-button:hover {
	opacity: 0.7;
	cursor: pointer;
}

.view-more-btn-wrap {
	margin-bottom: 7.5rem;
	text-align: center;
}

.c-top-card {
	box-shadow: 0px 4px 16px 0px #E5EAF9;
	border-radius: 0.75rem;
}

.c-top-card__icatch {
	border-radius: 0.75rem 0.75rem 0 0;
	aspect-ratio: 320/173;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.c-top-card__textWrap {
	position: relative;
	border-radius: 0 0 0.75rem 0.75rem;
	background: #ffffff;
	padding: 1.5rem;
	min-height: 10.625rem;
	overflow: hidden;
}

.c-top-card__textWrap.example {
	min-height: 12.5rem;
}

.c-top-card__title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	margin-bottom: 1.25rem;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-top-card__title.useful {
	-webkit-line-clamp: 4;
}

.c-top-card__text {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	margin-bottom: 1.25rem;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1.6666666667;
	letter-spacing: 0em;
}

.c-top-card__day {
	position: absolute;
	bottom: 1.5rem;
	left: 1.5rem;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.c-top-card__swiper-container {
	position: relative;
	width: 100%;
}

.c-top-card__swiper-container .swiper {
	position: relative;
	padding: 0.625rem 0;
	width: 100%;
	overflow: hidden !important;
}

.c-top-card__swiper-container .swiper-wrapper {
	position: relative;
	width: 100%;
}

.c-top-card__swiper-container .swiper-button-prev {
	top: 50%;
	left: -7rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #E7ECFB;
	width: 5rem;
	height: 5rem;
}

.c-top-card__swiper-container .swiper-button-prev.button-white {
	background: #ffffff;
}

.c-top-card__swiper-container .swiper-button-prev::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../img/arrow-base-back.svg) no-repeat center center/100% 100%;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.c-top-card__swiper-container .swiper-button-prev--white {
	background-color: #ffffff;
}

.c-top-card__swiper-container .swiper-button-next {
	top: 50%;
	right: -7rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #E7ECFB;
	width: 5rem;
	height: 5rem;
}

.c-top-card__swiper-container .swiper-button-next.button-white {
	background: #ffffff;
}

.c-top-card__swiper-container .swiper-button-next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../img/arrow-base.svg) no-repeat center center/100% 100%;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.c-top-card__swiper-container .swiper-button-next--white {
	background-color: #ffffff;
}

.c-top-card .c-top-card__icatch img {
	transition: all 0.3s ease;
}

.c-top-card:hover .c-top-card__icatch img {
	opacity: 0.7;
}

.c-breadcrumbs {
	position: relative;
	z-index: 2;
	color: black;
	font-weight: 300;
	font-size: 0.75rem;
}

.c-breadcrumbs.about {
	color: #E0E3F0;
}

.c-breadcrumbs.about a {
	color: #E0E3F0;
}

.c-breadcrumbs a {
	color: #5C73AD;
	font-weight: 300;
	font-size: 0.75rem;
}

.c-breadcrumbs a:hover {
	opacity: 0.7;
}

.c-breadcrumbs.post {
	margin-left: 0;
	padding-left: 0;
}

.p-topFv {
	position: relative;
	margin-bottom: 2.0625rem;
}

.p-topFv::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: -1;
	background-color: #012FA6;
	width: 100%;
	height: 40.375rem;
	content: "";
}

.p-topFv__wrap {
	display: grid;
	position: relative;
	grid-template-rows: auto auto auto;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "title rotate" "text rotate" "image image";
	width: 100%;
}

.p-topFv__wrap.en {
	grid-template-columns: 45% 55%;
}

.p-topFv__wrap::after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	background: linear-gradient(180deg, rgba(2, 47, 167, 0.8) 0%, rgba(2, 47, 167, 0) 100%);
	width: 100%;
	height: 3.5625rem;
	content: "";
}

.p-topFv__titleWrap {
	grid-area: title;
	margin-top: 7.75rem;
	margin-bottom: 1.875rem;
}

.p-topFv__titleWrap.en {
	margin-top: 9.375rem;
	margin-bottom: 1.25rem;
}

.p-topFv__title {
	display: flex;
	justify-content: right;
	align-items: flex-start;
	margin-right: 0;
	color: #ffffff;
	font-weight: 600;
	font-size: 3.65rem;
}

.p-topFv__title img {
	margin-right: 0.8375rem;
	width: 100%;
	max-width: 21.25rem;
}

.p-topFv__title.en {
	align-items: center;
	font-weight: 700;
	font-size: 2.125rem;
	line-height: 1.2058823529;
	letter-spacing: 0.0305em;
}

.p-topFv__title.en img {
	margin-right: 0;
}

.p-topFv__textWrap {
	grid-area: text;
	margin-right: 2.8125rem;
	margin-bottom: 2.8125rem;
	margin-left: auto;
	width: 100%;
	max-width: 19.0625rem;
}

.p-topFv__textWrap.en {
	margin-right: 4.6875rem;
	padding-left: 4.375rem;
	max-width: 24.5rem;
}

.p-topFv__text {
	margin-bottom: 1.25rem;
	width: 100%;
	color: #ffffff;
	font-weight: 300;
	font-size: 1.125rem;
	line-height: 1.9;
}

.p-topFv__btn a {
	display: inline-block;
	transition: opacity 0.3s;
	border-radius: 0.4375rem;
	background: #ffffff;
	color: #012FA6;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.4634146341;
	padding: 1.0625rem 2.375rem;
	width: 17.5rem;
	text-align: center;
}

.p-topFv__btn a:hover {
	opacity: 0.7;
}

.p-topFv__animation {
	grid-area: rotate;
	padding-left: 1.5rem;
	width: 100%;
	height: 25.375rem;
	overflow: hidden;
	text-align: left;
}

.p-topFv__swiper {
	margin-top: -8.4rem;
	width: 100%;
	height: 33.4375rem;
}

.p-topFv .swiper-slide {
	display: block;
	padding-block: 1.125rem;
	width: -moz-fit-content;
	width: fit-content;
	color: #597DDE;
	font-weight: 600;
	font-size: 1.5625rem;
	line-height: 1;
}

.p-topFv .swiper-slide-active {
	display: block;
	position: relative;
	margin-top: 0.625rem;
	margin-bottom: 2.375rem;
	padding-top: 0;
	width: -moz-fit-content;
	width: fit-content;
	height: 5.625rem !important;
	overflow-y: hidden;
	color: #ffffff;
}

.p-topFv .swiper-slide-active p {
	animation: textTransformPc 0.5s linear;
	animation-fill-mode: forwards;
	padding-bottom: 0.3125rem;
	width: -moz-fit-content;
	width: fit-content;
	font-weight: 600;
	font-size: 3.75rem;
	line-height: 1.3333333333;
	letter-spacing: 0.0298333333em;
	white-space: nowrap;
}

.p-topFv .swiper-slide-active p::before {
	display: block;
	position: absolute;
	bottom: -0.3125rem;
	left: 0;
	transform: scale(0, 1);
	transform-origin: right top;
	animation: underLine 3.3s linear;
	animation-fill-mode: forwards;
	background: #ffffff;
	width: 100%;
	height: 0.375rem;
	content: "";
}

.p-topFv .swiper-slide-active p.first::before {
	transform: scale(0, 1);
	transform-origin: right top;
	animation: underLineFirst 2.6s linear;
	animation-fill-mode: forwards;
}

.p-topFv__image {
	position: relative;
	grid-area: image;
	padding-inline: 0.3125rem;
	text-align: center;
}

.p-topFv__image picture {
	margin-bottom: 3.16875rem;
	margin-left: -1rem;
	width: 100%;
	max-width: 73.6875rem;
}

.p-topFv__ninja {
	position: absolute;
	bottom: -1.25rem;
	left: 48%;
	transform: translate(-50%, 0);
	opacity: 0;
	margin-inline: auto;
	width: 100%;
	max-width: 13.625rem;
}

.p-topFv__ninja.js-fadeInDown {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInDownContents;
}

.p-topSponsor {
	margin-bottom: 10rem;
	padding-top: 4.375rem;
}

.p-topSponsor__slide {
	width: 100%;
}

.p-topSponsor .swiper-wrapper {
	transition-timing-function: linear;
}

.p-topSolution {
	margin: 10rem 0;
}

.p-topSolution__wrap {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.5rem;
}

.p-topSolution__item {
	display: block;
	position: relative;
	border-radius: 0.5rem;
	background: #E7ECFB;
	padding: 1.75rem 5.5rem 1.75rem 1.875rem;
}

.p-topSolution__item::after {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	transform: translateY(-50%);
	transition: all 0.3s ease;
	background: url(../img/arrow-base.svg) no-repeat center center/cover;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.p-topSolution__item:hover {
	cursor: pointer;
}

.p-topSolution__item:hover::after {
	right: 1rem;
}

.p-topSolution__item .head {
	-moz-column-gap: 0.875rem;
	display: flex;
	column-gap: 0.875rem;
	align-items: center;
}

.p-topSolution__item .icon {
	width: 2.75rem;
	height: 2.75rem;
}

.p-topSolution__item .title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-weight: 600;
	font-size: 1.0625rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topSolution__item .text {
	margin-top: 0.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 1.7;
	letter-spacing: 0em;
}

.p-topSolution__title {
	margin-bottom: 2.5rem;
	color: #000000;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.2;
}

.p-topFeature {
	margin-bottom: 10rem;
}

.p-topFeature__head {
	display: flex;
	justify-content: space-between;
	align-items: end;
	margin-bottom: 2.25rem;
}

.p-topFeature__subtitle {
	margin-bottom: 1.875rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topFeature__wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.5rem;
	margin-bottom: 3.75rem;
}

.p-topFeature__item {
	display: flex;
	position: relative;
	align-items: center;
	border-radius: 0.5rem;
	background: #E7ECFB;
	padding: 0.5625rem 0.75rem 0.5625rem 0.4375rem;
}

.p-topFeature__item::after {
	position: absolute;
	top: 50%;
	right: 0.875rem;
	transform: translateY(-50%);
	transition: all 0.3s ease;
	background: url(../img/arrow-base.svg) no-repeat center center/100% 100%;
	width: 1rem;
	height: 1rem;
	content: "";
}

.p-topFeature__item:hover::after {
	right: 0.5rem;
}

.p-topFeature__item .icon {
	width: 3.25rem;
	height: 3.25rem;
}

.p-topFeature__item .title {
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topFeature__item2 {
	-moz-column-gap: 1.75rem;
	display: block;
	display: flex;
	position: relative;
	column-gap: 1.75rem;
	align-items: center;
	border-radius: 0.5rem;
	background: #E7ECFB;
	padding: 1.25rem 1.25rem 1.25rem 1.5rem;
}

.p-topFeature__item2::after {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	transform: translateY(-50%);
	transition: all 0.3s ease;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.p-topFeature__item2:hover::after {
	right: 1rem;
}

.p-topFeature__item2 picture {
	width: 19rem;
	height: 8.4375rem;
}

.p-topFeature__item2 .subtitle {
	color: #012FA6;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 2.7142857143;
	letter-spacing: 0em;
}

.p-topFeature__item2 .title {
	margin-bottom: 0.5rem;
	font-weight: 600;
	font-size: 1.625rem;
	line-height: 1.8461538462;
	letter-spacing: 0em;
}

.p-topFeature__item2 .soon {
	display: inline-block;
	border-radius: 1.875rem;
	background: #ffffff;
	padding: 0.125rem 0.6875rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topMovie {
	position: relative;
	margin-bottom: 10rem;
	padding-bottom: 3.75rem;
}

.p-topMovie::after {
	position: absolute;
	top: 45%;
	left: 0;
	z-index: -1;
	background: #E7ECFB;
	width: 100%;
	height: 55%;
	content: "";
}

.p-topMovie__youtube {
	position: relative;
	margin: auto;
	margin-top: 2.5rem;
	background: gray;
	padding-top: 56.172%;
	width: 100%;
}

.p-topMovie__youtube--wrap {
	margin: auto;
	max-width: 50.5rem;
}

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

.p-topMovie__text {
	margin-top: 3rem;
	margin-bottom: 1.875rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.p-topMovie__text.en {
	font-weight: 800;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topMovie__btn {
	text-align: center;
}

.p-topMovie__btn a {
	display: inline-block;
	border: 1px solid #012FA6;
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 1.125rem 5rem;
	width: 17.5rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topMovie__btn a:hover {
	opacity: 0.7;
}

.p-topService {
	margin-bottom: 10rem;
}

.p-topService__wrap {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: start;
}

.p-topService__img {
	width: 31.25rem;
	height: 25rem;
}

.p-topService__img picture {
	width: 100%;
	height: 100%;
}

.p-topService__textWrap {
	width: 31.4375rem;
}

.p-topService__textWrap .text {
	margin-top: 1.5rem;
	margin-bottom: 2.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topExample {
	padding-bottom: 10rem;
}

.p-topExample.service {
	padding-bottom: 5rem;
}

.p-topExample__swiper-container {
	margin: 1.875rem 0 3.75rem;
}

.p-topUseful {
	margin-bottom: 10rem;
}

.p-topUseful.feature {
	margin-top: 9.375rem;
}

.p-topPartner {
	margin-bottom: 5rem;
}

.p-topPartner__swiper-container {
	margin-top: 3rem;
	padding-top: 1.875rem;
	width: 100%;
	overflow: hidden;
}

.p-topPartner__swiper-container .swiper {
	overflow: visible !important;
}

.p-topPartner__card {
	position: relative;
	border-radius: 0.75rem;
	background: #F5F8FF;
	padding: 2.625rem 1.25rem 1.875rem 2.5rem;
	height: 18.75rem;
}

.p-topPartner__card .colon {
	position: absolute;
	top: -1.5625rem;
	left: 2.625rem;
	width: 3.25rem;
	height: 3.25rem;
}

.p-topPartner__card .human {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 16.375rem;
	height: 15.8125rem;
}

.p-topPartner__card .human img {
	-o-object-fit: cover;
	-o-object-position: center top;
	object-fit: cover;
	object-position: center top;
}

.p-topPartner__card .title {
	margin-bottom: 0.9375rem;
	font-weight: 600;
	font-size: 1.5625rem;
	line-height: 1.52;
	letter-spacing: 0em;
}

.p-topPartner__card .text {
	margin-bottom: 1.4375rem;
	width: 21.875rem;
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topPartner__card .info {
	-moz-column-gap: 1.25rem;
	display: grid;
	grid-template-columns: 5rem 12.5rem;
	column-gap: 1.25rem;
}

.p-topPartner__card .logo {
	grid-row: 1/3;
	grid-column: 1/2;
	transform: scale(1.3);
	width: 5rem;
	height: 3.125rem;
}

.p-topPartner__card .logo img {
	-o-object-fit: contain;
	object-fit: contain;
}

.p-topPartner__card .carrier {
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topPartner__card .name {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.25;
	letter-spacing: 0em;
}

.p-topClients {
	margin-bottom: 3.75rem;
}

.p-topClients__title {
	margin-left: calc((100vw - 65rem) / 2);
}

.p-topClients__wrap {
	-moz-column-gap: 4.5rem;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 4.5rem;
	row-gap: 2.25rem;
	margin-top: 1.875rem;
	margin-bottom: 3.75rem;
}

.p-topClients__center-wrap {
	-moz-column-gap: 2.5rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 2.5rem;
	margin-bottom: 3.75rem;
}

.p-topClients__bottom-wrap {
	margin-bottom: 10rem;
}

.p-topClients__partner-item {
	-moz-column-gap: 3.75rem;
	display: flex;
	column-gap: 3.75rem;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 1.25rem;
}

.p-topClients__partner-item img {
	width: 14.0625rem;
	height: 5rem;
}

.p-topClients__awards-item {
	-moz-column-gap: 3.75rem;
	display: flex;
	column-gap: 3.75rem;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 1.25rem;
}

.p-topClients__awards-item img:nth-of-type(1) {
	width: 11.3125rem;
	height: 3.8125rem;
}

.p-topClients__awards-item img:nth-of-type(2) {
	width: 13.875rem;
	height: 1.75rem;
}

.p-topClients__swiper-container {
	position: relative;
	margin-top: 2.5rem;
	width: 100%;
	overflow: hidden;
}

.p-topClients__swiper-container .swiper-button-prev {
	top: 50%;
	left: -5.625rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #E7ECFB;
	width: 4.375rem;
	height: 4.375rem;
}

.p-topClients__swiper-container .swiper-button-prev.about {
	left: -5.625rem;
}

.p-topClients__swiper-container .swiper-button-prev::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../img/arrow-base-back.svg) no-repeat center center/100% 100%;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.p-topClients__swiper-container .swiper-button-next {
	position: absolute;
	top: 50%;
	right: -5.625rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #E7ECFB;
	width: 4.375rem;
	height: 4.375rem;
}

.p-topClients__swiper-container .swiper-button-next.about {
	right: -5.625rem;
}

.p-topClients__swiper-container .swiper-button-next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../img/arrow-base.svg) no-repeat center center/100% 100%;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.p-topClients__swiper-container.about {
	color: #ffffff;
}

.p-topClients__swiper {
	position: relative;
	width: 51.25rem;
	max-width: 100%;
	overflow: visible !important;
}

.p-topClients__card {
	position: relative;
	padding: 2.8125rem 0 0 1.875rem;
}

.p-topClients__card.about {
	padding: 2.8125rem 0 0 0.625rem;
}

.p-topClients__card .colon {
	position: absolute;
	top: 0rem;
	left: 0rem;
	z-index: -1;
	width: 5rem;
	height: 4.75rem;
}

.p-topClients__card .colon.about {
	left: -1.125rem;
}

.p-topClients__card .text {
	margin-bottom: 2rem;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topClients__card .info-wrap {
	-moz-column-gap: 3.4375rem;
	display: flex;
	column-gap: 3.4375rem;
	align-items: center;
}

.p-topClients__card .info {
	-moz-column-gap: 0.625rem;
	display: flex;
	column-gap: 0.625rem;
	align-items: center;
}

.p-topClients__card .info > div {
	flex: 1;
}

.p-topClients__card .human {
	border-radius: 50%;
	width: 4rem;
	height: 4rem;
	overflow: hidden;
}

.p-topClients__card .human img {
	width: 100%;
	height: 100%;
}

.p-topClients__card .name {
	margin-bottom: 0.3125rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topClients__card .carrier {
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topClients__card.flex-start .info {
	align-items: start;
}

.p-topNews {
	margin-bottom: 7.5rem;
}

.p-topNews__head {
	display: flex;
	justify-content: space-between;
	align-items: end;
}

.p-topNews__btn a {
	display: inline-block;
	position: relative;
	padding: 0 1.875rem 0 0;
	color: #5C73AD;
	font-weight: 600;
	font-size: 1rem;
	line-height: 2.375;
	letter-spacing: 0em;
}

.p-topNews__btn a::after {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: url(../img/arrow-gray.png) no-repeat center center/cover;
	width: 1.5rem;
	height: 1.5rem;
	content: "";
}

.p-topNews__wrap {
	margin-top: 1.75rem;
}

.p-topNews__item {
	display: flex;
	align-items: center;
	border-bottom: 1px solid #E7ECFB;
	padding: 1.625rem 0;
}

.p-topNews__item:first-of-type {
	border-top: 1px solid #E7ECFB;
}

.p-topNews__item .time {
	display: inline-block;
	margin-right: 1.5rem;
	font-weight: 300;
	font-size: 1.0625rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topNews__item .category {
	display: inline-block;
	margin-right: 2rem;
	border-radius: 1.875rem;
	background: #E7ECFB;
	padding: 0.375rem 0.625rem;
	min-width: 8.125rem;
	color: #000000;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
	text-align: center;
}

.p-topNews__item .title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subFeaturesFv {
	margin-bottom: 10rem;
}

.p-subFeaturesFv__wrap {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	margin-top: 4.1875rem;
}

.p-subFeaturesFv__img {
	flex: 1;
	margin-right: calc(50% - 50vw);
	aspect-ratio: 777/514;
	width: 53.9583333333vw;
}

.p-subFeaturesFv__img picture {
	width: 100%;
	height: 100%;
}

.p-subFeaturesFv__textWrap {
	margin-right: -2.375rem;
	padding-bottom: 1.5rem;
	width: 31.3125rem;
}

.p-subFeaturesFv__textWrap .text {
	margin-top: 1.125rem;
	margin-bottom: 2.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subFeaturesAbout {
	margin-bottom: 14.5rem;
}

.p-subFeaturesAbout__title {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.2;
}

.p-subFeaturesAbout__textWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 3.0625rem;
}

.p-subFeaturesAbout__subtext {
	width: 22.5625rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
}

.p-subFeaturesAbout__text {
	flex: 1;
	margin-left: 5.5625rem;
	padding-top: 0.625rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subFeaturesAbout__image {
	width: 100%;
}

.p-subFeaturesData {
	margin-bottom: 10rem;
}

.p-subFeaturesData__title {
	margin-bottom: 2.375rem;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.5;
}

.p-subFeaturesData__subtext {
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.1428571429;
}

.p-subFeaturesData__text {
	margin-bottom: 2.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subFeaturesData__list {
	-moz-column-gap: 2.5rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 2.5rem;
	row-gap: 3.75rem;
	margin-bottom: 10.1875rem;
}

.p-subFeaturesData__itemImage {
	position: relative;
	margin-bottom: 0.875rem;
	border-radius: 0.75rem;
	aspect-ratio: 500/255;
	width: 100%;
	max-width: 31.25rem;
	overflow: hidden;
}

.p-subFeaturesData__itemImage img {
	-o-object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-subFeaturesData__itemTitleWrap {
	display: flex;
	align-items: center;
	margin-bottom: 1.375rem;
}

.p-subFeaturesData__itemIcon {
	width: 3.25rem;
	height: 3.25rem;
}

.p-subFeaturesData__itemTitle {
	margin-left: 0.5rem;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.1111111111;
}

.p-subFeaturesData__itemText {
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subFeaturesData__content {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.p-subFeaturesData__contentWrap {
	flex: 1;
}

.p-subFeaturesData__tag {
	display: inline-block;
	margin-bottom: 1.25rem;
	border-radius: 0.78125rem;
	background-color: #E7ECFB;
	padding-inline: 0.6875rem;
	padding-block: 0.125rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-subFeaturesData__contentSubtext {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.1428571429;
}

.p-subFeaturesData__contentCopy {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.9;
}

.p-subFeaturesData__contentText {
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subFeaturesData__contentImage {
	margin-left: 2.5rem;
	width: 31.25rem;
}

.p-subFeaturesService {
	margin-bottom: 10rem;
}

.p-subFeaturesService__wrap {
	display: flex;
	position: relative;
	align-items: center;
	border-radius: 0.5rem;
	background-color: #E7ECFB;
	padding-top: 1.4375rem;
	padding-bottom: 1rem;
	padding-left: 3.375rem;
}

.p-subFeaturesService__wrap::after {
	position: absolute;
	top: 50%;
	right: 1.875rem;
	transform: translateY(-50%);
	transition: all 0.3s ease;
	background: url(../img/arrow-base.svg) no-repeat center center/cover;
	width: 1.5rem;
	height: 1.5rem;
	content: "";
}

.p-subFeaturesService__wrap:hover {
	cursor: pointer;
}

.p-subFeaturesService__wrap:hover::after {
	right: 1rem;
}

.p-subFeaturesService picture {
	width: 11.125rem;
}

.p-subFeaturesService__body {
	flex: 1;
	margin-left: 2.375rem;
}

.p-subFeaturesService__title {
	color: #012FA6;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 3.1666666667;
}

.p-subFeaturesService__text {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
}

.p-subFeaturesConsultation {
	border-radius: 0.5rem;
	background-color: #E7ECFB;
	padding: 3.75rem;
	color: #012FA6;
	text-align: center;
}

.p-subFeaturesConsultation__message {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
}

.p-subSolution {
	margin-top: 5rem;
	margin-bottom: 5.625rem;
}

.p-subSolution__title {
	margin-bottom: 7.5rem;
}

.p-subSolution__title p:nth-of-type(1) {
	margin-bottom: 1.25rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__title p:nth-of-type(2) {
	font-weight: 600;
	font-size: 2.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.p-subSolution__wrap:not(:last-of-type) {
	margin-bottom: 8.5rem;
}

.p-subSolution__head {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 8px;
	background: #012FA6;
	width: 7.5rem;
	height: 7.5rem;
	color: #ffffff;
	font-weight: 700;
	font-size: 1.375rem;
	line-height: 1.7272727273;
	letter-spacing: 0em;
}

.p-subSolution__item {
	width: 50.125rem;
}

.p-subSolution__item .head {
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__item .text {
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subSolution__item .img-wrap {
	margin-top: 0.9375rem;
}

.p-subSolution__item .img:not(:last-of-type) {
	margin-bottom: 0.9375rem;
}

.p-subSolution__item:not(:last-of-type) {
	margin-bottom: 3.75rem;
}

/*----------------------------------
    共通パーツ余白調整
-----------------------------------*/

.p-topPartner.subSolution {
	margin-bottom: 0;
	padding-bottom: 0;
}

.p-topPartner__swiper-container.subSolution {
	margin-top: 5rem;
}

.p-topClients.subSolution {
	margin-bottom: 0;
	padding-top: 3.125rem;
	padding-bottom: 0;
}

.p-topClients.subSolution .p-topClients__center-wrap {
	margin-bottom: 0;
}

.p-topClients__bottom-wrap.subSolution {
	margin-top: 3.75rem;
	margin-bottom: 8.125rem;
}

.p-subFeaturesConsultation.subSolution {
	margin-top: 6.875rem;
}

.p-topUseful.subSolution {
	margin-top: 6.875rem;
	margin-bottom: 6.875rem;
}

.p-topNews.subSolution {
	padding-top: 0;
}

.p-subContact {
	padding-top: 4rem;
	padding-bottom: 7.5rem;
}

.p-subContact__wrap {
	-moz-column-gap: 2.1875rem;
	display: grid;
	grid-template-rows: auto 1fr;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "a b" "c b";
	column-gap: 2.1875rem;
}

.p-subContact__title-wrap {
	grid-area: a;
	margin-right: 3.25rem;
}

.p-subContact__titleText {
	margin-top: 1.25rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subContact__qa {
	grid-area: c;
	margin-top: 2.5rem;
	margin-right: 3.25rem;
}

.p-subContact__qaTitle {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 2.4;
}

.p-subContact__accordion {
	margin-top: 0.5rem;
}

.p-subContact__form-wrap {
	grid-area: b;
	background-color: #ffffff;
	padding: 2rem;
}

.p-subcontact__formTitle {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5833333333;
}

.p-subContact__form {
	margin-top: 2rem;
}

.p-subThanks {
	padding-top: 5rem;
}

.p-subThanks__image {
	margin-bottom: 2.125rem;
	text-align: center;
}

.p-subThanks__image img {
	width: 5.625rem;
	height: 5.625rem;
}

.p-subThanks__message {
	margin-bottom: 2.5rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 2.625rem;
	text-align: center;
}

.p-subThanks__text {
	margin-bottom: 7.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	text-align: center;
}

.p-subUseful {
	padding-bottom: 7.5rem;
}

.p-main__subAbout {
	margin-bottom: -0.0625rem;
	background-color: #012FA6;
	padding-top: 2rem;
	padding-bottom: 7.5rem;
}

.p-subAbout__title {
	margin-bottom: 1.5rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	font-family: "sofia-pro", sans-serif;
}

.p-subAbout__title--values {
	margin-bottom: 0;
}

.p-subAbout__title--center {
	text-align: center;
}

.p-subAbout__subTitle {
	color: #ffffff;
	font-weight: 600;
	font-size: 3.125rem;
	line-height: 1.5;
}

.p-subAboutFv {
	margin-top: -0.125rem;
	margin-bottom: 7.4375rem;
}

.p-subAboutFv__wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.p-subAboutFv__image {
	flex: 1;
	margin-right: calc(50% - 50vw);
	margin-left: 0.625rem;
}

.p-subAboutFv__heading {
	margin-top: 2.5rem;
}

.p-subAboutFv__heading .title {
	margin-bottom: 2.5rem;
	color: #ffffff;
	font-weight: 800;
	font-size: 3.3125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subAboutFv__heading .text {
	width: 31.25rem;
	max-width: 100%;
	color: #ffffff;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subAboutMission {
	margin-bottom: 7.375rem;
}

.p-subAboutMission__wrap {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2.625rem;
	margin-top: 3.75rem;
	margin-bottom: 7.5rem;
}

.p-subAboutMission__text {
	color: #ffffff;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subAboutMission__text + .p-subAboutMission__text {
	margin-top: 1.875rem;
}

.p-subAboutMission__image {
	margin-inline: calc(50% - 50vw);
}

.p-subAboutVision {
	margin-bottom: 10rem;
}

.p-subAboutVision__text {
	margin-top: 1.75rem;
	color: #ffffff;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subAboutValues {
	margin-bottom: 10rem;
}

.p-subAboutValues__list {
	-moz-column-gap: 2.5rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 2.5rem;
	row-gap: 3.125rem;
}

.p-subAboutValues__itemWrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 1.25rem;
	height: 14.875rem;
}

.p-subAboutValues__itemTitleWrap img.num1 {
	aspect-ratio: 1;
	width: 6.25rem;
	height: auto;
}

.p-subAboutValues__itemTitleWrap img.num2 {
	aspect-ratio: 113/100;
	width: 7.0625rem;
	height: auto;
}

.p-subAboutValues__itemTitleWrap img.num3 {
	aspect-ratio: 112/100;
	width: 7rem;
	height: auto;
}

.p-subAboutValues__itemTitleWrap img.num4 {
	aspect-ratio: 120/100;
	width: 7.5rem;
	height: auto;
}

.p-subAboutValues__itemTitle {
	color: #ffffff;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
	font-family: "sofia-pro", sans-serif;
	text-transform: capitalize;
}

.p-subAboutValues__image {
	width: 100%;
	height: auto;
}

.p-subAboutValues__image--simple {
	margin-right: 3.125rem;
	max-width: 12.625rem;
}

.p-subAboutValues__image--jadgement {
	margin-right: 1.875rem;
	max-width: 18.875rem;
}

.p-subAboutValues__image--leadership {
	margin-right: 2.125rem;
	margin-bottom: 0.625rem;
	max-width: 15.375rem;
}

.p-subAboutValues__image--kindness {
	margin-right: 3.875rem;
	max-width: 12.5625rem;
}

.p-subAboutValues__text {
	color: #ffffff;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subAboutMembers {
	margin-bottom: 10rem;
}

.p-subAboutMembers__title {
	margin-bottom: 2.5rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
}

.p-subAboutMembers__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2.5rem;
}

.p-subAboutMembers__image {
	position: relative;
	margin-bottom: 0.64375rem;
	aspect-ratio: 230/264;
	width: 100%;
	max-width: 14.375rem;
	overflow: hidden;
}

.p-subAboutMembers__image img {
	-o-object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-subAboutMembers__post {
	margin-bottom: 0.5rem;
	color: #ffffff;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-subAboutMembers__name {
	margin-bottom: 0.75rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
}

.p-subAboutMembers__arrow {
	display: block;
	transition: transform 0.3s;
	background-image: url(../img/arrow-bg.png);
	background-position: center center;
	background-size: 100%;
	background-repeat: no-repeat;
	width: 100%;
	max-width: 1.875rem;
	height: 0.8125rem;
	content: "";
}

.p-subAboutMembers__advisors {
	margin-top: 4.6875rem;
}

.p-subAboutPartners {
	margin-bottom: 10rem;
	padding-top: 0.5rem;
}

.p-subAboutPartners__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.5rem;
	margin-top: 2.5rem;
}

.p-subAboutPartners__image {
	display: block;
	transition: all 0.3s ease;
}

.p-subAboutPartners__image:hover {
	transform: translateY(0.375rem);
}

.p-subAboutCareer {
	margin-bottom: 7.5rem;
}

.p-subAboutCareer__image {
	display: block;
	margin-inline: auto;
	width: 100%;
	max-width: 73.375rem;
}

.p-subAboutCareer__body {
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: flex-start;
	z-index: 1;
	margin-top: -2.625rem;
	background-color: #002993;
	padding-top: 4.25rem;
	padding-right: 4.5rem;
	padding-bottom: 3.75rem;
	padding-left: 3.75rem;
}

.p-subAboutCareer__textWrap {
	flex: 1;
	padding-top: 0.3125rem;
}

.p-subAboutCareer__subTitle {
	margin-top: 1.75rem;
	margin-bottom: 1.25rem;
	color: #ffffff;
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.59375;
}

.p-subAboutCareer__text {
	color: #ffffff;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-subAboutCareer__btn {
	width: 13.625rem;
}

.p-subAboutCareer__btn a {
	display: inline-block;
	transition: opacity 0.3s;
	transition: all 0.3s ease;
	border: 1px solid #ffffff;
	border-radius: 0.5rem;
	background: #ffffff;
	padding-block: 1.125rem;
	width: 100%;
	color: #012FA6;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	text-align: center;
}

.p-subAboutCareer__btn a:hover {
	background: transparent;
	color: #ffffff;
}

.p-subAboutOverview__wrap {
	margin-top: 2.5rem;
	border-top: 1px solid #1F4CC0;
}

.p-subAboutOverview__list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #1F4CC0;
	padding-top: 0.8125rem;
	padding-bottom: 0.9375rem;
	font-size: 1rem;
	line-height: 2;
}

.p-subAboutOverview__term {
	width: 11.3125rem;
	color: #E7ECFB;
	font-weight: 400;
}

.p-subAboutOverview__detail {
	flex: 1;
	color: #ffffff;
	font-weight: 300;
}

.p-subAboutOverview__detail a {
	transition: none;
	color: #ffffff;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	text-decoration: underline;
}

.p-subAboutModal {
	display: flex;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	justify-content: center;
	align-items: center;
	transform: translateX(-100%);
	visibility: hidden;
	opacity: 0;
	z-index: 100;
	transition: transform 0.5s, opacity 0.3s, visibility 0.3s;
	width: 100%;
	height: 100%;
}

.p-subAboutModal.is-open {
	transform: translateX(0);
	visibility: visible;
	opacity: 1;
}

.p-subAboutModal__bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background-color: rgba(0, 0, 0, 0.7);
	width: 100%;
	height: 100%;
}

.p-subAboutModal__container {
	position: relative;
	z-index: 1;
	background-color: #E9ECF4;
	width: 100%;
	height: 100%;
	overflow-y: auto;
}

.p-subAboutModal__wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #E9ECF4;
	width: 100%;
	height: 100%;
	overflow-y: auto;
}

.p-subAboutModal__body {
	padding-top: 12.5625rem;
	padding-right: 3.75rem;
	padding-bottom: 12.625rem;
	padding-left: 12.5rem;
	width: 48.6111111111%;
}

.p-subAboutModal__post {
	margin-bottom: 0.75rem;
	color: #002FA7;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-subAboutModal__name {
	margin-bottom: 2.25rem;
	color: #002FA7;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1;
}

.p-subAboutModal__text {
	color: #586483;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
}

.p-subAboutModal__image {
	display: block;
	position: relative;
	filter: grayscale(1);
	width: 51.3888888889%;
	height: 100%;
	overflow: hidden;
}

.p-subAboutModal__image img {
	-o-object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-subAboutModal__close {
	position: fixed;
	top: 2rem;
	right: 2rem;
	z-index: 100;
	cursor: pointer;
	border: none;
	background-color: transparent;
	width: 2.125rem;
	height: 2.125rem;
}

.p-subAboutModal__close:hover {
	opacity: 0.7;
}

.p-subAboutModal__close:focus {
	opacity: 0.7;
}

.p-subAboutModal__close-line {
	display: block;
	background-color: #ffffff;
	width: 2.5rem;
	height: 0.1875rem;
}

.p-subAboutModal__close-line:nth-of-type(1) {
	position: absolute;
	top: 50%;
	transform: rotate(-45deg);
}

.p-subAboutModal__close-line:nth-of-type(2) {
	position: absolute;
	top: 50%;
	transform: rotate(45deg);
}

.p-subAboutModal__trigger {
	cursor: pointer;
}

.p-subAboutModal__trigger:hover {
	opacity: 0.7;
}

.p-subAboutModal__trigger:focus {
	opacity: 0.7;
}

.p-subAboutMembers__list.board-member .p-subAboutMembers__item img {
	transition: all 0.3s ease;
}

.p-subAboutMembers__list.board-member .p-subAboutMembers__item img:hover {
	opacity: 0.7;
}

.p-accordion__list {
	border-top: 1px solid #BEC7E8;
}

.p-accordion__item {
	position: relative;
	border-bottom: 1px solid #BEC7E8;
}

.p-accordion__visible {
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
}

.p-accordion__hidden {
	display: none;
	padding-right: 2.5rem;
}

.p-accordion__text-wrap {
	display: flex;
	align-items: flex-start;
	padding-block: 1rem;
}

.p-accordion__text-wrap--answer {
	padding-top: 4px;
}

.p-accordion__text {
	position: relative;
	flex: 1;
	padding-block: 0.25rem;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.6;
}

.p-accordion__text--thin {
	font-weight: 300;
}

.p-accordion__icon {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	margin-right: 0.5rem;
	border-radius: 50%;
	width: 2rem;
	height: 2rem;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1;
}

.p-accordion__icon--question {
	background-color: #012FA6;
	color: #ffffff;
}

.p-accordion__icon--answer {
	background-color: #ffffff;
	color: #012FA6;
}

.p-accordion__btn {
	position: relative;
	margin-right: 1.3125rem;
	margin-left: 0.3125rem;
	background-color: transparent;
	width: 1.625rem;
	height: 1.625rem;
}

.p-accordion__btn span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: transform 0.3s;
	background: #000000;
	width: 100%;
	max-width: 0.875rem;
	height: 0.125rem;
}

.p-accordion__btn span:nth-of-type(2) {
	transform: translate(-50%, -50%) rotate(90deg);
}

.p-accordion__visible.is-active .p-accordion__btn span:nth-of-type(2) {
	transform: translate(-50%, -50%) rotate(0deg);
}

.p-form__item {
	width: 100%;
}

.p-form__item + .p-form__item {
	margin-top: 2.5rem;
}

.p-form__head {
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.3;
}

.wpcf7-not-valid-tip {
	margin-top: 0.625rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-form__data input {
	outline: none;
	border: none;
	border-bottom: 1px solid #E0E3F0;
	padding-top: 0.5rem;
	padding-bottom: 0.3125rem;
	width: 100%;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2.1333333333;
}

.p-form__data input::-moz-placeholder {
	color: #ccc;
}

.p-form__data input::placeholder {
	color: #ccc;
}

.p-form__data input:focus {
	border-bottom: 1px solid #012FA6;
}

.p-form__data textarea {
	margin-top: 0.75rem;
	outline: none;
	border: 1px solid #E0E3F0;
	border-radius: 0.5rem;
	padding: 0.75rem;
	width: 100%;
	resize: vertical;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2.1333333333;
}

.p-form__data textarea::-moz-placeholder {
	color: #ccc;
}

.p-form__data textarea::placeholder {
	color: #ccc;
}

.p-form__data textarea:focus {
	border: 1px solid #012FA6;
}

.p-form__data .wpcf7-radio {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-top: 0.75rem;
}

.p-form__data .wpcf7-radio span {
	margin: 0;
}

.p-form__data label input[type=radio] {
	display: none;
}

.p-form__data label + label {
	margin-top: 0.25rem;
}

.p-form__data label span {
	display: inline-block;
	position: relative;
	padding-left: 1.875rem;
	color: #000000;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
}

.p-form__data label span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	border: 2px solid #012FA6;
	border-radius: 50%;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
}

.p-form__data label span::after {
	position: absolute;
	top: 50%;
	left: 0.3125rem;
	transform: translateY(-50%);
	opacity: 0;
	border-radius: 50%;
	background: #012FA6;
	width: 0.625rem;
	height: 0.625rem;
	content: "";
}

.p-form__data label input[type=radio]:checked + span::after {
	opacity: 1;
}

.p-form__data label:hover {
	cursor: pointer;
}

.p-form__data--grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
}

.wpcf7-response-output {
	border: none !important;
	padding: 0.625rem;
	color: #012FA6;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-form__btn {
	margin-top: 2.5rem;
}

.p-form__btn input {
	display: inline-block;
	transition: color 0.3s, background-color 0.3s;
	cursor: pointer;
	border: 1px solid #012FA6;
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 1.125rem 5rem;
	width: 100%;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0em;
	text-align: center;
}

.p-form__btn input:hover {
	background: transparent;
	color: #012FA6;
}

.p-form__btn .wpcf7-spinner {
	display: none;
}

.p-main__contact {
	background-color: #E7ECFB;
	padding-top: 2.125rem;
}

.p-postArchive {
	margin-top: 7rem;
}

.p-postArchive__wrap {
	-moz-column-gap: 2.5rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 2.5rem;
	margin-bottom: 3.75rem;
}

.p-postArchive__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	margin-bottom: 2.5rem;
	box-shadow: 0 0.25rem 1rem #e5eaf9;
	border-radius: 12px;
	overflow: hidden;
}

.p-postArchive__item.--useful {
	display: none;
}

.p-postArchive__item.--useful.js-show {
	display: grid;
}

.p-postArchive__item.--case-study {
	grid-row: span 5;
}

.p-postArchive__item.--case-study .title {
	padding-top: 0rem;
}

.p-postArchive__item .client {
	padding: 1.5rem 1rem 0.5rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postArchive__item .icatch {
	aspect-ratio: 320/180;
	width: 100%;
	height: auto;
}

.p-postArchive__item .icatch img {
	-o-object-fit: cover;
	object-fit: cover;
}

.p-postArchive__item .title {
	margin-bottom: 0.75rem;
	padding-top: 1.25rem;
	padding-inline: 1.25rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postArchive__item .category-wrap {
	-moz-column-gap: 0.25rem;
	display: flex;
	column-gap: 0.25rem;
	row-gap: 0.25rem;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 0.75rem;
	padding-inline: 1.25rem;
}

.p-postArchive__item .category {
	border: 1px solid #E0E3F0;
	border-radius: 100vmax;
	padding: 0.1875rem 0.375rem;
	color: #84899E;
	font-weight: 400;
	font-size: 0.625rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-postArchive__item .date {
	padding-bottom: 1.25rem;
	padding-inline: 1.25rem;
	color: #84899e;
	font-weight: 400;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-postArchive__no-post {
	display: none;
	height: 25rem;
	text-align: center;
}

.p-postArchive__no-post p {
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postArchive__no-post img {
	margin-bottom: 1.25rem;
	margin-inline: auto;
	width: 9.375rem;
	height: auto;
}

.p-postArchive__no-post.--before {
	margin-top: 2.5rem;
	height: -moz-fit-content;
	height: fit-content;
}

.p-postArchive__no-post.--after {
	margin-top: 2.5rem;
	height: -moz-fit-content;
	height: fit-content;
}

.p-postSingle__container {
	padding: 1.25rem 0 3.75rem !important;
	width: 700px !important;
}

.p-postSingle__container p {
	line-height: 30px;
}

.p-postSingle__container ul li {
	position: relative;
	padding-left: 1.25rem;
}

.p-postSingle__container ul li::after {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #C4C4C4;
	aspect-ratio: 1;
	width: 0.5rem;
	height: auto;
	content: "";
}

.p-postSingle__container ol {
	padding-left: 1.25rem;
}

.p-postSingle__container ol li {
	list-style: decimal;
}

.p-postSingle__container .toc_list {
	counter-reset: item;
}

.p-postSingle__container .toc_list li {
	display: flex;
	justify-content: flex-start;
}

.p-postSingle__container .toc_list li a {
	display: inline-block;
	color: #5C73AD !important;
}

.p-postSingle__container .toc_list li::after {
	display: none;
}

.p-postSingle__container .toc_list li::before {
	counter-increment: item; /* 以下は自由に装飾... */
	padding-right: 0.5em;
	content: counter(item) ".";
	color: #5C73AD;
	font-weight: 400;
}

.p-postSingle__kv {
	margin-bottom: 0;
}

.p-postSingle__img {
	margin-top: 1.0625rem;
	margin-bottom: 0.9375rem;
	width: 100%;
	height: auto;
}

.p-postSingle__p0 {
	padding: 0 !important;
}

.p-postSingle__title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postSingle__tag-wrap {
	-moz-column-gap: 0.5rem;
	display: flex;
	column-gap: 0.5rem;
	align-items: center;
	margin-bottom: 0.75rem;
}

.p-postSingle__tag {
	display: inline-block;
	border: 1px solid #E0E3F0;
	border-radius: 100vmax;
	background: #ffffff;
	padding: 0.375rem 0.75rem !important;
	color: #84899E;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postSingle__tag::after {
	display: none;
}

.p-postSingle__container figure + p,
.p-postSingle__container figure + h2,
.p-postSingle__container figure + h3,
.p-postSingle__container figure + h4 {
	margin-top: 40px;
}

.p-postSingle__container .wp-block-table td {
	border: none;
}

.p-postSingle__container .wp-block-image {
	margin-top: 40px;
	margin-left: -90px;
	width: calc(100% + 180px);
	height: auto;
}

.p-postSingle__container .has-small-font-size {
	margin-top: 40px !important;
	color: #586483;
	font-style: normal;
	font-weight: 300;
	font-size: 14px;
	line-height: 24px !important;
}

.single-case_study .entry-content p {
	margin-top: 20px;
}

.single-case_study .entry-content p + h2,
.single-case_study .entry-content p + h3,
.single-case_study .entry-content p + h4,
.single-case_study .entry-content p + h5,
.single-case_study .entry-content p + h6 {
	margin-top: 40px;
}

p + .single-case_study .entry-content p {
	margin-top: 1em;
}

.p-postSingle__client {
	margin-bottom: 0.75rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.single-case_study .entry-content img {
	margin-bottom: 12px;
}

.wp-block-image {
	margin-bottom: 20px;
}

.p-postSingle__before-head {
	margin-bottom: 0.75rem;
	border-radius: 100vmax;
	background: #535353;
	padding: 0.375rem 1.25rem;
	width: -moz-fit-content;
	width: fit-content;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postSingle__before-text {
	margin-bottom: 2.5rem;
	font-weight: 600;
	font-size: 1rem;
	font-size: 16px;
	line-height: 1.625;
	letter-spacing: 0em;
}

.p-postSingle__after-head {
	margin-bottom: 0.75rem;
	border-radius: 100vmax;
	background: #012FA6;
	padding: 0.375rem 1.25rem;
	width: -moz-fit-content;
	width: fit-content;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postSingle__after-text {
	margin-bottom: 5rem;
	font-weight: 600;
	font-size: 1rem;
	font-size: 16px;
	line-height: 1.625;
	letter-spacing: 0em;
}

.p-postSingle__case-study {
	padding-bottom: 7.5rem;
}

.wp-block-table {
	margin-bottom: 40px;
	font-family: "sofia-pro", "Noto Sans JP", sans-serif;
}

.wp-block-table table {
	padding-bottom: 10px;
}

.wp-block-table strong {
	margin-bottom: 52px;
	font-size: 18px;
}

.p-event__title {
	margin-block: 2.5rem;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1;
	letter-spacing: 0em;
	text-align: center;
}

.p-event__category-wrap {
	-moz-column-gap: 2rem;
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: 2rem;
	row-gap: 0.75rem;
}

.p-event__category {
	-moz-column-gap: 2.5rem;
	display: flex;
	column-gap: 2.5rem;
	align-items: flex-start;
	margin-bottom: 3.75rem;
	border-radius: 12px;
	background: #EAEEFD;
	padding: 1.25rem;
}

.p-event__category-filter {
	-moz-column-gap: 0.25rem;
	display: flex;
	position: relative;
	column-gap: 0.25rem;
	align-items: center;
	width: 100%;
}

.p-event__category-filter svg {
	aspect-ratio: 1;
	width: 1.5rem;
	height: auto;
}

.p-event__category-filter span {
	color: #5C73AD;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__category-filter::after {
	position: absolute;
	top: 50%;
	right: 0;
	transform-origin: center center;
	translate: 0 -50%;
	rotate: 135deg;
	transition: rotate 0.3s ease;
	border-top: 0.125rem solid #5C73AD;
	border-right: 0.125rem solid #5C73AD;
	aspect-ratio: 1;
	width: 0.5rem;
	height: auto;
	content: "";
}

.p-event__category-filter.js-open::after {
	rotate: -45deg;
}

.p-event__category-head {
	padding: 0.3125rem 0;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__category-list {
	-moz-column-gap: 0.25rem;
	display: flex;
	column-gap: 0.25rem;
	flex-wrap: wrap;
	align-items: center;
}

.p-event__category-item [type=checkbox] {
	clip: rect(0, 0, 0, 0);
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.p-event__category-item [type=checkbox]:checked + span {
	transition: all 0.3s ease;
	border: 1px solid #012FA6;
	background: #012FA6;
	color: #ffffff;
}

.p-event__category-item span {
	display: inline-block;
	transition: all 0.3s ease;
	border: 1px solid #CCD4EB;
	border-radius: 100vmax;
	background: #ffffff;
	padding: 0.5rem 0.75rem;
	color: #5C73AD;
	font-weight: 700;
	font-size: 0.8125rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-event__wrap-head {
	-moz-column-gap: 1.375rem;
	display: flex;
	column-gap: 1.375rem;
	align-items: center;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__wrap-head::after {
	top: 50%;
	left: 0;
	flex: 1;
	transform: translateY(-50%);
	background: #E0E3F0;
	width: 100%;
	height: 1px;
	content: "";
}

.p-event__wrap {
	-moz-column-gap: 2.5rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 2.5rem;
	margin-top: 1.25rem;
	margin-bottom: 4.375rem;
}

.p-event__item {
	display: none;
	grid-template-rows: subgrid;
	grid-row: span 5;
	margin-bottom: 2.5rem;
	box-shadow: 0px 4px 16px 0px #E5EAF9;
	border-radius: 12px;
}

.p-event__item.js-show {
	display: grid;
}

.p-event__item-img {
	position: relative;
	border-radius: 12px 12px 0 0;
	background: #EAEEFD;
	aspect-ratio: 320/180;
	width: 100%;
	height: auto;
}

.p-event__item-img img {
	-o-object-fit: contain;
	object-fit: contain;
}

.p-event__item-label {
	position: absolute;
	right: 15px;
	bottom: -13px;
	width: -moz-fit-content;
	width: fit-content;
	height: auto;
}

.p-event__item-label p {
	border: 1px solid #ffffff;
	border-radius: 100vmax;
	padding: 0.1875rem 0.625rem;
	width: 100%;
	height: 100%;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__item-label .--reception {
	background: #012FA6;
	color: #ffffff;
}

.p-event__item-label .--full {
	background: #EF0E5F;
	color: #ffffff;
}

.p-event__item-label .--end {
	border: none;
	background: #D3D3D3;
	color: rgb(132, 137, 158);
}

.p-event__item-text-wrap {
	border-radius: 0 0 12px 12px;
	background: #ffffff;
	padding: 1rem;
}

.p-event__item-title {
	padding: 1rem 1rem 0.75rem 1rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__item-category {
	margin-bottom: 0.75rem;
	padding-inline: 1rem;
	height: -moz-fit-content;
	height: fit-content;
}

.p-event__item-category p {
	display: inline-block;
	border: 1px solid #E0E3F0;
	border-radius: 100vmax;
	padding: 0.1875rem 0.375rem;
	color: rgb(132, 137, 158);
	font-weight: 400;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__item-info {
	-moz-column-gap: 0.25rem;
	display: flex;
	column-gap: 0.25rem;
	align-items: center;
	padding-inline: 1rem;
	height: -moz-fit-content;
	height: fit-content;
}

.p-event__item-info svg {
	aspect-ratio: 1;
	width: 1.25rem;
	height: auto;
}

.p-event__item-info span {
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 1.3;
	letter-spacing: 0em;
}

.p-event__item-info.--last {
	border-radius: 0 0 12px 12px;
	padding-bottom: 1rem;
}

.p-event__item-info + .p-event__item-info {
	margin-top: 0.75rem;
}

.p-event-single__body {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 2.5rem;
	margin-bottom: 7.5rem;
}

.p-event-single__contents {
	width: 42.5rem;
	height: auto;
}

.p-event-single__kv {
	margin-bottom: 2.5rem;
	width: 100%;
	height: auto;
}

.p-event-single__title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__category-wrap {
	margin-bottom: 2.5rem;
}

.p-event-single__category {
	display: inline-block;
	border: 1px solid #E0E3F0;
	border-radius: 20px;
	padding: 0.375rem 0.75rem;
	color: #84899E;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-event-single__main-head {
	margin-top: 5rem;
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__main-head.--first {
	margin-top: 2.5rem;
}

.p-event-single__outline-main {
	margin-bottom: 5rem;
}

.p-event-single__outline-main p {
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.875;
	letter-spacing: 0em;
}

.p-event-single__outline-main b,
.p-event-single__outline-main strong {
	font-weight: 700;
}

.p-event-single__outline-main p + p {
	margin-top: 1em;
}

.p-event-single__recommend-item {
	-moz-column-gap: 0.75rem;
	display: flex;
	column-gap: 0.75rem;
	align-items: flex-start;
}

.p-event-single__recommend-item:not(:last-of-type) {
	margin-bottom: 0.75rem;
}

.p-event-single__recommend-item svg {
	margin-top: 0.125rem;
	aspect-ratio: 1;
	width: 1.75rem;
	height: auto;
}

.p-event-single__recommend-item span {
	display: inline-block;
	flex: 1;
	font-weight: 600;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__program-item {
	-moz-column-gap: 0.375rem;
	display: grid;
	grid-template-columns: 0.6875rem 7.5rem 1fr;
	column-gap: 0.375rem;
}

.p-event-single__program-item:last-of-type .bar::after {
	display: none;
}

.p-event-single__program-item .bar {
	position: relative;
}

.p-event-single__program-item .bar span {
	display: inline-block;
	position: relative;
	z-index: 2;
	margin-top: 0.625rem;
	border-radius: 50%;
	background: #012FA6;
	aspect-ratio: 1;
	width: 0.6875rem;
	height: auto;
}

.p-event-single__program-item .bar::after {
	position: absolute;
	top: 0.625rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	background: rgb(224, 227, 240);
	width: 1px;
	height: 100%;
	content: "";
}

.p-event-single__program-item .time {
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__program-item .text-wrap {
	padding-bottom: 1rem;
}

.p-event-single__program-item .head {
	margin-bottom: 0.25rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__program-item .text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item {
	-moz-column-gap: 2.5rem;
	display: flex;
	column-gap: 2.5rem;
	justify-content: space-between;
	align-items: flex-start;
}

.p-event-single__profile-item.--aic {
	align-items: center;
}

.p-event-single__profile-item:not(:last-of-type) {
	margin-bottom: 2.5rem;
}

.p-event-single__profile-item .img {
	aspect-ratio: 1;
	width: 8.75rem;
	height: auto;
}

.p-event-single__profile-item .text-wrap {
	flex: 1;
}

.p-event-single__profile-item .name {
	margin-bottom: 0.25rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item .carrer {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item .introduce {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

/*----------------------------------
    sidebar
-----------------------------------*/

.p-event-single__sidebar {
	position: sticky;
	top: 6.25rem;
	left: 0;
	width: 20rem;
	height: auto;
}

.p-event-single__sidebar-title {
	padding-bottom: 1rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__sidebar-table {
	border-top: 1px solid rgb(224, 227, 240);
}

.p-event-single__sidebar-table tbody {
	display: block;
	width: 100%;
}

.p-event-single__sidebar-table .table-row {
	-moz-column-gap: 0.625rem;
	display: flex;
	column-gap: 0.625rem;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid rgb(224, 227, 240);
	padding: 0.75rem 0.25rem;
	width: 100%;
}

.p-event-single__sidebar-table .table-head {
	-moz-column-gap: 0.25rem;
	display: flex;
	column-gap: 0.25rem;
	flex: 1;
	align-items: center;
	text-align: left;
}

.p-event-single__sidebar-table .table-head svg {
	aspect-ratio: 1;
	width: 1.25rem;
	height: auto;
}

.p-event-single__sidebar-table .table-head span {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__sidebar-table .table-data {
	width: 13.125rem;
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__sidebar-table .table-data.--day {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__sidebar-btn a {
	display: inline-block;
	margin-top: 1.75rem;
	border-radius: 8px;
	background: #012FA6;
	padding: 1.125rem 1.25rem;
	width: 100%;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.p-event-single__sidebar-btn a.--none {
	background: #E3E3E3;
	pointer-events: none;
	color: #B2B2B2;
}

.p-event-single__form {
	background: #EAEEFD;
	padding: 4.5625rem 1.25rem 4.9375rem;
}

.p-event-single__form-body {
	margin-inline: auto;
	border-radius: 8px;
	background: #fff;
	padding: 2rem;
	width: min(1040px, 100%);
}

.p-event-single__form-head {
	margin-bottom: 2.9375rem;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__sorry {
	margin-top: 2.375rem;
	margin-inline: auto;
	padding-bottom: 8.25rem;
}

.p-event__sorry-img {
	margin-inline: auto;
	aspect-ratio: 1;
	width: 9.375rem;
	height: auto;
}

.p-event__sorry-text {
	margin-top: 1rem;
	font-weight: 400;
	font-size: 1rem;
	line-height: 1.8;
	letter-spacing: 0em;
	text-align: center;
}

.p-pdpFv {
	margin-top: 1.25rem;
	overflow: hidden;
}

.p-pdpFv__wrapper {
	-moz-column-gap: 5.625rem;
	display: flex;
	column-gap: 5.625rem;
	flex-direction: row-reverse;
	justify-content: start;
	align-items: start;
}

.p-pdpFv__wrapper.vs {
	justify-content: space-between;
}

.p-pdpFv__wrapper.guide {
	-moz-column-gap: 3.125rem;
	column-gap: 3.125rem;
}

.p-pdpFv__textWrap {
	margin-top: 2.5rem;
	width: 28.125rem;
	height: auto;
}

.p-pdpFv__textWrap .text {
	font-weight: 300;
	font-size: 1.125rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdpFv__textWrap .text.en-vs {
	word-wrap: break-word;
}

.p-pdpFv__textWrap.guide {
	width: 33.75rem;
}

.p-pdpFv__textWrap.en {
	margin-top: 0;
}

.p-pdpFv__titleWrap .title {
	margin-bottom: 1.25rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdpFv__titleWrap .subtext {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 3.25rem;
	line-height: 1.3;
	letter-spacing: 0em;
	white-space: nowrap;
}

.p-pdpFv__img {
	margin-right: calc((100vw - 100%) / 2 * -1);
	aspect-ratio: 700/492;
	width: 43.75rem;
	height: auto;
}

.p-pdpFv__img.guide {
	margin-right: calc((100vw - 100%) / 2 * -1 - 3.125rem);
	aspect-ratio: 650/492;
	width: 40.625rem;
}

.p-pdpFv__img.vs {
	margin-right: -1.875rem;
	aspect-ratio: 470/412;
	width: 29.375rem;
	height: auto;
}

.p-pdp__head {
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp__text {
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp__text.en {
	font-weight: 400;
	font-size: 1rem;
	line-height: 1.8;
	letter-spacing: 0em;
}

/*----------------------------------
    btn
-----------------------------------*/

.p-pdp__btn {
	margin-top: 1.5rem;
}

.p-pdp__btn a {
	-moz-column-gap: 0.625rem;
	display: flex;
	column-gap: 0.625rem;
	align-items: center;
	margin-left: auto;
	width: -moz-fit-content;
	width: fit-content;
}

.p-pdp__btn a.left {
	margin-left: 0;
}

.p-pdp__btn .icon {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background: #012FA6;
	aspect-ratio: 1;
	width: 2.5rem;
	height: auto;
}

.p-pdp__btn .icon svg {
	aspect-ratio: 1;
	width: 1rem;
	height: auto;
}

.p-pdp__btn .text {
	font-weight: 600;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

/*----------------------------------
    link
-----------------------------------*/

.p-pdp__what-link {
	position: relative;
}

.p-pdp__what-link .label {
	display: inline-block;
	position: absolute;
	right: 7.5rem;
	bottom: -0.3125rem;
	margin-bottom: 0.625rem;
	border-radius: 2.5rem;
	background: #FEF0A6;
	padding: 0.375rem 0.625rem;
	color: #D7560E;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

/*----------------------------------
    cta
-----------------------------------*/

.p-pdp__download {
	margin: 10rem 0;
}

.p-pdp__download-container {
	display: flex;
	position: relative;
	align-items: center;
	border-radius: 0.75rem;
	background: #EAEEFD;
	padding: 1.875rem 1.25rem;
	padding-left: 13.75rem; /*11.25*/
}

.p-pdp__download-container .img {
	position: absolute;
	top: -1rem;
	left: 1.25rem;
	margin-right: 0.9375rem;
	aspect-ratio: 145/88;
	width: 11.875rem;/*9.0625*/
	height: auto;
}

.p-pdp__download-container .text {
	margin-right: 9.0625rem;/*17.5*/
	color: #012FA6;
	font-weight: 600;
	font-size: 1.375rem; /*1.1875*/
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp__download-container .text.en {
	margin-right: 13.25rem;
	white-space: nowrap;
}

.p-pdp__download-container .btn a {
	border-radius: 0.5rem;
	background: #012FA6;
	padding: 0.8125rem 1.25rem; /*0.5625rem 1.25rem;*/
	color: #ffffff;
	font-weight: 600;
	font-size: 1.0625rem; /*0.875*/
	line-height: 1.5;
	letter-spacing: 0em;
}

/*----------------------------------
    役割
-----------------------------------*/

.p-pdp-vs__role {
	margin-top: 8.4375rem;
}

.p-pdp-vs__role-wrap {
	display: flex;
	justify-content: space-between;
}

.p-pdp-vs__role-item {
	width: 31.25rem;
	max-width: 100%;
}

/*----------------------------------
    pim
-----------------------------------*/

.p-pdp-vs__pim {
	margin-top: 8.3125rem;
}

.p-pdp-vs__pim-wrap {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.p-pdp-vs__pim-item {
	margin-top: -3.75rem;
	width: 31.25rem;
	max-width: 100%;
}

.p-pdp-vs__pim-img {
	border-radius: 0.75rem;
	aspect-ratio: 500/467;
	width: 31.25rem;
	max-width: 100%;
	height: auto;
	overflow: hidden;
}

/*----------------------------------
    compare
-----------------------------------*/

.p-pdp-vs__compare {
	margin-top: 11rem;
}

.p-pdp-vs__compare-head {
	-moz-column-gap: 5.625rem;
	display: flex;
	column-gap: 5.625rem;
	margin-bottom: 2.625rem;
}

.p-pdp-vs__compare-head.compare-en {
	justify-content: space-between;
}

.p-pdp-vs__compare-head .p-pdp__text {
	width: 36.875rem;
	max-width: 100%;
}

.p-pdp-vs__compare-img {
	aspect-ratio: 1040/456;
	width: 100%;
	height: auto;
}

/*----------------------------------
    reason
-----------------------------------*/

.p-pdp-vs__reason {
	margin-top: 15.0625rem;
}

.p-pdp-vs__reason-wrap {
	margin-top: 2.6875rem;
}

.p-pdp-vs__reason-item {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.p-pdp-vs__reason-item:not(:last-of-type) {
	margin-bottom: 3.125rem;
}

.p-pdp-vs__reason-item .textWrap {
	width: 25.625rem;
	max-width: 100%;
}

.p-pdp-vs__reason-item .num {
	margin-bottom: 0.4375rem;
	color: #012FA6;
	font-weight: 800;
	font-size: 2.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-vs__reason-item .head {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-vs__reason-img {
	border-radius: 0.75rem;
	aspect-ratio: 590/428;
	width: 36.875rem;
	height: auto;
	overflow: hidden;
}

/*----------------------------------
    download
-----------------------------------*/

.p-pdp__download.pdp-vs-pim {
	margin: 9.375rem 0;
}

/*----------------------------------
    form
-----------------------------------*/

.p-pdp-what__form {
	margin-top: 7.5rem;
}

.p-pdp-what__form-img {
	margin-top: 2.5rem;
	aspect-ratio: 1040/440;
	width: 100%;
	height: auto;
}

/*----------------------------------
    reason
-----------------------------------*/

.p-pdp-what__reason {
	margin-top: 10rem;
}

.p-pdp-what__reason-wrap {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.p-pdp-what__reason-text {
	width: 31.25rem;
	max-width: 100%;
}

.p-pdp-what__reason-img {
	aspect-ratio: 500/467;
	width: 31.25rem;
	max-width: 100%;
	height: auto;
}

/*----------------------------------
    data
-----------------------------------*/

.p-pdp-what__data {
	margin-top: 9.375rem;
}

.p-pdp-what__data-img {
	margin-top: 2.5rem;
	aspect-ratio: 1040/414;
	width: 100%;
	height: auto;
}

/*----------------------------------
    solve
-----------------------------------*/

.p-pdp-what__solve {
	margin: 10rem 0;
}

.p-pdp-what__solve-text {
	display: flex;
	justify-content: space-between;
}

.p-pdp-what__solve-text .p-pdp__head {
	width: 18.125rem;
	max-width: 100%;
}

.p-pdp-what__solve-text .p-pdp__text {
	width: 42.5rem;
	max-width: 100%;
	height: auto;
}

.p-pdp-what__solve-img {
	margin-top: 2.5rem;
}

/*----------------------------------
    what
-----------------------------------*/

.p-pdp-product__what {
	margin-top: 7.625rem;
}

.p-pdp__text.product-what {
	width: 48.125rem;
	height: auto;
}

.p-pdp-product__what-img {
	margin-top: 2.5rem;
	aspect-ratio: 1040/414;
	width: 100%;
	height: auto;
}

/*----------------------------------
    ダイナミズム
-----------------------------------*/

.p-pdp-product__dynamism {
	margin-top: 10rem;
}

.p-pdp-product__dynamism-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.p-pdp-product__dynamism-img {
	border-radius: 0.75rem;
	aspect-ratio: 500/467;
	width: 31.25rem;
	max-width: 100%;
	height: auto;
	overflow: hidden;
}

.p-pdp-product__dynamism-textWrap {
	width: 31.25rem;
	max-width: 100%;
}

/*----------------------------------
    可能性
-----------------------------------*/

.p-pdp-product__possibility {
	margin-top: 10rem;
}

.p-pdp-product__possibility-title {
	padding-bottom: 1.5rem;
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-head {
	-moz-column-gap: 13.5rem;
	display: flex;
	column-gap: 13.5rem;
	border-top: 1px solid #E0E3F0;
	padding-top: 1.5rem;
}

.p-pdp-product__possibility-head.en {
	-moz-column-gap: 7.0625rem;
	column-gap: 7.0625rem;
}

.p-pdp-product__possibility-head.--head2 {
	-moz-column-gap: 10.5rem;
	column-gap: 10.5rem;
}

.p-pdp-product__possibility-head.--head2 .text {
	width: 42.5rem;
}

.p-pdp-product__possibility-head.--head2.en {
	-moz-column-gap: 7.25rem;
	column-gap: 7.25rem;
}

.p-pdp-product__possibility-head .subtitle {
	color: #012FA6;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.p-pdp-product__possibility-head .text {
	width: 36.6875rem;
	max-width: 100%;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-items {
	margin-top: 3.75rem;
	margin-bottom: 2.5rem;
	margin-left: 3.125rem;
	width: calc(100% - 3.125rem);
}

.p-pdp-product__possibility-item {
	-moz-column-gap: 2.375rem;
	display: flex;
	column-gap: 2.375rem;
	flex-direction: row-reverse;
}

.p-pdp-product__possibility-item:not(:last-of-type) {
	margin-bottom: 3.75rem;
}

.p-pdp-product__possibility-item .img {
	border-radius: 0.75rem;
	aspect-ratio: 682/350;
	width: 42.625rem;
	max-width: 100%;
	height: auto;
	overflow: hidden;
}

.p-pdp-product__possibility-item .textWrap {
	width: 16.875rem;
}

.p-pdp-product__possibility-item .head {
	-moz-column-gap: 0.75rem;
	display: flex;
	column-gap: 0.75rem;
	align-items: center;
	margin-bottom: 1.0625rem;
}

.p-pdp-product__possibility-item .head span:nth-of-type(1) {
	display: block;
	color: #012FA6;
	font-weight: 800;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-item .head span:nth-of-type(2) {
	display: block;
	margin-top: 0.375rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-item .tagWrap {
	margin-bottom: 0.5rem;
}

.p-pdp-product__possibility-item .tag {
	display: inline-block;
	margin-bottom: 0.5rem;
	border-radius: 50px;
	background: #EAEEFD;
	padding: 0 0.5rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 2;
	letter-spacing: 0em;
	text-align: center;
}

.p-pdp-product__possibility-item .times {
	margin-bottom: 0.5rem;
	font-weight: 300;
	font-size: 1.25rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-item .text {
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-bottomImg {
	margin-top: 2.5rem;
	border-radius: 12px;
	aspect-ratio: 1040/425;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.p-pdp__download.product-data {
	margin-bottom: 7.375rem;
}

.p-guide {
	margin-top: 4.625rem;
}

.p-pdp-guide__wrap {
	border-top: 1px solid #E0E3F0;
}

.p-pdp-guide__item {
	-moz-column-gap: 1.875rem;
	display: flex;
	column-gap: 1.875rem;
	align-items: start;
	border-bottom: 1px solid #E0E3F0;
	padding: 2.5rem 0;
}

.p-pdp-guide__item .num {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 0.75rem;
	background: #012FA6;
	padding: 1.125rem;
	color: #ffffff;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-pdp-guide__item .textWrap {
	flex: 1;
}

.p-pdp-guide__item .head {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-guide__item .head-sub {
	margin-top: 1.75rem;
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-guide__item .guide-text {
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

/*----------------------------------
    download
-----------------------------------*/

.p-pdp__download.pdp-guide {
	margin: 5rem 0;
}

.p-maintenance {
	position: relative;
	background: #012FA6;
	width: 100vw;
	height: 100vh;
}

.p-maintenance__wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 7px;
	background: #fff;
	padding: 32px 20px;
	width: 50%;
	height: auto;
}

.p-maintenance__title {
	margin-bottom: 20px;
	color: #012FA6;
	font-weight: 700;
	font-size: 24px;
	text-align: center;
}

.p-maintenance__text {
	color: #012FA6;
	font-size: 14px;
	line-height: 1.5;
}

.p-food-service {
	margin-inline: auto;
	padding-inline: 40px;
	width: min(1120px, 100%);
}

.p-food-service__body {
	padding-top: 1.4375rem;
}

.p-food-service__fv-wrap {
	-moz-column-gap: 1.875rem;
	display: flex;
	column-gap: 1.875rem;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: flex-start;
}

.p-food-service__fv-img {
	width: min(32.3125rem, 100%);
}

.p-food-service__fv-text {
	flex: 1;
}

.p-food-service__fv-text .c-breadcrumbs {
	margin-top: 0.625rem;
}

.p-food-service__fv-text .head {
	margin-top: 5rem;
	margin-bottom: 1.25rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-food-service__fv-text .title {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 2.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-food-service__fv-text .text {
	width: min(31.25rem, 100%);
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-food-service__outline {
	margin-top: 2.5rem;
	padding-bottom: 7.5rem;
}

.p-food-service__outline-title {
	margin-bottom: 1.25rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-food-service__outline-text {
	margin-bottom: 2.5rem;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-food-service__outline-img {
	aspect-ratio: 1040/440;
	width: 100%;
	height: auto;
}

.p-food-service__outline-img picture,
.p-food-service__outline-img img {
	display: block;
	width: 100%;
	height: 100%;
}

.p-cta {
	position: fixed;
	right: 1.875rem;
	bottom: 0;
	visibility: hidden;
	opacity: 0;
	z-index: 50;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
	border-radius: 12px 12px 0 0;
	background: #fff;
	width: 12.5rem;
	height: auto;
}

.p-cta.js-show {
	visibility: visible;
	opacity: 1;
}

.p-cta__close {
	display: flex;
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	justify-content: center;
	align-items: center;
	border-radius: 100vmax;
	background: rgba(0, 0, 0, 0.5);
	aspect-ratio: 1;
	width: 1.25rem;
	height: auto;
	color: #ffffff;
	font-size: 1rem;
}

.p-cta__close span {
	display: block;
	margin-bottom: 0.125rem;
}

.p-cta__item {
	display: inline-block;
}

.p-cta__text {
	display: block;
	padding: 0.75rem;
}

.p-cta__img {
	border-radius: 12px 12px 0 0;
	background: #EAEEFD;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.p-cta__img img {
	width: 100%;
	height: 100%;
}

.p-cta__title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	overflow: hidden;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-cta__link {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 0.75rem;
	padding-right: 0.625rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.3;
	letter-spacing: 0em;
}

.p-cta__link svg {
	transition: all 0.3s ease;
}

.p-new-contact {
	margin-top: 0rem;
	margin-bottom: 0;
	background: #E7ECFB;
	padding-top: 5rem;
}

.p-new-contact__section {
	padding-top: 0;
	padding-bottom: 5rem;
}

.p-new-contact__inner {
	margin-inline: auto;
	padding-inline: 1.25rem;
	width: min(1080px, 100%);
}

.p-new-contact__title {
	-moz-column-gap: 1rem;
	display: flex;
	column-gap: 1rem;
	align-items: center;
	margin-bottom: 1.375rem;
}

.p-new-contact__title svg {
	aspect-ratio: 1;
	width: 5.625rem;
	height: auto;
}

.p-new-contact__title span {
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-contact__text {
	margin-bottom: 2.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-new-contact__body {
	background: #fff;
	padding: 2rem;
}

.p-new-contact__body-head {
	margin-bottom: 2.5rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.bread_crumb_section.--contact {
	padding-block: 2rem 1.375rem;
}

.p-new-download {
	margin-top: 0rem;
	margin-bottom: 0;
	background: #E7ECFB;
	padding-top: 5rem;
}

.p-new-download__section {
	padding-top: 0;
	padding-bottom: 5rem;
}

.p-new-download__inner {
	margin-inline: auto;
	padding-inline: 1.25rem;
	width: min(1080px, 100%);
}

.p-new-download__wrap {
	-moz-column-gap: 3rem;
	display: flex;
	column-gap: 3rem;
	justify-content: space-between;
	align-items: flex-start;
}

.p-new-download__title-wrap {
	width: min(31.25rem, 100%);
}

.p-new-download__title {
	margin-bottom: 1.25rem;
	color: #012FA6;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-download__subtitle {
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 2.25rem;
	line-height: 1.1666666667;
	letter-spacing: 0em;
}

.p-new-download__text {
	margin-bottom: 3.125rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-new-download__illust {
	aspect-ratio: 1;
	width: 100%;
	height: auto;
}

.p-new-download__body {
	background: #fff;
	padding: 2rem;
	width: min(31.25rem, 100%);
}

.p-new-download__body-head {
	margin-bottom: 2.5rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.u-animation__fadeInUp,
.u-animation__fadeInLeft,
.u-animation__fadeInRight,
.u-animation__fadeInLeftBig,
.u-animation__fadeInRightBig {
	opacity: 0;
}

/* フェードイン時に入るクラス */

.js-fadeInUp {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInUpContents;
}

.js-fadeInUp__delay--1s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInUpContents;
}

.js-fadeInUp__delay--2s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInUpContents;
}

.js-fadeInLeft {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftContents;
}

.js-fadeInLeft__delay--1s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftContents;
}

.js-fadeInLeft__delay--2s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftContents;
}

.js-fadeInLeftBig {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftBigContents;
}

.js-fadeInLeftBig__delay--1s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftBigContents;
}

.js-fadeInLeftBig__delay--2s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInLeftBigContents;
}

.js-fadeInRight {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightContents;
}

.js-fadeInRight__delay--1s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightContents;
}

.js-fadeInRight__delay--2s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightContents;
}

.js-fadeInRightBig {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightBigContents;
}

.js-fadeInRightBig__delay--1s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightBigContents;
}

.js-fadeInRightBig__delay--2s {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeInRightBigContents;
}

.u-center {
	text-align: center !important;
}

.u-left {
	text-align: left !important;
}

.u-right {
	text-align: right !important;
}

.u-sofia {
	font-family: "sofia-pro", sans-serif !important;
}

.u-800 {
	font-weight: 800 !important;
}

.u-400 {
	font-weight: 400 !important;
}

.u-500 {
	font-weight: 500 !important;
}

.u-600 {
	font-weight: 600 !important;
}

.u-700 {
	font-weight: 700 !important;
}

.u-lh12 {
	line-height: 1.2 !important;
}

.u-lh13 {
	line-height: 1.3 !important;
}

.u-lh15 {
	line-height: 1.5 !important;
}

.u-lh18 {
	line-height: 1.8 !important;
}

.u-white {
	color: #ffffff !important;
}

.u-nowrap {
	white-space: nowrap;
}

.u-pointer-none {
	pointer-events: none !important;
}

.u-disp__none {
	display: none !important;
}

.u-disp__none--before::before {
	display: none !important;
}

.u-disp__none--after::after {
	display: none !important;
}

.test {
	position: relative;
	padding: 100px 200px;
	color: red;
	font-weight: 700;
	font-size: 100px;
}

::-moz-placeholder {
	color: gray;
}

::placeholder {
	color: gray;
}

.image {
	background-image: url(image@1x.png);
}

@media (hover: hover) {

a:hover {
	cursor: pointer;
}

.l-header__item.subMenu:hover > a::after {
	top: calc(50% + 0.125rem);
	transform: translateY(-50%) rotate(135deg);
}

.l-header__item a:hover {
	background: #667DFA;
}

.l-header__subItem a:hover {
	background: #EAF0F8;
}

.l-header__subItem a:hover svg circle {
	fill: #fff;
	transition: all 0.3s ease;
}

.l-header--white .l-header__item a:hover {
	background: #EBEEFE;
}

.p-event__category-item [type=checkbox]:checked + span:hover {
	border: 1px solid #667DFA;
	background: #667DFA;
}

.p-event__category-item span:hover {
	cursor: pointer;
	background: #CCD4EB;
}

.p-event-single__sidebar-btn a:hover {
	opacity: 0.7;
}

.p-pdp__btn a:hover {
	opacity: 0.7;
}

.p-pdp__download-container .btn a:hover {
	opacity: 0.7;
}

.p-cta__close:hover {
	opacity: 0.7;
	cursor: pointer;
}

.p-cta__text:hover .p-cta__link svg {
	translate: 0.375rem;
}

}

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

.l-drawer__item a {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: 0em;
}

.l-drawer__subItem > a {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1;
	letter-spacing: 0em;
}

.l-drawer__subItem.subSubMenu .head {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-drawer__subItem.subSubMenu .wrap a {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

}

@media screen and (max-width: 859px) and (min-width: 640px) {

.p-topClients__title {
	margin-left: calc((100vw - 37.5rem) / 2) !important;
}

.p-topClients__swiper-container {
	margin: 0.5rem auto 0 !important;
	max-width: 37.5rem;
}

}

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

.c-btn.feature-en a {
	padding: 1.125rem 0.625rem;
}

.p-topFv__swiper.en {
	margin-top: -13.125rem;
	height: 43.4375rem;
}

.p-topFv .swiper-slide-active.en {
	display: flex;
	align-items: center;
	margin-bottom: 0 !important;
	height: -moz-fit-content !important;
	height: fit-content !important;
	min-height: 10rem !important;
}

.p-topFv .swiper-slide-active.en p::before {
	display: none;
}

.p-topPartner__card > div {
	margin-bottom: 2.5rem;
}

.p-topPartner__card .info {
	position: absolute;
	bottom: 1.75rem;
	left: 2.5rem;
}

.p-topClients__swiper .swiper-slide {
	opacity: 0.4;
}

.p-topClients__swiper .swiper-slide-active {
	opacity: 1;
}

.p-event__category-filter {
	display: none;
}

.js-fadeInUp__delay--1s {
	animation-delay: 1s;
}

.js-fadeInUp__delay--2s {
	animation-delay: 2s;
}

.js-fadeInLeft__delay--1s {
	animation-delay: 1s;
}

.js-fadeInLeft__delay--2s {
	animation-delay: 2s;
}

.js-fadeInLeftBig__delay--1s {
	animation-delay: 1s;
}

.js-fadeInLeftBig__delay--2s {
	animation-delay: 2s;
}

.js-fadeInRight__delay--1s {
	animation-delay: 1s;
}

.js-fadeInRight__delay--2s {
	animation-delay: 2s;
}

.js-fadeInRightBig__delay--1s {
	animation-delay: 1s;
}

.js-fadeInRightBig__delay--2s {
	animation-delay: 2s;
}

.u-sp {
	display: none !important;
}

.u-center--pc {
	text-align: center !important;
}

.u-left--pc {
	text-align: left !important;
}

.u-right--pc {
	text-align: right !important;
}

.u-lh12--pc {
	line-height: 1.2 !important;
}

.u-lh13--pc {
	line-height: 1.3 !important;
}

.u-lh15--pc {
	line-height: 1.5 !important;
}

.u-lh18--pc {
	line-height: 1.8 !important;
}

.u-nowrap--pc {
	white-space: nowrap;
}

}

@media screen and (max-width: 1119px) and (min-width: 860px) {

html {
	font-size: calc(1600 / 1120 * 1vw);
}

}

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

.p-pdpFv__img {
	border-radius: 12px;
	overflow: hidden;
}

}

@media screen and (max-width: 1380px) {

.p-pdpFv {
	margin-top: 2.5rem;
}

.p-pdpFv.product-data {
	margin-top: 3.75rem;
}

.p-pdpFv__textWrap.product-data {
	margin-top: 0;
}

}

@media screen and (max-width: 1380px) and (max-width: 859px) {

.p-pdpFv__textWrap.product-data {
	margin-top: 1.25rem;
}

}

@media screen and (max-width: 1300px) {

.l-header {
	padding: 0 1rem;
}

.l-header__list {
	-moz-column-gap: 0;
	column-gap: 0;
}

.l-header__btn:first-of-type {
	margin-left: 0.5rem;
}

.l-header__left {
	-moz-column-gap: 0.625rem;
	column-gap: 0.625rem;
}

.l-header__logo svg {
	width: 8.125rem;
	height: auto;
}

.l-header__item a {
	font-size: 0.8125rem;
}

}

@media screen and (max-width: 1299px) {

.c-top-card__swiper-container {
	margin-right: auto;
	margin-left: auto !important;
	padding: 0;
	width: 50rem;
	max-width: 100%;
}

}

@media screen and (max-width: 1280px) {

.p-topPartner__card .human {
	aspect-ratio: 262/253;
	width: 13.75rem;
	height: auto;
}

.p-topPartner__card .text {
	width: 18.75rem;
}

}

@media screen and (max-width: 1280px) and (max-width: 859px) {

.p-topPartner__card .human {
	aspect-ratio: 144/140;
	width: 9rem;
	height: auto;
}

}

@media (max-width: 1000px) {

.p-postSingle__container .wp-block-image {
	margin-left: 0;
	width: 100%;
}

}

@media screen and (max-width: 859px) {

html {
	scroll-padding-top: 60px;
}

.l-header {
	height: 60px;
}

.l-header__left {
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
}

.l-header__logo {
	margin-top: 0.625rem;
}

.l-header__logo svg {
	width: 7.9375rem;
	height: 1.9375rem;
}

.l-header__language a {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.1666666667;
	letter-spacing: 0em;
}

.l-header__language a:first-of-type {
	margin-right: 0.5rem;
}

.l-drawer__item .l-header__subItem a {
	padding: 0.5625rem 1rem 0.5rem;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-main {
	margin-top: 60px;
	overflow-x: hidden;
}

.l-main__features {
	margin-top: 2.5rem;
}

.l-main__news {
	margin-bottom: 3.75rem;
}

.l-main__single {
	margin-bottom: 3.75rem;
}

.l-main__single .flex.info .img_wrapper {
	margin-top: 0 !important;
}

.l-main__single .flex.info .col_6.text {
	padding-bottom: 12px !important;
}

.l-main__single .flex.info .col_6.text .name {
	margin: 0 !important;
	margin-bottom: 8px !important;
}

.l-main__single .page_title {
	margin-bottom: 8px !important;
}

.l-main__form {
	margin: 3.75rem 0;
}

.l-main__service {
	margin: 3.75rem 0;
}

.l-inner {
	padding: 0 1.25rem;
	width: 100%;
	max-width: 640px;
}

.l-inner.--postArchive {
	padding: 0 1rem;
}

.l-inner--features {
	padding-inline: 1rem;
}

.l-inner--contact {
	padding-inline: 1rem;
}

.l-inner--thanks {
	padding-inline: 1rem;
}

.l-footer {
	padding: 3rem 0 0;
}

.l-footer .ninja-icon {
	right: 1.25rem;
	width: 7.5rem;
	height: 4.0625rem;
}

.l-footer.about {
	padding-top: 0;
}

.l-footer.about.en {
	padding-top: 0;
}

.l-footer__head .title {
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-footer__head .subtitle {
	margin-bottom: 1.25rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.l-footer__btn-wrap {
	row-gap: 1.25rem;
	flex-flow: column;
	margin-bottom: 5.5rem;
}

.l-footer__btn-wrap a {
	width: 21.4375rem;
	max-width: 100%;
}

.l-footer__list {
	-moz-column-gap: 2.0625rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 2.0625rem;
	row-gap: 1.5rem;
	margin: auto;
	margin-bottom: 5rem;
	max-width: 31.25rem;
}

.l-footer__list .--list1 {
	grid-row: 1/2;
	grid-column: 1/2;
	margin-right: 0;
}

.l-footer__list .--list2 {
	grid-row: 2/3;
	grid-column: 1/2;
	margin-right: 0;
}

.l-footer__list .--list3 {
	grid-row: 3/4;
	grid-column: 1/2;
	margin-right: 0;
}

.l-footer__list .--list4 {
	grid-row: 1/2;
	grid-column: 2/3;
	margin-right: 0;
}

.l-footer__list .--list5 {
	grid-row: 2/3;
	grid-column: 2/3;
}

.l-footer__list--left {
	max-width: 10.75rem;
}

.l-footer__list.en {
	-moz-column-gap: 2.5rem;
	column-gap: 2.5rem;
}

.l-footer__item.--mb12 {
	margin-bottom: 0.75rem;
}

.l-footer__item a {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
	white-space: nowrap;
}

.l-footer__subitem {
	margin-top: 0.1875rem;
}

.l-footer__subitem.--first {
	margin-top: 0.75rem;
}

.l-footer__subitem a {
	padding-left: 0.875rem;
}

.l-footer__subitem a::after {
	top: 0.625rem;
	transform: translateY(0.0625rem);
	width: 0.375rem;
}

.l-footer__bottom {
	display: block;
	margin: auto;
	max-width: 31.25rem;
}

.l-footer__bottom--left {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
}

.l-footer__bottom--left .logo a svg {
	width: 7.5rem;
	height: 1.875rem;
}

.l-footer__bottom--left .copyright {
	font-weight: 400;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-footer__bottom--right {
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.l-footer__bottom--right a {
	font-weight: 400;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.l-footer__bottom-wrap {
	padding: 2.5rem 0 1.25rem;
}

.c-section__title-wrap .title {
	margin-bottom: 0.5rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 2.2142857143;
	letter-spacing: 0em;
}

.c-section__title-wrap .title > span .label {
	left: calc(100% + 0.5rem);
	padding: 0.125rem 0.625rem;
	font-weight: 600;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-section__title-wrap .subtext {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.55;
	letter-spacing: 0em;
}

.c-section__title-wrap .subtext.feature {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-section__title-wrap .subtext.example {
	white-space: nowrap;
}

.c-section__title-wrap.en .subtext {
	font-weight: 800;
	font-size: 1.25rem;
	line-height: 1.55;
	letter-spacing: 0em;
}

.c-section__title-wrap--features .subtext {
	font-size: 1.75rem;
	line-height: 1.5;
}

.c-section__title-wrap--contact .subtext {
	font-size: 1.75rem;
	line-height: 1.5;
}

.c-btn__large a {
	padding: 1.0625rem 1.25rem;
	width: 21.4375rem;
	max-width: 100%;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-btn__mini a {
	padding: 1.125rem;
	width: 21.5625rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.c-btn__sp-mini a {
	padding: 0.625rem;
	width: 11.25rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.view-more-btn-wrap {
	margin-bottom: 3.75rem;
}

.c-top-card__textWrap {
	padding: 0.75rem;
	min-height: 9.375rem;
}

.c-top-card__textWrap.example {
	min-height: 11.25rem;
}

.c-top-card__text {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	overflow: hidden;
}

.c-top-card__day {
	bottom: 0.75rem;
	left: 0.75rem;
}

.c-top-card__swiper-container {
	margin-left: auto !important;
	padding: 0;
	width: calc(100% + 1.25rem);
	max-width: calc(100% + 1.25rem);
}

.c-top-card__swiper-container .swiper {
	overflow: hidden !important;
}

.c-top-card__swiper-container .swiper-button-prev {
	display: none;
}

.c-top-card__swiper-container .swiper-button-next {
	display: none;
}

.c-breadcrumbs {
	display: none;
}

.p-topFv {
	margin-bottom: 1.25rem;
	overflow-x: hidden;
}

.p-topFv::before {
	height: calc(12.4375rem + 16.8vw);
}

.p-topFv__wrap {
	grid-template-rows: auto auto auto auto;
	grid-template-columns: 43.7333333333% 56.2666666667%;
	grid-template-areas: "title rotate" "title rotate" "image image" "text text";
}

.p-topFv__wrap.en {
	grid-template-columns: 37.3333333333% 62.6666666667%;
}

.p-topFv__titleWrap {
	margin-top: 4.875rem;
}

.p-topFv__titleWrap.en {
	margin-top: 4.875rem;
	margin-bottom: unset;
}

.p-topFv__title {
	font-size: 1.3875rem;
}

.p-topFv__title img {
	margin-right: 0.1625rem;
	max-width: 6.875rem;
}

.p-topFv__title.en {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.1666666667;
	letter-spacing: 0.03em;
}

.p-topFv__textWrap {
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	max-width: unset;
	text-align: center;
}

.p-topFv__textWrap.en {
	margin-right: 0;
	padding-left: 0;
	width: 100%;
	max-width: unset;
}

.p-topFv__text {
	margin-bottom: 1.5rem;
	max-width: unset;
	color: #000000;
	font-size: 0.75rem;
	line-height: 2;
}

.p-topFv__btn a {
	background: #012FA6;
	padding-bottom: 0.625rem;
	padding-inline: 2.5rem;
	color: #ffffff;
	font-size: 0.875rem;
}

.p-topFv__animation {
	padding-left: 0.7rem;
	height: 12.4375rem;
}

.p-topFv__swiper {
	margin-top: -2.8rem;
	height: 15.5625rem;
}

.p-topFv__swiper.en {
	margin-top: -2.7rem;
}

.p-topFv .swiper-slide {
	padding-block: 0.5rem;
	font-size: 1rem;
}

.p-topFv .swiper-slide::before {
	bottom: 0.24375rem;
	height: 0.14625rem;
}

.p-topFv .swiper-slide-active {
	margin-top: -0.125rem;
	margin-bottom: 0.5rem;
	height: -moz-fit-content !important;
	height: fit-content !important;
}

.p-topFv .swiper-slide-active p {
	animation: textTransformSp 0.5s linear;
	animation-fill-mode: forwards;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topFv .swiper-slide-active p::before {
	bottom: 0.0625rem;
	height: 0.15625rem;
}

.p-topFv .swiper-slide-active.en {
	display: flex;
	align-items: center;
	margin-bottom: 0 !important;
	height: -moz-fit-content;
	height: fit-content;
	min-height: 4.75rem !important;
}

.p-topFv .swiper-slide-active.en p::before {
	display: none;
}

.p-topFv__image picture {
	margin-left: 0;
}

.p-topFv__ninja {
	bottom: 1.0625rem;
	max-width: 6.6875rem;
}

.p-topSponsor {
	margin-bottom: 5rem;
	padding-top: 0;
}

.p-topSolution {
	margin: 5rem 0 7.5rem;
}

.p-topSolution__wrap {
	display: block;
}

.p-topSolution__item {
	border-radius: 0;
	padding: 1.25rem 4rem 1.25rem 1.25rem;
}

.p-topSolution__item:not(:last-of-type) {
	margin-bottom: 0.5rem;
}

.p-topSolution__item:first-of-type {
	margin-top: 1.25rem;
}

.p-topSolution__item::after {
	right: 1.25rem;
	width: 1rem;
	height: 1rem;
}

.p-topSolution__item:hover::after {
	right: 0.875rem;
}

.p-topSolution__item .head {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
}

.p-topSolution__item .icon {
	width: 2.25rem;
	height: 2.25rem;
}

.p-topSolution__item .title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topSolution__item .text {
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topSolution__title {
	margin-bottom: 1.5rem;
	font-size: 1.75rem;
	line-height: 1.2;
}

.p-topFeature {
	margin-bottom: 7.5rem;
}

.p-topFeature__head {
	margin-bottom: 2.5rem;
}

.p-topFeature__subtitle {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topFeature__wrap {
	display: block;
}

.p-topFeature__item {
	padding: 0.5rem;
}

.p-topFeature__item:not(:last-of-type) {
	margin-bottom: 0.5rem;
}

.p-topFeature__item::after {
	right: 0.75rem;
}

.p-topFeature__item:hover::after {
	right: 0.375rem;
}

.p-topFeature__item2 {
	margin-bottom: 2.5rem;
	padding: 1rem 3.75rem 1rem 1rem;
}

.p-topFeature__item2::after {
	right: 1rem;
}

.p-topFeature__item2:hover::after {
	right: 0.5rem;
}

.p-topFeature__item2 {
	display: block;
}

.p-topFeature__item2 picture {
	margin-bottom: 1.25rem;
	aspect-ratio: 268/120;
	width: 100%;
	height: auto;
}

.p-topFeature__item2 .subtitle {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topFeature__item2 .title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topFeature__item2 .soon {
	padding: 0.125rem 0.625rem;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topMovie {
	margin-bottom: 7.5rem;
	padding-bottom: 2.5rem;
}

.p-topMovie::after {
	top: 40%;
	height: 60%;
}

.p-topMovie__youtube {
	margin-top: 1.625rem;
	width: 100%;
}

.p-topMovie__text {
	margin-top: 2rem;
	margin-bottom: 1.25rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topMovie__text.en {
	font-weight: 800;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topService {
	margin-bottom: 7.5rem;
}

.p-topService__wrap {
	flex-flow: column;
}

.p-topService__img {
	margin-bottom: 1.25rem;
	aspect-ratio: 342/180;
	width: 100%;
	height: auto;
}

.p-topService__textWrap {
	width: 100%;
}

.p-topService__textWrap .text {
	margin-top: 1.25rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topExample {
	padding-bottom: 7.5rem;
}

.p-topExample.service {
	padding-bottom: 3.75rem;
}

.p-topExample__swiper-container {
	margin: 0.625rem 0 1.25rem;
}

.p-topUseful {
	margin-bottom: 7.5rem;
}

.p-topUseful.feature {
	margin-top: 7.5rem;
}

.p-topPartner {
	margin-bottom: 2.5rem;
}

.p-topPartner__swiper-container {
	margin-top: 1.75rem;
	padding-top: 1.25rem;
}

.p-topPartner__card {
	display: flex;
	align-items: center;
	padding: 1.875rem 1.25rem 1.25rem 1.25rem;
	height: -moz-fit-content;
	height: fit-content;
	min-height: 21.875rem;
}

.p-topPartner__card .colon {
	top: -0.8125rem;
	left: 1.5rem;
	width: 1.875rem;
	height: 1.875rem;
}

.p-topPartner__card .title {
	margin-bottom: 0.875rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topPartner__card .text {
	margin-bottom: 0.8125rem;
	width: 100%;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topPartner__card .info {
	display: block;
}

.p-topPartner__card .logo {
	transform: scale(1);
	margin-bottom: 0.3125rem;
	margin-left: 0.3125rem;
	aspect-ratio: 70/45;
	width: 4.375rem;
	height: auto;
}

.p-topPartner__card .logo img {
	transform: scale(1.4);
}

.p-topPartner__card .carrier {
	margin-bottom: 0.5rem;
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topClients {
	margin-bottom: 2.625rem;
}

.p-topClients__title {
	margin-left: 1.25rem;
}

.p-topClients__title .title {
	margin-bottom: 1.25rem;
}

.p-topClients__wrap {
	-moz-column-gap: 2.1875rem;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 2.1875rem;
	row-gap: 1.25rem;
}

.p-topClients__center-wrap {
	display: block;
}

.p-topClients__bottom-wrap {
	margin-bottom: 7.5rem;
}

.p-topClients__partner-item {
	-moz-column-gap: 1.875rem;
	column-gap: 1.875rem;
	margin-top: 0;
}

.p-topClients__partner-item img {
	width: 8rem;
	height: 2.8125rem;
}

.p-topClients .awards {
	margin-top: 1rem;
}

.p-topClients__awards-item {
	-moz-column-gap: 3.125rem;
	display: flex;
	column-gap: 3.125rem;
	align-items: center;
	margin-top: 1rem;
}

.p-topClients__awards-item img:nth-of-type(1) {
	width: 7.8125rem;
	height: 2.625rem;
}

.p-topClients__awards-item img:nth-of-type(2) {
	width: 9.5625rem;
	height: 1.25rem;
}

.p-topClients__swiper-container {
	margin-top: 0.5rem;
	margin-left: 1.25rem;
	width: calc(100% - 2.5rem);
}

.p-topClients__swiper-container.about {
	margin-top: 1.25rem;
}

.p-topClients__swiper-container .swiper-button-prev {
	position: absolute;
	top: 1.5625rem;
	right: 3.3125rem;
	left: unset;
	transform: translateY(0);
	width: 2.5rem;
	height: 2.5rem;
}

.p-topClients__swiper-container .swiper-button-prev.about {
	right: 3.3125rem;
	left: unset;
}

.p-topClients__swiper-container .swiper-button-prev::after {
	width: 0.75rem;
	height: 0.75rem;
}

.p-topClients__swiper-container .swiper-button-next {
	top: 1.5625rem;
	right: 0rem;
	left: unset;
	transform: translateY(0);
	width: 2.5rem;
	height: 2.5rem;
}

.p-topClients__swiper-container .swiper-button-next.about {
	right: 0;
}

.p-topClients__swiper-container .swiper-button-next::after {
	width: 0.75rem;
	height: 0.75rem;
}

.p-topClients__card {
	padding: 3.4375rem 0 0 0;
}

.p-topClients__card.about {
	padding: 3.4375rem 0 0 0;
}

.p-topClients__card .colon {
	width: 3.375rem;
	height: 3.1875rem;
}

.p-topClients__card .colon.about {
	left: 0rem;
}

.p-topClients__card .text {
	margin-bottom: 1rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-topClients__card .info-wrap {
	display: block;
}

.p-topClients__card .info:not(:last-of-type) {
	margin-bottom: 1.25rem;
}

.p-topClients__card .human {
	width: 3.125rem;
	height: 3.125rem;
}

.p-topClients__card .name {
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topClients__card .carrier {
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-topNews__btn a {
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 2.3571428571;
	letter-spacing: 0em;
}

.p-topNews__wrap {
	margin-top: 1rem;
}

.p-topNews__item {
	display: block;
	padding: 0.75rem 0;
}

.p-topNews__item .time {
	margin-right: 1rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-topNews__item .category {
	margin-right: 0;
	padding: 0.125rem 1.25rem;
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1.6;
	letter-spacing: 0em;
}

.p-topNews__item .title {
	-webkit-box-orient: vertical;
	display: block;
	display: -webkit-box;
	margin-top: 0.53125rem;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subFeaturesFv {
	margin-bottom: 5rem;
}

.p-subFeaturesFv__wrap {
	flex-flow: column;
}

.p-subFeaturesFv__img {
	margin-right: 0;
	margin-bottom: 1.25rem;
}

.p-subFeaturesFv__img {
	aspect-ratio: 342/180;
	width: 100%;
	height: auto;
}

.p-subFeaturesFv__textWrap {
	margin-top: 1.25rem;
	margin-right: 0;
	padding-bottom: 0;
	width: 100%;
}

.p-subFeaturesFv__textWrap .text {
	margin-bottom: 1.875rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subFeaturesAbout {
	margin-bottom: 7.5rem;
}

.p-subFeaturesAbout__title {
	font-size: 1.75rem;
}

.p-subFeaturesAbout__textWrap {
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 1.25rem;
}

.p-subFeaturesAbout__subtext {
	margin-bottom: 0.625rem;
	font-size: 1.375rem;
	line-height: 1.5;
}

.p-subFeaturesAbout__text {
	margin-left: 0;
	font-size: 0.875rem;
}

.p-subFeaturesData {
	margin-bottom: 7.5rem;
}

.p-subFeaturesData__title {
	margin-bottom: 1.5rem;
	font-size: 1.75rem;
}

.p-subFeaturesData__subtext {
	font-size: 1.375rem;
	line-height: 1.5;
}

.p-subFeaturesData__text {
	margin-bottom: 2.5rem;
	font-size: 0.875rem;
}

.p-subFeaturesData__list {
	grid-template-columns: 1fr;
	row-gap: 3.625rem;
	margin-bottom: 7.5rem;
}

.p-subFeaturesData__itemImage {
	margin-bottom: 0.75rem;
	border-radius: 0.5rem;
	aspect-ratio: 343/175;
	max-width: 100%;
}

.p-subFeaturesData__itemTitleWrap {
	margin-bottom: 0.75rem;
}

.p-subFeaturesData__itemIcon {
	width: 2.625rem;
	height: 2.625rem;
}

.p-subFeaturesData__itemTitle {
	margin-left: 0.25rem;
	font-size: 0.875rem;
	line-height: 2.2142857143;
}

.p-subFeaturesData__itemText {
	font-size: 0.875rem;
}

.p-subFeaturesData__content {
	flex-direction: column;
}

.p-subFeaturesData__contentWrap {
	margin-bottom: 1.0625rem;
}

.p-subFeaturesData__contentSubtext {
	margin-bottom: 1rem;
	font-size: 1.375rem;
	line-height: 1.5;
}

.p-subFeaturesData__contentCopy {
	font-size: 1rem;
	line-height: 1.9;
}

.p-subFeaturesData__contentText {
	font-size: 0.875rem;
}

.p-subFeaturesData__contentImage {
	margin-left: 0;
	width: 100%;
}

.p-subFeaturesService {
	margin-bottom: 7.5rem;
}

.p-subFeaturesService__wrap {
	flex-direction: column;
	margin-inline: calc(50% - 50vw);
	border-radius: 0;
	padding-inline: 1rem;
	padding-block: 1.25rem;
}

.p-subFeaturesService__wrap::after {
	right: 1rem;
}

.p-subFeaturesService__wrap:hover::after {
	right: 0.625rem;
}

.p-subFeaturesService picture {
	margin-bottom: 0.5rem;
	width: 100%;
	max-width: 9.75rem;
}

.p-subFeaturesService__body {
	margin-left: 0;
	text-align: center;
}

.p-subFeaturesService__text {
	font-size: 1.125rem;
}

.p-subFeaturesConsultation {
	padding: 3rem 0.625rem;
}

.p-subFeaturesConsultation__message {
	font-size: 1.25rem;
}

.p-subSolution {
	margin-top: 2.5rem;
	margin-bottom: 3.125rem;
}

.p-subSolution__title {
	margin-bottom: 3.75rem;
}

.p-subSolution__title p:nth-of-type(1) {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__title p:nth-of-type(2) {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__wrap {
	display: block;
}

.p-subSolution__wrap:not(:last-of-type) {
	margin-bottom: 6.25rem;
}

.p-subSolution__head {
	margin-bottom: 2.5rem;
	border-radius: 7.07px;
	width: 5rem;
	height: 5rem;
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.7;
	letter-spacing: 0em;
}

.p-subSolution__item {
	width: 100%;
}

.p-subSolution__item .head {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subSolution__item .text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subSolution__item .img-wrap {
	margin-top: 1rem;
}

.p-subSolution__item .img:not(:last-of-type) {
	margin-bottom: 1rem;
}

.p-topPartner__swiper-container.subSolution {
	margin-top: 3.75rem;
}

.p-topClients__bottom-wrap.subSolution {
	margin-bottom: 7.5rem;
}

.p-topUseful.subSolution {
	margin-top: 4.375rem;
	margin-bottom: 1.25rem;
}

.p-subContact {
	padding-top: 0.4375rem;
}

.p-subContact__wrap {
	-moz-column-gap: 1.25rem;
	grid-template-rows: auto;
	grid-template-columns: 1fr;
	grid-template-areas: "a" "b" "c";
	column-gap: 1.25rem;
}

.p-subContact__title-wrap {
	margin-right: 0;
}

.p-subContact__titleText {
	margin-top: 1.5rem;
	font-size: 0.875rem;
	line-height: 2;
}

.p-subContact__qa {
	margin-top: 3.75rem;
	margin-right: 0;
}

.p-subContact__qaTitle {
	font-size: 1.125rem;
	line-height: 2.4;
}

.p-subContact__accordion {
	margin-top: 0.75rem;
}

.p-subContact__form-wrap {
	margin-top: 2.5rem;
	margin-inline: -1rem;
	padding-inline: 1rem;
	padding-block: 1.5rem;
}

.p-subcontact__formTitle {
	font-size: 1.25rem;
	line-height: 1.55;
}

.p-subContact__form {
	margin-top: 1.5rem;
}

.p-subThanks {
	padding-top: 3.125rem;
}

.p-subThanks__image {
	margin-bottom: 1.4375rem;
}

.p-subThanks__image img {
	width: 3.75rem;
	height: 3.75rem;
}

.p-subThanks__message {
	margin-bottom: 1.4375rem;
	font-size: 1.625rem;
}

.p-subThanks__text {
	margin-bottom: 5rem;
	font-size: 0.875rem;
}

.p-main__subAbout {
	padding-top: 1.5rem;
}

.p-subAbout__title {
	margin-bottom: 0.8125rem;
	font-size: 0.875rem;
}

.p-subAbout__title--big {
	font-size: 1rem;
}

.p-subAbout__title--center {
	text-align: left;
}

.p-subAbout__subTitle {
	font-size: 1.5rem;
}

.p-subAbout__subTitle--big {
	font-size: 1.75rem;
	line-height: 1.5;
}

.p-subAboutFv {
	margin-top: 0;
	margin-bottom: 7.5rem;
}

.p-subAboutFv__wrap {
	flex-direction: column-reverse;
	align-items: flex-start;
}

.p-subAboutFv__image {
	margin-bottom: 2.0625rem;
	margin-inline: calc(50% - 50vw);
}

.p-subAboutFv__heading .title {
	margin-bottom: 1.875rem;
	width: auto;
	font-weight: 600;
	font-size: 2.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-subAboutFv__heading .text {
	width: auto;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-subAboutMission {
	margin-bottom: 5.1875rem;
}

.p-subAboutMission__wrap {
	grid-template-columns: 1fr;
	gap: 1.75rem;
	margin-top: 1.75rem;
	margin-bottom: 5rem;
}

.p-subAboutMission__text {
	font-size: 0.875rem;
}

.p-subAboutMission__text + .p-subAboutMission__text {
	margin-top: 1.75rem;
}

.p-subAboutVision {
	margin-bottom: 7.5rem;
}

.p-subAboutVision__text {
	font-size: 0.875rem;
}

.p-subAboutValues {
	margin-bottom: 7.5rem;
}

.p-subAboutValues__wrap {
	margin-top: 1.75rem;
}

.p-subAboutValues__list {
	grid-template-columns: 1fr;
	row-gap: 1.875rem;
}

.p-subAboutValues__itemWrap {
	align-items: center;
	margin-bottom: 1.125rem;
	height: auto;
}

.p-subAboutValues__itemTitleWrap img.num1 {
	width: 5rem;
}

.p-subAboutValues__itemTitleWrap img.num2 {
	width: 5.625rem;
}

.p-subAboutValues__itemTitleWrap img.num3 {
	width: 5.625rem;
}

.p-subAboutValues__itemTitleWrap img.num4 {
	width: 5.9375rem;
}

.p-subAboutValues__itemTitle {
	margin-bottom: -1.25rem;
	font-size: 1.5rem;
}

.p-subAboutValues__image {
	margin-right: 0.8125rem;
}

.p-subAboutValues__image--simple {
	max-width: 6.6875rem;
}

.p-subAboutValues__image--jadgement {
	margin-right: 0.3125rem;
	max-width: 10.75rem;
}

.p-subAboutValues__image--leadership {
	max-width: 8.25rem;
}

.p-subAboutValues__image--kindness {
	margin-right: 1.75rem;
	max-width: 6.4375rem;
}

.p-subAboutValues__text {
	font-size: 0.875rem;
}

.p-subAboutMembers__title {
	margin-bottom: 1.4375rem;
	font-size: 1rem;
}

.p-subAboutMembers__list {
	-moz-column-gap: 0.75rem;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 0.75rem;
	row-gap: 2.5rem;
}

.p-subAboutMembers__image {
	margin-bottom: 0.75rem;
	max-width: unset;
}

.p-subAboutMembers__post {
	margin-bottom: 0.125rem;
	font-size: 0.75rem;
}

.p-subAboutMembers__name {
	margin-bottom: 0.25rem;
	font-size: 1rem;
}

.p-subAboutMembers__advisors {
	margin-top: 3.75rem;
}

.p-subAboutPartners {
	margin-bottom: 7.5rem;
}

.p-subAboutPartners__list {
	grid-template-columns: repeat(1, 1fr);
	gap: 1.25rem;
	margin-top: 1.25rem;
}

.p-subAboutCareer {
	margin-bottom: 0;
}

.p-subAboutCareer__body {
	flex-direction: column;
	margin-top: 0;
	margin-inline: calc(50% - 50vw);
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	padding-inline: 1rem;
}

.p-subAboutCareer__textWrap {
	margin-bottom: 2.5rem;
}

.p-subAboutCareer__subTitle {
	margin-top: 1.25rem;
	margin-bottom: 1.5rem;
	font-size: 1.25rem;
}

.p-subAboutCareer__text {
	font-size: 0.875rem;
}

.p-subAboutCareer__btn {
	width: 100%;
}

.p-subAboutOverview {
	padding-top: 7.5rem;
}

.p-subAboutOverview__wrap {
	margin-top: 1.25rem;
}

.p-subAboutOverview__list {
	flex-direction: column;
	align-items: flex-start;
	padding-block: 1rem;
	line-height: 1.5;
}

.p-subAboutOverview__term {
	margin-bottom: 0.75rem;
}

.p-subAboutOverview__detail {
	padding-right: 1.875rem;
}

.p-subAboutOverview__detail a {
	font-size: 0.875rem;
}

.p-subAboutModal__wrap {
	flex-direction: column-reverse;
	height: auto;
}

.p-subAboutModal__body {
	padding-top: 1.5rem;
	padding-bottom: 4.1875rem;
	padding-inline: 1rem;
	width: 100%;
}

.p-subAboutModal__post {
	margin-bottom: 0.25rem;
}

.p-subAboutModal__name {
	margin-bottom: 1.25rem;
	font-size: 1.75rem;
	line-height: 1.4285714286;
}

.p-subAboutModal__text {
	font-size: 0.875rem;
}

.p-subAboutModal__image {
	aspect-ratio: 375/416;
	width: 100%;
}

.p-subAboutModal__image img {
	top: 0;
	transform: translate(-50%, 0);
	height: auto;
}

.p-subAboutModal__close {
	top: 1.25rem;
	right: 1.25rem;
}

.p-subAboutModal__close-line {
	width: 1.75rem;
}

.p-accordion__hidden {
	padding-right: 0;
}

.p-accordion__text-wrap {
	padding-bottom: 0.875rem;
}

.p-accordion__text {
	font-size: 0.875rem;
	line-height: 1.6;
}

.p-accordion__icon {
	margin-right: 0.75rem;
	width: 1.75rem;
	height: 1.75rem;
	font-size: 0.875rem;
}

.p-accordion__btn {
	margin-right: 0.3125rem;
	width: 0.875rem;
	height: 0.875rem;
}

.p-form__item + .p-form__item {
	margin-top: 2rem;
}

.p-form__head {
	font-size: 0.75rem;
	line-height: 1.3;
}

.p-form__data input {
	padding-bottom: 0.25rem;
	font-size: 0.875rem;
	line-height: 2;
}

.p-form__data textarea {
	margin-top: 0.5rem;
	padding: 0.5rem;
	font-size: 0.875rem;
	line-height: 2;
}

.p-form__data .wpcf7-list-item + .wpcf7-list-item {
	margin-top: 0.625rem;
}

.p-form__data label + label {
	margin-top: 0.5rem;
}

.p-form__data label span {
	font-size: 0.875rem;
}

.p-form__data--grid {
	grid-template-columns: 1fr;
	gap: 1rem;
}

.p-postArchive {
	margin-top: 3.75rem;
}

.p-postArchive__wrap {
	display: block;
	margin-bottom: 5rem;
}

.p-postArchive__item:not(:last-of-type) {
	margin-bottom: 1.875rem;
}

.p-postArchive__no-post {
	height: 12.5rem;
}

.p-postArchive__no-post p {
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postArchive__no-post img {
	width: 6.5rem;
}

.p-postSingle__container {
	padding-inline: 20px !important;
	width: 100% !important;
}

.single-case_study .kv {
	margin-bottom: 32px;
}

.p-postSingle__img {
	margin: 0 !important;
}

.p-postSingle__title {
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-postSingle__tag-wrap {
	margin-bottom: 1.25rem;
}

.p-postSingle__tag {
	padding: 0.25rem 0.5rem;
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-postSingle__container .has-small-font-size {
	margin-top: 52px;
	font-style: normal;
	font-weight: 300;
	font-size: 12px;
	line-height: 22px !important;
}

.single-case_study .entry-content p {
	line-height: 26px;
}

.single-case_study .entry-content p + h2,
.single-case_study .entry-content p + h3,
.single-case_study .entry-content p + h4,
.single-case_study .entry-content p + h5,
.single-case_study .entry-content p + h6 {
	margin-top: 52px;
}

.single-case_study .entry-content ul li {
	line-height: 1.5;
}

.single-case_study .entry-content img {
	margin: 40px 0;
}

.p-postSingle__before-head {
	font-size: 14px;
}

.p-postSingle__before-text {
	margin-bottom: 1.875rem;
}

.p-postSingle__after-head {
	font-size: 14px;
}

.p-postSingle__after-text {
	margin-bottom: 3.75rem;
	font-size: 14px;
}

.p-postSingle__case-study {
	margin-top: -6.25rem;
}

.p-event__title {
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-event__category-wrap {
	display: block;
}

.p-event__category {
	flex-direction: column;
	padding: 1rem;
}

.p-event__category-wrap {
	display: none;
	padding-top: 0.25rem;
}

.p-event__category-head {
	margin-top: 0.75rem;
	margin-bottom: 0.25rem;
	padding: 0;
	font-weight: 700;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__category-list {
	row-gap: 0.25rem;
}

.p-event__category-item span {
	padding: 0.375rem 0.625rem;
	font-weight: 700;
	font-size: 0.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-event__wrap-head {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event__wrap {
	grid-template-columns: repeat(1, 1fr);
}

.p-event__item {
	margin-bottom: 1rem;
}

.p-event__item-title {
	font-weight: 600;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__body {
	display: block;
	margin-top: 1.25rem;
	margin-bottom: 3.3125rem;
}

.p-event-single__contents {
	width: 100%;
}

.p-event-single__kv {
	margin-bottom: 1.25rem;
}

.p-event-single__title {
	margin-bottom: 0.5rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__category-wrap {
	margin-bottom: 1.875rem;
}

.p-event-single__category {
	font-weight: 300;
	font-size: 0.625rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-event-single__main-head {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__main-head.--first {
	margin-top: 5rem;
}

.p-event-single__outline-main p {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__outline-main b,
.p-event-single__outline-main strong {
	font-weight: 700;
}

.p-event-single__outline-main p + p {
	margin-top: 1.5em;
}

.p-event-single__recommend-item {
	-moz-column-gap: 0.5rem;
	column-gap: 0.5rem;
}

.p-event-single__recommend-item:not(:last-of-type) {
	margin-bottom: 0.5rem;
}

.p-event-single__recommend-item svg {
	width: 1.5rem;
}

.p-event-single__recommend-item span {
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__program-item {
	grid-template-columns: 0.5625rem 1fr;
	grid-template-areas: "bar time" "bar head" "bar text";
}

.p-event-single__program-item .bar {
	grid-area: bar;
}

.p-event-single__program-item .time {
	grid-area: time;
}

.p-event-single__program-item .text-wrap {
	grid-area: text;
}

.p-event-single__program-item .bar span {
	margin-top: 0.5625rem;
	width: 0.5625rem;
}

.p-event-single__program-item .bar::after {
	top: 0.5625rem;
}

.p-event-single__program-item .time {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-event-single__program-item .head {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.75;
	letter-spacing: 0em;
}

.p-event-single__program-item .text {
	font-weight: 300;
	font-size: 0.8125rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item {
	-moz-column-gap: 0.75rem;
	display: grid;
	grid-template-columns: 6.625rem 1fr;
	grid-template-areas: "img text" "intro intro";
	column-gap: 0.75rem;
}

.p-event-single__profile-item .img {
	grid-area: img;
}

.p-event-single__profile-item .text-wrap {
	grid-area: text;
}

.p-event-single__profile-item .introduce {
	grid-area: intro;
}

.p-event-single__profile-item .img {
	width: 6.625rem;
}

.p-event-single__profile-item .name {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item .carrer {
	margin-bottom: 0;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__profile-item .introduce {
	margin-top: 0.75rem;
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1.7;
	letter-spacing: 0em;
}

.p-event-single__sidebar {
	width: 100%;
}

.p-event-single__sidebar-table .table-data {
	width: 14.375rem;
}

.p-event-single__sidebar-btn a {
	margin-top: 1.25rem;
}

.p-event-single__form {
	padding: 2.5rem 0;
}

.p-event-single__form-body {
	border-radius: 0;
	padding: 1rem;
}

.p-event-single__form-head {
	margin-bottom: 1.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-event-single__cta {
	position: fixed;
	bottom: 0.625rem;
	left: 1rem;
	visibility: hidden;
	opacity: 0;
	z-index: 10;
	width: calc(100% - 2rem);
	height: auto;
}

.p-event-single__cta.js-show {
	visibility: visible;
	opacity: 1;
}

.p-event__sorry {
	margin-top: 1.25rem;
	padding-bottom: 5rem;
}

.p-event__sorry-img {
	width: 6.5rem;
}

.p-event__sorry-text {
	font-weight: 400;
	font-size: 0.875rem;
	line-height: 1.8;
	letter-spacing: 0em;
}

.p-pdpFv {
	margin-top: 1.25rem;
}

.p-pdpFv.product-data {
	margin-top: 1.25rem;
}

.p-pdpFv__wrapper {
	display: block;
}

.p-pdpFv__textWrap.guide {
	width: 100%;
}

.p-pdpFv__textWrap.en {
	margin-top: 1.25rem;
}

.p-pdpFv__textWrap {
	margin-top: 1.25rem;
	width: 100%;
}

.p-pdpFv__textWrap .text {
	margin-top: 1.5rem;
	font-weight: 300;
	font-size: 0.9375rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdpFv__titleWrap .title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdpFv__titleWrap .subtext {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdpFv__img.guide {
	margin-right: 0;
	margin-left: -1rem;
	aspect-ratio: 375/264;
	width: calc(100% + 2rem);
	height: auto;
}

.p-pdpFv__img {
	margin-right: 0;
	margin-left: -1rem;
	aspect-ratio: 375/264;
	width: calc(100% + 2rem);
	height: auto;
}

.p-pdpFv__img.vs {
	margin-right: 0;
	margin-left: 0;
	aspect-ratio: 343/283;
	width: 100%;
	height: auto;
}

.p-pdp__head {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp__text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp__text.en {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp__btn a {
	-moz-column-gap: 0.5rem;
	column-gap: 0.5rem;
	margin-left: 0;
}

.p-pdp__btn .icon {
	width: 2.125rem;
}

.p-pdp__btn .icon svg {
	width: 0.75rem;
}

.p-pdp__btn .text {
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp__what-link .label {
	right: unset;
	bottom: -0.25rem;
	left: 11.875rem;
	padding: 0.125rem 0.625rem;
	font-weight: 600;
	font-size: 0.625rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp__download {
	margin: 7.5rem 0;
}

.p-pdp__download-container {
	display: block;
	padding: 4.875rem 2.1875rem 1.25rem;
}

.p-pdp__download-container .img {
	position: absolute;
	top: -1.625rem;
	left: 50%;
	transform: translateX(-50%);
	margin-right: 0;
}

.p-pdp__download-container .text {
	margin-right: 0;
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1.0625rem;
	line-height: 1.5;
	letter-spacing: 0em;
	text-align: center;
}

.p-pdp__download-container .text.en {
	margin-right: 0;
}

.p-pdp__download-container .btn {
	text-align: center;
}

.p-pdp-vs__role {
	margin-top: 5rem;
}

.p-pdp-vs__role.mt50 {
	margin-top: 3.125rem;
}

.p-pdp-vs__role-wrap {
	display: block;
}

.p-pdp-vs__role-item:not(:last-of-type) {
	margin-bottom: 5rem;
}

.p-pdp-vs__pim {
	margin-top: 7.5rem;
}

.p-pdp-vs__pim-wrap {
	display: block;
}

.p-pdp-vs__pim-item {
	margin-top: 0;
}

.p-pdp-vs__pim-img {
	display: block;
	margin: auto;
	margin-bottom: 1.25rem;
	width: 100%;
	max-width: 25rem;
}

.p-pdp-vs__compare {
	margin-top: 7.5rem;
}

.p-pdp-vs__compare-head {
	display: block;
	margin-bottom: 1.5rem;
}

.p-pdp-vs__compare-img {
	display: block;
	margin: auto;
	margin-bottom: 1.25rem;
	aspect-ratio: 343/813;
	width: 100%;
	max-width: 25rem;
}

.p-pdp-vs__reason {
	margin-top: 7.5rem;
}

.p-pdp-vs__reason-item {
	display: block;
}

.p-pdp-vs__reason-item:not(:last-of-type) {
	margin-bottom: 7.25rem;
}

.p-pdp-vs__reason-item:not(:last-of-type).en {
	margin-bottom: 2.5rem;
}

.p-pdp-vs__reason-item .sp-flex {
	-moz-column-gap: 1.125rem;
	display: flex;
	column-gap: 1.125rem;
	align-items: start;
	margin-bottom: 1.25rem;
}

.p-pdp-vs__reason-item .num {
	font-weight: 800;
	font-size: 2.5rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-pdp-vs__reason-item .head {
	flex: 1;
	margin-bottom: 0;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-vs__reason-item .head.en {
	font-size: 1.125rem;
}

.p-pdp-vs__reason-img {
	display: block;
	margin: auto;
	margin-bottom: 1.25rem;
	aspect-ratio: 343/249;
	width: 100%;
	max-width: 25rem;
}

.p-pdp__download.pdp-vs-pim {
	margin: 7.5rem 0;
}

.p-pdp-what__form {
	margin-top: 5rem;
}

.p-pdp-what__form-img {
	display: block;
	margin: auto;
	margin-top: 2.5rem;
	aspect-ratio: 343/682;
	max-width: 25rem;
}

.p-pdp-what__reason {
	margin-top: 7.5rem;
}

.p-pdp-what__reason-wrap {
	display: block;
	text-align: center;
}

.p-pdp-what__reason-text {
	text-align: left;
}

.p-pdp-what__reason-img {
	display: block;
	margin: auto;
	margin-top: 2.5rem;
	margin-bottom: 1.25rem;
	width: 100%;
	max-width: 25rem;
}

.p-pdp-what__data {
	margin-top: 7.5rem;
}

.p-pdp-what__data-img {
	display: block;
	margin: auto;
	margin-top: 2.5rem;
	aspect-ratio: 343/460;
	max-width: 25rem;
}

.p-pdp-what__solve {
	margin: 7.5rem 0;
}

.p-pdp-what__solve-text .p-pdp__head {
	width: 100%;
}

.p-pdp-what__solve-text {
	display: block;
}

.p-pdp-what__solve-img {
	display: block;
	margin: auto;
	margin-top: 2.5rem;
	max-width: 25rem;
}

.p-pdp-product__what {
	margin-top: 5rem;
}

.p-pdp__text.product-what {
	width: 100%;
}

.p-pdp-product__what-img {
	display: block;
	margin: auto;
	margin-top: 2.5rem;
	aspect-ratio: 343/459;
	width: 100%;
	max-width: 25rem;
}

.p-pdp-product__dynamism {
	margin-top: 11.875rem;
}

.p-pdp-product__dynamism-wrap {
	display: block;
}

.p-pdp-product__dynamism-img {
	display: block;
	margin: auto;
	margin-bottom: 1.25rem;
	width: 100%;
	max-width: 25rem;
}

.p-pdp-product__dynamism-textWrap {
	width: 100%;
}

.p-pdp-product__possibility {
	margin-top: 7.5rem;
}

.p-pdp-product__possibility-title {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-head.--head2 .text {
	width: 100%;
}

.p-pdp-product__possibility-head {
	display: block;
}

.p-pdp-product__possibility-head .subtitle {
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-head .text {
	width: 100%;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-items {
	margin-top: 1.75rem;
	margin-left: 0;
	width: 100%;
}

.p-pdp-product__possibility-item {
	display: block;
}

.p-pdp-product__possibility-item:not(:last-of-type) {
	margin-bottom: 3rem;
}

.p-pdp-product__possibility-item .img {
	margin-bottom: 0.9375rem;
	aspect-ratio: 343/176;
}

.p-pdp-product__possibility-item .textWrap {
	width: 100%;
}

.p-pdp-product__possibility-item .head {
	-moz-column-gap: 0.5rem;
	column-gap: 0.5rem;
	margin-bottom: 0.9375rem;
}

.p-pdp-product__possibility-item .head span:nth-of-type(1) {
	font-weight: 800;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-item .head span:nth-of-type(2) {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-item .text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp-product__possibility-bottomImg {
	margin-top: 1.5rem;
	aspect-ratio: 343/186;
}

.p-pdp__download.product-data {
	margin-bottom: 7.5rem;
}

.p-guide {
	margin-top: 5rem;
}

.p-pdp-guide__item {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
	padding: 1.75rem 0;
}

.p-pdp-guide__item .num {
	border-radius: 0.625rem;
	padding: 0.875rem;
	font-weight: 700;
	font-size: 1.1875rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-pdp-guide__item .head {
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-guide__item .head-sub {
	margin: 1.5rem 0;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-pdp-guide__item .head-sub.en {
	font-size: 1.125rem;
}

.p-pdp-guide__item .guide-text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-pdp__download.pdp-guide {
	margin: 9.125rem 0 7.5rem;
}

.p-maintenance__wrap {
	width: 80%;
}

.p-food-service {
	padding-inline: 16px;
}

.p-food-service__body {
	padding-top: 0;
}

.p-food-service__fv-wrap {
	flex-direction: column;
}

.p-food-service__fv-img {
	margin-bottom: 1.25rem;
	margin-inline: auto;
	max-width: 500px;
}

.p-food-service__fv-text .c-breadcrumbs {
	display: none;
}

.p-food-service__fv-text .head {
	margin-top: 0;
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-food-service__fv-text .title {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1;
	letter-spacing: 0em;
}

.p-food-service__fv-text .text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-food-service__outline {
	margin-top: 5rem;
}

.p-food-service__outline-title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-food-service__outline-text {
	margin-bottom: 1.75rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-food-service__outline-img {
	margin-inline: auto;
	aspect-ratio: 343/430;
	max-width: 500px;
}

.p-cta {
	right: unset;
	bottom: 0.625rem;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 12px;
	aspect-ratio: 355/84;
	width: 22.1875rem;
	height: auto;
}

.p-cta__close {
	top: -0.75rem;
	right: 0.5rem;
}

.p-cta__item {
	display: flex;
}

.p-cta__text {
	flex: 1;
	padding: 0.25rem 0.5rem;
}

.p-cta__img {
	border-radius: 12px 0 0 12px;
	width: 9.375rem;
	height: 100%;
}

.p-cta__title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	min-height: 3.375rem;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-weight: 600;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-cta__link {
	-moz-column-gap: 0.25rem;
	column-gap: 0.25rem;
	justify-content: start;
	margin-top: 0.125rem;
	font-weight: 600;
	font-size: 0.625rem;
	line-height: 1.3;
	letter-spacing: 0em;
}

.p-new-contact {
	margin-top: 0rem;
	margin-bottom: 0;
	padding-top: 3.75rem;
}

.p-new-contact__section {
	padding-top: 1.875rem !important;
	padding-bottom: 5rem !important;
}

.p-new-contact__inner {
	padding-inline: 1rem;
}

.p-new-contact__title {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
	margin-bottom: 0.875rem;
}

.p-new-contact__title svg {
	width: 3.75rem;
}

.p-new-contact__title span {
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-contact__text {
	font-weight: 300;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-new-contact__body {
	margin-left: -1rem;
	padding: 1.5rem 1rem;
	width: calc(100% + 2rem);
}

.p-new-contact__body-head {
	margin-bottom: 2.375rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-download {
	margin-top: 0rem;
	margin-bottom: 0;
	padding-top: 3.75rem;
}

.p-new-download__section {
	padding-top: 1.875rem !important;
	padding-bottom: 5rem !important;
}

.p-new-download__inner {
	padding-inline: 1rem;
}

.p-new-download__wrap {
	row-gap: 2.125rem;
	flex-direction: column;
}

.p-new-download__title-wrap {
	position: relative;
	width: 100%;
}

.p-new-download__title {
	margin-bottom: 0.75rem;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-download__subtitle {
	margin-bottom: 1.0625rem;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.p-new-download__text {
	margin-bottom: 0rem;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0em;
}

.p-new-download__illust {
	position: absolute;
	top: 0;
	right: 0;
	aspect-ratio: 1;
	width: 7.8125rem;
	height: auto;
}

.p-new-download__body {
	margin-left: -1rem;
	padding: 1.5rem 1rem;
	width: calc(100% + 2rem);
}

.p-new-download__body-head {
	margin-bottom: 2.375rem;
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0em;
}

.js-fadeInLeft {
	animation-name: fadeInUpContents;
}

.js-fadeInLeft__delay--1s {
	animation-name: fadeInUpContents;
}

.js-fadeInLeft__delay--2s {
	animation-name: fadeInUpContents;
}

.js-fadeInLeftBig {
	animation-name: fadeInUpContents;
}

.js-fadeInLeftBig__delay--1s {
	animation-name: fadeInUpContents;
}

.js-fadeInLeftBig__delay--2s {
	animation-name: fadeInUpContents;
}

.js-fadeInRight {
	animation-name: fadeInUpContents;
}

.js-fadeInRight__delay--1s {
	animation-name: fadeInUpContents;
}

.js-fadeInRight__delay--2s {
	animation-name: fadeInUpContents;
}

.js-fadeInRightBig {
	animation-name: fadeInUpContents;
}

.js-fadeInRightBig__delay--1s {
	animation-name: fadeInUpContents;
}

.js-fadeInRightBig__delay--2s {
	animation-name: fadeInUpContents;
}

.u-pc {
	display: none !important;
}

.u-center--sp {
	text-align: center !important;
}

.u-left--sp {
	text-align: left !important;
}

.u-right--sp {
	text-align: right !important;
}

.u-lh12--sp {
	line-height: 1.2 !important;
}

.u-lh13--sp {
	line-height: 1.3 !important;
}

.u-lh15--sp {
	line-height: 1.5 !important;
}

.u-lh18--sp {
	line-height: 1.8 !important;
}

.u-nowrap--sp {
	white-space: nowrap;
}

}

@media screen and (max-width: 859px) and (max-width: 859px) {

.p-pdp-vs__reason-item .sp-flex {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
}

}

@media screen and (max-width: 632px) {

.p-subContact__form-wrap {
	margin-inline: calc(50% - 50vw);
}

}

@media screen and (max-width: 375px) {

html {
	font-size: calc(1600 / 375 * 1vw);
}

}

@keyframes ninja {

0% {
	bottom: calc(100% - 5rem);
}

30% {
	bottom: calc(100% - 5rem);
}

40% {
	bottom: 100%;
}

60% {
	bottom: 100%;
}

70% {
	bottom: calc(100% - 5rem);
}

100% {
	bottom: calc(100% - 5rem);
}

}

@keyframes fadeInDownContents {

0% {
	transform: translate(-50%, -100%);
	opacity: 0;
}

100% {
	transform: translateY(-50%, 0);
	opacity: 1;
}

}

@keyframes underLineFirst {

0% {
	transform: scale(0, 1);
	transform-origin: left top;
}

30% {
	transform: scale(0, 1);
	transform-origin: left top;
}

45% {
	transform: scale(1, 1);
	transform-origin: left top;
}

85% {
	transform: scale(1, 1);
	transform-origin: right top;
}

100% {
	transform: scale(0, 1);
	transform-origin: right top;
}

}

@keyframes underLine {

0% {
	transform: scale(0, 1);
	transform-origin: left top;
}

30% {
	transform: scale(0, 1);
	transform-origin: left top;
}

40% {
	transform: scale(1, 1);
	transform-origin: left top;
}

90% {
	transform: scale(1, 1);
	transform-origin: right top;
}

100% {
	transform: scale(0, 1);
	transform-origin: right top;
}

}

@keyframes textTransformPc {

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

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

100% {
	transform: translateY(0);
}

}

@keyframes textTransformSp {

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

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

100% {
	transform: translateY(0);
}

}

@keyframes fadeInUpContents {

0% {
	transform: translateY(1.25rem);
	opacity: 0;
}

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

}

@keyframes fadeInLeftContents {

0% {
	transform: translateX(-1.25rem);
	opacity: 0;
}

100% {
	transform: translateX(0);
	opacity: 1;
}

}

@keyframes fadeInRightContents {

0% {
	transform: translateX(1.25rem);
	opacity: 0;
}

100% {
	transform: translateX(0);
	opacity: 1;
}

}

@keyframes fadeInLeftBigContents {

0% {
	transform: translateX(-62.5rem);
	opacity: 0;
}

100% {
	transform: translateX(0);
	opacity: 1;
}

}

@keyframes fadeInRightBigContents {

0% {
	transform: translateX(62.5rem);
	opacity: 0;
}

100% {
	transform: translateX(0);
	opacity: 1;
}

}

