/* About/contact page styles. Loaded only on company page templates. */

.company-page-hero__label {
	display: inline-flex;
	align-items: center;
	margin-bottom: 16px;
	color: var(--tsuku-coral);
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0;
	text-transform: uppercase;
}

.company-page-section {
	padding: 56px 0;
	border-top: 1px solid rgba(234, 223, 206, 0.72);
}

.company-page-hero h1 {
	margin: 0;
	padding: 0;
	background: none;
	border-radius: 0;
	color: var(--tsuku-ink);
	font-size: 32px;
	font-weight: bold;
	line-height: 1.45;
	letter-spacing: 0;
}

.company-page-hero p {
	color: var(--tsuku-text);
	font-size: 16px;
	line-height: 1.9;
	max-width: 820px;
	margin-top: 18px;
}

.company-profile__body p {
	color: var(--tsuku-text);
	font-size: 15px;
	line-height: 1.9;
}

.company-contact-panel li {
	color: var(--tsuku-text);
	font-size: 15px;
	line-height: 1.9;
	position: relative;
	padding-left: 20px;
}

.company-page-hero {
	margin: 34px 0 36px;
	padding: 52px;
	border-radius: 28px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(255, 246, 232, 0.88));
}

.company-profile {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 34px;
	align-items: center;
	padding: 30px;
	border: 1px solid var(--tsuku-border);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.74);
	box-shadow: 0 16px 38px rgba(98, 73, 42, 0.07);
	border-color: rgba(234, 223, 206, 0.92);
}

.company-profile__image img {
	width: 100%;
	border-radius: 20px;
}

.company-profile__name {
	margin-bottom: 2px !important;
	color: var(--tsuku-ink);
	font-size: 24px !important;
	font-weight: bold;
}

.company-profile__role {
	margin-bottom: 18px !important;
	color: var(--tsuku-coral) !important;
	font-weight: bold;
}

.company-profile__body p + p {
	margin-top: 14px;
}

.company-table {
	width: 100%;
	overflow: hidden;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 18px 42px rgba(87, 67, 39, 0.08);
}

.company-table th {
	padding: 20px 22px;
	border-bottom: 1px solid var(--tsuku-border);
	line-height: 1.8;
	width: 190px;
	background: #fff2df;
	color: var(--tsuku-coral);
	font-weight: bold;
	text-align: left;
}

.company-table td {
	padding: 20px 22px;
	border-bottom: 1px solid var(--tsuku-border);
	line-height: 1.8;
}

.company-table tr:last-child th {
	border-bottom: 0;
}

.company-table tr:last-child td {
	border-bottom: 0;
}

.company-contact-panel {
	display: grid;
	grid-template-columns: 0.72fr 1fr;
	gap: 28px;
	align-items: start;
	margin-bottom: 64px;
}

.company-contact-panel__intro {
	padding: 30px;
	border: 1px solid var(--tsuku-border);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 16px 38px rgba(98, 73, 42, 0.07);
	border-color: rgba(234, 223, 206, 0.92);
}

.company-contact-panel__form {
	padding: 30px;
	border: 1px solid var(--tsuku-border);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 16px 38px rgba(98, 73, 42, 0.07);
	border-color: rgba(234, 223, 206, 0.92);
}

.company-contact-panel h2 {
	margin: 0 0 16px;
	padding: 0;
	background: none;
	color: var(--tsuku-ink);
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0;
}

.company-contact-panel li + li {
	margin-top: 10px;
}

.company-contact-panel li:before {
	content: "";
	position: absolute;
	top: 0.78em;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--tsuku-yellow);
}

.company-form {
	padding: 0;
	background: transparent;
}

.company-form .form-item {
	margin-bottom: 22px;
}

.company-form label {
	display: block;
	margin-bottom: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: bold;
}

.company-form input {
	width: 100%;
	padding: 15px 16px;
	border: 1px solid #e3d7c7;
	border-radius: 14px;
	background: #fffdf8;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.6;
}

.company-form textarea {
	width: 100%;
	padding: 15px 16px;
	border: 1px solid #e3d7c7;
	border-radius: 14px;
	background: #fffdf8;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.6;
	min-height: 190px;
	resize: vertical;
}

.company-form select {
	width: 100%;
	padding: 15px 16px;
	border: 1px solid #e3d7c7;
	border-radius: 14px;
	background: #fffdf8;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.6;
}

.company-form input:focus {
	outline: 3px solid rgba(47, 125, 115, 0.16);
	border-color: var(--tsuku-green);
}

.company-form textarea:focus {
	outline: 3px solid rgba(47, 125, 115, 0.16);
	border-color: var(--tsuku-green);
}

.page .company-contact {
	max-width: 980px;
}

.company-contact-v2 .company-contact-v2-main {
	display: block !important;
	grid-template-columns: none !important;
	width: min(820px, calc(100% - 80px)) !important;
	padding: 12px 0 96px !important;
	padding-top: 18px !important;
}

.company-contact-v2 .company-contact-v2-form {
	width: 100% !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.company-contact-v2 .company-contact-form {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 44px 52px 48px !important;
	border: 1px solid rgba(35, 49, 54, 0.08) !important;
	border-radius: 14px !important;
	background: #fff !important;
	box-shadow: 0 22px 52px rgba(103, 75, 43, 0.09) !important;
}

.company-contact-v2 .company-contact-form__flow {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 10px !important;
	margin: 0 0 32px !important;
}

.company-contact-v2 .company-contact-form__section {
	padding: 30px 0 !important;
	border-top: 1px solid rgba(35, 49, 54, 0.08) !important;
}

.company-contact-v2 .company-contact-form__section:first-of-type {
	border-top: 0 !important;
	padding-top: 4px !important;
}

.company-contact-v2 .company-contact-form__section h3 {
	margin: 0 0 20px !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--tsuku-ink) !important;
	font-size: 20px !important;
	font-weight: 900 !important;
	line-height: 1.45 !important;
	letter-spacing: 0 !important;
}

.company-contact-v2 .company-contact-form__section h3:before {
	display: none !important;
}

.company-contact-v2 .company-contact-form__section h3:after {
	display: none !important;
}

.company-contact-v2 .company-contact-form__grid {
	display: block !important;
	grid-template-columns: none !important;
}

.company-contact-v2 .company-contact-form__item {
	margin: 0 0 22px !important;
}

.company-contact-v2 .company-contact-form__item:last-child {
	margin-bottom: 0 !important;
}

.company-contact-v2 .company-contact-v2-hero {
	min-height: 430px !important;
	padding-top: 0 !important;
	padding-bottom: 28px !important;
}

.company-contact-v2 .company-contact-v2-hero__visual {
	min-height: 340px !important;
}

.page .article.company-about {
	max-width: 1080px;
	padding: 0 0 76px;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.company-about-hero {
	position: relative;
	margin-right: 0;
	margin-left: 0;
	border-top: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	clip-path: none !important;
	display: block;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 48px;
	align-items: end;
	padding: 72px 0 54px;
	background: transparent !important;
	padding-top: 82px;
	padding-bottom: 70px;
}

.company-about .company-page-section {
	position: relative;
	margin-right: 0;
	margin-left: 0;
	border-top: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	clip-path: none !important;
	padding: 74px 0;
	background: transparent !important;
}

.company-about-hero h1 {
	max-width: none;
	margin: 0;
	padding: 0;
	background: none;
	color: var(--tsuku-ink);
	font-size: 38px;
	font-weight: 800;
	line-height: 1.42;
	letter-spacing: 0;
	width: 100%;
}

.company-about-hero__lead {
	max-width: none;
	margin-top: 8px !important;
	color: var(--tsuku-text);
	font-size: 16px;
	line-height: 2.05;
}

.company-about-hero__proof {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 38px;
	padding-top: 0;
	padding: 24px 28px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.68);
}

.company-about-hero__proof li {
	padding: 24px 24px 22px;
	border-radius: 0;
	background: rgba(255, 255, 255, 0.72);
	border: 0;
	border-top: 3px solid var(--brand-orange);
}

.company-about-hero__proof strong {
	display: block;
	color: var(--brand-orange);
	font-size: 28px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0;
}

.company-about-hero__proof span {
	display: block;
	margin-top: 10px;
	color: var(--tsuku-text);
	font-size: 15px;
	line-height: 1.7;
}

.company-about-policy {
	background: #fffaf2;
	box-shadow: 0 0 0 100vmax #fffaf2 !important;
}

.company-about-profile-section {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff !important;
}

.company-about-services {
	background: #eef6f2;
	box-shadow: 0 0 0 100vmax #eef6f2 !important;
}

.company-about-info {
	background: #fbf7ef;
	box-shadow: 0 0 0 100vmax #fbf7ef !important;
}

.company-about .company-section-head {
	margin-bottom: 30px;
}

.company-about-values {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
}

.company-about-values > div {
	min-height: 0;
	padding: 0;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	padding-top: 22px;
	border-top: 1px solid rgba(35, 49, 54, 0.14) !important;
}

.company-about-values span {
	display: inline-block;
	margin-bottom: 16px;
	color: var(--brand-orange);
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
}

.company-about-profile {
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 44px;
	align-items: center;
	padding: 34px;
	border: 0;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: none;
}

.company-about-profile .company-profile__image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 8px;
}

.company-about-profile .company-profile__body {
	max-width: 680px;
}

.company-about-service-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}

.company-about-table {
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	background: transparent;
}

.company-about-table th {
	border-bottom: 1px solid rgba(35, 49, 54, 0.1);
	background: transparent;
	color: var(--tsuku-ink);
}

.company-about-table td {
	border-bottom: 1px solid rgba(35, 49, 54, 0.1);
}

.article .company-about-hero__proof > li:before {
	display: none !important;
	content: none !important;
}

.article .company-about-values > div:before {
	display: none !important;
	content: none !important;
}

.company-about-hero__proof li + li {
	border-left: 0;
}

.company-about-hero__proof li:after {
	display: none;
	content: none;
}

.company-about-hero__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	column-gap: 46px;
	row-gap: 28px;
	align-items: start;
}

.company-about-hero__body .company-page-hero__label {
	grid-column: 1 / -1;
}

.company-about-hero__body h1 {
	grid-column: 1 / -1;
}

.company-about-meaning {
	padding: 24px 26px;
	border-radius: 8px;
	background: #fff;
}

.company-about-meaning h2 {
	margin: 0 0 12px;
	padding: 0;
	background: none;
	color: var(--tsuku-ink);
	font-size: 18px;
	font-weight: 800;
	line-height: 1.55;
	letter-spacing: 0;
}

.company-about-meaning p {
	color: var(--tsuku-text);
	font-size: 14px;
	line-height: 1.9;
}

.article .company-about-hero__proof {
	margin: 30px 0 0;
	padding: 0;
	background: transparent;
}

