@charset "UTF-8";
/* A Modern CSS Reset */
*, *::before, *::after {
	box-sizing: border-box;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
	margin: 0;
}

ul[role=list], ol[role=list] {
	list-style: none;
}

html:focus-within {
	scroll-behavior: smooth;
}

body {
	min-height: 100vh;
	line-height: 1.5;
	text-rendering: optimizeSpeed;
}

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

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

input, button, textarea, select {
	font: inherit;
}
:root {
	--color-main: #222;
	--color-main-rgb: 51, 51, 51;
	--color-sub: #fff;
	--color-sub-rgb: 255, 255, 255;
}

:root {
	--scrollbar: 0;
}

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

.preload * {
	transition: none !important;
}

html {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-size: 62.5%;
}
html.is-nav-active {
	z-index: 0;
	position: fixed;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body {
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	color: #222;
	font-size: 1.6rem;
	line-height: 1.5;
	font-family: "Noto Sans JP", sans-serif;
}

input,
textarea,
button {
	font-size: inherit;
	line-height: inherit;
	font-family: inherit;
}

button {
	color: inherit;
}

a {
	outline: none;
	color: #222;
	text-decoration: none;
}
img {
	max-width: 100%;
	height: auto;
}

strong,
em,
b {
	font-weight: bold;
}

em {
	font-style: normal;
}

button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background-color: transparent;
	cursor: pointer;
}

b {
	font-weight: bold;
}

ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

sup {
	font-size: 0.75em;
	vertical-align: text-top;
}

.l-header__fixed {
	z-index: 100;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
.is-scrolled .l-header__fixed {
	background: rgba(255, 255, 255, 0.95);
	transition: all 0.5s;
}
.l-header__inner {
	display: flex;
	padding: 0 60px;
}

.l-maincontainer {
	padding-bottom: 50px;
}
.page-home .l-maincontainer {
	padding-bottom: 190px;
}

.c-banner {
	display: block;
	transition: opacity 0.2s ease-out;
}

.c-box-overflow {
	overflow: hidden;
}

.c-button-group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: -5px;
}
.c-button-group > * {
	margin: 5px 5px;
}
.c-button-group__notes {
	width: 100%;
	text-align: center;
}
.c-button-group--left {
	justify-content: flex-start;
}
.c-button-group--right {
	justify-content: flex-end;
}
.c-button-group--horizontal {
	flex-direction: column;
}

.c-button {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	border: 1px solid;
	text-align: center;
	cursor: pointer;
	transition: opacity 0.2s ease-out;
}

.c-card {
	border-radius: 10px;
	background: #fff;
}
.c-card--border {
	border: 1px solid #aaa;
}

.c-font-sans {
	font-family: "Noto Sans JP", sans-serif;
}

.c-font-serif {
	font-family: "Noto Serif JP", serif;
}

.c-font-en {
	font-family: "Cormorant Garamond", sans-serif;
}

.c-font-roboto {
	font-family: "Roboto", sans-serif;
}

.c-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	align-items: stretch;
	gap: 10px;
}
.c-grid__item--12 {
	grid-column: span 12;
}
.c-grid__item--6 {
	grid-column: span 6;
}
.c-grid__item > .c-card {
	min-height: 100%;
}

.c-inner-narrow, .c-inner-wide, .c-inner {
	margin-right: auto;
	margin-left: auto;
	padding-right: 60px;
	padding-left: 60px;
}

.c-inner {
	max-width: 1600px;
}

.c-inner-wide {
	max-width: none;
}

.c-inner-narrow {
	max-width: 1320px;
}

.c-inner-lower {
	max-width: 1120px;
	margin-right: auto;
	margin-left: auto;
}

.c-grid-inner {
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.c-rollover-link {
	transition: opacity 0.2s ease-out;
}

.c-text-link {
	color: #222;
	text-decoration: underline;
}
.c-text-link:hover {
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}
.c-text-link[target=_blank]::after {
	display: inline-block;
	width: 15px;
	height: 11px;
	margin-left: 6px;
	background: url(../images/common/icon_blank.svg) no-repeat left center;
	background-size: contain;
	content: "";
	vertical-align: middle;
}
.c-text-link[href$=pdf]::after {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-left: 6px;
	background: url(../images/common/icon_pdf.png) no-repeat left center;
	background-size: 14px 14px;
	content: "";
	vertical-align: middle;
}

.c-link {
	color: var(--color-main);
}

.c-list-dot__item {
	position: relative;
	padding-left: 1em;
}
.c-list-dot__item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "・";
}
[lang=en] .c-list-dot__item::before {
	top: 0.7em;
	left: calc(0.5em - 2px);
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #222;
	content: "";
}

.c-list-note__item {
	position: relative;
	padding-left: 1em;
}
[lang=en] .c-list-note__item {
	padding-left: 0.5em;
}
.c-list-note__item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※";
}
[lang=en] .c-list-note__item::before {
	content: "*";
}

.c-list-order-notes {
	counter-reset: order;
}
.c-list-order-notes__item {
	position: relative;
	padding-left: 2em;
}
[lang=en] .c-list-order-notes__item {
	padding-left: 1.5em;
}
.c-list-order-notes__item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※" counter(order);
	counter-increment: order;
}
[lang=en] .c-list-order-notes__item::before {
	content: "*" counter(order);
}

.c-list-decimal__item {
	margin-left: 1em;
	padding-left: 0.5em;
	list-style-type: decimal;
}

.c-list-order {
	counter-reset: order;
}
.c-list-order__item {
	position: relative;
	padding-left: 1.5em;
}
.c-list-order__item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: counter(order) ".";
	counter-increment: order;
}

.c-list-roman__item {
	position: relative;
	padding-left: 3em;
}
.c-list-roman__mark {
	position: absolute;
	top: 0;
	left: 0;
	width: 3em;
	padding-right: 0.5em;
	text-align: right;
}

.c-list-data-attr__item {
	position: relative;
}
.c-list-data-attr__item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: attr(data-num);
}
.c-list-data-attr--asterisk-num .c-list-data-attr__item {
	padding-left: 1.5em;
}
.c-list-data-attr--asterisk-num .c-list-data-attr__item::before {
	width: 1.5em;
	height: 1em;
}

.c-list-mark__item {
	position: relative;
	padding-left: 1.5em;
}
.c-list-mark__mark {
	position: absolute;
	top: 0;
	left: 0;
}

.c-desc-list__term:not(:first-child) {
	margin-top: 1em;
}

.c-desc-list-alpha {
	counter-reset: alpha;
}
.c-desc-list-alpha__head {
	position: relative;
	padding-left: 2.5em;
	font-weight: 500;
}
.c-desc-list-alpha__head::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "（" counter(alpha, lower-alpha) "）";
	counter-increment: alpha;
}
.c-desc-list-alpha__desc {
	margin-left: 1em;
}
.c-desc-list-alpha__desc + .c-desc-list-alpha__head {
	margin-top: 1.667em;
}

.c-movie {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: hidden;
}
.c-movie__source {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

.c-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}
.c-table th,
.c-table td {
	text-align: left;
	vertical-align: middle;
}
.c-table caption {
	text-align: left;
}

.c-number {
	font-weight: 500;
}

.c-notes {
	color: #555;
	font-size: 1.4rem;
}

.c-line-clamp-1 {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.c-line-clamp-2 {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.c-ellipsis {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.c-important {
	color: #d93636;
}

.p-announce {
	z-index: 1;
	position: relative;
	padding-top: 55px;
}

.p-announce-list {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
}
.p-announce-list__item {
	min-height: 24px;
	padding-left: 32px;
	background: url(../images/common/icon_alert.svg) no-repeat left top;
	line-height: 1.438;
}
.p-announce-list__item--no-alert {
	position: relative;
	padding: 5px 0 5px 22px;
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
	background: rgba(255, 255, 255, 0.6);
	font-size: 2.2rem;
}
.p-announce-list__item--no-alert::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 9px;
	height: 11px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background: url(../images/common/icon_link.svg) no-repeat 0 center;
	background-size: contain;
	content: "";
}

.p-announce-link {
	color: #0084b2;
}

a.p-announce-link {
	transition: opacity 0.2s ease-out;
}

.p-breadcrumb {
	position: relative;
	max-width: 1240px;
	margin: 0 auto;
	padding: 25px 0 75px;
}
.p-article-header .p-breadcrumb {
	padding-top: 20px;
	padding-bottom: 20px;
}

.p-breadcrumb-list {
	display: flex;
	flex-wrap: wrap;
}
.p-breadcrumb-list__item {
	color: #555;
}
.p-breadcrumb-list__item a {
	display: block;
	position: relative;
	margin-right: 15px;
	padding-right: 20px;
	color: #555;
}
.p-breadcrumb-list__item a:hover {
	text-decoration: underline;
}
.p-breadcrumb-list__item a::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 7px;
	height: 7px;
	margin-top: -3.5px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-right: 1px solid #555;
	border-bottom: 1px solid #555;
	content: "";
}

.p-button {
	width: 200px;
	height: 60px;
	border-radius: 30px;
	transition: all 0.2s ease-out;
}
.p-button--more {
	border-color: #aaa;
	background: url(../images/common/icon_link.svg) no-repeat 0 0;
	background-position: 25px center;
}
.p-button--footer-nav {
	width: 360px;
	height: 80px;
	padding: 0 20px;
	border-radius: 40px;
	border-color: #aaa;
	background: #fff;
	font-size: 1.8rem;
	line-height: 1.333;
}
.p-button--gradient {
	position: relative;
	width: 360px;
	height: 80px;
	border-radius: 40px;
	border-color: transparent;
	background: transparent linear-gradient(99deg, #1f67ab 0%, #24b5a9 100%);
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.333;
}
.p-button--gradient::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 35px;
	width: 11px;
	height: 9.67px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background: url(../images/common/icon_link_white.svg) no-repeat center center;
	background-size: contain;
	content: "";
}
.p-button--link {
	width: 180px;
	border-color: #ccc;
	background-repeat: no-repeat;
}
.p-button--link--prev {
	background-image: url(../images/common/icon_link_prev.svg);
	background-position: 20px center;
}
.p-button--link--next {
	background-image: url(../images/common/icon_link_next.svg);
	background-position: right 20px center;
}
.p-button--link--index {
	background-image: url(../images/common/icon_link_index.svg);
	background-position: 20px center;
}

.p-button-block {
	display: flex;
	justify-content: center;
}

.p-page-footer-button {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 50px auto 0;
}

.p-footer {
	border-top: 1px solid #ddd;
}
.p-footer__nav {
	padding: 35px 0;
	overflow: hidden;
}

.p-footer-nav-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-bottom: -5px;
	font-size: 1.4rem;
	line-height: 1.429;
}
.p-footer-nav-list__item {
	margin: 0 1em 5px;
}

a.p-footer-nav-link {
	transition: opacity 0.2s ease-out;
}

.p-footer-nav-button {
	flex-wrap: wrap;
	max-width: 760px;
	margin: 0 auto 25px;
}
.p-footer-nav-button__item {
	margin: 0 10px 20px;
}

.p-copyright {
	padding-bottom: 70px;
	color: #555;
	font-size: 1.2rem;
	line-height: 1.5;
	text-align: center;
}

.p-header {
	display: flex;
	position: relative;
	flex: 1;
	align-items: center;
	height: 101px;
	padding-top: 41px;
}
.page-home .p-header {
	opacity: 0;
	transition: all 0.3s;
}
.page-home .p-header.is-animation-end {
	opacity: 1;
}
.p-header__col1 {
	display: flex;
	z-index: 100;
	position: relative;
	align-items: center;
	order: 2;
	padding-left: 15px;
}
.p-header__col2 {
	order: 1;
}
.p-header__logo {
	width: 170px;
	height: 36px;
	margin-right: 20px;
	background-color: #0084b2!important;
	-webkit-mask-image: url(../img/common/logo.svg);
	mask-image: url(../img/common/logo.svg);
	-webkit-mask-size: 170px 36px;
	mask-size: 170px 36px;
	transition: background-color 0.5s;
}
.is-scrolled .p-header__logo, .is-nav-active .p-header__logo {
	background-color: #222;
}
.page-common .p-header__logo {
	background-color: #222;
}
.p-header__text {
	padding-bottom: 2px;
	font-weight: 600;
	font-size: 2.6rem;
	line-height: 1;
	font-family: "Cormorant Garamond", sans-serif;
}
.p-header__nav {
	flex: 1;
	padding-top: 9px;
}

.p-hero {
	position: relative;
	background: #000;
}
.p-hero__mv {
	z-index: 0;
	position: relative;
	overflow: hidden;
}
.p-hero__mv img {
	width: 100%;
	-webkit-clip-path: circle(0.1% at 50% 50%);
	clip-path: circle(0.1% at 50% 50%);
}
.p-hero.is-active .p-hero__mv img {
	-webkit-animation: circlezoom 2s cubic-bezier(0.19, 1, 0.22, 1) 0s forwards;
	animation: circlezoom 2s cubic-bezier(0.19, 1, 0.22, 1) 0s forwards;
}
@-webkit-keyframes circlezoom {
	0% {
		-webkit-clip-path: circle(1% at 50% 50%);
		clip-path: circle(1% at 50% 50%);
	}
	100% {
		-webkit-clip-path: circle(100% at 50% 50%);
		clip-path: circle(100% at 50% 50%);
	}
}
@keyframes circlezoom {
	0% {
		-webkit-clip-path: circle(1% at 50% 50%);
		clip-path: circle(1% at 50% 50%);
	}
	100% {
		-webkit-clip-path: circle(100% at 50% 50%);
		clip-path: circle(100% at 50% 50%);
	}
}
.p-hero__title {
	position: absolute;
	top: 19.3125vw;
	left: 18.25vw;
	color: #fff;
	font-size: 5vw;
	line-height: 1.25;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.05em;
	opacity: 0;
}
.p-hero.is-active .p-hero__title {
	-webkit-animation: mvtitle 0.5s 1.5s forwards;
	animation: mvtitle 0.5s 1.5s forwards;
}
@-webkit-keyframes mvtitle {
	100% {
		opacity: 1;
	}
}
@keyframes mvtitle {
	100% {
		opacity: 1;
	}
}
.p-hero__scrolldown {
	z-index: 1;
	position: absolute;
	bottom: -120px;
	left: -75px;
	opacity: 0;
}
.p-hero.is-active .p-hero__scrolldown {
	-webkit-animation: scrollview 0.5s 3s forwards;
	animation: scrollview 0.5s 3s forwards;
}
[lang=en] .p-hero.is-active .p-hero__scrolldown {
	-webkit-animation: scrollview 0.5s 1s forwards;
	animation: scrollview 0.5s 1s forwards;
}
@-webkit-keyframes scrollview {
	100% {
		opacity: 1;
	}
}
@keyframes scrollview {
	100% {
		opacity: 1;
	}
}

.p-box-link {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 20px;
	border: 1px solid #aaa;
	font-weight: 500;
	font-size: 1.8rem;
	cursor: pointer;
}
.p-box-link[target=_blank]::after {
	flex-shrink: 0;
	flex-basis: 15px;
}
span.p-box-link {
	cursor: default;
}

.p-panel-link {
	position: relative;
	justify-content: center;
	height: 120px;
	text-align: center;
	transition: background-color 0.2s ease;
}
.p-panel-link.is-current, .p-panel-link:hover {
	background: #f2f2f2;
}

.p-panel-link {
	position: relative;
	justify-content: center;
	height: 120px;
	text-align: center;
	transition: background-color 0.2s ease;
}
.p-panel-link.is-current, .p-panel-link:hover {
	background: #f2f2f2;
}

.p-adobe-reader-link {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	transition: opacity 0.2s ease-out;
}
.p-adobe-reader-link__text {
	padding-right: 20px;
}

.p-banner-link {
	display: block;
	transition: opacity 0.2s ease-out;
}

.p-list-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.p-list-flex__item {
	margin-bottom: 20px;
}
.p-list-flex--col2 .p-list-flex__item {
	width: calc(50% - 10px);
}
.p-list-flex--col2 .p-list-flex__item--single {
	width: 100%;
}
.p-list-flex--col4 {
	justify-content: flex-start;
	margin-right: -10px;
	margin-left: -10px;
}
.p-list-flex--col4 .p-list-flex__item {
	width: calc(25% - 20px);
	margin-right: 10px;
	margin-left: 10px;
}
.p-list-flex--col4 .p-list-flex__item--single {
	width: 100%;
}

.p-list-flex-wrap {
	overflow: hidden;
}

.p-panel-link-list {
	display: flex;
	flex-wrap: wrap;
	margin: 50px -15px;
}
.p-section .p-panel-link-list {
	margin-top: 50px;
}
.p-panel-link-list__item {
	width: 33.3333333333%;
	padding: 0 15px;
}

.p-panel-link-list {
	display: flex;
	flex-wrap: wrap;
	margin: 50px -15px;
}
.p-section .p-panel-link-list {
	margin-top: 50px;
}
.p-panel-link-list__item {
	width: 33.3333333333%;
	padding: 0 15px;
}

.p-main {
	background-position: left top;
	background-repeat: no-repeat;
}
.p-main--philosophy {
	position: relative;
}
.p-main--philosophy::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -201px;
	left: 0;
	width: 1596px;
	height: 403px;
	overflow: hidden;
	background: url(../images/company/philosophy/bg_main.svg) no-repeat left top;
	background-size: contain;
	content: "";
}
.p-main--business {
	position: relative;
}
.p-main--business::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -201px;
	left: 0;
	width: 1597px;
	height: 403px;
	overflow: hidden;
	background: url(../images/company/business/bg_main.svg) no-repeat left top;
	background-size: contain;
	content: "";
}
.p-main--history {
	position: relative;
}
.p-main--history::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -201px;
	left: 0;
	width: 1498px;
	height: 403px;
	overflow: hidden;
	background: url(../images/company/history/bg_main.svg) no-repeat left top;
	background-size: contain;
	content: "";
}
.p-main--profile {
	background-image: url(../images/company/profile/bg_main.svg);
	background-size: 1323px auto;
}
.p-main--csv {
	position: relative;
}
.p-main--csv::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -201px;
	left: 0;
	width: 1605px;
	height: 403px;
	overflow: hidden;
	background: url(../images/company/csv/bg_main.svg) no-repeat left top;
	background-size: contain;
	content: "";
}
.p-main--recruit {
	background-image: url(../images/company/recruit/bg_main.svg);
	background-size: 999px auto;
}
.p-main--news-article {
	padding-top: 75px;
}
.p-main--info .c-link-item {
	display: inline-block;
	position: relative;
	padding-left: 15px;
	color: #222;
}
.p-main--info .c-link-item::before {
	display: inline-block;
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 0;
	height: 0;
	border-width: 4px 0 4px 7px;
	border-style: solid;
	border-color: transparent transparent transparent #222;
	content: "";
}
.p-main--info .c-link-item[target=_blank]::after {
	display: inline-block;
	width: 15px;
	height: 11px;
	margin-left: 6px;
	background: url(../images/common/icon_blank.svg) no-repeat left center;
	background-size: contain;
	content: "";
	vertical-align: middle;
}
.p-main--info .p-link-list-inline {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -0.5em;
}
.p-main--info .p-link-list-inline__item {
	padding: 0 0.5em;
}
.p-main--info .p-support-info__name {
	margin-bottom: 1em;
	font-weight: 500;
}
.p-main--info .p-support-info__detail {
	margin-bottom: 15px;
	overflow: hidden;
}
.p-main--info .p-support-info__detail dt {
	float: left;
	clear: both;
}
.p-main--info .p-support-info__detail dd {
	margin-left: 3em;
}
.p-main--info .p-support-info__detail--en dd {
	margin-left: 5em;
}
.p-main--info .p-accordion__head {
	position: relative;
	padding: 20px 40px 20px 30px;
	border-top: 1px solid #aaa;
	border-right: 1px solid #aaa;
	border-left: 1px solid #aaa;
	font-weight: 500;
	font-size: 1.8rem;
	cursor: pointer;
}
.p-main--info .p-accordion__head::before, .p-main--info .p-accordion__head::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 2px;
	margin-top: -1px;
	background: #808080;
	content: "";
}
.p-main--info .p-accordion__head::after {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	transition: all 0.3s ease-in;
}
.p-main--info .p-accordion__head.is-open::after {
	-webkit-transform: rotate(0);
	transform: rotate(0);
}
.p-main--info .p-accordion__body {
	display: none;
	padding: 25px 30px 30px;
	border-top: 1px solid #aaa;
	background: #f2f2f2;
}
.p-main--info .p-accordion-group {
	border-bottom: 1px solid #aaa;
}
.p-main--info .p-anchor-nav {
	margin-bottom: 20px;
	padding: 22px 20px;
	background: #e5e5e5;
}
.p-main--info .p-anchor-nav__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -1em;
}
.p-main--info .p-anchor-nav__item {
	padding-left: 1em;
}
.p-main--info .p-anchor-nav__link {
	position: relative;
	padding-left: 16px;
	color: #222;
}
.p-main--info .p-anchor-nav__link::before {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	margin-top: -4px;
	border-width: 7px 4px 0 4px;
	border-style: solid;
	border-color: #222 transparent transparent transparent;
	content: "";
}
[lang=ja] .p-main--info .c-heading-lv4, [lang=ja] .p-main--info .c-heading-lv3, [lang=ja] .p-main--info .c-heading-lv2, [lang=ja] .p-main--info .c-heading {
	-webkit-font-feature-settings: "kern", "palt";
	font-feature-settings: "kern", "palt";
}
.p-main--info .c-heading {
	margin-bottom: 30px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.2414;
	text-align: center;
}
.p-main--info .c-heading:not(:first-child) {
	margin-top: 75px;
}
.p-main--info .c-heading-lv2 {
	margin-top: 43px;
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 2.6rem;
	line-height: 1.2414;
}
.p-main--info .c-heading-lv3 {
	margin-top: 40px;
	margin-bottom: 18px;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.44;
}
.p-main--info .c-heading-lv4 {
	margin-top: 37px;
	margin-bottom: 16px;
	font-weight: 500;
	font-size: 2.2rem;
	line-height: 1.44;
}
.p-main--info .p-section a:not([class]) {
	color: #222;
	text-decoration: underline;
}
.p-main--info .p-section a:not([class]):hover {
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}
.p-main--info .p-section a:not([class])[target=_blank]::after {
	display: inline-block;
	width: 15px;
	height: 11px;
	margin-left: 6px;
	background: url(../images/common/icon_blank.svg) no-repeat left center;
	background-size: contain;
	content: "";
	vertical-align: middle;
}
.p-main--info .p-section a:not([class])[href$=pdf]::after {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-left: 6px;
	background: url(../images/common/icon_pdf.png) no-repeat left center;
	background-size: contain;
	content: "";
	vertical-align: middle;
}
.p-main--info .p-section b:not([class]),
.p-main--info .p-section strong:not([class]),
.p-main--info .p-section em:not([class]) {
	font-weight: 500;
}
.p-main--info .p-section p {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.p-main--info .p-section p,
.p-main--info .p-section ul,
.p-main--info .p-section ol,
.p-main--info .p-section dl,
.p-main--info .p-section table {
	margin-top: 1.667em;
}
.p-main--info .p-section p:first-child,
.p-main--info .p-section ul:first-child,
.p-main--info .p-section ol:first-child,
.p-main--info .p-section dl:first-child,
.p-main--info .p-section table:first-child {
	margin-top: 0;
}
.p-main--info .p-section .p-margin-top {
	margin-top: 1.667em;
}
.p-main--info .p-section ul ul {
	margin-top: 0;
}
.p-main--info .p-section ol ol {
	margin-top: 0;
}
.p-main--info .p-section td > *:first-child,
.p-main--info .p-section dd > *:first-child {
	margin-top: 0;
}
.p-main--info .p-section-colored {
	background: #f2f2f2;
}
.p-main--info .p-page-update {
	text-align: right;
}

.p-header__lang-select {
	margin-top: -1px;
	padding: 0 18px 0 0;
	border: none;
	background-position-x: right;
	background-color: transparent;
	background: url(../img/common/arrow_pulldown.svg) no-repeat right top 8px;
	background-size: 11px 7px;
	cursor: pointer;
	color: #072f4d;
	font-size: 1.5rem;
	line-height: 1.4;
}

.p-nav-lang-link {
	display: block;
	position: relative;
	padding-bottom: 5px;
	color: #fff;
	line-height: 1;
}
.is-scrolled .p-nav-lang-link, .is-nav-active .p-nav-lang-link {
	color: #222;
}
.page-common .p-nav-lang-link {
	color: #222;
}
.p-nav-lang-link::after {
	display: block;
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid transparent;
	content: "";
}
.p-nav-lang-link:hover, .p-nav-lang-link.is-current {
	font-weight: 700;
}
.p-nav-lang-link:hover::after, .p-nav-lang-link.is-current::after {
	border-bottom-color: #fff;
}
.is-scrolled .p-nav-lang-link:hover::after, .is-nav-active .p-nav-lang-link:hover::after, .is-scrolled .p-nav-lang-link.is-current::after, .is-nav-active .p-nav-lang-link.is-current::after {
	border-bottom-color: #222;
}
.page-common .p-nav-lang-link:hover::after, .page-common .p-nav-lang-link.is-current::after {
	border-bottom-color: #222;
}
.p-nav-lang-link:hover::after {
	transition: all 0.3s;
}

.p-nav-btn {
	display: block;
	z-index: 100;
	position: relative;
	flex-basis: 50px;
	width: 50px;
	height: 50px;
	opacity: 0;
	transition: opacity 0.3s;
}
.p-header.is-active .p-nav-btn {
	opacity: 1;
}

.p-drawer-nav-btn {
	display: block;
	width: 100%;
	height: 100%;
}
.p-drawer-nav-btn__link {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff;
}
.is-scrolled .p-drawer-nav-btn__link {
	background-color: transparent;
}
.p-drawer-nav-btn__link--open {
	z-index: 100;
	background: url(../img/common/btn_header_gnav_open.svg) no-repeat center;
	opacity: 1;
	transition: all 0.8s;
}
.p-drawer-nav-btn__link--open.is-active {
	z-index: 0;
	background-image: none;
	opacity: 0;
}
.p-drawer-nav-btn__link--open.is-active + .p-drawer-nav-btn__link--close {
	z-index: 1;
	background-image: url(../img/common/btn_header_gnav_close.svg);
	opacity: 1;
}
.p-drawer-nav-btn__text {
	clip: rect(1px, 1px, 1px, 1px);
	display: inline;
	z-index: -9999;
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	font-size: 0;
}

.p-drawer-nav-circle {
	z-index: 3;
	position: absolute;
	top: 30px;
	left: 30px;
	width: 60px;
	height: 60px;
	-webkit-transform: scale(0);
	transform: scale(0);
	border-radius: 50%;
	background: #fff;
	opacity: 1;
	transition: all 0.8s;
}
.is-nav-active .p-drawer-nav-circle {
	-webkit-transform: scale(200);
	transform: scale(200);
	opacity: 0.95;
}

.p-drawer-nav {
	display: none;
	z-index: 99;
	position: absolute;
	top: 0;
	left: -60px;
	width: calc(100% + 60px * 2);
	height: 100vh;
	overflow-y: auto;
}
.p-drawer-nav__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.p-gnav-list,
.p-header__sub
 {
	opacity: 0;
	transition: all 1s;
}
.p-drawer-nav.is-active .p-gnav-list,
.p-drawer-nav.is-active .p-header__sub {
	opacity: 1;
}

.p-gnav-list {
	display: grid;
	grid-template-columns: 1fr;
	align-items: end;
	-moz-column-gap: 0;
	column-gap: 0;
	row-gap: 20px;
	justify-content: flex-start;
	width: 100%;
	max-width: 375px;
	height: auto;
	margin-inline: auto;
}

.p-gnav-list__item {
	display: grid;
	height: auto;
}

.p-gnav-link {
	display: grid;
	justify-content: start;
	width: 100%;
	height: 100%;
	color: #222222;
	font-weight: 500;
	font-size: 1.9rem;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
}

.p-gnav-list__item:has(.p-gnav-submenu) .p-gnav-link {
	position: relative;
	display: none;
}

.p-gnav-submenu__inner {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 1fr;
	width: auto;
	min-height: 0;
	margin-inline: auto;
	padding: 0;
	gap: 0;
}

.p-gnav-submenu__header {
	display: block;
	text-align: left;
	padding-right: 10px;
}

.p-gnav-submenu__title-ja {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.188;
}

.p-gnav-submenu__header.is-accordion .p-gnav-submenu__title-ja {
	display: inline-block;
	position: relative;
	padding-right: 19px;
	cursor: pointer;
}

.p-gnav-submenu__header.is-accordion .p-gnav-submenu__title-ja::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 11px;
	height: 7px;
	transform: translateY(-50%);
	mask: url(../img/common/arrow_down_wh.svg) no-repeat right center;
	mask-size: contain;
	background: #222222;
	content: "";
	cursor: pointer;
	transition: all 0.3s;
}

.p-gnav-submenu__header.is-accordion.is-opened .p-gnav-submenu__title-ja::after {
	transform: translateY(-50%) rotate(180deg);
}


.p-gnav-submenu__accordion.is-accordion {
	display: none;
	padding-top: 18px;
}

.p-gnav-submenu-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

.p-gnav-submenu-list__item {
	font-size: 1.9rem;
	font-weight: 400;
	line-height: 1.2;
}

.p-gnav-submenu-link {
	display: block;
	color: #222222;
	transition: opacity 0.2s ease-out;
}

.p-gnav-submenu__close {
	display: none;
	width: 36px;
	height: 22px;
	mask: url(../img/common/btn_header_megamenu_close.svg) no-repeat center center;
	mask-size: contain;
	background: #222222;
}

.p-header__sub {
	display: flex;
	row-gap: 24px;
	column-gap: 27px;
	justify-content: start;
	align-items: center;
	width: 100%;
	max-width: 375px;
	margin-inline: auto;
	padding-top: 30px;
}

.p-header__subnav {
	width: 100%;
}

.p-subnav-list {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 39px;
}

.p-subnav-list__item {
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.188;
}

.p-header__sub .p-global-btn {
	margin-top: 0;
}

.p-page-header {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 300px;
	padding: 105px 60px 0;
	background: #eee;
}
.p-page-header--mv {
	height: 680px;
	padding-top: 0;
	background: center top;
	background-size: cover;
	background-repeat: no-repeat;
}
.p-page-header--news-article {
	height: auto;
	min-height: 360px;
	padding-bottom: 20px;
}
.p-page-header--philosophy {
	background-image: url(../images/company/philosophy/mv.jpg);
}
.p-page-header--business {
	background-image: url(../images/company/business/mv.jpg);
}
.p-page-header--profile {
	padding-top: 0;
}
.p-page-header--history {
	background-image: url(../images/company/history/mv.jpg);
}
.p-page-header--csv {
	background-image: url(../images/company/csv/mv.jpg);
}
.p-page-header--recruit {
	background-image: url(../images/company/recruit/mv.jpg);
}
.p-page-header__title {
	font-weight: 400;
	font-size: 3.2rem;
	line-height: 1.479;
	letter-spacing: 0.05em;
	text-align: center;
}
.p-page-header--profile .p-page-header__title, .p-page-header--mv .p-page-header__title {
	font-size: 4.8rem;
}
.p-page-header--news-article .p-page-header__title {
	text-align: left;
}
.p-page-header__br-sp {
	display: none;
}
.p-page-header--mv .p-page-header__title {
	color: #fff;
}

.p-pagetop {
	z-index: 10;
	position: fixed;
	right: 30px;
	bottom: 30px;
	opacity: 0;
	transition: opacity 0.3s ease-in;
}
.p-pagetop.is-active {
	opacity: 1;
}
.p-pagetop__button {
	display: block;
	width: 80px;
	height: 80px;
}