.page .article.company-about-v2 {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 0 78px;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.company-about-v2 * {
	box-sizing: border-box;
}

.company-about-v2 p {
	color: var(--tsuku-text);
}

.company-about-v2-hero {
	position: relative;
	margin-right: 0;
	margin-left: 0;
	border: 0 !important;
	border-radius: 0 !important;
	clip-path: inset(0 -100vmax);
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
	gap: 46px;
	align-items: center;
	padding: 82px 0 78px;
	background: #fbf7ef;
	box-shadow: 0 0 0 100vmax #fbf7ef !important;
}

.company-about-v2-section {
	position: relative;
	margin-right: 0;
	margin-left: 0;
	border: 0 !important;
	border-radius: 0 !important;
	clip-path: inset(0 -100vmax);
	padding: 84px 0;
}

.company-about-v2-hero h1 {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: none;
	color: var(--tsuku-ink);
	font-size: 42px;
	font-weight: 800;
	line-height: 1.42;
	letter-spacing: 0;
}

.company-about-v2-hero h1 em {
	color: var(--brand-orange);
	font-style: normal;
}

.company-about-v2-hero__content > p:not(.company-page-hero__label) {
	margin-top: 24px;
	font-size: 16px;
	line-height: 2.05;
}

.company-about-v2-visual {
	position: relative;
	min-height: 390px;
}

.company-about-v2-visual:before {
	content: "";
	position: absolute;
	inset: 44px 18px 18px 72px;
	border-radius: 18px;
	background: #eef6f2;
}

.company-about-v2-visual img {
	position: absolute;
	display: block;
	width: 78%;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 24px 56px rgba(103, 75, 43, 0.14);
}

.company-about-v2-visual__main {
	top: 0;
	left: 0;
	z-index: 2;
}

.company-about-v2-visual__sub {
	right: 0;
	bottom: 0;
	z-index: 1;
}

.company-about-v2-proof {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 10px 0 0 !important;
	padding: 0 !important;
}

.article .company-about-v2-proof > li:before {
	display: none !important;
	content: none !important;
}

.company-about-v2-proof li {
	position: relative;
	min-height: 138px;
	padding: 30px 28px 26px !important;
	border-radius: 8px;
	background: #fff !important;
	text-align: center;
	border: 1px solid rgba(35, 49, 54, 0.08) !important;
	box-shadow: 0 18px 42px rgba(103, 75, 43, 0.08) !important;
}

.company-about-v2-proof li:after {
	display: none;
	content: none;
}

.company-about-v2-proof i {
	position: relative;
	display: grid;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 18px;
	border-radius: 18px;
	background: #fff !important;
	place-items: center;
	box-shadow: inset 0 0 0 1px rgba(35, 49, 54, 0.08), 0 10px 22px rgba(103, 75, 43, 0.08);
}

.company-about-v2-proof i:before {
	content: "";
	position: static;
	display: block;
	width: 30px;
	height: 30px;
	background-color: currentColor !important;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.company-about-v2-proof i:after {
	content: "";
	position: absolute;
	display: none !important;
}

.company-about-v2-proof__item--operate i:before {
	left: 11px;
	top: 11px;
	width: 20px;
	height: 20px;
	border: 3px solid var(--brand-orange);
	border-radius: 50%;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='3'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 17v4'/%3E%3Cpath d='M8.5 11.5l2.4 2.4 4.8-5.1'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='3'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 17v4'/%3E%3Cpath d='M8.5 11.5l2.4 2.4 4.8-5.1'/%3E%3C/g%3E%3C/svg%3E");
}

.company-about-v2-proof__item--operate i:after {
	left: 22px;
	top: 13px;
	width: 3px;
	height: 11px;
	background: var(--brand-orange);
	transform-origin: bottom;
	transform: rotate(38deg);
}

.company-about-v2-proof__item--support i {
	background: #dff1ec;
	color: #2f7d73;
}

.company-about-v2-proof__item--support i:before {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 3px solid var(--tsuku-green);
	left: 10px;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 20v-1.5a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4V20'/%3E%3Ccircle cx='10' cy='7.5' r='3.5'/%3E%3Cpath d='M20 20v-1a3.5 3.5 0 0 0-2.5-3.3'/%3E%3Cpath d='M16.5 4.3a3.5 3.5 0 0 1 0 6.4'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 20v-1.5a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4V20'/%3E%3Ccircle cx='10' cy='7.5' r='3.5'/%3E%3Cpath d='M20 20v-1a3.5 3.5 0 0 0-2.5-3.3'/%3E%3Cpath d='M16.5 4.3a3.5 3.5 0 0 1 0 6.4'/%3E%3C/g%3E%3C/svg%3E");
}

.company-about-v2-proof__item--support i:after {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 3px solid var(--tsuku-green);
	right: 10px;
}

.company-about-v2-proof__item--field i {
	background: #fbe0e9;
	color: #d94372;
}

.company-about-v2-proof__item--field i:before {
	width: 22px;
	height: 16px;
	border: 3px solid #e85c86;
	border-top: 0;
	border-radius: 0 0 14px 14px;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-4.4 7-10.2A4.6 4.6 0 0 0 12 7a4.6 4.6 0 0 0-7 3.8C5 16.6 12 21 12 21z'/%3E%3Cpath d='M8.4 12.4h2.2l1.1-2.3 1.7 4.4 1-2.1h1.9'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-4.4 7-10.2A4.6 4.6 0 0 0 12 7a4.6 4.6 0 0 0-7 3.8C5 16.6 12 21 12 21z'/%3E%3Cpath d='M8.4 12.4h2.2l1.1-2.3 1.7 4.4 1-2.1h1.9'/%3E%3C/g%3E%3C/svg%3E");
}

.company-about-v2-proof__item--field i:after {
	top: 12px;
	width: 26px;
	height: 3px;
	background: #e85c86;
}

.company-about-v2-proof strong {
	display: block;
	color: var(--tsuku-ink);
	font-size: 30px;
	font-weight: 900 !important;
	line-height: 1.2;
	font-family: inherit !important;
	letter-spacing: 0 !important;
}

.company-about-v2-proof p {
	display: block;
	margin-top: 12px;
	color: var(--tsuku-text);
	font-size: 15px;
	line-height: 1.75;
}

.company-about-v2-proof strong span {
	display: inline;
	color: var(--brand-orange);
	font-size: 1.38em;
	font-family: inherit !important;
	font-weight: 900 !important;
	line-height: 0.92;
	letter-spacing: 0 !important;
}

.company-about-v2-proof__item--support strong span {
	color: #2f7d73 !important;
}

.company-about-v2-proof__item--field strong {
	color: #d94372 !important;
}

.company-about-v2-story {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff !important;
}

.company-about-v2-profile-section {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff !important;
}

.company-about-v2-policy {
	background: #eef6f2;
	box-shadow: 0 0 0 100vmax #eef6f2 !important;
}

.company-about-v2-info {
	background: #fbf7ef;
	box-shadow: 0 0 0 100vmax #fbf7ef !important;
}

.company-about-v2-heading {
	margin-bottom: 34px;
}

.company-about-v2-heading h2 {
	margin: 0;
	padding: 0;
	background: none;
	color: var(--tsuku-ink);
	font-size: 34px;
	font-weight: 800;
	line-height: 1.45;
	letter-spacing: 0;
}

.company-about-v2-story__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 44px;
	align-items: start;
}

.company-about-v2-story__lead {
	font-size: 24px;
	font-weight: 800;
	line-height: 1.75;
	color: var(--tsuku-ink) !important;
}

.company-about-v2-story__note {
	padding: 30px;
	border-radius: 8px;
	background: #fbf7ef;
}

.company-about-v2-story__note span {
	display: block;
	margin-bottom: 14px;
	color: var(--brand-orange);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.company-about-v2-story__note p {
	font-size: 15px;
	line-height: 1.9;
}

.company-about-v2-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.company-about-v2-values > div {
	position: relative;
	min-height: 260px;
	padding: 30px 28px;
	border-radius: 8px;
	background: #fff !important;
	border: 1px solid rgba(35, 49, 54, 0.08);
	box-shadow: 0 16px 38px rgba(103, 75, 43, 0.07);
}

.company-about-v2-values__icon {
	position: relative;
	display: inline-flex;
	width: 42px;
	height: 42px;
	margin-bottom: 22px;
	border-radius: 12px;
	background: rgba(231, 119, 53, 0.13);
}

.company-about-v2-values__icon:before {
	content: "";
	position: absolute;
}

.company-about-v2-values__icon:after {
	content: "";
	position: absolute;
}

.company-about-v2-values__icon--field:before {
	inset: 12px 10px 14px;
	border: 3px solid var(--brand-orange);
	border-top: 0;
	border-radius: 0 0 12px 12px;
}

.company-about-v2-values__icon--field:after {
	top: 12px;
	left: 10px;
	width: 22px;
	height: 3px;
	background: var(--brand-orange);
}

.company-about-v2-values__icon--safe {
	background: rgba(47, 125, 115, 0.13);
}

.company-about-v2-values__icon--safe:before {
	left: 12px;
	top: 9px;
	width: 18px;
	height: 22px;
	border: 3px solid var(--tsuku-green);
	border-radius: 10px 10px 8px 8px;
}

.company-about-v2-values__icon--safe:after {
	left: 18px;
	top: 19px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--tsuku-green);
}

.company-about-v2-values__icon--grow {
	background: rgba(232, 92, 134, 0.13);
}

.company-about-v2-values__icon--grow:before {
	left: 12px;
	bottom: 10px;
	width: 8px;
	height: 18px;
	border-radius: 8px 8px 0 0;
	background: #e85c86;
}

.company-about-v2-values__icon--grow:after {
	right: 11px;
	top: 11px;
	width: 13px;
	height: 13px;
	border-radius: 13px 13px 13px 0;
	background: #e85c86;
	transform: rotate(-24deg);
}

.company-about-v2-values span {
	display: block;
	margin-bottom: 12px;
	color: var(--brand-orange);
	font-size: 34px;
	font-weight: 800;
	line-height: 1;
}

.company-about-v2-values h3 {
	margin: 0 0 14px;
	padding: 0;
	border: 0;
	color: var(--tsuku-ink);
	font-size: 21px;
	font-weight: 800;
	line-height: 1.45;
	letter-spacing: 0;
}

.company-about-v2-values p {
	font-size: 15px;
	line-height: 1.9;
}

.company-about-v2-profile {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	gap: 52px;
	align-items: center;
}

.company-about-v2-profile__image img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 8px;
}

.company-about-v2-profile__body {
	padding: 36px 0;
}

.company-about-v2-profile__body p:not(.company-profile__name):not(.company-profile__role) {
	font-size: 15px;
	line-height: 1.95;
}

.company-about-v2-profile__body p + p {
	margin-top: 14px;
}

.company-about-v2-table {
	width: 100%;
	overflow: hidden;
	border-radius: 8px;
	background: #fff !important;
	box-shadow: 0 16px 38px rgba(103, 75, 43, 0.07);
	border: 1px solid rgba(35, 49, 54, 0.08);
}