#progressbar {
	position: relative;
	top: 50%;
	left: 50%;
	width: 200px;
	height: 200px;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#progressbarcontainer {
	z-index: 999;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #000;
	opacity: 1;
	transition: all 0.5s;
}
#progressbarcontainer.is-blink .progressbar-text {
	-webkit-animation: blinking 0.25s ease-in-out infinite alternate;
	animation: blinking 0.25s ease-in-out infinite alternate;
}
@-webkit-keyframes blinking {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes blinking {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.p-scrolldown {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 420px;
	height: 420px;
	border: 1px solid #ddd;
	border-radius: 50%;
}
.p-scrolldown img {
	width: auto;
}

.p-slide-card {
	display: block;
	overflow: hidden;
	text-align: center;
	pointer-events: none;
}
.slide-active .p-slide-card {
	pointer-events: auto;
}
.p-slide-card__img {
	overflow: hidden;
	transition: all 0.5s;
}
.p-slide-card__img img {
	display: block;
	width: 100%;
	height: 640px;
	-o-object-fit: cover;
	object-fit: cover;
}
.p-slide-card__title {
	margin-top: 20px;
	font-weight: 500;
	font-size: 2.2rem;
	line-height: 1.636;
	transition: all 0.5s 0.5s;
}
.slide-active .p-slide-card__title {
	margin-top: 20px;
	font-size: 3.2rem;
	line-height: 1.125;
}
.p-slide-card__text {
	margin-top: 14px;
}
.slider-initialized .p-slide-card__text {
	visibility: hidden;
	opacity: 0;
	transition-delay: 0;
}
.slide-active:not(.slide-animation) .p-slide-card__text {
	visibility: visible;
	min-width: 480px;
	opacity: 1;
	transition: opacity 0.2s 0.4s, visibility 0.2s 0.4s;
}

.p-slider-container {
	position: relative;
	margin-bottom: 370px;
}
.p-slider-container__slides {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	opacity: 0;
	transition: opacity 0.5s ease 0.8s;
}
.p-slider-container__slides.slider-initialized {
	opacity: 1;
}
.p-slider-container__item {
	display: flex;
	position: absolute;
	justify-content: center;
	overflow: hidden;
	cursor: pointer;
	opacity: 0.4;
	transition: all 0.6s ease;
}
.p-slider-container__item.slide-active {
	opacity: 1;
}

.p-slider-nav {
	display: flex;
	z-index: 10;
	position: absolute;
	right: 0;
	bottom: -65px;
	left: 0;
	justify-content: center;
	margin: 0 auto;
}
.p-slider-nav__item {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4px 7px 0;
	border-top: 1px solid #aaa;
}
.p-slider-nav__item.is-current button {
	border-bottom-color: #707070;
	color: #222;
}
.p-slider-nav__btn {
	display: block;
	height: 100%;
	padding: 9px 4px;
	border-bottom: 1px solid transparent;
	color: #999;
	font-size: 1.8rem;
	transition: border-bottom-color 0.3s ease-out;
}

.p-tab-nav {
	display: flex;
	justify-content: center;
	margin: 0 auto 50px;
}
.p-tab-nav__item {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 200px;
	height: 60px;
	margin: 0 5px;
	padding: 5px 10px;
	border: 1px solid #aaa;
	border-radius: 30px;
	background: #fff;
	text-align: center;
	cursor: pointer;
}
.p-tab-nav__item.is-current {
	border-color: #555;
	background: #555;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.15);
	color: #fff;
}

.p-tab-content {
	visibility: hidden;
	width: 100%;
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: all 0.5s;
}
.p-tab-content.is-current {
	visibility: visible;
	height: auto;
	background: rgba(255, 255, 255, 0.8);
	opacity: 1;
}

.p-table-scroll {
	overflow-x: auto;
}
.p-support-period .p-table-scroll {
	position: relative;
}
.p-support-period .p-table-scroll + .p-table-scroll {
	margin-top: 2em;
}

.p-table-policy thead .p-article__table-cell {
	width: 25%;
}
.p-table-policy thead .p-article__table-cell--category {
	width: 45%;
}
.p-table-policy thead .p-article__table-cell--example {
	width: 55%;
}
.p-table-policy thead .p-article__table-cell--auto {
	width: auto;
}
.p-table-policy tbody .p-article__table-cell {
	vertical-align: top;
}
.p-table-policy--revision.p-article__table {
	width: 100%;
}
.p-table-policy--revision.p-article__table thead .p-article__table-cell {
	width: 33.3333333333%;
}

.p-table-article {
	table-layout: fixed;
}
.p-table-article .c-table__head {
	width: auto;
}
.p-table-article .c-table__head--nowrap {
	white-space: nowrap;
}
.p-table-article thead .c-table__head {
	text-align: center;
}

.p-support-period .p-table-caption {
	position: absolute;
	top: 1.5em;
	left: 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}

.p-support-period .p-table-scroll > .c-table {
	width: 100%;
}

.p-support-period .p-article__table {
	margin-bottom: 0;
}

.p-support-period .p-article__table-head {
	width: 69.5535714286%;
	background: transparent;
	text-align: center;
}

.p-support-period .p-article__table-cell {
	text-align: center;
}
.p-support-period .p-article__table-cell--firmware {
	width: 15.1785714286%;
}

.u-right {
	text-align: right !important;
}

.u-left {
	text-align: left !important;
}

.u-center {
	text-align: center !important;
}

.u-border-top {
	border-top: 1px solid #aaa;
}

.u-border-bottom {
	border-bottom: 1px solid #aaa;
}

.u-border-bottom-none {
	border-bottom: 0 !important;
}

.u-alternate {
	clip: rect(1px, 1px, 1px, 1px);
	display: inline;
	z-index: -9999;
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	background: transparent;
	color: transparent;
	font-size: 0;
}

.u-hidden {
	display: none;
}

.u-inline-block {
	display: inline-block;
}

.u-flex {
	display: flex;
}

.u-justify-start {
	justify-content: flex-start;
}

.u-justify-end {
	justify-content: flex-end;
}

.u-justify-center {
	justify-content: center;
}

.u-justify-between {
	justify-content: space-between;
}

.u-align-start {
	align-items: start;
}

.u-align-end {
	align-items: end;
}

.u-align-center {
	align-items: center;
}

.u-word-break {
	word-break: break-all;
}

.u-fw-light {
	font-weight: lighter;
}

.u-fw-normal {
	font-weight: normal;
}

.u-fw-bold {
	font-weight: bold;
}

.u-mr0 {
	margin-right: 0 !important;
}

.u-mt0 {
	margin-top: 0 !important;
}

.u-mb0 {
	margin-bottom: 0 !important;
}

.u-mt5 {
	margin-top: 5px !important;
}

.u-mb5 {
	margin-bottom: 5px !important;
}

.u-ml5 {
	margin-left: 5px !important;
}

.u-mr5 {
	margin-right: 5px !important;
}

.u-mt10 {
	margin-top: 10px !important;
}

.u-mb10 {
	margin-bottom: 10px !important;
}

.u-ml10 {
	margin-left: 10px !important;
}

.u-mr10 {
	margin-right: 10px !important;
}

.u-mt15 {
	margin-top: 15px !important;
}

.u-mb15 {
	margin-bottom: 15px !important;
}

.u-ml15 {
	margin-left: 15px !important;
}

.u-mr15 {
	margin-right: 15px !important;
}

.u-mt20 {
	margin-top: 20px !important;
}

.u-mb20 {
	margin-bottom: 20px !important;
}

.u-ml20 {
	margin-left: 20px !important;
}

.u-mr20 {
	margin-right: 20px !important;
}

.u-mt25 {
	margin-top: 25px !important;
}

.u-mb25 {
	margin-bottom: 25px !important;
}

.u-ml25 {
	margin-left: 25px !important;
}

.u-mr25 {
	margin-right: 25px !important;
}

.u-mt30 {
	margin-top: 30px !important;
}

.u-mb30 {
	margin-bottom: 30px !important;
}

.u-ml30 {
	margin-left: 30px !important;
}

.u-mr30 {
	margin-right: 30px !important;
}

.u-mt35 {
	margin-top: 35px !important;
}

.u-mb35 {
	margin-bottom: 35px !important;
}

.u-ml35 {
	margin-left: 35px !important;
}

.u-mr35 {
	margin-right: 35px !important;
}

.u-mt40 {
	margin-top: 40px !important;
}

.u-mb40 {
	margin-bottom: 40px !important;
}

.u-ml40 {
	margin-left: 40px !important;
}

.u-mr40 {
	margin-right: 40px !important;
}

.u-mt45 {
	margin-top: 45px !important;
}

.u-mb45 {
	margin-bottom: 45px !important;
}

.u-ml45 {
	margin-left: 45px !important;
}

.u-mr45 {
	margin-right: 45px !important;
}

.u-mt50 {
	margin-top: 50px !important;
}

.u-mb50 {
	margin-bottom: 50px !important;
}

.u-ml50 {
	margin-left: 50px !important;
}

.u-mr50 {
	margin-right: 50px !important;
}

.u-mt60 {
	margin-top: 60px !important;
}

.u-mb60 {
	margin-bottom: 60px !important;
}

.u-ml60 {
	margin-left: 60px !important;
}

.u-mr60 {
	margin-right: 60px !important;
}

.u-mt70 {
	margin-top: 70px !important;
}

.u-mb70 {
	margin-bottom: 70px !important;
}

.u-ml70 {
	margin-left: 70px !important;
}

.u-mr70 {
	margin-right: 70px !important;
}

.u-mt80 {
	margin-top: 80px !important;
}

.u-mb80 {
	margin-bottom: 80px !important;
}

.u-ml80 {
	margin-left: 80px !important;
}

.u-mr80 {
	margin-right: 80px !important;
}

.u-mt90 {
	margin-top: 90px !important;
}

.u-mb90 {
	margin-bottom: 90px !important;
}

.u-ml90 {
	margin-left: 90px !important;
}

.u-mr90 {
	margin-right: 90px !important;
}

.u-mt100 {
	margin-top: 100px !important;
}

.u-mb100 {
	margin-bottom: 100px !important;
}

.u-ml100 {
	margin-left: 100px !important;
}

.u-mr100 {
	margin-right: 100px !important;
}

.u-mtauto {
	margin-top: auto !important;
}

.u-mlauto {
	margin-left: auto !important;
}

.u-p0 {
	padding: 0 !important;
}

.u-pt0 {
	padding-top: 0px !important;
}

.u-pb0 {
	padding-bottom: 0px !important;
}

.u-pr0 {
	padding-right: 0px !important;
}

.u-pl0 {
	padding-left: 0px !important;
}

.u-py0 {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.u-px0 {
	padding-right: 0px !important;
	padding-left: 0px !important;
}

.u-pt5 {
	padding-top: 5px !important;
}

.u-pb5 {
	padding-bottom: 5px !important;
}

.u-pr5 {
	padding-right: 5px !important;
}

.u-pl5 {
	padding-left: 5px !important;
}

.u-py5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.u-px5 {
	padding-right: 5px !important;
	padding-left: 5px !important;
}

.u-pt10 {
	padding-top: 10px !important;
}

.u-pb10 {
	padding-bottom: 10px !important;
}

.u-pr10 {
	padding-right: 10px !important;
}

.u-pl10 {
	padding-left: 10px !important;
}

.u-py10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.u-px10 {
	padding-right: 10px !important;
	padding-left: 10px !important;
}

.u-pt15 {
	padding-top: 15px !important;
}

.u-pb15 {
	padding-bottom: 15px !important;
}

.u-pr15 {
	padding-right: 15px !important;
}

.u-pl15 {
	padding-left: 15px !important;
}

.u-py15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

.u-px15 {
	padding-right: 15px !important;
	padding-left: 15px !important;
}

.u-pt20 {
	padding-top: 20px !important;
}

.u-pb20 {
	padding-bottom: 20px !important;
}

.u-pr20 {
	padding-right: 20px !important;
}

.u-pl20 {
	padding-left: 20px !important;
}

.u-py20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.u-px20 {
	padding-right: 20px !important;
	padding-left: 20px !important;
}

.u-pt25 {
	padding-top: 25px !important;
}

.u-pb25 {
	padding-bottom: 25px !important;
}

.u-pr25 {
	padding-right: 25px !important;
}

.u-pl25 {
	padding-left: 25px !important;
}

.u-py25 {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

.u-px25 {
	padding-right: 25px !important;
	padding-left: 25px !important;
}

.u-pt30 {
	padding-top: 30px !important;
}

.u-pb30 {
	padding-bottom: 30px !important;
}

.u-pr30 {
	padding-right: 30px !important;
}

.u-pl30 {
	padding-left: 30px !important;
}

.u-py30 {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

.u-px30 {
	padding-right: 30px !important;
	padding-left: 30px !important;
}

.u-pt35 {
	padding-top: 35px !important;
}

.u-pb35 {
	padding-bottom: 35px !important;
}

.u-pr35 {
	padding-right: 35px !important;
}

.u-pl35 {
	padding-left: 35px !important;
}

.u-py35 {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

.u-px35 {
	padding-right: 35px !important;
	padding-left: 35px !important;
}

.u-pt40 {
	padding-top: 40px !important;
}

.u-pb40 {
	padding-bottom: 40px !important;
}

.u-pr40 {
	padding-right: 40px !important;
}

.u-pl40 {
	padding-left: 40px !important;
}

.u-py40 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

.u-px40 {
	padding-right: 40px !important;
	padding-left: 40px !important;
}

.u-pt45 {
	padding-top: 45px !important;
}

.u-pb45 {
	padding-bottom: 45px !important;
}

.u-pr45 {
	padding-right: 45px !important;
}

.u-pl45 {
	padding-left: 45px !important;
}

.u-py45 {
	padding-top: 45px !important;
	padding-bottom: 45px !important;
}

.u-px45 {
	padding-right: 45px !important;
	padding-left: 45px !important;
}

.u-pt50 {
	padding-top: 50px !important;
}

.u-pb50 {
	padding-bottom: 50px !important;
}

.u-pr50 {
	padding-right: 50px !important;
}

.u-pl50 {
	padding-left: 50px !important;
}

.u-py50 {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

.u-px50 {
	padding-right: 50px !important;
	padding-left: 50px !important;
}

.u-pt55 {
	padding-top: 55px !important;
}

.u-pb55 {
	padding-bottom: 55px !important;
}

.u-pr55 {
	padding-right: 55px !important;
}

.u-pl55 {
	padding-left: 55px !important;
}

.u-py55 {
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}

.u-px55 {
	padding-right: 55px !important;
	padding-left: 55px !important;
}

.u-pt60 {
	padding-top: 60px !important;
}

.u-pb60 {
	padding-bottom: 60px !important;
}

.u-pr60 {
	padding-right: 60px !important;
}

.u-pl60 {
	padding-left: 60px !important;
}

.u-py60 {
	padding-top: 60px !important;
	padding-bottom: 60px !important;
}

.u-px60 {
	padding-right: 60px !important;
	padding-left: 60px !important;
}

.u-pt65 {
	padding-top: 65px !important;
}

.u-pb65 {
	padding-bottom: 65px !important;
}

.u-pr65 {
	padding-right: 65px !important;
}

.u-pl65 {
	padding-left: 65px !important;
}

.u-py65 {
	padding-top: 65px !important;
	padding-bottom: 65px !important;
}

.u-px65 {
	padding-right: 65px !important;
	padding-left: 65px !important;
}

.u-pt70 {
	padding-top: 70px !important;
}

.u-pb70 {
	padding-bottom: 70px !important;
}

.u-pr70 {
	padding-right: 70px !important;
}

.u-pl70 {
	padding-left: 70px !important;
}

.u-py70 {
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}

.u-px70 {
	padding-right: 70px !important;
	padding-left: 70px !important;
}

.u-pt75 {
	padding-top: 75px !important;
}

.u-pb75 {
	padding-bottom: 75px !important;
}

.u-pr75 {
	padding-right: 75px !important;
}

.u-pl75 {
	padding-left: 75px !important;
}

.u-py75 {
	padding-top: 75px !important;
	padding-bottom: 75px !important;
}

.u-px75 {
	padding-right: 75px !important;
	padding-left: 75px !important;
}

.u-pt80 {
	padding-top: 80px !important;
}

.u-pb80 {
	padding-bottom: 80px !important;
}

.u-pr80 {
	padding-right: 80px !important;
}

.u-pl80 {
	padding-left: 80px !important;
}

.u-py80 {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.u-px80 {
	padding-right: 80px !important;
	padding-left: 80px !important;
}

.u-pt85 {
	padding-top: 85px !important;
}

.u-pb85 {
	padding-bottom: 85px !important;
}

.u-pr85 {
	padding-right: 85px !important;
}

.u-pl85 {
	padding-left: 85px !important;
}

.u-py85 {
	padding-top: 85px !important;
	padding-bottom: 85px !important;
}

.u-px85 {
	padding-right: 85px !important;
	padding-left: 85px !important;
}

.u-pt90 {
	padding-top: 90px !important;
}

.u-pb90 {
	padding-bottom: 90px !important;
}

.u-pr90 {
	padding-right: 90px !important;
}

.u-pl90 {
	padding-left: 90px !important;
}

.u-py90 {
	padding-top: 90px !important;
	padding-bottom: 90px !important;
}

.u-px90 {
	padding-right: 90px !important;
	padding-left: 90px !important;
}

.u-pt95 {
	padding-top: 95px !important;
}

.u-pb95 {
	padding-bottom: 95px !important;
}

.u-pr95 {
	padding-right: 95px !important;
}

.u-pl95 {
	padding-left: 95px !important;
}

.u-py95 {
	padding-top: 95px !important;
	padding-bottom: 95px !important;
}

.u-px95 {
	padding-right: 95px !important;
	padding-left: 95px !important;
}

.u-pt100 {
	padding-top: 100px !important;
}

.u-pb100 {
	padding-bottom: 100px !important;
}

.u-pr100 {
	padding-right: 100px !important;
}

.u-pl100 {
	padding-left: 100px !important;
}

.u-py100 {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

.u-px100 {
	padding-right: 100px !important;
	padding-left: 100px !important;
}

.u-pt105 {
	padding-top: 105px !important;
}

.u-pb105 {
	padding-bottom: 105px !important;
}

.u-pr105 {
	padding-right: 105px !important;
}

.u-pl105 {
	padding-left: 105px !important;
}

.u-py105 {
	padding-top: 105px !important;
	padding-bottom: 105px !important;
}

.u-px105 {
	padding-right: 105px !important;
	padding-left: 105px !important;
}

.u-pt110 {
	padding-top: 110px !important;
}

.u-pb110 {
	padding-bottom: 110px !important;
}

.u-pr110 {
	padding-right: 110px !important;
}

.u-pl110 {
	padding-left: 110px !important;
}

.u-py110 {
	padding-top: 110px !important;
	padding-bottom: 110px !important;
}

.u-px110 {
	padding-right: 110px !important;
	padding-left: 110px !important;
}

.u-pt115 {
	padding-top: 115px !important;
}

.u-pb115 {
	padding-bottom: 115px !important;
}

.u-pr115 {
	padding-right: 115px !important;
}

.u-pl115 {
	padding-left: 115px !important;
}

.u-py115 {
	padding-top: 115px !important;
	padding-bottom: 115px !important;
}

.u-px115 {
	padding-right: 115px !important;
	padding-left: 115px !important;
}

.u-pt120 {
	padding-top: 120px !important;
}

.u-pb120 {
	padding-bottom: 120px !important;
}

.u-pr120 {
	padding-right: 120px !important;
}

.u-pl120 {
	padding-left: 120px !important;
}

.u-py120 {
	padding-top: 120px !important;
	padding-bottom: 120px !important;
}

.u-px120 {
	padding-right: 120px !important;
	padding-left: 120px !important;
}

.u-pt125 {
	padding-top: 125px !important;
}

.u-pb125 {
	padding-bottom: 125px !important;
}

.u-pr125 {
	padding-right: 125px !important;
}

.u-pl125 {
	padding-left: 125px !important;
}

.u-py125 {
	padding-top: 125px !important;
	padding-bottom: 125px !important;
}

.u-px125 {
	padding-right: 125px !important;
	padding-left: 125px !important;
}

.u-pt130 {
	padding-top: 130px !important;
}

.u-pb130 {
	padding-bottom: 130px !important;
}

.u-pr130 {
	padding-right: 130px !important;
}

.u-pl130 {
	padding-left: 130px !important;
}

.u-py130 {
	padding-top: 130px !important;
	padding-bottom: 130px !important;
}

.u-px130 {
	padding-right: 130px !important;
	padding-left: 130px !important;
}

.u-pt135 {
	padding-top: 135px !important;
}

.u-pb135 {
	padding-bottom: 135px !important;
}

.u-pr135 {
	padding-right: 135px !important;
}

.u-pl135 {
	padding-left: 135px !important;
}

.u-py135 {
	padding-top: 135px !important;
	padding-bottom: 135px !important;
}

.u-px135 {
	padding-right: 135px !important;
	padding-left: 135px !important;
}

.u-pt140 {
	padding-top: 140px !important;
}

.u-pb140 {
	padding-bottom: 140px !important;
}

.u-pr140 {
	padding-right: 140px !important;
}

.u-pl140 {
	padding-left: 140px !important;
}

.u-py140 {
	padding-top: 140px !important;
	padding-bottom: 140px !important;
}

.u-px140 {
	padding-right: 140px !important;
	padding-left: 140px !important;
}

.u-pt145 {
	padding-top: 145px !important;
}

.u-pb145 {
	padding-bottom: 145px !important;
}

.u-pr145 {
	padding-right: 145px !important;
}

.u-pl145 {
	padding-left: 145px !important;
}

.u-py145 {
	padding-top: 145px !important;
	padding-bottom: 145px !important;
}

.u-px145 {
	padding-right: 145px !important;
	padding-left: 145px !important;
}

.u-pt150 {
	padding-top: 150px !important;
}

.u-pb150 {
	padding-bottom: 150px !important;
}

.u-pr150 {
	padding-right: 150px !important;
}

.u-pl150 {
	padding-left: 150px !important;
}

.u-py150 {
	padding-top: 150px !important;
	padding-bottom: 150px !important;
}

.u-px150 {
	padding-right: 150px !important;
	padding-left: 150px !important;
}

.u-pt155 {
	padding-top: 155px !important;
}

.u-pb155 {
	padding-bottom: 155px !important;
}

.u-pr155 {
	padding-right: 155px !important;
}

.u-pl155 {
	padding-left: 155px !important;
}

.u-py155 {
	padding-top: 155px !important;
	padding-bottom: 155px !important;
}

.u-px155 {
	padding-right: 155px !important;
	padding-left: 155px !important;
}

.u-pt160 {
	padding-top: 160px !important;
}

.u-pb160 {
	padding-bottom: 160px !important;
}

.u-pr160 {
	padding-right: 160px !important;
}

.u-pl160 {
	padding-left: 160px !important;
}

.u-py160 {
	padding-top: 160px !important;
	padding-bottom: 160px !important;
}

.u-px160 {
	padding-right: 160px !important;
	padding-left: 160px !important;
}

.u-pt165 {
	padding-top: 165px !important;
}

.u-pb165 {
	padding-bottom: 165px !important;
}

.u-pr165 {
	padding-right: 165px !important;
}

.u-pl165 {
	padding-left: 165px !important;
}

.u-py165 {
	padding-top: 165px !important;
	padding-bottom: 165px !important;
}

.u-px165 {
	padding-right: 165px !important;
	padding-left: 165px !important;
}

.u-pt170 {
	padding-top: 170px !important;
}

.u-pb170 {
	padding-bottom: 170px !important;
}

.u-pr170 {
	padding-right: 170px !important;
}

.u-pl170 {
	padding-left: 170px !important;
}

.u-py170 {
	padding-top: 170px !important;
	padding-bottom: 170px !important;
}

.u-px170 {
	padding-right: 170px !important;
	padding-left: 170px !important;
}

.u-pt175 {
	padding-top: 175px !important;
}

.u-pb175 {
	padding-bottom: 175px !important;
}

.u-pr175 {
	padding-right: 175px !important;
}

.u-pl175 {
	padding-left: 175px !important;
}

.u-py175 {
	padding-top: 175px !important;
	padding-bottom: 175px !important;
}

.u-px175 {
	padding-right: 175px !important;
	padding-left: 175px !important;
}

.u-pt180 {
	padding-top: 180px !important;
}

.u-pb180 {
	padding-bottom: 180px !important;
}

.u-pr180 {
	padding-right: 180px !important;
}

.u-pl180 {
	padding-left: 180px !important;
}

.u-py180 {
	padding-top: 180px !important;
	padding-bottom: 180px !important;
}

.u-px180 {
	padding-right: 180px !important;
	padding-left: 180px !important;
}

.u-pt185 {
	padding-top: 185px !important;
}

.u-pb185 {
	padding-bottom: 185px !important;
}

.u-pr185 {
	padding-right: 185px !important;
}

.u-pl185 {
	padding-left: 185px !important;
}

.u-py185 {
	padding-top: 185px !important;
	padding-bottom: 185px !important;
}

.u-px185 {
	padding-right: 185px !important;
	padding-left: 185px !important;
}

.u-pt190 {
	padding-top: 190px !important;
}

.u-pb190 {
	padding-bottom: 190px !important;
}

.u-pr190 {
	padding-right: 190px !important;
}

.u-pl190 {
	padding-left: 190px !important;
}

.u-py190 {
	padding-top: 190px !important;
	padding-bottom: 190px !important;
}

.u-px190 {
	padding-right: 190px !important;
	padding-left: 190px !important;
}

.u-pt195 {
	padding-top: 195px !important;
}

.u-pb195 {
	padding-bottom: 195px !important;
}

.u-pr195 {
	padding-right: 195px !important;
}

.u-pl195 {
	padding-left: 195px !important;
}

.u-py195 {
	padding-top: 195px !important;
	padding-bottom: 195px !important;
}

.u-px195 {
	padding-right: 195px !important;
	padding-left: 195px !important;
}

.u-pt200 {
	padding-top: 200px !important;
}

.u-pb200 {
	padding-bottom: 200px !important;
}

.u-pr200 {
	padding-right: 200px !important;
}

.u-pl200 {
	padding-left: 200px !important;
}

.u-py200 {
	padding-top: 200px !important;
	padding-bottom: 200px !important;
}

.u-px200 {
	padding-right: 200px !important;
	padding-left: 200px !important;
}

.u-pt205 {
	padding-top: 205px !important;
}

.u-pb205 {
	padding-bottom: 205px !important;
}

.u-pr205 {
	padding-right: 205px !important;
}

.u-pl205 {
	padding-left: 205px !important;
}

.u-py205 {
	padding-top: 205px !important;
	padding-bottom: 205px !important;
}

.u-px205 {
	padding-right: 205px !important;
	padding-left: 205px !important;
}

.u-pt210 {
	padding-top: 210px !important;
}

.u-pb210 {
	padding-bottom: 210px !important;
}

.u-pr210 {
	padding-right: 210px !important;
}

.u-pl210 {
	padding-left: 210px !important;
}

.u-py210 {
	padding-top: 210px !important;
	padding-bottom: 210px !important;
}

.u-px210 {
	padding-right: 210px !important;
	padding-left: 210px !important;
}

.u-pt215 {
	padding-top: 215px !important;
}

.u-pb215 {
	padding-bottom: 215px !important;
}

.u-pr215 {
	padding-right: 215px !important;
}

.u-pl215 {
	padding-left: 215px !important;
}

.u-py215 {
	padding-top: 215px !important;
	padding-bottom: 215px !important;
}

.u-px215 {
	padding-right: 215px !important;
	padding-left: 215px !important;
}

.u-pt220 {
	padding-top: 220px !important;
}

.u-pb220 {
	padding-bottom: 220px !important;
}

.u-pr220 {
	padding-right: 220px !important;
}

.u-pl220 {
	padding-left: 220px !important;
}

.u-py220 {
	padding-top: 220px !important;
	padding-bottom: 220px !important;
}

.u-px220 {
	padding-right: 220px !important;
	padding-left: 220px !important;
}

.u-pt225 {
	padding-top: 225px !important;
}

.u-pb225 {
	padding-bottom: 225px !important;
}

.u-pr225 {
	padding-right: 225px !important;
}

.u-pl225 {
	padding-left: 225px !important;
}

.u-py225 {
	padding-top: 225px !important;
	padding-bottom: 225px !important;
}

.u-px225 {
	padding-right: 225px !important;
	padding-left: 225px !important;
}

.u-pt230 {
	padding-top: 230px !important;
}

.u-pb230 {
	padding-bottom: 230px !important;
}

.u-pr230 {
	padding-right: 230px !important;
}

.u-pl230 {
	padding-left: 230px !important;
}

.u-py230 {
	padding-top: 230px !important;
	padding-bottom: 230px !important;
}

.u-px230 {
	padding-right: 230px !important;
	padding-left: 230px !important;
}

.u-pt235 {
	padding-top: 235px !important;
}

.u-pb235 {
	padding-bottom: 235px !important;
}

.u-pr235 {
	padding-right: 235px !important;
}

.u-pl235 {
	padding-left: 235px !important;
}

.u-py235 {
	padding-top: 235px !important;
	padding-bottom: 235px !important;
}

.u-px235 {
	padding-right: 235px !important;
	padding-left: 235px !important;
}

.u-pt240 {
	padding-top: 240px !important;
}

.u-pb240 {
	padding-bottom: 240px !important;
}

.u-pr240 {
	padding-right: 240px !important;
}

.u-pl240 {
	padding-left: 240px !important;
}

.u-py240 {
	padding-top: 240px !important;
	padding-bottom: 240px !important;
}

.u-px240 {
	padding-right: 240px !important;
	padding-left: 240px !important;
}

.u-pt245 {
	padding-top: 245px !important;
}

.u-pb245 {
	padding-bottom: 245px !important;
}

.u-pr245 {
	padding-right: 245px !important;
}

.u-pl245 {
	padding-left: 245px !important;
}

.u-py245 {
	padding-top: 245px !important;
	padding-bottom: 245px !important;
}

.u-px245 {
	padding-right: 245px !important;
	padding-left: 245px !important;
}

.u-pt250 {
	padding-top: 250px !important;
}

.u-pb250 {
	padding-bottom: 250px !important;
}

.u-pr250 {
	padding-right: 250px !important;
}

.u-pl250 {
	padding-left: 250px !important;
}

.u-py250 {
	padding-top: 250px !important;
	padding-bottom: 250px !important;
}

.u-px250 {
	padding-right: 250px !important;
	padding-left: 250px !important;
}

.u-pt255 {
	padding-top: 255px !important;
}

.u-pb255 {
	padding-bottom: 255px !important;
}

.u-pr255 {
	padding-right: 255px !important;
}

.u-pl255 {
	padding-left: 255px !important;
}

.u-py255 {
	padding-top: 255px !important;
	padding-bottom: 255px !important;
}

.u-px255 {
	padding-right: 255px !important;
	padding-left: 255px !important;
}

.u-pt260 {
	padding-top: 260px !important;
}

.u-pb260 {
	padding-bottom: 260px !important;
}

.u-pr260 {
	padding-right: 260px !important;
}

.u-pl260 {
	padding-left: 260px !important;
}

.u-py260 {
	padding-top: 260px !important;
	padding-bottom: 260px !important;
}

.u-px260 {
	padding-right: 260px !important;
	padding-left: 260px !important;
}

.u-pt265 {
	padding-top: 265px !important;
}

.u-pb265 {
	padding-bottom: 265px !important;
}

.u-pr265 {
	padding-right: 265px !important;
}

.u-pl265 {
	padding-left: 265px !important;
}

.u-py265 {
	padding-top: 265px !important;
	padding-bottom: 265px !important;
}

.u-px265 {
	padding-right: 265px !important;
	padding-left: 265px !important;
}

.u-pt270 {
	padding-top: 270px !important;
}

.u-pb270 {
	padding-bottom: 270px !important;
}

.u-pr270 {
	padding-right: 270px !important;
}

.u-pl270 {
	padding-left: 270px !important;
}

.u-py270 {
	padding-top: 270px !important;
	padding-bottom: 270px !important;
}

.u-px270 {
	padding-right: 270px !important;
	padding-left: 270px !important;
}

.u-pt275 {
	padding-top: 275px !important;
}

.u-pb275 {
	padding-bottom: 275px !important;
}

.u-pr275 {
	padding-right: 275px !important;
}

.u-pl275 {
	padding-left: 275px !important;
}

.u-py275 {
	padding-top: 275px !important;
	padding-bottom: 275px !important;
}

.u-px275 {
	padding-right: 275px !important;
	padding-left: 275px !important;
}

.u-pt280 {
	padding-top: 280px !important;
}

.u-pb280 {
	padding-bottom: 280px !important;
}

.u-pr280 {
	padding-right: 280px !important;
}

.u-pl280 {
	padding-left: 280px !important;
}

.u-py280 {
	padding-top: 280px !important;
	padding-bottom: 280px !important;
}

.u-px280 {
	padding-right: 280px !important;
	padding-left: 280px !important;
}

.u-pt285 {
	padding-top: 285px !important;
}

.u-pb285 {
	padding-bottom: 285px !important;
}

.u-pr285 {
	padding-right: 285px !important;
}

.u-pl285 {
	padding-left: 285px !important;
}

.u-py285 {
	padding-top: 285px !important;
	padding-bottom: 285px !important;
}

.u-px285 {
	padding-right: 285px !important;
	padding-left: 285px !important;
}

.u-pt290 {
	padding-top: 290px !important;
}

.u-pb290 {
	padding-bottom: 290px !important;
}

.u-pr290 {
	padding-right: 290px !important;
}

.u-pl290 {
	padding-left: 290px !important;
}

.u-py290 {
	padding-top: 290px !important;
	padding-bottom: 290px !important;
}

.u-px290 {
	padding-right: 290px !important;
	padding-left: 290px !important;
}

.u-pt295 {
	padding-top: 295px !important;
}

.u-pb295 {
	padding-bottom: 295px !important;
}

.u-pr295 {
	padding-right: 295px !important;
}

.u-pl295 {
	padding-left: 295px !important;
}

.u-py295 {
	padding-top: 295px !important;
	padding-bottom: 295px !important;
}

.u-px295 {
	padding-right: 295px !important;
	padding-left: 295px !important;
}

.u-pt300 {
	padding-top: 300px !important;
}

.u-pb300 {
	padding-bottom: 300px !important;
}

.u-pr300 {
	padding-right: 300px !important;
}

.u-pl300 {
	padding-left: 300px !important;
}

.u-py300 {
	padding-top: 300px !important;
	padding-bottom: 300px !important;
}

.u-px300 {
	padding-right: 300px !important;
	padding-left: 300px !important;
}

.u-pt305 {
	padding-top: 305px !important;
}

.u-pb305 {
	padding-bottom: 305px !important;
}

.u-pr305 {
	padding-right: 305px !important;
}

.u-pl305 {
	padding-left: 305px !important;
}

.u-py305 {
	padding-top: 305px !important;
	padding-bottom: 305px !important;
}

.u-px305 {
	padding-right: 305px !important;
	padding-left: 305px !important;
}

.u-pt310 {
	padding-top: 310px !important;
}

.u-pb310 {
	padding-bottom: 310px !important;
}

.u-pr310 {
	padding-right: 310px !important;
}

.u-pl310 {
	padding-left: 310px !important;
}

.u-py310 {
	padding-top: 310px !important;
	padding-bottom: 310px !important;
}

.u-px310 {
	padding-right: 310px !important;
	padding-left: 310px !important;
}

.u-pt315 {
	padding-top: 315px !important;
}

.u-pb315 {
	padding-bottom: 315px !important;
}

.u-pr315 {
	padding-right: 315px !important;
}

.u-pl315 {
	padding-left: 315px !important;
}

.u-py315 {
	padding-top: 315px !important;
	padding-bottom: 315px !important;
}

.u-px315 {
	padding-right: 315px !important;
	padding-left: 315px !important;
}

.u-pt320 {
	padding-top: 320px !important;
}

.u-pb320 {
	padding-bottom: 320px !important;
}

.u-pr320 {
	padding-right: 320px !important;
}

.u-pl320 {
	padding-left: 320px !important;
}

.u-py320 {
	padding-top: 320px !important;
	padding-bottom: 320px !important;
}

.u-px320 {
	padding-right: 320px !important;
	padding-left: 320px !important;
}

.u-pt325 {
	padding-top: 325px !important;
}

.u-pb325 {
	padding-bottom: 325px !important;
}

.u-pr325 {
	padding-right: 325px !important;
}

.u-pl325 {
	padding-left: 325px !important;
}

.u-py325 {
	padding-top: 325px !important;
	padding-bottom: 325px !important;
}

.u-px325 {
	padding-right: 325px !important;
	padding-left: 325px !important;
}

.u-pt330 {
	padding-top: 330px !important;
}

.u-pb330 {
	padding-bottom: 330px !important;
}

.u-pr330 {
	padding-right: 330px !important;
}

.u-pl330 {
	padding-left: 330px !important;
}

.u-py330 {
	padding-top: 330px !important;
	padding-bottom: 330px !important;
}

.u-px330 {
	padding-right: 330px !important;
	padding-left: 330px !important;
}

.u-pt335 {
	padding-top: 335px !important;
}

.u-pb335 {
	padding-bottom: 335px !important;
}

.u-pr335 {
	padding-right: 335px !important;
}

.u-pl335 {
	padding-left: 335px !important;
}

.u-py335 {
	padding-top: 335px !important;
	padding-bottom: 335px !important;
}

.u-px335 {
	padding-right: 335px !important;
	padding-left: 335px !important;
}

.u-pt340 {
	padding-top: 340px !important;
}

.u-pb340 {
	padding-bottom: 340px !important;
}

.u-pr340 {
	padding-right: 340px !important;
}

.u-pl340 {
	padding-left: 340px !important;
}

.u-py340 {
	padding-top: 340px !important;
	padding-bottom: 340px !important;
}

.u-px340 {
	padding-right: 340px !important;
	padding-left: 340px !important;
}

.u-pt345 {
	padding-top: 345px !important;
}

.u-pb345 {
	padding-bottom: 345px !important;
}

.u-pr345 {
	padding-right: 345px !important;
}

.u-pl345 {
	padding-left: 345px !important;
}

.u-py345 {
	padding-top: 345px !important;
	padding-bottom: 345px !important;
}

.u-px345 {
	padding-right: 345px !important;
	padding-left: 345px !important;
}

.u-pt350 {
	padding-top: 350px !important;
}

.u-pb350 {
	padding-bottom: 350px !important;
}

.u-pr350 {
	padding-right: 350px !important;
}

.u-pl350 {
	padding-left: 350px !important;
}

.u-py350 {
	padding-top: 350px !important;
	padding-bottom: 350px !important;
}

.u-px350 {
	padding-right: 350px !important;
	padding-left: 350px !important;
}

.u-underline {
	text-decoration: underline;
}

.u-w600 {
	width: 600px !important;
}

.u-w700 {
	width: 700px !important;
}

.u-w800 {
	width: 800px !important;
}

.u-w1-divided {
	width: 100%;
}

.u-w2-divided {
	width: 50%;
}

.u-w3-divided {
	width: 33.3333333333%;
}

.u-w4-divided {
	width: 25%;
}

.u-w5-divided {
	width: 20%;
}

.u-w6-divided {
	width: 16.6666666667%;
}

.u-w7-divided {
	width: 14.2857142857%;
}

.u-w8-divided {
	width: 12.5%;
}

.u-w9-divided {
	width: 11.1111111111%;
}

.u-w10-divided {
	width: 10%;
}

.u-w-auto {
	width: auto !important;
}

.p-company-nav {
	margin-top: 150px;
	padding-top: 50px;
	border-top: 1px solid #ddd;
}
.p-company-nav__list {
	display: flex;
	justify-content: center;
	max-width: 1040px;
	margin: 0 auto;
}
[lang=en] .p-company-nav__list {
	max-width: 780px;
}
.p-company-nav__item {
	max-width: 200px;
	margin: 0 2.8846153846%;
}
[lang=en] .p-company-nav__item {
	margin: 0 3.8461538462%;
}
.p-company-nav__link {
	display: block;
	transition: opacity 0.2s ease-out;
}
.p-company-nav__img {
	display: block;
	margin-bottom: 13px;
}
.p-company-nav__text {
	display: block;
	font-size: 1.8rem;
	line-height: 1.333;
	text-align: center;
}

.p-company-skew {
	background: url(../images/company/bg_skew.png) no-repeat center top;
}

.p-profile-title {
	margin-bottom: 60px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.5;
	text-align: center;
}

.p-profile-table__cell {
	width: auto;
	padding: 18px 0;
	border-bottom: 1px solid #ddd;
}
.p-launch-table .p-profile-table__cell {
	padding-left: 20px;
}
.p-launch-table .p-profile-table__cell--function {
	width: 25%;
	font-weight: 500;
}
.p-profile-table__head {
	font-weight: 500;
}
.p-outline-table .p-profile-table__head {
	width: 22.3214285714%;
	padding-right: 10px;
	padding-left: 10px;
}
.p-launch-table .p-profile-table__head {
	width: 28.8461538462%;
	padding-right: 40px;
	border-bottom: none;
	font-size: 1.8rem;
	line-height: 1.444;
}

.p-profile-message {
	padding-top: 0;
}
.p-profile-message__title {
	margin-bottom: 105px;
}
.p-profile-message__lead {
	margin-bottom: 115px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.8;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-profile-message__footer {
	margin-top: 50px;
}
.p-profile-message__person {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-left: auto;
	text-align: right;
}
.p-profile-message__person-title {
	display: block;
	font-size: 1.7rem;
}
.p-profile-message__person-name {
	display: block;
	font-size: 2.8rem;
	line-height: 1.429;
	font-family: "Noto Serif JP", serif;
}
.p-profile-message__date {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 20px 0 0 auto;
	font-size: 1.7rem;
}

.p-message-subsection {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
}
.p-message-subsection--inverse {
	flex-direction: row;
}
.p-message-subsection + .p-message-subsection {
	margin-top: 144px;
}
.p-message-subsection__title {
	width: 100%;
	margin-bottom: 79px;
	font-weight: 500;
	font-size: 2.6rem;
	line-height: 1.462;
	text-align: center;
}
.p-message-subsection__text {
	flex: 1;
	padding-right: 8.9285714286%;
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-message-subsection__text--full {
	flex: 0 1 auto;
	width: 100%;
	margin-top: 2em;
	padding-right: 0;
	padding-left: 0;
}
.p-message-subsection__text p + p {
	margin-top: 2em;
}
.p-message-subsection__title + .p-message-subsection__text--full {
	margin-top: 0;
}
.p-message-subsection--inverse .p-message-subsection__text {
	padding-right: 0;
	padding-left: 8.9285714286%;
}
.p-message-subsection--inverse .p-message-subsection__text--full {
	padding-left: 0;
}
.p-message-subsection__img {
	flex-basis: 42.8571428571%;
}
.p-message-subsection__img--small {
	flex-basis: 32.1428571429%;
}

.p-profile-outline {
	margin-top: 180px;
}

.p-outline-table__caption {
	margin-top: 15px;
	color: #555;
}

.p-profile-launch {
	margin-top: 168px;
	padding: 80px 0 125px;
	background: url(../images/company/profile/bg_map.svg) no-repeat center top;
	background-size: 1796px auto;
}
.p-profile-launch__tab {
	margin-top: 70px;
}

.p-launch + .p-launch {
	margin-top: 40px;
	border-top: 1px solid #ddd;
}
.p-launch__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 23px 40px;
	border-bottom: 1px solid #ddd;
}
.p-launch__meta-title {
	padding-right: 12px;
	font-size: 1.4rem;
}
.p-launch__meta-data {
	font-weight: 500;
	font-size: 1.8rem;
}
.p-launch__meta-data:not(:last-child) {
	margin-right: 40px;
}
.p-launch__data {
	padding: 25px 40px;
}
.p-environmentalpolicy__lead {
	margin-bottom: 40px;
	font-size: 1.8rem;
	line-height: 1.333;
}

.p-environmentalpolicy-list__item + .p-environmentalpolicy-list__item {
	margin-top: 2em;
}

.p-profile-environmentalactivity {
	margin-top: 170px;
}
.p-profile-environmentalactivity__lead {
	margin-top: 60px;
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-profile-environmentalactivity__img {
	margin: 60px auto 0;
}
.p-profile-environmentalactivity__banner {
	max-width: 480px;
}
.p-profile-environmentalactivity__mark-tuv {
	max-width: 240px;
}
.p-profile-environmentalactivity__mark-ea21 {
	max-width: 200px;
}

.p-philosophy {
	position: relative;
	margin-top: 40px;
}
.p-philosophy__title {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 47px;
	text-align: center;
}
.p-philosophy__title-img {
	display: block;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 19px;
}
.p-philosophy__title-text {
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.2;
}
.p-philosophy__content + .p-philosophy__title {
	margin-top: 140px;
}
.p-philosophy__content {
	font-size: 3rem;
	line-height: 1.8;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-philosophy__img {
	display: block;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 130px auto 0;
}

.p-philosophy-statement {
	margin-top: 100px;
	padding-top: 95px;
}
.p-philosophy-statement__title {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 80px;
}
.p-philosophy-statement__content {
	padding-bottom: 100px;
	font-size: 2.4rem;
	line-height: 2;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-philosophy-statement__content p + p {
	margin-top: 45px;
}

.p-statement-notes {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
}
.p-statement-notes__term {
	font-weight: 500;
}
.p-history-intro {
	position: relative;
}
.p-history-intro__message {
	margin-top: -15px;
	padding-bottom: 120px;
	font-size: 2.2rem;
	line-height: 2;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
[lang=en] .p-history-intro__message {
	max-width: 1120px;
	margin-right: auto;
	margin-left: auto;
	font-size: 2.4rem;
	line-height: 2;
}

.p-history-container {
	display: flex;
}
.p-history-sidebar {
	width: 60px;
}

.p-history-nav {
	z-index: 10;
	position: sticky;
	top: 110px;
	left: 60px;
	padding-left: 15px;
}
.p-history-nav__item {
	color: #aaa;
	font-size: 1.8rem;
	line-height: 2.778;
	font-family: "Oswald", sans-serif;
	cursor: pointer;
	transition: all 0.3s;
}
.p-history-nav__item a {
	color: inherit;
}
.p-history-nav__item.is-current {
	color: #222;
}

.p-history-main {
	width: 100%;
	margin-left: -60px;
}

.p-history-line {
	position: relative;
	padding-top: 60px;
}
.p-history-line::before {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	width: 1px;
	height: 100%;
	border-left: 1px solid #ccc;
	content: "";
}

.p-history-group {
	padding-right: 60px;
	padding-left: 60px;
	background-repeat: no-repeat;
}
.p-history-group--09 {
	background-image: url(../images/company/bg_skew.png);
	background-position: center 465px;
}
.p-history-group--08 {
	background-image: url(../images/company/bg_skew_s.png);
	background-position: center 280px;
}
.p-history-group--06 {
	padding-top: 120px;
	background-image: url(../images/company/bg_skew.png);
	background-position: center 50px;
}
.p-history-group--05 {
	margin-top: -50px;
	padding-top: 50px;
	background-image: url(../images/company/bg_skew_s.png);
	background-position: center 0;
}
.p-history-group--04 {
	background-image: url(../images/company/bg_skew_s.png), url(../images/company/bg_skew_s.png);
	background-position: center 240px, center 850px;
}
.p-history-group--03 {
	padding-top: 50px;
	padding-bottom: 100px;
	background-image: url(../images/company/bg_skew_s.png), url(../images/company/bg_skew.png);
	background-position: center 0, center 570px;
}
.p-history-group--01 {
	margin-bottom: 50px;
	padding-top: 150px;
	padding-bottom: 120px;
	background-image: url(../images/company/bg_skew.png);
	background-position: center 80px;
}
.p-history-group__inner {
	max-width: 1480px;
	margin: 0 auto;
}

.p-history-year {
	position: relative;
	width: 50%;
	margin-left: auto;
	padding-left: 3.7162162162%;
	font-size: 4.8rem;
	font-family: "Oswald", sans-serif;
}
.p-history-year::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 9px;
	height: 9px;
	margin-left: -4px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 50%;
	background: #555;
	content: "";
}
.p-history-year--inverse {
	margin-right: auto;
	margin-left: 0;
	padding-right: 3.7162162162%;
	padding-left: 0;
	text-align: right;
}
.p-history-year--inverse::before {
	right: 0;
	left: auto;
	margin-right: -4.5px;
}

.p-history {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	max-width: 1120px;
	margin: 0 auto;
}
.p-history__img, .p-history__text {
	flex: 1;
	max-width: 44.6428571429%;
}
.p-history__img {
	margin-top: -72px;
}
.p-history__title {
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.571;
	font-family: "Noto Serif JP", serif;
}
[lang=en] .p-history__title {
	font-size: 2.8rem;
}
.p-history__lead {
	word-break: break-all;
}
[lang=en] .p-history__lead {
	word-break: normal;
}
.p-history--inverse {
	flex-direction: row;
}
.p-history--center-x {
	align-self: center;
	text-align: center;
}
.p-history--center-x img {
	margin: 0 auto;
}
.p-history--center-y {
	align-items: center;
}
.p-history--mt0 {
	margin-top: 0;
}
.p-history--mt85 {
	margin-top: 85px;
}
.p-history--mt100 {
	margin-top: 100px;
}
.p-history--mt-50 {
	margin-top: -50px;
}
.p-history--mt-100 {
	margin-top: -100px;
}
.p-history--mt-140 {
	margin-top: -140px;
}
.p-history--mb85 {
	margin-bottom: 85px;
}
.p-history--mb120 {
	margin-bottom: 120px;
}
.p-history--mb150 {
	margin-bottom: 150px;
}
.p-history + .p-history .p-history__img {
	margin-top: 0;
}

.p-business-intro {
	position: relative;
	padding-top: 100px;
}
.p-business-intro__title {
	margin-bottom: 66px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.6;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-business-intro__content {
	font-size: 2.4rem;
	line-height: 2;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-business-intro__content p + p {
	margin-top: 35px;
}

.p-business-subsection__title {
	margin-bottom: 60px;
	text-align: center;
}
.p-business-subsection__title-img {
	display: block;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 80px;
}
.p-business-mission .p-business-subsection__title-img {
	margin-bottom: 115px;
}
.p-business-subsection__title-text {
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.6;
	font-family: "Noto Serif JP", serif;
}
.p-business-subsection__lead {
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-business-subsection__p {
	margin-top: 30px;
}

.p-business-card {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.p-business-card__item {
	max-width: 360px;
}
.p-business-card__item--large {
	max-width: 480px;
}
.p-business-card__fig {
	position: relative;
}
.p-business-card__img {
	position: relative;
}
.p-business-card__title {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #fff;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.5;
	text-align: center;
}

.p-business-innovation {
	margin-top: 122px;
	padding-top: 128px;
	background: url(../images/company/business/bg_innovation.svg) no-repeat center top;
}

.p-innovation {
	margin-top: 70px;
	overflow: hidden;
}
.p-innovation__title {
	position: relative;
	margin-bottom: 40px;
	padding: 6px 0;
}
.p-innovation__title::before, .p-innovation__title::after {
	display: block;
	position: absolute;
	top: 50%;
	width: calc(50% - 142px);
	height: 1px;
	background: #777;
	content: "";
}
.p-innovation__title::before {
	z-index: 0;
	left: 0;
}
.p-innovation__title::after {
	z-index: 0;
	right: 0;
}
.p-innovation__title-text {
	display: block;
	z-index: 1;
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding: 0 38px;
	font-weight: 500;
	font-size: 2.6rem;
	line-height: 1;
	text-align: center;
}
.p-innovation__card {
	max-width: 1020px;
	margin: 0 auto -35px;
}
.p-innovation__card-item {
	max-width: 280px;
	margin: 0 2.9411764706% 35px;
}
.p-innovation__card-caption {
	margin-top: 20px;
	font-size: 1.8rem;
	line-height: 1.556;
}
[lang=en] .p-innovation__card-caption {
	font-size: 1.6rem;
}

.p-business-business {
	margin-top: 159px;
	padding-top: 115px;
	background: url(../images/company/business/bg_business.svg) no-repeat center top;
}

.p-business {
	margin-top: 95px;
}
.p-business__card {
	align-items: center;
	max-width: 920px;
	margin: 0 auto;
}
.p-business__card-item {
	margin: 0 2.1739130435%;
}

.p-business-output {
	margin-top: 129px;
	padding-top: 120px;
	background: url(../images/company/business/bg_output.svg) no-repeat center top;
}

.p-output {
	margin-top: 90px;
}
.p-output__card {
	align-items: center;
	max-width: 920px;
	margin: 0 auto;
}
.p-output__card-item {
	margin: 0 2.1739130435%;
}

.p-business-outcome {
	position: relative;
	margin-top: 129px;
	padding-top: 120px;
	padding-bottom: 127px;
	background: url(../images/company/business/bg_outcome.svg) no-repeat center top;
}

.p-outcome__card {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-template-areas: "group--01 group--01 group--01 group--02" "solution eco social cashflow";
	margin-top: 95px;
	gap: 3.5714285714vw 3.5714285714%;
}
.p-outcome__card-group {
	position: relative;
	padding: 6px 0;
	text-align: center;
}
.p-outcome__card-group::before, .p-outcome__card-group::after {
	display: block;
	position: absolute;
	top: 50%;
	width: calc(50% - 4em - 15px);
	height: 1px;
	background: #777;
	content: "";
}
[lang=en] .p-outcome__card-group::before, [lang=en] .p-outcome__card-group::after {
	width: calc(50% - 5em - 15px);
}
.p-outcome__card-group::before {
	z-index: 0;
	left: 0;
}
.p-outcome__card-group::after {
	z-index: 0;
	right: 0;
}
.p-outcome__card-group--01 {
	grid-area: group--01;
}
[lang=en] .p-outcome__card-group--01 {
	align-self: center;
}
.p-outcome__card-group--02 {
	grid-area: group--02;
}
[lang=en] .p-outcome__card-group--02 {
	align-self: center;
}
[lang=en] .p-outcome__card-group--02::before, [lang=en] .p-outcome__card-group--02::after {
	display: none;
}
.p-outcome__card-item {
	min-width: 0;
	max-width: 240px;
}
.p-outcome__card-item--solution {
	grid-area: solution;
}
.p-outcome__card-item--eco {
	grid-area: eco;
}
.p-outcome__card-item--social {
	grid-area: social;
}
.p-outcome__card-item--cashflow {
	grid-area: cashflow;
}
.p-outcome__card-circle {
	position: relative;
	width: 100%;
	border-radius: 50%;
}
.p-outcome__card-circle-inner {
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-position-x: center;
}
.p-outcome__card-title {
	position: absolute;
	top: 0;
	padding-top: 58.75%;
	-webkit-transform: none;
	transform: none;
	font-size: 2.2rem;
	line-height: 1.455;
}
.p-outcome__card-caption {
	margin-top: 14px;
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-outcome__card-item--solution .p-outcome__card-circle-inner {
	background-image: url(../images/company/business/icon_solution.svg);
	background-size: 21.6666666667% auto;
	background-color: #1f67ab;
	background-position-y: 60px;
}
.p-outcome__card-item--eco .p-outcome__card-circle-inner {
	background-image: url(../images/company/business/icon_eco.svg);
	background-size: 21.6666666667% auto;
	background-color: #21bad9;
	background-position-y: 61px;
}
.p-outcome__card-item--social .p-outcome__card-circle-inner {
	background-image: url(../images/company/business/icon_social.svg);
	background-size: 24.1666666667% auto;
	background-color: #24b5a9;
	background-position-y: 65px;
}
.p-outcome__card-item--cashflow .p-outcome__card-circle-inner {
	background-image: url(../images/company/business/icon_cashflow.svg);
	background-size: 20.4166666667% auto;
	background-color: #1f67ab;
	background-position-y: 60px;
}
.p-outcome__card-item--cashflow .p-outcome__card-title {
	padding-top: 51.25%;
}
.p-outcome__group-title {
	display: block;
	z-index: 1;
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding: 0 28px;
	font-weight: 500;
	font-size: 2.6rem;
	line-height: 1;
	text-align: center;
}
.p-outcome__group-title--noborder {
	padding-right: 0;
	padding-left: 0;
}

.p-business-mission {
	position: relative;
	margin-top: 200px;
	background: url(../images/company/business/bg_mission.svg) no-repeat center 104px;
}
.p-business-mission::after {
	display: block;
	z-index: 0;
	position: absolute;
	top: -200px;
	left: 50%;
	width: 18px;
	height: 135px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: url(../images/company/business/bg_dot.svg) no-repeat center top;
	background-size: contain;
	content: "";
}

.p-mission {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 100%;
	height: 100%;
	margin-top: 315px;
	padding-top: 90px;
	border-top: 1px solid #ddd;
}
.p-mission__header {
	position: relative;
	width: 100%;
	margin-bottom: 40px;
}
.p-mission__header::before, .p-mission__header::after {
	display: block;
	position: absolute;
	top: 50%;
	width: 50%;
	height: 1px;
	background: #777;
	content: "";
}
.p-mission__header::before {
	z-index: 0;
	left: 0;
}
.p-mission__header::after {
	z-index: 0;
	right: 0;
}
.p-mission__title {
	z-index: 1;
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	background: #fff;
	font-weight: 500;
	font-size: 2.6rem;
	text-align: center;
}
.p-mission__card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 46.4285714286%;
	max-width: 520px;
	height: auto;
}
.p-mission__card-title {
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.5;
	text-align: center;
}
.p-mission__card-img {
	padding-top: 49px;
}
.p-mission__card-text {
	flex: 1;
	padding-top: 23px;
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-mission__card-button {
	padding-top: 59px;
}
.p-mission__card-button .p-button {
	max-width: 100%;
}

.p-csv-intro {
	position: relative;
	padding-top: 180px;
}
.p-csv-intro__content {
	font-size: 2.4rem;
	line-height: 2;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-csv-intro__content p + p {
	margin-top: 44px;
}

.p-csv-subsection {
	margin-top: 220px;
}
.p-csv-subsection__title {
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.6;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-csv-01 .p-csv-subsection__content {
	margin-top: 86px;
}
.p-csv-02 .p-csv-subsection__content {
	margin-top: 84px;
}
.p-csv-03 .p-csv-subsection__content {
	margin-top: 76px;
}
.p-csv-04 .p-csv-subsection__content {
	margin-top: 80px;
}
.p-csv-subsection__img {
	margin-bottom: 90px;
	text-align: center;
}
.p-csv-02 .p-csv-subsection__img, .p-csv-03 .p-csv-subsection__img {
	max-width: 70%;
	margin-inline: auto;
}
.p-csv-subsection__lead {
	font-size: 1.7rem;
	line-height: 1.647;
}
.p-csv-subsection__lead p + p {
	margin-top: 30px;
}
.p-csv-subsection__banner {
	max-width: 500px;
	margin: 0 auto 65px;
}

.p-recruit {
	margin-top: 25px;
}
.p-recruit__message {
	font-size: 2.4rem;
	line-height: 2;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}
.p-recruit__message p + p {
	margin-top: 70px;
}
.p-recruit__info {
	margin-top: 175px;
}
.p-recruit__info-title {
	margin-bottom: 50px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.5;
	text-align: center;
}
.p-recruit__info-lead {
	text-align: center;
}
.p-recruit__wanted {
	position: relative;
	padding: 18px 40px 18px 0;
	border-bottom: 1px solid #ddd;
	font-weight: 500;
	font-size: 1.8rem;
	cursor: pointer;
}
.p-recruit__wanted::before, .p-recruit__wanted::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 2px;
	margin-top: -1px;
	background: #808080;
	content: "";
}
.p-recruit__wanted::after {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	transition: all 0.3s ease-in;
}
.p-recruit__wanted.is-open::after {
	-webkit-transform: rotate(0);
	transform: rotate(0);
}
.p-recruit__wanted-content {
	display: none;
	background: #f2f2f2;
}

.p-recruit-career__lead {
	margin-bottom: 2em;
}
.p-recruit-career__title {
	margin-bottom: 60px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.5;
	text-align: center;
}

.p-recruit-career-table__cell {
	width: auto;
	padding: 18px 10px 18px 0;
	border-bottom: 1px solid #ddd;
}
.p-recruit-career-table__head {
	width: 22.3214285714%;
	padding-right: 10px;
	padding-left: 10px;
	font-weight: 500;
}

.p-news-content {
	overflow: hidden;
}

.p-news-filter {
	margin-bottom: 60px;
	overflow: hidden;
	border-bottom: 1px solid #d5d5d5;
}
.page-home .p-news-filter {
	display: none;
}

.p-news-filter-row {
	display: flex;
	justify-content: flex-end;
	margin-right: 40px;
}

.p-news-filter-list {
	display: flex;
	justify-content: center;
	line-height: 1.2;
}
.p-news-filter-list__item {
	position: relative;
	padding: 0 22px 22px;
	white-space: nowrap;
	cursor: pointer;
}
.p-news-filter-list__item::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	content: "";
}
.p-news-filter-list__item.is-current::after {
	background-image: linear-gradient(to bottom, #0084b2, #0084b2), linear-gradient(to top, #1f66aa, #25b6a9);
}

.p-news-filter-text {
	font-size: 1.5rem;
}
.p-news-filter-list__item.is-current .p-news-filter-text, .p-news-filter-list__item:hover .p-news-filter-text {
	font-weight: 500;
}

.p-news-list.is-grid {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1.7857142857% -40px;
}
.p-news-list__item + .p-news-list__item {
	margin-top: 20px;
}
.page-home .p-news-list__item.is-inactive {
	display: none !important;
}
.p-news-list.is-grid .p-news-list__item {
	width: 25%;
	margin-bottom: 40px;
	padding: 0 1.7857142857%;
}
.p-news-list.is-grid .p-news-list__item + .p-news-list__item {
	margin-top: 0;
}

.p-news-article {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	word-break: break-all;
}
.is-grid .p-news-article {
	display: block;
}
.p-news-article__img {
	display: none;
}
.is-grid .p-news-article__img {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}
.is-grid .p-news-article__img img {
	width: 100%;
	height: auto;
}
.p-news-article__meta {
	display: flex;
	flex-basis: 245px;
	align-items: center;
	justify-content: space-between;
	padding-right: 18px;
}
.is-grid .p-news-article__meta {
	margin-bottom: 10px;
	padding-right: 0;
}
.p-news-article__label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 130px;
	height: 30px;
	border-radius: 30px;
	background-color: #0084b2;
	color: #fff;
	font-size: 1.3rem;
	letter-spacing: 0.6px;
	text-align: center;
}
.p-news-article__label--important {
	background-color: #d93636;
}
.is-grid .p-news-article__label {
	width: 125px;
	height: 24px;
	font-size: 1.2rem;
}
.p-news-article__date {
	color: #555;
	font-size: 1.6rem;
	font-family: "Roboto", sans-serif;
}
.is-grid .p-news-article__date {
	font-size: 1.2rem;
	letter-spacing: 0.6px;
}
.p-news-article__title {
	flex: 1;
}
.is-grid .p-news-article__title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	padding-left: 0;
	overflow: hidden;
}
.p-news-article:hover {
	text-decoration: none;
}
.p-news-article:hover .p-news-article__title {
	text-decoration: underline;
}

.p-news-filter-box {
	margin-bottom: 60px;
}
.p-news-filter-box__inner {
	padding: 35px;
	background: #f5f5f5;
}
.p-news-filter-box__title {
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 2rem;
	text-align: center;
}
.p-news-filter-box__notes {
	margin-top: 1em;
	font-size: 1.2rem;
}

.p-news-view-wrap {
	display: flex;
	align-items: center;
	padding-left: 40px;
}

.p-news-view-label {
	margin-right: 10px;
	font-size: 1.4rem;
	line-height: 1.5;
}

.p-news-view-switch {
	display: inline-flex;
	align-items: center;
}
.p-news-view-switch__item {
	margin-left: 5px;
}
.p-news-view-switch__btn {
	display: block;
	position: relative;
	width: 50px;
	height: 50px;
	overflow: hidden;
	border: 1px solid #aaa;
	border-radius: 100%;
	background: #fff;
	text-indent: 100%;
	white-space: nowrap;
}
.p-news-view-switch__btn::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-position: left top;
	background-size: 20px 20px;
	background-repeat: no-repeat;
	content: "";
}
.p-news-view-switch__btn--grid::before {
	width: 20px;
	height: 20px;
	background-image: url(../images/news/icon_grid.png);
	background-size: 20px 20px;
}
.p-news-view-switch__btn--grid.is-current::before {
	background-image: url(../images/news/icon_grid_current.png);
}
.p-news-view-switch__btn--list::before {
	width: 21px;
	height: 14px;
	background-image: url(../images/news/icon_list.png);
	background-size: 21px 14px;
}
.p-news-view-switch__btn--list.is-current::before {
	background-image: url(../images/news/icon_list_current.png);
}

.p-news-filter-select {
	flex: 1;
	max-width: 530px;
}
.p-news-filter-select .c-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	height: 50px;
	padding: 0 31.36px 0 25px;
	border: 1px solid #aaa;
	background: url(../images/news/icon_arrow_select.png) no-repeat right 20px center #fff;
	background-size: 11.36px auto;
	color: inherit;
	font-size: 1.5rem;
}

.p-news-tag-wrap {
	display: flex;
	flex-wrap: wrap;
}
.p-news-list .p-news-tag-wrap {
	margin-top: 5px;
	margin-left: calc(158px + 5em);
	padding-left: 22px;
}
.p-news-list.is-grid .p-news-tag-wrap {
	margin-left: 0;
	padding-left: 0;
}

.p-news-tag {
	display: inline-block;
	position: relative;
	margin-right: 10px;
	padding-left: 18px;
	color: #555;
	font-size: 1.2rem;
}
.p-news-tag::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 13px;
	height: 13px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background: url(../images/news/icon_tag.png) no-repeat left top;
	background-size: 13px 13px;
	content: "";
}

.p-article-header {
	width: 100%;
}
.p-article-header__title {
	position: relative;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.7;
	letter-spacing: 1.6px;
}
.p-article-header__meta {
	display: flex;
	row-gap: 10px;
	justify-content: space-between;
	margin-bottom: 10px;
}
.p-article-header__category {
	display: grid;
	grid-template-columns: 130px 1fr;
	align-items: center;
}
.p-article-header__category .p-news-tag-wrap {
	margin-top: 0;
	margin-left: 10px;
}
.p-article-header__release {
	text-align: right;
}
.p-article-header__author {
	font-weight: 500;
	white-space: nowrap;
}
.p-article-header__date {
	color: #555;
	font-size: 1.2rem;
}
.p-article-header__buttons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 10px;
}
.p-article-header__sub-title {
	margin-bottom: 10px;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.389;
}
.p-page-header__title + .p-article-header__sub-title {
	margin-top: 10px;
	margin-bottom: 0;
}

.p-article-button-group {
	display: flex;
	align-items: center;
}
.p-article-button-group__item {
	display: flex;
	align-items: center;
}
.p-article-button-group__item:not(:first-child) {
	margin-left: 20px;
}
.p-article-button-group + .p-article-button-group::before {
	display: block;
	width: 0;
	height: 26px;
	margin: 0 25px;
	border-left: 1px solid #ccc;
	content: "";
}

.p-icon-button {
	display: inline-flex;
	position: relative;
	align-items: center;
	justify-content: center;
}
.p-icon-button img {
	display: block;
	height: auto;
}
.p-icon-button--facebook {
	width: 27px;
}
.p-icon-button--x {
	width: 25px;
}
.p-icon-button--download {
	width: 23px;
}
.p-icon-button--url {
	width: 30px;
}

.p-article + .p-article {
	margin-top: 4em;
}
.p-article a {
	word-break: break-all;
}
.p-article a:not([class]) {
	color: #222;
	text-decoration: underline;
}
.p-article a:not([class]):hover {
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}
.p-article a:not([class])[target=_blank]::after {
	display: inline-block;
	width: 15px;
	height: 11px;
	margin-left: 6px;
	background: url(../images/common/icon_blank.svg) no-repeat left center;
	background-size: contain;
	content: "";
	vertical-align: middle;
}
.p-article a:not([class])[href$=pdf]::after {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-left: 6px;
	background: url(../images/common/icon_pdf.png) no-repeat left center;
	background-size: 14px 14px;
	content: "";
	vertical-align: middle;
}
.p-article b:not([class]) {
	font-weight: 500;
}
.p-article .p-article-elem,
.p-article p,
.p-article ul,
.p-article ol,
.p-article dl,
.p-article table {
	word-wrap: break-word;
	margin-top: 1.667em;
	overflow-wrap: break-word;
}
.p-article .p-article-elem:first-child,
.p-article p:first-child,
.p-article ul:first-child,
.p-article ol:first-child,
.p-article dl:first-child,
.p-article table:first-child {
	margin-top: 0;
}
.p-article__heading-lv2 {
	margin-bottom: 2em;
	font-weight: 500;
	font-size: 2rem;
}
.p-article__heading-lv2:not(:first-child) {
	margin-top: 4em;
}
.p-article__heading-lv3 {
	margin-bottom: 1em;
	font-weight: 500;
	font-size: 1.6rem;
}
.p-article__heading-lv3:not(:first-child) {
	margin-top: 3.375em;
}
.p-article__heading-lv3 + p, .p-article__heading-lv3 + ul, .p-article__heading-lv3 + ol, .p-article__heading-lv3 + dl, .p-article__heading-lv3 + table {
	margin-top: 1em;
}
.p-article__links {
	margin-bottom: 4em;
}
.p-article__links .c-list-dot__item {
	margin-bottom: 0.8em;
}
.p-article__table {
	margin: 2.667em 0;
}
.p-article__table .c-table {
	margin-top: 0;
}
.p-article .p-table-scroll > .c-table {
	min-width: 600px;
	margin-bottom: 0;
}
.p-article__footer {
	margin-top: 50px;
	padding-top: 50px;
	border-top: 1px solid #d5d5d5;
}
.p-article__notice {
	margin-top: 2.75em;
	margin-bottom: 1.2em;
	font-weight: 500;
	font-size: 2rem;
	text-align: center;
}
.p-article__notes {
	font-size: 1.2rem;
}
.p-article__table {
	width: auto;
	border-collapse: collapse;
}
.p-article__table-cell {
	padding: 16px 20px;
	border: 1px solid #ddd;
	font-size: 1.4rem;
	text-align: left;
	vertical-align: middle;
}
.p-article__table-head {
	background: #fcfcfc;
	font-weight: 500;
}
.p-article__table-head--nowrap {
	white-space: nowrap;
}

.p-contact-box {
	margin-top: 60px;
	padding: 29px;
	border: 1px solid #d5d5d5;
}
.p-contact-box__name {
	font-weight: 500;
	font-size: 2rem;
}
.p-contact-box__address {
	display: flex;
	row-gap: 10px;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-top: 18px !important;
}
.p-contact-box__label {
	width: 96px;
	padding: 2px 0 1px;
	border: 1px solid;
	border-radius: 14px;
	font-weight: 500;
	font-size: 1.4rem;
	text-align: center;
}
.p-contact-box__data {
	width: calc(100% - 96px);
	padding: 2px 0 1px 8px;
	overflow-wrap: break-word;
}
.p-contact-box__notes {
	margin-top: 10px !important;
	font-size: 1.3rem;
}

.p-image-grid-wrap {
	max-width: 960px;
	margin: calc(4em - 30px) auto 4em;
}
.p-article__notice + .p-image-grid-wrap {
	margin-top: 0;
}
.p-article-end + .p-image-grid-wrap {
	margin-top: 0;
}

.p-image-grid {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}
.p-image-grid__item {
	margin-top: 30px;
	padding: 0 15px;
}
.p-image-grid__item--12 {
	width: 100%;
}
.p-image-grid__item--6 {
	width: 50%;
}
.p-image-grid__item--4 {
	width: 33.333%;
}
.p-image-grid__item--3 {
	width: 25%;
}
.p-image-grid__item--9 {
	width: 75%;
}
.p-image-grid__item--8 {
	width: 66.667%;
}
.p-image-grid__item img {
	display: inline;
}
.p-article-end + .p-image-grid-wrap .p-image-grid__item {
	margin-top: 0;
}

.p-image {
	text-align: center;
}
.p-image__caption {
	margin-top: 0.667em;
}

.p-article-end {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	margin-top: 2.667em;
	margin-bottom: 6.333em;
	text-align: right;
}
.p-article-end__name {
	margin-top: 5px !important;
	margin-bottom: 1.333em;
	font-weight: 500;
}

.p-article-flex {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 1.667em;
}
.p-article-flex:first-child {
	margin-top: 0;
}
.p-article-flex__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.p-article-flex__row + .p-article-flex__row {
	margin-top: 20px;
}
.p-article-flex__col {
	flex: 1;
}
.p-article-flex__col--fit {
	flex: 0 0 fit-content;
}
.p-article-flex__col--fit.p-article-flex__col--fit-qr {
	max-width: 72px;
}
.p-article-flex__col--text + .p-article-flex__col--fit {
	margin-left: 20px;
}

.p-article-grid {
	display: grid;
	grid-template-columns: 1fr auto;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
	margin-top: 1.667em;
}
.p-article-grid__title {
	grid-row: 1/2;
	grid-column: 1/2;
}
.p-article-grid__text {
	grid-row: 2/3;
	grid-column: 1/2;
}
.p-article-grid__img {
	grid-row: 1/4;
	grid-column: 2/3;
	align-self: center;
}

.p-home-section {
	position: relative;
	padding-top: 60px;
}
.p-home-section__inner {
	position: relative;
	margin: 0 auto;
}
.p-home-section__grid {
	display: grid;
	position: relative;
	grid-template-rows: auto;
	grid-template-columns: repeat(5, minmax(3.75vw, 60px)) minmax(62.5vw, 1000px) repeat(5, minmax(3.75vw, 60px));
	margin: 0 auto;
}
.p-home-section__grid-news {
	grid-column: 6/7;
}
.p-home-section__grid-pickup, .p-home-section__grid-corporate {
	grid-column: 5/8;
}
.p-home-section__grid-pickup01 {
	grid-column: 6/12;
	padding-top: 72.5px;
}
[lang=en] .p-home-section__grid-pickup01 {
	grid-column: 5/11;
}
.p-home-section__grid-pickup02 {
	grid-column: 4/9;
	padding-top: 149px;
}
.p-home-section__grid-pickup-row {
	display: flex;
	justify-content: space-between;
}
.p-home-section__grid-pickup-col01 {
	width: 33.75vw;
	max-width: 540px;
}
.p-home-section__grid-pickup-col02 {
	width: 30vw;
	max-width: 480px;
	padding-top: 80px;
}
.p-home-section__grid-pickup03 {
	grid-column: 3/8;
	padding-top: 75px;
}
.p-home-section__grid-pickup04 {
	grid-column: 6/10;
	padding-top: 105px;
}
.p-home-section__header {
	position: relative;
}
.p-home-section__header::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -60px;
	left: -8.625vw;
	width: 1px;
	height: 240px;
	-webkit-transform: skewX(-45deg);
	transform: skewX(-45deg);
	-webkit-transform-origin: left bottom;
	transform-origin: left bottom;
	background: #707070;
	background: linear-gradient(to bottom, #707070 25%, transparent 25% 55%, #707070 55%);
	background-size: contain;
	content: "";
}
.p-home-news .p-home-section__header::after {
	height: 100px;
}
.p-home-news .p-home-section__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.p-home-section__title {
	display: flex;
	z-index: 1;
	position: relative;
	align-items: center;
	height: 77px;
}
.p-home-pickup .p-home-section__title {
	width: 237px;
}
[lang=en] .p-home-pickup .p-home-section__title {
	width: 392px;
}
.p-home-corporate .p-home-section__title {
	width: 404px;
	height: 141px;
}
.p-home-news .p-home-section__title {
	width: 197px;
}
.p-home-section__title-img {
	display: block;
	position: relative;
}
.p-home-section__title-img img {
	display: block;
	width: 100%;
}
.p-home-section__lead {
	z-index: 1;
	position: relative;
	grid-row: 2/3;
	grid-column: 1/2;
	margin-bottom: 10px;
	font-size: 1.6rem;
	line-height: 1.5;
}
.p-home-section__lead-category {
	margin-bottom: 5px;
	font-weight: 700;
	font-size: 2rem;
}

.p-home-pickup__content-inner {
	position: relative;
}

.p-home-pickup-bg {
	position: relative;
	margin-top: 70px;
	padding-top: 180px;
	overflow: hidden;
}
.p-home-pickup-bg__fixed {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 50%;
	width: 1570px;
	height: 2029px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: url(../images/top/bg_pickup.png) no-repeat right 0;
	background-size: auto 100%;
}
[lang=en] .p-home-pickup-bg__fixed {
	width: 1570px;
	height: 2029px;
	background-image: url(../images/top/en/bg_inspiration.png);
}

.p-home-pickup-grid {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 1fr 1fr;
}
.p-home-pickup-grid__item04 {
	grid-row: 3/4;
	grid-column: 1/3;
	padding-top: 148px;
}
.p-home-pickup-grid__item05 {
	grid-row: 4/5;
	grid-column: 1/2;
	padding-top: 99px;
	padding-left: 120px;
}
.p-home-pickup-grid__item06 {
	grid-row: 4/6;
	grid-column: 2/3;
	padding-top: 239px;
	padding-right: 120px;
}
.p-home-pickup-grid__item07 {
	grid-row: 5/6;
	grid-column: 1/2;
	padding-top: 90px;
	padding-left: 240px;
}
.p-home-pickup-grid__item08 {
	grid-row: 6/7;
	grid-column: 1/3;
	padding-top: 117px;
	padding-left: 60px;
}

.p-pickup-article {
	position: relative;
}
.p-pickup-article__fig {
	position: relative;
}
.p-pickup-article__img img {
	width: 100%;
	max-width: none;
}
.p-pickup-article__caption-head, .p-pickup-article__caption-main {
	display: inline;
}
.p-pickup-article__caption-pipe {
	color: #aaa;
	font-size: 2.6rem;
	font-family: "Noto Sans JP", sans-serif;
}
[lang=en] .p-pickup-article__caption-pipe {
	font-size: 2rem;
}
.p-pickup-article__caption-en {
	font-weight: 600;
	font-size: 3rem;
}
.p-pickup-article__caption-en .c-font-serif {
	font-size: 2.4rem;
}
.p-pickup-article__caption-ja {
	font-size: 2.6rem;
}
.p-pickup-article__caption-head .p-pickup-article__caption-ja {
	font-weight: 600;
}
.p-pickup-article__caption-ja--greeting {
	font-weight: 600;
}
.p-pickup-article__caption-en + .p-pickup-article__caption-ja-sub {
	margin-left: 5px;
	font-weight: 600;
	font-size: 2.6rem;
}
.p-pickup-article--01 {
	width: 75vw;
	max-width: 1200px;
	margin-left: auto;
}
.p-pickup-article--01.p-pickup-article-group {
	width: 81.25vw;
	max-width: 1300px;
}
.p-pickup-article--01 .p-pickup-article__caption {
	margin-top: 24px;
	padding-right: 20px;
}
.p-pickup-article--02 {
	width: 100%;
}
.p-pickup-article--02 .p-pickup-article__caption {
	margin-top: 16px;
}
.p-pickup-article--03 {
	width: 100%;
}
.p-pickup-article--03 .p-pickup-article__caption {
	margin-top: 21px;
}

.p-pickup-media {
	position: relative;
	background: url(../images/top/bg_line.svg) no-repeat left 50vw bottom 10vw;
}

.p-pickup-movie {
	position: relative;
	width: 75vw;
	max-width: 1200px;
	background: #fff;
}
.p-pickup-movie--small {
	width: 60vw;
	max-width: 960px;
	margin-left: auto;
}
.p-pickup-movie__frame {
	max-width: 1200px;
}
.p-pickup-movie__caption {
	margin-top: 32px;
}
[lang=en] .p-pickup-movie__caption {
	margin-top: 38px;
}
.p-pickup-movie__caption-pipe {
	color: #aaa;
	font-size: 2.6rem;
	font-family: "Noto Sans JP", sans-serif;
}
.p-pickup-movie__caption-en {
	display: inline-block;
	font-weight: 600;
	font-size: 3rem;
}
.p-pickup-movie__caption-en .c-font-serif {
	font-size: 2.4rem;
}
[lang=en] .p-pickup-movie__caption-en {
	display: inline;
	font-size: 2.5rem;
	line-height: 1.278;
	font-family: "Cormorant Garamond", sans-serif;
}
[lang=en] .p-pickup-movie__caption-en .c-font-serif {
	font-size: 2.2rem;
}
.p-pickup-movie--small .p-pickup-movie__caption-en {
	display: inline;
	font-weight: 600;
	font-size: 3rem;
}
.p-pickup-movie__caption-ja {
	display: inline-block;
	font-weight: 600;
	font-size: 2.6rem;
}
.p-pickup-movie--small .p-pickup-movie__caption-ja {
	display: inline-block;
	font-weight: 600;
	font-size: 2.6rem;
}

.p-pickup-site {
	position: relative;
	width: 75vw;
	max-width: 1200px;
}
.p-pickup-site__fig {
	position: relative;
}
.p-pickup-site__img img {
	width: 100%;
	max-width: none;
}
.p-pickup-site__caption-head, .p-pickup-site__caption-main {
	display: inline;
}
.p-pickup-site__caption {
	margin-top: 38px;
}
.p-pickup-site__caption-en {
	display: inline;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.278;
	font-family: "Cormorant Garamond", sans-serif;
}

.p-pickup-article-group__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: -137px;
}
.p-pickup-article-group__col-img {
	flex-basis: 50vw;
	max-width: 800px;
	margin-bottom: -10px;
}
.p-pickup-article-group__col-text {
	flex: 1;
}
.p-pickup-article-group__caption {
	max-width: 370px;
	padding-top: 3vw;
	padding-right: 10px;
}
.p-pickup-article-group__caption-head {
	display: block;
	margin-bottom: 15px;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.167;
}
.p-pickup-article-group__caption-main {
	display: block;
	font-size: 1.6rem;
	line-height: 1.5;
}
.p-pickup-article-group__item {
	margin-bottom: 10px;
}
.p-pickup-article-group__item--01 {
	width: 40%;
	margin-left: auto;
}
.p-pickup-article-group__item--02 {
	width: 100%;
}
.p-pickup-article-group__item--03-04 {
	display: flex;
	justify-content: space-between;
	width: 81.25%;
	margin-left: auto;
}
.p-pickup-article-group__item--03 {
	width: 36.9230769231%;
}
.p-pickup-article-group__item--04 {
	width: 61.5384615385%;
}

.p-home-corporate-bg {
	position: relative;
	margin-top: 150px;
	padding-top: 80px;
	overflow: hidden;
	background: url(../images/top/bg_corporate.png) no-repeat center top;
}

.p-home-corporate {
	overflow: hidden;
}
.p-home-corporate .p-home-section__content {
	margin-top: 100px;
}

.p-home-outdoor-container {
	position: relative;
	min-height: 100vh;
	margin-top: 70px;
	overflow: hidden;
	background: url(../images/top/bg_outdoor.jpg) no-repeat center 0;
	background-size: cover;
}

.p-home-outdoor-main {
	position: relative;
	padding-bottom: 18.75vw;
}

.p-home-outdoor-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: url(../images/top/bg_outdoor.jpg) no-repeat center 0;
	background-size: cover;
}
.p-home-outdoor-bg.is-fixed {
	position: fixed;
}
.p-home-outdoor-bg.is-scrolled {
	top: auto;
	bottom: 0;
}

.p-home-outdoor {
	min-height: 100vh;
}
.p-home-outdoor__title {
	z-index: 1;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 69.5vw;
	max-width: 1112px;
	height: 11.5vw;
	max-height: 184px;
	opacity: 0;
	transition: all 0.8s ease-out;
}
.p-home-outdoor__title.is-fixed {
	position: fixed;
}
.p-home-outdoor__title.is-scrolled {
	visibility: visible;
	opacity: 1;
}
.p-home-outdoor__catch {
	display: flex;
	z-index: 2;
	position: absolute;
	top: 120px;
	left: 50%;
	align-items: center;
	justify-content: center;
	width: 275px;
	height: 275px;
	margin-bottom: 0;
	padding: 50px 30px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border: 1px solid #fff;
	text-align: center;
	transition: all 0.4s ease;
}
.p-home-outdoor__catch.is-fixed {
	position: fixed;
	top: 120px;
}
.p-home-outdoor__scrolldown {
	position: absolute;
	bottom: -140px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	opacity: 1;
	transition: all 0.5s ease-in-out;
}
.p-home-outdoor__nav {
	visibility: hidden;
	z-index: 1;
	position: absolute;
	bottom: 60px;
	left: 3.125vw;
	width: 10px;
	height: 138px;
	opacity: 0;
	transition: all 0.5s ease-in-out;
}
.p-home-outdoor__nav.is-fixed {
	position: fixed;
}
.p-home-outdoor__nav.is-scrolled {
	visibility: visible;
	opacity: 1;
}
.p-home-outdoor__nav-item {
	cursor: pointer;
	transition: all 0.3s ease;
}
.p-home-outdoor__nav-item + .p-home-outdoor__nav-item {
	margin-top: 20px;
}
.p-home-outdoor__nav-item.is-disabled {
	opacity: 0.35;
	pointer-events: none;
}
.p-home-outdoor--first {
	position: static;
	height: 100vh;
	padding-top: 194px;
}
.p-home-outdoor--first .p-home-outdoor__inner {
	position: relative;
	height: 100%;
}
.p-home-outdoor--second, .p-home-outdoor--third {
	padding-bottom: 25.3125vw;
}
.p-home-outdoor.is-article-in {
	padding-top: 16.875vw;
}
.p-outdoor-article__title {
	z-index: 1;
	position: relative;
	left: 7.5vw;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 6.625vw 0 70px;
	color: #fff;
	font-weight: 500;
	font-size: 7.2rem;
	line-height: 1.389;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.03em;
	opacity: 0;
	transition: all 0.5s;
}
[lang=en] .p-outdoor-article__title {
	font-size: 8.8rem;
	line-height: 1.136;
	font-family: "Cormorant Garamond", sans-serif;
	letter-spacing: 0.02em;
}
.p-outdoor-article__lead {
	z-index: 2;
	position: relative;
	left: 7.5vw;
	opacity: 0;
}
.p-outdoor-article__lead p {
	margin-top: 2em;
	color: #fff;
	font-size: 1.7rem;
	line-height: 2;
	transition: all 0.5s;
}
.p-outdoor-article__img-group {
	z-index: 0;
	position: absolute;
	top: 16.875vw;
	right: 0;
	width: 60vw;
	max-width: 960px;
	height: 100%;
	transition: all 0.5s;
}
.p-outdoor-article__img {
	opacity: 0;
}
.p-outdoor-article__img--01 {
	height: 33.75vw;
	max-height: 540px;
}
.p-outdoor-article__img--02 {
	width: 25vw;
	max-width: 400px;
	height: 37.5vw;
	max-height: 600px;
	margin-top: 129px;
	margin-left: 9.5625vw;
}
.p-outdoor-article__img img {
	width: 100%;
	height: auto;
}

.p-home-news {
	margin-top: 120px;
	overflow: hidden;
}
.p-home-news__button {
	padding-top: 8.5px;
}
.p-home-news__content {
	padding-top: 60px;
}
.p-home-news__footer {
	padding-top: 50px;
	text-align: center;
}

.p-home-news .p-news-list.is-grid {
	display: flex;
	margin: 0;
}
.p-home-news .p-news-list.is-grid .p-news-list__item {
	width: 100%;
	margin-bottom: 0;
	padding: 0;
}
.p-home-news .is-grid .p-news-list__item + .p-news-list__item {
	margin-top: 20px;
}
.page-home .p-news-list__item:nth-child(n+6) {
	display: none !important;
}

.p-news-content.c-inner {
	max-width: 100%;
	padding: 0;
}

.p-news-article {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.p-home-news .is-grid .p-news-article {
	display: flex;
}
.page-home .p-news-article__img {
	display: none !important;
}
.p-home-news .is-grid .p-news-article__meta {
	display: flex;
	flex-basis: 245px;
	align-items: center;
	justify-content: space-between;
	padding-right: 18px;
}
.p-home-news .is-grid .p-news-article__date {
	flex-shrink: 0;
	font-size: 1.6rem;
	letter-spacing: 0;
}
.p-home-news .is-grid .p-news-article__label {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 130px;
	height: 30px;
	border-radius: 30px;
	background: #0084b2;
	color: #fff;
	font-size: 1.3rem;
	line-height: 1.3;
	text-align: center;
}
.p-home-news .is-grid .p-news-article__label--important {
	background: #d93636;
}
.p-home-news .is-grid .p-news-article__title {
	flex: 1;
	padding-top: 0;
}

.page-home .p-news-tag-wrap {
	display: none !important;
}

.p-movie {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: hidden;
}
.p-movie__source {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.p-movie__source--video.is-current .p-movie__video {
	z-index: 0;
	opacity: 1;
}
.p-movie__thumb {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	cursor: pointer;
}
.p-movie__thumb img {
	width: 100%;
}
.p-movie__thumb::after {
	display: block;
	z-index: 2;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100px;
	height: 100px;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: url(../images/common/btn_movie_play.svg) no-repeat center center;
	background-size: cover;
	content: "";
}
.p-movie__thumb.is-inactive {
	z-index: -1;
}
.p-movie__thumb.is-inactive img {
	display: none;
}
.p-movie__video {
	z-index: -1;
	position: relative;
	width: 100%;
	opacity: 0;
}

#mouse-stalker {
	z-index: 999;
	position: fixed;
	top: -10px;
	left: -10px;
	width: 10px;
	height: 10px;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	border-radius: 50%;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	background: linear-gradient(#1f67ab 0%, #24b5a9 100%);
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1490196078);
	opacity: 0.75;
	pointer-events: none;
	transition: -webkit-transform 0.2s;
	transition: transform 0.2s;
	transition: transform 0.2s, -webkit-transform 0.2s;
	transition: all 0.25s;
	transition-timing-function: ease-out;
}
#mouse-stalker::after {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	content: "View More";
	color: transparent;
	font-size: 1.4rem;
	font-family: "Roboto", sans-serif;
	white-space: nowrap;
	transition: color 1s;
}
#mouse-stalker.is-active {
	top: -90px;
	left: -90px;
	width: 180px;
	height: 180px;
}
#mouse-stalker.is-active::after {
	color: #e5e5e5;
}
@media screen and (min-width: 641px) and (max-width: 768px) {
	.p-news-list.is-grid .p-news-list__item {
		width: 50%;
	}
}
@media screen and (min-width: 769px) {
	.c-banner:hover {
		opacity: 0.7;
	}
	.c-button:hover {
		opacity: 0.7;
	}
	.c-rollover-link:hover {
		opacity: 0.7;
	}
	.c-text-link:hover:hover {
		opacity: 0.7;
	}
	a.p-announce-link:hover {
		opacity: 0.7;
	}
	.p-button:hover {
		opacity: 0.7;
	}
	a.p-footer-nav-link:hover {
		opacity: 0.7;
	}
	.p-adobe-reader-link:hover {
		opacity: 0.7;
	}
	.p-banner-link:hover {
		opacity: 0.7;
	}
	.p-main--info .p-section a:not([class]):hover:hover {
		opacity: 0.7;
	}
	.p-header__sub .p-global-btn {
		margin-top: 0;
		width: 22rem;
		height: 7rem;
		font-size: 2rem;
	}
	a.p-gnav-submenu__header:hover,
	a.p-gnav-submenu-link:hover {
		opacity: 0.7;
	}
	.p-slider-container__item {
		width: 280px;
	}
	.p-slider-container__item.slide-active {
		width: 480px;
	}
	.p-tab-nav__item {
		transition: all 0.5s;
	}
	.p-tab-nav__item:hover {
		border-color: #555;
		background: #555;
		box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.15);
		color: #fff;
		transition: all 0.5s;
	}
	.u-pc-center {
		text-align: center !important;
	}
	.u-pc-hidden {
		display: none;
	}
	.p-company-nav__link:hover {
		opacity: 0.7;
	}
	.p-history-nav__item:hover {
		color: #222;
		transition: all 0.5s;
	}
	.p-icon-button::before {
		display: inline-block;
		visibility: hidden;
		position: absolute;
		top: -30px;
		right: 0;
		min-width: 100px;
		padding: 2px 8px;
		border: 1px solid #aaa;
		background: #f2f2f2;
		content: attr(data-tooltip);
		font-size: 1.2rem;
		text-align: center;
		white-space: nowrap;
		opacity: 0;
		transition: all 0.2s ease-out;
	}
	.p-icon-button:hover::before {
		visibility: visible;
		opacity: 1;
	}
	.p-article a:not([class]):hover:hover {
		opacity: 0.7;
	}
	body:not(.is-touch-device) .p-home-section__grid-pickup01 {
		margin-right: var(--scrollbar);
	}
}
@media screen and (min-width: 769px) and (max-width: 1120px) {
	.p-news-list.is-grid .p-news-list__item {
		width: 33.333%;
	}
}
@media screen and (min-width: 1120px) {
	.p-outcome__card {
		row-gap: 40px;
	}
}
@media screen and (min-width: 1601px) {
	.p-home-section__header::before {
		left: -145px;
	}
	.p-home-news .p-home-section__header::after {
		left: 0;
	}
}
@media screen and (max-width: 1600px) {
	.p-main--philosophy::before {
		top: -12.375vw;
		width: 97.5625vw;
		height: 25.1875vw;
	}
	.p-main--business::before {
		top: -12.375vw;
		width: 97.625vw;
		height: 25.1875vw;
	}
	.p-main--history::before {
		top: -12.375vw;
		width: 91.4375vw;
		height: 25.1875vw;
	}
	.p-main--profile {
		background-size: 82.75vw;
	}
	.p-main--csv::before {
		top: -12.375vw;
		width: 97.625vw;
		height: 25.1875vw;
	}
	.p-main--recruit {
		background-size: 62.4375vw;
	}
}
@media screen and (max-width: 1200px) {
	.p-history__img {
		margin-top: -4.5vw;
	}
	.p-history + .p-history {
		padding-top: 2.5vw;
	}
	.p-home-section__grid {
		grid-template-columns: 4vw 92vw 4vw;
	}
	.p-home-pickup__content .p-home-section__grid {
		grid-template-columns: repeat(5, minmax(3.75vw, 60px)) minmax(62.5vw, 1000px) repeat(5, minmax(3.75vw, 60px));
	}
	.p-home-section__grid-news {
		grid-column: 2/3;
	}
	.p-home-section__grid-pickup, .p-home-section__grid-corporate {
		grid-column: 2/3;
	}
	.p-home-section__header::before {
		background: linear-gradient(to bottom, #707070 25%, transparent 25% 65%, #707070 65%);
	}
	.p-home-news .p-home-section__header::after {
		left: 25px;
	}
	[lang=en] .p-pickup-article__caption-pipe {
		font-size: 1.8rem;
	}
	[lang=en] .p-pickup-movie__caption-en {
		font-size: 2.3rem;
	}
	[lang=en] .p-pickup-movie__caption-en .c-font-serif {
		font-size: 1.9rem;
	}
	.p-pickup-site__caption-en {
		font-size: 2.3rem;
	}
	.p-pickup-article-group__caption {
		padding-top: 10%;
	}
	.p-pickup-article-group__caption-head {
		font-size: 2.3rem;
	}
	.p-outdoor-article__title {
		left: 4vw;
		font-size: 4.8rem;
		line-height: 1.375;
	}
	[lang=en] .p-outdoor-article__title {
		font-size: 4.8rem;
		line-height: 1.375;
	}
}
@media screen and (max-width: 1199px) {
	.p-home-pickup-grid {
		display: block;
	}
}
@media screen and (max-width: 1000px) {
	.p-page-header--profile .p-page-header__title, .p-page-header--mv .p-page-header__title {
		font-size: 4rem;
	}
	[lang=en] .p-business-outcome {
		padding-bottom: 100px;
	}
	.p-outcome__card-group::before, .p-outcome__card-group::after {
		width: calc(50% - 3.5em);
	}
	[lang=en] .p-outcome__card-group::before, [lang=en] .p-outcome__card-group::after {
		width: calc(50% - 4.5em);
	}
	.p-outcome__card-title {
		font-size: 1.8rem;
	}
	[lang=en] .p-outcome__card-title {
		font-size: 1.6rem;
	}
	.p-outcome__card-item--solution .p-outcome__card-circle-inner {
		background-position-y: 31.5789473684%;
	}
	[lang=en] .p-outcome__card-item--solution .p-outcome__card-title {
		padding-top: 50%;
	}
	.p-outcome__card-item--eco .p-outcome__card-circle-inner {
		background-position-y: 32.1052631579%;
	}
	.p-outcome__card-item--social .p-outcome__card-circle-inner {
		background-position-y: 34.2105263158%;
	}
	.p-outcome__card-item--cashflow .p-outcome__card-circle-inner {
		background-position-y: 31.5789473684%;
	}
	.p-outcome__card-item--cashflow .p-outcome__card-title {
		padding-top: 55%;
		font-size: 1.7rem;
		letter-spacing: -0.03em;
	}
	[lang=en] .p-outcome__card-item--cashflow .p-outcome__card-title {
		padding-top: 50%;
	}
	.p-outcome__group-title {
		padding: 0 10px;
		font-size: 2.3rem;
	}
	.p-outcome__group-title--noborder {
		padding-right: 0;
		padding-left: 0;
	}
	.p-business-mission {
		margin-top: 100px;
		background-image: none;
	}
	.p-business-mission::after {
		top: 0;
		width: 12px;
		height: 90px;
		-webkit-transform: translate(-50%, calc(-100% - 20px));
		transform: translate(-50%, calc(-100% - 20px));
	}
	.p-business-mission::before {
		display: block;
		z-index: -1;
		position: absolute;
		top: 100px;
		left: 50%;
		width: calc(100vw - 20px);
		height: 152px;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		background: url(../images/company/business/bg_mission.svg) no-repeat center top;
		background-size: contain;
		content: "";
	}
	.p-mission {
		margin-top: 140px;
		padding-top: 60px;
	}
	.p-mission__title {
		font-size: 2.3rem;
	}
	.p-mission__card {
		width: calc(50% - 10px);
	}
	.p-mission__card-title {
		font-size: 2.4rem;
	}
	[lang=en] .p-mission__card-title {
		font-size: 2.3rem;
	}
	.p-mission__card-img {
		padding-top: 30px;
	}
	.p-mission__card-button {
		padding-top: 40px;
	}
}
@media screen and (max-width: 768px) {
	body {
		min-width: 320px;
	}
	.l-header__fixed {
		min-width: 100%;
	}
	.l-header__inner {
		padding: 0 15px!important;
	}
	.page-home .l-maincontainer {
		padding-bottom: 105px;
	}
	.c-inner-narrow, .c-inner-wide, .c-inner {
		padding-right: 15px;
		padding-left: 15px;
	}
	.p-announce {
		padding-top: 25px;
	}
	.p-announce-list__item--no-alert {
		font-size: 1.8rem;
	}
	.p-breadcrumb {
		padding-bottom: 40px;
	}
	.p-article-header .p-breadcrumb-list {
		font-size: 1.2rem;
	}
	.p-button--footer-nav {
		width: 100%;
		min-width: 240px;
		max-width: 360px;
	}
	.p-button--gradient {
		width: 100%;
		min-width: 240px;
		max-width: 360px;
	}
	.p-page-footer-button {
		width: 100%;
	}
	.p-footer-nav-button {
		display: block;
	}
	.p-footer-nav-button__item {
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	.p-header {
		justify-content: space-between;
		height: 60px;
		padding-top: 11px;
	}
	.p-header__col1 {
		display: flex;
		flex: 1;
		justify-content: space-between;
		padding-left: 9px;
	}
	.p-header__logo {
		flex-basis: 120px;
		width: 120.24px;
		height: 26px;
		-webkit-mask-size: 120.24px 26px;
		mask-size: 120.24px 26px;
	}
	.p-header__text {
		font-size: 2rem;
	}
	.p-hero__title {
		top: 40.8vw;
		left: 8vw;
		font-size: 13.3333333333vw;
		line-height: 1.2;
	}
	.p-hero__scrolldown {
		bottom: -50px;
		left: -90px;
	}
	.p-panel-link {
		align-items: center;
		justify-content: flex-start;
		height: 76px;
		padding: 10px 20px;
		font-size: 1.7rem;
	}
	.p-panel-link {
		align-items: center;
		justify-content: flex-start;
		height: 76px;
		padding: 10px 20px;
		font-size: 1.7rem;
	}
	.p-list-flex {
		display: block;
	}
	.p-list-flex--col2 .p-list-flex__item {
		width: 100%;
	}
	.p-list-flex--col4 {
		display: flex;
		justify-content: space-between;
		margin-right: 0;
		margin-left: 0;
	}
	.p-list-flex--col4 .p-list-flex__item {
		width: calc(50% - 10px);
		margin-right: 0;
		margin-left: 0;
	}
	.p-list-flex--col4 .p-list-flex__item--single {
		width: 100%;
	}
	.p-panel-link-list {
		display: block;
		margin: 0;
	}
	.p-section .p-panel-link-list {
		margin-top: 20px;
	}
	.p-panel-link-list p {
		margin-top: 15px;
	}
	.p-panel-link-list__item {
		width: 100%;
		margin-bottom: 20px;
		padding: 5px 0;
	}
	.p-panel-link-list {
		display: block;
		margin: 0;
	}
	.p-section .p-panel-link-list {
		margin-top: 20px;
	}
	.p-panel-link-list p {
		margin-top: 15px;
	}
	.p-panel-link-list__item {
		width: 100%;
		margin-bottom: 20px;
		padding: 5px 0;
	}
	.p-main--philosophy::before {
		top: -12.1875vw;
		width: 99.75%;
		height: 25.1875vw;
	}
	.p-main--business::before {
		top: -12.1875vw;
		width: 99.8125%;
		height: 25.1875vw;
	}
	.p-main--history::before {
		top: -12.1875vw;
		width: 93.625%;
		height: 25.1875vw;
	}
	.p-main--profile {
		background-size: contain;
	}
	.p-main--csv::before {
		top: -12.1875vw;
		width: 99.8125%;
		height: 25.1875vw;
	}
	.p-main--recruit {
		background-size: contain;
	}
	.p-main--news-article {
		padding-top: 40px;
	}
	.p-main--info .p-accordion__head {
		padding: 20px 40px 20px 20px;
	}
	.p-main--info .p-accordion__body {
		padding: 20px;
	}
	.p-main--info .p-anchor-nav__list {
		justify-content: flex-start;
	}
	.p-main--info .c-heading {
		font-size: 2.1rem;
		line-height: 1.238;
		text-align: left;
	}
	.p-main--info .c-heading-lv2 {
		font-size: 1.9rem;
		line-height: 1.238;
	}
	.p-main--info .c-heading-lv3 {
		font-size: 1.8rem;
		line-height: 1.2;
	}
	.p-main--info .c-heading-lv4 {
		font-size: 1.7rem;
		line-height: 1.2;
	}
	.p-nav-btn {
		flex-basis: 40px;
		width: 40px;
		height: 40px;
	}
	.p-drawer-nav-circle {
		top: 20px;
		left: 20px;
		width: 40px;
		height: 40px;
	}
	.p-drawer-nav__inner {
		justify-content: start;
		padding-top: calc(60px + 34px);
	}
	.p-gnav-list,
	.p-header__sub {
		padding-inline: 25px;
	}
	.p-gnav-submenu__title-ja {
		font-size: 1.6rem;
	}
	.p-gnav-submenu-list__item,
	.p-gnav-link {
		font-size: 1.5rem;
	}
	.p-subnav-list__item {
		font-size: 1.6rem;
	}
	.p-page-header {
		padding: 65px 15px 0;
	}
	.p-page-header--mv {
		height: 360px;
		padding-top: 0;
	}
	.p-page-header--profile {
		padding-top: 0;
	}
	.p-page-header__title {
		font-size: 2.2rem;
	}
	.p-page-header--profile .p-page-header__title, .p-page-header--mv .p-page-header__title {
		font-size: 3.4rem;
	}
	.p-page-header__br-sp {
		display: inline;
	}
	.p-pagetop {
		right: 10px;
		bottom: 10px;
	}
	.p-pagetop__button {
		width: 50px;
		height: 50px;
	}
	.p-scrolldown {
		width: 240px;
		height: 240px;
	}
	.p-slide-card__img img {
		height: 360px;
	}
	.p-slide-card__title {
		margin-top: 15px;
		font-size: 2rem;
		line-height: 1.286;
	}
	.slide-active .p-slide-card__title {
		margin-top: 18px;
		font-size: 2.8rem;
		line-height: 1.286;
	}
	.p-slide-card__text {
		margin-top: 12px;
	}
	.slide-active:not(.slide-animation) .p-slide-card__text {
		min-width: 240px;
	}
	.p-slider-container {
		margin-bottom: 180px;
	}
	.p-slider-container__item {
		width: 120px;
	}
	.p-slider-container__item.slide-active {
		width: 240px;
	}
	.p-slider-nav {
		top: calc(100% - 20px);
		bottom: auto;
	}
	[lang=en] .p-slider-nav__item {
		padding-right: 3px;
		padding-left: 3px;
	}
	.p-slider-nav__btn {
		padding-right: 1px;
		padding-left: 1px;
		font-size: 1.6rem;
	}
	[lang=en] .p-slider-nav__btn {
		font-size: 1.5rem;
	}
	.p-tab-nav {
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
	.p-tab-nav__item {
		width: calc(25% - 10px);
		min-width: 140px;
		margin-bottom: 10px;
	}
	.is-touch-device .p-support-period .p-table-scroll {
		padding-bottom: 7px;
	}
	.u-sp-center {
		text-align: center !important;
	}
	.u-sp-hidden {
		display: none;
	}
	.p-company-nav {
		margin-top: 60px;
	}
	.p-company-nav__list {
		justify-content: space-between;
	}
	.p-company-nav__item {
		width: 23.046875%;
		margin: 0;
	}
	[lang=en] .p-company-nav__item {
		width: 31.3802083333%;
		margin: 0;
	}
	[lang=ja] .p-company-nav__text {
		font-size: 1.6rem;
	}
	[lang=en] .p-company-nav__text {
		font-size: 1.7rem;
	}
	.p-profile-title {
		margin-bottom: 30px;
		font-size: 2.1rem;
	}
	.p-launch-table .p-profile-table__cell:not(.u-sp-hidden) {
		display: block;
		width: 100%;
	}
	.p-launch-table .p-profile-table__cell--function {
		width: 35%;
		padding-left: 0;
	}
	.p-outline-table .p-profile-table__head {
		white-space: nowrap;
	}
	[lang=en] .p-outline-table .p-profile-table__head {
		white-space: normal;
	}
	.p-profile-message__lead {
		margin-bottom: 50px;
		font-size: 2.1rem;
	}
	.p-profile-message__footer {
		margin-top: 30px;
	}
	.p-profile-message__person-name {
		font-size: 2.2rem;
	}
	.p-profile-message__date {
		margin-top: 10px;
	}
	.p-message-subsection {
		display: block;
	}
	.p-message-subsection + .p-message-subsection {
		margin-top: 70px;
	}
	.p-message-subsection__title {
		margin-bottom: 40px;
		font-size: 1.9rem;
	}
	.p-message-subsection__text {
		padding-right: 0;
	}
	.p-message-subsection--inverse .p-message-subsection__text {
		padding-left: 0;
	}
	.p-message-subsection__img {
		width: 50%;
		min-width: 240px;
		margin: 0 auto 20px;
	}
	.p-profile-outline {
		margin-top: 90px;
	}
	.p-profile-launch {
		margin-top: 60px;
		padding: 30px 0 0;
		background-size: contain;
	}
	.p-launch-table thead .p-profile-table__head {
		padding: 0 0 10px;
		border-bottom: 1px solid #ddd;
	}
	.p-launch__meta {
		display: grid;
		grid-template-rows: auto;
		grid-template-columns: 6em auto;
		padding: 10px;
	}
	[lang=en] .p-launch__meta {
		display: block;
	}
	.p-launch__meta-data:not(:last-child) {
		margin-right: 0;
	}
	.p-launch__data {
		padding: 10px;
	}
	.p-profile-environmentalpolicy {
		margin-top: 60px;
	}
	.p-profile-environmentalactivity {
		margin-top: 60px;
	}
	.p-profile-environmentalactivity__lead {
		margin-top: 30px;
	}
	.p-profile-environmentalactivity__img {
		margin-top: 30px;
	}
	.p-philosophy {
		margin-top: 0;
	}
	.p-philosophy__title {
		margin-bottom: 30px;
	}
	.p-philosophy__title-img {
		margin-bottom: 15px;
	}
	.p-philosophy__title-img img {
		max-width: 70%;
		margin: 0 auto;
	}
	.p-philosophy__title-text {
		font-size: 1.8rem;
	}
	.p-philosophy__content + .p-philosophy__title {
		margin-top: 70px;
	}
	.p-philosophy__content {
		font-size: 2.4rem;
	}
	.p-philosophy__img {
		margin-top: 70px;
	}
	.p-philosophy-statement {
		margin-top: 50px;
		padding-top: 45px;
	}
	.p-philosophy-statement__title {
		margin-bottom: 40px;
	}
	.p-philosophy-statement__title img {
		max-width: 70%;
		margin: 0 auto;
	}
	.p-philosophy-statement__content {
		padding-bottom: 50px;
		font-size: 2rem;
	}
	.p-philosophy-statement__content p + p {
		margin-top: 30px;
	}
	.p-history-intro__message {
		padding-bottom: 60px;
		font-size: 1.9rem;
	}
	[lang=en] .p-history-intro__message {
		font-size: 1.9rem;
	}
	.p-history-sidebar {
		width: 100%;
	}
	.p-history-nav {
		display: flex;
		top: 60px;
		left: 0;
		flex-wrap: wrap;
		width: 100%;
		padding-right: 15px;
		background: rgba(255, 255, 255, 0.95);
	}
	.p-history-nav__item a {
		display: block;
		width: 100%;
		padding: 5px 0;
	}
	.p-history-nav__item {
		width: 20%;
		line-height: 1.5;
	}
	.p-history-main {
		margin-left: calc(-100vw + 15px);
		padding-top: 100px;
	}
	.is-touch-device .p-history-main {
		margin-left: -100vw;
	}
	.p-history-line {
		padding-top: 30px;
	}
	.p-history-line::before {
		left: 15px;
	}
	.p-history-group {
		padding-right: 15px;
		padding-left: 15px;
	}
	.p-history-group--06 {
		padding-top: 60px;
	}
	.p-history-group--03 {
		padding-top: 25px;
		padding-bottom: 50px;
	}
	.p-history-group--01 {
		padding-top: 25px;
		padding-bottom: 75px;
	}
	.p-history-year {
		width: 100%;
		margin-top: -100px;
		margin-left: 0;
		padding-top: 100px;
		font-size: 3.4rem;
	}
	.p-history-year::before {
		top: calc(50% + 50px);
	}
	.p-history-year--inverse {
		margin-right: 0;
		padding-right: 0;
		padding-left: 3.7162162162%;
		text-align: left;
	}
	.p-history-year--inverse::before {
		right: auto;
		left: 0;
		margin-right: 0;
		margin-left: -4.5px;
	}
	.p-history {
		display: block;
		padding-left: 3.7162162162%;
	}
	.p-history__img, .p-history__text {
		max-width: 100%;
	}
	.p-history__img {
		margin-top: 0;
	}
	.p-history__title {
		font-size: 2.1rem;
	}
	[lang=en] .p-history__title {
		font-size: 2.1rem;
	}
	.p-history__lead {
		margin-bottom: 20px;
	}
	.p-history--mt85 {
		margin-top: 0;
	}
	.p-history--mb85 {
		margin-bottom: 40px;
	}
	.p-history--mb120 {
		margin-bottom: 60px;
	}
	.p-history--mb150 {
		margin-bottom: 75px;
	}
	.p-history + .p-history {
		padding-top: 10px;
	}
	.p-business-intro {
		padding-top: 50px;
	}
	.p-business-intro__title {
		margin-bottom: 30px;
		font-size: 2.1rem;
	}
	.p-business-intro__content {
		font-size: 1.8rem;
	}
	.p-business-intro__content p + p {
		margin-top: 20px;
	}
	.p-business-subsection__title {
		margin-bottom: 30px;
	}
	.p-business-subsection__title-img {
		margin-bottom: 40px;
	}
	.p-business-subsection__title-img img {
		max-width: 70%;
		margin: 0 auto;
	}
	.p-business-mission .p-business-subsection__title-img {
		margin-bottom: 50px;
	}
	.p-business-subsection__title-text {
		font-size: 2.1rem;
	}
	.p-business-card__title {
		font-size: 1.8rem;
	}
	.p-business-innovation {
		margin-top: 60px;
		padding-top: 60px;
		background-size: 101.3333px auto;
	}
	.p-innovation {
		margin-top: 35px;
	}
	.p-innovation__title::before, .p-innovation__title::after {
		width: calc(50% - 100px);
	}
	.p-innovation__title-text {
		padding: 0 19px;
		font-size: 1.9rem;
	}
	.p-innovation__card-caption {
		font-size: 1.7rem;
	}
	[lang=en] .p-innovation__card-caption {
		font-size: 1.6rem;
	}
	.p-business-business {
		margin-top: 80px;
		padding-top: 55px;
		background-size: 101.3333px auto;
	}
	.p-business {
		margin-top: 50px;
	}
	.p-business-output {
		margin-top: 65px;
		padding-top: 60px;
		background-size: 101.3333px auto;
	}
	.p-output {
		margin-top: 45px;
	}
	.p-business-outcome {
		margin-top: 65px;
		padding-top: 60px;
		padding-bottom: 75px;
		background-size: 101.3333px auto;
	}
	[lang=en] .p-business-outcome {
		padding-bottom: 100px;
	}
	.p-outcome__card {
		grid-template-columns: repeat(3, 1fr);
		grid-template-areas: "group--01 group--01 group--01" "solution eco social" ". group--02 ." ". cashflow .";
		margin-top: 45px;
	}
	.p-outcome__card-title {
		font-size: 1.6rem;
	}
	.p-outcome__card-caption {
		font-size: 1.6rem;
	}
	.p-business-mission {
		margin-top: 50px;
	}
	.p-business-mission::before {
		top: 50px;
	}
	.p-mission__card-title {
		font-size: 2.1rem;
	}
	[lang=en] .p-mission__card-title {
		font-size: 2.1rem;
	}
	.p-mission__card-img {
		padding-top: 25px;
	}
	.p-mission__card-text {
		font-size: 1.6rem;
	}
	.p-mission__card-button {
		padding-top: 25px;
	}
	.p-csv-intro {
		padding-top: 60px;
	}
	.p-csv-intro__content {
		font-size: 1.8rem;
	}
	.p-csv-intro__content p + p {
		margin-top: 20px;
	}
	.p-csv-subsection {
		margin-top: 100px;
	}
	.p-csv-subsection__title {
		font-size: 2.1rem;
	}
	.p-csv-01 .p-csv-subsection__content {
		margin-top: 40px;
	}
	.p-csv-02 .p-csv-subsection__content {
		margin-top: 40px;
	}
	.p-csv-03 .p-csv-subsection__content {
		margin-top: 35px;
	}
	.p-csv-04 .p-csv-subsection__content {
		margin-top: 40px;
	}
	.p-csv-subsection__img {
		margin-bottom: 45px;
	}
	.p-csv-subsection__banner {
		margin-bottom: 30px;
	}
	.p-recruit__message {
		font-size: 2rem;
	}
	.p-recruit__message p + p {
		margin-top: 30px;
	}
	.p-recruit__info {
		margin-top: 60px;
	}
	.p-recruit__info-title {
		margin-bottom: 30px;
		font-size: 2.1rem;
	}
	.p-recruit-career__title {
		margin-bottom: 30px;
		font-size: 2.1rem;
	}
	.p-recruit-career-table__head {
		white-space: nowrap;
	}
	.p-news-filter {
		margin-bottom: 30px;
	}
	.p-news-filter-row {
		display: block;
		margin-right: 0;
	}
	.p-news-filter-list {
		flex-wrap: wrap;
		margin-top: -10px;
	}
	.p-news-filter-list__item {
		margin-top: 10px;
		padding: 0 11px 11px;
	}
	.p-news-filter-text {
		font-size: 1.4rem;
	}
	.page-home .p-news-list__item:nth-child(n+5) {
		display: none !important;
	}
	.p-news-article {
		display: block;
	}
	.p-news-article__meta {
		flex-basis: 100%;
		justify-content: flex-start;
		margin-bottom: 10px;
	}
	.is-grid .p-news-article__meta {
		justify-content: space-between;
	}
	.p-news-article__date {
		margin-right: 18px;
	}
	.is-grid .p-news-article__date {
		font-size: 1.4rem;
	}
	.p-news-article__title {
		padding-left: 0;
		font-size: 1.5rem;
	}
	.p-news-filter-box__inner {
		padding: 20px;
	}
	.p-news-filter-box__title {
		margin-bottom: 10px;
		font-size: 1.5rem;
	}
	.p-news-view-wrap {
		justify-content: flex-end;
		margin-top: 10px;
	}
	.p-news-filter-select {
		max-width: none;
	}
	.p-news-filter-select .c-select {
		font-size: 1.6rem;
	}
	.p-news-tag-wrap {
		margin-left: 0;
		padding-left: 0;
	}
	.p-news-list .p-news-tag-wrap {
		margin-left: 0;
		padding-left: 0;
	}
	.p-article-header__title {
		font-size: 2.2rem;
		line-height: 1.182;
	}
	.p-article-header__sub-title {
		font-size: 1.6rem;
	}
	.p-article-button-group__item:not(:first-child) {
		margin-left: 16px;
	}
	.p-article-button-group + .p-article-button-group::before {
		height: 22px;
		margin: 0 16px;
	}
	.p-icon-button--facebook {
		width: auto;
		max-width: 22px;
	}
	.p-icon-button--x {
		width: auto;
		max-width: 20px;
	}
	.p-icon-button--download {
		width: auto;
		max-width: 20px;
	}
	.p-icon-button--url {
		width: auto;
		max-width: 22px;
	}
	.p-article + .p-article {
		margin-top: 3em;
	}
	.p-article__heading-lv2 {
		margin-bottom: 1.6em;
		font-size: 1.7rem;
	}
	.p-article__heading-lv2:not(:first-child) {
		margin-top: 3em;
	}
	.p-article__heading-lv3 {
		margin-bottom: 1.6em;
		font-size: 1.7rem;
	}
	.p-article__heading-lv3:not(:first-child) {
		margin-top: 3em;
	}
	.p-article__footer {
		margin-top: 40px;
		padding-top: 40px;
	}
	.p-contact-box {
		padding: 19px;
	}
	.p-contact-box__name {
		font-size: 1.7rem;
	}
	.p-image-grid-wrap {
		margin-top: 2.667em;
		margin-bottom: 2.667em;
	}
	.p-image-grid__item:not(:first-child) {
		margin-top: 20px;
	}
	.p-image-grid__item--6 {
		width: 100%;
	}
	.p-image-grid__item--4 {
		width: 100%;
	}
	.p-image-grid__item--3 {
		width: 100%;
	}
	.p-image-grid__item--9 {
		width: 100%;
	}
	.p-image-grid__item--8 {
		width: 100%;
	}
	.p-article-end {
		margin-bottom: 4em;
	}
	.p-article-flex__col--fit.p-article-flex__col--fit-logo {
		align-self: flex-start;
		max-width: 100px;
	}
	.p-article-grid {
		grid-template-columns: 1fr 100px;
	}
	.p-article-grid__title {
		grid-column: 1/3;
	}
	.p-article-grid__text {
		grid-row: 3/4;
		grid-column: 1/3;
	}
	.p-article-grid__img {
		grid-row: 2/3;
		grid-column: 1/3;
		align-self: flex-start;
	}
	.p-article-grid__img--100px {
		width: 100px;
	}
	.p-home-pickup__content .p-home-section__grid {
		grid-template-columns: 4vw 92vw 4vw;
	}
	.p-home-section__grid-pickup01 {
		grid-column: 1/4;
		padding-top: 55px;
	}
	[lang=en] .p-home-section__grid-pickup01 {
		grid-column: 2/3;
		padding-top: 55px;
	}
	.p-home-section__grid-pickup02 {
		grid-column: 2/3;
		padding-top: 70px;
	}
	.p-home-section__grid-pickup-row {
		flex-direction: column;
		align-items: center;
	}
	.p-home-section__grid-pickup-col01 {
		width: 100%;
	}
	.p-home-section__grid-pickup-col02 {
		width: 100%;
		padding-top: 60px;
	}
	.p-home-section__grid-pickup03 {
		grid-column: 1/4;
		padding-top: 90px;
	}
	.p-home-section__grid-pickup04 {
		grid-column: 1/4;
		padding-top: 90px;
	}
	.p-home-section__header {
		padding: 0 0 0 6.68vw;
	}
	.p-home-section__header::before {
		left: -120px;
		background: linear-gradient(to bottom, #707070 25%, transparent 25% 45%, #707070 45%);
	}
	.p-home-news .p-home-section__header::after {
		left: 10px;
		width: 50px;
		height: 50px;
	}
	.p-home-section__title {
		height: 48px;
	}
	.p-home-pickup .p-home-section__title {
		width: 148px;
	}
	[lang=en] .p-home-pickup .p-home-section__title {
		width: 252px;
	}
	.p-home-corporate .p-home-section__title {
		width: 253px;
		height: 92px;
	}
	.p-home-news .p-home-section__title {
		width: 123px;
	}
	.p-home-pickup-bg {
		margin-top: 60px;
		padding-top: 0;
	}
	.p-home-pickup-bg__fixed {
		top: -50px;
		left: 87%;
		width: 1569px;
		height: 1675px;
		background: url(../images/top/bg_pickup_sp.png) no-repeat center 0;
		background-size: auto 100%;
	}
	[lang=en] .p-home-pickup-bg__fixed {
		width: 1570px;
		height: 1675px;
		background-image: url(../images/top/en/bg_inspiration_sp.png);
	}
	.p-home-pickup-grid__item04 {
		padding-top: 75px;
	}
	.p-home-pickup-grid__item05 {
		padding-top: 65px;
		padding-right: 5.3333333333%;
		padding-left: 5.3333333333%;
	}
	.p-home-pickup-grid__item06 {
		padding-top: 55px;
		padding-right: 5.3333333333%;
		padding-left: 5.3333333333%;
	}
	.p-home-pickup-grid__item07 {
		padding-top: 55px;
		padding-right: 5.3333333333%;
		padding-left: 5.3333333333%;
	}
	.p-home-pickup-grid__item08 {
		padding: 0;
		padding-top: 85px;
	}
	.p-pickup-article__caption-pipe {
		font-size: 2.1rem;
	}
	[lang=en] .p-pickup-article__caption-pipe {
		font-size: 1.6rem;
	}
	.p-pickup-article__caption-en {
		font-size: 2.4rem;
	}
	.p-pickup-article__caption-en .c-font-serif {
		font-size: 1.9rem;
	}
	.p-pickup-article__caption-ja {
		font-size: 2.1rem;
	}
	.p-pickup-article__caption-en + .p-pickup-article__caption-ja-sub {
		font-size: 2.1rem;
	}
	.p-pickup-article--01 {
		width: 100%;
		margin-left: 0;
	}
	.p-pickup-article--01.p-pickup-article-group {
		width: 80vw;
		max-width: 80vw;
		margin-right: auto;
		margin-left: auto;
	}
	.p-pickup-article--01 .p-pickup-article__caption {
		margin-top: 12px;
		padding: 0 4vw;
	}
	.p-pickup-article--02 {
		padding: 0 6.68vw;
	}
	.p-pickup-article--02 .p-pickup-article__caption {
		margin-top: 12px;
	}
	.p-pickup-article--03 {
		padding: 0 6.68vw;
	}
	.p-pickup-article--03 .p-pickup-article__caption {
		margin-top: 12px;
	}
	.p-pickup-media {
		background-position: right -50vw top;
		background-size: contain;
	}
	[lang=en] .p-pickup-media {
		background-image: none;
	}
	.p-pickup-movie {
		width: 100%;
		background-color: transparent;
	}
	.p-pickup-movie__caption {
		margin-top: 15px;
		padding: 0 4vw;
	}
	[lang=en] .p-pickup-movie__caption {
		margin-top: 15px;
	}
	.p-pickup-movie__caption-pipe {
		font-size: 2.1rem;
	}
	.p-pickup-movie__caption-en {
		font-size: 2.4rem;
	}
	.p-pickup-movie__caption-en .c-font-serif {
		font-size: 1.9rem;
	}
	[lang=en] .p-pickup-movie__caption-en {
		font-size: 2.1rem;
		line-height: 1.333;
	}
	[lang=en] .p-pickup-movie__caption-en .c-font-serif {
		font-size: 1.7rem;
	}
	.p-pickup-movie--small .p-pickup-movie__caption-en {
		font-size: 2.4rem;
	}
	.p-pickup-movie__caption-ja {
		font-size: 2.1rem;
	}
	.p-pickup-movie--small .p-pickup-movie__caption-ja {
		font-size: 2.1rem;
	}
	.p-pickup-site {
		width: 100%;
	}
	.p-pickup-site__caption {
		margin-top: 15px;
		padding: 0 4vw;
	}
	.p-pickup-site__caption-en {
		font-size: 2.1rem;
		line-height: 1.333;
	}
	.p-pickup-article-group__row {
		flex-direction: column-reverse;
		margin-top: 0;
	}
	.p-pickup-article-group__col-img {
		margin-bottom: 15px;
	}
	.p-pickup-article-group__caption {
		max-width: none;
		padding-top: 0;
	}
	.p-pickup-article-group__caption-head {
		font-size: 2.1rem;
		line-height: 1.2;
	}
	.p-home-corporate-bg {
		margin-top: 0;
		padding-top: 50px;
		background-image: url(../images/top/bg_corporate_sp.png);
		background-position-x: 42.5%;
	}
	.p-home-outdoor-container {
		margin-top: 0;
		background-image: url(../images/top/bg_outdoor_sp.jpg);
		background-size: cover;
		background-position-x: left;
	}
	.p-home-outdoor-main {
		padding-top: 37.3333333333vw;
		padding-bottom: 18.6666666667vw;
	}
	.p-home-outdoor-bg {
		background-image: url(../images/top/bg_outdoor_sp.jpg);
		background-size: auto;
		background-position-x: left;
		opacity: 0;
	}
	.p-home-outdoor {
		padding-top: 70px;
		padding-bottom: 120px;
	}
	.p-home-outdoor__title {
		position: absolute !important;
		right: auto;
		bottom: 120px;
		left: 0;
		width: 548px;
		height: 97.677px;
	}
	.p-home-outdoor__catch {
		position: absolute !important;
		top: 18.6666666667vw !important;
		width: 165px;
		height: 165px;
		padding: 30px 25px;
	}
	.p-home-outdoor__scrolldown {
		bottom: -120px;
	}
	.p-home-outdoor__nav {
		display: none;
	}
	.p-home-outdoor--first {
		height: 75vh;
	}
	.p-home-outdoor--second, .p-home-outdoor--third {
		padding-bottom: 100.5333333333vw;
	}
	.p-home-outdoor.is-article-in {
		padding-top: 18.6666666667vw;
	}
	.p-outdoor-article {
		display: flex;
		flex-direction: column;
	}
	.p-outdoor-article__title {
		margin: 53.3333333333vw 0 4vw;
	}
	[lang=en] .p-outdoor-article__title {
		font-size: 4.6rem;
	}
	.p-outdoor-article__lead {
		left: 4vw;
		width: 80vw;
	}
	.p-outdoor-article__lead p {
		font-size: 1.6rem;
		line-height: 2;
	}
	.p-outdoor-article__img-group {
		display: flex;
		flex-direction: column;
		width: 85.3333333333vw;
	}
	.p-outdoor-article__img--02 {
		position: relative;
		top: -26.6666666667vw;
		width: 64vw;
		max-width: 240px;
		height: 96vw;
		max-height: 360px;
		margin-top: auto;
		margin-left: auto;
	}
	.p-home-news {
		margin-top: 65px;
	}
	.p-home-news__content {
		padding-top: 38px;
		padding-right: 10px;
	}
	.p-home-news .p-news-list.is-grid {
		padding-right: 0;
		padding-left: 0;
	}
	.p-home-news .is-grid .p-news-article {
		display: block;
	}
	.p-home-news .is-grid .p-news-article__meta {
		justify-content: flex-start;
		margin-bottom: 12px;
		padding-right: 0;
	}
	.p-home-news .is-grid .p-news-article__date {
		margin-right: 17px;
	}
	.p-movie__thumb::after {
		width: 50px;
		height: 50px;
	}
}
@media screen and (max-width: 667px) {
	.p-mission {
		display: block;
		max-width: 520px;
		margin-top: 80px;
		margin-right: auto;
		margin-left: auto;
	}
	.p-mission__card {
		width: 100%;
	}
	.p-mission__card + .p-mission__card {
		margin-top: 40px;
	}
	.p-mission__card-button .p-button {
		max-width: 360px;
	}
}
@media screen and (max-width: 640px) {
	.p-page-header--news-article {
		padding-bottom: 20px;
	}
	.p-news-list.is-grid {
		display: block;
		max-width: 600px;
		margin-right: auto;
		margin-left: auto;
		padding: 0 18px;
	}
	.p-news-list.is-grid .p-news-list__item {
		width: 100%;
		padding: 0;
	}
	.p-article-header .p-news-article__label {
		font-size: 1.2rem;
	}
	.p-article-header__meta {
		flex-direction: column-reverse;
		margin-bottom: 0;
	}
	.p-article-header__category {
		margin-bottom: 10px;
	}
	.p-article-header__author {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 480px) {
	[lang=ja] .p-company-nav__text {
		font-size: 1.5rem;
	}
	[lang=ja] .p-company-nav__text .u-inline-block {
		display: inline;
	}
	.p-outcome__card {
		grid-template-columns: repeat(2, 1fr);
		grid-template-areas: "group--01 group--01" "solution eco" "social ." "group--02 group--02" "cashflow .";
		row-gap: 20px;
	}
	.p-outcome__card-item--social {
		-webkit-transform: translateX(50%);
		transform: translateX(50%);
	}
	.p-outcome__card-item--cashflow {
		-webkit-transform: translateX(50%);
		transform: translateX(50%);
	}
}
@media screen and (max-width: 414px) {
	.p-company-nav__item {
		width: calc(25% - 1vw);
	}
	[lang=en] .p-company-nav__item {
		width: calc(33.3333333333% - 1vw);
	}
	[lang=en] .p-company-nav__text {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 375px) {
	[lang=ja] .p-company-nav__text {
		font-size: 1.4rem;
	}
}
@media (prefers-reduced-motion: reduce) {
	html:focus-within {
		scroll-behavior: auto;
	}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0), screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
	img {
		image-rendering: -webkit-optimize-contrast;
	}
	.is-touch-device img {
		image-rendering: auto;
	}
}