.company-about-v2-table th {
	padding: 20px 24px;
	border-bottom: 1px solid rgba(35, 49, 54, 0.1);
	line-height: 1.8;
	width: 190px;
	background: #fff7ef !important;
	color: var(--tsuku-ink);
	font-weight: 800;
	text-align: left;
}

.company-about-v2-table td {
	padding: 20px 24px;
	border-bottom: 1px solid rgba(35, 49, 54, 0.1);
	line-height: 1.8;
}

.company-about-v2-table tr:last-child th {
	border-bottom: 0;
}

.company-about-v2-table tr:last-child td {
	border-bottom: 0;
}

.company-contact-v2-hero {
	grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
	min-height: 430px;
	padding-bottom: 34px;
	width: min(1120px, calc(100% - 80px));
	margin: 0 auto;
	display: grid;
	gap: 56px;
	align-items: center;
	padding: 0 0 28px;
}

.company-contact-v2-hero h1 {
	max-width: 760px;
	font-size: 40px;
	line-height: 1.36;
	margin: 14px 0 28px;
	color: var(--tsuku-ink);
	font-weight: 900;
	letter-spacing: 0;
	text-shadow: none !important;
}

.company-contact-v2-hero__body > p:not(.company-page-hero__label) {
	max-width: 620px;
	color: #4b5b5f;
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}

.company-contact-v2-main {
	display: grid;
	width: min(1120px, calc(100% - 80px));
	padding: 0 0 92px;
	margin: 0 auto;
	grid-template-columns: minmax(300px, 0.78fr) minmax(520px, 1.22fr);
	gap: 36px;
	align-items: start;
}

.company-contact-v2-form {
	width: 100%;
	padding: 38px 40px 42px;
	border: 1px solid rgba(35, 49, 54, 0.08);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 18px 42px rgba(103, 75, 43, 0.08);
}

.company-contact-form {
	padding: 44px 52px 48px;
	border: 1px solid rgba(35, 49, 54, 0.08);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 22px 52px rgba(103, 75, 43, 0.09);
}

.company-contact-form__head {
	margin-bottom: 28px;
}

.company-contact-form__head h2 {
	font-size: 28px;
	margin: 8px 0 14px;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--tsuku-ink);
	font-weight: 900;
	line-height: 1.42;
	letter-spacing: 0;
}

.company-contact-form__flow {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 32px;
}

.company-contact-form__flow div {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 48px;
	padding: 12px 14px;
	border-radius: 8px;
	background: #f6faf8;
	color: #425257;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.45;
}

.company-contact-form__flow span {
	display: grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #2f7d73;
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	flex: 0 0 auto;
}

.company-contact-form__section {
	padding: 30px 0;
	border-top: 1px solid rgba(35, 49, 54, 0.08);
}

.company-contact-form__section:first-of-type {
	border-top: 0;
	padding-top: 4px;
}

.company-contact-form__section h3 {
	margin: 0 0 20px;
	color: var(--tsuku-ink);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.45;
	letter-spacing: 0;
}

.company-contact-form__section h3:before {
	display: none !important;
}

.company-contact-form__section h3:after {
	display: none !important;
}

.company-contact-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px 20px;
}

.company-contact-form__item {
	margin: 0 0 22px;
}

.company-contact-form__item:last-child {
	margin-bottom: 0;
}

.company-contact-form input[type="text"] {
	background: #fbfbf8;
	width: 100%;
	border: 1px solid rgba(35, 49, 54, 0.12);
	border-radius: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.company-contact-form input[type="email"] {
	background: #fbfbf8;
	width: 100%;
	border: 1px solid rgba(35, 49, 54, 0.12);
	border-radius: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.company-contact-form input[type="url"] {
	background: #fbfbf8;
	width: 100%;
	border: 1px solid rgba(35, 49, 54, 0.12);
	border-radius: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.company-contact-form select {
	background: #fbfbf8;
	width: 100%;
	border: 1px solid rgba(35, 49, 54, 0.12);
	border-radius: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	height: 54px;
	padding: 0 16px;
}

.company-contact-form textarea {
	background: #fbfbf8;
	min-height: 190px;
	width: 100%;
	border: 1px solid rgba(35, 49, 54, 0.12);
	border-radius: 8px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	padding: 16px;
	resize: vertical;
}

.company-contact-form__hint {
	margin: 9px 0 0;
	color: #7a8588;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

.company-contact-form__privacy {
	margin-top: 24px;
	padding: 18px 20px;
	border-radius: 8px;
	background: #f2faf7;
}

.company-contact-form__submit {
	justify-content: center;
	padding-top: 24px;
	border-top: 1px solid rgba(35, 49, 54, 0.08);
	display: flex;
	align-items: center;
	gap: 20px;
	margin-top: 30px;
}

.company-about-v2 .company-about-v2-hero h1 em {
	color: #df6f2d !important;
	font-style: normal !important;
	text-shadow: none !important;
	font-family: inherit !important;
	font-weight: 900 !important;
	letter-spacing: 0 !important;
	background: linear-gradient(transparent 64%, rgba(231, 119, 53, 0.18) 64%);
	padding: 0 0.04em;
}

.company-about-v2-proof__item--operate {
	background: #fff7ef !important;
}

.company-about-v2-proof__item--support {
	background: #f2faf7 !important;
}

.company-about-v2-proof__item--field {
	background: #fff3f7 !important;
}

.company-about-v2-proof__item--operate i {
	background: #fde6d6;
	color: #e77735;
}

.company-about-v2-proof__item--operate strong span {
	color: #e77735 !important;
}

.company-about-v2-values > div:nth-child(1) {
	background: #fff7ef;
}

.company-about-v2-values > div:nth-child(2) {
	background: #f2faf7;
}

.company-about-v2-values > div:nth-child(3) {
	background: #fff3f7;
}

.company-about-v2 .company-about-v2-hero h1 {
	text-shadow: none !important;
	font-family: inherit !important;
	font-weight: 900 !important;
	letter-spacing: 0 !important;
}

.page .article.company-contact-v2 {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #fbf7ef !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--tsuku-ink);
	overflow: hidden;
}

.company-contact-v2-hero__visual {
	position: relative;
	min-height: 340px;
}

.company-contact-v2-hero__visual:before {
	content: "";
	position: absolute;
	inset: 12% -4% 10% 8%;
	background: linear-gradient(135deg, rgba(231, 119, 53, 0.12), rgba(47, 125, 115, 0.13));
	border-radius: 34px;
	transform: rotate(-2deg);
}

.company-contact-v2-hero__screen {
	position: relative;
	z-index: 1;
	margin-top: 34px;
	overflow: hidden;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 30px 68px rgba(103, 75, 43, 0.14);
}

.company-contact-v2-hero__screen img {
	display: block;
	width: 100%;
	height: auto;
}

.company-contact-v2-hero__note {
	position: absolute;
	z-index: 2;
	right: 24px;
	bottom: 10px;
	width: 260px;
	padding: 22px 24px;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 20px 46px rgba(103, 75, 43, 0.13);
}

.company-contact-v2-hero__note span {
	display: block;
	margin-bottom: 8px;
	color: #e77735;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.company-contact-v2-hero__note p {
	margin: 0;
	color: #425257;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.75;
}

.company-contact-v2-guide {
	background: #fff;
	border: 1px solid rgba(35, 49, 54, 0.08);
	border-radius: 12px;
	box-shadow: 0 18px 42px rgba(103, 75, 43, 0.08);
	position: sticky;
	top: 24px;
	padding: 34px 32px;
}

.company-contact-v2-guide__head h2 {
	margin: 8px 0 14px;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--tsuku-ink);
	font-size: 28px;
	font-weight: 900;
	line-height: 1.42;
	letter-spacing: 0;
}

.company-contact-v2-guide__head h2:before {
	display: none !important;
}

.company-contact-v2-guide__head h2:after {
	display: none !important;
}

.company-contact-form__head h2:before {
	display: none !important;
}

.company-contact-form__head h2:after {
	display: none !important;
}

.company-contact-v2-guide__list {
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.company-contact-v2-guide__list li {
	display: grid;
	grid-template-columns: 46px 1fr;
	gap: 16px;
	margin: 0;
	padding: 22px 0;
	border-top: 1px solid rgba(35, 49, 54, 0.08);
}

.company-contact-v2-guide__list li:before {
	display: none !important;
}

.company-contact-v2-guide__icon {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 16px;
	background: #fff7ef;
	color: #e77735;
	box-shadow: inset 0 0 0 1px rgba(231, 119, 53, 0.18);
}

.company-contact-v2-guide__icon:before {
	content: "";
	display: block;
	width: 25px;
	height: 25px;
	background: currentColor;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.company-contact-v2-guide__icon--service:before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='3'/%3E%3Cpath d='M8 21h8M12 18v3M8 11h3l2-3 3 6h2'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='3'/%3E%3Cpath d='M8 21h8M12 18v3M8 11h3l2-3 3 6h2'/%3E%3C/g%3E%3C/svg%3E");
}

.company-contact-v2-guide__icon--operation {
	background: #f2faf7;
	color: #2f7d73;
	box-shadow: inset 0 0 0 1px rgba(47, 125, 115, 0.18);
}

.company-contact-v2-guide__icon--operation:before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M7 4v6M17 4v6M6 14h5M13 14h5M6 18h3M13 18h5'/%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M7 4v6M17 4v6M6 14h5M13 14h5M6 18h3M13 18h5'/%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3C/g%3E%3C/svg%3E");
}

.company-contact-v2-guide__icon--limited {
	background: #fff3f7;
	color: #d94372;
	box-shadow: inset 0 0 0 1px rgba(217, 67, 114, 0.18);
}

.company-contact-v2-guide__icon--limited:before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/g%3E%3C/svg%3E");
}

.company-contact-v2-guide__list strong {
	display: block;
	color: var(--tsuku-ink);
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
}

.company-contact-v2-guide__list p {
	margin: 7px 0 0;
	color: #5b696d;
	font-size: 14px;
	line-height: 1.85;
}

.company-contact-v2-guide__caution {
	margin-top: 28px;
	padding: 22px 24px;
	border-radius: 10px;
	background: #fff3f7;
}

.company-contact-v2-guide__caution span {
	display: block;
	margin-bottom: 8px;
	color: #d94372;
	font-size: 13px;
	font-weight: 900;
}

.company-contact-v2-guide__caution p {
	margin: 0;
	color: #5b4a52;
	font-size: 14px;
	line-height: 1.85;
}

.company-contact-form__head p:not(.company-section-head__label) {
	margin: 0;
	color: #5b696d;
	font-size: 15px;
	line-height: 1.8;
}

.company-contact-form__errors {
	margin: 0 0 24px;
	padding: 16px 18px;
	border-radius: 8px;
	background: #fff3f7;
	color: #b8335e;
	font-weight: 700;
	line-height: 1.7;
}

.company-contact-form__errors p {
	margin: 0;
}

.company-contact-form__errors p + p {
	margin-top: 6px;
}

.company-contact-form__item--full {
	grid-column: 1 / -1;
}

.company-contact-form label {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 9px;
	color: var(--tsuku-ink);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.4;
}

.company-contact-form label span {
	display: inline-flex;
	align-items: center;
	height: 20px;
	padding: 0 8px;
	border-radius: 999px;
	background: #fff0e5;
	color: #e77735;
	font-size: 11px;
	font-weight: 900;
}

.company-contact-form input::placeholder {
	color: rgba(85, 95, 99, 0.58);
	font-weight: 400;
}

.company-contact-form textarea::placeholder {
	color: rgba(85, 95, 99, 0.58);
	font-weight: 400;
}

.company-contact-form input {
	height: 54px;
	padding: 0 16px;
}

.company-contact-form input:focus {
	border-color: #e77735;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
	outline: 0;
}

.company-contact-form select:focus {
	border-color: #e77735;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
	outline: 0;
}

.company-contact-form textarea:focus {
	border-color: #e77735;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
	outline: 0;
}

.company-contact-form__privacy label {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0;
	color: #425257;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.7;
}

.company-contact-form__privacy input {
	width: 18px;
	height: 18px;
	margin-top: 3px;
	accent-color: #2f7d73;
	flex: 0 0 auto;
}

.company-contact-form__privacy label span {
	display: inline;
	height: auto;
	padding: 0;
	border-radius: 0;
	background: none;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
}

.company-contact-form__trap {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.company-contact-form__submit .company-btn {
	min-width: 220px;
	border: 0;
	cursor: pointer;
}

.company-contact-form__submit p {
	margin: 0;
	color: #69777a;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

@media screen and (max-width: 600px) {
	.company-page-section {
		padding: 38px 0;
		border-top: 1px solid rgba(234, 223, 206, 0.72);
	}

	.company-page-hero h1 {
		font-size: 24px;
		overflow-wrap: anywhere;
		word-break: break-all;
		margin: 0;
		padding: 0;
		background: none;
		border-radius: 0;
		color: var(--tsuku-ink);
		font-weight: bold;
		line-height: 1.45;
		letter-spacing: 0;
	}

	.company-contact-panel {
		display: grid;
		grid-template-columns: 1fr;
		gap: 16px;
		margin-bottom: 48px;
	}

	.company-profile {
		display: grid;
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 22px;
		border: 1px solid var(--tsuku-border);
		border-radius: 22px;
		background: rgba(255, 255, 255, 0.74);
		box-shadow: 0 14px 34px rgba(98, 73, 42, 0.07);
		border-color: rgba(234, 223, 206, 0.92);
	}

	.company-form .company-btn {
		width: 100%;
	}

	.company-page-hero {
		margin: 24px 0 26px;
		padding: 30px 24px;
		border-radius: 24px;
		background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(255, 246, 232, 0.88));
	}

	.company-table {
		display: block;
		width: 100%;
		box-sizing: border-box;
		overflow: hidden;
		border-radius: 20px;
		background: #fff;
		box-shadow: 0 14px 34px rgba(87, 67, 39, 0.08);
	}

	.company-table tbody {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.company-table tr {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.company-table th {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 14px 18px;
		border-bottom: 1px solid var(--tsuku-border);
		line-height: 1.7;
		background: #fff2df;
		color: var(--tsuku-coral);
		font-weight: bold;
		text-align: left;
	}

	.company-table td {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 14px 18px;
		border-bottom: 1px solid var(--tsuku-border);
		line-height: 1.7;
	}

	.company-page-hero__label {
		display: inline-flex;
		margin-bottom: 12px;
		color: var(--tsuku-coral);
		font-size: 12px;
		font-weight: bold;
		letter-spacing: 0;
		text-transform: uppercase;
	}

	.company-page-hero p {
		color: var(--tsuku-text);
		font-size: 14px;
		line-height: 1.85;
		margin-top: 14px;
	}

	.company-profile__body p {
		color: var(--tsuku-text);
		font-size: 14px;
		line-height: 1.85;
	}

	.company-contact-panel li {
		color: var(--tsuku-text);
		font-size: 14px;
		line-height: 1.85;
		position: relative;
		padding-left: 18px;
	}

	.company-profile__image img {
		width: 100%;
		border-radius: 18px;
	}

	.company-profile__name {
		margin-bottom: 2px !important;
		color: var(--tsuku-ink);
		font-size: 22px !important;
		font-weight: bold;
	}

	.company-profile__role {
		margin-bottom: 14px !important;
		color: var(--tsuku-coral) !important;
		font-weight: bold;
	}

	.company-profile__body p + p {
		margin-top: 12px;
	}

	.company-contact-panel__intro {
		padding: 22px;
		border: 1px solid var(--tsuku-border);
		border-radius: 22px;
		background: rgba(255, 255, 255, 0.76);
		box-shadow: 0 14px 34px rgba(98, 73, 42, 0.07);
		border-color: rgba(234, 223, 206, 0.92);
	}

	.company-contact-panel__form {
		padding: 22px;
		border: 1px solid var(--tsuku-border);
		border-radius: 22px;
		background: rgba(255, 255, 255, 0.76);
		box-shadow: 0 14px 34px rgba(98, 73, 42, 0.07);
		border-color: rgba(234, 223, 206, 0.92);
	}

	.company-contact-panel h2 {
		margin: 0 0 14px;
		padding: 0;
		background: none;
		color: var(--tsuku-ink);
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 0;
	}

	.company-contact-panel li + li {
		margin-top: 9px;
	}

	.company-contact-panel li:before {
		content: "";
		position: absolute;
		top: 0.78em;
		left: 0;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: var(--tsuku-yellow);
	}

	.company-form {
		padding: 0;
		background: transparent;
	}

	.company-form .form-item {
		margin-bottom: 20px;
	}

	.company-form label {
		display: block;
		margin-bottom: 8px;
		color: var(--tsuku-ink);
		font-size: 14px;
		font-weight: bold;
	}

	.company-form input {
		width: 100%;
		padding: 14px 15px;
		border: 1px solid #e3d7c7;
		border-radius: 14px;
		background: #fffdf8;
		box-sizing: border-box;
		font-size: 16px;
		line-height: 1.6;
	}

	.company-form textarea {
		width: 100%;
		padding: 14px 15px;
		border: 1px solid #e3d7c7;
		border-radius: 14px;
		background: #fffdf8;
		box-sizing: border-box;
		font-size: 16px;
		line-height: 1.6;
		min-height: 180px;
		resize: vertical;
	}

	.company-form select {
		width: 100%;
		padding: 14px 15px;
		border: 1px solid #e3d7c7;
		border-radius: 14px;
		background: #fffdf8;
		box-sizing: border-box;
		font-size: 16px;
		line-height: 1.6;
	}

	.page .company-contact {
		max-width: 100%;
	}

	.page .article.company-about {
		padding: 0 0 48px;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.company-about-hero {
		position: relative;
		margin-right: 0;
		margin-left: 0;
		border-top: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		clip-path: none !important;
		display: block;
		gap: 28px;
		padding: 52px 0 36px;
		background: transparent !important;
		padding-top: 48px;
		padding-bottom: 46px;
	}

	.company-about .company-page-section {
		position: relative;
		margin-right: 0;
		margin-left: 0;
		border-top: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		clip-path: none !important;
		padding: 46px 0;
		background: transparent !important;
	}

	.company-about-hero h1 {
		margin: 0;
		padding: 0;
		background: none;
		color: var(--tsuku-ink);
		font-size: 25px;
		font-weight: 800;
		line-height: 1.55;
		letter-spacing: 0;
		width: 100%;
		max-width: none;
		overflow-wrap: anywhere;
	}

	.company-about-hero__lead {
		margin-top: 0 !important;
		color: var(--tsuku-text);
		font-size: 15px;
		line-height: 1.95;
	}

	.company-about-hero__proof {
		display: grid;
		gap: 0;
		grid-template-columns: 1fr !important;
		margin-top: 30px;
		padding: 18px 20px;
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.68);
	}

	.company-about-hero__proof li {
		padding: 18px 20px;
		border-radius: 0;
		background: rgba(255, 255, 255, 0.72);
		border: 0;
		position: relative;
		border-top: 3px solid var(--brand-orange);
	}

	.company-about-hero__proof strong {
		display: block;
		color: var(--brand-orange);
		font-size: 26px;
		font-weight: 800;
		line-height: 1.2;
		letter-spacing: 0;
	}

	.company-about-hero__proof span {
		display: block;
		margin-top: 8px;
		color: var(--tsuku-text);
		font-size: 14px;
		line-height: 1.7;
	}

	.company-about-policy {
		background: #fffaf2;
		box-shadow: 0 0 0 100vmax #fffaf2 !important;
	}

	.company-about-profile-section {
		background: #fff;
		box-shadow: 0 0 0 100vmax #fff !important;
	}

	.company-about-services {
		background: #eef6f2;
		box-shadow: 0 0 0 100vmax #eef6f2 !important;
	}

	.company-about-info {
		background: #fbf7ef;
		box-shadow: 0 0 0 100vmax #fbf7ef !important;
	}

	.company-about .company-section-head {
		margin-bottom: 26px;
	}

	.company-about-values {
		grid-template-columns: 1fr !important;
		gap: 12px;
	}

	.company-about-values > div {
		min-height: 0;
		padding: 0;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		border: 0 !important;
		padding-top: 18px;
		border-top: 1px solid rgba(35, 49, 54, 0.14) !important;
	}

	.company-about-values span {
		display: inline-block;
		margin-bottom: 14px;
		color: var(--brand-orange);
		font-size: 24px;
		font-weight: 800;
		line-height: 1;
	}

	.company-about-profile {
		grid-template-columns: 1fr !important;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.company-about-profile .company-profile__image img {
		aspect-ratio: 1 / 1;
		object-fit: cover;
		border-radius: 12px;
	}

	.company-about-service-list {
		grid-template-columns: 1fr !important;
		gap: 14px;
	}

	.company-about-table {
		border-radius: 0;
		box-shadow: none;
		overflow: visible;
		background: transparent;
	}

	.company-about-table th {
		border-bottom: 1px solid rgba(35, 49, 54, 0.1);
		background: transparent;
		color: var(--tsuku-ink);
	}

	.company-about-table td {
		border-bottom: 1px solid rgba(35, 49, 54, 0.1);
	}

	.article .company-about-hero__proof > li:before {
		display: none !important;
		content: none !important;
	}

	.article .company-about-values > div:before {
		display: none !important;
		content: none !important;
	}

	.company-about-hero__proof li + li {
		border-top: 3px solid var(--brand-orange);
		margin-top: 10px;
	}

	.company-about-hero__proof li:after {
		display: none;
		content: none;
	}

	.company-about-hero__body {
		display: grid;
		gap: 20px;
	}

	.company-about-meaning {
		padding: 20px;
		border-radius: 8px;
		background: #fff;
	}

	.company-about-meaning h2 {
		margin: 0 0 10px;
		padding: 0;
		background: none;
		color: var(--tsuku-ink);
		font-size: 17px;
		font-weight: 800;
		line-height: 1.55;
		letter-spacing: 0;
	}

	.company-about-meaning p {
		color: var(--tsuku-text);
		font-size: 14px;
		line-height: 1.85;
	}

	.article .company-about-hero__proof {
		margin: 22px 0 0;
		padding: 0;
		background: transparent;
	}

	.page .article.company-about-v2 {
		max-width: none !important;
		margin: 0 auto;
		padding: 0 0 50px;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		width: 100% !important;
		overflow: visible !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.company-about-v2 * {
		box-sizing: border-box;
	}

	.company-about-v2 p {
		color: var(--tsuku-text);
	}

	.company-about-v2-hero {
		position: relative;
		margin-right: 0 !important;
		margin-left: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		clip-path: inset(0 -100vmax);
		display: grid;
		grid-template-columns: 1fr;
		gap: 26px !important;
		padding: 52px 0 54px;
		background: #fbf7ef;
		box-shadow: 0 0 0 100vmax #fbf7ef !important;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		padding-top: 46px !important;
		padding-bottom: 48px !important;
	}

	.company-about-v2-section {
		position: relative;
		margin-right: 0 !important;
		margin-left: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		clip-path: inset(0 -100vmax);
		padding: 56px 0;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		padding-top: 50px !important;
		padding-bottom: 50px !important;
	}

	.company-about-v2-hero h1 {
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0;
		background: none;
		color: var(--tsuku-ink);
		font-size: 28px;
		font-weight: 800;
		line-height: 1.55;
		letter-spacing: 0;
	}

	.company-about-v2-hero h1 em {
		color: var(--brand-orange);
		font-style: normal;
	}

	.company-about-v2-hero__content > p:not(.company-page-hero__label) {
		margin-top: 18px;
		font-size: 14px !important;
		line-height: 1.9 !important;
	}

	.company-about-v2-visual {
		position: relative;
		min-height: 250px !important;
		overflow: hidden !important;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-visual:before {
		content: "";
		position: absolute;
		inset: 34px 0 0 28px !important;
		border-radius: 16px;
		background: #eef6f2;
	}

	.company-about-v2-visual img {
		position: absolute;
		display: block;
		width: 88% !important;
		border-radius: 10px;
		background: #fff;
		box-shadow: 0 16px 34px rgba(103, 75, 43, 0.12);
		max-width: 100% !important;
	}

	.company-about-v2-visual__main {
		top: 0;
		left: 0;
		z-index: 2;
	}

	.company-about-v2-visual__sub {
		right: 0 !important;
		bottom: 0;
		z-index: 1;
		width: 72% !important;
		max-width: 220px !important;
	}

	.company-about-v2-proof {
		display: grid;
		grid-template-columns: 1fr;
		gap: 12px !important;
		margin: 0 !important;
		padding: 0 !important;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.article .company-about-v2-proof > li:before {
		display: none !important;
		content: none !important;
	}

	.company-about-v2-proof li {
		position: relative;
		min-height: 0;
		padding: 20px !important;
		border-radius: 8px;
		background: #fff !important;
		text-align: left !important;
		border: 1px solid rgba(35, 49, 54, 0.08) !important;
		box-shadow: 0 16px 34px rgba(103, 75, 43, 0.08) !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		display: grid;
		grid-template-columns: 44px minmax(0, 1fr);
		grid-template-areas: "icon value"
		"icon text";
		gap: 4px 14px;
		align-items: center;
	}

	.company-about-v2-proof li:after {
		display: none;
		content: none;
	}

	.company-about-v2-proof i {
		position: relative;
		display: grid;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		margin-bottom: 16px;
		border-radius: 18px;
		background: #fff !important;
		place-items: center;
		box-shadow: inset 0 0 0 1px rgba(35, 49, 54, 0.08), 0 10px 20px rgba(103, 75, 43, 0.08);
		grid-area: icon;
		margin: 0 !important;
	}

	.company-about-v2-proof i:before {
		content: "";
		position: static;
		display: block;
		width: 30px;
		height: 30px;
		background-color: currentColor !important;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		-webkit-mask-position: center;
		mask-position: center;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-size: contain;
	}

	.company-about-v2-proof i:after {
		content: "";
		position: absolute;
		display: none !important;
	}

	.company-about-v2-proof__item--operate i:before {
		left: 10px;
		top: 10px;
		width: 18px;
		height: 18px;
		border: 3px solid var(--brand-orange);
		border-radius: 50%;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='3'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 17v4'/%3E%3Cpath d='M8.5 11.5l2.4 2.4 4.8-5.1'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='3'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 17v4'/%3E%3Cpath d='M8.5 11.5l2.4 2.4 4.8-5.1'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-about-v2-proof__item--operate i:after {
		left: 20px;
		top: 11px;
		width: 3px;
		height: 10px;
		background: var(--brand-orange);
		transform-origin: bottom;
		transform: rotate(38deg);
	}

	.company-about-v2-proof__item--support i {
		background: #dff1ec;
		color: #2f7d73;
	}

	.company-about-v2-proof__item--support i:before {
		width: 14px;
		height: 14px;
		border-radius: 50%;
		border: 3px solid var(--tsuku-green);
		left: 9px;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 20v-1.5a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4V20'/%3E%3Ccircle cx='10' cy='7.5' r='3.5'/%3E%3Cpath d='M20 20v-1a3.5 3.5 0 0 0-2.5-3.3'/%3E%3Cpath d='M16.5 4.3a3.5 3.5 0 0 1 0 6.4'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 20v-1.5a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4V20'/%3E%3Ccircle cx='10' cy='7.5' r='3.5'/%3E%3Cpath d='M20 20v-1a3.5 3.5 0 0 0-2.5-3.3'/%3E%3Cpath d='M16.5 4.3a3.5 3.5 0 0 1 0 6.4'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-about-v2-proof__item--support i:after {
		width: 14px;
		height: 14px;
		border-radius: 50%;
		border: 3px solid var(--tsuku-green);
		right: 9px;
	}

	.company-about-v2-proof__item--field i {
		background: #fbe0e9;
		color: #d94372;
	}

	.company-about-v2-proof__item--field i:before {
		width: 20px;
		height: 15px;
		border: 3px solid #e85c86;
		border-top: 0;
		border-radius: 0 0 14px 14px;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-4.4 7-10.2A4.6 4.6 0 0 0 12 7a4.6 4.6 0 0 0-7 3.8C5 16.6 12 21 12 21z'/%3E%3Cpath d='M8.4 12.4h2.2l1.1-2.3 1.7 4.4 1-2.1h1.9'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-4.4 7-10.2A4.6 4.6 0 0 0 12 7a4.6 4.6 0 0 0-7 3.8C5 16.6 12 21 12 21z'/%3E%3Cpath d='M8.4 12.4h2.2l1.1-2.3 1.7 4.4 1-2.1h1.9'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-about-v2-proof__item--field i:after {
		top: 12px;
		width: 24px;
		height: 3px;
		background: #e85c86;
	}

	.company-about-v2-proof strong {
		display: block;
		color: var(--tsuku-ink);
		font-size: 26px !important;
		font-weight: 900 !important;
		line-height: 1.2;
		font-family: inherit !important;
		letter-spacing: 0 !important;
		grid-area: value;
	}

	.company-about-v2-proof p {
		display: block;
		margin-top: 2px !important;
		color: var(--tsuku-text);
		font-size: 13px !important;
		line-height: 1.75;
		grid-area: text;
	}

	.company-about-v2-proof strong span {
		display: inline;
		color: var(--brand-orange);
		font-size: 1.32em;
		font-family: inherit !important;
		font-weight: 900 !important;
		line-height: 0.92;
		letter-spacing: 0 !important;
	}

	.company-about-v2-proof__item--support strong span {
		color: #2f7d73 !important;
	}

	.company-about-v2-proof__item--field strong {
		color: #d94372 !important;
	}

	.company-about-v2-story {
		background: #fff;
		box-shadow: 0 0 0 100vmax #fff !important;
	}

	.company-about-v2-profile-section {
		background: #fff;
		box-shadow: 0 0 0 100vmax #fff !important;
	}

	.company-about-v2-policy {
		background: #eef6f2;
		box-shadow: 0 0 0 100vmax #eef6f2 !important;
	}

	.company-about-v2-info {
		background: #fbf7ef;
		box-shadow: 0 0 0 100vmax #fbf7ef !important;
	}

	.company-about-v2-heading {
		margin-bottom: 24px;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-heading h2 {
		margin: 0;
		padding: 0;
		background: none;
		color: var(--tsuku-ink);
		font-size: 25px !important;
		font-weight: 800;
		line-height: 1.42 !important;
		letter-spacing: 0;
	}

	.company-about-v2-story__grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 16px;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-values {
		display: grid;
		grid-template-columns: 1fr;
		gap: 14px !important;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-profile {
		display: grid;
		grid-template-columns: 1fr;
		gap: 24px;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.company-about-v2-story__lead {
		font-size: 17px !important;
		font-weight: 800 !important;
		line-height: 1.85 !important;
		color: var(--tsuku-ink) !important;
	}

	.company-about-v2-story__note {
		padding: 22px 20px !important;
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.82);
		padding-right: 20px !important;
		padding-left: 20px !important;
		border-left: 4px solid rgba(231, 119, 53, 0.42);
	}

	.company-about-v2-values > div {
		padding: 22px 20px !important;
		border-radius: 8px;
		background: #fff !important;
		border: 1px solid rgba(35, 49, 54, 0.08);
		box-shadow: 0 14px 30px rgba(103, 75, 43, 0.07);
		padding-right: 20px !important;
		padding-left: 20px !important;
		display: grid !important;
		grid-template-columns: 46px minmax(0, 1fr);
		grid-template-areas: "icon num"
		"icon title"
		"text text";
		gap: 4px 14px !important;
		min-height: 0 !important;
	}

	.company-about-v2-values__icon {
		position: relative;
		display: inline-flex;
		width: 44px !important;
		height: 44px !important;
		margin-bottom: 18px;
		border-radius: 16px !important;
		background: rgba(231, 119, 53, 0.13);
		grid-area: icon;
		align-self: start;
		margin: 0 !important;
	}

	.company-about-v2-values__icon:before {
		content: "";
		position: absolute;
	}

	.company-about-v2-values__icon:after {
		content: "";
		position: absolute;
	}

	.company-about-v2-values__icon--field:before {
		inset: 12px 10px 13px;
		border: 3px solid var(--brand-orange);
		border-top: 0;
		border-radius: 0 0 12px 12px;
	}

	.company-about-v2-values__icon--field:after {
		top: 12px;
		left: 10px;
		width: 20px;
		height: 3px;
		background: var(--brand-orange);
	}

	.company-about-v2-values__icon--safe {
		background: rgba(47, 125, 115, 0.13);
	}

	.company-about-v2-values__icon--safe:before {
		left: 11px;
		top: 9px;
		width: 18px;
		height: 21px;
		border: 3px solid var(--tsuku-green);
		border-radius: 10px 10px 8px 8px;
	}

	.company-about-v2-values__icon--safe:after {
		left: 17px;
		top: 19px;
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background: var(--tsuku-green);
	}

	.company-about-v2-values__icon--grow {
		background: rgba(232, 92, 134, 0.13);
	}

	.company-about-v2-values__icon--grow:before {
		left: 12px;
		bottom: 10px;
		width: 8px;
		height: 17px;
		border-radius: 8px 8px 0 0;
		background: #e85c86;
	}

	.company-about-v2-values__icon--grow:after {
		right: 10px;
		top: 11px;
		width: 13px;
		height: 13px;
		border-radius: 13px 13px 13px 0;
		background: #e85c86;
		transform: rotate(-24deg);
	}

	.company-about-v2-story__note span {
		display: block;
		margin-bottom: 12px !important;
		color: var(--brand-orange);
		font-size: 12px !important;
		font-weight: 800;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.company-about-v2-values span {
		display: block;
		margin-bottom: 10px;
		color: var(--brand-orange);
		font-size: 28px !important;
		font-weight: 800;
		line-height: 1 !important;
		grid-area: num;
		margin: 0 !important;
	}

	.company-about-v2-values h3 {
		margin: 0 !important;
		padding: 0;
		border: 0;
		color: var(--tsuku-ink);
		font-size: 18px !important;
		font-weight: 800;
		line-height: 1.45 !important;
		letter-spacing: 0;
		grid-area: title;
	}

	.company-about-v2-values p {
		font-size: 14px !important;
		line-height: 1.85 !important;
		grid-area: text;
		margin-top: 12px !important;
	}

	.company-about-v2-story__note p {
		font-size: 14px !important;
		line-height: 1.9 !important;
	}

	.company-about-v2-profile__body p:not(.company-profile__name):not(.company-profile__role) {
		font-size: 15px;
		line-height: 1.9;
	}

	.company-about-v2-profile__image img {
		display: block;
		width: 100%;
		aspect-ratio: 1 / 1;
		object-fit: cover;
		border-radius: 8px;
	}

	.company-about-v2-table {
		display: block;
		width: min(100%, 320px) !important;
		overflow: hidden;
		border-radius: 8px;
		background: #fff !important;
		box-shadow: 0 14px 30px rgba(103, 75, 43, 0.07);
		border: 1px solid rgba(35, 49, 54, 0.08);
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-table tbody {
		display: block;
		width: 100%;
	}

	.company-about-v2-table tr {
		display: block;
		width: 100%;
	}

	.company-about-v2-table th {
		display: block;
		width: 100%;
		padding: 15px 18px;
		border-bottom: 1px solid rgba(35, 49, 54, 0.1);
		line-height: 1.75;
		background: #fff7ef !important;
		color: var(--tsuku-ink);
		font-weight: 800;
		text-align: left;
	}

	.company-about-v2-table td {
		display: block;
		width: 100%;
		padding: 15px 18px;
		border-bottom: 1px solid rgba(35, 49, 54, 0.1);
		line-height: 1.75;
	}

	.company-about-v2 .company-about-v2-hero h1 {
		max-width: 100% !important;
		font-size: 25px !important;
		line-height: 1.52 !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
		text-shadow: none !important;
		font-family: inherit !important;
		font-weight: 900 !important;
		letter-spacing: 0 !important;
	}

	.company-about-v2-hero__content {
		min-width: 0;
		max-width: 320px !important;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
		width: min(100%, 320px) !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-about-v2-hero__content p {
		min-width: 0;
		max-width: 100%;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
	}

	.company-about-v2 .company-about-v2-hero h1 em {
		color: #df6f2d !important;
		font-style: normal !important;
		text-shadow: none !important;
		font-family: inherit !important;
		font-weight: 900 !important;
		letter-spacing: 0 !important;
		background: linear-gradient(transparent 62%, rgba(231, 119, 53, 0.16) 62%) !important;
		padding: 0 0.08em !important;
		display: inline !important;
		box-decoration-break: clone;
		-webkit-box-decoration-break: clone;
	}

	.company-about-v2-proof__item--operate {
		background: #fff7ef !important;
	}

	.company-about-v2-proof__item--support {
		background: #f2faf7 !important;
	}

	.company-about-v2-proof__item--field {
		background: #fff3f7 !important;
	}

	.company-about-v2-proof__item--operate i {
		background: #fde6d6;
		color: #e77735;
	}

	.company-about-v2-proof__item--operate strong span {
		color: #e77735 !important;
	}

	.company-about-v2-values > div:nth-child(1) {
		background: #fff7ef;
	}

	.company-about-v2-values > div:nth-child(2) {
		background: #f2faf7;
	}

	.company-about-v2-values > div:nth-child(3) {
		background: #fff3f7;
	}

	.page .article.company-contact-v2 {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fbf7ef !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		color: var(--tsuku-ink);
		overflow: visible !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.company-contact-v2-hero {
		width: 100% !important;
		margin: 0 auto;
		display: grid;
		gap: 24px !important;
		padding: 54px 0 34px;
		position: relative;
		left: auto !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		padding-top: 34px !important;
		padding-bottom: 30px !important;
	}

	.company-contact-v2-main {
		width: 100% !important;
		margin: 0 auto;
		display: block !important;
		gap: 20px;
		padding: 0 0 58px;
		position: relative;
		left: auto !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		padding-top: 0 !important;
		padding-bottom: 56px !important;
	}

	.company-contact-v2-hero h1 {
		margin: 10px 0 20px;
		color: var(--tsuku-ink);
		font-size: 26px !important;
		font-weight: 900;
		line-height: 1.5 !important;
		letter-spacing: 0;
		text-shadow: none !important;
	}

	.company-contact-v2-hero__body > p:not(.company-page-hero__label) {
		color: #4b5b5f;
		font-size: 14px !important;
		font-weight: 500;
		line-height: 1.9 !important;
	}

	.company-contact-v2-hero__visual {
		position: relative;
		min-height: 300px !important;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-contact-v2-hero__visual:before {
		content: "";
		position: absolute;
		inset: 10% 0 10% 6%;
		background: linear-gradient(135deg, rgba(231, 119, 53, 0.12), rgba(47, 125, 115, 0.13));
		border-radius: 24px;
		transform: rotate(-2deg);
	}

	.company-contact-v2-hero__screen {
		position: relative;
		z-index: 1;
		overflow: hidden;
		border-radius: 10px;
		background: #fff;
		box-shadow: 0 18px 42px rgba(103, 75, 43, 0.14);
	}

	.company-contact-v2-hero__screen img {
		display: block;
		width: 100%;
		height: auto;
	}

	.company-contact-v2-hero__note {
		position: relative;
		z-index: 2;
		width: calc(100% - 28px) !important;
		margin: -18px auto 0;
		padding: 16px 18px !important;
		border-radius: 8px;
		background: #fff;
		box-shadow: 0 14px 34px rgba(103, 75, 43, 0.13);
	}

	.company-contact-v2-hero__note span {
		display: block;
		margin-bottom: 6px;
		color: #e77735;
		font-size: 11px;
		font-weight: 900;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.company-contact-v2-hero__note p {
		margin: 0;
		color: #425257;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.7;
	}

	.company-contact-v2-guide {
		background: #fff;
		border: 1px solid rgba(35, 49, 54, 0.08);
		border-radius: 10px;
		box-shadow: 0 14px 32px rgba(103, 75, 43, 0.08);
		padding: 26px 22px;
	}

	.company-contact-v2-form {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		padding: 0 !important;
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-contact-v2-guide__head h2 {
		margin: 8px 0 12px;
		padding: 0 !important;
		background: none !important;
		border: 0 !important;
		box-shadow: none !important;
		color: var(--tsuku-ink);
		font-size: 24px;
		font-weight: 900;
		line-height: 1.42;
		letter-spacing: 0;
	}

	.company-contact-form__head h2 {
		margin: 8px 0 12px;
		padding: 0 !important;
		background: none !important;
		border: 0 !important;
		box-shadow: none !important;
		color: var(--tsuku-ink);
		font-size: 23px !important;
		font-weight: 900;
		line-height: 1.42 !important;
		letter-spacing: 0;
	}

	.company-contact-v2-guide__head h2:before {
		display: none !important;
	}

	.company-contact-v2-guide__head h2:after {
		display: none !important;
	}

	.company-contact-form__head h2:before {
		display: none !important;
	}

	.company-contact-form__head h2:after {
		display: none !important;
	}

	.company-contact-v2-guide__list {
		margin: 22px 0 0;
		padding: 0;
		list-style: none;
	}

	.company-contact-v2-guide__list li {
		display: grid;
		grid-template-columns: 42px 1fr;
		gap: 14px;
		margin: 0;
		padding: 18px 0;
		border-top: 1px solid rgba(35, 49, 54, 0.08);
	}

	.company-contact-v2-guide__list li:before {
		display: none !important;
	}

	.company-contact-v2-guide__icon {
		display: grid;
		place-items: center;
		width: 42px;
		height: 42px;
		border-radius: 14px;
		background: #fff7ef;
		color: #e77735;
		box-shadow: inset 0 0 0 1px rgba(231, 119, 53, 0.18);
	}

	.company-contact-v2-guide__icon:before {
		content: "";
		display: block;
		width: 23px;
		height: 23px;
		background: currentColor;
		-webkit-mask-position: center;
		mask-position: center;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-size: contain;
	}

	.company-contact-v2-guide__icon--service:before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='3'/%3E%3Cpath d='M8 21h8M12 18v3M8 11h3l2-3 3 6h2'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='3'/%3E%3Cpath d='M8 21h8M12 18v3M8 11h3l2-3 3 6h2'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-contact-v2-guide__icon--operation {
		background: #f2faf7;
		color: #2f7d73;
		box-shadow: inset 0 0 0 1px rgba(47, 125, 115, 0.18);
	}

	.company-contact-v2-guide__icon--operation:before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M7 4v6M17 4v6M6 14h5M13 14h5M6 18h3M13 18h5'/%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M7 4v6M17 4v6M6 14h5M13 14h5M6 18h3M13 18h5'/%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-contact-v2-guide__icon--limited {
		background: #fff3f7;
		color: #d94372;
		box-shadow: inset 0 0 0 1px rgba(217, 67, 114, 0.18);
	}

	.company-contact-v2-guide__icon--limited:before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/g%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/g%3E%3C/svg%3E");
	}

	.company-contact-v2-guide__list strong {
		display: block;
		color: var(--tsuku-ink);
		font-size: 15px;
		font-weight: 900;
		line-height: 1.5;
	}

	.company-contact-v2-guide__list p {
		margin: 6px 0 0;
		color: #5b696d;
		font-size: 13px;
		line-height: 1.8;
	}

	.company-contact-v2-guide__caution {
		margin-top: 22px;
		padding: 18px 20px;
		border-radius: 8px;
		background: #fff3f7;
	}

	.company-contact-v2-guide__caution span {
		display: block;
		margin-bottom: 6px;
		color: #d94372;
		font-size: 12px;
		font-weight: 900;
	}

	.company-contact-v2-guide__caution p {
		margin: 0;
		color: #5b4a52;
		font-size: 13px;
		line-height: 1.8;
	}

	.company-contact-form__head {
		margin-bottom: 22px;
	}

	.company-contact-form__head p:not(.company-section-head__label) {
		margin: 0;
		color: #5b696d;
		font-size: 13px !important;
		line-height: 1.75 !important;
	}

	.company-contact-form__errors {
		margin: 0 0 20px;
		padding: 14px 16px;
		border-radius: 8px;
		background: #fff3f7;
		color: #b8335e;
		font-weight: 700;
		line-height: 1.7;
	}

	.company-contact-form__errors p {
		margin: 0;
	}

	.company-contact-form__grid {
		display: block;
		gap: 18px;
	}

	.company-contact-form label {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-bottom: 8px;
		color: var(--tsuku-ink);
		font-size: 13px !important;
		font-weight: 900;
		line-height: 1.4;
	}

	.company-contact-form label span {
		display: inline-flex;
		align-items: center;
		height: 19px;
		padding: 0 8px;
		border-radius: 999px;
		background: #fff0e5;
		color: #e77735;
		font-size: 10px;
		font-weight: 900;
	}

	.company-contact-form input[type="text"] {
		width: 100% !important;
		border: 1px solid rgba(35, 49, 54, 0.12);
		border-radius: 8px;
		background: #fff;
		color: var(--tsuku-ink);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.5;
	}

	.company-contact-form input[type="email"] {
		width: 100% !important;
		border: 1px solid rgba(35, 49, 54, 0.12);
		border-radius: 8px;
		background: #fff;
		color: var(--tsuku-ink);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.5;
	}

	.company-contact-form input[type="url"] {
		width: 100% !important;
		border: 1px solid rgba(35, 49, 54, 0.12);
		border-radius: 8px;
		background: #fff;
		color: var(--tsuku-ink);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.5;
	}

	.company-contact-form select {
		width: 100% !important;
		border: 1px solid rgba(35, 49, 54, 0.12);
		border-radius: 8px;
		background: #fff;
		color: var(--tsuku-ink);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.5;
		height: 52px;
		padding: 0 14px;
	}

	.company-contact-form textarea {
		width: 100% !important;
		border: 1px solid rgba(35, 49, 54, 0.12);
		border-radius: 8px;
		background: #fff;
		color: var(--tsuku-ink);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.5;
		min-height: 190px;
		padding: 14px;
		resize: vertical;
	}

	.company-contact-form input::placeholder {
		color: rgba(85, 95, 99, 0.58);
		font-weight: 400;
	}

	.company-contact-form textarea::placeholder {
		color: rgba(85, 95, 99, 0.58);
		font-weight: 400;
	}

	.company-contact-form input {
		height: 52px;
		padding: 0 14px;
	}

	.company-contact-form input:focus {
		border-color: #e77735;
		background: #fff;
		box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
		outline: 0;
	}

	.company-contact-form select:focus {
		border-color: #e77735;
		background: #fff;
		box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
		outline: 0;
	}

	.company-contact-form textarea:focus {
		border-color: #e77735;
		background: #fff;
		box-shadow: 0 0 0 4px rgba(231, 119, 53, 0.12);
		outline: 0;
	}

	.company-contact-form__privacy {
		margin-top: 2px;
		padding: 16px;
		border-radius: 8px;
		background: #f2faf7;
	}

	.company-contact-form__privacy label {
		display: flex;
		align-items: flex-start;
		gap: 10px;
		margin: 0;
		color: #425257;
		font-size: 13px;
		font-weight: 800;
		line-height: 1.7;
	}

	.company-contact-form__privacy input {
		width: 18px;
		height: 18px;
		margin-top: 2px;
		accent-color: #2f7d73;
		flex: 0 0 auto;
	}

	.company-contact-form__privacy label span {
		display: inline;
		height: auto;
		padding: 0;
		border-radius: 0;
		background: none;
		color: inherit;
		font-size: inherit;
		font-weight: inherit;
	}

	.company-contact-form__submit {
		display: grid;
		gap: 12px;
		margin-top: 24px;
		padding-top: 22px;
		border-top: 1px solid rgba(35, 49, 54, 0.08);
	}

	.company-contact-form__submit .company-btn {
		width: 100%;
		border: 0;
		cursor: pointer;
	}

	.company-contact-form__submit p {
		margin: 0;
		color: #69777a;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.6;
		text-align: center;
	}

	.company-contact-form {
		padding: 28px 18px 30px !important;
		border: 1px solid rgba(35, 49, 54, 0.08);
		border-radius: 12px !important;
		background: #fff;
		box-shadow: 0 14px 32px rgba(103, 75, 43, 0.08);
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.company-contact-form__flow {
		display: grid;
		grid-template-columns: 1fr;
		gap: 8px;
		margin: 0 0 24px;
	}

	.company-contact-form__flow div {
		display: flex;
		align-items: center;
		gap: 9px;
		min-height: 46px;
		padding: 12px 14px;
		border-radius: 8px;
		background: #f6faf8;
		color: #425257;
		font-size: 13px;
		font-weight: 900;
		line-height: 1.45;
	}

	.company-contact-form__flow span {
		display: grid;
		place-items: center;
		width: 24px;
		height: 24px;
		border-radius: 50%;
		background: #2f7d73;
		color: #fff;
		font-size: 12px;
		font-weight: 900;
		flex: 0 0 auto;
	}

	.company-contact-form__section {
		padding: 22px 0 !important;
		border-top: 1px solid rgba(35, 49, 54, 0.08);
	}

	.company-contact-form__section:first-of-type {
		border-top: 0;
		padding-top: 2px;
	}

	.company-contact-form__section h3 {
		margin: 0 0 18px;
		color: var(--tsuku-ink);
		font-size: 17px !important;
		font-weight: 900;
		line-height: 1.45;
		letter-spacing: 0;
	}

	.company-contact-form__section h3:before {
		display: none !important;
	}

	.company-contact-form__section h3:after {
		display: none !important;
	}

	.company-contact-form__item {
		margin: 0 0 18px;
	}

	.company-contact-form__item:last-child {
		margin-bottom: 0;
	}

	.company-contact-form__hint {
		margin: 8px 0 0;
		color: #7a8588;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.6;
	}

	.company-contact-v2 .company-contact-v2-hero {
		min-height: 0 !important;
		padding-top: 0 !important;
		padding-bottom: 22px !important;
	}

	.company-contact-v2 .company-contact-v2-hero__visual {
		min-height: 230px !important;
	}

	.company-contact-v2 .company-contact-v2-main {
		padding-top: 18px !important;
		padding-bottom: 58px !important;
	}

	.page .article:not(.company-home):not(.company-about):not(.company-about-v2):not(.company-contact-v2) {
		width: calc(100% - 40px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		box-sizing: border-box;
	}

	.company-about-v2 {
		width: 100%;
		max-width: 100%;
	}

	.company-contact-v2 {
		width: 100%;
		max-width: 100%;
	}

	.company-contact-v2-hero__body {
		width: min(100%, 320px) !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.page .article.company-contact-v2 .company-contact-v2-main {
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.page .article.company-contact-v2 .company-contact-v2-form {
		width: 100% !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.page .article.company-contact-v2 .company-contact-form {
		width: 100% !important;
		max-width: 320px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding: 28px 18px 30px !important;
	}

	body.page-about #wrap.content-range {
		width: 100% !important;
		max-width: none !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
		min-width: 0 !important;
		margin: 0 !important;
		overflow: hidden !important;
	}

	body.page-contact #wrap.content-range {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.page-about #main {
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		overflow: visible !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.page-contact #main {
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		overflow: hidden !important;
	}

	body.page-about .article.company-about-v2 {
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		overflow: visible !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.page-contact .article.company-contact-v2 {
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		overflow: hidden !important;
	}

	body.page-about .company-about-v2-hero {
		position: relative !important;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		clip-path: none !important;
		background: #fbf7ef !important;
		display: flex !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		overflow: visible !important;
		transform: none !important;
		padding-top: 44px !important;
		padding-bottom: 42px !important;
		flex-direction: column !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		box-shadow: none !important;
	}

	body.page-about .company-about-v2-section {
		position: relative !important;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		clip-path: none !important;
		display: block !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		overflow: visible !important;
		transform: none !important;
		padding-top: 52px !important;
		padding-bottom: 54px !important;
		box-shadow: none !important;
	}

	body.page-contact .company-contact-v2-hero {
		position: relative;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		clip-path: none !important;
		background: #fbf7ef !important;
	}

	body.page-contact .company-contact-v2-main {
		position: relative;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		clip-path: none !important;
		background: #fbf7ef !important;
	}

	body.page-contact .article.company-contact-v2 .company-contact-v2-main {
		position: relative;
		left: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
		clip-path: none !important;
	}

	body.page-about .company-about-v2-story {
		background: #fff !important;
		box-shadow: none !important;
	}

	body.page-about .company-about-v2-profile-section {
		background: #fff !important;
		box-shadow: none !important;
	}

	body.page-about .company-about-v2-policy {
		background: #eef6f2 !important;
		box-shadow: none !important;
	}

	body.page-about .company-about-v2-info {
		background: #fbf7ef !important;
		box-shadow: none !important;
	}

	body.page-about {
		overflow-x: hidden !important;
	}

	body.page-about .company-about-v2-hero__content {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		z-index: 2 !important;
		flex: 0 0 auto !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		padding: 0 !important;
		background: transparent !important;
		clip-path: none !important;
		overflow: visible !important;
		isolation: auto !important;
	}

	body.page-about .company-about-v2-proof {
		position: relative !important;
		display: grid !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
		margin-top: 28px !important;
		padding: 0 !important;
		z-index: 2 !important;
		flex: 0 0 auto !important;
	}

	body.page-about .company-about-v2-heading {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}

	body.page-about .company-about-v2-story__grid {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}

	body.page-about .company-about-v2-values {
		position: relative !important;
		display: grid !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.page-about .company-about-v2-profile {
		position: relative !important;
		display: grid !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.page-about .company-about-v2-table {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		overflow-x: auto !important;
	}

	body.page-about .company-about-v2-hero__content > * {
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.page-about .company-page-hero__label {
		margin-bottom: 14px !important;
		font-size: 13px !important;
		line-height: 1.2 !important;
	}

	body.page-about .company-about-v2-hero h1 {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		font-size: 23px !important;
		font-weight: 900 !important;
		line-height: 1.55 !important;
		letter-spacing: 0 !important;
		white-space: normal !important;
		overflow: visible !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
		text-shadow: none !important;
	}

	body.page-about .company-about-v2-hero h1 em {
		display: inline !important;
		max-width: 100% !important;
		padding: 0 !important;
		background: none !important;
		white-space: normal !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
	}

	body.page-about .company-about-v2-hero h1 span {
		display: inline !important;
		max-width: 100% !important;
		padding: 0 !important;
		background: none !important;
		white-space: normal !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
	}

	body.page-about .company-about-v2-hero__content > p:not(.company-page-hero__label) {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 20px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		line-height: 1.95 !important;
		letter-spacing: 0 !important;
		white-space: normal !important;
		overflow: visible !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
		margin: 20px 0 0 !important;
		color: #4f6468 !important;
		-webkit-text-fill-color: #4f6468 !important;
		font-family: 'Noto Sans JP', Hiragino Sans, Hiragino Kaku Gothic ProN, Meiryo, sans-serif !important;
		text-align: left !important;
	}

	body.page-about .company-about-v2-visual {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
	}

	body.page-about .company-about-v2-proof li {
		display: grid !important;
		grid-template-columns: 44px minmax(0, 1fr) !important;
		grid-template-areas: "icon value"
		"icon text" !important;
		gap: 4px 14px !important;
		align-items: center !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		padding: 20px !important;
		text-align: left !important;
	}

	body.page-about .company-about-v2-proof i {
		grid-area: icon !important;
		margin: 0 !important;
	}

	body.page-about .company-about-v2-proof strong {
		grid-area: value !important;
		font-size: 28px !important;
		line-height: 1 !important;
	}

	body.page-about .company-about-v2-proof p {
		grid-area: text !important;
		margin: 2px 0 0 !important;
		font-size: 13px !important;
		line-height: 1.45 !important;
	}

	body.page-about .company-about-v2 {
		content-visibility: visible !important;
		contain: none !important;
	}

	body.page-about .company-about-v2 * {
		content-visibility: visible !important;
		contain: none !important;
	}

	body.page-about .company-about-v2 *:before {
		content-visibility: visible !important;
		contain: none !important;
	}

	body.page-about .company-about-v2 *:after {
		content-visibility: visible !important;
		contain: none !important;
	}

	body.page-about .company-about-v2-hero__content > .company-page-hero__label {
		position: static !important;
		display: block !important;
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		clip: auto !important;
		clip-path: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		mix-blend-mode: normal !important;
		text-indent: 0 !important;
		margin: 0 0 14px !important;
		color: #4f6468 !important;
		-webkit-text-fill-color: #4f6468 !important;
	}

	body.page-about .company-about-v2-hero__content > h1 {
		position: static !important;
		display: block !important;
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		clip: auto !important;
		clip-path: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		mix-blend-mode: normal !important;
		text-indent: 0 !important;
		margin: 0 !important;
		color: #22282b !important;
		-webkit-text-fill-color: #22282b !important;
		font-family: 'Noto Sans JP', Hiragino Sans, Hiragino Kaku Gothic ProN, Meiryo, sans-serif !important;
		font-size: 23px !important;
		font-weight: 900 !important;
		line-height: 1.55 !important;
		text-align: left !important;
	}

	body.page-about .company-about-v2-hero__content > p {
		position: static !important;
		display: block !important;
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		clip: auto !important;
		clip-path: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		mix-blend-mode: normal !important;
		text-indent: 0 !important;
	}

	body.page-about .company-about-v2-hero__content > h1 em {
		display: inline !important;
		color: #df6f2d !important;
		-webkit-text-fill-color: #df6f2d !important;
		font-style: normal !important;
	}
}

@media screen and (max-width: 900px) {
	.company-about-v2-hero {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.company-about-v2-visual {
		width: min(100%, 560px);
		margin-right: auto;
		margin-left: auto;
		overflow: hidden;
	}

	.company-about-v2-visual__sub {
		right: 0;
	}

	.company-about-v2-story__grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.company-about-v2-values {
		grid-template-columns: 1fr;
	}

	.company-about-v2-profile {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.company-contact-v2 .company-contact-v2-main {
		width: calc(100% - 40px) !important;
		padding: 0 0 58px !important;
		padding-top: 18px !important;
	}

	.company-contact-v2 .company-contact-form {
		padding: 30px 22px 32px !important;
		border-radius: 10px !important;
	}

	.company-contact-v2 .company-contact-form__flow {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		margin-bottom: 24px !important;
	}

	.company-contact-v2 .company-contact-form__section {
		padding: 24px 0 !important;
	}

	.company-contact-v2 .company-contact-form__section h3 {
		font-size: 18px !important;
	}

	.company-contact-v2 .company-contact-form__item {
		margin-bottom: 18px !important;
	}

	.company-contact-v2 .company-contact-v2-hero {
		min-height: 0 !important;
		padding-top: 34px !important;
		padding-bottom: 24px !important;
	}

	.company-contact-v2 .company-contact-v2-hero__visual {
		min-height: 230px !important;
	}

	.page .article.company-about-v2 {
		width: calc(100% - 40px) !important;
		max-width: calc(100% - 40px) !important;
		overflow: hidden;
	}

	.company-about-v2-hero h1 {
		font-size: 25px;
		line-height: 1.55;
		overflow-wrap: anywhere;
	}

	.company-about-v2-visual {
		overflow: hidden;
		min-height: 250px;
	}

	.company-about-v2-visual img {
		width: 82%;
	}

	.company-about-v2-visual__sub {
		right: 0;
	}

	.company-contact-v2-hero {
		grid-template-columns: 1fr;
		min-height: 0;
		width: calc(100% - 40px);
		display: grid;
		gap: 28px;
		padding: 54px 0 34px;
	}

	.company-contact-v2-main {
		width: calc(100% - 40px);
		padding: 0 0 56px;
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.company-contact-form {
		padding: 30px 22px 32px;
		border-radius: 10px;
	}

	.company-contact-form__flow {
		grid-template-columns: 1fr;
		gap: 8px;
		margin-bottom: 24px;
	}

	.company-contact-form__section {
		padding: 24px 0;
	}

	.company-contact-form__section h3 {
		font-size: 18px;
	}

	.company-contact-form__item {
		margin-bottom: 18px;
	}

	.company-contact-form textarea {
		min-height: 190px;
	}

	.company-about-v2 .company-about-v2-hero h1 {
		max-width: 100% !important;
		font-size: 23px !important;
		line-height: 1.58 !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
	}

	.company-about-v2-hero__content {
		min-width: 0;
		max-width: 100%;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
	}

	.company-about-v2-hero__content p {
		min-width: 0;
		max-width: 100%;
		overflow-wrap: anywhere !important;
		word-break: break-all !important;
	}

	.page .article.company-contact-v2 {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
	}

	.company-contact-v2-hero h1 {
		max-width: 100%;
		margin: 10px 0 20px;
		font-size: 28px !important;
		line-height: 1.48;
		overflow-wrap: anywhere;
	}

	.company-contact-v2-hero__body > p:not(.company-page-hero__label) {
		font-size: 15px;
		line-height: 1.95;
	}

	.company-contact-v2-hero__visual {
		min-height: 250px;
	}

	.company-contact-v2-hero__note {
		position: relative;
		right: auto;
		bottom: auto;
		width: calc(100% - 32px);
		margin: -18px auto 0;
		padding: 18px 20px;
	}

	.company-contact-v2-guide {
		position: static;
		padding: 26px 22px;
	}

	.company-contact-v2-form {
		padding: 28px 22px 30px;
	}

	.company-contact-form__grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.company-contact-form__submit {
		display: grid;
		gap: 12px;
	}

	.company-contact-form__submit .company-btn {
		width: 100%;
	}

	.company-contact-form__submit p {
		font-size: 12px;
		text-align: center;
	}
}

@media screen and (max-width: 767px) {
	.page .article.company-about {
		padding: 0 0 48px;
		max-width: 100%;
	}

	.company-about-hero {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 52px 0 36px;
		padding-top: 48px;
		padding-bottom: 46px;
	}

	.company-about-hero h1 {
		font-size: 25px;
		line-height: 1.55;
		overflow-wrap: anywhere;
	}

	.company-about .company-page-section {
		padding: 50px 0;
	}

	.company-about-values {
		grid-template-columns: 1fr !important;
	}

	.company-about-service-list {
		grid-template-columns: 1fr !important;
	}

	.company-about-values > div {
		min-height: 0;
		padding: 22px;
	}

	.company-about-profile {
		grid-template-columns: 1fr !important;
		gap: 20px;
		padding: 0;
		background: transparent;
	}

	.company-about-hero__proof {
		grid-template-columns: 1fr !important;
		gap: 0;
		margin-top: 30px;
		padding: 18px 20px;
		margin: 22px 0 0;
	}

	.company-about-hero__proof li {
		padding: 18px 20px;
	}

	.company-about-hero__proof li + li {
		border-top: 1px solid rgba(35, 49, 54, 0.1);
		border-left: 0;
	}

	.company-about-hero__body {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.company-about-meaning {
		padding: 20px;
	}

	.page .article.company-about-v2 {
		max-width: 100%;
		padding-bottom: 50px;
	}

	.company-about-v2-hero {
		grid-template-columns: 1fr;
		gap: 30px;
		padding: 52px 0 54px;
	}

	.company-about-v2-hero h1 {
		font-size: 28px;
		line-height: 1.55;
	}

	.company-about-v2-hero__content > p:not(.company-page-hero__label) {
		margin-top: 18px;
		font-size: 15px;
		line-height: 1.95;
	}

	.company-about-v2-visual {
		min-height: 245px;
	}

	.company-about-v2-visual:before {
		inset: 36px 0 0 44px;
	}

	.company-about-v2-visual img {
		width: 84%;
		border-radius: 10px;
		box-shadow: 0 16px 34px rgba(103, 75, 43, 0.12);
	}

	.company-about-v2-proof {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.company-about-v2-values {
		grid-template-columns: 1fr;
	}

	.company-about-v2-story__grid {
		grid-template-columns: 1fr;
	}

	.company-about-v2-profile {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.company-about-v2-proof li {
		min-height: 0;
		padding: 22px 22px 20px !important;
	}

	.company-about-v2-proof strong {
		font-size: 28px;
	}

	.company-about-v2-section {
		padding: 56px 0;
	}

	.company-about-v2-heading {
		margin-bottom: 24px;
	}

	.company-about-v2-heading h2 {
		font-size: 28px;
	}

	.company-about-v2-story__lead {
		font-size: 20px;
	}

	.company-about-v2-values > div {
		min-height: 0;
		padding: 26px 24px;
	}

	.company-about-v2-profile__body {
		padding: 0;
	}

	.company-about-v2-table {
		display: block;
		width: 100%;
	}

	.company-about-v2-table tbody {
		display: block;
		width: 100%;
	}

	.company-about-v2-table tr {
		display: block;
		width: 100%;
	}

	.company-about-v2-table th {
		display: block;
		width: 100%;
		padding: 15px 18px;
	}

	.company-about-v2-table td {
		display: block;
		width: 100%;
		padding: 15px 18px;
	}
}
